@skbkontur/react-ui 3.7.0 → 3.8.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 (206) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/README.md +1 -1
  3. package/cjs/components/Button/Button.d.ts +1 -0
  4. package/cjs/components/Button/Button.js +4 -1
  5. package/cjs/components/Button/Button.js.map +1 -1
  6. package/cjs/components/Button/Button.styles.js +2 -2
  7. package/cjs/components/Button/Button.styles.js.map +1 -1
  8. package/cjs/components/Checkbox/Checkbox.js +6 -5
  9. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  10. package/cjs/components/Checkbox/Checkbox.styles.js +3 -3
  11. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  12. package/cjs/components/CurrencyLabel/CurrencyLabel.js +14 -5
  13. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  14. package/cjs/components/CurrencyLabel/CurrencyLabel.styles.d.ts +4 -0
  15. package/cjs/components/CurrencyLabel/CurrencyLabel.styles.js +9 -0
  16. package/cjs/components/CurrencyLabel/CurrencyLabel.styles.js.map +1 -0
  17. package/cjs/components/FxInput/FxInput.js +1 -1
  18. package/cjs/components/FxInput/FxInput.js.map +1 -1
  19. package/cjs/components/Kebab/Kebab.js +2 -1
  20. package/cjs/components/Kebab/Kebab.js.map +1 -1
  21. package/cjs/components/MenuItem/MenuItem.md +1 -1
  22. package/cjs/components/MenuItem/MenuItem.styles.js +3 -2
  23. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  24. package/cjs/components/Modal/Modal.styles.d.ts +1 -0
  25. package/cjs/components/Modal/Modal.styles.js +24 -21
  26. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  27. package/cjs/components/Modal/ModalClose.js +23 -3
  28. package/cjs/components/Modal/ModalClose.js.map +1 -1
  29. package/cjs/components/Paging/Paging.styles.js +2 -1
  30. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  31. package/cjs/components/Radio/Radio.styles.js +3 -2
  32. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  33. package/cjs/components/SidePage/SidePage.d.ts +1 -2
  34. package/cjs/components/SidePage/SidePage.js +1 -5
  35. package/cjs/components/SidePage/SidePage.js.map +1 -1
  36. package/cjs/components/SidePage/SidePage.styles.d.ts +2 -1
  37. package/cjs/components/SidePage/SidePage.styles.js +44 -28
  38. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  39. package/cjs/components/SidePage/SidePageHeader.d.ts +4 -1
  40. package/cjs/components/SidePage/SidePageHeader.js +33 -23
  41. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  42. package/cjs/components/Switcher/Switcher.js +1 -1
  43. package/cjs/components/Switcher/Switcher.js.map +1 -1
  44. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -1
  45. package/cjs/components/Switcher/Switcher.styles.js +3 -2
  46. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  47. package/cjs/components/Tabs/Tab.styles.js +2 -2
  48. package/cjs/components/Tabs/Tab.styles.js.map +1 -1
  49. package/cjs/components/Textarea/Textarea.d.ts +0 -2
  50. package/cjs/components/Textarea/Textarea.js +6 -3
  51. package/cjs/components/Textarea/Textarea.js.map +1 -1
  52. package/cjs/components/Toggle/Toggle.d.ts +43 -1
  53. package/cjs/components/Toggle/Toggle.js +46 -2
  54. package/cjs/components/Toggle/Toggle.js.map +1 -1
  55. package/cjs/components/Toggle/Toggle.md +70 -9
  56. package/cjs/components/Toggle/Toggle.styles.d.ts +2 -0
  57. package/cjs/components/Toggle/Toggle.styles.js +32 -16
  58. package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
  59. package/cjs/components/TokenInput/TokenInput.d.ts +8 -0
  60. package/cjs/components/TokenInput/TokenInput.js +24 -2
  61. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  62. package/cjs/components/Tooltip/Tooltip.styles.js +2 -1
  63. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  64. package/cjs/internal/CustomComboBox/ComboBoxView.js +2 -1
  65. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  66. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +3 -2
  67. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  68. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +5 -7
  69. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  70. package/cjs/internal/InputLikeText/InputLikeText.js +2 -1
  71. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  72. package/cjs/internal/PopupMenu/PopupMenu.js +1 -1
  73. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  74. package/cjs/internal/RenderContainer/RenderContainer.js +2 -1
  75. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  76. package/cjs/internal/ThemePlayground/darkTheme.js +3 -3
  77. package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
  78. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  79. package/cjs/internal/icons/CrossIcon.js +8 -1
  80. package/cjs/internal/icons/CrossIcon.js.map +1 -1
  81. package/cjs/internal/themes/DefaultTheme.d.ts +16 -5
  82. package/cjs/internal/themes/DefaultTheme.js +63 -25
  83. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  84. package/cjs/internal/themes/FlatTheme.d.ts +0 -1
  85. package/cjs/internal/themes/FlatTheme.js +1 -2
  86. package/cjs/internal/themes/FlatTheme.js.map +1 -1
  87. package/cjs/internal/themes/Theme8px.js +1 -1
  88. package/cjs/internal/themes/Theme8px.js.map +1 -1
  89. package/cjs/lib/Upgrades.d.ts +2 -0
  90. package/cjs/lib/Upgrades.js +14 -0
  91. package/cjs/lib/Upgrades.js.map +1 -1
  92. package/cjs/lib/events/keyboard/identifiers.d.ts +1 -0
  93. package/cjs/lib/events/keyboard/identifiers.js +6 -1
  94. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  95. package/cjs/lib/locale/LOCALECONTEXT.md +1 -1
  96. package/cjs/lib/styles/ColorFunctions.js +1 -1
  97. package/cjs/lib/styles/ColorFunctions.js.map +1 -1
  98. package/cjs/lib/theming/Emotion.js +1 -1
  99. package/cjs/lib/theming/Emotion.js.map +1 -1
  100. package/cjs/lib/theming/ThemeContext.md +1 -1
  101. package/cjs/lib/utils.d.ts +7 -0
  102. package/cjs/lib/utils.js +12 -2
  103. package/cjs/lib/utils.js.map +1 -1
  104. package/components/Button/Button/Button.js +2 -1
  105. package/components/Button/Button/Button.js.map +1 -1
  106. package/components/Button/Button.d.ts +1 -0
  107. package/components/Button/Button.styles/Button.styles.js +1 -1
  108. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  109. package/components/Checkbox/Checkbox/Checkbox.js +2 -2
  110. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  111. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +2 -2
  112. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  113. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +11 -5
  114. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  115. package/components/CurrencyLabel/CurrencyLabel.styles/CurrencyLabel.styles.js +10 -0
  116. package/components/CurrencyLabel/CurrencyLabel.styles/CurrencyLabel.styles.js.map +1 -0
  117. package/components/CurrencyLabel/CurrencyLabel.styles/package.json +6 -0
  118. package/components/CurrencyLabel/CurrencyLabel.styles.d.ts +4 -0
  119. package/components/FxInput/FxInput/FxInput.js +2 -1
  120. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  121. package/components/Kebab/Kebab/Kebab.js +2 -1
  122. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  123. package/components/MenuItem/MenuItem.md +1 -1
  124. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +1 -1
  125. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  126. package/components/Modal/Modal.styles/Modal.styles.js +18 -15
  127. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  128. package/components/Modal/Modal.styles.d.ts +1 -0
  129. package/components/Modal/ModalClose/ModalClose.js +25 -2
  130. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  131. package/components/Paging/Paging.styles/Paging.styles.js +1 -1
  132. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  133. package/components/Radio/Radio.styles/Radio.styles.js +1 -1
  134. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  135. package/components/SidePage/SidePage/SidePage.js +2 -4
  136. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  137. package/components/SidePage/SidePage.d.ts +1 -2
  138. package/components/SidePage/SidePage.styles/SidePage.styles.js +20 -16
  139. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  140. package/components/SidePage/SidePage.styles.d.ts +2 -1
  141. package/components/SidePage/SidePageHeader/SidePageHeader.js +40 -22
  142. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  143. package/components/SidePage/SidePageHeader.d.ts +4 -1
  144. package/components/Switcher/Switcher/Switcher.js +1 -1
  145. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  146. package/components/Switcher/Switcher.styles/Switcher.styles.js +2 -2
  147. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  148. package/components/Switcher/Switcher.styles.d.ts +1 -1
  149. package/components/Tabs/Tab.styles/Tab.styles.js +1 -1
  150. package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
  151. package/components/Textarea/Textarea/Textarea.js +1 -2
  152. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  153. package/components/Textarea/Textarea.d.ts +0 -2
  154. package/components/Toggle/Toggle/Toggle.js +6 -2
  155. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  156. package/components/Toggle/Toggle.d.ts +43 -1
  157. package/components/Toggle/Toggle.md +70 -9
  158. package/components/Toggle/Toggle.styles/Toggle.styles.js +18 -12
  159. package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
  160. package/components/Toggle/Toggle.styles.d.ts +2 -0
  161. package/components/TokenInput/TokenInput/TokenInput.js +24 -2
  162. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  163. package/components/TokenInput/TokenInput.d.ts +8 -0
  164. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +1 -1
  165. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  166. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +2 -1
  167. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  168. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +3 -2
  169. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  170. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +4 -4
  171. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  172. package/internal/InputLikeText/InputLikeText/InputLikeText.js +2 -1
  173. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  174. package/internal/PopupMenu/PopupMenu/PopupMenu.js +2 -2
  175. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  176. package/internal/RenderContainer/RenderContainer/RenderContainer.js +2 -1
  177. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  178. package/internal/ThemePlayground/darkTheme/darkTheme.js +3 -3
  179. package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
  180. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  181. package/internal/icons/CrossIcon/CrossIcon.js +2 -1
  182. package/internal/icons/CrossIcon/CrossIcon.js.map +1 -1
  183. package/internal/themes/DefaultTheme/DefaultTheme.js +83 -9
  184. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  185. package/internal/themes/DefaultTheme.d.ts +16 -5
  186. package/internal/themes/FlatTheme/FlatTheme.js +0 -1
  187. package/internal/themes/FlatTheme/FlatTheme.js.map +1 -1
  188. package/internal/themes/FlatTheme.d.ts +0 -1
  189. package/internal/themes/Theme8px/Theme8px.js +1 -1
  190. package/internal/themes/Theme8px/Theme8px.js.map +1 -1
  191. package/lib/Upgrades/Upgrades.js +13 -0
  192. package/lib/Upgrades/Upgrades.js.map +1 -1
  193. package/lib/Upgrades.d.ts +2 -0
  194. package/lib/events/keyboard/identifiers/identifiers.js +10 -1
  195. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  196. package/lib/events/keyboard/identifiers.d.ts +1 -0
  197. package/lib/locale/LOCALECONTEXT.md +1 -1
  198. package/lib/styles/ColorFunctions/ColorFunctions.js +1 -1
  199. package/lib/styles/ColorFunctions/ColorFunctions.js.map +1 -1
  200. package/lib/theming/Emotion/Emotion.js +1 -1
  201. package/lib/theming/Emotion/Emotion.js.map +1 -1
  202. package/lib/theming/ThemeContext.md +1 -1
  203. package/lib/utils/utils.js +10 -0
  204. package/lib/utils/utils.js.map +1 -1
  205. package/lib/utils.d.ts +7 -0
  206. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["ColorFunctions.ts"],"names":["clamp","floatFromPercent","ColorFactory","DEFAULT_DARK","create","DEFAULT_LIGHT","ColorFunctionsCache","Object","buildCacheKey","name","args","join","shiftColor","colorString","a","sign","method","toLowerCase","amount","endsWith","parseFloat","color","hsl","toHSL","l","newColor","alpha","h","s","toColorString","type","lighten","key","undefined","darken","contrast","darkString","lightString","threshold","dark","light","luma","toRGBString","toHEXString","red","rgb","green","blue","isValid","e","fade","clone"],"mappings":"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","sourcesContent":["import { clamp, floatFromPercent } from './ColorHelpers';\nimport { ColorFactory } from './ColorFactory';\nimport { ColorObject } from './ColorObject';\n\ntype SignType = '+' | '-';\ntype MethodType = 'absolute' | 'relative';\n\nconst DEFAULT_DARK = ColorFactory.create('#000');\nconst DEFAULT_LIGHT = ColorFactory.create('#fff');\nconst ColorFunctionsCache: { [key: string]: string } = Object.create(null);\n\nconst buildCacheKey = (name: string, ...args: any[]) => `${name}(${args.join()})`;\n\nconst shiftColor = (colorString: string, a: number | string, sign: SignType, method?: MethodType) => {\n if (!colorString) {\n return '';\n }\n\n if (colorString.toLowerCase() === 'transparent') {\n return 'transparent';\n }\n\n let amount: number;\n if (typeof a === 'string') {\n amount = a.endsWith('%') ? floatFromPercent(a) : parseFloat(a);\n } else {\n amount = a;\n }\n amount = clamp(amount, 1);\n\n const color = ColorFactory.create(colorString);\n const hsl = color.toHSL();\n\n if (sign === '+') {\n hsl.l += method === 'relative' ? hsl.l * amount : amount;\n } else {\n hsl.l -= method === 'relative' ? hsl.l * amount : amount;\n }\n\n hsl.l = clamp(hsl.l);\n\n let newColor: ColorObject;\n if (color.alpha < 1) {\n newColor = ColorFactory.create(`hsla(${hsl.h}, ${hsl.s}, ${hsl.l}, ${hsl.a})`);\n } else {\n newColor = ColorFactory.create(`hsl(${hsl.h}, ${hsl.s}, ${hsl.l})`);\n }\n return newColor.toColorString(color.type);\n};\n\nexport function lighten(colorString: string, amount: number | string, method?: MethodType) {\n const key = buildCacheKey('lighten', colorString, amount, method);\n if (ColorFunctionsCache[key] === undefined) {\n ColorFunctionsCache[key] = shiftColor(colorString, amount, '+', method);\n return ColorFunctionsCache[key];\n }\n return ColorFunctionsCache[key];\n}\nexport function darken(colorString: string, amount: number | string, method?: MethodType) {\n const key = buildCacheKey('darken', colorString, amount, method);\n if (ColorFunctionsCache[key] === undefined) {\n ColorFunctionsCache[key] = shiftColor(colorString, amount, '-', method);\n return ColorFunctionsCache[key];\n }\n\n return ColorFunctionsCache[key];\n}\nexport function contrast(colorString: string, darkString?: string, lightString?: string, threshold = 0.43) {\n const key = buildCacheKey('contrast', colorString, darkString, lightString, threshold);\n if (!colorString) {\n ColorFunctionsCache[key] = '';\n }\n if (ColorFunctionsCache[key] === undefined) {\n const color = ColorFactory.create(colorString);\n let dark = typeof darkString === 'undefined' ? DEFAULT_DARK : ColorFactory.create(darkString);\n let light = typeof lightString === 'undefined' ? DEFAULT_LIGHT : ColorFactory.create(lightString);\n\n // Figure out which is actually light and dark:\n if (dark.luma() > light.luma()) {\n [dark, light] = [light, dark];\n }\n\n if (color.luma() < threshold) {\n ColorFunctionsCache[key] = light.alpha < 1 ? light.toRGBString() : light.toHEXString();\n } else {\n ColorFunctionsCache[key] = dark.alpha < 1 ? dark.toRGBString() : dark.toHEXString();\n }\n }\n return ColorFunctionsCache[key]!;\n}\n\nexport const red = (colorString: string) => {\n const color = ColorFactory.create(colorString);\n return color.rgb[0];\n};\nexport const green = (colorString: string) => {\n const color = ColorFactory.create(colorString);\n return color.rgb[1];\n};\nexport const blue = (colorString: string) => {\n const color = ColorFactory.create(colorString);\n return color.rgb[2];\n};\nexport const alpha = (colorString: string) => {\n const color = ColorFactory.create(colorString);\n return color.alpha;\n};\nexport const isValid = (colorString: string) => {\n try {\n ColorFactory.create(colorString);\n return true;\n } catch (e) {\n return false;\n }\n};\nexport const fade = (colorString: string, alpha: number) => {\n const key = buildCacheKey('fade', colorString, alpha);\n\n if (ColorFunctionsCache[key] === undefined) {\n const color = ColorFactory.create(colorString).clone();\n color.alpha = alpha;\n ColorFunctionsCache[key] = color.toColorString(color.type === 'hex' ? 'rgba' : color.type);\n }\n return ColorFunctionsCache[key];\n};\n"]}
