@oxyhq/bloom 0.1.6 → 0.1.8

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 (70) hide show
  1. package/lib/commonjs/avatar/Avatar.js +12 -3
  2. package/lib/commonjs/avatar/Avatar.js.map +1 -1
  3. package/lib/commonjs/button/Button.js +53 -19
  4. package/lib/commonjs/button/Button.js.map +1 -1
  5. package/lib/commonjs/collapsible/Collapsible.js +42 -3
  6. package/lib/commonjs/collapsible/Collapsible.js.map +1 -1
  7. package/lib/commonjs/image-resolver/context.js +20 -0
  8. package/lib/commonjs/image-resolver/context.js.map +1 -0
  9. package/lib/commonjs/image-resolver/index.js +19 -0
  10. package/lib/commonjs/image-resolver/index.js.map +1 -0
  11. package/lib/commonjs/loading/Loading.js +2 -1
  12. package/lib/commonjs/loading/Loading.js.map +1 -1
  13. package/lib/commonjs/skeleton/index.js +31 -8
  14. package/lib/commonjs/skeleton/index.js.map +1 -1
  15. package/lib/commonjs/styles/tokens.js +31 -1
  16. package/lib/commonjs/styles/tokens.js.map +1 -1
  17. package/lib/commonjs/switch/Switch.js +10 -7
  18. package/lib/commonjs/switch/Switch.js.map +1 -1
  19. package/lib/module/avatar/Avatar.js +12 -3
  20. package/lib/module/avatar/Avatar.js.map +1 -1
  21. package/lib/module/button/Button.js +55 -21
  22. package/lib/module/button/Button.js.map +1 -1
  23. package/lib/module/collapsible/Collapsible.js +44 -5
  24. package/lib/module/collapsible/Collapsible.js.map +1 -1
  25. package/lib/module/image-resolver/context.js +16 -0
  26. package/lib/module/image-resolver/context.js.map +1 -0
  27. package/lib/module/image-resolver/index.js +4 -0
  28. package/lib/module/image-resolver/index.js.map +1 -0
  29. package/lib/module/loading/Loading.js +2 -1
  30. package/lib/module/loading/Loading.js.map +1 -1
  31. package/lib/module/skeleton/index.js +31 -8
  32. package/lib/module/skeleton/index.js.map +1 -1
  33. package/lib/module/styles/tokens.js +30 -0
  34. package/lib/module/styles/tokens.js.map +1 -1
  35. package/lib/module/switch/Switch.js +10 -7
  36. package/lib/module/switch/Switch.js.map +1 -1
  37. package/lib/typescript/commonjs/avatar/Avatar.d.ts.map +1 -1
  38. package/lib/typescript/commonjs/button/Button.d.ts.map +1 -1
  39. package/lib/typescript/commonjs/collapsible/Collapsible.d.ts.map +1 -1
  40. package/lib/typescript/commonjs/image-resolver/context.d.ts +8 -0
  41. package/lib/typescript/commonjs/image-resolver/context.d.ts.map +1 -0
  42. package/lib/typescript/commonjs/image-resolver/index.d.ts +2 -0
  43. package/lib/typescript/commonjs/image-resolver/index.d.ts.map +1 -0
  44. package/lib/typescript/commonjs/loading/Loading.d.ts.map +1 -1
  45. package/lib/typescript/commonjs/skeleton/index.d.ts.map +1 -1
  46. package/lib/typescript/commonjs/styles/tokens.d.ts +29 -0
  47. package/lib/typescript/commonjs/styles/tokens.d.ts.map +1 -1
  48. package/lib/typescript/commonjs/switch/Switch.d.ts.map +1 -1
  49. package/lib/typescript/module/avatar/Avatar.d.ts.map +1 -1
  50. package/lib/typescript/module/button/Button.d.ts.map +1 -1
  51. package/lib/typescript/module/collapsible/Collapsible.d.ts.map +1 -1
  52. package/lib/typescript/module/image-resolver/context.d.ts +8 -0
  53. package/lib/typescript/module/image-resolver/context.d.ts.map +1 -0
  54. package/lib/typescript/module/image-resolver/index.d.ts +2 -0
  55. package/lib/typescript/module/image-resolver/index.d.ts.map +1 -0
  56. package/lib/typescript/module/loading/Loading.d.ts.map +1 -1
  57. package/lib/typescript/module/skeleton/index.d.ts.map +1 -1
  58. package/lib/typescript/module/styles/tokens.d.ts +29 -0
  59. package/lib/typescript/module/styles/tokens.d.ts.map +1 -1
  60. package/lib/typescript/module/switch/Switch.d.ts.map +1 -1
  61. package/package.json +12 -1
  62. package/src/avatar/Avatar.tsx +13 -3
  63. package/src/button/Button.tsx +53 -20
  64. package/src/collapsible/Collapsible.tsx +40 -6
  65. package/src/image-resolver/context.ts +16 -0
  66. package/src/image-resolver/index.ts +1 -0
  67. package/src/loading/Loading.tsx +2 -1
  68. package/src/skeleton/index.tsx +42 -12
  69. package/src/styles/tokens.ts +21 -0
  70. package/src/switch/Switch.tsx +5 -7
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","StyleSheet","useTheme","jsx","_jsx","Text","blend","style","colors","flattened","flatten","width","lineHeight","styles","textOuter","maxWidth","paddingVertical","children","textInner","backgroundColor","contrast50","height","opacity","Circle","size","circle","Pill","pill","Col","col","Row","row","create","flex","borderRadius","justifyContent","alignItems","flexDirection"],"sourceRoot":"../../../src","sources":["skeleton/index.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAkCC,UAAU,QAAQ,cAAc;AAE/E,SAASC,QAAQ,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAM9C,OAAO,SAASC,IAAIA,CAAC;EACnBC,KAAK;EACLC;AAIF,CAAC,EAAE;EACD,MAAM;IAAEC;EAAO,CAAC,GAAGN,QAAQ,CAAC,CAAC;EAC7B,MAAMO,SAAS,GAAGR,UAAU,CAACS,OAAO,CAACH,KAAK,CAAC;EAC3C,MAAMI,KAAK,GAAIF,SAAS,EAAgBE,KAAK;EAC7C,MAAMC,UAAU,GAAIH,SAAS,EAAEG,UAAU,IAAe,EAAE;EAE1D,oBACER,IAAA,CAACJ,IAAI;IACHO,KAAK,EAAE,CACLM,MAAM,CAACC,SAAS,EAChB;MAAEC,QAAQ,EAAEJ;IAAgB,CAAC,EAC7B;MAAEK,eAAe,EAAEJ,UAAU,GAAG;IAAK,CAAC,CACtC;IAAAK,QAAA,eACFb,IAAA,CAACJ,IAAI;MACHO,KAAK,EAAE,CACLM,MAAM,CAACK,SAAS,EAChB;QACEC,eAAe,EAAEX,MAAM,CAACY,UAAU;QAClCC,MAAM,EAAET,UAAU,GAAG,GAAG;QACxBU,OAAO,EAAEhB,KAAK,GAAG,GAAG,GAAG;MACzB,CAAC;IACD,CACH;EAAC,CACE,CAAC;AAEX;AAEA,OAAO,SAASiB,MAAMA,CAAC;EACrBN,QAAQ;EACRO,IAAI;EACJlB,KAAK;EACLC;AAMF,CAAC,EAAE;EACD,MAAM;IAAEC;EAAO,CAAC,GAAGN,QAAQ,CAAC,CAAC;EAC7B,oBACEE,IAAA,CAACJ,IAAI;IACHO,KAAK,EAAE,CACLM,MAAM,CAACY,MAAM,EACb;MACEN,eAAe,EAAEX,MAAM,CAACY,UAAU;MAClCT,KAAK,EAAEa,IAAI;MACXH,MAAM,EAAEG,IAAI;MACZF,OAAO,EAAEhB,KAAK,GAAG,GAAG,GAAG;IACzB,CAAC,EACDC,KAAK,CACL;IAAAU,QAAA,EACDA;EAAQ,CACL,CAAC;AAEX;AAEA,OAAO,SAASS,IAAIA,CAAC;EACnBF,IAAI;EACJlB,KAAK;EACLC;AAKF,CAAC,EAAE;EACD,MAAM;IAAEC;EAAO,CAAC,GAAGN,QAAQ,CAAC,CAAC;EAC7B,oBACEE,IAAA,CAACJ,IAAI;IACHO,KAAK,EAAE,CACLM,MAAM,CAACc,IAAI,EACX;MACER,eAAe,EAAEX,MAAM,CAACY,UAAU;MAClCT,KAAK,EAAEa,IAAI,GAAG,KAAK;MACnBH,MAAM,EAAEG,IAAI;MACZF,OAAO,EAAEhB,KAAK,GAAG,GAAG,GAAG;IACzB,CAAC,EACDC,KAAK;EACL,CACH,CAAC;AAEN;AAEA,OAAO,SAASqB,GAAGA,CAAC;EAClBX,QAAQ;EACRV;AAIF,CAAC,EAAE;EACD,oBAAOH,IAAA,CAACJ,IAAI;IAACO,KAAK,EAAE,CAACM,MAAM,CAACgB,GAAG,EAAEtB,KAAK,CAAE;IAAAU,QAAA,EAAEA;EAAQ,CAAO,CAAC;AAC5D;AAEA,OAAO,SAASa,GAAGA,CAAC;EAClBb,QAAQ;EACRV;AAIF,CAAC,EAAE;EACD,oBAAOH,IAAA,CAACJ,IAAI;IAACO,KAAK,EAAE,CAACM,MAAM,CAACkB,GAAG,EAAExB,KAAK,CAAE;IAAAU,QAAA,EAAEA;EAAQ,CAAO,CAAC;AAC5D;AAEA,MAAMJ,MAAM,GAAGZ,UAAU,CAAC+B,MAAM,CAAC;EAC/BlB,SAAS,EAAE;IACTmB,IAAI,EAAE;EACR,CAAC;EACDf,SAAS,EAAE;IACTgB,YAAY,EAAE;EAChB,CAAC;EACDT,MAAM,EAAE;IACNU,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBF,YAAY,EAAE;EAChB,CAAC;EACDP,IAAI,EAAE;IACJO,YAAY,EAAE;EAChB,CAAC;EACDL,GAAG,EAAE;IACHI,IAAI,EAAE;EACR,CAAC;EACDF,GAAG,EAAE;IACHM,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useRef","Animated","View","StyleSheet","useTheme","jsx","_jsx","SHIMMER_DURATION","SHIMMER_MIN_OPACITY","SHIMMER_MAX_OPACITY","useShimmer","opacity","Value","current","loop","sequence","timing","toValue","duration","useNativeDriver","start","stop","Text","blend","style","colors","shimmer","flattened","flatten","width","lineHeight","styles","textOuter","maxWidth","paddingVertical","children","textInner","backgroundColor","contrast50","height","multiply","Circle","size","circle","Pill","pill","Col","col","Row","row","create","flex","borderRadius","justifyContent","alignItems","flexDirection"],"sourceRoot":"../../../src","sources":["skeleton/index.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAChD,SAASC,QAAQ,EAAEC,IAAI,EAAkCC,UAAU,QAAQ,cAAc;AAEzF,SAASC,QAAQ,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE9C,MAAMC,gBAAgB,GAAG,IAAI;AAC7B,MAAMC,mBAAmB,GAAG,GAAG;AAC/B,MAAMC,mBAAmB,GAAG,CAAC;AAE7B,SAASC,UAAUA,CAAA,EAAG;EACpB,MAAMC,OAAO,GAAGX,MAAM,CAAC,IAAIC,QAAQ,CAACW,KAAK,CAACH,mBAAmB,CAAC,CAAC,CAACI,OAAO;EAEvEd,SAAS,CAAC,MAAM;IACd,MAAMe,IAAI,GAAGb,QAAQ,CAACa,IAAI,CACxBb,QAAQ,CAACc,QAAQ,CAAC,CAChBd,QAAQ,CAACe,MAAM,CAACL,OAAO,EAAE;MACvBM,OAAO,EAAET,mBAAmB;MAC5BU,QAAQ,EAAEX,gBAAgB,GAAG,CAAC;MAC9BY,eAAe,EAAE;IACnB,CAAC,CAAC,EACFlB,QAAQ,CAACe,MAAM,CAACL,OAAO,EAAE;MACvBM,OAAO,EAAER,mBAAmB;MAC5BS,QAAQ,EAAEX,gBAAgB,GAAG,CAAC;MAC9BY,eAAe,EAAE;IACnB,CAAC,CAAC,CACH,CACH,CAAC;IACDL,IAAI,CAACM,KAAK,CAAC,CAAC;IACZ,OAAO,MAAMN,IAAI,CAACO,IAAI,CAAC,CAAC;EAC1B,CAAC,EAAE,CAACV,OAAO,CAAC,CAAC;EAEb,OAAOA,OAAO;AAChB;AAEA,OAAO,SAASW,IAAIA,CAAC;EACnBC,KAAK;EACLC;AAIF,CAAC,EAAE;EACD,MAAM;IAAEC;EAAO,CAAC,GAAGrB,QAAQ,CAAC,CAAC;EAC7B,MAAMsB,OAAO,GAAGhB,UAAU,CAAC,CAAC;EAC5B,MAAMiB,SAAS,GAAGxB,UAAU,CAACyB,OAAO,CAACJ,KAAK,CAAC;EAC3C,MAAMK,KAAK,GAAIF,SAAS,EAAgBE,KAAK;EAC7C,MAAMC,UAAU,GAAIH,SAAS,EAAEG,UAAU,IAAe,EAAE;EAE1D,oBACExB,IAAA,CAACJ,IAAI;IACHsB,KAAK,EAAE,CACLO,MAAM,CAACC,SAAS,EAChB;MAAEC,QAAQ,EAAEJ;IAAgB,CAAC,EAC7B;MAAEK,eAAe,EAAEJ,UAAU,GAAG;IAAK,CAAC,CACtC;IAAAK,QAAA,eACF7B,IAAA,CAACL,QAAQ,CAACC,IAAI;MACZsB,KAAK,EAAE,CACLO,MAAM,CAACK,SAAS,EAChB;QACEC,eAAe,EAAEZ,MAAM,CAACa,UAAU;QAClCC,MAAM,EAAET,UAAU,GAAG,GAAG;QACxBnB,OAAO,EAAEV,QAAQ,CAACuC,QAAQ,CAACd,OAAO,EAAEH,KAAK,GAAG,GAAG,GAAG,CAAC;MACrD,CAAC;IACD,CACH;EAAC,CACE,CAAC;AAEX;AAEA,OAAO,SAASkB,MAAMA,CAAC;EACrBN,QAAQ;EACRO,IAAI;EACJnB,KAAK;EACLC;AAMF,CAAC,EAAE;EACD,MAAM;IAAEC;EAAO,CAAC,GAAGrB,QAAQ,CAAC,CAAC;EAC7B,MAAMsB,OAAO,GAAGhB,UAAU,CAAC,CAAC;EAE5B,oBACEJ,IAAA,CAACL,QAAQ,CAACC,IAAI;IACZsB,KAAK,EAAE,CACLO,MAAM,CAACY,MAAM,EACb;MACEN,eAAe,EAAEZ,MAAM,CAACa,UAAU;MAClCT,KAAK,EAAEa,IAAI;MACXH,MAAM,EAAEG,IAAI;MACZ/B,OAAO,EAAEV,QAAQ,CAACuC,QAAQ,CAACd,OAAO,EAAEH,KAAK,GAAG,GAAG,GAAG,CAAC;IACrD,CAAC,EACDC,KAAK,CACL;IAAAW,QAAA,EACDA;EAAQ,CACI,CAAC;AAEpB;AAEA,OAAO,SAASS,IAAIA,CAAC;EACnBF,IAAI;EACJnB,KAAK;EACLC;AAKF,CAAC,EAAE;EACD,MAAM;IAAEC;EAAO,CAAC,GAAGrB,QAAQ,CAAC,CAAC;EAC7B,MAAMsB,OAAO,GAAGhB,UAAU,CAAC,CAAC;EAE5B,oBACEJ,IAAA,CAACL,QAAQ,CAACC,IAAI;IACZsB,KAAK,EAAE,CACLO,MAAM,CAACc,IAAI,EACX;MACER,eAAe,EAAEZ,MAAM,CAACa,UAAU;MAClCT,KAAK,EAAEa,IAAI,GAAG,KAAK;MACnBH,MAAM,EAAEG,IAAI;MACZ/B,OAAO,EAAEV,QAAQ,CAACuC,QAAQ,CAACd,OAAO,EAAEH,KAAK,GAAG,GAAG,GAAG,CAAC;IACrD,CAAC,EACDC,KAAK;EACL,CACH,CAAC;AAEN;AAEA,OAAO,SAASsB,GAAGA,CAAC;EAClBX,QAAQ;EACRX;AAIF,CAAC,EAAE;EACD,oBAAOlB,IAAA,CAACJ,IAAI;IAACsB,KAAK,EAAE,CAACO,MAAM,CAACgB,GAAG,EAAEvB,KAAK,CAAE;IAAAW,QAAA,EAAEA;EAAQ,CAAO,CAAC;AAC5D;AAEA,OAAO,SAASa,GAAGA,CAAC;EAClBb,QAAQ;EACRX;AAIF,CAAC,EAAE;EACD,oBAAOlB,IAAA,CAACJ,IAAI;IAACsB,KAAK,EAAE,CAACO,MAAM,CAACkB,GAAG,EAAEzB,KAAK,CAAE;IAAAW,QAAA,EAAEA;EAAQ,CAAO,CAAC;AAC5D;AAEA,MAAMJ,MAAM,GAAG5B,UAAU,CAAC+C,MAAM,CAAC;EAC/BlB,SAAS,EAAE;IACTmB,IAAI,EAAE;EACR,CAAC;EACDf,SAAS,EAAE;IACTgB,YAAY,EAAE;EAChB,CAAC;EACDT,MAAM,EAAE;IACNU,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBF,YAAY,EAAE;EAChB,CAAC;EACDP,IAAI,EAAE;IACJO,YAAY,EAAE;EAChB,CAAC;EACDL,GAAG,EAAE;IACHI,IAAI,EAAE;EACR,CAAC;EACDF,GAAG,EAAE;IACHM,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -57,6 +57,36 @@ export const borderRadius = {
57
57
  full: 999
58
58
  };
