@impulse-ui-native/theme 4.0.0 → 6.0.0

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 (142) hide show
  1. package/README.md +23 -0
  2. package/dist/hooks/index.d.mts +5 -1
  3. package/dist/hooks/use-colors.hook.d.mts +5 -1
  4. package/dist/hooks/use-components-tokens.hook.d.mts +5 -1
  5. package/dist/hooks/use-theme.hook.d.mts +5 -1
  6. package/dist/hooks/use-themed-styles.d.mts +5 -1
  7. package/dist/index.d.mts +18 -5
  8. package/dist/providers/index.d.mts +5 -1
  9. package/dist/providers/theme.provider.d.mts +5 -1
  10. package/dist/theme/create-accordion-tokens.d.mts +5 -1
  11. package/dist/theme/create-avatar-tokens.d.mts +5 -1
  12. package/dist/theme/create-avatar-tokens.js +1 -1
  13. package/dist/theme/create-avatar-tokens.js.map +1 -1
  14. package/dist/theme/create-badge-tokens.d.mts +6 -2
  15. package/dist/theme/create-badge-tokens.js +7 -6
  16. package/dist/theme/create-badge-tokens.js.map +1 -1
  17. package/dist/theme/create-button-tokens.d.mts +5 -1
  18. package/dist/theme/create-button-tokens.js +5 -6
  19. package/dist/theme/create-button-tokens.js.map +1 -1
  20. package/dist/theme/create-card-tokens.d.mts +5 -1
  21. package/dist/theme/create-carousel-tokens.d.mts +35 -0
  22. package/dist/theme/create-carousel-tokens.js +32 -0
  23. package/dist/theme/create-carousel-tokens.js.map +1 -0
  24. package/dist/theme/create-checkbox-tokens.d.mts +5 -1
  25. package/dist/theme/create-checkbox-tokens.js +9 -9
  26. package/dist/theme/create-checkbox-tokens.js.map +1 -1
  27. package/dist/theme/create-control-tokens.d.mts +5 -1
  28. package/dist/theme/create-control-tokens.js +6 -6
  29. package/dist/theme/create-control-tokens.js.map +1 -1
  30. package/dist/theme/create-data-state-tokens.d.mts +5 -1
  31. package/dist/theme/create-datetime-picker.d.mts +5 -1
  32. package/dist/theme/create-datetime-picker.js +1 -1
  33. package/dist/theme/create-datetime-picker.js.map +1 -1
  34. package/dist/theme/create-divider-tokens.d.mts +5 -1
  35. package/dist/theme/create-divider-tokens.js +64 -2
  36. package/dist/theme/create-divider-tokens.js.map +1 -1
  37. package/dist/theme/create-flyout-tokens.d.mts +5 -1
  38. package/dist/theme/create-flyout-tokens.js +31 -3
  39. package/dist/theme/create-flyout-tokens.js.map +1 -1
  40. package/dist/theme/create-icon-button-tokens.d.mts +5 -1
  41. package/dist/theme/create-icon-button-tokens.js +5 -6
  42. package/dist/theme/create-icon-button-tokens.js.map +1 -1
  43. package/dist/theme/create-list-tokens.d.mts +35 -0
  44. package/dist/theme/create-list-tokens.js +14 -0
  45. package/dist/theme/create-list-tokens.js.map +1 -0
  46. package/dist/theme/create-pagination-tokens.d.mts +35 -0
  47. package/dist/theme/create-pagination-tokens.js +57 -0
  48. package/dist/theme/create-pagination-tokens.js.map +1 -0
  49. package/dist/theme/create-progress-tokens.d.mts +5 -1
  50. package/dist/theme/create-progress-tokens.js +4 -4
  51. package/dist/theme/create-progress-tokens.js.map +1 -1
  52. package/dist/theme/create-radio-tokens.d.mts +5 -1
  53. package/dist/theme/create-radio-tokens.js +9 -9
  54. package/dist/theme/create-radio-tokens.js.map +1 -1
  55. package/dist/theme/create-segmented-control-tokens.d.mts +35 -0
  56. package/dist/theme/create-segmented-control-tokens.js +157 -0
  57. package/dist/theme/create-segmented-control-tokens.js.map +1 -0
  58. package/dist/theme/create-select-tokens.d.mts +5 -1
  59. package/dist/theme/create-skeleton-tokens.d.mts +5 -1
  60. package/dist/theme/create-skeleton-tokens.js +1 -1
  61. package/dist/theme/create-skeleton-tokens.js.map +1 -1
  62. package/dist/theme/create-slider-tokens.d.mts +5 -1
  63. package/dist/theme/create-slider-tokens.js +55 -62
  64. package/dist/theme/create-slider-tokens.js.map +1 -1
  65. package/dist/theme/create-spinner-tokens.d.mts +5 -1
  66. package/dist/theme/create-spinner-tokens.js +1 -1
  67. package/dist/theme/create-spinner-tokens.js.map +1 -1
  68. package/dist/theme/create-stepper-tokens.d.mts +5 -1
  69. package/dist/theme/create-switch-tokens.d.mts +5 -1
  70. package/dist/theme/create-switch-tokens.js +22 -22
  71. package/dist/theme/create-switch-tokens.js.map +1 -1
  72. package/dist/theme/create-tag-tokens.d.mts +5 -1
  73. package/dist/theme/create-tag-tokens.js +38 -38
  74. package/dist/theme/create-tag-tokens.js.map +1 -1
  75. package/dist/theme/create-textarea-tokens.d.mts +5 -1
  76. package/dist/theme/create-time-picker-tokens.d.mts +5 -1
  77. package/dist/theme/create-toast-tokens.d.mts +35 -0
  78. package/dist/theme/create-toast-tokens.js +30 -0
  79. package/dist/theme/create-toast-tokens.js.map +1 -0
  80. package/dist/theme/dark.theme.d.mts +5 -1
  81. package/dist/theme/dark.theme.js +2 -2
  82. package/dist/theme/dark.theme.js.map +1 -1
  83. package/dist/theme/index.d.mts +10 -2
  84. package/dist/theme/index.js +4 -0
  85. package/dist/theme/index.js.map +1 -1
  86. package/dist/theme/light.theme.d.mts +5 -1
  87. package/dist/theme/tokens.theme.d.mts +7 -2
  88. package/dist/theme/tokens.theme.js +97 -7
  89. package/dist/theme/tokens.theme.js.map +1 -1
  90. package/dist/theme-provider.types-BSPyJjfq.d.mts +155 -0
  91. package/dist/types/carousel-tokens.types.d.mts +28 -0
  92. package/dist/types/carousel-tokens.types.js +1 -0
  93. package/dist/types/carousel-tokens.types.js.map +1 -0
  94. package/dist/types/divider-tokens.types.d.mts +20 -3
  95. package/dist/types/flyout-tokens.types.d.mts +22 -3
  96. package/dist/types/index.d.mts +8 -4
  97. package/dist/types/index.js +5 -0
  98. package/dist/types/index.js.map +1 -1
  99. package/dist/types/list-tokens.types.d.mts +15 -0
  100. package/dist/types/list-tokens.types.js +1 -0
  101. package/dist/types/list-tokens.types.js.map +1 -0
  102. package/dist/types/pagination-tokens.types.d.mts +30 -0
  103. package/dist/types/pagination-tokens.types.js +1 -0
  104. package/dist/types/pagination-tokens.types.js.map +1 -0
  105. package/dist/types/segmented-control-tokens.types.d.mts +49 -0
  106. package/dist/types/segmented-control-tokens.types.js +1 -0
  107. package/dist/types/segmented-control-tokens.types.js.map +1 -0
  108. package/dist/types/slider-tokens.types.d.mts +15 -6
  109. package/dist/types/theme-provider.types.d.mts +30 -120
  110. package/dist/types/toast-tokens.types.d.mts +31 -0
  111. package/dist/types/toast-tokens.types.js +1 -0
  112. package/dist/types/toast-tokens.types.js.map +1 -0
  113. package/dist/utils/action-state.utils.js +3 -1
  114. package/dist/utils/action-state.utils.js.map +1 -1
  115. package/dist/utils/control-state.utils.js +3 -1
  116. package/dist/utils/control-state.utils.js.map +1 -1
  117. package/dist/utils/datetime-picker-state.utils.js +6 -2
  118. package/dist/utils/datetime-picker-state.utils.js.map +1 -1
  119. package/dist/utils/divider-tokens.utils.d.mts +5 -0
  120. package/dist/utils/divider-tokens.utils.js +10 -0
  121. package/dist/utils/divider-tokens.utils.js.map +1 -0
  122. package/dist/utils/field-state.utils.js +3 -1
  123. package/dist/utils/field-state.utils.js.map +1 -1
  124. package/dist/utils/flyout-tokens.utils.d.mts +5 -0
  125. package/dist/utils/flyout-tokens.utils.js +11 -0
  126. package/dist/utils/flyout-tokens.utils.js.map +1 -0
  127. package/dist/utils/index.d.mts +13 -4
  128. package/dist/utils/index.js +5 -0
  129. package/dist/utils/index.js.map +1 -1
  130. package/dist/utils/pagination-state.utils.d.mts +6 -0
  131. package/dist/utils/pagination-state.utils.js +11 -0
  132. package/dist/utils/pagination-state.utils.js.map +1 -0
  133. package/dist/utils/segmented-control-state.utils.d.mts +6 -0
  134. package/dist/utils/segmented-control-state.utils.js +20 -0
  135. package/dist/utils/segmented-control-state.utils.js.map +1 -0
  136. package/dist/utils/slider-tokens.utils.d.mts +6 -0
  137. package/dist/utils/slider-tokens.utils.js +15 -0
  138. package/dist/utils/slider-tokens.utils.js.map +1 -0
  139. package/dist/utils/style.utils.d.mts +5 -1
  140. package/dist/utils/style.utils.js +12 -4
  141. package/dist/utils/style.utils.js.map +1 -1
  142. package/package.json +3 -3
