styled-components 5.3.5 → 5.3.6

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 (303) hide show
  1. package/README.md +2 -2
  2. package/dist/styled-components.browser.cjs.js +1 -1
  3. package/dist/styled-components.browser.cjs.js.map +1 -1
  4. package/dist/styled-components.browser.esm.js +1 -1
  5. package/dist/styled-components.browser.esm.js.map +1 -1
  6. package/dist/styled-components.cjs.js +1 -1
  7. package/dist/styled-components.cjs.js.map +1 -1
  8. package/dist/styled-components.esm.js +1 -1
  9. package/dist/styled-components.esm.js.map +1 -1
  10. package/dist/styled-components.js +1 -1
  11. package/dist/styled-components.js.map +1 -1
  12. package/dist/styled-components.min.js +1 -1
  13. package/dist/styled-components.min.js.map +1 -1
  14. package/native/dist/constructors/constructWithOptions.d.ts +11 -15
  15. package/native/dist/constructors/css.d.ts +3 -3
  16. package/native/dist/constructors/styled.d.ts +179 -179
  17. package/native/dist/hoc/withTheme.d.ts +1 -1
  18. package/native/dist/models/ComponentStyle.d.ts +1 -0
  19. package/native/dist/models/StyledComponent.d.ts +1 -1
  20. package/native/dist/models/StyledNativeComponent.d.ts +2 -2
  21. package/native/dist/models/ThemeProvider.d.ts +22 -0
  22. package/native/dist/native/index.d.ts +30 -54
  23. package/native/dist/sheet/Tag.d.ts +3 -3
  24. package/native/dist/sheet/dom.d.ts +1 -1
  25. package/native/dist/styled-components.native.cjs.js +2 -2
  26. package/native/dist/styled-components.native.cjs.js.map +1 -1
  27. package/native/dist/styled-components.native.esm.js +2 -2
  28. package/native/dist/styled-components.native.esm.js.map +1 -1
  29. package/native/dist/test/utils.d.ts +178 -178
  30. package/native/dist/types.d.ts +70 -61
  31. package/native/dist/utils/checkDynamicCreation.d.ts +1 -1
  32. package/native/dist/utils/flatten.d.ts +1 -1
  33. package/native/dist/utils/generateDisplayName.d.ts +1 -1
  34. package/native/dist/utils/getComponentName.d.ts +1 -1
  35. package/native/dist/utils/isStyledComponent.d.ts +1 -1
  36. package/native/dist/utils/isTag.d.ts +1 -1
  37. package/native/dist/utils/stylis.d.ts +2 -1
  38. package/package.json +1 -1
  39. package/postinstall.js +4 -4
  40. package/primitives/dist/styled-components-primitives.cjs.js +2 -2
  41. package/primitives/dist/styled-components-primitives.cjs.js.map +1 -1
  42. package/primitives/dist/styled-components-primitives.esm.js +2 -2
  43. package/primitives/dist/styled-components-primitives.esm.js.map +1 -1
  44. package/primitives/dist/base.d.ts +0 -18
  45. package/primitives/dist/base.d.ts.map +0 -1
  46. package/primitives/dist/constants.d.ts +0 -8
  47. package/primitives/dist/constants.d.ts.map +0 -1
  48. package/primitives/dist/constructors/constructWithOptions.d.ts +0 -19
  49. package/primitives/dist/constructors/constructWithOptions.d.ts.map +0 -1
  50. package/primitives/dist/constructors/createGlobalStyle.d.ts +0 -3
  51. package/primitives/dist/constructors/createGlobalStyle.d.ts.map +0 -1
  52. package/primitives/dist/constructors/css.d.ts +0 -4
  53. package/primitives/dist/constructors/css.d.ts.map +0 -1
  54. package/primitives/dist/constructors/keyframes.d.ts +0 -3
  55. package/primitives/dist/constructors/keyframes.d.ts.map +0 -1
  56. package/primitives/dist/constructors/styled.d.ts +0 -185
  57. package/primitives/dist/constructors/styled.d.ts.map +0 -1
  58. package/primitives/dist/dist/base.d.ts +0 -18
  59. package/primitives/dist/dist/base.d.ts.map +0 -1
  60. package/primitives/dist/dist/constants.d.ts +0 -9
  61. package/primitives/dist/dist/constants.d.ts.map +0 -1
  62. package/primitives/dist/dist/constructors/constructWithOptions.d.ts +0 -20
  63. package/primitives/dist/dist/constructors/constructWithOptions.d.ts.map +0 -1
  64. package/primitives/dist/dist/constructors/createGlobalStyle.d.ts +0 -4
  65. package/primitives/dist/dist/constructors/createGlobalStyle.d.ts.map +0 -1
  66. package/primitives/dist/dist/constructors/css.d.ts +0 -5
  67. package/primitives/dist/dist/constructors/css.d.ts.map +0 -1
  68. package/primitives/dist/dist/constructors/keyframes.d.ts +0 -4
  69. package/primitives/dist/dist/constructors/keyframes.d.ts.map +0 -1
  70. package/primitives/dist/dist/constructors/styled.d.ts +0 -186
  71. package/primitives/dist/dist/constructors/styled.d.ts.map +0 -1
  72. package/primitives/dist/dist/hoc/withTheme.d.ts +0 -4
  73. package/primitives/dist/dist/hoc/withTheme.d.ts.map +0 -1
  74. package/primitives/dist/dist/hoc/withTheme.spec.d.ts +0 -2
  75. package/primitives/dist/dist/hoc/withTheme.spec.d.ts.map +0 -1
  76. package/primitives/dist/dist/hooks/useTheme.d.ts +0 -4
  77. package/primitives/dist/dist/hooks/useTheme.d.ts.map +0 -1
  78. package/primitives/dist/dist/index-standalone.d.ts +0 -3
  79. package/primitives/dist/dist/index-standalone.d.ts.map +0 -1
  80. package/primitives/dist/dist/index.d.ts +0 -4
  81. package/primitives/dist/dist/index.d.ts.map +0 -1
  82. package/primitives/dist/dist/macro/index.d.ts +0 -3
  83. package/primitives/dist/dist/macro/index.d.ts.map +0 -1
  84. package/primitives/dist/dist/macro/test/babel.config.d.ts +0 -1
  85. package/primitives/dist/dist/macro/test/babel.config.d.ts.map +0 -1
  86. package/primitives/dist/dist/models/ComponentStyle.d.ts +0 -16
  87. package/primitives/dist/dist/models/ComponentStyle.d.ts.map +0 -1
  88. package/primitives/dist/dist/models/GlobalStyle.d.ts +0 -12
  89. package/primitives/dist/dist/models/GlobalStyle.d.ts.map +0 -1
  90. package/primitives/dist/dist/models/InlineStyle.d.ts +0 -7
  91. package/primitives/dist/dist/models/InlineStyle.d.ts.map +0 -1
  92. package/primitives/dist/dist/models/Keyframes.d.ts +0 -12
  93. package/primitives/dist/dist/models/Keyframes.d.ts.map +0 -1
  94. package/primitives/dist/dist/models/ServerStyleSheet.d.ts +0 -16
  95. package/primitives/dist/dist/models/ServerStyleSheet.d.ts.map +0 -1
  96. package/primitives/dist/dist/models/StyleSheetManager.d.ts +0 -22
  97. package/primitives/dist/dist/models/StyleSheetManager.d.ts.map +0 -1
  98. package/primitives/dist/dist/models/StyledComponent.d.ts +0 -4
  99. package/primitives/dist/dist/models/StyledComponent.d.ts.map +0 -1
  100. package/primitives/dist/dist/models/StyledNativeComponent.d.ts +0 -4
  101. package/primitives/dist/dist/models/StyledNativeComponent.d.ts.map +0 -1
  102. package/primitives/dist/dist/models/ThemeProvider.d.ts +0 -18
  103. package/primitives/dist/dist/models/ThemeProvider.d.ts.map +0 -1
  104. package/primitives/dist/dist/native/index.d.ts +0 -65
  105. package/primitives/dist/dist/native/index.d.ts.map +0 -1
  106. package/primitives/dist/dist/primitives/index.d.ts +0 -23
  107. package/primitives/dist/dist/primitives/index.d.ts.map +0 -1
  108. package/primitives/dist/dist/secretInternals.d.ts +0 -6
  109. package/primitives/dist/dist/secretInternals.d.ts.map +0 -1
  110. package/primitives/dist/dist/sheet/GroupIDAllocator.d.ts +0 -5
  111. package/primitives/dist/dist/sheet/GroupIDAllocator.d.ts.map +0 -1
  112. package/primitives/dist/dist/sheet/GroupedTag.d.ts +0 -12
  113. package/primitives/dist/dist/sheet/GroupedTag.d.ts.map +0 -1
  114. package/primitives/dist/dist/sheet/Rehydration.d.ts +0 -4
  115. package/primitives/dist/dist/sheet/Rehydration.d.ts.map +0 -1
  116. package/primitives/dist/dist/sheet/Sheet.d.ts +0 -41
  117. package/primitives/dist/dist/sheet/Sheet.d.ts.map +0 -1
  118. package/primitives/dist/dist/sheet/Tag.d.ts +0 -55
  119. package/primitives/dist/dist/sheet/Tag.d.ts.map +0 -1
  120. package/primitives/dist/dist/sheet/dom.d.ts +0 -5
  121. package/primitives/dist/dist/sheet/dom.d.ts.map +0 -1
  122. package/primitives/dist/dist/sheet/index.d.ts +0 -2
  123. package/primitives/dist/dist/sheet/index.d.ts.map +0 -1
  124. package/primitives/dist/dist/sheet/types.d.ts +0 -35
  125. package/primitives/dist/dist/sheet/types.d.ts.map +0 -1
  126. package/primitives/dist/dist/test/globals.d.ts +0 -3
  127. package/primitives/dist/dist/test/globals.d.ts.map +0 -1
  128. package/primitives/dist/dist/test/utils.d.ts +0 -192
  129. package/primitives/dist/dist/test/utils.d.ts.map +0 -1
  130. package/primitives/dist/dist/types.d.ts +0 -121
  131. package/primitives/dist/dist/types.d.ts.map +0 -1
  132. package/primitives/dist/dist/utils/addUnitIfNeeded.d.ts +0 -2
  133. package/primitives/dist/dist/utils/addUnitIfNeeded.d.ts.map +0 -1
  134. package/primitives/dist/dist/utils/checkDynamicCreation.d.ts +0 -2
  135. package/primitives/dist/dist/utils/checkDynamicCreation.d.ts.map +0 -1
  136. package/primitives/dist/dist/utils/createWarnTooManyClasses.d.ts +0 -4
  137. package/primitives/dist/dist/utils/createWarnTooManyClasses.d.ts.map +0 -1
  138. package/primitives/dist/dist/utils/determineTheme.d.ts +0 -3
  139. package/primitives/dist/dist/utils/determineTheme.d.ts.map +0 -1
  140. package/primitives/dist/dist/utils/domElements.d.ts +0 -3
  141. package/primitives/dist/dist/utils/domElements.d.ts.map +0 -1
  142. package/primitives/dist/dist/utils/empties.d.ts +0 -4
  143. package/primitives/dist/dist/utils/empties.d.ts.map +0 -1
  144. package/primitives/dist/dist/utils/error.d.ts +0 -6
  145. package/primitives/dist/dist/utils/error.d.ts.map +0 -1
  146. package/primitives/dist/dist/utils/errors.d.ts +0 -21
  147. package/primitives/dist/dist/utils/errors.d.ts.map +0 -1
  148. package/primitives/dist/dist/utils/escape.d.ts +0 -6
  149. package/primitives/dist/dist/utils/escape.d.ts.map +0 -1
  150. package/primitives/dist/dist/utils/flatten.d.ts +0 -5
  151. package/primitives/dist/dist/utils/flatten.d.ts.map +0 -1
  152. package/primitives/dist/dist/utils/generateAlphabeticName.d.ts +0 -2
  153. package/primitives/dist/dist/utils/generateAlphabeticName.d.ts.map +0 -1
  154. package/primitives/dist/dist/utils/generateComponentId.d.ts +0 -2
  155. package/primitives/dist/dist/utils/generateComponentId.d.ts.map +0 -1
  156. package/primitives/dist/dist/utils/generateDisplayName.d.ts +0 -3
  157. package/primitives/dist/dist/utils/generateDisplayName.d.ts.map +0 -1
  158. package/primitives/dist/dist/utils/getComponentName.d.ts +0 -3
  159. package/primitives/dist/dist/utils/getComponentName.d.ts.map +0 -1
  160. package/primitives/dist/dist/utils/hash.d.ts +0 -4
  161. package/primitives/dist/dist/utils/hash.d.ts.map +0 -1
  162. package/primitives/dist/dist/utils/hoist.d.ts +0 -52
  163. package/primitives/dist/dist/utils/hoist.d.ts.map +0 -1
  164. package/primitives/dist/dist/utils/hyphenateStyleName.d.ts +0 -15
  165. package/primitives/dist/dist/utils/hyphenateStyleName.d.ts.map +0 -1
  166. package/primitives/dist/dist/utils/interleave.d.ts +0 -3
  167. package/primitives/dist/dist/utils/interleave.d.ts.map +0 -1
  168. package/primitives/dist/dist/utils/isFunction.d.ts +0 -2
  169. package/primitives/dist/dist/utils/isFunction.d.ts.map +0 -1
  170. package/primitives/dist/dist/utils/isPlainObject.d.ts +0 -2
  171. package/primitives/dist/dist/utils/isPlainObject.d.ts.map +0 -1
  172. package/primitives/dist/dist/utils/isStatelessFunction.d.ts +0 -2
  173. package/primitives/dist/dist/utils/isStatelessFunction.d.ts.map +0 -1
  174. package/primitives/dist/dist/utils/isStaticRules.d.ts +0 -3
  175. package/primitives/dist/dist/utils/isStaticRules.d.ts.map +0 -1
  176. package/primitives/dist/dist/utils/isStyledComponent.d.ts +0 -3
  177. package/primitives/dist/dist/utils/isStyledComponent.d.ts.map +0 -1
  178. package/primitives/dist/dist/utils/isTag.d.ts +0 -3
  179. package/primitives/dist/dist/utils/isTag.d.ts.map +0 -1
  180. package/primitives/dist/dist/utils/joinStrings.d.ts +0 -5
  181. package/primitives/dist/dist/utils/joinStrings.d.ts.map +0 -1
  182. package/primitives/dist/dist/utils/mixinDeep.d.ts +0 -8
  183. package/primitives/dist/dist/utils/mixinDeep.d.ts.map +0 -1
  184. package/primitives/dist/dist/utils/nonce.d.ts +0 -2
  185. package/primitives/dist/dist/utils/nonce.d.ts.map +0 -1
  186. package/primitives/dist/dist/utils/stylis.d.ts +0 -10
  187. package/primitives/dist/dist/utils/stylis.d.ts.map +0 -1
  188. package/primitives/dist/hoc/withTheme.d.ts +0 -3
  189. package/primitives/dist/hoc/withTheme.d.ts.map +0 -1
  190. package/primitives/dist/hoc/withTheme.spec.d.ts +0 -1
  191. package/primitives/dist/hoc/withTheme.spec.d.ts.map +0 -1
  192. package/primitives/dist/hooks/useTheme.d.ts +0 -3
  193. package/primitives/dist/hooks/useTheme.d.ts.map +0 -1
  194. package/primitives/dist/index-standalone.d.ts +0 -2
  195. package/primitives/dist/index-standalone.d.ts.map +0 -1
  196. package/primitives/dist/index.d.ts +0 -4
  197. package/primitives/dist/index.d.ts.map +0 -1
  198. package/primitives/dist/macro/index.d.ts +0 -2
  199. package/primitives/dist/macro/index.d.ts.map +0 -1
  200. package/primitives/dist/macro/test/babel.config.d.ts +0 -1
  201. package/primitives/dist/macro/test/babel.config.d.ts.map +0 -1
  202. package/primitives/dist/models/ComponentStyle.d.ts +0 -15
  203. package/primitives/dist/models/ComponentStyle.d.ts.map +0 -1
  204. package/primitives/dist/models/GlobalStyle.d.ts +0 -11
  205. package/primitives/dist/models/GlobalStyle.d.ts.map +0 -1
  206. package/primitives/dist/models/InlineStyle.d.ts +0 -6
  207. package/primitives/dist/models/InlineStyle.d.ts.map +0 -1
  208. package/primitives/dist/models/Keyframes.d.ts +0 -11
  209. package/primitives/dist/models/Keyframes.d.ts.map +0 -1
  210. package/primitives/dist/models/ServerStyleSheet.d.ts +0 -15
  211. package/primitives/dist/models/ServerStyleSheet.d.ts.map +0 -1
  212. package/primitives/dist/models/StyleSheetManager.d.ts +0 -21
  213. package/primitives/dist/models/StyleSheetManager.d.ts.map +0 -1
  214. package/primitives/dist/models/StyledComponent.d.ts +0 -3
  215. package/primitives/dist/models/StyledComponent.d.ts.map +0 -1
  216. package/primitives/dist/models/StyledNativeComponent.d.ts +0 -3
  217. package/primitives/dist/models/StyledNativeComponent.d.ts.map +0 -1
  218. package/primitives/dist/models/ThemeProvider.d.ts +0 -17
  219. package/primitives/dist/models/ThemeProvider.d.ts.map +0 -1
  220. package/primitives/dist/native/index.d.ts +0 -65
  221. package/primitives/dist/native/index.d.ts.map +0 -1
  222. package/primitives/dist/primitives/index.d.ts +0 -23
  223. package/primitives/dist/primitives/index.d.ts.map +0 -1
  224. package/primitives/dist/secretInternals.d.ts +0 -5
  225. package/primitives/dist/secretInternals.d.ts.map +0 -1
  226. package/primitives/dist/sheet/GroupIDAllocator.d.ts +0 -4
  227. package/primitives/dist/sheet/GroupIDAllocator.d.ts.map +0 -1
  228. package/primitives/dist/sheet/GroupedTag.d.ts +0 -11
  229. package/primitives/dist/sheet/GroupedTag.d.ts.map +0 -1
  230. package/primitives/dist/sheet/Rehydration.d.ts +0 -3
  231. package/primitives/dist/sheet/Rehydration.d.ts.map +0 -1
  232. package/primitives/dist/sheet/Sheet.d.ts +0 -40
  233. package/primitives/dist/sheet/Sheet.d.ts.map +0 -1
  234. package/primitives/dist/sheet/Tag.d.ts +0 -54
  235. package/primitives/dist/sheet/Tag.d.ts.map +0 -1
  236. package/primitives/dist/sheet/dom.d.ts +0 -4
  237. package/primitives/dist/sheet/dom.d.ts.map +0 -1
  238. package/primitives/dist/sheet/index.d.ts +0 -1
  239. package/primitives/dist/sheet/index.d.ts.map +0 -1
  240. package/primitives/dist/sheet/types.d.ts +0 -34
  241. package/primitives/dist/sheet/types.d.ts.map +0 -1
  242. package/primitives/dist/test/globals.d.ts +0 -2
  243. package/primitives/dist/test/globals.d.ts.map +0 -1
  244. package/primitives/dist/test/utils.d.ts +0 -191
  245. package/primitives/dist/test/utils.d.ts.map +0 -1
  246. package/primitives/dist/types.d.ts +0 -121
  247. package/primitives/dist/types.d.ts.map +0 -1
  248. package/primitives/dist/utils/addUnitIfNeeded.d.ts +0 -1
  249. package/primitives/dist/utils/addUnitIfNeeded.d.ts.map +0 -1
  250. package/primitives/dist/utils/checkDynamicCreation.d.ts +0 -1
  251. package/primitives/dist/utils/checkDynamicCreation.d.ts.map +0 -1
  252. package/primitives/dist/utils/createWarnTooManyClasses.d.ts +0 -3
  253. package/primitives/dist/utils/createWarnTooManyClasses.d.ts.map +0 -1
  254. package/primitives/dist/utils/determineTheme.d.ts +0 -2
  255. package/primitives/dist/utils/determineTheme.d.ts.map +0 -1
  256. package/primitives/dist/utils/domElements.d.ts +0 -2
  257. package/primitives/dist/utils/domElements.d.ts.map +0 -1
  258. package/primitives/dist/utils/empties.d.ts +0 -3
  259. package/primitives/dist/utils/empties.d.ts.map +0 -1
  260. package/primitives/dist/utils/error.d.ts +0 -5
  261. package/primitives/dist/utils/error.d.ts.map +0 -1
  262. package/primitives/dist/utils/errors.d.ts +0 -20
  263. package/primitives/dist/utils/errors.d.ts.map +0 -1
  264. package/primitives/dist/utils/escape.d.ts +0 -5
  265. package/primitives/dist/utils/escape.d.ts.map +0 -1
  266. package/primitives/dist/utils/flatten.d.ts +0 -4
  267. package/primitives/dist/utils/flatten.d.ts.map +0 -1
  268. package/primitives/dist/utils/generateAlphabeticName.d.ts +0 -1
  269. package/primitives/dist/utils/generateAlphabeticName.d.ts.map +0 -1
  270. package/primitives/dist/utils/generateComponentId.d.ts +0 -1
  271. package/primitives/dist/utils/generateComponentId.d.ts.map +0 -1
  272. package/primitives/dist/utils/generateDisplayName.d.ts +0 -2
  273. package/primitives/dist/utils/generateDisplayName.d.ts.map +0 -1
  274. package/primitives/dist/utils/getComponentName.d.ts +0 -2
  275. package/primitives/dist/utils/getComponentName.d.ts.map +0 -1
  276. package/primitives/dist/utils/hash.d.ts +0 -3
  277. package/primitives/dist/utils/hash.d.ts.map +0 -1
  278. package/primitives/dist/utils/hoist.d.ts +0 -51
  279. package/primitives/dist/utils/hoist.d.ts.map +0 -1
  280. package/primitives/dist/utils/hyphenateStyleName.d.ts +0 -14
  281. package/primitives/dist/utils/hyphenateStyleName.d.ts.map +0 -1
  282. package/primitives/dist/utils/interleave.d.ts +0 -2
  283. package/primitives/dist/utils/interleave.d.ts.map +0 -1
  284. package/primitives/dist/utils/isFunction.d.ts +0 -1
  285. package/primitives/dist/utils/isFunction.d.ts.map +0 -1
  286. package/primitives/dist/utils/isPlainObject.d.ts +0 -1
  287. package/primitives/dist/utils/isPlainObject.d.ts.map +0 -1
  288. package/primitives/dist/utils/isStatelessFunction.d.ts +0 -1
  289. package/primitives/dist/utils/isStatelessFunction.d.ts.map +0 -1
  290. package/primitives/dist/utils/isStaticRules.d.ts +0 -2
  291. package/primitives/dist/utils/isStaticRules.d.ts.map +0 -1
  292. package/primitives/dist/utils/isStyledComponent.d.ts +0 -2
  293. package/primitives/dist/utils/isStyledComponent.d.ts.map +0 -1
  294. package/primitives/dist/utils/isTag.d.ts +0 -2
  295. package/primitives/dist/utils/isTag.d.ts.map +0 -1
  296. package/primitives/dist/utils/joinStrings.d.ts +0 -4
  297. package/primitives/dist/utils/joinStrings.d.ts.map +0 -1
  298. package/primitives/dist/utils/mixinDeep.d.ts +0 -7
  299. package/primitives/dist/utils/mixinDeep.d.ts.map +0 -1
  300. package/primitives/dist/utils/nonce.d.ts +0 -1
  301. package/primitives/dist/utils/nonce.d.ts.map +0 -1
  302. package/primitives/dist/utils/stylis.d.ts +0 -9
  303. package/primitives/dist/utils/stylis.d.ts.map +0 -1
