@tamagui/config-v5 0.0.0-bootstrap.0 → 3.0.0-beta.643.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 (317) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/builder.cjs +19 -0
  3. package/dist/cjs/builder.native.cjs +21 -0
  4. package/dist/cjs/builder.native.js +23 -0
  5. package/dist/cjs/builder.native.js.map +1 -0
  6. package/dist/cjs/create-theme/applyMask.cjs +64 -0
  7. package/dist/cjs/create-theme/applyMask.native.cjs +69 -0
  8. package/dist/cjs/create-theme/applyMask.native.js +71 -0
  9. package/dist/cjs/create-theme/applyMask.native.js.map +1 -0
  10. package/dist/cjs/create-theme/combineMasks.cjs +45 -0
  11. package/dist/cjs/create-theme/combineMasks.native.cjs +67 -0
  12. package/dist/cjs/create-theme/combineMasks.native.js +69 -0
  13. package/dist/cjs/create-theme/combineMasks.native.js.map +1 -0
  14. package/dist/cjs/create-theme/createTheme.cjs +104 -0
  15. package/dist/cjs/create-theme/createTheme.native.cjs +109 -0
  16. package/dist/cjs/create-theme/createTheme.native.js +111 -0
  17. package/dist/cjs/create-theme/createTheme.native.js.map +1 -0
  18. package/dist/cjs/create-theme/createThemeTypes.cjs +17 -0
  19. package/dist/cjs/create-theme/createThemeTypes.native.cjs +19 -0
  20. package/dist/cjs/create-theme/createThemeTypes.native.js +21 -0
  21. package/dist/cjs/create-theme/createThemeTypes.native.js.map +1 -0
  22. package/dist/cjs/create-theme/helpers.cjs +35 -0
  23. package/dist/cjs/create-theme/helpers.native.cjs +39 -0
  24. package/dist/cjs/create-theme/helpers.native.js +41 -0
  25. package/dist/cjs/create-theme/helpers.native.js.map +1 -0
  26. package/dist/cjs/create-theme/index.cjs +24 -0
  27. package/dist/cjs/create-theme/index.native.cjs +26 -0
  28. package/dist/cjs/create-theme/index.native.js +28 -0
  29. package/dist/cjs/create-theme/index.native.js.map +1 -0
  30. package/dist/cjs/create-theme/isMinusZero.cjs +27 -0
  31. package/dist/cjs/create-theme/isMinusZero.native.cjs +29 -0
  32. package/dist/cjs/create-theme/isMinusZero.native.js +31 -0
  33. package/dist/cjs/create-theme/isMinusZero.native.js.map +1 -0
  34. package/dist/cjs/create-theme/masks.cjs +132 -0
  35. package/dist/cjs/create-theme/masks.native.cjs +174 -0
  36. package/dist/cjs/create-theme/masks.native.js +176 -0
  37. package/dist/cjs/create-theme/masks.native.js.map +1 -0
  38. package/dist/cjs/create-theme/tests.cjs +34 -0
  39. package/dist/cjs/create-theme/tests.native.cjs +36 -0
  40. package/dist/cjs/create-theme/tests.native.js +38 -0
  41. package/dist/cjs/create-theme/tests.native.js.map +1 -0
  42. package/dist/cjs/create-theme/themeInfo.cjs +39 -0
  43. package/dist/cjs/create-theme/themeInfo.native.cjs +41 -0
  44. package/dist/cjs/create-theme/themeInfo.native.js +43 -0
  45. package/dist/cjs/create-theme/themeInfo.native.js.map +1 -0
  46. package/dist/cjs/index.cjs +20 -0
  47. package/dist/cjs/index.native.cjs +22 -0
  48. package/dist/cjs/index.native.js +24 -0
  49. package/dist/cjs/index.native.js.map +1 -0
  50. package/dist/cjs/theme-builder/ThemeBuilder.cjs +222 -0
  51. package/dist/cjs/theme-builder/ThemeBuilder.native.cjs +315 -0
  52. package/dist/cjs/theme-builder/ThemeBuilder.native.js +317 -0
  53. package/dist/cjs/theme-builder/ThemeBuilder.native.js.map +1 -0
  54. package/dist/cjs/theme-builder/createStudioThemes.cjs +39 -0
  55. package/dist/cjs/theme-builder/createStudioThemes.native.cjs +41 -0
  56. package/dist/cjs/theme-builder/createStudioThemes.native.js +43 -0
  57. package/dist/cjs/theme-builder/createStudioThemes.native.js.map +1 -0
  58. package/dist/cjs/theme-builder/createThemes.cjs +339 -0
  59. package/dist/cjs/theme-builder/createThemes.native.cjs +348 -0
  60. package/dist/cjs/theme-builder/createThemes.native.js +350 -0
  61. package/dist/cjs/theme-builder/createThemes.native.js.map +1 -0
  62. package/dist/cjs/theme-builder/defaultComponentThemes.cjs +45 -0
  63. package/dist/cjs/theme-builder/defaultComponentThemes.native.cjs +47 -0
  64. package/dist/cjs/theme-builder/defaultComponentThemes.native.js +49 -0
  65. package/dist/cjs/theme-builder/defaultComponentThemes.native.js.map +1 -0
  66. package/dist/cjs/theme-builder/defaultTemplates.cjs +147 -0
  67. package/dist/cjs/theme-builder/defaultTemplates.native.cjs +154 -0
  68. package/dist/cjs/theme-builder/defaultTemplates.native.js +156 -0
  69. package/dist/cjs/theme-builder/defaultTemplates.native.js.map +1 -0
  70. package/dist/cjs/theme-builder/defaultTemplatesStronger.cjs +143 -0
  71. package/dist/cjs/theme-builder/defaultTemplatesStronger.native.cjs +150 -0
  72. package/dist/cjs/theme-builder/defaultTemplatesStronger.native.js +152 -0
  73. package/dist/cjs/theme-builder/defaultTemplatesStronger.native.js.map +1 -0
  74. package/dist/cjs/theme-builder/defaultTemplatesStrongest.cjs +143 -0
  75. package/dist/cjs/theme-builder/defaultTemplatesStrongest.native.cjs +150 -0
  76. package/dist/cjs/theme-builder/defaultTemplatesStrongest.native.js +152 -0
  77. package/dist/cjs/theme-builder/defaultTemplatesStrongest.native.js.map +1 -0
  78. package/dist/cjs/theme-builder/getThemeSuitePalettes.cjs +101 -0
  79. package/dist/cjs/theme-builder/getThemeSuitePalettes.native.cjs +123 -0
  80. package/dist/cjs/theme-builder/getThemeSuitePalettes.native.js +125 -0
  81. package/dist/cjs/theme-builder/getThemeSuitePalettes.native.js.map +1 -0
  82. package/dist/cjs/theme-builder/helpers.cjs +35 -0
  83. package/dist/cjs/theme-builder/helpers.native.cjs +39 -0
  84. package/dist/cjs/theme-builder/helpers.native.js +41 -0
  85. package/dist/cjs/theme-builder/helpers.native.js.map +1 -0
  86. package/dist/cjs/theme-builder/index.cjs +44 -0
  87. package/dist/cjs/theme-builder/index.native.cjs +46 -0
  88. package/dist/cjs/theme-builder/index.native.js +48 -0
  89. package/dist/cjs/theme-builder/index.native.js.map +1 -0
  90. package/dist/cjs/theme-builder/masks.cjs +92 -0
  91. package/dist/cjs/theme-builder/masks.native.cjs +94 -0
  92. package/dist/cjs/theme-builder/masks.native.js +96 -0
  93. package/dist/cjs/theme-builder/masks.native.js.map +1 -0
  94. package/dist/cjs/theme-builder/types.cjs +17 -0
  95. package/dist/cjs/theme-builder/types.native.cjs +19 -0
  96. package/dist/cjs/theme-builder/types.native.js +21 -0
  97. package/dist/cjs/theme-builder/types.native.js.map +1 -0
  98. package/dist/cjs/v5/opacify.cjs +120 -0
  99. package/dist/cjs/v5/opacify.native.cjs +127 -0
  100. package/dist/cjs/v5/opacify.native.js +129 -0
  101. package/dist/cjs/v5/opacify.native.js.map +1 -0
  102. package/dist/cjs/v5/subtleChildrenThemes.cjs +64 -0
  103. package/dist/cjs/v5/subtleChildrenThemes.native.cjs +72 -0
  104. package/dist/cjs/v5/subtleChildrenThemes.native.js +74 -0
  105. package/dist/cjs/v5/subtleChildrenThemes.native.js.map +1 -0
  106. package/dist/cjs/v5/v5-builder.cjs +31 -0
  107. package/dist/cjs/v5/v5-builder.native.cjs +33 -0
  108. package/dist/cjs/v5/v5-builder.native.js +35 -0
  109. package/dist/cjs/v5/v5-builder.native.js.map +1 -0
  110. package/dist/cjs/v5/v5-subtle-builder.cjs +30 -0
  111. package/dist/cjs/v5/v5-subtle-builder.native.cjs +32 -0
  112. package/dist/cjs/v5/v5-subtle-builder.native.js +34 -0
  113. package/dist/cjs/v5/v5-subtle-builder.native.js.map +1 -0
  114. package/dist/cjs/v5/v5-templates.cjs +111 -0
  115. package/dist/cjs/v5/v5-templates.native.cjs +119 -0
  116. package/dist/cjs/v5/v5-templates.native.js +121 -0
  117. package/dist/cjs/v5/v5-templates.native.js.map +1 -0
  118. package/dist/cjs/v5/v5-themes.cjs +390 -0
  119. package/dist/cjs/v5/v5-themes.native.cjs +440 -0
  120. package/dist/cjs/v5/v5-themes.native.js +442 -0
  121. package/dist/cjs/v5/v5-themes.native.js.map +1 -0
  122. package/dist/esm/builder.mjs +1 -0
  123. package/dist/esm/builder.native.js +1 -0
  124. package/dist/esm/create-theme/applyMask.mjs +41 -0
  125. package/dist/esm/create-theme/applyMask.mjs.map +1 -0
  126. package/dist/esm/create-theme/applyMask.native.js +44 -0
  127. package/dist/esm/create-theme/applyMask.native.js.map +1 -0
  128. package/dist/esm/create-theme/combineMasks.mjs +25 -0
  129. package/dist/esm/create-theme/combineMasks.mjs.map +1 -0
  130. package/dist/esm/create-theme/combineMasks.native.js +45 -0
  131. package/dist/esm/create-theme/combineMasks.native.js.map +1 -0
  132. package/dist/esm/create-theme/createTheme.mjs +80 -0
  133. package/dist/esm/create-theme/createTheme.mjs.map +1 -0
  134. package/dist/esm/create-theme/createTheme.native.js +83 -0
  135. package/dist/esm/create-theme/createTheme.native.js.map +1 -0
  136. package/dist/esm/create-theme/createThemeTypes.mjs +0 -0
  137. package/dist/esm/create-theme/createThemeTypes.native.js +0 -0
  138. package/dist/esm/create-theme/helpers.mjs +10 -0
  139. package/dist/esm/create-theme/helpers.mjs.map +1 -0
  140. package/dist/esm/create-theme/helpers.native.js +12 -0
  141. package/dist/esm/create-theme/helpers.native.js.map +1 -0
  142. package/dist/esm/create-theme/index.mjs +11 -0
  143. package/dist/esm/create-theme/index.native.js +11 -0
  144. package/dist/esm/create-theme/isMinusZero.mjs +6 -0
  145. package/dist/esm/create-theme/isMinusZero.mjs.map +1 -0
  146. package/dist/esm/create-theme/isMinusZero.native.js +6 -0
  147. package/dist/esm/create-theme/isMinusZero.native.js.map +1 -0
  148. package/dist/esm/create-theme/masks.mjs +103 -0
  149. package/dist/esm/create-theme/masks.mjs.map +1 -0
  150. package/dist/esm/create-theme/masks.native.js +143 -0
  151. package/dist/esm/create-theme/masks.native.js.map +1 -0
  152. package/dist/esm/create-theme/tests.mjs +36 -0
  153. package/dist/esm/create-theme/tests.mjs.map +1 -0
  154. package/dist/esm/create-theme/tests.native.js +36 -0
  155. package/dist/esm/create-theme/tests.native.js.map +1 -0
  156. package/dist/esm/create-theme/themeInfo.mjs +15 -0
  157. package/dist/esm/create-theme/themeInfo.mjs.map +1 -0
  158. package/dist/esm/create-theme/themeInfo.native.js +15 -0
  159. package/dist/esm/create-theme/themeInfo.native.js.map +1 -0
  160. package/dist/esm/index.mjs +3 -0
  161. package/dist/esm/index.native.js +3 -0
  162. package/dist/esm/theme-builder/ThemeBuilder.mjs +199 -0
  163. package/dist/esm/theme-builder/ThemeBuilder.mjs.map +1 -0
  164. package/dist/esm/theme-builder/ThemeBuilder.native.js +290 -0
  165. package/dist/esm/theme-builder/ThemeBuilder.native.js.map +1 -0
  166. package/dist/esm/theme-builder/createStudioThemes.mjs +19 -0
  167. package/dist/esm/theme-builder/createStudioThemes.mjs.map +1 -0
  168. package/dist/esm/theme-builder/createStudioThemes.native.js +19 -0
  169. package/dist/esm/theme-builder/createStudioThemes.native.js.map +1 -0
  170. package/dist/esm/theme-builder/createThemes.mjs +311 -0
  171. package/dist/esm/theme-builder/createThemes.mjs.map +1 -0
  172. package/dist/esm/theme-builder/createThemes.native.js +318 -0
  173. package/dist/esm/theme-builder/createThemes.native.js.map +1 -0
  174. package/dist/esm/theme-builder/defaultComponentThemes.mjs +24 -0
  175. package/dist/esm/theme-builder/defaultComponentThemes.mjs.map +1 -0
  176. package/dist/esm/theme-builder/defaultComponentThemes.native.js +24 -0
  177. package/dist/esm/theme-builder/defaultComponentThemes.native.js.map +1 -0
  178. package/dist/esm/theme-builder/defaultTemplates.mjs +127 -0
  179. package/dist/esm/theme-builder/defaultTemplates.mjs.map +1 -0
  180. package/dist/esm/theme-builder/defaultTemplates.native.js +132 -0
  181. package/dist/esm/theme-builder/defaultTemplates.native.js.map +1 -0
  182. package/dist/esm/theme-builder/defaultTemplatesStronger.mjs +123 -0
  183. package/dist/esm/theme-builder/defaultTemplatesStronger.mjs.map +1 -0
  184. package/dist/esm/theme-builder/defaultTemplatesStronger.native.js +128 -0
  185. package/dist/esm/theme-builder/defaultTemplatesStronger.native.js.map +1 -0
  186. package/dist/esm/theme-builder/defaultTemplatesStrongest.mjs +123 -0
  187. package/dist/esm/theme-builder/defaultTemplatesStrongest.mjs.map +1 -0
  188. package/dist/esm/theme-builder/defaultTemplatesStrongest.native.js +128 -0
  189. package/dist/esm/theme-builder/defaultTemplatesStrongest.native.js.map +1 -0
  190. package/dist/esm/theme-builder/getThemeSuitePalettes.mjs +78 -0
  191. package/dist/esm/theme-builder/getThemeSuitePalettes.mjs.map +1 -0
  192. package/dist/esm/theme-builder/getThemeSuitePalettes.native.js +98 -0
  193. package/dist/esm/theme-builder/getThemeSuitePalettes.native.js.map +1 -0
  194. package/dist/esm/theme-builder/helpers.mjs +10 -0
  195. package/dist/esm/theme-builder/helpers.mjs.map +1 -0
  196. package/dist/esm/theme-builder/helpers.native.js +12 -0
  197. package/dist/esm/theme-builder/helpers.native.js.map +1 -0
  198. package/dist/esm/theme-builder/index.mjs +12 -0
  199. package/dist/esm/theme-builder/index.native.js +12 -0
  200. package/dist/esm/theme-builder/masks.mjs +72 -0
  201. package/dist/esm/theme-builder/masks.mjs.map +1 -0
  202. package/dist/esm/theme-builder/masks.native.js +72 -0
  203. package/dist/esm/theme-builder/masks.native.js.map +1 -0
  204. package/dist/esm/theme-builder/types.mjs +0 -0
  205. package/dist/esm/theme-builder/types.native.js +0 -0
  206. package/dist/esm/v5/opacify.mjs +96 -0
  207. package/dist/esm/v5/opacify.mjs.map +1 -0
  208. package/dist/esm/v5/opacify.native.js +101 -0
  209. package/dist/esm/v5/opacify.native.js.map +1 -0
  210. package/dist/esm/v5/subtleChildrenThemes.mjs +41 -0
  211. package/dist/esm/v5/subtleChildrenThemes.mjs.map +1 -0
  212. package/dist/esm/v5/subtleChildrenThemes.native.js +47 -0
  213. package/dist/esm/v5/subtleChildrenThemes.native.js.map +1 -0
  214. package/dist/esm/v5/v5-builder.mjs +6 -0
  215. package/dist/esm/v5/v5-builder.native.js +6 -0
  216. package/dist/esm/v5/v5-subtle-builder.mjs +5 -0
  217. package/dist/esm/v5/v5-subtle-builder.native.js +5 -0
  218. package/dist/esm/v5/v5-templates.mjs +91 -0
  219. package/dist/esm/v5/v5-templates.mjs.map +1 -0
  220. package/dist/esm/v5/v5-templates.native.js +97 -0
  221. package/dist/esm/v5/v5-templates.native.js.map +1 -0
  222. package/dist/esm/v5/v5-themes.mjs +352 -0
  223. package/dist/esm/v5/v5-themes.mjs.map +1 -0
  224. package/dist/esm/v5/v5-themes.native.js +400 -0
  225. package/dist/esm/v5/v5-themes.native.js.map +1 -0
  226. package/package.json +59 -8
  227. package/src/builder.ts +1 -0
  228. package/src/create-theme/applyMask.tsx +69 -0
  229. package/src/create-theme/combineMasks.tsx +29 -0
  230. package/src/create-theme/createTheme.tsx +126 -0
  231. package/src/create-theme/createThemeTypes.tsx +85 -0
  232. package/src/create-theme/helpers.tsx +44 -0
  233. package/src/create-theme/index.ts +6 -0
  234. package/src/create-theme/isMinusZero.tsx +3 -0
  235. package/src/create-theme/masks.tsx +137 -0
  236. package/src/create-theme/tests.tsx +28 -0
  237. package/src/create-theme/themeInfo.tsx +36 -0
  238. package/src/index.ts +2 -0
  239. package/src/theme-builder/ThemeBuilder.ts +514 -0
  240. package/src/theme-builder/createStudioThemes.ts +28 -0
  241. package/src/theme-builder/createThemes.ts +794 -0
  242. package/src/theme-builder/defaultComponentThemes.ts +26 -0
  243. package/src/theme-builder/defaultTemplates.ts +157 -0
  244. package/src/theme-builder/defaultTemplatesStronger.ts +152 -0
  245. package/src/theme-builder/defaultTemplatesStrongest.ts +152 -0
  246. package/src/theme-builder/getThemeSuitePalettes.ts +101 -0
  247. package/src/theme-builder/helpers.ts +44 -0
  248. package/src/theme-builder/index.ts +22 -0
  249. package/src/theme-builder/masks.tsx +83 -0
  250. package/src/theme-builder/types.ts +97 -0
  251. package/src/v5/opacify.ts +125 -0
  252. package/src/v5/subtleChildrenThemes.ts +54 -0
  253. package/src/v5/v5-builder.ts +6 -0
  254. package/src/v5/v5-subtle-builder.ts +5 -0
  255. package/src/v5/v5-templates.ts +126 -0
  256. package/src/v5/v5-themes.ts +615 -0
  257. package/types/builder.d.ts +2 -0
  258. package/types/builder.d.ts.map +1 -0
  259. package/types/create-theme/applyMask.d.ts +7 -0
  260. package/types/create-theme/applyMask.d.ts.map +1 -0
  261. package/types/create-theme/combineMasks.d.ts +3 -0
  262. package/types/create-theme/combineMasks.d.ts.map +1 -0
  263. package/types/create-theme/createTheme.d.ts +18 -0
  264. package/types/create-theme/createTheme.d.ts.map +1 -0
  265. package/types/create-theme/createThemeTypes.d.ts +66 -0
  266. package/types/create-theme/createThemeTypes.d.ts.map +1 -0
  267. package/types/create-theme/helpers.d.ts +24 -0
  268. package/types/create-theme/helpers.d.ts.map +1 -0
  269. package/types/create-theme/index.d.ts +7 -0
  270. package/types/create-theme/index.d.ts.map +1 -0
  271. package/types/create-theme/isMinusZero.d.ts +2 -0
  272. package/types/create-theme/isMinusZero.d.ts.map +1 -0
  273. package/types/create-theme/masks.d.ts +14 -0
  274. package/types/create-theme/masks.d.ts.map +1 -0
  275. package/types/create-theme/tests.d.ts +2 -0
  276. package/types/create-theme/tests.d.ts.map +1 -0
  277. package/types/create-theme/themeInfo.d.ts +12 -0
  278. package/types/create-theme/themeInfo.d.ts.map +1 -0
  279. package/types/index.d.ts +3 -0
  280. package/types/index.d.ts.map +1 -0
  281. package/types/theme-builder/ThemeBuilder.d.ts +80 -0
  282. package/types/theme-builder/ThemeBuilder.d.ts.map +1 -0
  283. package/types/theme-builder/createStudioThemes.d.ts +8 -0
  284. package/types/theme-builder/createStudioThemes.d.ts.map +1 -0
  285. package/types/theme-builder/createThemes.d.ts +141 -0
  286. package/types/theme-builder/createThemes.d.ts.map +1 -0
  287. package/types/theme-builder/defaultComponentThemes.d.ts +63 -0
  288. package/types/theme-builder/defaultComponentThemes.d.ts.map +1 -0
  289. package/types/theme-builder/defaultTemplates.d.ts +42 -0
  290. package/types/theme-builder/defaultTemplates.d.ts.map +1 -0
  291. package/types/theme-builder/defaultTemplatesStronger.d.ts +42 -0
  292. package/types/theme-builder/defaultTemplatesStronger.d.ts.map +1 -0
  293. package/types/theme-builder/defaultTemplatesStrongest.d.ts +42 -0
  294. package/types/theme-builder/defaultTemplatesStrongest.d.ts.map +1 -0
  295. package/types/theme-builder/getThemeSuitePalettes.d.ts +7 -0
  296. package/types/theme-builder/getThemeSuitePalettes.d.ts.map +1 -0
  297. package/types/theme-builder/helpers.d.ts +24 -0
  298. package/types/theme-builder/helpers.d.ts.map +1 -0
  299. package/types/theme-builder/index.d.ts +11 -0
  300. package/types/theme-builder/index.d.ts.map +1 -0
  301. package/types/theme-builder/masks.d.ts +18 -0
  302. package/types/theme-builder/masks.d.ts.map +1 -0
  303. package/types/theme-builder/types.d.ts +76 -0
  304. package/types/theme-builder/types.d.ts.map +1 -0
  305. package/types/v5/opacify.d.ts +9 -0
  306. package/types/v5/opacify.d.ts.map +1 -0
  307. package/types/v5/subtleChildrenThemes.d.ts +305 -0
  308. package/types/v5/subtleChildrenThemes.d.ts.map +1 -0
  309. package/types/v5/v5-builder.d.ts +4 -0
  310. package/types/v5/v5-builder.d.ts.map +1 -0
  311. package/types/v5/v5-subtle-builder.d.ts +3 -0
  312. package/types/v5/v5-subtle-builder.d.ts.map +1 -0
  313. package/types/v5/v5-templates.d.ts +42 -0
  314. package/types/v5/v5-templates.d.ts.map +1 -0
  315. package/types/v5/v5-themes.d.ts +525 -0
  316. package/types/v5/v5-themes.d.ts.map +1 -0
  317. package/README.md +0 -1
