@korsolutions/ui 0.0.54 → 0.0.56

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 (48) hide show
  1. package/dist/module/components/select/components/select-portal.js +10 -1
  2. package/dist/module/components/select/components/select-portal.js.map +1 -1
  3. package/dist/module/components/select/components/select-trigger.js +5 -4
  4. package/dist/module/components/select/components/select-trigger.js.map +1 -1
  5. package/dist/module/components/select/variants/default.js +1 -0
  6. package/dist/module/components/select/variants/default.js.map +1 -1
  7. package/dist/module/components/toast/components/toast-body.js +16 -0
  8. package/dist/module/components/toast/components/toast-body.js.map +1 -0
  9. package/dist/module/components/toast/manager.js +15 -5
  10. package/dist/module/components/toast/manager.js.map +1 -1
  11. package/dist/module/components/toast/variants/danger.js +6 -2
  12. package/dist/module/components/toast/variants/danger.js.map +1 -1
  13. package/dist/module/components/toast/variants/default.js +6 -2
  14. package/dist/module/components/toast/variants/default.js.map +1 -1
  15. package/dist/module/components/toast/variants/success.js +6 -2
  16. package/dist/module/components/toast/variants/success.js.map +1 -1
  17. package/dist/module/index.js +3 -1
  18. package/dist/module/index.js.map +1 -1
  19. package/dist/module/themes/provider.js +11 -2
  20. package/dist/module/themes/provider.js.map +1 -1
  21. package/dist/typescript/src/components/select/components/select-portal.d.ts +1 -1
  22. package/dist/typescript/src/components/select/components/select-portal.d.ts.map +1 -1
  23. package/dist/typescript/src/components/select/components/select-trigger.d.ts.map +1 -1
  24. package/dist/typescript/src/components/select/variants/default.d.ts.map +1 -1
  25. package/dist/typescript/src/components/toast/components/toast-body.d.ts +9 -0
  26. package/dist/typescript/src/components/toast/components/toast-body.d.ts.map +1 -0
  27. package/dist/typescript/src/components/toast/manager.d.ts.map +1 -1
  28. package/dist/typescript/src/components/toast/types.d.ts +2 -0
  29. package/dist/typescript/src/components/toast/types.d.ts.map +1 -1
  30. package/dist/typescript/src/components/toast/variants/danger.d.ts.map +1 -1
  31. package/dist/typescript/src/components/toast/variants/default.d.ts.map +1 -1
  32. package/dist/typescript/src/components/toast/variants/success.d.ts.map +1 -1
  33. package/dist/typescript/src/index.d.ts +4 -3
  34. package/dist/typescript/src/index.d.ts.map +1 -1
  35. package/dist/typescript/src/themes/provider.d.ts +10 -0
  36. package/dist/typescript/src/themes/provider.d.ts.map +1 -1
  37. package/package.json +1 -1
  38. package/src/components/select/components/select-portal.tsx +14 -2
  39. package/src/components/select/components/select-trigger.tsx +5 -6
  40. package/src/components/select/variants/default.tsx +1 -0
  41. package/src/components/toast/components/toast-body.tsx +19 -0
  42. package/src/components/toast/manager.tsx +15 -5
  43. package/src/components/toast/types.ts +2 -0
  44. package/src/components/toast/variants/danger.tsx +6 -2
  45. package/src/components/toast/variants/default.tsx +6 -2
  46. package/src/components/toast/variants/success.tsx +6 -2
  47. package/src/index.tsx +9 -3
  48. package/src/themes/provider.tsx +22 -1
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import React, { useEffect } from "react";
4
+ import { View } from "react-native";
4
5
  import { Portal } from "../../portal/index.js";
5
6
  import { SelectContext, useSelect } from "../context.js";
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -12,7 +13,15 @@ export function SelectPortal(props) {
12
13
  };
13
14
  }, []);
14
15
  if (!select.isOpen) {
15
- return null;
16
+ return /*#__PURE__*/_jsx(View, {
17
+ style: {
18
+ display: "none"
19
+ },
20
+ "aria-hidden": true,
21
+ accessibilityElementsHidden: true,
22
+ importantForAccessibility: "no-hide-descendants",
23
+ children: props.children
24
+ });
16
25
  }