@@ -6,47 +6,43 @@ interface ExoticComponentWithDisplayName<P = unknown> extends React.ExoticCompon
6
6
  defaultProps?: Partial<P>;
7
7
  displayName?: string;
8
8
  }
9
+ export declare type OmitNever<T> = {
10
+ [K in keyof T as T[K] extends never ? never : K]: T[K];
11
+ };
12
+ export declare type Runtime = 'web' | 'native';
9
13
  export { DefaultTheme };
10
14
  export declare type AnyComponent<P = any> = ExoticComponentWithDisplayName<P> | React.ComponentType<P>;
11
- export interface StyledOptions<Props> {
15
+ export interface StyledOptions<R extends Runtime, Props> {
12
16
  attrs?: Attrs<Props>[];
13
- componentId?: string;
17
+ componentId?: R extends 'web' ? string : never;
14
18
  displayName?: string;
15
- parentComponentId?: string;
16
- shouldForwardProp?: ShouldForwardProp;
19
+ parentComponentId?: R extends 'web' ? string : never;
20
+ shouldForwardProp?: ShouldForwardProp<R>;
17
21
  }
18
- export interface StyledNativeOptions<Props> {
19
- attrs?: Attrs<Props>[];
20
- displayName?: string;
21
- shouldForwardProp?: ShouldForwardProp;
22
- }
23
- export declare type KnownWebTarget = keyof JSX.IntrinsicElements | AnyComponent;
24
- export declare type WebTarget = string | KnownWebTarget;
22
+ export declare type KnownTarget = keyof JSX.IntrinsicElements | AnyComponent;
23
+ export declare type WebTarget = string | KnownTarget;
25
24
  export declare type NativeTarget = AnyComponent;
26
25
  export interface BaseExtensibleObject {
27
26
  [key: string]: any;
28
27
  }
29
28
  export interface ExtensibleObject extends BaseExtensibleObject {
30
- $as?: KnownWebTarget;
31
- $forwardedAs?: KnownWebTarget;
32
- as?: KnownWebTarget;
33
- forwardedAs?: KnownWebTarget;
29
+ $as?: KnownTarget;
30
+ $forwardedAs?: KnownTarget;
31
+ as?: KnownTarget;
32
+ forwardedAs?: KnownTarget;
34
33
  theme?: DefaultTheme;
35
34
  }
36
35
  export interface ExecutionContext extends ExtensibleObject {
37
36
  theme: DefaultTheme;
38
37
  }
39
- export interface StyleFunction<Props> {
40
- (executionContext: ExecutionContext & Props): string | number | StyledObject | CSSConstructor<Props> | StyleFunction<Props>;
38
+ export interface StyleFunction<Props = BaseExtensibleObject> {
39
+ (executionContext: ExecutionContext & Props): Interpolation<Props>;
41
40
  }
42
- export declare type Interpolation<Props> = StyleFunction<Props> | StyledObject | string | number | Keyframes | IStyledComponent<any, any> | Interpolation<Props>[];
43
- export declare type Attrs<Props> = (ExtensibleObject & Props) | ((props: ExecutionContext & Props) => ExecutionContext & Props);
41
+ export declare type Interpolation<Props> = StyleFunction<Props> | StyledObject<Props> | TemplateStringsArray | string | number | false | undefined | null | Keyframes | IStyledComponent<'web', any, any> | Interpolation<Props>[];
42
+ export declare type Attrs<Props> = (ExtensibleObject & Props) | ((props: ExecutionContext & Props) => Partial<Props>);
44
43
  export declare type RuleSet<Props> = Interpolation<Props>[];
45
- export declare type Styles<Props> = TemplateStringsArray | StyledObject | StyleFunction<Props>;
44
+ export declare type Styles<Props> = TemplateStringsArray | StyledObject<Props> | StyleFunction<Props>;
46
45
  export declare type NameGenerator = (hash: number) => string;
47
- export interface CSSConstructor<Props> {
48
- (strings: string[], ...interpolations: Interpolation<Props>[]): RuleSet<Props>;
49
- }
50
46
  export interface StyleSheet {
51
47
  create: Function;
52
48
  }
@@ -58,54 +54,45 @@ export interface Keyframes {
58
54
  export interface Flattener<Props> {
59
55
  (chunks: Interpolation<Props>[], executionContext: Object | null | undefined, styleSheet: Object | null | undefined): Interpolation<Props>[];
60
56
  }
61
- export declare type FlattenerResult<Props> = RuleSet<Props> | number | string | string[] | IStyledComponent<any, any> | Keyframes;
57
+ export declare type FlattenerResult<Props> = RuleSet<Props> | number | string | string[] | IStyledComponent<any, any, any> | Keyframes;
62
58
  export interface Stringifier {
63
- (css: string, selector?: string, prefix?: string, componentId?: string): string;
59
+ (css: string, selector?: string, prefix?: string, componentId?: string): string[];
64
60
  hash: string;
65
61
  }
66
- export interface ShouldForwardProp {
67
- (prop: string, isValidAttr: (prop: string) => boolean, elementToBeCreated?: WebTarget | NativeTarget): boolean;
62
+ export interface ShouldForwardProp<R extends Runtime> {
63
+ (prop: string, elementToBeCreated?: StyledTarget<R>): boolean;
68
64
  }
69
- export interface CommonStatics<Props> {
65
+ export interface CommonStatics<R extends Runtime, Props> {
70
66
  attrs: Attrs<Props>[];
71
- target: StyledTarget;
72
- shouldForwardProp?: ShouldForwardProp;
67
+ target: StyledTarget<R>;
68
+ shouldForwardProp?: ShouldForwardProp<R>;
73
69
  withComponent: any;
74
70
  }
75
- export interface IStyledStatics<OuterProps = unknown> extends CommonStatics<OuterProps> {
76
- componentStyle: ComponentStyle;
77
- foldedComponentIds: Array<string>;
78
- target: WebTarget;
79
- styledComponentId: string;
80
- warnTooManyClasses?: ReturnType<typeof createWarnTooManyClasses>;
81
- withComponent: <Target extends WebTarget, Props = unknown>(tag: Target) => IStyledComponent<Target, OuterProps & Props>;
71
+ export interface IStyledStatics<R extends Runtime, OuterProps extends {}> extends CommonStatics<R, OuterProps> {
72
+ componentStyle: R extends 'web' ? ComponentStyle : never;
73
+ foldedComponentIds: R extends 'web' ? Array<string> : never;
74
+ inlineStyle: R extends 'native' ? InstanceType<IInlineStyleConstructor<OuterProps>> : never;
75
+ target: StyledTarget<R>;
76
+ styledComponentId: R extends 'web' ? string : never;
77
+ warnTooManyClasses?: R extends 'web' ? ReturnType<typeof createWarnTooManyClasses> : never;
78
+ withComponent: <Target extends StyledTarget<R>, Props = unknown>(tag: Target) => IStyledComponent<R, Target, OuterProps & Props>;
82
79
  }
83
- declare type PolymorphicComponentProps<ActualComponent extends StyledTarget, PropsToBeInjectedIntoActualComponent extends {}, ActualComponentProps = ActualComponent extends KnownWebTarget ? React.ComponentPropsWithRef<ActualComponent> : {}> = React.HTMLAttributes<ActualComponent> & Omit<PropsToBeInjectedIntoActualComponent, keyof ActualComponentProps | 'as' | '$as'> & ActualComponentProps & ({
80
+ declare type PolymorphicComponentProps<R extends Runtime, ActualComponent extends StyledTarget<R>, PropsToBeInjectedIntoActualComponent extends {}, ActualComponentProps = ActualComponent extends KnownTarget ? React.ComponentPropsWithRef<ActualComponent> : {}> = React.HTMLAttributes<ActualComponent> & Omit<PropsToBeInjectedIntoActualComponent, keyof ActualComponentProps | 'as' | '$as'> & ActualComponentProps & ({
84
81
  $as: ActualComponent;
85
- as?: AnyComponent;
82
+ as?: never;
86
83
  } | {
84
+ $as?: never;
87
85
  as?: ActualComponent;
88
86
  });
89
- interface PolymorphicComponent<FallbackComponent extends StyledTarget, ExpectedProps = unknown, PropsToBeInjectedIntoActualComponent = unknown> extends React.ForwardRefExoticComponent<ExpectedProps> {
90
- <ActualComponent extends StyledTarget = FallbackComponent>(props: PolymorphicComponentProps<ActualComponent, ExpectedProps & PropsToBeInjectedIntoActualComponent>): React.ReactElement<PolymorphicComponentProps<ActualComponent, ExecutionContext & ExpectedProps & PropsToBeInjectedIntoActualComponent>, ActualComponent>;
87
+ interface PolymorphicComponent<R extends Runtime, FallbackComponent extends StyledTarget<R>, ExpectedProps extends {}, PropsToBeInjectedIntoActualComponent extends {}> extends React.ForwardRefExoticComponent<ExpectedProps> {
88
+ <ActualComponent extends StyledTarget<R> = FallbackComponent>(props: PolymorphicComponentProps<R, ActualComponent, ExpectedProps & PropsToBeInjectedIntoActualComponent>): React.ReactElement<PolymorphicComponentProps<R, ActualComponent, ExecutionContext & ExpectedProps & PropsToBeInjectedIntoActualComponent>, ActualComponent>;
91
89
  }
92
- export interface IStyledComponent<Target extends WebTarget, Props = unknown> extends PolymorphicComponent<Target, Props, ExecutionContext>, IStyledStatics<Props> {
93
- defaultProps?: Partial<ExtensibleObject & (Target extends KnownWebTarget ? React.ComponentProps<Target> : {}) & Props>;
90
+ export interface IStyledComponent<R extends Runtime, Target extends StyledTarget<R>, Props extends {}> extends PolymorphicComponent<R, Target, Props, ExecutionContext>, IStyledStatics<R, Props> {
91
+ defaultProps?: Partial<ExtensibleObject & (Target extends KnownTarget ? React.ComponentProps<Target> : {}) & Props>;
94
92
  toString: () => string;
95
93
  }
96
- export interface IStyledComponentFactory<Target extends WebTarget, Props = unknown, Statics = unknown> {
97
- (target: Target, options: StyledOptions<Props>, rules: RuleSet<Props>): IStyledComponent<Target, Props> & Statics;
98
- }
99
- export interface IStyledNativeStatics<OuterProps = unknown> extends CommonStatics<OuterProps> {
100
- inlineStyle: InstanceType<IInlineStyleConstructor<OuterProps>>;
101
- target: NativeTarget;
102
- withComponent: <Target extends NativeTarget, Props = unknown>(tag: Target) => IStyledNativeComponent<Target, OuterProps & Props>;
103
- }
104
- export interface IStyledNativeComponent<Target extends NativeTarget, Props = unknown> extends PolymorphicComponent<Target, Props, ExecutionContext>, IStyledNativeStatics<Props> {
105
- defaultProps?: Partial<ExtensibleObject & (Target extends KnownWebTarget ? React.ComponentProps<Target> : {}) & Props>;
106
- }
107
- export interface IStyledNativeComponentFactory<Target extends NativeTarget, Props = unknown, Statics = unknown> {
108
- (target: Target, options: StyledNativeOptions<Props>, rules: RuleSet<Props>): IStyledNativeComponent<Target, Props> & Statics;
94
+ export interface IStyledComponentFactory<R extends Runtime, Target extends StyledTarget<R>, Props extends {}, Statics = unknown> {
95
+ (target: Target, options: StyledOptions<R, Props>, rules: RuleSet<Props>): IStyledComponent<R, Target, Props> & Statics;
109
96
  }
110
97
  export interface IInlineStyleConstructor<Props = unknown> {
111
98
  new (rules: RuleSet<Props>): IInlineStyle<Props>;
@@ -114,8 +101,30 @@ export interface IInlineStyle<Props = unknown> {
114
101
  rules: RuleSet<Props>;
115
102
  generateStyleObject(executionContext: Object): Object;
116
103
  }
117
- export declare type StyledTarget = WebTarget | NativeTarget;
118
- export interface StyledObject {
119
- [key: string]: Record<string, any> | string | number | StyleFunction<ExecutionContext>;
120
- }
121
- export declare type CSSProp = string | StyledObject | StyleFunction<ExecutionContext>;
104
+ export declare type StyledTarget<R extends Runtime> = R extends 'web' ? WebTarget : NativeTarget;
105
+ export interface StyledObject<Props = ExecutionContext> {
106
+ [key: string]: BaseExtensibleObject | string | number | StyleFunction<Props>;
107
+ }
108
+ /**
109
+ * Override DefaultTheme to get accurate typings for your project.
110
+ *
111
+ * ```
112
+ * // create styled-components.d.ts in your project source
113
+ * // if it isn't being picked up, check tsconfig compilerOptions.types
114
+ * import type { CSSProp } from "styled-components";
115
+ * import Theme from './theme';
116
+ *
117
+ * type ThemeType = typeof Theme;
118
+ *
119
+ * declare module "styled-components" {
120
+ * export interface DefaultTheme extends ThemeType {}
121
+ * }
122
+ *
123
+ * declare module "react" {
124
+ * interface DOMAttributes<T> {
125
+ * css?: CSSProp;
126
+ * }
127
+ * }
128
+ * ```
129
+ */
130
+ export declare type CSSProp = string | StyledObject | StyleFunction;
@@ -1 +1 @@
1
- export declare const checkDynamicCreation: (displayName: string, componentId?: string | undefined) => void;
1
+ export declare const checkDynamicCreation: (displayName: string, componentId?: string) => void;
@@ -1,4 +1,4 @@
1
1
  import StyleSheet from '../sheet';
2
2
  import { ExecutionContext, ExtensibleObject, Interpolation, Stringifier } from '../types';
3
- export declare const objToCssArray: (obj: ExtensibleObject, prevKey?: string | undefined) => string[];
3
+ export declare const objToCssArray: (obj: ExtensibleObject, prevKey?: string) => string[];
4
4
  export default function flatten<Props = unknown>(chunk: Interpolation<Props>, executionContext?: ExecutionContext & Props, styleSheet?: StyleSheet, stylisInstance?: Stringifier): Interpolation<Props>;
@@ -1,2 +1,2 @@
1
1
  import { StyledTarget } from '../types';
2
- export default function generateDisplayName(target: StyledTarget): string;
2
+ export default function generateDisplayName(target: StyledTarget<any>): string;
@@ -1,2 +1,2 @@
1
1
  import { StyledTarget } from '../types';
2
- export default function getComponentName(target: StyledTarget): string;
2
+ export default function getComponentName(target: StyledTarget<any>): string;
@@ -1,2 +1,2 @@
1
1
  import { IStyledComponent } from '../types';
2
- export default function isStyledComponent(target: any): target is IStyledComponent<any>;
2
+ export default function isStyledComponent(target: any): target is IStyledComponent<'web', any, any>;
@@ -1,2 +1,2 @@
1
1
  import { StyledTarget } from '../types';
2
- export default function isTag(target: StyledTarget): boolean;
2
+ export default function isTag(target: StyledTarget<'web'>): target is string;
@@ -1,9 +1,10 @@
1
+ import { Middleware } from 'stylis';
1
2
  import { Stringifier } from '../types';
2
3
  declare type StylisInstanceConstructorArgs = {
3
4
  options?: {
4
5
  prefix?: boolean;
5
6
  };
6
- plugins?: stylis.Middleware[];
7
+ plugins?: Middleware[];
7
8
  };
8
9
  export default function createStylisInstance({ options, plugins, }?: StylisInstanceConstructorArgs): Stringifier;
9
10
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "styled-components",
3
- "version": "5.3.5",
3
+ "version": "5.3.6",
4
4
  "description": "Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress",
5
5
  "main": "dist/styled-components.cjs.js",
6
6
  "jsnext:main": "dist/styled-components.esm.js",
package/postinstall.js CHANGED
@@ -1,7 +1,7 @@
1
1
  const statement = `
2
2
  A message from the styled-components core team:
3
3
 
4
- If you are seeing this, your environment is set to Russian locale. By now, it is our hope that you have seen the devastation, horrors, and complete disregard the Russian military has for Ukranian civilians. Our position is that this war is unprovoked, unjust, and a senseless act of genocide and aggression against the Ukranian people.
4
+ If you are seeing this, your environment is set to Russian locale. By now, it is our hope that you have seen the devastation, horrors, and complete disregard the Russian military has for Ukrainian civilians. Our position is that this war is unprovoked, unjust, and a senseless act of genocide and aggression against the Ukrainian people.
5
5
 
6
6
  As of March 24, 2022 the following has been reported (based on the Kyiv Independent @kyivindependent news publication):
7
7
 
@@ -37,7 +37,7 @@ russian via google translate (sorry, I'm sure it's not perfect):
37
37
 
38
38
  Сообщение от команды styled-components:
39
39
 
40
- Если вы виде это, ваша среда настроена на русский язык. Мы надеемся, что к настоящему моменту вы видели разруху, ужасы и полное пренебрежение российских военных к гражданскому населению Украины. Наша позиция заключается в том, что эта война является неспровоцированной, несправедливой и бессмысленным актом геноцида и агрессии против украинского народа.
40
+ Если вы видете это, ваша среда разработки настроена на русский язык. Мы надеемся, что вы уже видели разруху, ужасы и полное неуважение российских военных к гражданскому населению Украины. Наша позиция заключается в том, что эта война является неспровоцированной, несправедливой и бессмысленным актом геноцида и агрессии против украинского народа.
41
41
 
42
42
  По состоянию на 24 марта 2022 года сообщалось следующее (по материалам новостного издания Kyiv Independent @kyivindependent):
43
43
 
@@ -47,9 +47,9 @@ russian via google translate (sorry, I'm sure it's not perfect):
47
47
 
48
48
  Россия запустила 1200 ракет по Украине.
49
49
 
50
- По данным ЮНИСЕФ, половина всех украинских детей были перемещены с 24 февраля.
50
+ По данным ЮНИСЕФ, половина всех украинских детей покинули свои дома с 24 февраля.
51
51
 
52
- «С начала войны месяц назад из каждого мальчика и девочки в стране каждый второй был вынужден покинуть свои дома», — сказал CNN представитель ЮНИСЕФ Джеймс Элдер.
52
+ «С начала войны, за месяц, из всех девочек и мальчиков, каждый второй был вынужден покинуть свой дом», — сказал CNN представитель ЮНИСЕФ Джеймс Элдер.
53
53
 
54
54
  Институт массовой информации сообщил, что также пропал один журналист. Всего Россия совершила 148 преступлений против журналистов и СМИ в Украине, говорится в отчете.
55
55
 
@@ -155,7 +155,7 @@ function _objectWithoutPropertiesLoose(source, excluded) {
155
155
  var SC_ATTR = typeof process !== 'undefined' && (process.env.REACT_APP_SC_ATTR || process.env.SC_ATTR) || 'data-styled';
156
156
  var SC_ATTR_ACTIVE = 'active';
157
157
  var SC_ATTR_VERSION = 'data-styled-version';
158
- var SC_VERSION = "5.3.5";
158
+ var SC_VERSION = "5.3.6";
159
159
  var SPLITTER = '/*!sc*/\n';
160
160
  var IS_BROWSER = typeof window !== 'undefined' && 'HTMLElement' in window;
161
161
  var DISABLE_SPEEDY = Boolean(typeof SC_DISABLE_SPEEDY === 'boolean' ? SC_DISABLE_SPEEDY : typeof process !== 'undefined' && typeof process.env.REACT_APP_SC_DISABLE_SPEEDY !== 'undefined' && process.env.REACT_APP_SC_DISABLE_SPEEDY !== '' ? process.env.REACT_APP_SC_DISABLE_SPEEDY === 'false' ? false : process.env.REACT_APP_SC_DISABLE_SPEEDY : typeof process !== 'undefined' && typeof process.env.SC_DISABLE_SPEEDY !== 'undefined' && process.env.SC_DISABLE_SPEEDY !== '' ? process.env.SC_DISABLE_SPEEDY === 'false' ? false : process.env.SC_DISABLE_SPEEDY : process.env.NODE_ENV !== 'production'); // Shared empty execution context when generating static styles
@@ -445,7 +445,7 @@ var rehydrateSheet = function rehydrateSheet(sheet) {
445
445
 
446
446
  /* eslint-disable camelcase, no-undef */
447
447
  var getNonce = function getNonce() {
448
- return typeof window !== 'undefined' ? typeof window.__webpack_nonce__ !== 'undefined' ? window.__webpack_nonce__ : null : null;
448
+ return typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;
449
449
  };
450
450
 
451
451
  //