@@ -0,0 +1,352 @@
1
+ import { blue, blueDark, gray, grayDark, green, greenDark, orange, orangeDark, pink, pinkDark, purple, purpleDark, red, redDark, teal, tealDark, yellow, yellowDark } from "@tamagui/colors";
2
+ import { createThemes } from "../theme-builder/index.mjs";
3
+ import { interpolateColor, opacify, opacify as opacify2 } from "./opacify.mjs";
4
+ import { v5Templates } from "./v5-templates.mjs";
5
+
6
+ const V5_BG_OFFSET = 6 + 1;
7
+ const v5ComponentThemes = {
8
+ Button: { template: "surface2" },
9
+ Input: { template: "surface1" },
10
+ Progress: { template: "surface1" },
11
+ ProgressIndicator: { template: "surface3" },
12
+ Slider: { template: "surface1" },
13
+ SliderActive: { template: "surface3" },
14
+ SliderThumb: { template: "surface2" },
15
+ Switch: { template: "surface2" },
16
+ TextArea: { template: "surface1" },
17
+ Tooltip: { template: "accent" },
18
+ SwitchThumb: { template: "accent" }
19
+ };
20
+ const v5ComponentThemesWithInverses = {
21
+ ...v5ComponentThemes,
22
+ ProgressIndicator: { template: "accent" },
23
+ SliderThumb: { template: "accent" },
24
+ Tooltip: { template: "accent" }
25
+ };
26
+ const v5GrandchildrenThemes = {
27
+ accent: { template: "accent" },
28
+ surface1: { template: "surface1" },
29
+ surface2: { template: "surface2" }
30
+ };
31
+ function parseHSL(str) {
32
+ const m = str.match(/hsl\((\d+(?:\.\d+)?),\s*(\d+(?:\.\d+)?)%,\s*(\d+(?:\.\d+)?)%\)/);
33
+ return m ? {
34
+ h: +m[1],
35
+ s: +m[2],
36
+ l: +m[3]
37
+ } : null;
38
+ }
39
+ function parseHex(str) {
40
+ if (!str.startsWith("#")) return null;
41
+ let hex = str.slice(1);
42
+ if (hex.length === 3) {
43
+ hex = hex.split("").map((c) => c + c).join("");
44
+ }
45
+ if (hex.length !== 6) return null;
46
+ const r = Number.parseInt(hex.slice(0, 2), 16) / 255;
47
+ const g = Number.parseInt(hex.slice(2, 4), 16) / 255;
48
+ const b = Number.parseInt(hex.slice(4, 6), 16) / 255;
49
+ const max = Math.max(r, g, b);
50
+ const min = Math.min(r, g, b);
51
+ const l = (max + min) / 2;
52
+ if (max === min) {
53
+ return {
54
+ h: 0,
55
+ s: 0,
56
+ l: l * 100
57
+ };
58
+ }
59
+ const d = max - min;
60
+ const s = l > .5 ? d / (2 - max - min) : d / (max + min);
61
+ let h = 0;
62
+ if (max === r) h = ((g - b) / d + (g < b ? 6 : 0)) / 6;
63
+ else if (max === g) h = ((b - r) / d + 2) / 6;
64
+ else h = ((r - g) / d + 4) / 6;
65
+ return {
66
+ h: Math.round(h * 360),
67
+ s: s * 100,
68
+ l: l * 100
69
+ };
70
+ }
71
+ function parseColor(str) {
72
+ return parseHSL(str) ?? parseHex(str);
73
+ }
74
+ function hslToString(hsl) {
75
+ return `hsl(${hsl.h}, ${Math.round(Math.min(100, Math.max(0, hsl.s)))}%, ${Math.round(Math.min(100, Math.max(0, hsl.l)))}%)`;
76
+ }
77
+ function adjustPalette(palette, fn) {
78
+ const out = {};
79
+ const keys = Object.keys(palette);
80
+ for (let i = 0; i < keys.length; i++) {
81
+ const key = keys[i];
82
+ const parsed = parseColor(palette[key]);
83
+ if (!parsed) {
84
+ out[key] = palette[key];
85
+ continue;
86
+ }
87
+ out[key] = hslToString(fn(parsed, i + 1));
88
+ }
89
+ return out;
90
+ }
91
+ const identity = (hsl) => hsl;
92
+ function adjustPalettes(themes, adjustments) {
93
+ const result = {};
94
+ for (const [name, theme] of Object.entries(themes)) {
95
+ const adj = adjustments[name] ?? adjustments.default;
96
+ if (!adj) {
97
+ ;
98
+ result[name] = theme;
99
+ continue;
100
+ }
101
+ ;
102
+ result[name] = {
103
+ light: adjustPalette(theme.light, adj.light ?? identity),
104
+ dark: adjustPalette(theme.dark, adj.dark ?? identity)
105
+ };
106
+ }
107
+ return result;
108
+ }
109
+ function paletteToNamedColors(name, palette) {
110
+ return Object.fromEntries(palette.map((color, i) => [`${name}${i + 1}`, color]));
111
+ }
112
+ const darkPalette = [
113
+ "#090909",
114
+ "#151515",
115
+ "#191919",
116
+ "#232323",
117
+ "#333",
118
+ "#444",
119
+ "#666",
120
+ "#777",
121
+ "#858585",
122
+ "#aaa",
123
+ "#ccc",
124
+ "#ffffff"
125
+ ];
126
+ const lightPalette = [
127
+ "#fff",
128
+ "#f8f8f8",
129
+ "hsl(0, 0%, 93%)",
130
+ "hsl(0, 0%, 85%)",
131
+ "hsl(0, 0%, 80%)",
132
+ "hsl(0, 0%, 70%)",
133
+ "hsl(0, 0%, 59%)",
134
+ "hsl(0, 0%, 45%)",
135
+ "hsl(0, 0%, 30%)",
136
+ "hsl(0, 0%, 20%)",
137
+ "hsl(0, 0%, 14%)",
138
+ "hsl(0, 0%, 2%)"
139
+ ];
140
+ const neutralPalette = [
141
+ "hsl(0, 0%, 68%)",
142
+ "hsl(0, 0%, 65%)",
143
+ "hsl(0, 0%, 62%)",
144
+ "hsl(0, 0%, 59%)",
145
+ "hsl(0, 0%, 56%)",
146
+ "hsl(0, 0%, 53%)",
147
+ "hsl(0, 0%, 50%)",
148
+ "hsl(0, 0%, 47%)",
149
+ "hsl(0, 0%, 44%)",
150
+ "hsl(0, 0%, 41%)",
151
+ "hsl(0, 0%, 38%)",
152
+ "hsl(0, 0%, 32%)"
153
+ ];
154
+ const neutral = paletteToNamedColors("neutral", neutralPalette);
155
+ const whiteBlack = {
156
+ white: "rgba(255,255,255,1)",
157
+ white0: "rgba(255,255,255,0)",
158
+ white02: "rgba(255,255,255,0.2)",
159
+ white04: "rgba(255,255,255,0.4)",
160
+ white06: "rgba(255,255,255,0.6)",
161
+ white08: "rgba(255,255,255,0.8)",
162
+ black: "rgba(0,0,0,1)",
163
+ black0: "rgba(0,0,0,0)",
164
+ black02: "rgba(0,0,0,0.2)",
165
+ black04: "rgba(0,0,0,0.4)",
166
+ black06: "rgba(0,0,0,0.6)",
167
+ black08: "rgba(0,0,0,0.8)"
168
+ };
169
+ const darkShadows = {
170
+ shadow1: "rgba(0,0,0,0.15)",
171
+ shadow2: "rgba(0,0,0,0.23)",
172
+ shadow3: "rgba(0,0,0,0.33)",
173
+ shadow4: "rgba(0,0,0,0.45)",
174
+ shadow5: "rgba(0,0,0,0.65)",
175
+ shadow6: "rgba(0,0,0,0.8)",
176
+ shadow7: "rgba(0,0,0,0.9)",
177
+ shadow8: "rgba(0,0,0,1)"
178
+ };
179
+ const lightShadows = {
180
+ shadow1: "rgba(0,0,0,0.04)",
181
+ shadow2: "rgba(0,0,0,0.08)",
182
+ shadow3: "rgba(0,0,0,0.12)",
183
+ shadow4: "rgba(0,0,0,0.22)",
184
+ shadow5: "rgba(0,0,0,0.33)",
185
+ shadow6: "rgba(0,0,0,0.44)",
186
+ shadow7: "rgba(0,0,0,0.6)",
187
+ shadow8: "rgba(0,0,0,0.75)"
188
+ };
189
+ const darkHighlights = {
190
+ highlight1: "rgba(255,255,255,0.1)",
191
+ highlight2: "rgba(255,255,255,0.2)",
192
+ highlight3: "rgba(255,255,255,0.3)",
193
+ highlight4: "rgba(255,255,255,0.45)",
194
+ highlight5: "rgba(255,255,255,0.65)",
195
+ highlight6: "rgba(255,255,255,0.85)",
196
+ highlight7: "rgba(255,255,255,0.95)",
197
+ highlight8: "rgba(255,255,255,1)"
198
+ };
199
+ const lightHighlights = {
200
+ highlight1: "rgba(255,255,255,0.05)",
201
+ highlight2: "rgba(255,255,255,0.1)",
202
+ highlight3: "rgba(255,255,255,0.15)",
203
+ highlight4: "rgba(255,255,255,0.3)",
204
+ highlight5: "rgba(255,255,255,0.4)",
205
+ highlight6: "rgba(255,255,255,0.55)",
206
+ highlight7: "rgba(255,255,255,0.7)",
207
+ highlight8: "rgba(255,255,255,0.85)"
208
+ };
209
+ const defaultChildrenThemes = {
210
+ gray: {
211
+ light: gray,
212
+ dark: grayDark
213
+ },
214
+ blue: {
215
+ light: blue,
216
+ dark: blueDark
217
+ },
218
+ red: {
219
+ light: red,
220
+ dark: redDark
221
+ },
222
+ yellow: {
223
+ light: yellow,
224
+ dark: yellowDark
225
+ },
226
+ green: {
227
+ light: green,
228
+ dark: greenDark
229
+ },
230
+ orange: {
231
+ light: orange,
232
+ dark: orangeDark
233
+ },
234
+ pink: {
235
+ light: pink,
236
+ dark: pinkDark
237
+ },
238
+ purple: {
239
+ light: purple,
240
+ dark: purpleDark
241
+ },
242
+ teal: {
243
+ light: teal,
244
+ dark: tealDark
245
+ },
246
+ neutral: {
247
+ light: neutral,
248
+ dark: neutral
249
+ }
250
+ };
251
+ function getDefaultV5ThemeValues({ palette }) {
252
+ if (!palette || palette.length < 3) {
253
+ throw new Error(`invalid palette: ${JSON.stringify(palette)}`);
254
+ }
255
+ const bgColor = palette[7];
256
+ const fgColor = palette[palette.length - 2];
257
+ return {
258
+ color01: opacify(fgColor, .1),
259
+ color0075: opacify(fgColor, .075),
260
+ color005: opacify(fgColor, .05),
261
+ color0025: opacify(fgColor, .025),
262
+ color002: opacify(fgColor, .02),
263
+ color001: opacify(fgColor, .01),
264
+ background01: opacify(bgColor, .1),
265
+ background0075: opacify(bgColor, .075),
266
+ background005: opacify(bgColor, .05),
267
+ background0025: opacify(bgColor, .025),
268
+ background002: opacify(bgColor, .02),
269
+ background001: opacify(bgColor, .01),
270
+ background02: opacify(bgColor, .2),
271
+ background04: opacify(bgColor, .4),
272
+ background06: opacify(bgColor, .6),
273
+ background08: opacify(bgColor, .8),
274
+ outlineColor: opacify(palette[7 + 4], .6)
275
+ };
276
+ }
277
+ function createV5Theme(options = {}) {
278
+ const { darkPalette: customDarkPalette = darkPalette, lightPalette: customLightPalette = lightPalette, accent: customAccent, childrenThemes = defaultChildrenThemes, grandChildrenThemes = v5GrandchildrenThemes, componentThemes: customComponentThemes = v5ComponentThemes, getTheme: userGetTheme } = options;
279
+ const blackColors = paletteToNamedColors("black", customDarkPalette);
280
+ const whiteColors = paletteToNamedColors("white", customLightPalette);
281
+ const extraBase = {
282
+ ...blackColors,
283
+ ...whiteColors,
284
+ ...whiteBlack
285
+ };
286
+ const lightExtraBase = {
287
+ ...extraBase,
288
+ ...lightShadows,
289
+ ...lightHighlights,
290
+ shadowColor: lightShadows.shadow3
291
+ };
292
+ const darkExtraBase = {
293
+ ...extraBase,
294
+ ...darkShadows,
295
+ ...darkHighlights,
296
+ shadowColor: darkShadows.shadow3
297
+ };
298
+ const lightExtra = { ...lightExtraBase };
299
+ const darkExtra = { ...darkExtraBase };
300
+ for (const theme of Object.values(childrenThemes)) {
301
+ if (theme.light) Object.assign(lightExtra, theme.light);
302
+ if (theme.dark) Object.assign(darkExtra, theme.dark);
303
+ }
304
+ const childrenWithPalettes = {
305
+ black: { palette: {
306
+ dark: Object.values(blackColors),
307
+ light: Object.values(blackColors)
308
+ } },
309
+ white: { palette: {
310
+ dark: Object.values(whiteColors),
311
+ light: Object.values(whiteColors)
312
+ } },
313
+ ...Object.fromEntries(Object.entries(childrenThemes).map(([name, theme]) => [name, { palette: {
314
+ light: Object.values(theme.light),
315
+ dark: Object.values(theme.dark)
316
+ } }]))
317
+ };
318
+ return createThemes({
319
+ componentThemes: customComponentThemes,
320
+ templates: v5Templates,
321
+ base: {
322
+ palette: {
323
+ dark: customDarkPalette,
324
+ light: customLightPalette
325
+ },
326
+ extra: {
327
+ light: lightExtra,
328
+ dark: darkExtra
329
+ }
330
+ },
331
+ accent: { palette: customAccent ? {
332
+ light: Object.values(customAccent.light),
333
+ dark: Object.values(customAccent.dark)
334
+ } : {
335
+ dark: customLightPalette,
336
+ light: customDarkPalette
337
+ } },
338
+ childrenThemes: childrenWithPalettes,
339
+ grandChildrenThemes,
340
+ getTheme: (props) => {
341
+ const builtInTheme = getDefaultV5ThemeValues(props);
342
+ const customTheme = userGetTheme?.(props);
343
+ return customTheme ? {
344
+ ...builtInTheme,
345
+ ...customTheme
346
+ } : builtInTheme;
347
+ }
348
+ });
349
+ }
350
+
351
+ export { V5_BG_OFFSET, adjustPalette, adjustPalettes, createV5Theme, defaultChildrenThemes, darkPalette as defaultDarkPalette, lightPalette as defaultLightPalette, hslToString, interpolateColor, opacify2 as opacify, parseColor, parseHSL, parseHex, v5ComponentThemes, v5ComponentThemesWithInverses, v5GrandchildrenThemes };
352
+ //# sourceMappingURL=v5-themes.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v5-themes.js","names":[],"sources":["esm/v5/v5-themes.js"],"sourcesContent":["import {\n blue,\n blueDark,\n gray,\n grayDark,\n green,\n greenDark,\n orange,\n orangeDark,\n pink,\n pinkDark,\n purple,\n purpleDark,\n red,\n redDark,\n teal,\n tealDark,\n yellow,\n yellowDark\n} from \"@tamagui/colors\";\nimport { createThemes } from \"../theme-builder\";\nimport { opacify } from \"./opacify\";\nimport { v5Templates } from \"./v5-templates\";\nimport { interpolateColor, opacify as opacify2 } from \"./opacify\";\nconst V5_BG_OFFSET = 6 + 1;\nconst v5ComponentThemes = {\n Button: { template: \"surface2\" },\n Input: { template: \"surface1\" },\n Progress: { template: \"surface1\" },\n ProgressIndicator: { template: \"surface3\" },\n Slider: { template: \"surface1\" },\n SliderActive: { template: \"surface3\" },\n SliderThumb: { template: \"surface2\" },\n Switch: { template: \"surface2\" },\n TextArea: { template: \"surface1\" },\n Tooltip: { template: \"accent\" },\n SwitchThumb: { template: \"accent\" }\n};\nconst v5ComponentThemesWithInverses = {\n ...v5ComponentThemes,\n ProgressIndicator: { template: \"accent\" },\n SliderThumb: { template: \"accent\" },\n Tooltip: { template: \"accent\" }\n};\nconst v5GrandchildrenThemes = {\n accent: { template: \"accent\" },\n surface1: { template: \"surface1\" },\n surface2: { template: \"surface2\" }\n};\nfunction parseHSL(str) {\n const m = str.match(/hsl\\((\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?)%,\\s*(\\d+(?:\\.\\d+)?)%\\)/);\n return m ? { h: +m[1], s: +m[2], l: +m[3] } : null;\n}\nfunction parseHex(str) {\n if (!str.startsWith(\"#\")) return null;\n let hex = str.slice(1);\n if (hex.length === 3) {\n hex = hex.split(\"\").map((c) => c + c).join(\"\");\n }\n if (hex.length !== 6) return null;\n const r = Number.parseInt(hex.slice(0, 2), 16) / 255;\n const g = Number.parseInt(hex.slice(2, 4), 16) / 255;\n const b = Number.parseInt(hex.slice(4, 6), 16) / 255;\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n const l = (max + min) / 2;\n if (max === min) {\n return { h: 0, s: 0, l: l * 100 };\n }\n const d = max - min;\n const s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n let h = 0;\n if (max === r) h = ((g - b) / d + (g < b ? 6 : 0)) / 6;\n else if (max === g) h = ((b - r) / d + 2) / 6;\n else h = ((r - g) / d + 4) / 6;\n return { h: Math.round(h * 360), s: s * 100, l: l * 100 };\n}\nfunction parseColor(str) {\n return parseHSL(str) ?? parseHex(str);\n}\nfunction hslToString(hsl) {\n return `hsl(${hsl.h}, ${Math.round(Math.min(100, Math.max(0, hsl.s)))}%, ${Math.round(Math.min(100, Math.max(0, hsl.l)))}%)`;\n}\nfunction adjustPalette(palette, fn) {\n const out = {};\n const keys = Object.keys(palette);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n const parsed = parseColor(palette[key]);\n if (!parsed) {\n out[key] = palette[key];\n continue;\n }\n out[key] = hslToString(fn(parsed, i + 1));\n }\n return out;\n}\nconst identity = (hsl) => hsl;\nfunction adjustPalettes(themes, adjustments) {\n const result = {};\n for (const [name, theme] of Object.entries(themes)) {\n const adj = adjustments[name] ?? adjustments.default;\n if (!adj) {\n ;\n result[name] = theme;\n continue;\n }\n ;\n result[name] = {\n light: adjustPalette(theme.light, adj.light ?? identity),\n dark: adjustPalette(theme.dark, adj.dark ?? identity)\n };\n }\n return result;\n}\nfunction paletteToNamedColors(name, palette) {\n return Object.fromEntries(palette.map((color, i) => [`${name}${i + 1}`, color]));\n}\nconst darkPalette = [\n \"#090909\",\n \"#151515\",\n \"#191919\",\n \"#232323\",\n \"#333\",\n \"#444\",\n \"#666\",\n \"#777\",\n \"#858585\",\n \"#aaa\",\n \"#ccc\",\n \"#ffffff\"\n];\nconst lightPalette = [\n \"#fff\",\n \"#f8f8f8\",\n \"hsl(0, 0%, 93%)\",\n \"hsl(0, 0%, 85%)\",\n \"hsl(0, 0%, 80%)\",\n \"hsl(0, 0%, 70%)\",\n \"hsl(0, 0%, 59%)\",\n \"hsl(0, 0%, 45%)\",\n \"hsl(0, 0%, 30%)\",\n \"hsl(0, 0%, 20%)\",\n \"hsl(0, 0%, 14%)\",\n \"hsl(0, 0%, 2%)\"\n];\nconst neutralPalette = [\n \"hsl(0, 0%, 68%)\",\n \"hsl(0, 0%, 65%)\",\n \"hsl(0, 0%, 62%)\",\n \"hsl(0, 0%, 59%)\",\n \"hsl(0, 0%, 56%)\",\n \"hsl(0, 0%, 53%)\",\n \"hsl(0, 0%, 50%)\",\n \"hsl(0, 0%, 47%)\",\n \"hsl(0, 0%, 44%)\",\n \"hsl(0, 0%, 41%)\",\n \"hsl(0, 0%, 38%)\",\n \"hsl(0, 0%, 32%)\"\n];\nconst neutral = paletteToNamedColors(\"neutral\", neutralPalette);\nconst whiteBlack = {\n white: \"rgba(255,255,255,1)\",\n white0: \"rgba(255,255,255,0)\",\n white02: \"rgba(255,255,255,0.2)\",\n white04: \"rgba(255,255,255,0.4)\",\n white06: \"rgba(255,255,255,0.6)\",\n white08: \"rgba(255,255,255,0.8)\",\n black: \"rgba(0,0,0,1)\",\n black0: \"rgba(0,0,0,0)\",\n black02: \"rgba(0,0,0,0.2)\",\n black04: \"rgba(0,0,0,0.4)\",\n black06: \"rgba(0,0,0,0.6)\",\n black08: \"rgba(0,0,0,0.8)\"\n};\nconst darkShadows = {\n shadow1: \"rgba(0,0,0,0.15)\",\n shadow2: \"rgba(0,0,0,0.23)\",\n shadow3: \"rgba(0,0,0,0.33)\",\n shadow4: \"rgba(0,0,0,0.45)\",\n shadow5: \"rgba(0,0,0,0.65)\",\n shadow6: \"rgba(0,0,0,0.8)\",\n shadow7: \"rgba(0,0,0,0.9)\",\n shadow8: \"rgba(0,0,0,1)\"\n};\nconst lightShadows = {\n shadow1: \"rgba(0,0,0,0.04)\",\n shadow2: \"rgba(0,0,0,0.08)\",\n shadow3: \"rgba(0,0,0,0.12)\",\n shadow4: \"rgba(0,0,0,0.22)\",\n shadow5: \"rgba(0,0,0,0.33)\",\n shadow6: \"rgba(0,0,0,0.44)\",\n shadow7: \"rgba(0,0,0,0.6)\",\n shadow8: \"rgba(0,0,0,0.75)\"\n};\nconst darkHighlights = {\n highlight1: \"rgba(255,255,255,0.1)\",\n highlight2: \"rgba(255,255,255,0.2)\",\n highlight3: \"rgba(255,255,255,0.3)\",\n highlight4: \"rgba(255,255,255,0.45)\",\n highlight5: \"rgba(255,255,255,0.65)\",\n highlight6: \"rgba(255,255,255,0.85)\",\n highlight7: \"rgba(255,255,255,0.95)\",\n highlight8: \"rgba(255,255,255,1)\"\n};\nconst lightHighlights = {\n highlight1: \"rgba(255,255,255,0.05)\",\n highlight2: \"rgba(255,255,255,0.1)\",\n highlight3: \"rgba(255,255,255,0.15)\",\n highlight4: \"rgba(255,255,255,0.3)\",\n highlight5: \"rgba(255,255,255,0.4)\",\n highlight6: \"rgba(255,255,255,0.55)\",\n highlight7: \"rgba(255,255,255,0.7)\",\n highlight8: \"rgba(255,255,255,0.85)\"\n};\nconst defaultChildrenThemes = {\n gray: { light: gray, dark: grayDark },\n blue: { light: blue, dark: blueDark },\n red: { light: red, dark: redDark },\n yellow: { light: yellow, dark: yellowDark },\n green: { light: green, dark: greenDark },\n orange: { light: orange, dark: orangeDark },\n pink: { light: pink, dark: pinkDark },\n purple: { light: purple, dark: purpleDark },\n teal: { light: teal, dark: tealDark },\n neutral: { light: neutral, dark: neutral }\n};\nfunction getDefaultV5ThemeValues({ palette }) {\n if (!palette || palette.length < 3) {\n throw new Error(`invalid palette: ${JSON.stringify(palette)}`);\n }\n const bgColor = palette[V5_BG_OFFSET];\n const fgColor = palette[palette.length - 2];\n return {\n color01: opacify(fgColor, 0.1),\n color0075: opacify(fgColor, 0.075),\n color005: opacify(fgColor, 0.05),\n color0025: opacify(fgColor, 0.025),\n color002: opacify(fgColor, 0.02),\n color001: opacify(fgColor, 0.01),\n background01: opacify(bgColor, 0.1),\n background0075: opacify(bgColor, 0.075),\n background005: opacify(bgColor, 0.05),\n background0025: opacify(bgColor, 0.025),\n background002: opacify(bgColor, 0.02),\n background001: opacify(bgColor, 0.01),\n background02: opacify(bgColor, 0.2),\n background04: opacify(bgColor, 0.4),\n background06: opacify(bgColor, 0.6),\n background08: opacify(bgColor, 0.8),\n outlineColor: opacify(palette[V5_BG_OFFSET + 4], 0.6)\n };\n}\nfunction createV5Theme(options = {}) {\n const {\n darkPalette: customDarkPalette = darkPalette,\n lightPalette: customLightPalette = lightPalette,\n accent: customAccent,\n childrenThemes = defaultChildrenThemes,\n grandChildrenThemes = v5GrandchildrenThemes,\n componentThemes: customComponentThemes = v5ComponentThemes,\n getTheme: userGetTheme\n } = options;\n const blackColors = paletteToNamedColors(\"black\", customDarkPalette);\n const whiteColors = paletteToNamedColors(\"white\", customLightPalette);\n const extraBase = {\n ...blackColors,\n ...whiteColors,\n ...whiteBlack\n };\n const lightExtraBase = {\n ...extraBase,\n ...lightShadows,\n ...lightHighlights,\n shadowColor: lightShadows.shadow3\n };\n const darkExtraBase = {\n ...extraBase,\n ...darkShadows,\n ...darkHighlights,\n shadowColor: darkShadows.shadow3\n };\n const lightExtra = { ...lightExtraBase };\n const darkExtra = { ...darkExtraBase };\n for (const theme of Object.values(childrenThemes)) {\n if (theme.light) Object.assign(lightExtra, theme.light);\n if (theme.dark) Object.assign(darkExtra, theme.dark);\n }\n const childrenWithPalettes = {\n // Always include black/white for theme generation\n black: {\n palette: { dark: Object.values(blackColors), light: Object.values(blackColors) }\n },\n white: {\n palette: { dark: Object.values(whiteColors), light: Object.values(whiteColors) }\n },\n ...Object.fromEntries(\n Object.entries(childrenThemes).map(([name, theme]) => [\n name,\n {\n palette: {\n light: Object.values(theme.light),\n dark: Object.values(theme.dark)\n }\n }\n ])\n )\n };\n return createThemes({\n // componentThemes: false disables them, undefined/truthy values enable them\n componentThemes: customComponentThemes,\n templates: v5Templates,\n base: {\n palette: {\n dark: customDarkPalette,\n light: customLightPalette\n },\n extra: {\n light: lightExtra,\n dark: darkExtra\n }\n },\n accent: {\n palette: customAccent ? {\n light: Object.values(customAccent.light),\n dark: Object.values(customAccent.dark)\n } : {\n dark: customLightPalette,\n light: customDarkPalette\n }\n },\n childrenThemes: childrenWithPalettes,\n grandChildrenThemes,\n getTheme: (props) => {\n const builtInTheme = getDefaultV5ThemeValues(props);\n const customTheme = userGetTheme?.(props);\n return customTheme ? { ...builtInTheme, ...customTheme } : builtInTheme;\n }\n });\n}\nexport {\n V5_BG_OFFSET,\n adjustPalette,\n adjustPalettes,\n createV5Theme,\n defaultChildrenThemes,\n darkPalette as defaultDarkPalette,\n lightPalette as defaultLightPalette,\n hslToString,\n interpolateColor,\n opacify2 as opacify,\n parseColor,\n parseHSL,\n parseHex,\n v5ComponentThemes,\n v5ComponentThemesWithInverses,\n v5GrandchildrenThemes\n};\n//# sourceMappingURL=v5-themes.js.map\n"],"mappings":"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"}