@hanzogui/image 2.0.0-rc.41-hanzoai.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/Image.cjs +64 -0
  3. package/dist/cjs/Image.native.js +35 -0
  4. package/dist/cjs/Image.native.js.map +1 -0
  5. package/dist/cjs/createImage.cjs +157 -0
  6. package/dist/cjs/createImage.native.js +161 -0
  7. package/dist/cjs/createImage.native.js.map +1 -0
  8. package/dist/cjs/index.cjs +21 -0
  9. package/dist/cjs/index.native.js +24 -0
  10. package/dist/cjs/index.native.js.map +1 -0
  11. package/dist/cjs/types.cjs +18 -0
  12. package/dist/cjs/types.native.js +21 -0
  13. package/dist/cjs/types.native.js.map +1 -0
  14. package/dist/cjs/v1/Image.cjs +101 -0
  15. package/dist/cjs/v1/Image.native.js +123 -0
  16. package/dist/cjs/v1/Image.native.js.map +1 -0
  17. package/dist/cjs/v1/index.cjs +20 -0
  18. package/dist/cjs/v1/index.native.js +23 -0
  19. package/dist/cjs/v1/index.native.js.map +1 -0
  20. package/dist/esm/Image.mjs +39 -0
  21. package/dist/esm/Image.mjs.map +1 -0
  22. package/dist/esm/Image.native.js +7 -0
  23. package/dist/esm/Image.native.js.map +1 -0
  24. package/dist/esm/createImage.mjs +132 -0
  25. package/dist/esm/createImage.mjs.map +1 -0
  26. package/dist/esm/createImage.native.js +133 -0
  27. package/dist/esm/createImage.native.js.map +1 -0
  28. package/dist/esm/index.js +3 -0
  29. package/dist/esm/index.js.map +1 -0
  30. package/dist/esm/index.mjs +3 -0
  31. package/dist/esm/index.mjs.map +1 -0
  32. package/dist/esm/index.native.js +3 -0
  33. package/dist/esm/index.native.js.map +1 -0
  34. package/dist/esm/types.mjs +2 -0
  35. package/dist/esm/types.mjs.map +1 -0
  36. package/dist/esm/types.native.js +2 -0
  37. package/dist/esm/types.native.js.map +1 -0
  38. package/dist/esm/v1/Image.mjs +65 -0
  39. package/dist/esm/v1/Image.mjs.map +1 -0
  40. package/dist/esm/v1/Image.native.js +84 -0
  41. package/dist/esm/v1/Image.native.js.map +1 -0
  42. package/dist/esm/v1/index.mjs +2 -0
  43. package/dist/esm/v1/index.mjs.map +1 -0
  44. package/dist/esm/v1/index.native.js +2 -0
  45. package/dist/esm/v1/index.native.js.map +1 -0
  46. package/dist/jsx/Image.mjs +39 -0
  47. package/dist/jsx/Image.mjs.map +1 -0
  48. package/dist/jsx/Image.native.js +35 -0
  49. package/dist/jsx/Image.native.js.map +1 -0
  50. package/dist/jsx/createImage.mjs +132 -0
  51. package/dist/jsx/createImage.mjs.map +1 -0
  52. package/dist/jsx/createImage.native.js +161 -0
  53. package/dist/jsx/createImage.native.js.map +1 -0
  54. package/dist/jsx/index.js +3 -0
  55. package/dist/jsx/index.js.map +1 -0
  56. package/dist/jsx/index.mjs +3 -0
  57. package/dist/jsx/index.mjs.map +1 -0
  58. package/dist/jsx/index.native.js +24 -0
  59. package/dist/jsx/index.native.js.map +1 -0
  60. package/dist/jsx/types.mjs +2 -0
  61. package/dist/jsx/types.mjs.map +1 -0
  62. package/dist/jsx/types.native.js +21 -0
  63. package/dist/jsx/types.native.js.map +1 -0
  64. package/dist/jsx/v1/Image.mjs +65 -0
  65. package/dist/jsx/v1/Image.mjs.map +1 -0
  66. package/dist/jsx/v1/Image.native.js +123 -0
  67. package/dist/jsx/v1/Image.native.js.map +1 -0
  68. package/dist/jsx/v1/index.mjs +2 -0
  69. package/dist/jsx/v1/index.mjs.map +1 -0
  70. package/dist/jsx/v1/index.native.js +23 -0
  71. package/dist/jsx/v1/index.native.js.map +1 -0
  72. package/package.json +53 -0
  73. package/src/Image.native.tsx +6 -0
  74. package/src/Image.tsx +41 -0
  75. package/src/createImage.tsx +245 -0
  76. package/src/index.ts +3 -0
  77. package/src/types.ts +54 -0
  78. package/src/v1/Image.tsx +144 -0
  79. package/src/v1/index.ts +1 -0
  80. package/types/Image.d.ts +3 -0
  81. package/types/Image.d.ts.map +1 -0
  82. package/types/Image.native.d.ts +16 -0
  83. package/types/Image.native.d.ts.map +1 -0
  84. package/types/createImage.d.ts +77 -0
  85. package/types/createImage.d.ts.map +1 -0
  86. package/types/index.d.ts +4 -0
  87. package/types/index.d.ts.map +1 -0
  88. package/types/types.d.ts +42 -0
  89. package/types/types.d.ts.map +1 -0
  90. package/types/v1/Image.d.ts +36 -0
  91. package/types/v1/Image.d.ts.map +1 -0
  92. package/types/v1/index.d.ts +2 -0
  93. package/types/v1/index.d.ts.map +1 -0
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var Image_exports = {};
37
+ __export(Image_exports, {
38
+ Image: () => Image
39
+ });
40
+ module.exports = __toCommonJS(Image_exports);
41
+ var import_jsx_runtime = require("react/jsx-runtime");
42
+ var import_react = __toESM(require("react"), 1);
43
+ var import_constants = require("@hanzogui/constants");
44
+ var import_web = require("@hanzogui/web");
45
+ var import_react_native = require("react-native");
46
+ function _type_of(obj) {
47
+ "@swc/helpers - typeof";
48
+
49
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
50
+ }
51
+ var StyledImage = (0, import_web.styled)(import_react_native.Image, {
52
+ name: "Image"
53
+ });
54
+ var hasWarned = false;
55
+ var Image = StyledImage.styleable(function (inProps, ref) {
56
+ var [props, style] = (0, import_web.usePropsAndStyle)(inProps);
57
+ var {
58
+ src,
59
+ source,
60
+ objectFit,
61
+ ...rest
62
+ } = props;
63
+ if (process.env.NODE_ENV === "development") {
64
+ if (typeof src === "string") {
65
+ if (typeof props.width === "string" && props.width[0] !== "$" || typeof props.height === "string" && props.height[0] !== "$") {
66
+ if (!hasWarned) {
67
+ hasWarned = true;
68
+ console.warn(`React Native expects a numerical width/height. If you want to use a percent you must define the "source" prop with width, height, and uri.`);
69
+ }
70
+ }
71
+ }
72
+ }
73
+ var finalSource = typeof src === "string" ? {
74
+ uri: src,
75
+ ...(import_constants.isWeb && {
76
+ width: props.width || (style === null || style === void 0 ? void 0 : style.width),
77
+ height: props.height || (style === null || style === void 0 ? void 0 : style.height)
78
+ })
79
+ } : source !== null && source !== void 0 ? source : src;
80
+ if (finalSource && (typeof finalSource === "undefined" ? "undefined" : _type_of(finalSource)) === "object") {
81
+ if (!Array.isArray(finalSource)) {
82
+ if (typeof finalSource.uri === "number") {
83
+ finalSource = finalSource.uri;
84
+ if (source && (typeof source === "undefined" ? "undefined" : _type_of(source)) === "object" && !Array.isArray(source)) {
85
+ var _style, _style1;
86
+ var _width;
87
+ (_width = (_style = style).width) !== null && _width !== void 0 || (_style.width = source.width);
88
+ var _height;
89
+ (_height = (_style1 = style).height) !== null && _height !== void 0 || (_style1.height = source.height);
90
+ }
91
+ }
92
+ }
93
+ if (process.env.NODE_ENV === "development" && process.env.TAMAGUI_IMAGE_CHECK_ERROR) import_react.default.useEffect(function () {
94
+ async function run() {
95
+ if (typeof src === "string") try {
96
+ await fetch(src).then(function (res) {
97
+ return res.text();
98
+ });
99
+ } catch (err) {
100
+ console.error(`Error loading image: ${src}`, {
101
+ props
102
+ });
103
+ }
104
+ }
105
+ run();
106
+ }, [src]);
107
+ if (finalSource["default"]) finalSource = finalSource["default"];
108
+ }
109
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.Image, {
110
+ resizeMode: objectFit,
111
+ ref,
112
+ source: finalSource,
113
+ style,
114
+ ...rest
115
+ });
116
+ });
117
+ Image.getSize = import_react_native.Image.getSize;
118
+ Image.getSizeWithHeaders = import_react_native.Image.getSizeWithHeaders;
119
+ Image.prefetch = import_react_native.Image.prefetch;
120
+ Image.prefetchWithMetadata = import_react_native.Image.prefetchWithMetadata;
121
+ Image.abortPrefetch = import_react_native.Image.abortPrefetch;
122
+ Image.queryCache = import_react_native.Image.queryCache;
123
+ //# sourceMappingURL=Image.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isNodeMode","mod","__esModule","__defProp","target","value","enumerable","__toCommonJS","__copyProps","Image_exports","__export","Image","module","exports","import_jsx_runtime","require","import_react","__toESM","import_constants","import_web","import_react_native","_type_of","obj","Symbol","constructor","StyledImage","styled","name","hasWarned","styleable","inProps","ref","props","style","usePropsAndStyle","src","source","objectFit","rest","process","env","NODE_ENV","width","height","console","warn","finalSource","uri","isWeb","Array","isArray","_style","_style1","_width","_height","TAMAGUI_IMAGE_CHECK_ERROR","default","useEffect","run","fetch","then","res","text","err","error","jsx","resizeMode","getSize","getSizeWithHeaders","prefetch","prefetchWithMetadata","abortPrefetch","queryCache"],"sources":["../../../src/v1/Image.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAAA,UAAA,KAAAC,GAAA,KAAAA,GAAA,CAAAC,UAAA,GAAAC,SAAA,CAAAC,MAAA;EAAAC,KAAA,EAAAJ,GAAA;EAAAK,UAAA;AAAA,KAAAF,MAAA,EAAAH,GAAA;AACA,IAAAM,YAAA,GAAAN,GAAsB,IAAAO,WAAA,CAAAL,SAAA;EAAAE,KAAA;AAAA,IAAAJ,GAAA;AAQtB,IAAAQ,aAAyC;AAEzCC,QAAA,CAAAD,aAAA;EAAiCE,KAAA,EAAAA,CAAA,KAAAA;AAAA;AAqH7BC,MAAA,CAAAC,OAAA,GAAAN,YAAA,CAAAE,aAAA;AAnHJ,IAAAK,kBAAM,GAAcC,OAAA,oBAAO;AAAS,IAClCC,YAAM,GAAAC,OAAA,CAAAF,OAAA;AACR,IAACG,gBAAA,GAAAH,OAAA;AAmCD,IAAII,UAAA,GAAYJ,OAAA;AAMT,IAAAK,mBAAc,GAAYL,OAAA,eAAgC;AAC/D,SAAOM,QAAOA,CAAAC,GAAK;EACnB,uBAAqB;;EAErB,OAAIA,GAAA,IAAQ,OAAIC,MAAA,KAAa,eAAeD,GAAA,CAAAE,WAAA,KAAAD,MAAA,qBAAAD,GAAA;AAC1C;AACE,IAAAG,WACG,GAAO,IAAAN,UAAM,CAAUO,MAAA,EAAAN,mBAAyB,CAAAT,KAAM;EAAAgB,IACtD;AAAa;AAEd,IAAAC,SAAK;AACH,IAAAjB,KAAA,GAAAc,WAAY,CAAAI,SAAA,WAAAC,OAAA,EAAAC,GAAA;EACZ,KAAAC,KAAA,EAAAC,KAAQ,QAAAd,UAAA,CAAAe,gBAAA,EAAAJ,OAAA;EAAA;IAAAK,GAAA;IACNC,MAAA;IAAAC,SAAA;IAAA,GAAAC;EAAA,IAAAN,KAAA;EAAA,IAAAO,OACF,CAAAC,GAAA,CAAAC,QAAA;IAAA,WACFN,GAAA;MAAA,IACF,OAAAH,KAAA,CAAAU,KAAA,iBAAAV,KAAA,CAAAU,KAAA,sBAAAV,KAAA,CAAAW,MAAA,iBAAAX,KAAA,CAAAW,MAAA;QACF,KAAAf,SAAA;UACFA,SAAA;UAEAgB,OAAI,CAAAC,IAAA,6IAEE;QACE;MAAK;IACQ;EACkB;EACE,IACjCC,WAAA,UAAAX,GAAA;IACFY,GAAA,EACCZ,GAAA;IAEP,IAAAjB,gBAAmB,CAAA8B,KAAA,IAAO;MACxBN,KAAI,EAAAV,KAAA,CAAQU,KAAI,KAAAT,KAAA,SAAmB,IAAAA,KAAU,uBAAAA,KAAA,CAAAS,KAAA;MAE3CC,MAAA,EAAKX,KAAA,CAAMW,MAAA,KAAQV,KAAA,KAAW,IAAG,IAAAA,KAAA,uBAAAA,KAAA,CAAAU,MAAA;IAC/B;EACE,IAAAP,MAAA,aAAcA,MAAA,UAAY,IAAAA,MAAA,GAAAD,GAAA;EAC1B,IAAAW,WAAI,YAAUA,WAAO,KAAW,WAAa,cAAc,GAAAzB,QAAS,CAAAyB,WAAA;IAElE,KAAAG,KAAA,CAAAC,OAAM,CAAAJ,WAAU,GAAO;MAEvB,WAAAA,WAAM,CAAAC,GAAW,aAAO;QAAAD,WAC1B,GAAAA,WAAA,CAAAC,GAAA;QAAA,IACFX,MAAA,YAAAA,MAAA,iCAAAf,QAAA,CAAAe,MAAA,oBAAAa,KAAA,CAAAC,OAAA,CAAAd,MAAA;UAAA,IACFe,MAAA,EAAAC,OAAA;UACF,IAAAC,MAAA;UAEA,CAAAA,MAAI,IAAQF,MAAI,GAAAlB,KAAA,EAAAS,KAAa,cAAiBW,MAAA,KAAY,WAAAF,MAAA,CAAAT,KAAA,GAAAN,MAA2B,CAAAM,KAAA;UAEnF,IAAAY,OAAA;UACE,CAAAA,OAAA,IAAAF,OAAe,GAAAnB,KAAM,EAAAU,MAAA,cAAAW,OAAA,gBAAAF,OAAA,CAAAT,MAAA,GAAAP,MAAA,CAAAO,MAAA;QACnB;MACE;IACE;IAAyC,IAAAJ,OAC3C,CAAAC,GAAA,CAAAC,QAAc,sBAAAF,OAAA,CAAAC,GAAA,CAAAe,yBAAA,EAAAvC,YAAA,CAAAwC,OAAA,CAAAC,SAAA;MACZ,eAAAC,IAAA,EAAQ;QAA8C,WACxDvB,GAAA;UAAA,MACFwB,KAAA,CAAAxB,GAAA,EAAAyB,IAAA,WAAAC,GAAA;YAAA,OACFA,GAAA,CAAAC,IAAA;UAEA;QAAI,EACN,OAAOC,GAAC;UACVnB,OAAA,CAAAoB,KAAA,yBAAA7B,GAAA;YAAAH;UAAA;QAGA;MACE;MAAmC0B,GACrC;IACF,IAAAvB,GAAA;IAGA,IAAAW,WACE,aAAAA,WAAA,GAAAA,WAAA;EAAA;EAAC,0BAAAhC,kBAAA,CAAAmD,GAAA,EAAA7C,mBAAA,CAAAT,KAAA;IAAAuD,UACC,EAAA7B,SAAY;IAAAN,GAAA;IACZK,MACA,EAAAU,WAAQ;IAAAb,KACR;IAAA,GAAAK;EACK;AAAA,EACP;AAEJ3B,KAAC,CAAAwD,OAAA,GAAA/C,mBAAA,CAAAT,KAAA,CAAAwD,OAAA;AAEDxD,KAAA,CAAMyD,kBAAU,GAAAhD,mBAAQ,CAAAT,KAAA,CAAAyD,kBAAA;AACxBzD,KAAA,CAAM0D,QAAA,GAAAjD,mBAAqB,CAAAT,KAAA,CAAA0D,QAAA;AAC3B1D,KAAA,CAAM2D,oBAAW,GAAAlD,mBAAQ,CAAAT,KAAA,CAAA2D,oBAAA;AACzB3D,KAAA,CAAM4D,aAAA,GAAAnD,mBAAuB,CAAAT,KAAA,CAAA4D,aAAQ;AACrC5D,KAAA,CAAM6D,UAAA,GAAApD,mBAAgB,CAAAT,KAAA,CAAA6D,UAAQ","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __copyProps = (to, from, except, desc) => {
6
+ if (from && typeof from === "object" || typeof from === "function") {
7
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
8
+ get: () => from[key],
9
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
10
+ });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
16
+ value: true
17
+ }), mod);
18
+ var v1_exports = {};
19
+ module.exports = __toCommonJS(v1_exports);
20
+ __reExport(v1_exports, require("./Image.cjs"), module.exports);
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __copyProps = (to, from, except, desc) => {
8
+ if (from && typeof from === "object" || typeof from === "function") {
9
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
10
+ get: () => from[key],
11
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
12
+ });
13
+ }
14
+ return to;
15
+ };
16
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
17
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
18
+ value: true
19
+ }), mod);
20
+ var v1_exports = {};
21
+ module.exports = __toCommonJS(v1_exports);
22
+ __reExport(v1_exports, require("./Image.native.js"), module.exports);
23
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","v1_exports","module","exports"],"sources":["../../../src/v1/index.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,UAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAP,YAAc,CAAAK,UAAA","ignoreList":[]}
@@ -0,0 +1,39 @@
1
+ import { View, styled } from "@hanzogui/web";
2
+ import { jsx } from "react/jsx-runtime";
3
+ const StyledImage = styled(View, {
4
+ name: "Image",
5
+ render: "img"
6
+ });
7
+ const Image = StyledImage.styleable((inProps, ref) => {
8
+ const {
9
+ // exclude native only props
10
+ blurRadius,
11
+ capInsets,
12
+ defaultSource,
13
+ fadeDuration,
14
+ loadingIndicatorSource,
15
+ onLoadEnd,
16
+ onPartialLoad,
17
+ progressiveRenderingEnabled,
18
+ resizeMethod,
19
+ tintColor,
20
+ ...rest
21
+ } = inProps;
22
+ return /* @__PURE__ */jsx(StyledImage, {
23
+ ref,
24
+ ...rest
25
+ });
26
+ }, {
27
+ staticConfig: {
28
+ memo: true
29
+ }
30
+ });
31
+ const func = () => {};
32
+ Image.getSize = func;
33
+ Image.getSizeWithHeaders = func;
34
+ Image.prefetch = func;
35
+ Image.prefetchWithMetadata = func;
36
+ Image.abortPrefetch = func;
37
+ Image.queryCache = func;
38
+ export { Image };
39
+ //# sourceMappingURL=Image.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["View","styled","jsx","StyledImage","name","render","Image","styleable","inProps","ref","blurRadius","capInsets","defaultSource","fadeDuration","loadingIndicatorSource","onLoadEnd","onPartialLoad","progressiveRenderingEnabled","resizeMethod","tintColor","rest","staticConfig","memo","func","getSize","getSizeWithHeaders","prefetch","prefetchWithMetadata","abortPrefetch","queryCache"],"sources":["../../src/Image.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,IAAA,EAAMC,MAAA,QAAc;AAwBlB,SAAAC,GAAA;AArBX,MAAMC,WAAA,GAAcF,MAAA,CAAOD,IAAA,EAAM;EAC/BI,IAAA,EAAM;EACNC,MAAA,EAAQ;AACV,CAAC;AAEM,MAAMC,KAAA,GAAQH,WAAA,CAAYI,SAAA,CAC/B,CAACC,OAAA,EAASC,GAAA,KAAQ;EAChB,MAAM;IAAA;IAEJC,UAAA;IACAC,SAAA;IACAC,aAAA;IACAC,YAAA;IACAC,sBAAA;IACAC,SAAA;IACAC,aAAA;IACAC,2BAAA;IACAC,YAAA;IACAC,SAAA;IACA,GAAGC;EACL,IAAIZ,OAAA;EACJ,OAAO,eAAAN,GAAA,CAACC,WAAA;IAAYM,GAAA;IAAW,GAAGW;EAAA,CAAM;AAC1C,GACA;EACEC,YAAA,EAAc;IACZC,IAAA,EAAM;EACR;AACF,CACF;AAEA,MAAMC,IAAA,GAAQA,CAAA,KAAM,CAAC;AAErBjB,KAAA,CAAMkB,OAAA,GAAUD,IAAA;AAChBjB,KAAA,CAAMmB,kBAAA,GAAqBF,IAAA;AAC3BjB,KAAA,CAAMoB,QAAA,GAAWH,IAAA;AACjBjB,KAAA,CAAMqB,oBAAA,GAAuBJ,IAAA;AAC7BjB,KAAA,CAAMsB,aAAA,GAAgBL,IAAA;AACtBjB,KAAA,CAAMuB,UAAA,GAAaN,IAAA","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import { Image as RNImage } from "react-native";
2
+ import { createImage } from "./createImage.native.js";
3
+ var Image = createImage({
4
+ Component: RNImage
5
+ });
6
+ export { Image };
7
+ //# sourceMappingURL=Image.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Image","RNImage","createImage","Component"],"sources":["../../src/Image.native.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAA,IAASC,OAAA,QAAe;AACjC,SAASC,WAAA,QAAmB;AACrB,IAAIF,KAAA,GAAQE,WAAA,CAAY;EAC3BC,SAAA,EAAWF;AACf,CAAC","ignoreList":[]}
@@ -0,0 +1,132 @@
1
+ import { getTokenValue, styled } from "@hanzogui/web";
2
+ import { jsx } from "react/jsx-runtime";
3
+ const defaultObjectFitMap = objectFit => {
4
+ switch (objectFit) {
5
+ case "fill":
6
+ return "stretch";
7
+ case "none":
8
+ return "center";
9
+ case "scale-down":
10
+ return "contain";
11
+ case "contain":
12
+ return "contain";
13
+ default:
14
+ return "cover";
15
+ }
16
+ };
17
+ const defaultTransformSource = props => {
18
+ const {
19
+ src,
20
+ source,
21
+ width,
22
+ height
23
+ } = props;
24
+ if (source) return source;
25
+ if (src && typeof src !== "string") return src;
26
+ return {
27
+ uri: src,
28
+ width,
29
+ height
30
+ };
31
+ };
32
+ function createImage(options) {
33
+ const {
34
+ Component,
35
+ mapObjectFitToResizeMode = defaultObjectFitMap,
36
+ resizeModePropName = "resizeMode",
37
+ objectPositionPropName,
38
+ transformSource = defaultTransformSource
39
+ } = options;
40
+ const inlinePropsSet = /* @__PURE__ */new Set(["source", "placeholder", "transition", "contentFit", "contentPosition", "cachePolicy", "recyclingKey", "allowDownscaling", "autoplay", "blurRadius", "priority", "placeholderContentFit", "responsivePolicy", "onLoadStart", "onProgress", "onLoadEnd"]);
41
+ const StyledImage = styled(Component, {
42
+ name: "Image"
43
+ }, {
44
+ inlineProps: inlinePropsSet
45
+ });
46
+ const ImageComponent = StyledImage.styleable((incomingProps, ref) => {
47
+ const props = incomingProps;
48
+ const {
49
+ src,
50
+ width,
51
+ height,
52
+ borderRadius,
53
+ objectFit,
54
+ objectPosition,
55
+ // web only props - filter out on native
56
+ decoding,
57
+ elementTiming,
58
+ fetchpriority,
59
+ isMap,
60
+ loading,
61
+ sizes,
62
+ useMap,
63
+ onLoad,
64
+ onError,
65
+ ...rest
66
+ } = props;
67
+ const resolvedWidth = typeof width === "string" && width[0] === "$" ? getTokenValue(width, "size") : width;
68
+ const resolvedHeight = typeof height === "string" && height[0] === "$" ? getTokenValue(height, "size") : height;
69
+ const finalSource = transformSource({
70
+ src,
71
+ width: resolvedWidth,
72
+ height: resolvedHeight
73
+ });
74
+ const incomingStyle = Array.isArray(rest.style) ? Object.assign({}, ...rest.style.flat()) : rest.style;
75
+ const resolvedBorderRadius = typeof borderRadius === "string" && borderRadius[0] === "$" ? getTokenValue(borderRadius, "radius") : borderRadius;
76
+ const finalProps = {
77
+ ...rest,
78
+ source: finalSource,
79
+ style: {
80
+ ...incomingStyle,
81
+ ...(resolvedBorderRadius !== void 0 && {
82
+ borderRadius: resolvedBorderRadius
83
+ }),
84
+ ...(resolvedWidth !== void 0 && {
85
+ width: resolvedWidth
86
+ }),
87
+ ...(resolvedHeight !== void 0 && {
88
+ height: resolvedHeight
89
+ })
90
+ }
91
+ };
92
+ if (objectFit) {
93
+ finalProps[resizeModePropName] = mapObjectFitToResizeMode(objectFit);
94
+ }
95
+ if (objectPositionPropName && objectPosition) {
96
+ finalProps[objectPositionPropName] = objectPosition;
97
+ }
98
+ if (onLoad) {
99
+ finalProps.onLoad = e => {
100
+ const source = e?.nativeEvent?.source || e?.source || {};
101
+ onLoad({
102
+ target: {
103
+ naturalHeight: source?.height,
104
+ naturalWidth: source?.width
105
+ },
106
+ type: "load"
107
+ });
108
+ };
109
+ }
110
+ if (onError) {
111
+ finalProps.onError = () => {
112
+ onError({
113
+ type: "error"
114
+ });
115
+ };
116
+ }
117
+ return /* @__PURE__ */jsx(Component, {
118
+ ref,
119
+ ...finalProps
120
+ });
121
+ });
122
+ const comp = Component;
123
+ ImageComponent.getSize = comp.getSize || (() => {});
124
+ ImageComponent.getSizeWithHeaders = comp.getSizeWithHeaders || (() => {});
125
+ ImageComponent.prefetch = comp.prefetch || (() => {});
126
+ ImageComponent.prefetchWithMetadata = comp.prefetchWithMetadata || (() => {});
127
+ ImageComponent.abortPrefetch = comp.abortPrefetch || (() => {});
128
+ ImageComponent.queryCache = comp.queryCache || (() => {});
129
+ return ImageComponent;
130
+ }
131
+ export { createImage };
132
+ //# sourceMappingURL=createImage.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getTokenValue","styled","jsx","defaultObjectFitMap","objectFit","defaultTransformSource","props","src","source","width","height","uri","createImage","options","Component","mapObjectFitToResizeMode","resizeModePropName","objectPositionPropName","transformSource","inlinePropsSet","Set","StyledImage","name","inlineProps","ImageComponent","styleable","incomingProps","ref","borderRadius","objectPosition","decoding","elementTiming","fetchpriority","isMap","loading","sizes","useMap","onLoad","onError","rest","resolvedWidth","resolvedHeight","finalSource","incomingStyle","Array","isArray","style","Object","assign","flat","resolvedBorderRadius","finalProps","e","nativeEvent","target","naturalHeight","naturalWidth","type","comp","getSize","getSizeWithHeaders","prefetch","prefetchWithMetadata","abortPrefetch","queryCache"],"sources":["../../src/createImage.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,133 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { getTokenValue, styled } from "@hanzogui/web";
3
+ var defaultObjectFitMap = function (objectFit) {
4
+ switch (objectFit) {
5
+ case "fill":
6
+ return "stretch";
7
+ case "none":
8
+ return "center";
9
+ case "scale-down":
10
+ return "contain";
11
+ case "contain":
12
+ return "contain";
13
+ default:
14
+ return "cover";
15
+ }
16
+ };
17
+ var defaultTransformSource = function (props) {
18
+ var {
19
+ src,
20
+ source,
21
+ width,
22
+ height
23
+ } = props;
24
+ if (source) return source;
25
+ if (src && typeof src !== "string") return src;
26
+ return {
27
+ uri: src,
28
+ width,
29
+ height
30
+ };
31
+ };
32
+ function createImage(options) {
33
+ var {
34
+ Component,
35
+ mapObjectFitToResizeMode = defaultObjectFitMap,
36
+ resizeModePropName = "resizeMode",
37
+ objectPositionPropName,
38
+ transformSource = defaultTransformSource
39
+ } = options;
40
+ var inlinePropsSet = /* @__PURE__ */new Set(["source", "placeholder", "transition", "contentFit", "contentPosition", "cachePolicy", "recyclingKey", "allowDownscaling", "autoplay", "blurRadius", "priority", "placeholderContentFit", "responsivePolicy", "onLoadStart", "onProgress", "onLoadEnd"]);
41
+ var StyledImage = styled(Component, {
42
+ name: "Image"
43
+ }, {
44
+ inlineProps: inlinePropsSet
45
+ });
46
+ var ImageComponent = StyledImage.styleable(function (incomingProps, ref) {
47
+ var props = incomingProps;
48
+ var {
49
+ src,
50
+ width,
51
+ height,
52
+ borderRadius,
53
+ objectFit,
54
+ objectPosition,
55
+ // web only props - filter out on native
56
+ decoding,
57
+ elementTiming,
58
+ fetchpriority,
59
+ isMap,
60
+ loading,
61
+ sizes,
62
+ useMap,
63
+ onLoad,
64
+ onError,
65
+ ...rest
66
+ } = props;
67
+ var resolvedWidth = typeof width === "string" && width[0] === "$" ? getTokenValue(width, "size") : width;
68
+ var resolvedHeight = typeof height === "string" && height[0] === "$" ? getTokenValue(height, "size") : height;
69
+ var finalSource = transformSource({
70
+ src,
71
+ width: resolvedWidth,
72
+ height: resolvedHeight
73
+ });
74
+ var incomingStyle = Array.isArray(rest.style) ? Object.assign({}, ...rest.style.flat()) : rest.style;
75
+ var resolvedBorderRadius = typeof borderRadius === "string" && borderRadius[0] === "$" ? getTokenValue(borderRadius, "radius") : borderRadius;
76
+ var finalProps = {
77
+ ...rest,
78
+ source: finalSource,
79
+ style: {
80
+ ...incomingStyle,
81
+ ...(resolvedBorderRadius !== void 0 && {
82
+ borderRadius: resolvedBorderRadius
83
+ }),
84
+ ...(resolvedWidth !== void 0 && {
85
+ width: resolvedWidth
86
+ }),
87
+ ...(resolvedHeight !== void 0 && {
88
+ height: resolvedHeight
89
+ })
90
+ }
91
+ };
92
+ if (objectFit) {
93
+ finalProps[resizeModePropName] = mapObjectFitToResizeMode(objectFit);
94
+ }
95
+ if (objectPositionPropName && objectPosition) {
96
+ finalProps[objectPositionPropName] = objectPosition;
97
+ }
98
+ if (onLoad) {
99
+ finalProps.onLoad = function (e) {
100
+ var _e_nativeEvent;
101
+ var source = (e === null || e === void 0 ? void 0 : (_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.source) || (e === null || e === void 0 ? void 0 : e.source) || {};
102
+ onLoad({
103
+ target: {
104
+ naturalHeight: source === null || source === void 0 ? void 0 : source.height,
105
+ naturalWidth: source === null || source === void 0 ? void 0 : source.width
106
+ },
107
+ type: "load"
108
+ });
109
+ };
110
+ }
111
+ if (onError) {
112
+ finalProps.onError = function () {
113
+ onError({
114
+ type: "error"
115
+ });
116
+ };
117
+ }
118
+ return /* @__PURE__ */_jsx(Component, {
119
+ ref,
120
+ ...finalProps
121
+ });
122
+ });
123
+ var comp = Component;
124
+ ImageComponent.getSize = comp.getSize || function () {};
125
+ ImageComponent.getSizeWithHeaders = comp.getSizeWithHeaders || function () {};
126
+ ImageComponent.prefetch = comp.prefetch || function () {};
127
+ ImageComponent.prefetchWithMetadata = comp.prefetchWithMetadata || function () {};
128
+ ImageComponent.abortPrefetch = comp.abortPrefetch || function () {};
129
+ ImageComponent.queryCache = comp.queryCache || function () {};
130
+ return ImageComponent;
131
+ }
132
+ export { createImage };
133
+ //# sourceMappingURL=createImage.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["jsx","_jsx","getTokenValue","styled","defaultObjectFitMap","objectFit","defaultTransformSource","props","src","source","width","height","uri","createImage","options","Component","mapObjectFitToResizeMode","resizeModePropName","objectPositionPropName","transformSource","inlinePropsSet","Set","StyledImage","name","inlineProps","ImageComponent","styleable","incomingProps","ref","borderRadius","objectPosition","decoding","elementTiming","fetchpriority","isMap","loading","sizes","useMap","onLoad","onError","rest","resolvedWidth","resolvedHeight","finalSource","incomingStyle","Array","isArray","style","Object","assign","flat","resolvedBorderRadius","finalProps","e","_e_nativeEvent","nativeEvent","target","naturalHeight","naturalWidth","type","comp","getSize","getSizeWithHeaders","prefetch","prefetchWithMetadata","abortPrefetch","queryCache"],"sources":["../../src/createImage.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export * from "./Image.mjs";
2
+ export * from "./createImage.mjs";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export * from "./Image.mjs";
2
+ export * from "./createImage.mjs";
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export * from "./Image.native.js";
2
+ export * from "./createImage.native.js";
3
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=types.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -0,0 +1,65 @@
1
+ import React from "react";
2
+ import { isWeb } from "@hanzogui/constants";
3
+ import { styled, usePropsAndStyle } from "@hanzogui/web";
4
+ import { Image as RNImage } from "react-native-web";
5
+ import { jsx } from "react/jsx-runtime";
6
+ const StyledImage = styled(RNImage, {
7
+ name: "Image"
8
+ });
9
+ let hasWarned = false;
10
+ const Image = StyledImage.styleable((inProps, ref) => {
11
+ const [props, style] = usePropsAndStyle(inProps);
12
+ const {
13
+ src,
14
+ source,
15
+ objectFit,
16
+ ...rest
17
+ } = props;
18
+ if (process.env.NODE_ENV === "development") {
19
+ if (typeof src === "string") {
20
+ if (typeof props.width === "string" && props.width[0] !== "$" || typeof props.height === "string" && props.height[0] !== "$") {
21
+ if (!hasWarned) {
22
+ hasWarned = true;
23
+ console.warn(`React Native expects a numerical width/height. If you want to use a percent you must define the "source" prop with width, height, and uri.`);
24
+ }
25
+ }
26
+ }
27
+ }
28
+ let finalSource = typeof src === "string" ? {
29
+ uri: src,
30
+ ...(isWeb && {
31
+ width: props.width || style?.width,
32
+ height: props.height || style?.height
33
+ })
34
+ } : source ?? src;
35
+ if (finalSource && typeof finalSource === "object") {
36
+ if (process.env.NODE_ENV === "development" && process.env.TAMAGUI_IMAGE_CHECK_ERROR) React.useEffect(() => {
37
+ async function run() {
38
+ if (typeof src === "string") try {
39
+ await fetch(src).then(res => res.text());
40
+ } catch (err) {
41
+ console.error(`Error loading image: ${src}`, {
42
+ props
43
+ });
44
+ }
45
+ }
46
+ run();
47
+ }, [src]);
48
+ if (finalSource["default"]) finalSource = finalSource["default"];
49
+ }
50
+ return /* @__PURE__ */jsx(RNImage, {
51
+ resizeMode: objectFit,
52
+ ref,
53
+ source: finalSource,
54
+ style,
55
+ ...rest
56
+ });
57
+ });
58
+ Image.getSize = RNImage.getSize;
59
+ Image.getSizeWithHeaders = RNImage.getSizeWithHeaders;
60
+ Image.prefetch = RNImage.prefetch;
61
+ Image.prefetchWithMetadata = RNImage.prefetchWithMetadata;
62
+ Image.abortPrefetch = RNImage.abortPrefetch;
63
+ Image.queryCache = RNImage.queryCache;
64
+ export { Image };
65
+ //# sourceMappingURL=Image.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","isWeb","styled","usePropsAndStyle","Image","RNImage","jsx","StyledImage","name","hasWarned","styleable","inProps","ref","props","style","src","source","objectFit","rest","process","env","NODE_ENV","width","height","console","warn","finalSource","uri","TAMAGUI_IMAGE_CHECK_ERROR","useEffect","run","fetch","then","res","text","err","error","resizeMode","getSize","getSizeWithHeaders","prefetch","prefetchWithMetadata","abortPrefetch","queryCache"],"sources":["../../../src/v1/Image.tsx"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,KAAA,MAAW;AAClB,SAASC,KAAA,QAAa;AAQtB,SAASC,MAAA,EAAQC,gBAAA,QAAwB;AAEzC,SAASC,KAAA,IAASC,OAAA,QAAe;AAqH7B,SAAAC,GAAA;AAnHJ,MAAMC,WAAA,GAAcL,MAAA,CAAOG,OAAA,EAAS;EAAAG,IAAA;AAAA;AAAA,IAClCC,SAAM;AACR,MAACL,KAAA,GAAAG,WAAA,CAAAG,SAAA,EAAAC,OAAA,EAAAC,GAAA;EAmCD,MAAI,CAAAC,KAAA,EAAAC,KAAY,IAAAX,gBAAA,CAAAQ,OAAA;EAMT,MAAM;IAAAI,GAAA;IAAQC,MAAA;IAAAC,SAAY;IAAA,GAAsBC;EAAC,IAAAL,KAAS;EAC/D,IAAAM,OAAO,CAAAC,GAAO,CAAAC,QAAS,kBAAiB;IACxC,WAAQN,GAAK,aAAQ;MAErB,IAAI,OAAQF,KAAI,CAAAS,KAAA,aAAa,IAAAT,KAAe,CAAAS,KAAA,sBAAAT,KAAA,CAAAU,MAAA,iBAAAV,KAAA,CAAAU,MAAA;QAC1C,IAAI,CAAAd,SAAO;UACTA,SACG,GAAO;UAGRe,OAAI,CAACC,IAAA,6IAAW;QACd;MACA;IAAQ;EACN;EACF,IAAAC,WACF,UAAAX,GAAA;IAAAY,GAAA,EACFZ,GAAA;IAAA,IACFd,KAAA;MACFqB,KAAA,EAAAT,KAAA,CAAAS,KAAA,IAAAR,KAAA,EAAAQ,KAAA;MAEAC,MAAI,EAAAV,KAAA,CAAAU,MACF,IAAOT,KAAA,EAAAS;IACH;EACO,IACLP,MAAI,IAAAD,GAAS;EAAA,IAAAW,WACJ,IAAM,OAAAA,WAAgB;IAAA,IAC7BP,OAAA,CAAQC,GAAA,CAAAC,QAAM,KAAU,aAAO,IAAAF,OAAA,CAAAC,GAAA,CAAAQ,yBAAA,EAAA5B,KAAA,CAAA6B,SAAA;MAAA,eACjCC,IAAA;QACF,IACC,OAAAf,GAAU;UAEjB,MAAIgB,KAAA,CAAAhB,GAAA,CAAe,CAAAiB,IAAA,CAAOC,GAAA,IAAAA,GAAA,CAAAC,IAAgB;QACxC,SAAIC,GAAQ;UAEVX,OAAK,CAAAY,KAAM,yBAAsBrB,GAAA;YAAAF;UAAA;QAC/B;MACE;MACAiB,GAAA;IAEE,IAAAf,GAAA;IAEA,IAAAW,WAAA,CAAM,YAAWA,WAAO,GAAAA,WAAA;EAAA;EAC1B,OACF,eAAApB,GAAA,CAAAD,OAAA;IAAAgC,UACF,EAAApB,SAAA;IAAAL,GACF;IAEAI,MAAI,EAAAU,WAAY;IAEdZ,KAAA;IACE,GAAAI;EACE;AACE;AACEd,KAAA,CAAAkC,OAAA,GAAAjC,OAAM,CAAAiC,OAAW;AAAwBlC,KAAA,CAAAmC,kBAClC,GAAKlC,OAAA,CAAAkC,kBAAA;AACZnC,KAAA,CAAAoC,QAAA,GAAAnC,OAAQ,CAAAmC,QAAM;AAAwCpC,KAAA,CAAAqC,oBACxD,GAAApC,OAAA,CAAAoC,oBAAA;AAAArC,KAAA,CAAAsC,aACF,GAAArC,OAAA,CAAAqC,aAAA;AAAAtC,KAAA,CAAAuC,UACF,GAAAtC,OAAA,CAAAsC,UAAA;AAEA,SAAAvC,KAAI","ignoreList":[]}