59
59
 
60
+ /**
61
+ * Gradient definitions for icon system.
62
+ */
63
+ /**
64
+ * Animation timing and spring tokens.
65
+ * Centralized values ensure consistent motion across all components.
66
+ */
67
+ export const animation = {
68
+ duration: {
69
+ instant: 100,
70
+ fast: 150,
71
+ normal: 200,
72
+ slow: 300
73
+ },
74
+ spring: {
75
+ snappy: {
76
+ friction: 8,
77
+ tension: 100
78
+ },
79
+ gentle: {
80
+ friction: 8,
81
+ tension: 60
82
+ },
83
+ bouncy: {
84
+ friction: 6,
85
+ tension: 120
86
+ }
87
+ }
88
+ };
89
+
60
90
  /**
61
91
  * Gradient definitions for icon system.
62
92
  */
@@ -1 +1 @@
1
- {"version":3,"names":["space","_2xs","xs","sm","md","lg","xl","_2xl","_3xl","_4xl","_5xl","fontSize","lineHeight","tight","snug","normal","relaxed","borderRadius","full","gradients","primary","values","hover_value","sky"],"sourceRoot":"../../../src","sources":["styles/tokens.ts"],"mappings":";;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMA,KAAK,GAAG;EACnBC,IAAI,EAAE,CAAC;EACPC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA,OAAO,MAAMC,QAAQ,GAAG;EACtBV,IAAI,EAAE,EAAE;EACRC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA,OAAO,MAAME,UAAU,GAAG;EACxBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,GAAG;EACTC,MAAM,EAAE,GAAG;EACXC,OAAO,EAAE;AACX,CAAU;;AAEV;AACA;AACA;AACA,OAAO,MAAMC,YAAY,GAAG;EAC1BhB,IAAI,EAAE,CAAC;EACPC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,IAAI,EAAE,EAAE;EACRW,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA,OAAO,MAAMC,SAAS,GAAG;EACvBC,OAAO,EAAE;IACPC,MAAM,EAAE,CACN,CAAC,CAAC,EAAE,SAAS,CAAC,EACd,CAAC,GAAG,EAAE,SAAS,CAAC,EAChB,CAAC,GAAG,EAAE,SAAS,CAAC,EAChB,CAAC,CAAC,EAAE,SAAS,CAAC,CACY;IAC5BC,WAAW,EAAE;EACf,CAAC;EACDC,GAAG,EAAE;IACHF,MAAM,EAAE,CACN,CAAC,CAAC,EAAE,SAAS,CAAC,EACd,CAAC,CAAC,EAAE,SAAS,CAAC,CACY;IAC5BC,WAAW,EAAE;EACf;AACF,CAAU","ignoreList":[]}
1
+ {"version":3,"names":["space","_2xs","xs","sm","md","lg","xl","_2xl","_3xl","_4xl","_5xl","fontSize","lineHeight","tight","snug","normal","relaxed","borderRadius","full","animation","duration","instant","fast","slow","spring","snappy","friction","tension","gentle","bouncy","gradients","primary","values","hover_value","sky"],"sourceRoot":"../../../src","sources":["styles/tokens.ts"],"mappings":";;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMA,KAAK,GAAG;EACnBC,IAAI,EAAE,CAAC;EACPC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA,OAAO,MAAMC,QAAQ,GAAG;EACtBV,IAAI,EAAE,EAAE;EACRC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE,EAAE;EACRC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA,OAAO,MAAME,UAAU,GAAG;EACxBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,GAAG;EACTC,MAAM,EAAE,GAAG;EACXC,OAAO,EAAE;AACX,CAAU;;AAEV;AACA;AACA;AACA,OAAO,MAAMC,YAAY,GAAG;EAC1BhB,IAAI,EAAE,CAAC;EACPC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,IAAI,EAAE,EAAE;EACRW,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,SAAS,GAAG;EACvBC,QAAQ,EAAE;IACRC,OAAO,EAAE,GAAG;IACZC,IAAI,EAAE,GAAG;IACTP,MAAM,EAAE,GAAG;IACXQ,IAAI,EAAE;EACR,CAAC;EACDC,MAAM,EAAE;IACNC,MAAM,EAAE;MAAEC,QAAQ,EAAE,CAAC;MAAEC,OAAO,EAAE;IAAI,CAAC;IACrCC,MAAM,EAAE;MAAEF,QAAQ,EAAE,CAAC;MAAEC,OAAO,EAAE;IAAG,CAAC;IACpCE,MAAM,EAAE;MAAEH,QAAQ,EAAE,CAAC;MAAEC,OAAO,EAAE;IAAI;EACtC;AACF,CAAU;;AAEV;AACA;AACA;AACA,OAAO,MAAMG,SAAS,GAAG;EACvBC,OAAO,EAAE;IACPC,MAAM,EAAE,CACN,CAAC,CAAC,EAAE,SAAS,CAAC,EACd,CAAC,GAAG,EAAE,SAAS,CAAC,EAChB,CAAC,GAAG,EAAE,SAAS,CAAC,EAChB,CAAC,CAAC,EAAE,SAAS,CAAC,CACY;IAC5BC,WAAW,EAAE;EACf,CAAC;EACDC,GAAG,EAAE;IACHF,MAAM,EAAE,CACN,CAAC,CAAC,EAAE,SAAS,CAAC,EACd,CAAC,CAAC,EAAE,SAAS,CAAC,CACY;IAC5BC,WAAW,EAAE;EACf;AACF,CAAU","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import React, { memo, useEffect, useRef } from 'react';
4
4
  import { Pressable, Animated } from 'react-native';
5
5
  import { useTheme } from "../theme/use-theme.js";
6
+ import { animation } from "../styles/tokens.js";
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
7
8
  const TRACK = {
8
9
  default: {
@@ -36,8 +37,7 @@ const SwitchComponent = /*#__PURE__*/React.forwardRef(({
36
37
  Animated.spring(anim, {
37
38
  toValue: value ? 1 : 0,
38
39
  useNativeDriver: false,
39
- friction: 8,
40
- tension: 60
40
+ ...animation.spring.gentle
41
41
  }).start();
42
42
  }, [value, anim]);
43
43
  const onPressIn = () => {
@@ -45,16 +45,14 @@ const SwitchComponent = /*#__PURE__*/React.forwardRef(({
45
45
  Animated.spring(pressAnim, {
46
46
  toValue: 1,
47
47
  useNativeDriver: false,
48
- friction: 8,
49
- tension: 100
48
+ ...animation.spring.snappy
50
49
  }).start();
51
50
  };
52
51
  const onPressOut = () => {
53
52
  Animated.spring(pressAnim, {
54
53
  toValue: 0,
55
54
  useNativeDriver: false,
56
- friction: 8,
57
- tension: 60
55
+ ...animation.spring.gentle
58
56
  }).start();
59
57
  };
60
58
  const track = TRACK[size];
@@ -91,7 +89,12 @@ const SwitchComponent = /*#__PURE__*/React.forwardRef(({
91
89
  style: [{
92
90
  opacity: disabled ? 0.4 : 1
93
91
  }, style],
94
- hitSlop: 4,
92
+ hitSlop: {
93
+ top: 8,
94
+ bottom: 8,
95
+ left: 8,
96
+ right: 8
97
+ },
95
98
  testID: testID,
96
99
  children: /*#__PURE__*/_jsx(Animated.View, {
97
100
  style: {
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useEffect","useRef","Pressable","Animated","useTheme","jsx","_jsx","TRACK","default","w","h","sm","THUMB","PADDING","SQUEEZE_RATIO","SwitchComponent","forwardRef","value","onValueChange","disabled","style","size","testID","ref","theme","anim","Value","current","pressAnim","spring","toValue","useNativeDriver","friction","tension","start","onPressIn","onPressOut","track","thumb","travel","trackBg","interpolate","inputRange","outputRange","colors","border","primary","thumbX","squeezedHeight","thumbHeight","thumbRadius","role","accessibilityState","checked","onPress","opacity","hitSlop","children","View","width","height","borderRadius","backgroundColor","justifyContent","alignItems","transform","translateX","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","displayName","Switch"],"sourceRoot":"../../../src","sources":["switch/Switch.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","useEffect","useRef","Pressable","Animated","useTheme","animation","jsx","_jsx","TRACK","default","w","h","sm","THUMB","PADDING","SQUEEZE_RATIO","SwitchComponent","forwardRef","value","onValueChange","disabled","style","size","testID","ref","theme","anim","Value","current","pressAnim","spring","toValue","useNativeDriver","gentle","start","onPressIn","snappy","onPressOut","track","thumb","travel","trackBg","interpolate","inputRange","outputRange","colors","border","primary","thumbX","squeezedHeight","thumbHeight","thumbRadius","role","accessibilityState","checked","onPress","opacity","hitSlop","top","bottom","left","right","children","View","width","height","borderRadius","backgroundColor","justifyContent","alignItems","transform","translateX","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","displayName","Switch"],"sourceRoot":"../../../src","sources":["switch/Switch.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../../src/avatar/Avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAI/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAgO3C,eAAO,MAAM,MAAM,yCAAwB,CAAC"}
1
+ {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../../src/avatar/Avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAK/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAyO3C,eAAO,MAAM,MAAM,yCAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAI7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AA2ItE,eAAO,MAAM,MAAM,yCAAwB,CAAC;AAG5C,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,eAAe,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEtE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,WAAW,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAElE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAKlE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AA2KtE,eAAO,MAAM,MAAM,yCAAwB,CAAC;AAG5C,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,eAAe,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEtE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,WAAW,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAElE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyB,MAAM,OAAO,CAAC;AAI9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAwDhD,eAAO,MAAM,WAAW,8CAA6B,CAAC"}
1
+ {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyD,MAAM,OAAO,CAAC;AAK9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAyFhD,eAAO,MAAM,WAAW,8CAA6B,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * A function that resolves opaque identifiers (e.g. file IDs) to
3
+ * loadable image URLs. Returns `undefined` when no URL is available yet.
4
+ */
5
+ export type ImageResolver = (id: string) => string | undefined;
6
+ export declare const ImageResolverProvider: import("react").Provider<ImageResolver | null>;
7
+ export declare function useImageResolver(): ImageResolver | null;
8
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/image-resolver/context.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;AAK/D,eAAO,MAAM,qBAAqB,gDAAgC,CAAC;AAEnE,wBAAgB,gBAAgB,IAAI,aAAa,GAAG,IAAI,CAEvD"}
@@ -0,0 +1,2 @@
1
+ export { ImageResolverProvider, useImageResolver, type ImageResolver } from './context';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/image-resolver/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Loading.d.ts","sourceRoot":"","sources":["../../../../src/loading/Loading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAC;AAKxD,OAAO,KAAK,EACV,YAAY,EAKb,MAAM,SAAS,CAAC;AAmNjB,eAAO,MAAM,OAAO,0CAAyB,CAAC"}
1
+ {"version":3,"file":"Loading.d.ts","sourceRoot":"","sources":["../../../../src/loading/Loading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAC;AAMxD,OAAO,KAAK,EACV,YAAY,EAKb,MAAM,SAAS,CAAC;AAmNjB,eAAO,MAAM,OAAO,0CAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/skeleton/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAc,MAAM,cAAc,CAAC;AAQhF,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CAyBA;AAED,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAiBA;AAED,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAgBA;AAED,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;AAED,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/skeleton/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAc,MAAM,cAAc,CAAC;AAiC1F,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CA0BA;AAED,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAmBA;AAED,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAkBA;AAED,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;AAED,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA"}
@@ -51,6 +51,35 @@ export declare const borderRadius: {
51
51
  readonly _2xl: 24;
52
52
  readonly full: 999;
53
53
  };
54
+ /**
55
+ * Gradient definitions for icon system.
56
+ */
57
+ /**
58
+ * Animation timing and spring tokens.
59
+ * Centralized values ensure consistent motion across all components.
60
+ */
61
+ export declare const animation: {
62
+ readonly duration: {
63
+ readonly instant: 100;
64
+ readonly fast: 150;
65
+ readonly normal: 200;
66
+ readonly slow: 300;
67
+ };
68
+ readonly spring: {
69
+ readonly snappy: {
70
+ readonly friction: 8;
71
+ readonly tension: 100;
72
+ };
73
+ readonly gentle: {
74
+ readonly friction: 8;
75
+ readonly tension: 60;
76
+ };
77
+ readonly bouncy: {
78
+ readonly friction: 6;
79
+ readonly tension: 120;
80
+ };
81
+ };
82
+ };
54
83
  /**
55
84
  * Gradient definitions for icon system.
56
85
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../src/styles/tokens.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;CAWR,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;CAWX,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;CASf,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,SAAS;;yBAOb,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;yBAOvB,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;CAGtB,CAAC"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../src/styles/tokens.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;CAWR,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;CAWX,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;CASf,CAAC;AAEX;;GAEG;AACH;;;GAGG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;CAYZ,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,SAAS;;yBAOb,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;yBAOvB,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;CAGtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../../../src/switch/Switch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAIvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAgH3C,eAAO,MAAM,MAAM,4FAAwB,CAAC"}
1
+ {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../../../src/switch/Switch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAKvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA6G3C,eAAO,MAAM,MAAM,4FAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../../src/avatar/Avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAI/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAgO3C,eAAO,MAAM,MAAM,yCAAwB,CAAC"}
1
+ {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../../src/avatar/Avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAK/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAyO3C,eAAO,MAAM,MAAM,yCAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAI7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AA2ItE,eAAO,MAAM,MAAM,yCAAwB,CAAC;AAG5C,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,eAAe,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEtE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,WAAW,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAElE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAKlE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AA2KtE,eAAO,MAAM,MAAM,yCAAwB,CAAC;AAG5C,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,eAAe,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEtE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,WAAW,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAElE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyB,MAAM,OAAO,CAAC;AAI9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAwDhD,eAAO,MAAM,WAAW,8CAA6B,CAAC"}
1
+ {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyD,MAAM,OAAO,CAAC;AAK9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAyFhD,eAAO,MAAM,WAAW,8CAA6B,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * A function that resolves opaque identifiers (e.g. file IDs) to
3
+ * loadable image URLs. Returns `undefined` when no URL is available yet.
4
+ */
5
+ export type ImageResolver = (id: string) => string | undefined;
6
+ export declare const ImageResolverProvider: import("react").Provider<ImageResolver | null>;
7
+ export declare function useImageResolver(): ImageResolver | null;
8
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/image-resolver/context.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;AAK/D,eAAO,MAAM,qBAAqB,gDAAgC,CAAC;AAEnE,wBAAgB,gBAAgB,IAAI,aAAa,GAAG,IAAI,CAEvD"}
@@ -0,0 +1,2 @@
1
+ export { ImageResolverProvider, useImageResolver, type ImageResolver } from './context';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/image-resolver/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Loading.d.ts","sourceRoot":"","sources":["../../../../src/loading/Loading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAC;AAKxD,OAAO,KAAK,EACV,YAAY,EAKb,MAAM,SAAS,CAAC;AAmNjB,eAAO,MAAM,OAAO,0CAAyB,CAAC"}
1
+ {"version":3,"file":"Loading.d.ts","sourceRoot":"","sources":["../../../../src/loading/Loading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAC;AAMxD,OAAO,KAAK,EACV,YAAY,EAKb,MAAM,SAAS,CAAC;AAmNjB,eAAO,MAAM,OAAO,0CAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/skeleton/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAc,MAAM,cAAc,CAAC;AAQhF,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CAyBA;AAED,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAiBA;AAED,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAgBA;AAED,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;AAED,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/skeleton/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAc,MAAM,cAAc,CAAC;AAiC1F,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CA0BA;AAED,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAmBA;AAED,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAkBA;AAED,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;AAED,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA"}
@@ -51,6 +51,35 @@ export declare const borderRadius: {
51
51
  readonly _2xl: 24;
52
52
  readonly full: 999;
53
53
  };
54
+ /**
55
+ * Gradient definitions for icon system.
56
+ */
57
+ /**
58
+ * Animation timing and spring tokens.
59
+ * Centralized values ensure consistent motion across all components.
60
+ */
61
+ export declare const animation: {
62
+ readonly duration: {
63
+ readonly instant: 100;
64
+ readonly fast: 150;
65
+ readonly normal: 200;
66
+ readonly slow: 300;
67
+ };
68
+ readonly spring: {
69
+ readonly snappy: {
70
+ readonly friction: 8;
71
+ readonly tension: 100;
72
+ };
73
+ readonly gentle: {
74
+ readonly friction: 8;
75
+ readonly tension: 60;
76
+ };
77
+ readonly bouncy: {
78
+ readonly friction: 6;
79
+ readonly tension: 120;
80
+ };
81
+ };
82
+ };
54
83
  /**
55
84
  * Gradient definitions for icon system.
56
85
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../src/styles/tokens.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;CAWR,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;CAWX,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;CASf,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,SAAS;;yBAOb,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;yBAOvB,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;CAGtB,CAAC"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../src/styles/tokens.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;CAWR,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;CAWX,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;CASf,CAAC;AAEX;;GAEG;AACH;;;GAGG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;CAYZ,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,SAAS;;yBAOb,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;yBAOvB,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;CAGtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../../../src/switch/Switch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAIvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAgH3C,eAAO,MAAM,MAAM,4FAAwB,CAAC"}
1
+ {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../../../src/switch/Switch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAKvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA6G3C,eAAO,MAAM,MAAM,4FAAwB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxyhq/bloom",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "description": "Bloom UI — Oxy ecosystem component library for React Native + Expo + Web",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -23,6 +23,17 @@
23
23
  "default": "./lib/commonjs/index.js"
24
24
  }
25
25
  },
26
+ "./image-resolver": {
27
+ "react-native": "./src/image-resolver/index.ts",
28
+ "import": {
29
+ "types": "./lib/typescript/module/image-resolver/index.d.ts",
30
+ "default": "./lib/module/image-resolver/index.js"
31
+ },
32
+ "require": {
33
+ "types": "./lib/typescript/commonjs/image-resolver/index.d.ts",
34
+ "default": "./lib/commonjs/image-resolver/index.js"
35
+ }
36
+ },
26
37
  "./theme": {
27
38
  "react-native": "./src/theme/index.ts",
28
39
  "import": {
@@ -2,6 +2,7 @@ import React, { memo, useMemo, useRef, useState } from 'react';
2
2
  import { View, Image, StyleSheet, TouchableOpacity } from 'react-native';
3
3
 
4
4
  import { useTheme } from '../theme/use-theme';
5
+ import { useImageResolver } from '../image-resolver/context';
5
6
  import type { AvatarProps } from './types';
6
7
 
7
8
  // Squircle clip path normalized to 0–1 coordinate space (viewBox="0 0 1 1").
@@ -131,11 +132,20 @@ const AvatarComponent: React.FC<AvatarProps> = ({
131
132
  }
132
133
  }
133
134
 
134
- // Resolve source prop: string → uri, object → ImageSourcePropType
135
+ const imageResolver = useImageResolver();
136
+
137
+ // Resolve source prop: string → uri, object → ImageSourcePropType.
138
+ // HTTP/data URLs pass through directly. Non-URL strings (e.g. file
139
+ // IDs) are resolved via the app-provided ImageResolver if available.
135
140
  const resolvedUri = useMemo(() => {
136
- if (typeof source === 'string') return source;
141
+ if (typeof source === 'string') {
142
+ if (source.startsWith('http://') || source.startsWith('https://') || source.startsWith('data:')) {
143
+ return source;
144
+ }
145
+ return imageResolver?.(source);
146
+ }
137
147
  return uri;
138
- }, [source, uri]);
148
+ }, [source, uri, imageResolver]);
139
149
 
140
150
  const resolvedImageSource = useMemo(() => {
141
151
  if (source != null && typeof source !== 'string') return source;
@@ -1,7 +1,8 @@
1
- import React, { useMemo, memo } from 'react';
2
- import { TouchableOpacity, Text, Platform, type ViewStyle, type TextStyle } from 'react-native';
1
+ import React, { useCallback, useMemo, useRef, memo } from 'react';
2
+ import { Pressable, Text, Platform, Animated, type ViewStyle, type TextStyle } from 'react-native';
3
3
 
4
4
  import { useTheme } from '../theme/use-theme';
5
+ import { animation } from '../styles/tokens';
5
6
  import type { ButtonProps } from './types';
6
7
 
7
8
  export type { ButtonProps, ButtonVariant, ButtonSize } from './types';
@@ -29,6 +30,9 @@ const SIZE_CONFIG = {
29
30
 
30
31
  const ICON_HIT_SLOP = { top: 10, bottom: 10, left: 10, right: 10 } as const;
31
32
 
33
+ const PRESS_SCALE = 0.97;
34
+ const SCALE_VARIANTS = new Set<string>(['primary', 'secondary']);
35
+
32
36
  const ButtonComponent: React.FC<ButtonProps> = ({
33
37
  onPress,
34
38
  children,
@@ -46,6 +50,26 @@ const ButtonComponent: React.FC<ButtonProps> = ({
46
50
  testID,
47
51
  }) => {
48
52
  const theme = useTheme();
53
+ const scaleAnim = useRef(new Animated.Value(1)).current;
54
+ const hasScaleFeedback = SCALE_VARIANTS.has(variant);
55
+
56
+ const onPressIn = useCallback(() => {
57
+ if (!hasScaleFeedback) return;
58
+ Animated.spring(scaleAnim, {
59
+ toValue: PRESS_SCALE,
60
+ useNativeDriver: true,
61
+ ...animation.spring.snappy,
62
+ }).start();
63
+ }, [scaleAnim, hasScaleFeedback]);
64
+
65
+ const onPressOut = useCallback(() => {
66
+ if (!hasScaleFeedback) return;
67
+ Animated.spring(scaleAnim, {
68
+ toValue: 1,
69
+ useNativeDriver: true,
70
+ ...animation.spring.gentle,
71
+ }).start();
72
+ }, [scaleAnim, hasScaleFeedback]);
49
73
 
50
74
  const baseStyles = useMemo((): ViewStyle => {
51
75
  const sizeConfig = SIZE_CONFIG[size];
@@ -120,26 +144,35 @@ const ButtonComponent: React.FC<ButtonProps> = ({
120
144
  }, [variant, size, theme]);
121
145
 
122
146
  const defaultHitSlop = variant === 'icon' ? ICON_HIT_SLOP : undefined;
147
+ const resolvedActiveOpacity = activeOpacity ?? (variant === 'icon' ? 0.7 : 0.8);
123
148
 
124
149
  return (
125
- <TouchableOpacity
126
- style={[baseStyles, disabled && { opacity: 0.5 }, style]}
127
- onPress={onPress}
128
- disabled={disabled}
129
- activeOpacity={activeOpacity ?? (variant === 'icon' ? 0.7 : 0.8)}
130
- hitSlop={hitSlop ?? defaultHitSlop}
131
- accessibilityLabel={accessibilityLabel}
132
- accessibilityHint={accessibilityHint}
133
- accessibilityRole="button"
134
- accessibilityState={{ disabled }}
135
- testID={testID}
136
- >
137
- {iconPosition === 'left' && icon}
138
- {children != null && (
139
- <Text style={[computedTextStyle, textStyle]}>{children}</Text>
140
- )}
141
- {iconPosition === 'right' && icon}
142
- </TouchableOpacity>
150
+ <Animated.View style={hasScaleFeedback ? { transform: [{ scale: scaleAnim }] } : undefined}>
151
+ <Pressable
152
+ style={({ pressed }) => [
153
+ baseStyles,
154
+ disabled && { opacity: 0.5 },
155
+ pressed && !hasScaleFeedback && { opacity: resolvedActiveOpacity },
156
+ style,
157
+ ]}
158
+ onPress={onPress}
159
+ onPressIn={onPressIn}
160
+ onPressOut={onPressOut}
161
+ disabled={disabled}
162
+ hitSlop={hitSlop ?? defaultHitSlop}
163
+ accessibilityLabel={accessibilityLabel}
164
+ accessibilityHint={accessibilityHint}
165
+ accessibilityRole="button"
166
+ accessibilityState={{ disabled }}
167
+ testID={testID}
168
+ >
169
+ {iconPosition === 'left' && icon}
170
+ {children != null && (
171
+ <Text style={[computedTextStyle, textStyle]}>{children}</Text>
172
+ )}
173
+ {iconPosition === 'right' && icon}
174
+ </Pressable>
175
+ </Animated.View>
143
176
  );
144
177
  };
145
178
 
@@ -1,9 +1,17 @@
1
- import React, { memo, useState } from 'react';
2
- import { View, Text, TouchableOpacity } from 'react-native';
1
+ import React, { memo, useCallback, useEffect, useRef, useState } from 'react';
2
+ import { View, Text, TouchableOpacity, Animated, LayoutAnimation, Platform, UIManager } from 'react-native';
3
3
 
4
4
  import { useTheme } from '../theme/use-theme';
5
+ import { animation } from '../styles/tokens';
5
6
  import type { CollapsibleProps } from './types';
6
7
 
8
+ if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
9
+ UIManager.setLayoutAnimationEnabledExperimental(true);
10
+ }
11
+
12
+ const CHEVRON_CLOSED = '0deg';
13
+ const CHEVRON_OPEN = '90deg';
14
+
7
15
  const CollapsibleComponent: React.FC<CollapsibleProps> = ({
8
16
  title,
9
17
  children,
@@ -15,12 +23,38 @@ const CollapsibleComponent: React.FC<CollapsibleProps> = ({
15
23
  }) => {
16
24
  const [isOpen, setIsOpen] = useState(defaultOpen);
17
25
  const theme = useTheme();
26
+ const chevronAnim = useRef(new Animated.Value(defaultOpen ? 1 : 0)).current;
27
+
28
+ useEffect(() => {
29
+ Animated.spring(chevronAnim, {
30
+ toValue: isOpen ? 1 : 0,
31
+ useNativeDriver: true,
32
+ ...animation.spring.gentle,
33
+ }).start();
34
+ }, [isOpen, chevronAnim]);
35
+
36
+ const handleToggle = useCallback(() => {
37
+ LayoutAnimation.configureNext({
38
+ duration: animation.duration.normal,
39
+ update: { type: LayoutAnimation.Types.easeInEaseOut },
40
+ create: { type: LayoutAnimation.Types.easeInEaseOut, property: LayoutAnimation.Properties.opacity },
41
+ delete: { type: LayoutAnimation.Types.easeInEaseOut, property: LayoutAnimation.Properties.opacity },
42
+ });
43
+ setIsOpen((prev) => !prev);
44
+ }, []);
45
+
46
+ const chevronRotation = chevronAnim.interpolate({
47
+ inputRange: [0, 1],
48
+ outputRange: [CHEVRON_CLOSED, CHEVRON_OPEN],
49
+ });
18
50
 
19
51
  return (
20
52
  <View style={style} testID={testID}>
21
53
  <TouchableOpacity
22
- onPress={() => setIsOpen((prev) => !prev)}
54
+ onPress={handleToggle}
23
55
  activeOpacity={0.7}
56
+ accessibilityRole="button"
57
+ accessibilityState={{ expanded: isOpen }}
24
58
  style={{
25
59
  flexDirection: 'row',
26
60
  alignItems: 'center',
@@ -29,15 +63,15 @@ const CollapsibleComponent: React.FC<CollapsibleProps> = ({
29
63
  }}
30
64
  >
31
65
  {chevronIcon ?? (
32
- <Text
66
+ <Animated.Text
33
67
  style={{
34
68
  fontSize: 16,
35
69
  color: theme.colors.textSecondary,
36
- transform: [{ rotate: isOpen ? '90deg' : '0deg' }],
70
+ transform: [{ rotate: chevronRotation }],
37
71
  }}
38
72
  >
39
73
 
40
- </Text>
74
+ </Animated.Text>
41
75
  )}
42
76
  <Text
43
77
  style={[
@@ -0,0 +1,16 @@
1
+ import { createContext, useContext } from 'react';
2
+
3
+ /**
4
+ * A function that resolves opaque identifiers (e.g. file IDs) to
5
+ * loadable image URLs. Returns `undefined` when no URL is available yet.
6
+ */
7
+ export type ImageResolver = (id: string) => string | undefined;
8
+
9
+ const ImageResolverContext = createContext<ImageResolver | null>(null);
10
+ ImageResolverContext.displayName = 'BloomImageResolverContext';
11
+
12
+ export const ImageResolverProvider = ImageResolverContext.Provider;
13
+
14
+ export function useImageResolver(): ImageResolver | null {
15
+ return useContext(ImageResolverContext);
16
+ }
@@ -0,0 +1 @@
1
+ export { ImageResolverProvider, useImageResolver, type ImageResolver } from './context';