@tamagui/image 1.144.2 → 1.144.4

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 (74) hide show
  1. package/dist/cjs/createImage.cjs +122 -0
  2. package/dist/cjs/createImage.js +127 -0
  3. package/dist/cjs/createImage.js.map +6 -0
  4. package/dist/cjs/createImage.native.js +128 -0
  5. package/dist/cjs/createImage.native.js.map +1 -0
  6. package/dist/cjs/types.cjs +16 -0
  7. package/dist/cjs/types.js +14 -0
  8. package/dist/cjs/types.js.map +6 -0
  9. package/dist/cjs/types.native.js +19 -0
  10. package/dist/cjs/types.native.js.map +1 -0
  11. package/dist/cjs/v1/Image.cjs +86 -0
  12. package/dist/cjs/v1/Image.js +72 -0
  13. package/dist/cjs/v1/Image.js.map +6 -0
  14. package/dist/cjs/v1/Image.native.js +105 -0
  15. package/dist/cjs/v1/Image.native.js.map +1 -0
  16. package/dist/cjs/v1/index.cjs +18 -0
  17. package/dist/cjs/v1/index.js +15 -0
  18. package/dist/cjs/v1/index.js.map +6 -0
  19. package/dist/cjs/v1/index.native.js +21 -0
  20. package/dist/cjs/v1/index.native.js.map +1 -0
  21. package/dist/esm/createImage.js +112 -0
  22. package/dist/esm/createImage.js.map +6 -0
  23. package/dist/esm/createImage.mjs +99 -0
  24. package/dist/esm/createImage.mjs.map +1 -0
  25. package/dist/esm/createImage.native.js +102 -0
  26. package/dist/esm/createImage.native.js.map +1 -0
  27. package/dist/esm/types.js +1 -0
  28. package/dist/esm/types.js.map +6 -0
  29. package/dist/esm/types.mjs +2 -0
  30. package/dist/esm/types.mjs.map +1 -0
  31. package/dist/esm/types.native.js +2 -0
  32. package/dist/esm/types.native.js.map +1 -0
  33. package/dist/esm/v1/Image.js +52 -0
  34. package/dist/esm/v1/Image.js.map +6 -0
  35. package/dist/esm/v1/Image.mjs +52 -0
  36. package/dist/esm/v1/Image.mjs.map +1 -0
  37. package/dist/esm/v1/Image.native.js +68 -0
  38. package/dist/esm/v1/Image.native.js.map +1 -0
  39. package/dist/esm/v1/index.js +2 -0
  40. package/dist/esm/v1/index.js.map +6 -0
  41. package/dist/esm/v1/index.mjs +2 -0
  42. package/dist/esm/v1/index.mjs.map +1 -0
  43. package/dist/esm/v1/index.native.js +2 -0
  44. package/dist/esm/v1/index.native.js.map +1 -0
  45. package/dist/jsx/createImage.js +112 -0
  46. package/dist/jsx/createImage.js.map +6 -0
  47. package/dist/jsx/createImage.mjs +99 -0
  48. package/dist/jsx/createImage.mjs.map +1 -0
  49. package/dist/jsx/createImage.native.js +128 -0
  50. package/dist/jsx/createImage.native.js.map +1 -0
  51. package/dist/jsx/types.js +1 -0
  52. package/dist/jsx/types.js.map +6 -0
  53. package/dist/jsx/types.mjs +2 -0
  54. package/dist/jsx/types.mjs.map +1 -0
  55. package/dist/jsx/types.native.js +19 -0
  56. package/dist/jsx/types.native.js.map +1 -0
  57. package/dist/jsx/v1/Image.js +52 -0
  58. package/dist/jsx/v1/Image.js.map +6 -0
  59. package/dist/jsx/v1/Image.mjs +52 -0
  60. package/dist/jsx/v1/Image.mjs.map +1 -0
  61. package/dist/jsx/v1/Image.native.js +105 -0
  62. package/dist/jsx/v1/Image.native.js.map +1 -0
  63. package/dist/jsx/v1/index.js +2 -0
  64. package/dist/jsx/v1/index.js.map +6 -0
  65. package/dist/jsx/v1/index.mjs +2 -0
  66. package/dist/jsx/v1/index.mjs.map +1 -0
  67. package/dist/jsx/v1/index.native.js +21 -0
  68. package/dist/jsx/v1/index.native.js.map +1 -0
  69. package/package.json +4 -4
  70. package/types/Image.native.d.ts.map +1 -0
  71. package/types/createImage.d.ts.map +1 -0
  72. package/types/types.d.ts.map +1 -0
  73. package/types/v1/Image.d.ts.map +1 -0
  74. package/types/v1/index.d.ts.map +1 -0