1
+ {"version":3,"sources":["ColorFunctions.ts"],"names":["clamp","floatFromPercent","ColorFactory","DEFAULT_DARK","create","DEFAULT_LIGHT","ColorFunctionsCache","Object","buildCacheKey","name","args","join","shiftColor","colorString","a","sign","method","toLowerCase","amount","endsWith","parseFloat","color","hsl","toHSL","l","newColor","alpha","h","s","toColorString","type","lighten","key","undefined","darken","contrast","darkString","lightString","threshold","dark","light","luma","toRGBString","toHEXString","red","rgb","green","blue","isValid","e","fade","clone"],"mappings":"AAAA,SAASA,KAAT,EAAgBC,gBAAhB,QAAwC,gBAAxC;AACA,SAASC,YAAT,QAA6B,gBAA7B;;;;;;AAMA,IAAMC,YAAY,GAAGD,YAAY,CAACE,MAAb,CAAoB,SAApB,CAArB;AACA,IAAMC,aAAa,GAAGH,YAAY,CAACE,MAAb,CAAoB,MAApB,CAAtB;AACA,IAAME,mBAA8C,GAAGC,MAAM,CAACH,MAAP,CAAc,IAAd,CAAvD;;AAEA,IAAMI,aAAa,GAAG,SAAhBA,aAAgB,CAACC,IAAD,qCAAkBC,IAAlB,uEAAkBA,IAAlB,qCAAqCD,IAArC,SAA6CC,IAAI,CAACC,IAAL,EAA7C,QAAtB;;AAEA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,WAAD,EAAsBC,CAAtB,EAA0CC,IAA1C,EAA0DC,MAA1D,EAAkF;AACnG,MAAI,CAACH,WAAL,EAAkB;AAChB,WAAO,EAAP;AACD;;AAED,MAAIA,WAAW,CAACI,WAAZ,OAA8B,aAAlC,EAAiD;AAC/C,WAAO,aAAP;AACD;;AAED,MAAIC,MAAJ;AACA,MAAI,OAAOJ,CAAP,KAAa,QAAjB,EAA2B;AACzBI,IAAAA,MAAM,GAAGJ,CAAC,CAACK,QAAF,CAAW,GAAX,IAAkBlB,gBAAgB,CAACa,CAAD,CAAlC,GAAwCM,UAAU,CAACN,CAAD,CAA3D;AACD,GAFD,MAEO;AACLI,IAAAA,MAAM,GAAGJ,CAAT;AACD;AACDI,EAAAA,MAAM,GAAGlB,KAAK,CAACkB,MAAD,EAAS,CAAT,CAAd;;AAEA,MAAMG,KAAK,GAAGnB,YAAY,CAACE,MAAb,CAAoBS,WAApB,CAAd;AACA,MAAMS,GAAG,GAAGD,KAAK,CAACE,KAAN,EAAZ;;AAEA,MAAIR,IAAI,KAAK,GAAb,EAAkB;AAChBO,IAAAA,GAAG,CAACE,CAAJ,IAASR,MAAM,KAAK,UAAX,GAAwBM,GAAG,CAACE,CAAJ,GAAQN,MAAhC,GAAyCA,MAAlD;AACD,GAFD,MAEO;AACLI,IAAAA,GAAG,CAACE,CAAJ,IAASR,MAAM,KAAK,UAAX,GAAwBM,GAAG,CAACE,CAAJ,GAAQN,MAAhC,GAAyCA,MAAlD;AACD;;AAEDI,EAAAA,GAAG,CAACE,CAAJ,GAAQxB,KAAK,CAACsB,GAAG,CAACE,CAAL,CAAb;;AAEA,MAAIC,QAAJ;AACA,MAAIJ,KAAK,CAACK,KAAN,GAAc,CAAlB,EAAqB;AACnBD,IAAAA,QAAQ,GAAGvB,YAAY,CAACE,MAAb,WAA4BkB,GAAG,CAACK,CAAhC,UAAsCL,GAAG,CAACM,CAA1C,UAAgDN,GAAG,CAACE,CAApD,UAA0DF,GAAG,CAACR,CAA9D,OAAX;AACD,GAFD,MAEO;AACLW,IAAAA,QAAQ,GAAGvB,YAAY,CAACE,MAAb,UAA2BkB,GAAG,CAACK,CAA/B,UAAqCL,GAAG,CAACM,CAAzC,UAA+CN,GAAG,CAACE,CAAnD,OAAX;AACD;AACD,SAAOC,QAAQ,CAACI,aAAT,CAAuBR,KAAK,CAACS,IAA7B,CAAP;AACD,CAnCD;;AAqCA,OAAO,SAASC,OAAT,CAAiBlB,WAAjB,EAAsCK,MAAtC,EAA+DF,MAA/D,EAAoF;AACzF,MAAMgB,GAAG,GAAGxB,aAAa,CAAC,SAAD,EAAYK,WAAZ,EAAyBK,MAAzB,EAAiCF,MAAjC,CAAzB;AACA,MAAIV,mBAAmB,CAAC0B,GAAD,CAAnB,KAA6BC,SAAjC,EAA4C;AAC1C3B,IAAAA,mBAAmB,CAAC0B,GAAD,CAAnB,GAA2BpB,UAAU,CAACC,WAAD,EAAcK,MAAd,EAAsB,GAAtB,EAA2BF,MAA3B,CAArC;AACA,WAAOV,mBAAmB,CAAC0B,GAAD,CAA1B;AACD;AACD,SAAO1B,mBAAmB,CAAC0B,GAAD,CAA1B;AACD;AACD,OAAO,SAASE,MAAT,CAAgBrB,WAAhB,EAAqCK,MAArC,EAA8DF,MAA9D,EAAmF;AACxF,MAAMgB,GAAG,GAAGxB,aAAa,CAAC,QAAD,EAAWK,WAAX,EAAwBK,MAAxB,EAAgCF,MAAhC,CAAzB;AACA,MAAIV,mBAAmB,CAAC0B,GAAD,CAAnB,KAA6BC,SAAjC,EAA4C;AAC1C3B,IAAAA,mBAAmB,CAAC0B,GAAD,CAAnB,GAA2BpB,UAAU,CAACC,WAAD,EAAcK,MAAd,EAAsB,GAAtB,EAA2BF,MAA3B,CAArC;AACA,WAAOV,mBAAmB,CAAC0B,GAAD,CAA1B;AACD;;AAED,SAAO1B,mBAAmB,CAAC0B,GAAD,CAA1B;AACD;AACD,OAAO,SAASG,QAAT,CAAkBtB,WAAlB,EAAuCuB,UAAvC,EAA4DC,WAA5D,EAAkFC,SAAlF,EAAoG,KAAlBA,SAAkB,cAAlBA,SAAkB,GAAN,IAAM;AACzG,MAAMN,GAAG,GAAGxB,aAAa,CAAC,UAAD,EAAaK,WAAb,EAA0BuB,UAA1B,EAAsCC,WAAtC,EAAmDC,SAAnD,CAAzB;AACA,MAAI,CAACzB,WAAL,EAAkB;AAChBP,IAAAA,mBAAmB,CAAC0B,GAAD,CAAnB,GAA2B,EAA3B;AACD;AACD,MAAI1B,mBAAmB,CAAC0B,GAAD,CAAnB,KAA6BC,SAAjC,EAA4C;AAC1C,QAAMZ,KAAK,GAAGnB,YAAY,CAACE,MAAb,CAAoBS,WAApB,CAAd;AACA,QAAI0B,IAAI,GAAG,OAAOH,UAAP,KAAsB,WAAtB,GAAoCjC,YAApC,GAAmDD,YAAY,CAACE,MAAb,CAAoBgC,UAApB,CAA9D;AACA,QAAII,KAAK,GAAG,OAAOH,WAAP,KAAuB,WAAvB,GAAqChC,aAArC,GAAqDH,YAAY,CAACE,MAAb,CAAoBiC,WAApB,CAAjE;;AAEA;AACA,QAAIE,IAAI,CAACE,IAAL,KAAcD,KAAK,CAACC,IAAN,EAAlB,EAAgC;AACd,OAACD,KAAD,EAAQD,IAAR,CADc,CAC7BA,IAD6B,WACvBC,KADuB;AAE/B;;AAED,QAAInB,KAAK,CAACoB,IAAN,KAAeH,SAAnB,EAA8B;AAC5BhC,MAAAA,mBAAmB,CAAC0B,GAAD,CAAnB,GAA2BQ,KAAK,CAACd,KAAN,GAAc,CAAd,GAAkBc,KAAK,CAACE,WAAN,EAAlB,GAAwCF,KAAK,CAACG,WAAN,EAAnE;AACD,KAFD,MAEO;AACLrC,MAAAA,mBAAmB,CAAC0B,GAAD,CAAnB,GAA2BO,IAAI,CAACb,KAAL,GAAa,CAAb,GAAiBa,IAAI,CAACG,WAAL,EAAjB,GAAsCH,IAAI,CAACI,WAAL,EAAjE;AACD;AACF;AACD,SAAOrC,mBAAmB,CAAC0B,GAAD,CAA1B;AACD;;AAED,OAAO,IAAMY,GAAG,GAAG,SAANA,GAAM,CAAC/B,WAAD,EAAyB;AAC1C,MAAMQ,KAAK,GAAGnB,YAAY,CAACE,MAAb,CAAoBS,WAApB,CAAd;AACA,SAAOQ,KAAK,CAACwB,GAAN,CAAU,CAAV,CAAP;AACD,CAHM;AAIP,OAAO,IAAMC,KAAK,GAAG,SAARA,KAAQ,CAACjC,WAAD,EAAyB;AAC5C,MAAMQ,KAAK,GAAGnB,YAAY,CAACE,MAAb,CAAoBS,WAApB,CAAd;AACA,SAAOQ,KAAK,CAACwB,GAAN,CAAU,CAAV,CAAP;AACD,CAHM;AAIP,OAAO,IAAME,IAAI,GAAG,SAAPA,IAAO,CAAClC,WAAD,EAAyB;AAC3C,MAAMQ,KAAK,GAAGnB,YAAY,CAACE,MAAb,CAAoBS,WAApB,CAAd;AACA,SAAOQ,KAAK,CAACwB,GAAN,CAAU,CAAV,CAAP;AACD,CAHM;AAIP,OAAO,IAAMnB,KAAK,GAAG,SAARA,KAAQ,CAACb,WAAD,EAAyB;AAC5C,MAAMQ,KAAK,GAAGnB,YAAY,CAACE,MAAb,CAAoBS,WAApB,CAAd;AACA,SAAOQ,KAAK,CAACK,KAAb;AACD,CAHM;AAIP,OAAO,IAAMsB,OAAO,GAAG,SAAVA,OAAU,CAACnC,WAAD,EAAyB;AAC9C,MAAI;AACFX,IAAAA,YAAY,CAACE,MAAb,CAAoBS,WAApB;AACA,WAAO,IAAP;AACD,GAHD,CAGE,OAAOoC,CAAP,EAAU;AACV,WAAO,KAAP;AACD;AACF,CAPM;AAQP,OAAO,IAAMC,IAAI,GAAG,SAAPA,IAAO,CAACrC,WAAD,EAAsBa,KAAtB,EAAwC;AAC1D,MAAMM,GAAG,GAAGxB,aAAa,CAAC,MAAD,EAASK,WAAT,EAAsBa,KAAtB,CAAzB;;AAEA,MAAIpB,mBAAmB,CAAC0B,GAAD,CAAnB,KAA6BC,SAAjC,EAA4C;AAC1C,QAAMZ,KAAK,GAAGnB,YAAY,CAACE,MAAb,CAAoBS,WAApB,EAAiCsC,KAAjC,EAAd;AACA9B,IAAAA,KAAK,CAACK,KAAN,GAAcA,KAAd;AACApB,IAAAA,mBAAmB,CAAC0B,GAAD,CAAnB,GAA2BX,KAAK,CAACQ,aAAN,CAAoBR,KAAK,CAACS,IAAN,KAAe,KAAf,GAAuB,MAAvB,GAAgCT,KAAK,CAACS,IAA1D,CAA3B;AACD;AACD,SAAOxB,mBAAmB,CAAC0B,GAAD,CAA1B;AACD,CATM","sourcesContent":["import { clamp, floatFromPercent } from './ColorHelpers';\nimport { ColorFactory } from './ColorFactory';\nimport { ColorObject } from './ColorObject';\n\ntype SignType = '+' | '-';\ntype MethodType = 'absolute' | 'relative';\n\nconst DEFAULT_DARK = ColorFactory.create('#333333');\nconst DEFAULT_LIGHT = ColorFactory.create('#fff');\nconst ColorFunctionsCache: { [key: string]: string } = Object.create(null);\n\nconst buildCacheKey = (name: string, ...args: any[]) => `${name}(${args.join()})`;\n\nconst shiftColor = (colorString: string, a: number | string, sign: SignType, method?: MethodType) => {\n if (!colorString) {\n return '';\n }\n\n if (colorString.toLowerCase() === 'transparent') {\n return 'transparent';\n }\n\n let amount: number;\n if (typeof a === 'string') {\n amount = a.endsWith('%') ? floatFromPercent(a) : parseFloat(a);\n } else {\n amount = a;\n }\n amount = clamp(amount, 1);\n\n const color = ColorFactory.create(colorString);\n const hsl = color.toHSL();\n\n if (sign === '+') {\n hsl.l += method === 'relative' ? hsl.l * amount : amount;\n } else {\n hsl.l -= method === 'relative' ? hsl.l * amount : amount;\n }\n\n hsl.l = clamp(hsl.l);\n\n let newColor: ColorObject;\n if (color.alpha < 1) {\n newColor = ColorFactory.create(`hsla(${hsl.h}, ${hsl.s}, ${hsl.l}, ${hsl.a})`);\n } else {\n newColor = ColorFactory.create(`hsl(${hsl.h}, ${hsl.s}, ${hsl.l})`);\n }\n return newColor.toColorString(color.type);\n};\n\nexport function lighten(colorString: string, amount: number | string, method?: MethodType) {\n const key = buildCacheKey('lighten', colorString, amount, method);\n if (ColorFunctionsCache[key] === undefined) {\n ColorFunctionsCache[key] = shiftColor(colorString, amount, '+', method);\n return ColorFunctionsCache[key];\n }\n return ColorFunctionsCache[key];\n}\nexport function darken(colorString: string, amount: number | string, method?: MethodType) {\n const key = buildCacheKey('darken', colorString, amount, method);\n if (ColorFunctionsCache[key] === undefined) {\n ColorFunctionsCache[key] = shiftColor(colorString, amount, '-', method);\n return ColorFunctionsCache[key];\n }\n\n return ColorFunctionsCache[key];\n}\nexport function contrast(colorString: string, darkString?: string, lightString?: string, threshold = 0.43) {\n const key = buildCacheKey('contrast', colorString, darkString, lightString, threshold);\n if (!colorString) {\n ColorFunctionsCache[key] = '';\n }\n if (ColorFunctionsCache[key] === undefined) {\n const color = ColorFactory.create(colorString);\n let dark = typeof darkString === 'undefined' ? DEFAULT_DARK : ColorFactory.create(darkString);\n let light = typeof lightString === 'undefined' ? DEFAULT_LIGHT : ColorFactory.create(lightString);\n\n // Figure out which is actually light and dark:\n if (dark.luma() > light.luma()) {\n [dark, light] = [light, dark];\n }\n\n if (color.luma() < threshold) {\n ColorFunctionsCache[key] = light.alpha < 1 ? light.toRGBString() : light.toHEXString();\n } else {\n ColorFunctionsCache[key] = dark.alpha < 1 ? dark.toRGBString() : dark.toHEXString();\n }\n }\n return ColorFunctionsCache[key]!;\n}\n\nexport const red = (colorString: string) => {\n const color = ColorFactory.create(colorString);\n return color.rgb[0];\n};\nexport const green = (colorString: string) => {\n const color = ColorFactory.create(colorString);\n return color.rgb[1];\n};\nexport const blue = (colorString: string) => {\n const color = ColorFactory.create(colorString);\n return color.rgb[2];\n};\nexport const alpha = (colorString: string) => {\n const color = ColorFactory.create(colorString);\n return color.alpha;\n};\nexport const isValid = (colorString: string) => {\n try {\n ColorFactory.create(colorString);\n return true;\n } catch (e) {\n return false;\n }\n};\nexport const fade = (colorString: string, alpha: number) => {\n const key = buildCacheKey('fade', colorString, alpha);\n\n if (ColorFunctionsCache[key] === undefined) {\n const color = ColorFactory.create(colorString).clone();\n color.alpha = alpha;\n ColorFunctionsCache[key] = color.toColorString(color.type === 'hex' ? 'rgba' : color.type);\n }\n return ColorFunctionsCache[key];\n};\n"]}
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import createEmotion from '@emotion/css/create-instance';
3
3
  import extraScopePlugin from 'stylis-plugin-extra-scope';