17
26
  return /*#__PURE__*/_jsx(Portal, {
18
27
  name: "select-portal",
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","Portal","SelectContext","useSelect","jsx","_jsx","SelectPortal","props","select","setOptions","isOpen","name","children","Provider","value"],"sourceRoot":"../../../../../src","sources":["components/select/components/select-portal.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,MAAM,QAAQ,uBAAc;AACrC,SAASC,aAAa,EAAEC,SAAS,QAAQ,eAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMtD,OAAO,SAASC,YAAYA,CAACC,KAAwB,EAAE;EACrD,MAAMC,MAAM,GAAGL,SAAS,CAAC,CAAC;EAE1BH,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACXQ,MAAM,CAACC,UAAU,CAAC,EAAE,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAI,CAACD,MAAM,CAACE,MAAM,EAAE;IAClB,OAAO,IAAI;EACb;EAEA,oBACEL,IAAA,CAACJ,MAAM;IAACU,IAAI,EAAC,eAAe;IAAAC,QAAA,eAC1BP,IAAA,CAACH,aAAa,CAACW,QAAQ;MAACC,KAAK,EAAEN,MAAO;MAAAI,QAAA,EAAEL,KAAK,CAACK;IAAQ,CAAyB;EAAC,CAC1E,CAAC;AAEb","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","View","Portal","SelectContext","useSelect","jsx","_jsx","SelectPortal","props","select","setOptions","isOpen","style","display","accessibilityElementsHidden","importantForAccessibility","children","name","Provider","value"],"sourceRoot":"../../../../../src","sources":["components/select/components/select-portal.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,MAAM,QAAQ,uBAAc;AACrC,SAASC,aAAa,EAAEC,SAAS,QAAQ,eAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMtD,OAAO,SAASC,YAAYA,CAACC,KAAwB,EAAE;EACrD,MAAMC,MAAM,GAAGL,SAAS,CAAC,CAAC;EAE1BJ,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACXS,MAAM,CAACC,UAAU,CAAC,EAAE,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAI,CAACD,MAAM,CAACE,MAAM,EAAE;IAClB,oBACEL,IAAA,CAACL,IAAI;MACHW,KAAK,EAAE;QAAEC,OAAO,EAAE;MAAO,CAAE;MAC3B,mBAAW;MACXC,2BAA2B;MAC3BC,yBAAyB,EAAC,qBAAqB;MAAAC,QAAA,EAE9CR,KAAK,CAACQ;IAAQ,CACX,CAAC;EAEX;EAEA,oBACEV,IAAA,CAACJ,MAAM;IAACe,IAAI,EAAC,eAAe;IAAAD,QAAA,eAC1BV,IAAA,CAACH,aAAa,CAACe,QAAQ;MAACC,KAAK,EAAEV,MAAO;MAAAO,QAAA,EACnCR,KAAK,CAACQ;IAAQ,CACO;EAAC,CACnB,CAAC;AAEb","ignoreList":[]}
@@ -34,15 +34,16 @@ export function SelectValue(props) {
34
34
  const select = useSelect();
35
35
  const selectedOption = select.options.find(option => option.value === select.value);
36
36
  const selectedOptionLabel = selectedOption?.label;
37
- const composedStyles = calculateComposedStyles(select.styles, select.state, selectedOptionLabel ? "value" : "placeholder");
38
- if (typeof selectedOptionLabel !== "string") {
37
+ const displayValue = selectedOptionLabel ?? select.value;
38
+ const composedStyles = calculateComposedStyles(select.styles, select.state, displayValue ? "value" : "placeholder");
39
+ if (!!displayValue && typeof displayValue !== "string") {
39
40
  return /*#__PURE__*/_jsx(_Fragment, {
40
- children: selectedOptionLabel
41
+ children: displayValue
41
42
  });
42
43
  }
43
44
  return /*#__PURE__*/_jsx(Text, {
44
45
  style: composedStyles,
45
- children: selectedOptionLabel ?? props.placeholder
46
+ children: displayValue ?? props.placeholder
46
47
  });
47
48
  }
48
49
  //# sourceMappingURL=select-trigger.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useRef","Pressable","Text","calculateComposedStyles","measureLayoutPosition","useSelect","jsx","_jsx","Fragment","_Fragment","SelectTrigger","props","select","triggerRef","composedStyles","styles","state","style","onTriggerPress","isOpen","current","layout","setTriggerPosition","setIsOpen","ref","onPress","disabled","isDisabled","children","SelectValue","placeholder","selectedOption","options","find","option","value","selectedOptionLabel","label"],"sourceRoot":"../../../../../src","sources":["components/select/components/select-trigger.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,MAAM,QAAQ,OAAO;AACrC,SACEC,SAAS,EACTC,IAAI,QAIC,cAAc;AAErB,SAASC,uBAAuB,QAAQ,oCAAiC;AACzE,SAASC,qBAAqB,QAAQ,oCAAiC;AACvE,SAASC,SAAS,QAAQ,eAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA;AAOvC,OAAO,SAASC,aAAaA,CAACC,KAAyB,EAAE;EACvD,MAAMC,MAAM,GAAGP,SAAS,CAAC,CAAC;EAC1B,MAAMQ,UAAU,GAAGb,MAAM,CAAU,IAAI,CAAC;EAExC,MAAMc,cAAc,GAAGX,uBAAuB,CAC5CS,MAAM,CAACG,MAAM,EACbH,MAAM,CAACI,KAAK,EACZ,SAAS,EACTL,KAAK,CAACM,KACR,CAAC;EAED,MAAMC,cAAc,GAAGA,CAAA,KAAM;IAC3B,IAAI,CAACN,MAAM,CAACO,MAAM,EAAE;MAClBf,qBAAqB,CAACS,UAAU,CAACO,OAAO,EAAGC,MAAM,IAAK;QACpDT,MAAM,CAACU,kBAAkB,CAACD,MAAM,CAAC;QACjCT,MAAM,CAACW,SAAS,CAAC,IAAI,CAAC;MACxB,CAAC,CAAC;IACJ,CAAC,MAAM;MACLX,MAAM,CAACW,SAAS,CAAC,KAAK,CAAC;IACzB;EACF,CAAC;EAED,oBACEhB,IAAA,CAACN,SAAS;IACRuB,GAAG,EAAEX,UAAW;IAChBY,OAAO,EAAEP,cAAe;IACxBQ,QAAQ,EAAEd,MAAM,CAACe,UAAW;IAC5BV,KAAK,EAAEH,cAAe;IAAAc,QAAA,eAEtBrB,IAAA,CAACsB,WAAW;MAACC,WAAW,EAAEnB,KAAK,CAACmB;IAAY,CAAE;EAAC,CACtC,CAAC;AAEhB;AAOA,OAAO,SAASD,WAAWA,CAAClB,KAAuB,EAAE;EACnD,MAAMC,MAAM,GAAGP,SAAS,CAAC,CAAC;EAE1B,MAAM0B,cAAc,GAAGnB,MAAM,CAACoB,OAAO,CAACC,IAAI,CACvCC,MAAM,IAAKA,MAAM,CAACC,KAAK,KAAKvB,MAAM,CAACuB,KACtC,CAAC;EACD,MAAMC,mBAAmB,GAAGL,cAAc,EAAEM,KAAK;EAEjD,MAAMvB,cAAc,GAAGX,uBAAuB,CAC5CS,MAAM,CAACG,MAAM,EACbH,MAAM,CAACI,KAAK,EACZoB,mBAAmB,GAAG,OAAO,GAAG,aAClC,CAAC;EACD,IAAI,OAAOA,mBAAmB,KAAK,QAAQ,EAAE;IAC3C,oBAAO7B,IAAA,CAAAE,SAAA;MAAAmB,QAAA,EAAGQ;IAAmB,CAAG,CAAC;EACnC;EACA,oBACE7B,IAAA,CAACL,IAAI;IAACe,KAAK,EAAEH,cAAe;IAAAc,QAAA,EACzBQ,mBAAmB,IAAIzB,KAAK,CAACmB;EAAW,CACrC,CAAC;AAEX","ignoreList":[]}
1
+ {"version":3,"names":["React","useRef","Pressable","Text","calculateComposedStyles","measureLayoutPosition","useSelect","jsx","_jsx","Fragment","_Fragment","SelectTrigger","props","select","triggerRef","composedStyles","styles","state","style","onTriggerPress","isOpen","current","layout","setTriggerPosition","setIsOpen","ref","onPress","disabled","isDisabled","children","SelectValue","placeholder","selectedOption","options","find","option","value","selectedOptionLabel","label","displayValue"],"sourceRoot":"../../../../../src","sources":["components/select/components/select-trigger.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,MAAM,QAAQ,OAAO;AACrC,SACEC,SAAS,EACTC,IAAI,QAIC,cAAc;AAErB,SAASC,uBAAuB,QAAQ,oCAAiC;AACzE,SAASC,qBAAqB,QAAQ,oCAAiC;AACvE,SAASC,SAAS,QAAQ,eAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA;AAOvC,OAAO,SAASC,aAAaA,CAACC,KAAyB,EAAE;EACvD,MAAMC,MAAM,GAAGP,SAAS,CAAC,CAAC;EAC1B,MAAMQ,UAAU,GAAGb,MAAM,CAAU,IAAI,CAAC;EAExC,MAAMc,cAAc,GAAGX,uBAAuB,CAC5CS,MAAM,CAACG,MAAM,EACbH,MAAM,CAACI,KAAK,EACZ,SAAS,EACTL,KAAK,CAACM,KACR,CAAC;EAED,MAAMC,cAAc,GAAGA,CAAA,KAAM;IAC3B,IAAI,CAACN,MAAM,CAACO,MAAM,EAAE;MAClBf,qBAAqB,CAACS,UAAU,CAACO,OAAO,EAAGC,MAAM,IAAK;QACpDT,MAAM,CAACU,kBAAkB,CAACD,MAAM,CAAC;QACjCT,MAAM,CAACW,SAAS,CAAC,IAAI,CAAC;MACxB,CAAC,CAAC;IACJ,CAAC,MAAM;MACLX,MAAM,CAACW,SAAS,CAAC,KAAK,CAAC;IACzB;EACF,CAAC;EAED,oBACEhB,IAAA,CAACN,SAAS;IACRuB,GAAG,EAAEX,UAAW;IAChBY,OAAO,EAAEP,cAAe;IACxBQ,QAAQ,EAAEd,MAAM,CAACe,UAAW;IAC5BV,KAAK,EAAEH,cAAe;IAAAc,QAAA,eAEtBrB,IAAA,CAACsB,WAAW;MAACC,WAAW,EAAEnB,KAAK,CAACmB;IAAY,CAAE;EAAC,CACtC,CAAC;AAEhB;AAOA,OAAO,SAASD,WAAWA,CAAClB,KAAuB,EAAE;EACnD,MAAMC,MAAM,GAAGP,SAAS,CAAC,CAAC;EAE1B,MAAM0B,cAAc,GAAGnB,MAAM,CAACoB,OAAO,CAACC,IAAI,CACvCC,MAAM,IAAKA,MAAM,CAACC,KAAK,KAAKvB,MAAM,CAACuB,KACtC,CAAC;EACD,MAAMC,mBAAmB,GAAGL,cAAc,EAAEM,KAAK;EACjD,MAAMC,YAAY,GAAGF,mBAAmB,IAAIxB,MAAM,CAACuB,KAAK;EAExD,MAAMrB,cAAc,GAAGX,uBAAuB,CAC5CS,MAAM,CAACG,MAAM,EACbH,MAAM,CAACI,KAAK,EACZsB,YAAY,GAAG,OAAO,GAAG,aAC3B,CAAC;EACD,IAAI,CAAC,CAACA,YAAY,IAAI,OAAOA,YAAY,KAAK,QAAQ,EAAE;IACtD,oBAAO/B,IAAA,CAAAE,SAAA;MAAAmB,QAAA,EAAGU;IAAY,CAAG,CAAC;EAC5B;EACA,oBACE/B,IAAA,CAACL,IAAI;IAACe,KAAK,EAAEH,cAAe;IAAAc,QAAA,EAAEU,YAAY,IAAI3B,KAAK,CAACmB;EAAW,CAAO,CAAC;AAE3E","ignoreList":[]}
@@ -17,6 +17,7 @@ export function useSelectVariantDefault() {
17
17
  borderWidth: 1,
18
18
  borderColor: colors.border,
19
19
  borderRadius: radius,
20
+ backgroundColor: colors.surface,
20
21
  justifyContent: "center",
21
22
  paddingVertical: 12,
22
23
  paddingHorizontal: 16,
@@ -1 +1 @@
1
- {"version":3,"names":["useThemedStyles","useSelectVariantDefault","colors","radius","fontFamily","fontSize","root","default","disabled","trigger","borderWidth","borderColor","border","borderRadius","justifyContent","paddingVertical","paddingHorizontal","minHeight","backgroundColor","muted","value","color","foreground","mutedForeground","placeholder","overlay","content","surface","padding","gap","option","selected","hovered"],"sourceRoot":"../../../../../src","sources":["components/select/variants/default.tsx"],"mappings":";;AACA,SAASA,eAAe,QAAQ,qCAAkC;AAElE,OAAO,SAASC,uBAAuBA,CAAA,EAAiB;EACtD,OAAOD,eAAe,CACpB,CAAC;IAAEE,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAS,CAAC,MAAoB;IAC3DC,IAAI,EAAE;MACJC,OAAO,EAAE,CAAC,CAAC;MACXC,QAAQ,EAAE,CAAC;IACb,CAAC;IACDC,OAAO,EAAE;MACPF,OAAO,EAAE;QACPG,WAAW,EAAE,CAAC;QACdC,WAAW,EAAET,MAAM,CAACU,MAAM;QAC1BC,YAAY,EAAEV,MAAM;QACpBW,cAAc,EAAE,QAAQ;QACxBC,eAAe,EAAE,EAAE;QACnBC,iBAAiB,EAAE,EAAE;QACrBC,SAAS,EAAE;MACb,CAAC;MACDT,QAAQ,EAAE;QACRU,eAAe,EAAEhB,MAAM,CAACiB;MAC1B;IACF,CAAC;IACDC,KAAK,EAAE;MACLb,OAAO,EAAE;QACPH,UAAU;QACVC,QAAQ;QACRgB,KAAK,EAAEnB,MAAM,CAACoB;MAChB,CAAC;MACDd,QAAQ,EAAE;QACRa,KAAK,EAAEnB,MAAM,CAACqB;MAChB;IACF,CAAC;IACDC,WAAW,EAAE;MACXjB,OAAO,EAAE;QACPH,UAAU;QACVC,QAAQ;QACRgB,KAAK,EAAEnB,MAAM,CAACqB;MAChB,CAAC;MACDf,QAAQ,EAAE;QACRa,KAAK,EAAEnB,MAAM,CAACqB;MAChB;IACF,CAAC;IACDE,OAAO,EAAE;MACPlB,OAAO,EAAE,CAAC,CAAC;MACXC,QAAQ,EAAE,CAAC;IACb,CAAC;IACDkB,OAAO,EAAE;MACPnB,OAAO,EAAE;QACPW,eAAe,EAAEhB,MAAM,CAACyB,OAAO;QAC/Bd,YAAY,EAAEV,MAAM;QACpBO,WAAW,EAAE,CAAC;QACdC,WAAW,EAAET,MAAM,CAACU,MAAM;QAC1BgB,OAAO,EAAE,CAAC;QACVC,GAAG,EAAE;MACP,CAAC;MACDrB,QAAQ,EAAE,CAAC;IACb,CAAC;IACDsB,MAAM,EAAE;MACNvB,OAAO,EAAE;QACPQ,eAAe,EAAE,EAAE;QACnBC,iBAAiB,EAAE,EAAE;QACrBZ,UAAU;QACVC,QAAQ;QACRgB,KAAK,EAAEnB,MAAM,CAACoB,UAAU;QACxBT,YAAY,EAAEV,MAAM,GAAG;MACzB,CAAC;MACDK,QAAQ,EAAE;QACRa,KAAK,EAAEnB,MAAM,CAACqB;MAChB,CAAC;MACDQ,QAAQ,EAAE;QACRb,eAAe,EAAEhB,MAAM,CAACiB;MAC1B,CAAC;MACDa,OAAO,EAAE;QACPd,eAAe,EAAEhB,MAAM,CAACiB;MAC1B;IACF;EACF,CAAC,CACH,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["useThemedStyles","useSelectVariantDefault","colors","radius","fontFamily","fontSize","root","default","disabled","trigger","borderWidth","borderColor","border","borderRadius","backgroundColor","surface","justifyContent","paddingVertical","paddingHorizontal","minHeight","muted","value","color","foreground","mutedForeground","placeholder","overlay","content","padding","gap","option","selected","hovered"],"sourceRoot":"../../../../../src","sources":["components/select/variants/default.tsx"],"mappings":";;AACA,SAASA,eAAe,QAAQ,qCAAkC;AAElE,OAAO,SAASC,uBAAuBA,CAAA,EAAiB;EACtD,OAAOD,eAAe,CACpB,CAAC;IAAEE,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAS,CAAC,MAAoB;IAC3DC,IAAI,EAAE;MACJC,OAAO,EAAE,CAAC,CAAC;MACXC,QAAQ,EAAE,CAAC;IACb,CAAC;IACDC,OAAO,EAAE;MACPF,OAAO,EAAE;QACPG,WAAW,EAAE,CAAC;QACdC,WAAW,EAAET,MAAM,CAACU,MAAM;QAC1BC,YAAY,EAAEV,MAAM;QACpBW,eAAe,EAAEZ,MAAM,CAACa,OAAO;QAC/BC,cAAc,EAAE,QAAQ;QACxBC,eAAe,EAAE,EAAE;QACnBC,iBAAiB,EAAE,EAAE;QACrBC,SAAS,EAAE;MACb,CAAC;MACDX,QAAQ,EAAE;QACRM,eAAe,EAAEZ,MAAM,CAACkB;MAC1B;IACF,CAAC;IACDC,KAAK,EAAE;MACLd,OAAO,EAAE;QACPH,UAAU;QACVC,QAAQ;QACRiB,KAAK,EAAEpB,MAAM,CAACqB;MAChB,CAAC;MACDf,QAAQ,EAAE;QACRc,KAAK,EAAEpB,MAAM,CAACsB;MAChB;IACF,CAAC;IACDC,WAAW,EAAE;MACXlB,OAAO,EAAE;QACPH,UAAU;QACVC,QAAQ;QACRiB,KAAK,EAAEpB,MAAM,CAACsB;MAChB,CAAC;MACDhB,QAAQ,EAAE;QACRc,KAAK,EAAEpB,MAAM,CAACsB;MAChB;IACF,CAAC;IACDE,OAAO,EAAE;MACPnB,OAAO,EAAE,CAAC,CAAC;MACXC,QAAQ,EAAE,CAAC;IACb,CAAC;IACDmB,OAAO,EAAE;MACPpB,OAAO,EAAE;QACPO,eAAe,EAAEZ,MAAM,CAACa,OAAO;QAC/BF,YAAY,EAAEV,MAAM;QACpBO,WAAW,EAAE,CAAC;QACdC,WAAW,EAAET,MAAM,CAACU,MAAM;QAC1BgB,OAAO,EAAE,CAAC;QACVC,GAAG,EAAE;MACP,CAAC;MACDrB,QAAQ,EAAE,CAAC;IACb,CAAC;IACDsB,MAAM,EAAE;MACNvB,OAAO,EAAE;QACPU,eAAe,EAAE,EAAE;QACnBC,iBAAiB,EAAE,EAAE;QACrBd,UAAU;QACVC,QAAQ;QACRiB,KAAK,EAAEpB,MAAM,CAACqB,UAAU;QACxBV,YAAY,EAAEV,MAAM,GAAG;MACzB,CAAC;MACDK,QAAQ,EAAE;QACRc,KAAK,EAAEpB,MAAM,CAACsB;MAChB,CAAC;MACDO,QAAQ,EAAE;QACRjB,eAAe,EAAEZ,MAAM,CAACkB;MAC1B,CAAC;MACDY,OAAO,EAAE;QACPlB,eAAe,EAAEZ,MAAM,CAACkB;MAC1B;IACF;EACF,CAAC,CACH,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ import React from "react";
4
+ import { View } from "react-native";
5
+ import { useToast } from "../context.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ export function ToastBody(props) {
8
+ const toast = useToast();
9
+ const composedStyle = [toast.styles?.body, props.style];
10
+ const Component = props.render ?? View;
11
+ return /*#__PURE__*/_jsx(Component, {
12
+ ...props,
13
+ style: composedStyle
14
+ });
15
+ }
16
+ //# sourceMappingURL=toast-body.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","useToast","jsx","_jsx","ToastBody","props","toast","composedStyle","styles","body","style","Component","render"],"sourceRoot":"../../../../../src","sources":["components/toast/components/toast-body.tsx"],"mappings":";;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAyBC,IAAI,QAAwB,cAAc;AACnE,SAASC,QAAQ,QAAQ,eAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQtC,OAAO,SAASC,SAASA,CAACC,KAAsC,EAAE;EAChE,MAAMC,KAAK,GAAGL,QAAQ,CAAC,CAAC;EAExB,MAAMM,aAAa,GAAG,CAACD,KAAK,CAACE,MAAM,EAAEC,IAAI,EAAEJ,KAAK,CAACK,KAAK,CAAC;EAEvD,MAAMC,SAAS,GAAGN,KAAK,CAACO,MAAM,IAAIZ,IAAI;EACtC,oBAAOG,IAAA,CAACQ,SAAS;IAAA,GAAKN,KAAK;IAAEK,KAAK,EAAEH;EAAc,CAAE,CAAC;AACvD","ignoreList":[]}
@@ -3,8 +3,11 @@
3
3
  import React, { useSyncExternalStore } from "react";
4
4
  import { StyleSheet, View } from "react-native";
5
5
  import { useSafeAreaInsets } from "../../safe-area/index.js";
6
+ import { useComponentsConfig } from "../../themes/index.js";
6
7
  import { Portal } from "../portal/index.js";
8
+ import { ToastBody } from "./components/toast-body.js";
7
9
  import { ToastDescription } from "./components/toast-description.js";
10
+ import { ToastIcon } from "./components/toast-icon.js";
8
11
  import { ToastRoot } from "./components/toast-root.js";
9
12
  import { ToastTitle } from "./components/toast-title.js";
10
13
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
@@ -73,12 +76,19 @@ export function ToastContainer() {
73
76
  });
74
77
  }
75
78
  export function ToastComponent(props) {
79
+ const config = useComponentsConfig();
80
+ const variant = props.variant ?? "default";
81
+ const IconComponent = config?.toast?.icons?.[variant];
76
82
  return /*#__PURE__*/_jsxs(ToastRoot, {
77
- variant: props.variant,
78
- children: [/*#__PURE__*/_jsx(ToastTitle, {
79
- children: props.title
80
- }), !!props.description && /*#__PURE__*/_jsx(ToastDescription, {
81
- children: props.description
83
+ variant: variant,
84
+ children: [!!IconComponent && /*#__PURE__*/_jsx(ToastIcon, {
85
+ render: IconComponent
86
+ }), /*#__PURE__*/_jsxs(ToastBody, {
87
+ children: [/*#__PURE__*/_jsx(ToastTitle, {
88
+ children: props.title
89
+ }), !!props.description && /*#__PURE__*/_jsx(ToastDescription, {
90
+ children: props.description
91
+ })]
82
92
  })]
83
93
  });
84
94
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","useSyncExternalStore","StyleSheet","View","useSafeAreaInsets","Portal","ToastDescription","ToastRoot","ToastTitle","jsx","_jsx","jsxs","_jsxs","TOAST_PORTAL_NAME","store","toasts","listeners","Set","emit","cb","getSnapshot","subscribe","add","delete","addToast","config","existingToast","find","t","id","toast","duration","setTimeout","removeToast","filter","ToastAPI","show","dismiss","ToastContainer","insets","length","name","children","style","s","wrapper","top","map","ToastComponent","title","description","variant","props","create","width","alignItems","position","gap"],"sourceRoot":"../../../../src","sources":["components/toast/manager.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,oBAAoB,QAAQ,OAAO;AACnD,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,iBAAiB,QAAQ,0BAAiB;AACnD,SAASC,MAAM,QAAQ,oBAAW;AAClC,SAASC,gBAAgB,QAAQ,mCAAgC;AACjE,SAASC,SAAS,QAAQ,4BAAyB;AACnD,SAASC,UAAU,QAAQ,6BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAGtD,OAAO,MAAMC,iBAAiB,GAAG,cAAc;AAe/C,MAAMC,KAAiB,GAAG;EACxBC,MAAM,EAAE,EAAE;EACVC,SAAS,EAAE,IAAIC,GAAG,CAAC;AACrB,CAAC;AAED,SAASC,IAAIA,CAAA,EAAG;EACd,KAAK,MAAMC,EAAE,IAAIL,KAAK,CAACE,SAAS,EAAEG,EAAE,CAAC,CAAC;AACxC;AAEA,SAASC,WAAWA,CAAA,EAAG;EACrB,OAAON,KAAK,CAACC,MAAM;AACrB;AAEA,SAASM,SAASA,CAACF,EAAc,EAAE;EACjCL,KAAK,CAACE,SAAS,CAACM,GAAG,CAACH,EAAE,CAAC;EACvB,OAAO,MAAM;IACXL,KAAK,CAACE,SAAS,CAACO,MAAM,CAACJ,EAAE,CAAC;EAC5B,CAAC;AACH;AAEA,SAASK,QAAQA,CAACC,MAAmB,EAAU;EAC7C;EACA,MAAMC,aAAa,GAAGZ,KAAK,CAACC,MAAM,CAACY,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,KAAKJ,MAAM,CAACI,EAAE,CAAC;EAClE,IAAIH,aAAa,EAAE;IACjB,OAAOA,aAAa,CAACG,EAAE;EACzB;EAEA,MAAMC,KAAkB,GAAG;IACzBC,QAAQ,EAAE,IAAI;IACd,GAAGN;EACL,CAAC;EAEDX,KAAK,CAACC,MAAM,GAAG,CAAC,GAAGD,KAAK,CAACC,MAAM,EAAEe,KAAK,CAAC;EACvCZ,IAAI,CAAC,CAAC;;EAEN;EACA,IAAIY,KAAK,CAACC,QAAQ,EAAE;IAClBC,UAAU,CAAC,MAAM;MACfC,WAAW,CAACH,KAAK,CAACD,EAAE,CAAC;IACvB,CAAC,EAAEC,KAAK,CAACC,QAAQ,CAAC;EACpB;EAEA,OAAOD,KAAK,CAACD,EAAE;AACjB;AAEA,SAASI,WAAWA,CAACJ,EAAU,EAAQ;EACrCf,KAAK,CAACC,MAAM,GAAGD,KAAK,CAACC,MAAM,CAACmB,MAAM,CAAEN,CAAC,IAAKA,CAAC,CAACC,EAAE,KAAKA,EAAE,CAAC;EACtDX,IAAI,CAAC,CAAC;AACR;AAEA,OAAO,MAAMiB,QAAQ,GAAG;EACtBC,IAAI,EAAEZ,QAAQ;EACda,OAAO,EAAEJ;AACX,CAAC;AAED,OAAO,SAASK,cAAcA,CAAA,EAAG;EAC/B,MAAMvB,MAAM,GAAGd,oBAAoB,CAACoB,SAAS,EAAED,WAAW,CAAC;EAC3D,MAAMmB,MAAM,GAAGnC,iBAAiB,CAAC,CAAC;EAElC,IAAI,CAACW,MAAM,CAACyB,MAAM,EAAE,OAAO,IAAI;EAE/B,oBACE9B,IAAA,CAACL,MAAM;IAACoC,IAAI,EAAE5B,iBAAkB;IAAA6B,QAAA,eAC9BhC,IAAA,CAACP,IAAI;MAACwC,KAAK,EAAE,CAACC,CAAC,CAACC,OAAO,EAAE;QAAEC,GAAG,EAAEP,MAAM,CAACO,GAAG,GAAG;MAAG,CAAC,CAAE;MAAAJ,QAAA,EAChD3B,MAAM,CAACgC,GAAG,CAAEjB,KAAK,iBAChBpB,IAAA,CAACsC,cAAc;QAEbC,KAAK,EAAEnB,KAAK,CAACmB,KAAM;QACnBC,WAAW,EAAEpB,KAAK,CAACoB,WAAY;QAC/BC,OAAO,EAAErB,KAAK,CAACqB;MAAQ,GAHlBrB,KAAK,CAACD,EAIZ,CACF;IAAC,CACE;EAAC,CACD,CAAC;AAEb;AASA,OAAO,SAASmB,cAAcA,CAACI,KAAiB,EAAE;EAChD,oBACExC,KAAA,CAACL,SAAS;IAAC4C,OAAO,EAAEC,KAAK,CAACD,OAAQ;IAAAT,QAAA,gBAChChC,IAAA,CAACF,UAAU;MAAAkC,QAAA,EAAEU,KAAK,CAACH;IAAK,CAAa,CAAC,EACrC,CAAC,CAACG,KAAK,CAACF,WAAW,iBAClBxC,IAAA,CAACJ,gBAAgB;MAAAoC,QAAA,EAAEU,KAAK,CAACF;IAAW,CAAmB,CACxD;EAAA,CACQ,CAAC;AAEhB;AAEA,MAAMN,CAAC,GAAG1C,UAAU,CAACmD,MAAM,CAAC;EAC1BR,OAAO,EAAE;IACPS,KAAK,EAAE,MAAM;IACbC,UAAU,EAAE,QAAQ;IACpBC,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE;EACP;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useSyncExternalStore","StyleSheet","View","useSafeAreaInsets","useComponentsConfig","Portal","ToastBody","ToastDescription","ToastIcon","ToastRoot","ToastTitle","jsx","_jsx","jsxs","_jsxs","TOAST_PORTAL_NAME","store","toasts","listeners","Set","emit","cb","getSnapshot","subscribe","add","delete","addToast","config","existingToast","find","t","id","toast","duration","setTimeout","removeToast","filter","ToastAPI","show","dismiss","ToastContainer","insets","length","name","children","style","s","wrapper","top","map","ToastComponent","title","description","variant","props","IconComponent","icons","render","create","width","alignItems","position","gap"],"sourceRoot":"../../../../src","sources":["components/toast/manager.tsx"],"mappings":"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","ignoreList":[]}
@@ -14,14 +14,18 @@ export const useToastVariantDanger = () => {
14
14
  borderColor: colors.danger,
15
15
  borderRadius: radius,
16
16
  padding: 16,
17
- gap: 4,
17
+ gap: 12,
18
18
  minWidth: 300,
19
19
  maxWidth: 400,
20
20
  flexDirection: "row"
21
21
  },
22
+ body: {
23
+ flex: 1,
24
+ gap: 4
25
+ },
22
26
  icon: {
23
27
  color: colors.foreground,
24
- size: 20,
28
+ size: 16,
25
29
  style: {
26
30
  marginTop: 2
27
31
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useThemedStyles","useToastVariantDanger","colors","radius","fontFamily","fontSize","root","backgroundColor","danger","borderWidth","borderColor","borderRadius","padding","gap","minWidth","maxWidth","flexDirection","icon","color","foreground","size","style","marginTop","title","fontWeight","description","opacity"],"sourceRoot":"../../../../../src","sources":["components/toast/variants/danger.tsx"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,qCAAkC;AAGlE,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAmB;EACtD,OAAOD,eAAe,CACpB,CAAC;IAAEE,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAS,CAAC,MAAmB;IAC1DC,IAAI,EAAE;MACJC,eAAe,EAAEL,MAAM,CAACM,MAAM;MAC9BC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAER,MAAM,CAACM,MAAM;MAC1BG,YAAY,EAAER,MAAM;MACpBS,OAAO,EAAE,EAAE;MACXC,GAAG,EAAE,CAAC;MACNC,QAAQ,EAAE,GAAG;MACbC,QAAQ,EAAE,GAAG;MACbC,aAAa,EAAE;IACjB,CAAC;IACDC,IAAI,EAAE;MACJC,KAAK,EAAEhB,MAAM,CAACiB,UAAU;MACxBC,IAAI,EAAE,EAAE;MACRC,KAAK,EAAE;QACLC,SAAS,EAAE;MACb;IACF,CAAC;IACDC,KAAK,EAAE;MACLL,KAAK,EAAEhB,MAAM,CAACiB,UAAU;MACxBd,QAAQ,EAAEA,QAAQ;MAClBmB,UAAU,EAAE,KAAK;MACjBpB;IACF,CAAC;IACDqB,WAAW,EAAE;MACXP,KAAK,EAAEhB,MAAM,CAACiB,UAAU;MACxBd,QAAQ,EAAEA,QAAQ,GAAG,KAAK;MAC1BD,UAAU;MACVsB,OAAO,EAAE;IACX;EACF,CAAC,CACH,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useThemedStyles","useToastVariantDanger","colors","radius","fontFamily","fontSize","root","backgroundColor","danger","borderWidth","borderColor","borderRadius","padding","gap","minWidth","maxWidth","flexDirection","body","flex","icon","color","foreground","size","style","marginTop","title","fontWeight","description","opacity"],"sourceRoot":"../../../../../src","sources":["components/toast/variants/danger.tsx"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,qCAAkC;AAGlE,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAmB;EACtD,OAAOD,eAAe,CACpB,CAAC;IAAEE,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAS,CAAC,MAAmB;IAC1DC,IAAI,EAAE;MACJC,eAAe,EAAEL,MAAM,CAACM,MAAM;MAC9BC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAER,MAAM,CAACM,MAAM;MAC1BG,YAAY,EAAER,MAAM;MACpBS,OAAO,EAAE,EAAE;MACXC,GAAG,EAAE,EAAE;MACPC,QAAQ,EAAE,GAAG;MACbC,QAAQ,EAAE,GAAG;MACbC,aAAa,EAAE;IACjB,CAAC;IACDC,IAAI,EAAE;MACJC,IAAI,EAAE,CAAC;MACPL,GAAG,EAAE;IACP,CAAC;IACDM,IAAI,EAAE;MACJC,KAAK,EAAElB,MAAM,CAACmB,UAAU;MACxBC,IAAI,EAAE,EAAE;MACRC,KAAK,EAAE;QACLC,SAAS,EAAE;MACb;IACF,CAAC;IACDC,KAAK,EAAE;MACLL,KAAK,EAAElB,MAAM,CAACmB,UAAU;MACxBhB,QAAQ,EAAEA,QAAQ;MAClBqB,UAAU,EAAE,KAAK;MACjBtB;IACF,CAAC;IACDuB,WAAW,EAAE;MACXP,KAAK,EAAElB,MAAM,CAACmB,UAAU;MACxBhB,QAAQ,EAAEA,QAAQ,GAAG,KAAK;MAC1BD,UAAU;MACVwB,OAAO,EAAE;IACX;EACF,CAAC,CACH,CAAC;AACH,CAAC","ignoreList":[]}
@@ -14,14 +14,18 @@ export const useToastVariantDefault = () => {
14
14
  borderColor: colors.border,
15
15
  borderRadius: radius,
16
16
  padding: 16,
17
- gap: 4,
17
+ gap: 12,
18
18
  minWidth: 300,
19
19
  maxWidth: 400,
20
20
  flexDirection: "row"
21
21
  },
22
+ body: {
23
+ flex: 1,
24
+ gap: 4
25
+ },
22
26
  icon: {
23
27
  color: colors.foreground,
24
- size: 20,
28
+ size: 16,
25
29
  style: {
26
30
  marginTop: 2
27
31
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useThemedStyles","useToastVariantDefault","colors","radius","fontFamily","fontSize","root","backgroundColor","surface","borderWidth","borderColor","border","borderRadius","padding","gap","minWidth","maxWidth","flexDirection","icon","color","foreground","size","style","marginTop","title","fontWeight","description","mutedForeground"],"sourceRoot":"../../../../../src","sources":["components/toast/variants/default.tsx"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,qCAAkC;AAGlE,OAAO,MAAMC,sBAAsB,GAAGA,CAAA,KAAmB;EACvD,OAAOD,eAAe,CACpB,CAAC;IAAEE,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAS,CAAC,MAAmB;IAC1DC,IAAI,EAAE;MACJC,eAAe,EAAEL,MAAM,CAACM,OAAO;MAC/BC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAER,MAAM,CAACS,MAAM;MAC1BC,YAAY,EAAET,MAAM;MACpBU,OAAO,EAAE,EAAE;MACXC,GAAG,EAAE,CAAC;MACNC,QAAQ,EAAE,GAAG;MACbC,QAAQ,EAAE,GAAG;MACbC,aAAa,EAAE;IACjB,CAAC;IACDC,IAAI,EAAE;MACJC,KAAK,EAAEjB,MAAM,CAACkB,UAAU;MACxBC,IAAI,EAAE,EAAE;MACRC,KAAK,EAAE;QACLC,SAAS,EAAE;MACb;IACF,CAAC;IACDC,KAAK,EAAE;MACLL,KAAK,EAAEjB,MAAM,CAACkB,UAAU;MACxBf,QAAQ,EAAEA,QAAQ;MAClBoB,UAAU,EAAE,KAAK;MACjBrB;IACF,CAAC;IACDsB,WAAW,EAAE;MACXP,KAAK,EAAEjB,MAAM,CAACyB,eAAe;MAC7BtB,QAAQ,EAAEA,QAAQ,GAAG,KAAK;MAC1BD;IACF;EACF,CAAC,CACH,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useThemedStyles","useToastVariantDefault","colors","radius","fontFamily","fontSize","root","backgroundColor","surface","borderWidth","borderColor","border","borderRadius","padding","gap","minWidth","maxWidth","flexDirection","body","flex","icon","color","foreground","size","style","marginTop","title","fontWeight","description","mutedForeground"],"sourceRoot":"../../../../../src","sources":["components/toast/variants/default.tsx"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,qCAAkC;AAGlE,OAAO,MAAMC,sBAAsB,GAAGA,CAAA,KAAmB;EACvD,OAAOD,eAAe,CACpB,CAAC;IAAEE,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAS,CAAC,MAAmB;IAC1DC,IAAI,EAAE;MACJC,eAAe,EAAEL,MAAM,CAACM,OAAO;MAC/BC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAER,MAAM,CAACS,MAAM;MAC1BC,YAAY,EAAET,MAAM;MACpBU,OAAO,EAAE,EAAE;MACXC,GAAG,EAAE,EAAE;MACPC,QAAQ,EAAE,GAAG;MACbC,QAAQ,EAAE,GAAG;MACbC,aAAa,EAAE;IACjB,CAAC;IACDC,IAAI,EAAE;MACJC,IAAI,EAAE,CAAC;MACPL,GAAG,EAAE;IACP,CAAC;IACDM,IAAI,EAAE;MACJC,KAAK,EAAEnB,MAAM,CAACoB,UAAU;MACxBC,IAAI,EAAE,EAAE;MACRC,KAAK,EAAE;QACLC,SAAS,EAAE;MACb;IACF,CAAC;IACDC,KAAK,EAAE;MACLL,KAAK,EAAEnB,MAAM,CAACoB,UAAU;MACxBjB,QAAQ,EAAEA,QAAQ;MAClBsB,UAAU,EAAE,KAAK;MACjBvB;IACF,CAAC;IACDwB,WAAW,EAAE;MACXP,KAAK,EAAEnB,MAAM,CAAC2B,eAAe;MAC7BxB,QAAQ,EAAEA,QAAQ,GAAG,KAAK;MAC1BD;IACF;EACF,CAAC,CACH,CAAC;AACH,CAAC","ignoreList":[]}
@@ -14,14 +14,18 @@ export const useToastVariantSuccess = () => {
14
14
  borderColor: colors.success,
15
15
  borderRadius: radius,
16
16
  padding: 16,
17
- gap: 4,
17
+ gap: 12,
18
18
  minWidth: 300,
19
19
  maxWidth: 400,
20
20
  flexDirection: "row"
21
21
  },
22
+ body: {
23
+ flex: 1,
24
+ gap: 4
25
+ },
22
26
  icon: {
23
27
  color: colors.foreground,
24
- size: 20,
28
+ size: 16,
25
29
  style: {
26
30
  marginTop: 2
27
31
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useThemedStyles","useToastVariantSuccess","colors","radius","fontFamily","fontSize","root","backgroundColor","success","borderWidth","borderColor","borderRadius","padding","gap","minWidth","maxWidth","flexDirection","icon","color","foreground","size","style","marginTop","title","fontWeight","description","opacity"],"sourceRoot":"../../../../../src","sources":["components/toast/variants/success.tsx"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,qCAAkC;AAGlE,OAAO,MAAMC,sBAAsB,GAAGA,CAAA,KAAmB;EACvD,OAAOD,eAAe,CACpB,CAAC;IAAEE,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAS,CAAC,MAAmB;IAC1DC,IAAI,EAAE;MACJC,eAAe,EAAEL,MAAM,CAACM,OAAO;MAC/BC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAER,MAAM,CAACM,OAAO;MAC3BG,YAAY,EAAER,MAAM;MACpBS,OAAO,EAAE,EAAE;MACXC,GAAG,EAAE,CAAC;MACNC,QAAQ,EAAE,GAAG;MACbC,QAAQ,EAAE,GAAG;MACbC,aAAa,EAAE;IACjB,CAAC;IACDC,IAAI,EAAE;MACJC,KAAK,EAAEhB,MAAM,CAACiB,UAAU;MACxBC,IAAI,EAAE,EAAE;MACRC,KAAK,EAAE;QACLC,SAAS,EAAE;MACb;IACF,CAAC;IACDC,KAAK,EAAE;MACLL,KAAK,EAAEhB,MAAM,CAACiB,UAAU;MACxBd,QAAQ,EAAEA,QAAQ;MAClBmB,UAAU,EAAE,KAAK;MACjBpB;IACF,CAAC;IACDqB,WAAW,EAAE;MACXP,KAAK,EAAEhB,MAAM,CAACiB,UAAU;MACxBd,QAAQ,EAAEA,QAAQ,GAAG,KAAK;MAC1BD,UAAU;MACVsB,OAAO,EAAE;IACX;EACF,CAAC,CACH,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useThemedStyles","useToastVariantSuccess","colors","radius","fontFamily","fontSize","root","backgroundColor","success","borderWidth","borderColor","borderRadius","padding","gap","minWidth","maxWidth","flexDirection","body","flex","icon","color","foreground","size","style","marginTop","title","fontWeight","description","opacity"],"sourceRoot":"../../../../../src","sources":["components/toast/variants/success.tsx"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,qCAAkC;AAGlE,OAAO,MAAMC,sBAAsB,GAAGA,CAAA,KAAmB;EACvD,OAAOD,eAAe,CACpB,CAAC;IAAEE,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAS,CAAC,MAAmB;IAC1DC,IAAI,EAAE;MACJC,eAAe,EAAEL,MAAM,CAACM,OAAO;MAC/BC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAER,MAAM,CAACM,OAAO;MAC3BG,YAAY,EAAER,MAAM;MACpBS,OAAO,EAAE,EAAE;MACXC,GAAG,EAAE,EAAE;MACPC,QAAQ,EAAE,GAAG;MACbC,QAAQ,EAAE,GAAG;MACbC,aAAa,EAAE;IACjB,CAAC;IACDC,IAAI,EAAE;MACJC,IAAI,EAAE,CAAC;MACPL,GAAG,EAAE;IACP,CAAC;IACDM,IAAI,EAAE;MACJC,KAAK,EAAElB,MAAM,CAACmB,UAAU;MACxBC,IAAI,EAAE,EAAE;MACRC,KAAK,EAAE;QACLC,SAAS,EAAE;MACb;IACF,CAAC;IACDC,KAAK,EAAE;MACLL,KAAK,EAAElB,MAAM,CAACmB,UAAU;MACxBhB,QAAQ,EAAEA,QAAQ;MAClBqB,UAAU,EAAE,KAAK;MACjBtB;IACF,CAAC;IACDuB,WAAW,EAAE;MACXP,KAAK,EAAElB,MAAM,CAACmB,UAAU;MACxBhB,QAAQ,EAAEA,QAAQ,GAAG,KAAK;MAC1BD,UAAU;MACVwB,OAAO,EAAE;IACX;EACF,CAAC,CACH,CAAC;AACH,CAAC","ignoreList":[]}
@@ -10,12 +10,14 @@ export const UIProvider = ({
10
10
  children,
11
11
  portalContainer,
12
12
  theme,
13
- safeAreaInsets
13
+ safeAreaInsets,
14
+ components
14
15
  }) => {
15
16
  return /*#__PURE__*/_jsx(SafeAreaProvider, {
16
17
  insets: safeAreaInsets,
17
18
  children: /*#__PURE__*/_jsxs(ThemeProvider, {
18
19
  theme: theme,
20
+ components: components,
19
21
  children: [/*#__PURE__*/_jsx(ToastContainer, {}), children, /*#__PURE__*/_jsx(PortalHost, {
20
22
  container: portalContainer
21
23
  }), /*#__PURE__*/_jsx(AsyncAlertDialogManager, {})]
@@ -1 +1 @@
1
- {"version":3,"names":["AsyncAlertDialogManager","PortalHost","ToastContainer","SafeAreaProvider","ThemeProvider","jsx","_jsx","jsxs","_jsxs","UIProvider","children","portalContainer","theme","safeAreaInsets","insets","container","useTheme"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,uBAAuB,QAAQ,iDAA8C;AACtF,SAASC,UAAU,QAAQ,8BAAqB;AAEhD,SAASC,cAAc,QAAQ,+BAA4B;AAC3D,SAASC,gBAAgB,QAA6B,sBAAa;AACnE,SAASC,aAAa,QAAiC,mBAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AASlE,OAAO,MAAMC,UAAU,GAAGA,CAAC;EACzBC,QAAQ;EACRC,eAAe;EACfC,KAAK;EACLC;AACa,CAAC,KAAK;EACnB,oBACEP,IAAA,CAACH,gBAAgB;IAACW,MAAM,EAAED,cAAe;IAAAH,QAAA,eACvCF,KAAA,CAACJ,aAAa;MAACQ,KAAK,EAAEA,KAAM;MAAAF,QAAA,gBAC1BJ,IAAA,CAACJ,cAAc,IAAE,CAAC,EACjBQ,QAAQ,eACTJ,IAAA,CAACL,UAAU;QAACc,SAAS,EAAEJ;MAAgB,CAAE,CAAC,eAC1CL,IAAA,CAACN,uBAAuB,IAAE,CAAC;IAAA,CACd;EAAC,CACA,CAAC;AAEvB,CAAC;AAED,cAAc,4BAAyB;AAEvC,cAAc,4BAAmB;AACjC,cAAc,2BAAkB;AAChC,SAASgB,QAAQ,QAAQ,sBAAmB;AAC5C,cAAc,mBAAgB;AAE9B,cAAc,uBAAc;AAE5B,cAAc,sBAAa","ignoreList":[]}
1
+ {"version":3,"names":["AsyncAlertDialogManager","PortalHost","ToastContainer","SafeAreaProvider","ThemeProvider","jsx","_jsx","jsxs","_jsxs","UIProvider","children","portalContainer","theme","safeAreaInsets","components","insets","container","useTheme"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,uBAAuB,QAAQ,iDAA8C;AACtF,SAASC,UAAU,QAAQ,8BAAqB;AAEhD,SAASC,cAAc,QAAQ,+BAA4B;AAC3D,SAASC,gBAAgB,QAA6B,sBAAa;AACnE,SACEC,aAAa,QAGR,mBAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAUlB,OAAO,MAAMC,UAAU,GAAGA,CAAC;EACzBC,QAAQ;EACRC,eAAe;EACfC,KAAK;EACLC,cAAc;EACdC;AACa,CAAC,KAAK;EACnB,oBACER,IAAA,CAACH,gBAAgB;IAACY,MAAM,EAAEF,cAAe;IAAAH,QAAA,eACvCF,KAAA,CAACJ,aAAa;MAACQ,KAAK,EAAEA,KAAM;MAACE,UAAU,EAAEA,UAAW;MAAAJ,QAAA,gBAClDJ,IAAA,CAACJ,cAAc,IAAE,CAAC,EACjBQ,QAAQ,eACTJ,IAAA,CAACL,UAAU;QAACe,SAAS,EAAEL;MAAgB,CAAE,CAAC,eAC1CL,IAAA,CAACN,uBAAuB,IAAE,CAAC;IAAA,CACd;EAAC,CACA,CAAC;AAEvB,CAAC;AAED,cAAc,4BAAyB;AAEvC,cAAc,4BAAmB;AACjC,cAAc,2BAAkB;AAChC,SAASiB,QAAQ,QAA+B,sBAAmB;AACnE,cAAc,mBAAgB;AAE9B,cAAc,uBAAc;AAE5B,cAAc,sBAAa","ignoreList":[]}
@@ -9,7 +9,8 @@ const ThemeContext = /*#__PURE__*/createContext(null);
9
9
  export const ThemeProvider = props => {
10
10
  const {
11
11
  children,
12
- theme
12
+ theme,
13
+ components
13
14
  } = props;
14
15
  const systemColorScheme = useColorScheme();
15
16
  const [colorScheme, setColorScheme] = useState(systemColorScheme === "dark" ? "dark" : "light");
@@ -28,7 +29,8 @@ export const ThemeProvider = props => {
28
29
  radius: themeAssets.radius,
29
30
  fontFamily: themeAssets.fontFamily,
30
31
  letterSpacing: themeAssets.letterSpacing,
31
- fontSize: themeAssets.fontSize
32
+ fontSize: themeAssets.fontSize,
33
+ components
32
34
  },
33
35
  children: children
34
36
  });
@@ -40,4 +42,11 @@ export const useTheme = () => {
40
42
  }
41
43
  return context;
42
44
  };
45
+ export const useComponentsConfig = () => {
46
+ const context = useContext(ThemeContext);
47
+ if (!context) {
48
+ throw new Error("useComponentsConfig must be used within a ThemeProvider");
49
+ }
50
+ return context.components;
51
+ };
43
52
  //# sourceMappingURL=provider.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useContext","useEffect","useState","useColorScheme","defaultThemeAssets","mergeThemeAssets","jsx","_jsx","ThemeContext","ThemeProvider","props","children","theme","systemColorScheme","colorScheme","setColorScheme","themeAssets","colors","Provider","value","radius","fontFamily","letterSpacing","fontSize","useTheme","context","Error"],"sourceRoot":"../../../src","sources":["themes/provider.tsx"],"mappings":";;AAAA,SACEA,aAAa,EAEbC,UAAU,EACVC,SAAS,EACTC,QAAQ,QACH,OAAO;AACd,SAASC,cAAc,QAAQ,cAAc;AAE7C,SAASC,kBAAkB,QAAQ,oBAAW;AAU9C,SAASC,gBAAgB,QAAQ,YAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAY3C,MAAMC,YAAY,gBAAGT,aAAa,CAAsB,IAAI,CAAC;AAM7D,OAAO,MAAMU,aAAa,GAAIC,KAAyB,IAAK;EAC1D,MAAM;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAGF,KAAK;EAEjC,MAAMG,iBAAiB,GAAGV,cAAc,CAAC,CAAC;EAC1C,MAAM,CAACW,WAAW,EAAEC,cAAc,CAAC,GAAGb,QAAQ,CAC5CW,iBAAiB,KAAK,MAAM,GAAG,MAAM,GAAG,OAC1C,CAAC;EAED,MAAMG,WAAW,GAAGJ,KAAK,GACrBP,gBAAgB,CAACD,kBAAkB,EAAEQ,KAAK,CAAC,GAC3CR,kBAAkB;EAEtB,MAAMa,MAAM,GAAGD,WAAW,CAACC,MAAM,CAACH,WAAW,CAAC;EAE9Cb,SAAS,CAAC,MAAM;IACd,IAAIY,iBAAiB,EAAE;MACrBE,cAAc,CAACF,iBAAiB,KAAK,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACjE;EACF,CAAC,EAAE,CAACA,iBAAiB,CAAC,CAAC;EAEvB,oBACEN,IAAA,CAACC,YAAY,CAACU,QAAQ;IACpBC,KAAK,EAAE;MACLL,WAAW;MACXC,cAAc;MACdE,MAAM;MACNG,MAAM,EAAEJ,WAAW,CAACI,MAAM;MAC1BC,UAAU,EAAEL,WAAW,CAACK,UAAU;MAClCC,aAAa,EAAEN,WAAW,CAACM,aAAa;MACxCC,QAAQ,EAAEP,WAAW,CAACO;IACxB,CAAE;IAAAZ,QAAA,EAEDA;EAAQ,CACY,CAAC;AAE5B,CAAC;AAED,OAAO,MAAMa,QAAQ,GAAGA,CAAA,KAAM;EAC5B,MAAMC,OAAO,GAAGzB,UAAU,CAACQ,YAAY,CAAC;EACxC,IAAI,CAACiB,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,8CAA8C,CAAC;EACjE;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createContext","useContext","useEffect","useState","useColorScheme","defaultThemeAssets","mergeThemeAssets","jsx","_jsx","ThemeContext","ThemeProvider","props","children","theme","components","systemColorScheme","colorScheme","setColorScheme","themeAssets","colors","Provider","value","radius","fontFamily","letterSpacing","fontSize","useTheme","context","Error","useComponentsConfig"],"sourceRoot":"../../../src","sources":["themes/provider.tsx"],"mappings":";;AAAA,SACEA,aAAa,EAEbC,UAAU,EACVC,SAAS,EACTC,QAAQ,QACH,OAAO;AACd,SAASC,cAAc,QAAQ,cAAc;AAI7C,SAASC,kBAAkB,QAAQ,oBAAW;AAU9C,SAASC,gBAAgB,QAAQ,YAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAqB3C,MAAMC,YAAY,gBAAGT,aAAa,CAAsB,IAAI,CAAC;AAO7D,OAAO,MAAMU,aAAa,GAAIC,KAAyB,IAAK;EAC1D,MAAM;IAAEC,QAAQ;IAAEC,KAAK;IAAEC;EAAW,CAAC,GAAGH,KAAK;EAE7C,MAAMI,iBAAiB,GAAGX,cAAc,CAAC,CAAC;EAC1C,MAAM,CAACY,WAAW,EAAEC,cAAc,CAAC,GAAGd,QAAQ,CAC5CY,iBAAiB,KAAK,MAAM,GAAG,MAAM,GAAG,OAC1C,CAAC;EAED,MAAMG,WAAW,GAAGL,KAAK,GACrBP,gBAAgB,CAACD,kBAAkB,EAAEQ,KAAK,CAAC,GAC3CR,kBAAkB;EAEtB,MAAMc,MAAM,GAAGD,WAAW,CAACC,MAAM,CAACH,WAAW,CAAC;EAE9Cd,SAAS,CAAC,MAAM;IACd,IAAIa,iBAAiB,EAAE;MACrBE,cAAc,CAACF,iBAAiB,KAAK,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACjE;EACF,CAAC,EAAE,CAACA,iBAAiB,CAAC,CAAC;EAEvB,oBACEP,IAAA,CAACC,YAAY,CAACW,QAAQ;IACpBC,KAAK,EAAE;MACLL,WAAW;MACXC,cAAc;MACdE,MAAM;MACNG,MAAM,EAAEJ,WAAW,CAACI,MAAM;MAC1BC,UAAU,EAAEL,WAAW,CAACK,UAAU;MAClCC,aAAa,EAAEN,WAAW,CAACM,aAAa;MACxCC,QAAQ,EAAEP,WAAW,CAACO,QAAQ;MAC9BX;IACF,CAAE;IAAAF,QAAA,EAEDA;EAAQ,CACY,CAAC;AAE5B,CAAC;AAED,OAAO,MAAMc,QAAQ,GAAGA,CAAA,KAAM;EAC5B,MAAMC,OAAO,GAAG1B,UAAU,CAACQ,YAAY,CAAC;EACxC,IAAI,CAACkB,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,8CAA8C,CAAC;EACjE;EACA,OAAOD,OAAO;AAChB,CAAC;AAED,OAAO,MAAME,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMF,OAAO,GAAG1B,UAAU,CAACQ,YAAY,CAAC;EACxC,IAAI,CAACkB,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,yDAAyD,CAAC;EAC5E;EACA,OAAOD,OAAO,CAACb,UAAU;AAC3B,CAAC","ignoreList":[]}
@@ -2,5 +2,5 @@ import React from "react";
2
2
  export interface SelectPortalProps {
3
3
  children?: React.ReactNode;
4
4
  }
5
- export declare function SelectPortal(props: SelectPortalProps): React.JSX.Element | null;
5
+ export declare function SelectPortal(props: SelectPortalProps): React.JSX.Element;
6
6
  //# sourceMappingURL=select-portal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"select-portal.d.ts","sourceRoot":"","sources":["../../../../../../src/components/select/components/select-portal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAIzC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,4BAkBpD"}
1
+ {"version":3,"file":"select-portal.d.ts","sourceRoot":"","sources":["../../../../../../src/components/select/components/select-portal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAKzC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,qBA6BpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"select-trigger.d.ts","sourceRoot":"","sources":["../../../../../../src/components/select/components/select-trigger.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiB,MAAM,OAAO,CAAC;AACtC,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAMtB,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,qBAgCtD;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,qBAqBlD"}
1
+ {"version":3,"file":"select-trigger.d.ts","sourceRoot":"","sources":["../../../../../../src/components/select/components/select-trigger.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiB,MAAM,OAAO,CAAC;AACtC,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAMtB,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,qBAgCtD;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,qBAoBlD"}
@@ -1 +1 @@
1
- {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../../../src/components/select/variants/default.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,wBAAgB,uBAAuB,IAAI,YAAY,CA6EtD"}
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../../../src/components/select/variants/default.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,wBAAgB,uBAAuB,IAAI,YAAY,CA8EtD"}
@@ -0,0 +1,9 @@
1
+ import type { PropsWithRender } from "../../../types/props.types";
2
+ import React from "react";
3
+ import { type StyleProp, type ViewStyle } from "react-native";
4
+ export interface ToastBodyProps {
5
+ children?: React.ReactNode;
6
+ style?: StyleProp<ViewStyle>;
7
+ }
8
+ export declare function ToastBody(props: PropsWithRender<ToastBodyProps>): React.JSX.Element;
9
+ //# sourceMappingURL=toast-body.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast-body.d.ts","sourceRoot":"","sources":["../../../../../../src/components/toast/components/toast-body.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,SAAS,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAGpE,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,eAAe,CAAC,cAAc,CAAC,qBAO/D"}
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../../src/components/toast/manager.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAOpD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,OAAO,aAAa,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA2BD,iBAAS,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAuB7C;AAED,iBAAS,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAGrC;AAED,eAAO,MAAM,QAAQ;;;CAGpB,CAAC;AAEF,wBAAgB,cAAc,6BAoB7B;AAED,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,OAAO,CAAC,EAAE,MAAM,OAAO,aAAa,CAAC;CACtC;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,qBAS/C"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../../src/components/toast/manager.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAUpD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,OAAO,aAAa,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA2BD,iBAAS,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAuB7C;AAED,iBAAS,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAGrC;AAED,eAAO,MAAM,QAAQ;;;CAGpB,CAAC;AAEF,wBAAgB,cAAc,6BAoB7B;AAED,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,OAAO,CAAC,EAAE,MAAM,OAAO,aAAa,CAAC;CACtC;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,qBAgB/C"}
@@ -1,9 +1,11 @@
1
+ import type { ToastBodyProps } from "./components/toast-body";
1
2
  import type { ToastDescriptionProps } from "./components/toast-description";
2
3
  import type { ToastIconProps } from "./components/toast-icon";
3
4
  import type { ToastRootProps } from "./components/toast-root";
4
5
  import type { ToastTitleProps } from "./components/toast-title";
5
6
  export interface ToastStyles {
6
7
  root?: ToastRootProps["style"];
8
+ body?: ToastBodyProps["style"];
7
9
  icon?: ToastIconProps;
8
10
  title?: ToastTitleProps["style"];
9
11
  description?: ToastDescriptionProps["style"];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/toast/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,KAAK,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC;CAC9C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/toast/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,KAAK,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC;CAC9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"danger.d.ts","sourceRoot":"","sources":["../../../../../../src/components/toast/variants/danger.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,eAAO,MAAM,qBAAqB,QAAO,WAmCxC,CAAC"}
1
+ {"version":3,"file":"danger.d.ts","sourceRoot":"","sources":["../../../../../../src/components/toast/variants/danger.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,eAAO,MAAM,qBAAqB,QAAO,WAuCxC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../../../src/components/toast/variants/default.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,eAAO,MAAM,sBAAsB,QAAO,WAkCzC,CAAC"}
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../../../src/components/toast/variants/default.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,eAAO,MAAM,sBAAsB,QAAO,WAsCzC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"success.d.ts","sourceRoot":"","sources":["../../../../../../src/components/toast/variants/success.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,eAAO,MAAM,sBAAsB,QAAO,WAmCzC,CAAC"}
1
+ {"version":3,"file":"success.d.ts","sourceRoot":"","sources":["../../../../../../src/components/toast/variants/success.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,eAAO,MAAM,sBAAsB,QAAO,WAuCzC,CAAC"}
@@ -1,17 +1,18 @@
1
1
  import { type PortalHostProps } from "./components/portal/portal.constants";
2
2
  import { type SafeAreaInsets } from "./safe-area";
3
- import { type ThemeProviderProps } from "./themes";
3
+ import { type ComponentsConfig, type ThemeProviderProps } from "./themes";
4
4
  export interface ProviderProps {
5
5
  children: React.ReactNode;
6
6
  portalContainer?: PortalHostProps["container"];
7
7
  theme?: ThemeProviderProps["theme"];
8
8
  safeAreaInsets?: SafeAreaInsets;
9
+ components?: ComponentsConfig;
9
10
  }
10
- export declare const UIProvider: ({ children, portalContainer, theme, safeAreaInsets, }: ProviderProps) => import("react").JSX.Element;
11
+ export declare const UIProvider: ({ children, portalContainer, theme, safeAreaInsets, components, }: ProviderProps) => import("react").JSX.Element;
11
12
  export * from "./hooks/use-screen-size";
12
13
  export * from "./themes/adapters";
13
14
  export * from "./themes/default";
14
- export { useTheme } from "./themes/provider";
15
+ export { useTheme, type ComponentsConfig } from "./themes/provider";
15
16
  export * from "./themes/types";
16
17
  export * from "./components";
17
18
  export * from "./safe-area";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAiB,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAElE,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,eAAe,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;IAC/C,KAAK,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACpC,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,eAAO,MAAM,UAAU,GAAI,uDAKxB,aAAa,gCAWf,CAAC;AAEF,cAAc,yBAAyB,CAAC;AAExC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,cAAc,gBAAgB,CAAC;AAE/B,cAAc,cAAc,CAAC;AAE7B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,eAAe,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;IAC/C,KAAK,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACpC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED,eAAO,MAAM,UAAU,GAAI,mEAMxB,aAAa,gCAWf,CAAC;AAEF,cAAc,yBAAyB,CAAC;AAExC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACpE,cAAc,gBAAgB,CAAC;AAE/B,cAAc,cAAc,CAAC;AAE7B,cAAc,aAAa,CAAC"}
@@ -1,4 +1,6 @@
1
1
  import { type PropsWithChildren } from "react";
2
+ import type { ToastVariants } from "../components/toast/variants";
3
+ import type { SvgProps } from "../types/props.types";
2
4
  import type { DeepPartial } from "../types/util.types";
3
5
  import type { Colors, ColorScheme, FontFamily, FontSize, LetterSpacing, Radius, ThemeAssets } from "./types";
4
6
  interface ThemeContext {
@@ -9,12 +11,20 @@ interface ThemeContext {
9
11
  letterSpacing: LetterSpacing;
10
12
  fontSize: FontSize;
11
13
  setColorScheme: (scheme: ColorScheme) => void;
14
+ components?: ComponentsConfig;
15
+ }
16
+ export interface ComponentsConfig {
17
+ toast?: {
18
+ icons?: Partial<Record<keyof typeof ToastVariants, (props: SvgProps) => React.ReactNode>>;
19
+ };
12
20
  }
13
21
  declare const ThemeContext: import("react").Context<ThemeContext | null>;
14
22
  export interface ThemeProviderProps extends PropsWithChildren {
15
23
  theme?: DeepPartial<ThemeAssets>;
24
+ components?: ComponentsConfig;
16
25
  }
17
26
  export declare const ThemeProvider: (props: ThemeProviderProps) => import("react").JSX.Element;
18
27
  export declare const useTheme: () => ThemeContext;
28
+ export declare const useComponentsConfig: () => ComponentsConfig | undefined;
19
29
  export {};
20
30
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../../src/themes/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EAIvB,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,UAAU,EACV,QAAQ,EACR,aAAa,EACb,MAAM,EACN,WAAW,EACZ,MAAM,SAAS,CAAC;AAGjB,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;CAC/C;AAED,QAAA,MAAM,YAAY,8CAA2C,CAAC;AAE9D,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,KAAK,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,aAAa,GAAI,OAAO,kBAAkB,gCAmCtD,CAAC;AAEF,eAAO,MAAM,QAAQ,oBAMpB,CAAC"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../../src/themes/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EAIvB,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,UAAU,EACV,QAAQ,EACR,aAAa,EACb,MAAM,EACN,WAAW,EACZ,MAAM,SAAS,CAAC;AAGjB,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IAC9C,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE;QACN,KAAK,CAAC,EAAE,OAAO,CACb,MAAM,CAAC,MAAM,OAAO,aAAa,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,KAAK,CAAC,SAAS,CAAC,CACzE,CAAC;KACH,CAAC;CACH;AAED,QAAA,MAAM,YAAY,8CAA2C,CAAC;AAE9D,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,KAAK,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED,eAAO,MAAM,aAAa,GAAI,OAAO,kBAAkB,gCAoCtD,CAAC;AAEF,eAAO,MAAM,QAAQ,oBAMpB,CAAC;AAEF,eAAO,MAAM,mBAAmB,oCAM/B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@korsolutions/ui",
3
- "version": "0.0.54",
3
+ "version": "0.0.56",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,4 +1,5 @@
1
1
  import React, { useEffect } from "react";
2
+ import { View } from "react-native";
2
3
  import { Portal } from "../../portal";
3
4
  import { SelectContext, useSelect } from "../context";
4
5
 
@@ -16,12 +17,23 @@ export function SelectPortal(props: SelectPortalProps) {
16
17
  }, []);
17
18
 
18
19
  if (!select.isOpen) {
19
- return null;
20
+ return (
21
+ <View
22
+ style={{ display: "none" }}
23
+ aria-hidden
24
+ accessibilityElementsHidden
25
+ importantForAccessibility="no-hide-descendants"
26
+ >
27
+ {props.children}
28
+ </View>
29
+ );
20
30
  }
21
31
 
22
32
  return (
23
33
  <Portal name="select-portal">
24
- <SelectContext.Provider value={select}>{props.children}</SelectContext.Provider>
34
+ <SelectContext.Provider value={select}>
35
+ {props.children}
36
+ </SelectContext.Provider>
25
37
  </Portal>
26
38
  );
27
39
  }
@@ -62,18 +62,17 @@ export function SelectValue(props: SelectValueProps) {
62
62
  (option) => option.value === select.value,
63
63
  );
64
64
  const selectedOptionLabel = selectedOption?.label;
65
+ const displayValue = selectedOptionLabel ?? select.value;
65
66
 
66
67
  const composedStyles = calculateComposedStyles(
67
68
  select.styles,
68
69
  select.state,
69
- selectedOptionLabel ? "value" : "placeholder",
70
+ displayValue ? "value" : "placeholder",
70
71
  );
71
- if (typeof selectedOptionLabel !== "string") {
72
- return <>{selectedOptionLabel}</>;
72
+ if (!!displayValue && typeof displayValue !== "string") {
73
+ return <>{displayValue}</>;
73
74
  }
74
75
  return (
75
- <Text style={composedStyles}>
76
- {selectedOptionLabel ?? props.placeholder}
77
- </Text>
76
+ <Text style={composedStyles}>{displayValue ?? props.placeholder}</Text>
78
77
  );
79
78
  }
@@ -13,6 +13,7 @@ export function useSelectVariantDefault(): SelectStyles {
13
13
  borderWidth: 1,
14
14
  borderColor: colors.border,
15
15
  borderRadius: radius,
16
+ backgroundColor: colors.surface,
16
17
  justifyContent: "center",
17
18
  paddingVertical: 12,
18
19
  paddingHorizontal: 16,
@@ -0,0 +1,19 @@
1
+ import type { PropsWithRender } from "../../../types/props.types";
2
+ import React from "react";
3
+ import { type StyleProp, View, type ViewStyle } from "react-native";
4
+ import { useToast } from "../context";
5
+
6
+ export interface ToastBodyProps {
7
+ children?: React.ReactNode;
8
+
9
+ style?: StyleProp<ViewStyle>;
10
+ }
11
+
12
+ export function ToastBody(props: PropsWithRender<ToastBodyProps>) {
13
+ const toast = useToast();
14
+
15
+ const composedStyle = [toast.styles?.body, props.style];
16
+
17
+ const Component = props.render ?? View;
18
+ return <Component {...props} style={composedStyle} />;
19
+ }
@@ -1,8 +1,11 @@
1
1
  import React, { useSyncExternalStore } from "react";
2
2
  import { StyleSheet, View } from "react-native";
3
3
  import { useSafeAreaInsets } from "../../safe-area";
4
+ import { useComponentsConfig } from "../../themes";
4
5
  import { Portal } from "../portal";
6
+ import { ToastBody } from "./components/toast-body";
5
7
  import { ToastDescription } from "./components/toast-description";
8
+ import { ToastIcon } from "./components/toast-icon";
6
9
  import { ToastRoot } from "./components/toast-root";
7
10
  import { ToastTitle } from "./components/toast-title";
8
11
  import { ToastVariants } from "./variants";
@@ -107,12 +110,19 @@ interface ToastProps {
107
110
  }
108
111
 
109
112
  export function ToastComponent(props: ToastProps) {
113
+ const config = useComponentsConfig();
114
+ const variant = props.variant ?? "default";
115
+ const IconComponent = config?.toast?.icons?.[variant];
116
+
110
117
  return (
111
- <ToastRoot variant={props.variant}>
112
- <ToastTitle>{props.title}</ToastTitle>
113
- {!!props.description && (
114
- <ToastDescription>{props.description}</ToastDescription>
115
- )}
118
+ <ToastRoot variant={variant}>
119
+ {!!IconComponent && <ToastIcon render={IconComponent} />}
120
+ <ToastBody>
121
+ <ToastTitle>{props.title}</ToastTitle>
122
+ {!!props.description && (
123
+ <ToastDescription>{props.description}</ToastDescription>
124
+ )}
125
+ </ToastBody>
116
126
  </ToastRoot>
117
127
  );
118
128
  }
@@ -1,3 +1,4 @@
1
+ import type { ToastBodyProps } from "./components/toast-body";
1
2
  import type { ToastDescriptionProps } from "./components/toast-description";
2
3
  import type { ToastIconProps } from "./components/toast-icon";
3
4
  import type { ToastRootProps } from "./components/toast-root";
@@ -5,6 +6,7 @@ import type { ToastTitleProps } from "./components/toast-title";
5
6
 
6
7
  export interface ToastStyles {
7
8
  root?: ToastRootProps["style"];
9
+ body?: ToastBodyProps["style"];
8
10
  icon?: ToastIconProps;
9
11
  title?: ToastTitleProps["style"];
10
12
  description?: ToastDescriptionProps["style"];
@@ -10,14 +10,18 @@ export const useToastVariantDanger = (): ToastStyles => {
10
10
  borderColor: colors.danger,
11
11
  borderRadius: radius,
12
12
  padding: 16,
13
- gap: 4,
13
+ gap: 12,
14
14
  minWidth: 300,
15
15
  maxWidth: 400,
16
16
  flexDirection: "row",
17
17
  },
18
+ body: {
19
+ flex: 1,
20
+ gap: 4,
21
+ },
18
22
  icon: {
19
23
  color: colors.foreground,
20
- size: 20,
24
+ size: 16,
21
25
  style: {
22
26
  marginTop: 2,
23
27
  },
@@ -10,14 +10,18 @@ export const useToastVariantDefault = (): ToastStyles => {
10
10
  borderColor: colors.border,
11
11
  borderRadius: radius,
12
12
  padding: 16,
13
- gap: 4,
13
+ gap: 12,
14
14
  minWidth: 300,
15
15
  maxWidth: 400,
16
16
  flexDirection: "row",
17
17
  },
18
+ body: {
19
+ flex: 1,
20
+ gap: 4,
21
+ },
18
22
  icon: {
19
23
  color: colors.foreground,
20
- size: 20,
24
+ size: 16,
21
25
  style: {
22
26
  marginTop: 2,
23
27
  },
@@ -10,14 +10,18 @@ export const useToastVariantSuccess = (): ToastStyles => {
10
10
  borderColor: colors.success,
11
11
  borderRadius: radius,
12
12
  padding: 16,
13
- gap: 4,
13
+ gap: 12,
14
14
  minWidth: 300,
15
15
  maxWidth: 400,
16
16
  flexDirection: "row",
17
17
  },
18
+ body: {
19
+ flex: 1,
20
+ gap: 4,
21
+ },
18
22
  icon: {
19
23
  color: colors.foreground,
20
- size: 20,
24
+ size: 16,
21
25
  style: {
22
26
  marginTop: 2,
23
27
  },
package/src/index.tsx CHANGED
@@ -3,13 +3,18 @@ import { PortalHost } from "./components/portal";
3
3
  import { type PortalHostProps } from "./components/portal/portal.constants";
4
4
  import { ToastContainer } from "./components/toast/manager";
5
5
  import { SafeAreaProvider, type SafeAreaInsets } from "./safe-area";
6
- import { ThemeProvider, type ThemeProviderProps } from "./themes";
6
+ import {
7
+ ThemeProvider,
8
+ type ComponentsConfig,
9
+ type ThemeProviderProps,
10
+ } from "./themes";
7
11
 
8
12
  export interface ProviderProps {
9
13
  children: React.ReactNode;
10
14
  portalContainer?: PortalHostProps["container"];
11
15
  theme?: ThemeProviderProps["theme"];
12
16
  safeAreaInsets?: SafeAreaInsets;
17
+ components?: ComponentsConfig;
13
18
  }
14
19
 
15
20
  export const UIProvider = ({
@@ -17,10 +22,11 @@ export const UIProvider = ({
17
22
  portalContainer,
18
23
  theme,
19
24
  safeAreaInsets,
25
+ components,
20
26
  }: ProviderProps) => {
21
27
  return (
22
28
  <SafeAreaProvider insets={safeAreaInsets}>
23
- <ThemeProvider theme={theme}>
29
+ <ThemeProvider theme={theme} components={components}>
24
30
  <ToastContainer />
25
31
  {children}
26
32
  <PortalHost container={portalContainer} />
@@ -34,7 +40,7 @@ export * from "./hooks/use-screen-size";
34
40
 
35
41
  export * from "./themes/adapters";
36
42
  export * from "./themes/default";
37
- export { useTheme } from "./themes/provider";
43
+ export { useTheme, type ComponentsConfig } from "./themes/provider";
38
44
  export * from "./themes/types";
39
45
 
40
46
  export * from "./components";
@@ -6,6 +6,8 @@ import {
6
6
  useState,
7
7
  } from "react";
8
8
  import { useColorScheme } from "react-native";
9
+ import type { ToastVariants } from "../components/toast/variants";
10
+ import type { SvgProps } from "../types/props.types";
9
11
  import type { DeepPartial } from "../types/util.types";
10
12
  import { defaultThemeAssets } from "./default";
11
13
  import type {
@@ -27,16 +29,26 @@ interface ThemeContext {
27
29
  letterSpacing: LetterSpacing;
28
30
  fontSize: FontSize;
29
31
  setColorScheme: (scheme: ColorScheme) => void;
32
+ components?: ComponentsConfig;
33
+ }
34
+
35
+ export interface ComponentsConfig {
36
+ toast?: {
37
+ icons?: Partial<
38
+ Record<keyof typeof ToastVariants, (props: SvgProps) => React.ReactNode>
39
+ >;
40
+ };
30
41
  }
31
42
 
32
43
  const ThemeContext = createContext<ThemeContext | null>(null);
33
44
 
34
45
  export interface ThemeProviderProps extends PropsWithChildren {
35
46
  theme?: DeepPartial<ThemeAssets>;
47
+ components?: ComponentsConfig;
36
48
  }
37
49
 
38
50
  export const ThemeProvider = (props: ThemeProviderProps) => {
39
- const { children, theme } = props;
51
+ const { children, theme, components } = props;
40
52
 
41
53
  const systemColorScheme = useColorScheme();
42
54
  const [colorScheme, setColorScheme] = useState<ColorScheme>(
@@ -65,6 +77,7 @@ export const ThemeProvider = (props: ThemeProviderProps) => {
65
77
  fontFamily: themeAssets.fontFamily,
66
78
  letterSpacing: themeAssets.letterSpacing,
67
79
  fontSize: themeAssets.fontSize,
80
+ components,
68
81
  }}
69
82
  >
70
83
  {children}
@@ -79,3 +92,11 @@ export const useTheme = () => {
79
92
  }
80
93
  return context;
81
94
  };
95
+
96
+ export const useComponentsConfig = () => {
97
+ const context = useContext(ThemeContext);
98
+ if (!context) {
99
+ throw new Error("useComponentsConfig must be used within a ThemeProvider");
100
+ }
101
+ return context.components;
102
+ };