@@ -0,0 +1,105 @@
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
+ __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: !0
13
+ });
14
+ },
15
+ __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
17
+ get: () => from[key],
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
+ value: mod,
29
+ enumerable: !0
30
+ }) : target, mod)),
31
+ __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
+ value: !0
33
+ }), mod);
34
+ var Image_exports = {};
35
+ __export(Image_exports, {
36
+ Image: () => Image
37
+ });
38
+ module.exports = __toCommonJS(Image_exports);
39
+ var import_jsx_runtime = require("react/jsx-runtime"),
40
+ import_react = __toESM(require("react"), 1),
41
+ import_constants = require("@tamagui/constants"),
42
+ import_web = require("@tamagui/web"),
43
+ import_react_native = require("react-native");
44
+ function _type_of(obj) {
45
+ "@swc/helpers - typeof";
46
+
47
+ return obj && typeof Symbol < "u" && obj.constructor === Symbol ? "symbol" : typeof obj;
48
+ }
49
+ var StyledImage = (0, import_web.styled)(import_react_native.Image, {
50
+ name: "Image"
51
+ }),
52
+ hasWarned = !1,
53
+ Image = StyledImage.styleable(function (inProps, ref) {
54
+ var [props, style] = (0, import_web.usePropsAndStyle)(inProps),
55
+ {
56
+ src,
57
+ source,
58
+ objectFit,
59
+ ...rest
60
+ } = props;
61
+ process.env.NODE_ENV === "development" && typeof src == "string" && (typeof props.width == "string" && props.width[0] !== "$" || typeof props.height == "string" && props.height[0] !== "$") && (hasWarned || (hasWarned = !0, 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.')));
62
+ var finalSource = typeof src == "string" ? {
63
+ uri: src,
64
+ ...(import_constants.isWeb && {
65
+ width: props.width || style?.width,
66
+ height: props.height || style?.height
67
+ })
68
+ } : source ?? src;
69
+ if (finalSource && (typeof finalSource > "u" ? "undefined" : _type_of(finalSource)) === "object") {
70
+ if (!Array.isArray(finalSource) && typeof finalSource.uri == "number" && (finalSource = finalSource.uri, source && (typeof source > "u" ? "undefined" : _type_of(source)) === "object" && !Array.isArray(source))) {
71
+ var _style, _style1, _width;
72
+ (_width = (_style = style).width) !== null && _width !== void 0 || (_style.width = source.width);
73
+ var _height;
74
+ (_height = (_style1 = style).height) !== null && _height !== void 0 || (_style1.height = source.height);
75
+ }
76
+ process.env.NODE_ENV === "development" && process.env.TAMAGUI_IMAGE_CHECK_ERROR && import_react.default.useEffect(function () {
77
+ async function run() {
78
+ if (typeof src == "string") try {
79
+ await fetch(src).then(function (res) {
80
+ return res.text();
81
+ });
82
+ } catch {
83
+ console.error(`Error loading image: ${src}`, {
84
+ props
85
+ });
86
+ }
87
+ }
88
+ run();
89
+ }, [src]), finalSource.default && (finalSource = finalSource.default);
90
+ }
91
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.Image, {
92
+ resizeMode: objectFit,
93
+ ref,
94
+ source: finalSource,
95
+ style,
96
+ ...rest
97
+ });
98
+ });
99
+ Image.getSize = import_react_native.Image.getSize;
100
+ Image.getSizeWithHeaders = import_react_native.Image.getSizeWithHeaders;
101
+ Image.prefetch = import_react_native.Image.prefetch;
102
+ Image.prefetchWithMetadata = import_react_native.Image.prefetchWithMetadata;
103
+ Image.abortPrefetch = import_react_native.Image.abortPrefetch;
104
+ Image.queryCache = import_react_native.Image.queryCache;
105
+ //# sourceMappingURL=Image.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","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","error","jsx"],"sources":["../../../src/v1/Image.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,18 @@
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") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
7
+ get: () => from[key],
8
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
9
+ });
10
+ return to;
11
+ },
12
+ __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
13
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
14
+ value: !0
15
+ }), mod);
16
+ var v1_exports = {};
17
+ module.exports = __toCommonJS(v1_exports);
18
+ __reExport(v1_exports, require("./Image.cjs"), module.exports);
@@ -0,0 +1,15 @@
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))
8
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
+ return to;
10
+ }, __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
11
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
12
+ var v1_exports = {};
13
+ module.exports = __toCommonJS(v1_exports);
14
+ __reExport(v1_exports, require("./Image"), module.exports);
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/v1/index.ts"],
4
+ "mappings": ";;;;;;;;;;;AAAA;AAAA;AAAA,uBAAc,oBAAd;",
5
+ "names": []
6
+ }
@@ -0,0 +1,21 @@
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") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
9
+ get: () => from[key],
10
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
11
+ });
12
+ return to;
13
+ },
14
+ __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
16
+ value: !0
17
+ }), mod);
18
+ var v1_exports = {};
19
+ module.exports = __toCommonJS(v1_exports);
20
+ __reExport(v1_exports, require("./Image.native.js"), module.exports);
21
+ //# 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,112 @@
1
+ import { getTokenValue, styled } from "@tamagui/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
+ }, defaultTransformSource = (props) => {
17
+ const { src, source, width, height } = props;
18
+ return source || (src && typeof src != "string" ? src : {
19
+ uri: src,
20
+ width,
21
+ height
22
+ });
23
+ };
24
+ function createImage(options) {
25
+ const {
26
+ Component,
27
+ mapObjectFitToResizeMode = defaultObjectFitMap,
28
+ resizeModePropName = "resizeMode",
29
+ objectPositionPropName,
30
+ transformSource = defaultTransformSource
31
+ } = options, ImageComponent = styled(
32
+ Component,
33
+ {
34
+ name: "Image"
35
+ },
36
+ {
37
+ inlineProps: /* @__PURE__ */ new Set([
38
+ "source",
39
+ "placeholder",
40
+ "transition",
41
+ "contentFit",
42
+ "contentPosition",
43
+ "cachePolicy",
44
+ "recyclingKey",
45
+ "allowDownscaling",
46
+ "autoplay",
47
+ "blurRadius",
48
+ "priority",
49
+ "placeholderContentFit",
50
+ "responsivePolicy",
51
+ "onLoadStart",
52
+ "onProgress",
53
+ "onLoadEnd"
54
+ ])
55
+ }
56
+ ).styleable((incomingProps, ref) => {
57
+ const props = incomingProps, {
58
+ src,
59
+ width,
60
+ height,
61
+ objectFit,
62
+ objectPosition,
63
+ // web only props - filter out on native
64
+ decoding,
65
+ elementTiming,
66
+ fetchpriority,
67
+ isMap,
68
+ loading,
69
+ sizes,
70
+ useMap,
71
+ onLoad,
72
+ onError,
73
+ ...rest
74
+ } = props, resolvedWidth = typeof width == "string" && width[0] === "$" ? getTokenValue(width) : width, resolvedHeight = typeof height == "string" && height[0] === "$" ? getTokenValue(height) : height, finalSource = transformSource({
75
+ src,
76
+ width: resolvedWidth,
77
+ height: resolvedHeight
78
+ }), finalProps = {
79
+ ...rest,
80
+ source: finalSource,
81
+ style: {
82
+ width: resolvedWidth,
83
+ height: resolvedHeight
84
+ }
85
+ };
86
+ return objectFit && (finalProps[resizeModePropName] = mapObjectFitToResizeMode(objectFit)), objectPositionPropName && objectPosition && (finalProps[objectPositionPropName] = objectPosition), onLoad && (finalProps.onLoad = (e) => {
87
+ const source = e?.nativeEvent?.source || e?.source || {};
88
+ onLoad({
89
+ target: {
90
+ naturalHeight: source?.height,
91
+ naturalWidth: source?.width
92
+ },
93
+ type: "load"
94
+ });
95
+ }), onError && (finalProps.onError = () => {
96
+ onError({
97
+ type: "error"
98
+ });
99
+ }), /* @__PURE__ */ jsx(Component, { ref, ...finalProps });
100
+ }), comp = Component;
101
+ return ImageComponent.getSize = comp.getSize || (() => {
102
+ }), ImageComponent.getSizeWithHeaders = comp.getSizeWithHeaders || (() => {
103
+ }), ImageComponent.prefetch = comp.prefetch || (() => {
104
+ }), ImageComponent.prefetchWithMetadata = comp.prefetchWithMetadata || (() => {
105
+ }), ImageComponent.abortPrefetch = comp.abortPrefetch || (() => {
106
+ }), ImageComponent.queryCache = comp.queryCache || (() => {
107
+ }), ImageComponent;
108
+ }
109
+ export {
110
+ createImage
111
+ };
112
+ //# sourceMappingURL=createImage.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/createImage.tsx"],
4
+ "mappings": "AAAA,SAAS,eAAe,cAAc;AAyN3B;AA/KX,MAAM,sBAAsB,CAAC,cAAuC;AAClE,UAAQ,WAAW;AAAA,IACjB,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF,GAEM,yBAAyB,CAAC,UAK1B;AACJ,QAAM,EAAE,KAAK,QAAQ,OAAO,OAAO,IAAI;AACvC,SAAI,WACA,OAAO,OAAO,OAAQ,WAAiB,MACpC;AAAA,IACL,KAAK;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAyBO,SAAS,YACd,SACA;AACA,QAAM;AAAA,IACJ;AAAA,IACA,2BAA2B;AAAA,IAC3B,qBAAqB;AAAA,IACrB;AAAA,IACA,kBAAkB;AAAA,EACpB,IAAI,SAmCE,iBAbc;AAAA,IAClB;AAAA,IACA;AAAA,MACE,MAAM;AAAA,IACR;AAAA,IACA;AAAA,MACE,aAzBmB,oBAAI,IAAI;AAAA,QAC7B;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IASC;AAAA,EACF,EAKmC,UAAyB,CAAC,eAAe,QAAQ;AAClF,UAAM,QAAQ,eACR;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IACL,IAAI,OAEE,gBACJ,OAAO,SAAU,YAAY,MAAM,CAAC,MAAM,MAAM,cAAc,KAAY,IAAI,OAC1E,iBACJ,OAAO,UAAW,YAAY,OAAO,CAAC,MAAM,MACxC,cAAc,MAAa,IAC3B,QAEA,cAAc,gBAAgB;AAAA,MAClC;AAAA,MACA,OAAO;AAAA,MACP,QAAQ;AAAA,IACV,CAAC,GAEK,aAAkB;AAAA,MACtB,GAAG;AAAA,MACH,QAAQ;AAAA,MACR,OAAO;AAAA,QACL,OAAO;AAAA,QACP,QAAQ;AAAA,MACV;AAAA,IACF;AAGA,WAAI,cACF,WAAW,kBAAkB,IAAI,yBAAyB,SAAS,IAIjE,0BAA0B,mBAC5B,WAAW,sBAAsB,IAAI,iBAInC,WACF,WAAW,SAAS,CAAC,MAAW;AAC9B,YAAM,SAAS,GAAG,aAAa,UAAU,GAAG,UAAU,CAAC;AACvD,aAAO;AAAA,QACL,QAAQ;AAAA,UACN,eAAe,QAAQ;AAAA,UACvB,cAAc,QAAQ;AAAA,QACxB;AAAA,QACA,MAAM;AAAA,MACR,CAAQ;AAAA,IACV,IAIE,YACF,WAAW,UAAU,MAAM;AACzB,cAAQ;AAAA,QACN,MAAM;AAAA,MACR,CAAQ;AAAA,IACV,IAIK,oBAAC,aAAU,KAAW,GAAG,YAAY;AAAA,EAC9C,CAAC,GAGK,OAAO;AACb,wBAAe,UAAU,KAAK,YAAY,MAAM;AAAA,EAAC,IACjD,eAAe,qBAAqB,KAAK,uBAAuB,MAAM;AAAA,EAAC,IACvE,eAAe,WAAW,KAAK,aAAa,MAAM;AAAA,EAAC,IACnD,eAAe,uBAAuB,KAAK,yBAAyB,MAAM;AAAA,EAAC,IAC3E,eAAe,gBAAgB,KAAK,kBAAkB,MAAM;AAAA,EAAC,IAC7D,eAAe,aAAa,KAAK,eAAe,MAAM;AAAA,EAAC,IAEhD;AACT;",
5
+ "names": []
6
+ }
@@ -0,0 +1,99 @@
1
+ import { getTokenValue, styled } from "@tamagui/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
+ defaultTransformSource = props => {
18
+ const {
19
+ src,
20
+ source,
21
+ width,
22
+ height
23
+ } = props;
24
+ return source || (src && typeof src != "string" ? src : {
25
+ uri: src,
26
+ width,
27
+ height
28
+ });
29
+ };
30
+ function createImage(options) {
31
+ const {
32
+ Component,
33
+ mapObjectFitToResizeMode = defaultObjectFitMap,
34
+ resizeModePropName = "resizeMode",
35
+ objectPositionPropName,
36
+ transformSource = defaultTransformSource
37
+ } = options,
38
+ ImageComponent = styled(Component, {
39
+ name: "Image"
40
+ }, {
41
+ inlineProps: /* @__PURE__ */new Set(["source", "placeholder", "transition", "contentFit", "contentPosition", "cachePolicy", "recyclingKey", "allowDownscaling", "autoplay", "blurRadius", "priority", "placeholderContentFit", "responsivePolicy", "onLoadStart", "onProgress", "onLoadEnd"])
42
+ }).styleable((incomingProps, ref) => {
43
+ const props = incomingProps,
44
+ {
45
+ src,
46
+ width,
47
+ height,
48
+ objectFit,
49
+ objectPosition,
50
+ // web only props - filter out on native
51
+ decoding,
52
+ elementTiming,
53
+ fetchpriority,
54
+ isMap,
55
+ loading,
56
+ sizes,
57
+ useMap,
58
+ onLoad,
59
+ onError,
60
+ ...rest
61
+ } = props,
62
+ resolvedWidth = typeof width == "string" && width[0] === "$" ? getTokenValue(width) : width,
63
+ resolvedHeight = typeof height == "string" && height[0] === "$" ? getTokenValue(height) : height,
64
+ finalSource = transformSource({
65
+ src,
66
+ width: resolvedWidth,
67
+ height: resolvedHeight
68
+ }),
69
+ finalProps = {
70
+ ...rest,
71
+ source: finalSource,
72
+ style: {
73
+ width: resolvedWidth,
74
+ height: resolvedHeight
75
+ }
76
+ };
77
+ return objectFit && (finalProps[resizeModePropName] = mapObjectFitToResizeMode(objectFit)), objectPositionPropName && objectPosition && (finalProps[objectPositionPropName] = objectPosition), onLoad && (finalProps.onLoad = e => {
78
+ const source = e?.nativeEvent?.source || e?.source || {};
79
+ onLoad({
80
+ target: {
81
+ naturalHeight: source?.height,
82
+ naturalWidth: source?.width
83
+ },
84
+ type: "load"
85
+ });
86
+ }), onError && (finalProps.onError = () => {
87
+ onError({
88
+ type: "error"
89
+ });
90
+ }), /* @__PURE__ */jsx(Component, {
91
+ ref,
92
+ ...finalProps
93
+ });
94
+ }),
95
+ comp = Component;
96
+ return ImageComponent.getSize = comp.getSize || (() => {}), ImageComponent.getSizeWithHeaders = comp.getSizeWithHeaders || (() => {}), ImageComponent.prefetch = comp.prefetch || (() => {}), ImageComponent.prefetchWithMetadata = comp.prefetchWithMetadata || (() => {}), ImageComponent.abortPrefetch = comp.abortPrefetch || (() => {}), ImageComponent.queryCache = comp.queryCache || (() => {}), ImageComponent;
97
+ }
98
+ export { createImage };
99
+ //# 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","ImageComponent","name","inlineProps","Set","styleable","incomingProps","ref","objectPosition","decoding","elementTiming","fetchpriority","isMap","loading","sizes","useMap","onLoad","onError","rest","resolvedWidth","resolvedHeight","finalSource","finalProps","style","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,102 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { getTokenValue, styled } from "@tamagui/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
+ defaultTransformSource = function (props) {
18
+ var {
19
+ src,
20
+ source,
21
+ width,
22
+ height
23
+ } = props;
24
+ return source || (src && typeof src != "string" ? src : {
25
+ uri: src,
26
+ width,
27
+ height
28
+ });
29
+ };
30
+ function createImage(options) {
31
+ var {
32
+ Component,
33
+ mapObjectFitToResizeMode = defaultObjectFitMap,
34
+ resizeModePropName = "resizeMode",
35
+ objectPositionPropName,
36
+ transformSource = defaultTransformSource
37
+ } = options,
38
+ inlinePropsSet = /* @__PURE__ */new Set(["source", "placeholder", "transition", "contentFit", "contentPosition", "cachePolicy", "recyclingKey", "allowDownscaling", "autoplay", "blurRadius", "priority", "placeholderContentFit", "responsivePolicy", "onLoadStart", "onProgress", "onLoadEnd"]),
39
+ StyledImage = styled(Component, {
40
+ name: "Image"
41
+ }, {
42
+ inlineProps: inlinePropsSet
43
+ }),
44
+ ImageComponent = StyledImage.styleable(function (incomingProps, ref) {
45
+ var props = incomingProps,
46
+ {
47
+ src,
48
+ width,
49
+ height,
50
+ objectFit,
51
+ objectPosition,
52
+ // web only props - filter out on native
53
+ decoding,
54
+ elementTiming,
55
+ fetchpriority,
56
+ isMap,
57
+ loading,
58
+ sizes,
59
+ useMap,
60
+ onLoad,
61
+ onError,
62
+ ...rest
63
+ } = props,
64
+ resolvedWidth = typeof width == "string" && width[0] === "$" ? getTokenValue(width) : width,
65
+ resolvedHeight = typeof height == "string" && height[0] === "$" ? getTokenValue(height) : height,
66
+ finalSource = transformSource({
67
+ src,
68
+ width: resolvedWidth,
69
+ height: resolvedHeight
70
+ }),
71
+ finalProps = {
72
+ ...rest,
73
+ source: finalSource,
74
+ style: {
75
+ width: resolvedWidth,
76
+ height: resolvedHeight
77
+ }
78
+ };
79
+ return objectFit && (finalProps[resizeModePropName] = mapObjectFitToResizeMode(objectFit)), objectPositionPropName && objectPosition && (finalProps[objectPositionPropName] = objectPosition), onLoad && (finalProps.onLoad = function (e) {
80
+ var _e_nativeEvent,
81
+ source = (e == null || (_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.source) || e?.source || {};
82
+ onLoad({
83
+ target: {
84
+ naturalHeight: source?.height,
85
+ naturalWidth: source?.width
86
+ },
87
+ type: "load"
88
+ });
89
+ }), onError && (finalProps.onError = function () {
90
+ onError({
91
+ type: "error"
92
+ });
93
+ }), /* @__PURE__ */_jsx(Component, {
94
+ ref,
95
+ ...finalProps
96
+ });
97
+ }),
98
+ comp = Component;
99
+ return ImageComponent.getSize = comp.getSize || function () {}, ImageComponent.getSizeWithHeaders = comp.getSizeWithHeaders || function () {}, ImageComponent.prefetch = comp.prefetch || function () {}, ImageComponent.prefetchWithMetadata = comp.prefetchWithMetadata || function () {}, ImageComponent.abortPrefetch = comp.abortPrefetch || function () {}, ImageComponent.queryCache = comp.queryCache || function () {}, ImageComponent;
100
+ }
101
+ export { createImage };
102
+ //# 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","objectPosition","decoding","elementTiming","fetchpriority","isMap","loading","sizes","useMap","onLoad","onError","rest","resolvedWidth","resolvedHeight","finalSource","finalProps","style","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 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "mappings": "",
5
+ "names": []
6
+ }
@@ -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,52 @@
1
+ import React from "react";
2
+ import { isWeb } from "@tamagui/constants";
3
+ import { styled, usePropsAndStyle } from "@tamagui/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 = !1;
10
+ const Image = StyledImage.styleable((inProps, ref) => {
11
+ const [props, style] = usePropsAndStyle(inProps), { src, source, objectFit, ...rest } = props;
12
+ process.env.NODE_ENV === "development" && typeof src == "string" && (typeof props.width == "string" && props.width[0] !== "$" || typeof props.height == "string" && props.height[0] !== "$") && (hasWarned || (hasWarned = !0, console.warn(
13
+ '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.'
14
+ )));
15
+ let finalSource = typeof src == "string" ? {
16
+ uri: src,
17
+ ...isWeb && {
18
+ width: props.width || style?.width,
19
+ height: props.height || style?.height
20
+ }
21
+ } : source ?? src;
22
+ return finalSource && typeof finalSource == "object" && (process.env.NODE_ENV === "development" && process.env.TAMAGUI_IMAGE_CHECK_ERROR && React.useEffect(() => {
23
+ async function run() {
24
+ if (typeof src == "string")
25
+ try {
26
+ await fetch(src).then((res) => res.text());
27
+ } catch {
28
+ console.error(`Error loading image: ${src}`, { props });
29
+ }
30
+ }
31
+ run();
32
+ }, [src]), finalSource.default && (finalSource = finalSource.default)), /* @__PURE__ */ jsx(
33
+ RNImage,
34
+ {
35
+ resizeMode: objectFit,
36
+ ref,
37
+ source: finalSource,
38
+ style,
39
+ ...rest
40
+ }
41
+ );
42
+ });
43
+ Image.getSize = RNImage.getSize;
44
+ Image.getSizeWithHeaders = RNImage.getSizeWithHeaders;
45
+ Image.prefetch = RNImage.prefetch;
46
+ Image.prefetchWithMetadata = RNImage.prefetchWithMetadata;
47
+ Image.abortPrefetch = RNImage.abortPrefetch;
48
+ Image.queryCache = RNImage.queryCache;
49
+ export {
50
+ Image
51
+ };
52
+ //# sourceMappingURL=Image.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/v1/Image.tsx"],
4
+ "mappings": "AAAA,OAAO,WAAW;AAClB,SAAS,aAAa;AAQtB,SAAS,QAAQ,wBAAwB;AAEzC,SAAS,SAAS,eAAe;AAqH7B;AAnHJ,MAAM,cAAc,OAAO,SAAS;AAAA,EAClC,MAAM;AACR,CAAC;AAmCD,IAAI,YAAY;AAMT,MAAM,QAAQ,YAAY,UAAsB,CAAC,SAAS,QAAQ;AACvE,QAAM,CAAC,OAAO,KAAK,IAAI,iBAAiB,OAAO,GACzC,EAAE,KAAK,QAAQ,WAAW,GAAG,KAAK,IAAI;AAE5C,EAAI,QAAQ,IAAI,aAAa,iBACvB,OAAO,OAAQ,aAEd,OAAO,MAAM,SAAU,YAAY,MAAM,MAAM,CAAC,MAAM,OACtD,OAAO,MAAM,UAAW,YAAY,MAAM,OAAO,CAAC,MAAM,SAEpD,cACH,YAAY,IACZ,QAAQ;AAAA,IACN;AAAA,EACF;AAMR,MAAI,cACF,OAAO,OAAQ,WACX;AAAA,IACE,KAAK;AAAA,IACL,GAAI,SAAS;AAAA,MACX,OAAO,MAAM,SAAS,OAAO;AAAA,MAC7B,QAAQ,MAAM,UAAU,OAAO;AAAA,IACjC;AAAA,EACF,IACC,UAAU;AAEjB,SAAI,eAAe,OAAO,eAAgB,aAgBpC,QAAQ,IAAI,aAAa,iBAAiB,QAAQ,IAAI,6BAExD,MAAM,UAAU,MAAM;AACpB,mBAAe,MAAM;AACnB,UAAI,OAAO,OAAQ;AACjB,YAAI;AACF,gBAAM,MAAM,GAAG,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC;AAAA,QAC3C,QAAc;AACZ,kBAAQ,MAAM,wBAAwB,GAAG,IAAI,EAAE,MAAM,CAAC;AAAA,QACxD;AAAA,IAEJ;AAEA,QAAI;AAAA,EACN,GAAG,CAAC,GAAG,CAAC,GAIN,YAAY,YACd,cAAc,YAAY,WAM5B;AAAA,IAAC;AAAA;AAAA,MACC,YAAY;AAAA,MACZ;AAAA,MACA,QAAQ;AAAA,MACR;AAAA,MACC,GAAI;AAAA;AAAA,EACP;AAEJ,CAAC;AAED,MAAM,UAAU,QAAQ;AACxB,MAAM,qBAAqB,QAAQ;AACnC,MAAM,WAAW,QAAQ;AACzB,MAAM,uBAAuB,QAAQ;AACrC,MAAM,gBAAgB,QAAQ;AAC9B,MAAM,aAAa,QAAQ;",
5
+ "names": []
6
+ }