4
4
  import { Upgrade } from "../../Upgrades";
5
- var REACT_UI_PREFIX = 'react-ui';
5
+ var REACT_UI_PREFIX = Upgrade.getSpecificityClassName();
6
6
  var scope = new Array(Upgrade.getSpecificityLevel()).fill("." + REACT_UI_PREFIX).join('');
7
7
 
8
8
  var _createEmotion = createEmotion({
@@ -1 +1 @@
1
- {"version":3,"sources":["Emotion.ts"],"names":["createEmotion","extraScopePlugin","Upgrade","REACT_UI_PREFIX","scope","Array","getSpecificityLevel","fill","join","key","stylisPlugins","undefined","flush","hydrate","cx","merge","getRegisteredStyles","injectGlobal","keyframes","css","sheet","cache","isZeroArgs","fn","length","memoize","isCalled","result","WeakMap","arg","has","set","get","memoizeStyle","styles","Object","keys","forEach","className","prefix","component","app","classes","reduce","acc"],"mappings":"0DAAA,OAAOA,aAAP,MAA0B,8BAA1B;AACA,OAAOC,gBAAP,MAA6B,2BAA7B;;AAEA,SAASC,OAAT,QAAwB,aAAxB;;;;AAIA,IAAMC,eAAe,GAAG,UAAxB;;AAEA,IAAMC,KAAK,GAAG,IAAIC,KAAJ,CAAUH,OAAO,CAACI,mBAAR,EAAV,EAAyCC,IAAzC,OAAkDJ,eAAlD,EAAqEK,IAArE,CAA0E,EAA1E,CAAd,C;;;AAGER,aAAa,CAAC;AACZS,EAAAA,GAAG,EAAEN,eADO;AAEZO,EAAAA,aAAa,EAAEN,KAAK,GAAG,CAACH,gBAAgB,CAACG,KAAD,CAAjB,CAAH,GAA+BO,SAFvC,EAAD,C,CADAC,K,kBAAAA,K,CAAOC,O,kBAAAA,O,CAASC,E,kBAAAA,E,CAAIC,K,kBAAAA,K,CAAOC,mB,kBAAAA,mB,CAAqBC,Y,kBAAAA,Y,CAAcC,S,kBAAAA,S,CAAWC,G,kBAAAA,G,CAAKC,K,kBAAAA,K,CAAOC,K,kBAAAA,K;;;AAMpG,SAASC,UAAT,CAAwDC,EAAxD,EAAyF;AACvF,SAAOA,EAAE,CAACC,MAAH,IAAa,CAApB;AACD;;AAED,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAAsBF,EAAtB,EAAuF;AACrG,MAAID,UAAU,CAACC,EAAD,CAAd,EAAoB;AAClB,QAAIG,QAAQ,GAAG,KAAf;AACA,QAAIC,MAAJ;AACA,WAAO,YAAM;AACX,UAAI,CAACD,QAAL,EAAe;AACbA,QAAAA,QAAQ,GAAG,IAAX;AACAC,QAAAA,MAAM,GAAGJ,EAAE,EAAX;AACD;AACD,aAAOI,MAAP;AACD,KAND;AAOD;;AAED,MAAMN,KAAK,GAAG,IAAIO,OAAJ,EAAd;AACA,SAAO,UAACC,GAAD,EAAY;AACjB,QAAI,CAACR,KAAK,CAACS,GAAN,CAAUD,GAAV,CAAL,EAAqBR,KAAK,CAACU,GAAN,CAAUF,GAAV,EAAeN,EAAE,CAACM,GAAD,CAAjB;AACrB,WAAOR,KAAK,CAACW,GAAN,CAAUH,GAAV,CAAP;AACD,GAHD;AAID,CAlBD;;AAoBA,OAAO,IAAMI,YAAY,GAAG,SAAfA,YAAe;AAC1BC,MAD0B;AAEpB;AACNC,EAAAA,MAAM,CAACC,IAAP,CAAYF,MAAZ,EAAoBG,OAApB,CAA4B,UAACC,SAAD,UAAgBJ,MAAM,CAACI,SAAD,CAAN,GAA+Bb,OAAO,CAACS,MAAM,CAACI,SAAD,CAAP,CAAtD,EAA5B;AACA,SAAOJ,MAAP;AACD,CALM;;AAOP,OAAO,IAAMK,MAAM;AACjB,SADWA,MACX,CAACC,SAAD,EAAoBC,GAApB,OAAoBA,GAApB,cAAoBA,GAApB,GAA0BtC,eAA1B;AACA,cAAmCuC,OAAnC;AACEP,QAAAA,MAAM,CAACC,IAAP,CAAYM,OAAZ,EAAqBC,MAArB,CAA4B,UAACC,GAAD,EAAMnC,GAAN,EAAc;AACxC,8BAAYmC,GAAZ,6BAAkBnC,GAAlB,IAA2BgC,GAA3B,SAAkCD,SAAlC,SAA+CE,OAAO,CAACjC,GAAD,CAAtD;AACD,SAFD,EAEG,EAFH,CADF,GADA,GADK","sourcesContent":["import createEmotion from '@emotion/css/create-instance';\nimport extraScopePlugin from 'stylis-plugin-extra-scope';\n\nimport { Upgrade } from '../Upgrades';\n\nimport { Theme } from './Theme';\n\nconst REACT_UI_PREFIX = 'react-ui';\n\nconst scope = new Array(Upgrade.getSpecificityLevel()).fill(`.${REACT_UI_PREFIX}`).join('');\n\nexport const { flush, hydrate, cx, merge, getRegisteredStyles, injectGlobal, keyframes, css, sheet, cache } =\n createEmotion({\n key: REACT_UI_PREFIX,\n stylisPlugins: scope ? [extraScopePlugin(scope)] : undefined,\n });\n\nfunction isZeroArgs<R, T extends (...args: any[]) => R>(fn: T | Function): fn is () => R {\n return fn.length == 0;\n}\n\nconst memoize = <A extends object, R>(fn: (() => R) | ((arg: A) => R)): (() => R) | ((arg: A) => R) => {\n if (isZeroArgs(fn)) {\n let isCalled = false;\n let result: R;\n return () => {\n if (!isCalled) {\n isCalled = true;\n result = fn();\n }\n return result;\n };\n }\n\n const cache = new WeakMap();\n return (arg: A) => {\n if (!cache.has(arg)) cache.set(arg, fn(arg));\n return cache.get(arg);\n };\n};\n\nexport const memoizeStyle = <S extends { [className: string]: (() => string) | ((t: Theme) => string) }>(\n styles: S,\n): S => {\n Object.keys(styles).forEach((className) => (styles[className as keyof S] = memoize(styles[className]) as S[keyof S]));\n return styles;\n};\n\nexport const prefix =\n (component: string, app = REACT_UI_PREFIX) =>\n <T extends Record<string, string>>(classes: T): T =>\n Object.keys(classes).reduce((acc, key) => {\n return { ...acc, [key]: `${app}-${component}-${classes[key]}` };\n }, {} as T);\n"]}
1
+ {"version":3,"sources":["Emotion.ts"],"names":["createEmotion","extraScopePlugin","Upgrade","REACT_UI_PREFIX","getSpecificityClassName","scope","Array","getSpecificityLevel","fill","join","key","stylisPlugins","undefined","flush","hydrate","cx","merge","getRegisteredStyles","injectGlobal","keyframes","css","sheet","cache","isZeroArgs","fn","length","memoize","isCalled","result","WeakMap","arg","has","set","get","memoizeStyle","styles","Object","keys","forEach","className","prefix","component","app","classes","reduce","acc"],"mappings":"0DAAA,OAAOA,aAAP,MAA0B,8BAA1B;AACA,OAAOC,gBAAP,MAA6B,2BAA7B;;AAEA,SAASC,OAAT,QAAwB,aAAxB;;;;AAIA,IAAMC,eAAe,GAAGD,OAAO,CAACE,uBAAR,EAAxB;;AAEA,IAAMC,KAAK,GAAG,IAAIC,KAAJ,CAAUJ,OAAO,CAACK,mBAAR,EAAV,EAAyCC,IAAzC,OAAkDL,eAAlD,EAAqEM,IAArE,CAA0E,EAA1E,CAAd,C;;;AAGET,aAAa,CAAC;AACZU,EAAAA,GAAG,EAAEP,eADO;AAEZQ,EAAAA,aAAa,EAAEN,KAAK,GAAG,CAACJ,gBAAgB,CAACI,KAAD,CAAjB,CAAH,GAA+BO,SAFvC,EAAD,C,CADAC,K,kBAAAA,K,CAAOC,O,kBAAAA,O,CAASC,E,kBAAAA,E,CAAIC,K,kBAAAA,K,CAAOC,mB,kBAAAA,mB,CAAqBC,Y,kBAAAA,Y,CAAcC,S,kBAAAA,S,CAAWC,G,kBAAAA,G,CAAKC,K,kBAAAA,K,CAAOC,K,kBAAAA,K;;;AAMpG,SAASC,UAAT,CAAwDC,EAAxD,EAAyF;AACvF,SAAOA,EAAE,CAACC,MAAH,IAAa,CAApB;AACD;;AAED,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAAsBF,EAAtB,EAAuF;AACrG,MAAID,UAAU,CAACC,EAAD,CAAd,EAAoB;AAClB,QAAIG,QAAQ,GAAG,KAAf;AACA,QAAIC,MAAJ;AACA,WAAO,YAAM;AACX,UAAI,CAACD,QAAL,EAAe;AACbA,QAAAA,QAAQ,GAAG,IAAX;AACAC,QAAAA,MAAM,GAAGJ,EAAE,EAAX;AACD;AACD,aAAOI,MAAP;AACD,KAND;AAOD;;AAED,MAAMN,KAAK,GAAG,IAAIO,OAAJ,EAAd;AACA,SAAO,UAACC,GAAD,EAAY;AACjB,QAAI,CAACR,KAAK,CAACS,GAAN,CAAUD,GAAV,CAAL,EAAqBR,KAAK,CAACU,GAAN,CAAUF,GAAV,EAAeN,EAAE,CAACM,GAAD,CAAjB;AACrB,WAAOR,KAAK,CAACW,GAAN,CAAUH,GAAV,CAAP;AACD,GAHD;AAID,CAlBD;;AAoBA,OAAO,IAAMI,YAAY,GAAG,SAAfA,YAAe;AAC1BC,MAD0B;AAEpB;AACNC,EAAAA,MAAM,CAACC,IAAP,CAAYF,MAAZ,EAAoBG,OAApB,CAA4B,UAACC,SAAD,UAAgBJ,MAAM,CAACI,SAAD,CAAN,GAA+Bb,OAAO,CAACS,MAAM,CAACI,SAAD,CAAP,CAAtD,EAA5B;AACA,SAAOJ,MAAP;AACD,CALM;;AAOP,OAAO,IAAMK,MAAM;AACjB,SADWA,MACX,CAACC,SAAD,EAAoBC,GAApB,OAAoBA,GAApB,cAAoBA,GAApB,GAA0BvC,eAA1B;AACA,cAAmCwC,OAAnC;AACEP,QAAAA,MAAM,CAACC,IAAP,CAAYM,OAAZ,EAAqBC,MAArB,CAA4B,UAACC,GAAD,EAAMnC,GAAN,EAAc;AACxC,8BAAYmC,GAAZ,6BAAkBnC,GAAlB,IAA2BgC,GAA3B,SAAkCD,SAAlC,SAA+CE,OAAO,CAACjC,GAAD,CAAtD;AACD,SAFD,EAEG,EAFH,CADF,GADA,GADK","sourcesContent":["import createEmotion from '@emotion/css/create-instance';\nimport extraScopePlugin from 'stylis-plugin-extra-scope';\n\nimport { Upgrade } from '../Upgrades';\n\nimport { Theme } from './Theme';\n\nconst REACT_UI_PREFIX = Upgrade.getSpecificityClassName();\n\nconst scope = new Array(Upgrade.getSpecificityLevel()).fill(`.${REACT_UI_PREFIX}`).join('');\n\nexport const { flush, hydrate, cx, merge, getRegisteredStyles, injectGlobal, keyframes, css, sheet, cache } =\n createEmotion({\n key: REACT_UI_PREFIX,\n stylisPlugins: scope ? [extraScopePlugin(scope)] : undefined,\n });\n\nfunction isZeroArgs<R, T extends (...args: any[]) => R>(fn: T | Function): fn is () => R {\n return fn.length == 0;\n}\n\nconst memoize = <A extends object, R>(fn: (() => R) | ((arg: A) => R)): (() => R) | ((arg: A) => R) => {\n if (isZeroArgs(fn)) {\n let isCalled = false;\n let result: R;\n return () => {\n if (!isCalled) {\n isCalled = true;\n result = fn();\n }\n return result;\n };\n }\n\n const cache = new WeakMap();\n return (arg: A) => {\n if (!cache.has(arg)) cache.set(arg, fn(arg));\n return cache.get(arg);\n };\n};\n\nexport const memoizeStyle = <S extends { [className: string]: (() => string) | ((t: Theme) => string) }>(\n styles: S,\n): S => {\n Object.keys(styles).forEach((className) => (styles[className as keyof S] = memoize(styles[className]) as S[keyof S]));\n return styles;\n};\n\nexport const prefix =\n (component: string, app = REACT_UI_PREFIX) =>\n <T extends Record<string, string>>(classes: T): T =>\n Object.keys(classes).reduce((acc, key) => {\n return { ...acc, [key]: `${app}-${component}-${classes[key]}` };\n }, {} as T);\n"]}
@@ -196,7 +196,7 @@ const NestedThemes = () => (
196
196
 
197
197
  ## Кастомизация @skbkontur/react-ui-addons
198
198
 
199
- Компоненты `@skbkontur/react-ui-addons` так же поддерживают кастомизацию через `ThemeContext` из `@skbkontur/react-ui`. Достаточно переопределить нужные переменные, которые перечислены на страницах компонентов в [докумендации аддонов](http://ui.gitlab-pages.kontur.host/docs/#/react-ui-addons).
199
+ Компоненты `@skbkontur/react-ui-addons` так же поддерживают кастомизацию через `ThemeContext` из `@skbkontur/react-ui`. Достаточно переопределить нужные переменные, которые перечислены на страницах компонентов в [докумендации аддонов](https://ui.gitlab-pages.kontur.host/docs/#/react-ui-addons).
200
200
 
201
201
  ```tsx static
202
202
  import { ThemeContext, ThemeFactory } from '@skbkontur/react-ui';
@@ -67,4 +67,14 @@ export var isReactUINode = function isReactUINode(componentName, node) {
67
67
  }
68
68
 
69
69
  return false;
70
+ };
71
+ /**
72
+ * Проверяет, не является ли переданный аргумент null или undefined и исключает типы null и undefined из типа аргумента
73
+ *
74
+ * @param value Значение, которое нужно проверить и исключить из него типы
75
+ * @returns Возвращает true, если переданный аргумент не является null или undefined иначе false
76
+ */
77
+
78
+ export var isNonNullable = function isNonNullable(value) {
79
+ return value !== null && value !== undefined;
70
80
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["utils.ts"],"names":["React","isBrowser","delay","ms","Promise","resolve","setTimeout","emptyHandler","CancelationError","code","Error","taskWithDelay","task","cancelationToken","reject","then","isFunction","x","isFunctionalComponent","Component","prototype","isReactComponent","escapeRegExpSpecChars","s","replace","getRandomID","Math","random","toString","slice","isExternalLink","link","RegExp","window","location","host","test","isReactUINode","componentName","node","isValidElement","Object","hasOwnProperty","call","type","__KONTUR_REACT_UI__"],"mappings":";AACA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAASC,SAAT,QAA0B,UAA1B;;AAEA;;;;;;;;;;;AAWA,OAAO,IAAMC,KAAK,GAAG,SAARA,KAAQ,CAACC,EAAD,UAAgB,IAAIC,OAAJ,CAAY,UAACC,OAAD,UAAaC,UAAU,CAACD,OAAD,EAAUF,EAAV,CAAvB,EAAZ,CAAhB,EAAd;;AAEP,OAAO,IAAMI,YAAY,GAAG,SAAfA,YAAe,GAAM;AAChC;AACD,CAFM;;AAIP,WAAaC,gBAAb;AACSC,IAAAA,IADT,GACgB,kBADhB,wEAAsCC,KAAtC;;;AAIA,OAAO,SAASC,aAAT,CAAuBC,IAAvB,EAAyCT,EAAzC,EAAqD;AAC1D,MAAIU,gBAA4B,GAAG,oCAAM,IAAN,EAAnC;;AAEA,MAAIT,OAAJ,CAAY,UAACC,OAAD,EAAUS,MAAV,EAAqB;AAC/BD,IAAAA,gBAAgB,GAAGC,MAAnB;AACAR,IAAAA,UAAU,CAACD,OAAD,EAAUF,EAAV,CAAV;AACD,GAHD;AAIGY,EAAAA,IAJH,CAIQH,IAJR;AAKS,sBAAM,IAAN,EALT;;AAOA,SAAOC,gBAAP;AACD;;AAED,OAAO,SAASG,UAAT,CAAuBC,CAAvB,EAAuD;AAC5D,SAAO,OAAOA,CAAP,KAAa,UAApB;AACD;;AAED,OAAO,SAASC,qBAAT,CAA+BC,SAA/B,EAA8D;AACnE,SAAO,OAAOA,SAAP,KAAqB,UAArB,IAAmC,EAAEA,SAAS,CAACC,SAAV,IAAuBD,SAAS,CAACC,SAAV,CAAoBC,gBAA7C,CAA1C;AACD;;AAED,OAAO,SAASC,qBAAT,CAA+BC,CAA/B,EAAkD;AACvD,SAAOA,CAAC,CAACC,OAAF,CAAU,qBAAV,EAAiC,MAAjC,CAAP;AACD;;AAED,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAc,WAAcC,IAAI,CAACC,MAAL,GAAcC,QAAd,CAAuB,EAAvB,EAA2BC,KAA3B,CAAiC,CAAjC,CAAd,EAApB;;AAEP,OAAO,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACC,IAAD,EAA2B;AACvD,SAAO,IAAIC,MAAJ,oBAA2B/B,SAAS,WAASgC,MAAM,CAACC,QAAP,CAAgBC,IAAzB,WAApC,YAAiF,IAAjF,EAAuFC,IAAvF,CAA4FL,IAA5F,CAAP;AACD,CAFM;;AAIP;AACA;AACA;AACA,OAAO,IAAMM,aAAa,GAAG,SAAhBA,aAAgB,CAACC,aAAD,EAAwBC,IAAxB,EAA2D;AACtF,oBAAIvC,KAAK,CAACwC,cAAN,CAAqBD,IAArB,CAAJ,EAAgC;AAC9B;AACEE,MAAAA,MAAM,CAACrB,SAAP,CAAiBsB,cAAjB,CAAgCC,IAAhC,CAAqCJ,IAAI,CAACK,IAA1C,EAAgD,qBAAhD;AACA;AACAL,MAAAA,IAAI,CAACK,IAAL,CAAUC,mBAAV,KAAkCP,aAHpC;;AAKD;;AAED,SAAO,KAAP;AACD,CAVM","sourcesContent":["import { ReactComponentLike } from 'prop-types';\nimport React from 'react';\n\nimport { isBrowser } from './client';\n\n// NOTE: Copy-paste from @types/react\nexport type Defaultize<P, D> = P extends any\n ? string extends keyof P\n ? P\n : Pick<P, Exclude<keyof P, keyof D>> &\n Partial<Pick<P, Extract<keyof P, keyof D>>> &\n Partial<Pick<D, Exclude<keyof D, keyof P>>>\n : never;\n\nexport type DefaultizeProps<C, P> = C extends { defaultProps: infer D } ? Defaultize<P, D> : P;\n\nexport const delay = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms));\n\nexport const emptyHandler = () => {\n /* noop */\n};\n\nexport class CancelationError extends Error {\n public code = 'CancelationError';\n}\n\nexport function taskWithDelay(task: () => void, ms: number) {\n let cancelationToken: () => void = () => null;\n\n new Promise((resolve, reject) => {\n cancelationToken = reject;\n setTimeout(resolve, ms);\n })\n .then(task)\n .catch(() => null);\n\n return cancelationToken;\n}\n\nexport function isFunction<T>(x: T | Function): x is Function {\n return typeof x === 'function';\n}\n\nexport function isFunctionalComponent(Component: ReactComponentLike) {\n return typeof Component === 'function' && !(Component.prototype && Component.prototype.isReactComponent);\n}\n\nexport function escapeRegExpSpecChars(s: string): string {\n return s.replace(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n}\n\nexport const getRandomID = (): string => Math.random().toString(16).slice(2);\n\nexport const isExternalLink = (link: string): boolean => {\n return new RegExp(`^(https?:)?//${isBrowser ? `(?!${window.location.host})` : ``}\\\\S+`, 'gi').test(link);\n};\n\n/**\n * Check if the given ReactNode is an element of the specified ReactUI component\n */\nexport const isReactUINode = (componentName: string, node: React.ReactNode): boolean => {\n if (React.isValidElement(node)) {\n return (\n Object.prototype.hasOwnProperty.call(node.type, '__KONTUR_REACT_UI__') &&\n // @ts-ignore\n node.type.__KONTUR_REACT_UI__ === componentName\n );\n }\n\n return false;\n};\n"]}
1
+ {"version":3,"sources":["utils.ts"],"names":["React","isBrowser","delay","ms","Promise","resolve","setTimeout","emptyHandler","CancelationError","code","Error","taskWithDelay","task","cancelationToken","reject","then","isFunction","x","isFunctionalComponent","Component","prototype","isReactComponent","escapeRegExpSpecChars","s","replace","getRandomID","Math","random","toString","slice","isExternalLink","link","RegExp","window","location","host","test","isReactUINode","componentName","node","isValidElement","Object","hasOwnProperty","call","type","__KONTUR_REACT_UI__","isNonNullable","value","undefined"],"mappings":";AACA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAASC,SAAT,QAA0B,UAA1B;;AAEA;;;;;;;;;;;AAWA,OAAO,IAAMC,KAAK,GAAG,SAARA,KAAQ,CAACC,EAAD,UAAgB,IAAIC,OAAJ,CAAY,UAACC,OAAD,UAAaC,UAAU,CAACD,OAAD,EAAUF,EAAV,CAAvB,EAAZ,CAAhB,EAAd;;AAEP,OAAO,IAAMI,YAAY,GAAG,SAAfA,YAAe,GAAM;AAChC;AACD,CAFM;;AAIP,WAAaC,gBAAb;AACSC,IAAAA,IADT,GACgB,kBADhB,wEAAsCC,KAAtC;;;AAIA,OAAO,SAASC,aAAT,CAAuBC,IAAvB,EAAyCT,EAAzC,EAAqD;AAC1D,MAAIU,gBAA4B,GAAG,oCAAM,IAAN,EAAnC;;AAEA,MAAIT,OAAJ,CAAY,UAACC,OAAD,EAAUS,MAAV,EAAqB;AAC/BD,IAAAA,gBAAgB,GAAGC,MAAnB;AACAR,IAAAA,UAAU,CAACD,OAAD,EAAUF,EAAV,CAAV;AACD,GAHD;AAIGY,EAAAA,IAJH,CAIQH,IAJR;AAKS,sBAAM,IAAN,EALT;;AAOA,SAAOC,gBAAP;AACD;;AAED,OAAO,SAASG,UAAT,CAAuBC,CAAvB,EAAuD;AAC5D,SAAO,OAAOA,CAAP,KAAa,UAApB;AACD;;AAED,OAAO,SAASC,qBAAT,CAA+BC,SAA/B,EAA8D;AACnE,SAAO,OAAOA,SAAP,KAAqB,UAArB,IAAmC,EAAEA,SAAS,CAACC,SAAV,IAAuBD,SAAS,CAACC,SAAV,CAAoBC,gBAA7C,CAA1C;AACD;;AAED,OAAO,SAASC,qBAAT,CAA+BC,CAA/B,EAAkD;AACvD,SAAOA,CAAC,CAACC,OAAF,CAAU,qBAAV,EAAiC,MAAjC,CAAP;AACD;;AAED,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAc,WAAcC,IAAI,CAACC,MAAL,GAAcC,QAAd,CAAuB,EAAvB,EAA2BC,KAA3B,CAAiC,CAAjC,CAAd,EAApB;;AAEP,OAAO,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACC,IAAD,EAA2B;AACvD,SAAO,IAAIC,MAAJ,oBAA2B/B,SAAS,WAASgC,MAAM,CAACC,QAAP,CAAgBC,IAAzB,WAApC,YAAiF,IAAjF,EAAuFC,IAAvF,CAA4FL,IAA5F,CAAP;AACD,CAFM;;AAIP;AACA;AACA;AACA,OAAO,IAAMM,aAAa,GAAG,SAAhBA,aAAgB,CAACC,aAAD,EAAwBC,IAAxB,EAA2D;AACtF,oBAAIvC,KAAK,CAACwC,cAAN,CAAqBD,IAArB,CAAJ,EAAgC;AAC9B;AACEE,MAAAA,MAAM,CAACrB,SAAP,CAAiBsB,cAAjB,CAAgCC,IAAhC,CAAqCJ,IAAI,CAACK,IAA1C,EAAgD,qBAAhD;AACA;AACAL,MAAAA,IAAI,CAACK,IAAL,CAAUC,mBAAV,KAAkCP,aAHpC;;AAKD;;AAED,SAAO,KAAP;AACD,CAVM;;AAYP;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMQ,aAAa,GAAG,SAAhBA,aAAgB,CAAIC,KAAJ,EAA0C;AACrE,SAAOA,KAAK,KAAK,IAAV,IAAkBA,KAAK,KAAKC,SAAnC;AACD,CAFM","sourcesContent":["import { ReactComponentLike } from 'prop-types';\nimport React from 'react';\n\nimport { isBrowser } from './client';\n\n// NOTE: Copy-paste from @types/react\nexport type Defaultize<P, D> = P extends any\n ? string extends keyof P\n ? P\n : Pick<P, Exclude<keyof P, keyof D>> &\n Partial<Pick<P, Extract<keyof P, keyof D>>> &\n Partial<Pick<D, Exclude<keyof D, keyof P>>>\n : never;\n\nexport type DefaultizeProps<C, P> = C extends { defaultProps: infer D } ? Defaultize<P, D> : P;\n\nexport const delay = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms));\n\nexport const emptyHandler = () => {\n /* noop */\n};\n\nexport class CancelationError extends Error {\n public code = 'CancelationError';\n}\n\nexport function taskWithDelay(task: () => void, ms: number) {\n let cancelationToken: () => void = () => null;\n\n new Promise((resolve, reject) => {\n cancelationToken = reject;\n setTimeout(resolve, ms);\n })\n .then(task)\n .catch(() => null);\n\n return cancelationToken;\n}\n\nexport function isFunction<T>(x: T | Function): x is Function {\n return typeof x === 'function';\n}\n\nexport function isFunctionalComponent(Component: ReactComponentLike) {\n return typeof Component === 'function' && !(Component.prototype && Component.prototype.isReactComponent);\n}\n\nexport function escapeRegExpSpecChars(s: string): string {\n return s.replace(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n}\n\nexport const getRandomID = (): string => Math.random().toString(16).slice(2);\n\nexport const isExternalLink = (link: string): boolean => {\n return new RegExp(`^(https?:)?//${isBrowser ? `(?!${window.location.host})` : ``}\\\\S+`, 'gi').test(link);\n};\n\n/**\n * Check if the given ReactNode is an element of the specified ReactUI component\n */\nexport const isReactUINode = (componentName: string, node: React.ReactNode): boolean => {\n if (React.isValidElement(node)) {\n return (\n Object.prototype.hasOwnProperty.call(node.type, '__KONTUR_REACT_UI__') &&\n // @ts-ignore\n node.type.__KONTUR_REACT_UI__ === componentName\n );\n }\n\n return false;\n};\n\n/**\n * Проверяет, не является ли переданный аргумент null или undefined и исключает типы null и undefined из типа аргумента\n *\n * @param value Значение, которое нужно проверить и исключить из него типы\n * @returns Возвращает true, если переданный аргумент не является null или undefined иначе false\n */\nexport const isNonNullable = <T>(value: T): value is NonNullable<T> => {\n return value !== null && value !== undefined;\n};\n"]}
package/lib/utils.d.ts CHANGED
@@ -19,3 +19,10 @@ export declare const isExternalLink: (link: string) => boolean;
19
19
  * Check if the given ReactNode is an element of the specified ReactUI component
20
20
  */
21
21
  export declare const isReactUINode: (componentName: string, node: React.ReactNode) => boolean;
22
+ /**
23
+ * Проверяет, не является ли переданный аргумент null или undefined и исключает типы null и undefined из типа аргумента
24
+ *
25
+ * @param value Значение, которое нужно проверить и исключить из него типы
26
+ * @returns Возвращает true, если переданный аргумент не является null или undefined иначе false
27
+ */
28
+ export declare const isNonNullable: <T>(value: T) => value is NonNullable<T>;
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@skbkontur/react-ui",
3
- "version": "3.7.0",
3
+ "version": "3.8.1",
4
4
  "description": "UI Components",
5
5
  "main": "cjs/index.js",
6
6
  "module": "index.js",
7
7
  "sideEffects": false,
8
- "homepage": "https://tech.skbkontur.ru/react-ui/3.7.0/",
8
+ "homepage": "https://tech.skbkontur.ru/react-ui/3.8.1/",
9
9
  "repository": {
10
10
  "type": "git",
11
11
  "url": "git@github.com:skbkontur/retail-ui.git"