@@ -21,16 +21,24 @@ const createStyleKey = (props) => {
21
21
  };
22
22
  const getShadowStyle = (level = "none", position = "bottom", colors) => {
23
23
  const token = ShadowScale[level];
24
- if (level === "none") return {};
24
+ if (level === "none") {
25
+ return {};
26
+ }
25
27
  if (Platform.OS === "android") {
26
28
  return {
27
29
  elevation: token.elevation
28
30
  };
29
31
  }
30
32
  let offsetY = 0;
31
- if (position === "bottom") offsetY = token.radius / 2;
32
- if (position === "top") offsetY = -token.radius / 2;
33
- if (position === "around") offsetY = 0;
33
+ if (position === "bottom") {
34
+ offsetY = token.radius / 2;
35
+ }
36
+ if (position === "top") {
37
+ offsetY = -token.radius / 2;
38
+ }
39
+ if (position === "around") {
40
+ offsetY = 0;
41
+ }
34
42
  return {
35
43
  shadowColor: colors.black,
36
44
  shadowOpacity: token.opacity,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/style.utils.ts"],"sourcesContent":["import { Platform, ViewStyle } from \"react-native\";\n\nimport { ShadowScale, StylePropsSet } from \"../constants\";\nimport {\n ShadowLevel,\n ShadowPosition,\n StylePropKey,\n StyleProps,\n ThemeColors,\n} from \"../types\";\n\nconst isStylePropKey = (k: string): k is StylePropKey =>\n StylePropsSet.has(k as StylePropKey);\n\nexport const extractStyleProps = <Props extends object>(\n props: Props,\n): StyleProps => {\n const style: StyleProps = {};\n\n for (const k in props) {\n if (isStylePropKey(k) && props[k] !== undefined) {\n style[k] = props[k] as any;\n }\n }\n\n return style;\n};\n\nexport const createStyleKey = <Props extends object>(props: Props) => {\n let key = \"\";\n\n for (const k in props) {\n if (isStylePropKey(k)) {\n key += String(props[k as keyof Props]);\n }\n }\n\n return key;\n};\n\nexport const getShadowStyle = (\n level: ShadowLevel = \"none\",\n position: ShadowPosition = \"bottom\",\n colors: ThemeColors,\n): ViewStyle => {\n const token = ShadowScale[level];\n\n if (level === \"none\") return {};\n\n if (Platform.OS === \"android\") {\n return {\n elevation: token.elevation,\n };\n }\n\n let offsetY = 0;\n\n if (position === \"bottom\") offsetY = token.radius / 2;\n if (position === \"top\") offsetY = -token.radius / 2;\n if (position === \"around\") offsetY = 0;\n\n return {\n shadowColor: colors.black,\n shadowOpacity: token.opacity,\n shadowRadius: token.radius,\n shadowOffset: {\n width: 0,\n height: offsetY,\n },\n };\n};\n"],"mappings":"AAAA,SAAS,gBAA2B;AAEpC,SAAS,aAAa,qBAAqB;AAS3C,MAAM,iBAAiB,CAAC,MACtB,cAAc,IAAI,CAAiB;AAE9B,MAAM,oBAAoB,CAC/B,UACe;AACf,QAAM,QAAoB,CAAC;AAE3B,aAAW,KAAK,OAAO;AACrB,QAAI,eAAe,CAAC,KAAK,MAAM,CAAC,MAAM,QAAW;AAC/C,YAAM,CAAC,IAAI,MAAM,CAAC;AAAA,IACpB;AAAA,EACF;AAEA,SAAO;AACT;AAEO,MAAM,iBAAiB,CAAuB,UAAiB;AACpE,MAAI,MAAM;AAEV,aAAW,KAAK,OAAO;AACrB,QAAI,eAAe,CAAC,GAAG;AACrB,aAAO,OAAO,MAAM,CAAgB,CAAC;AAAA,IACvC;AAAA,EACF;AAEA,SAAO;AACT;AAEO,MAAM,iBAAiB,CAC5B,QAAqB,QACrB,WAA2B,UAC3B,WACc;AACd,QAAM,QAAQ,YAAY,KAAK;AAE/B,MAAI,UAAU,OAAQ,QAAO,CAAC;AAE9B,MAAI,SAAS,OAAO,WAAW;AAC7B,WAAO;AAAA,MACL,WAAW,MAAM;AAAA,IACnB;AAAA,EACF;AAEA,MAAI,UAAU;AAEd,MAAI,aAAa,SAAU,WAAU,MAAM,SAAS;AACpD,MAAI,aAAa,MAAO,WAAU,CAAC,MAAM,SAAS;AAClD,MAAI,aAAa,SAAU,WAAU;AAErC,SAAO;AAAA,IACL,aAAa,OAAO;AAAA,IACpB,eAAe,MAAM;AAAA,IACrB,cAAc,MAAM;AAAA,IACpB,cAAc;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,IACV;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/utils/style.utils.ts"],"sourcesContent":["import { Platform, ViewStyle } from \"react-native\";\n\nimport { ShadowScale, StylePropsSet } from \"../constants\";\nimport {\n ShadowLevel,\n ShadowPosition,\n StylePropKey,\n StyleProps,\n ThemeColors,\n} from \"../types\";\n\nconst isStylePropKey = (k: string): k is StylePropKey =>\n StylePropsSet.has(k as StylePropKey);\n\nexport const extractStyleProps = <Props extends object>(\n props: Props,\n): StyleProps => {\n const style: StyleProps = {};\n\n for (const k in props) {\n if (isStylePropKey(k) && props[k] !== undefined) {\n style[k] = props[k] as any;\n }\n }\n\n return style;\n};\n\nexport const createStyleKey = <Props extends object>(props: Props) => {\n let key = \"\";\n\n for (const k in props) {\n if (isStylePropKey(k)) {\n key += String(props[k as keyof Props]);\n }\n }\n\n return key;\n};\n\nexport const getShadowStyle = (\n level: ShadowLevel = \"none\",\n position: ShadowPosition = \"bottom\",\n colors: ThemeColors,\n): ViewStyle => {\n const token = ShadowScale[level];\n\n if (level === \"none\") {\n return {};\n }\n\n if (Platform.OS === \"android\") {\n return {\n elevation: token.elevation,\n };\n }\n\n let offsetY = 0;\n\n if (position === \"bottom\") {\n offsetY = token.radius / 2;\n }\n\n if (position === \"top\") {\n offsetY = -token.radius / 2;\n }\n\n if (position === \"around\") {\n offsetY = 0;\n }\n\n return {\n shadowColor: colors.black,\n shadowOpacity: token.opacity,\n shadowRadius: token.radius,\n shadowOffset: {\n width: 0,\n height: offsetY,\n },\n };\n};\n"],"mappings":"AAAA,SAAS,gBAA2B;AAEpC,SAAS,aAAa,qBAAqB;AAS3C,MAAM,iBAAiB,CAAC,MACtB,cAAc,IAAI,CAAiB;AAE9B,MAAM,oBAAoB,CAC/B,UACe;AACf,QAAM,QAAoB,CAAC;AAE3B,aAAW,KAAK,OAAO;AACrB,QAAI,eAAe,CAAC,KAAK,MAAM,CAAC,MAAM,QAAW;AAC/C,YAAM,CAAC,IAAI,MAAM,CAAC;AAAA,IACpB;AAAA,EACF;AAEA,SAAO;AACT;AAEO,MAAM,iBAAiB,CAAuB,UAAiB;AACpE,MAAI,MAAM;AAEV,aAAW,KAAK,OAAO;AACrB,QAAI,eAAe,CAAC,GAAG;AACrB,aAAO,OAAO,MAAM,CAAgB,CAAC;AAAA,IACvC;AAAA,EACF;AAEA,SAAO;AACT;AAEO,MAAM,iBAAiB,CAC5B,QAAqB,QACrB,WAA2B,UAC3B,WACc;AACd,QAAM,QAAQ,YAAY,KAAK;AAE/B,MAAI,UAAU,QAAQ;AACpB,WAAO,CAAC;AAAA,EACV;AAEA,MAAI,SAAS,OAAO,WAAW;AAC7B,WAAO;AAAA,MACL,WAAW,MAAM;AAAA,IACnB;AAAA,EACF;AAEA,MAAI,UAAU;AAEd,MAAI,aAAa,UAAU;AACzB,cAAU,MAAM,SAAS;AAAA,EAC3B;AAEA,MAAI,aAAa,OAAO;AACtB,cAAU,CAAC,MAAM,SAAS;AAAA,EAC5B;AAEA,MAAI,aAAa,UAAU;AACzB,cAAU;AAAA,EACZ;AAEA,SAAO;AAAA,IACL,aAAa,OAAO;AAAA,IACpB,eAAe,MAAM;AAAA,IACrB,cAAc,MAAM;AAAA,IACpB,cAAc;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,IACV;AAAA,EACF;AACF;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@impulse-ui-native/theme",
3
- "version": "4.0.0",
3
+ "version": "6.0.0",
4
4
  "description": "Theme tokens, providers, and styling utilities for ImpulseUI Native.",
5
5
  "keywords": [
6
6
  "react-native",
@@ -28,7 +28,7 @@
28
28
  ],
29
29
  "sideEffects": false,
30
30
  "dependencies": {
31
- "@impulse-ui-native/core": "4.0.0"
31
+ "@impulse-ui-native/core": "6.0.0"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@types/react": "~19.2.14",
@@ -37,8 +37,8 @@
37
37
  "react": "19.2.3",
38
38
  "react-native": "0.86.2",
39
39
  "typescript": "~6.0.3",
40
- "@impulse-ui-native/eslint-config": "1.0.0",
41
40
  "@impulse-ui-native/prettier-config": "1.0.0",
41
+ "@impulse-ui-native/eslint-config": "1.0.0",
42
42
  "@impulse-ui-native/tsconfig": "1.0.0"
43
43
  },
44
44
  "peerDependencies": {