@tamagui/avatar 2.7.7 → 3.0.0-beta.643.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.
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+
3
4
  var __create = Object.create;
4
5
  var __defProp = Object.defineProperty;
5
6
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -7,40 +8,33 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
7
8
  var __getProtoOf = Object.getPrototypeOf;
8
9
  var __hasOwnProp = Object.prototype.hasOwnProperty;
9
10
  var __export = (target, all) => {
10
- for (var name in all) __defProp(target, name, {
11
- get: all[name],
12
- enumerable: true
13
- });
11
+ for (var name in all) __defProp(target, name, {
12
+ get: all[name],
13
+ enumerable: true
14
+ });
14
15
  };
15
16
  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;
17
+ if (from && typeof from === "object" || typeof from === "function") {
18
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
19
+ get: () => from[key],
20
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
21
+ });
22
+ }
23
+ return to;
23
24
  };
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
25
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
+ value: mod,
27
+ enumerable: true
32
28
  }) : target, mod));
33
- var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
- value: true
35
- }), mod);
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
36
30
  var Avatar_exports = {};
37
31
  __export(Avatar_exports, {
38
- Avatar: () => Avatar,
39
- AvatarFallback: () => AvatarFallback,
40
- AvatarFallbackFrame: () => AvatarFallbackFrame,
41
- AvatarFrame: () => AvatarFrame,
42
- AvatarImage: () => AvatarImage,
43
- createAvatarScope: () => createAvatarScope
32
+ Avatar: () => Avatar,
33
+ AvatarFallback: () => AvatarFallback,
34
+ AvatarFallbackFrame: () => AvatarFallbackFrame,
35
+ AvatarFrame: () => AvatarFrame,
36
+ AvatarImage: () => AvatarImage,
37
+ createAvatarScope: () => createAvatarScope
44
38
  });
45
39
  module.exports = __toCommonJS(Avatar_exports);
46
40
  var import_jsx_runtime = require("react/jsx-runtime");
@@ -52,133 +46,108 @@ var import_shapes = require("@tamagui/shapes");
52
46
  var import_stacks = require("@tamagui/stacks");
53
47
  var React = __toESM(require("react"), 1);
54
48
  function _type_of(obj) {
55
- "@swc/helpers - typeof";
56
-
57
- return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
49
+ "@swc/helpers - typeof";
50
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
58
51
  }
59
52
  var AVATAR_NAME = "Avatar";
60
53
  var [createAvatarContext, createAvatarScope] = (0, import_create_context.createContextScope)(AVATAR_NAME);
61
54
  var [AvatarProvider, useAvatarContext] = createAvatarContext(AVATAR_NAME);
62
55
  var IMAGE_NAME = "AvatarImage";
63
- var AvatarImage = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
64
- var {
65
- __scopeAvatar,
66
- src,
67
- source,
68
- onLoadingStatusChange = function () {},
69
- ...imageProps
70
- } = props;
71
- var context = useAvatarContext(IMAGE_NAME, __scopeAvatar);
72
- var [status, setStatus] = React.useState("idle");
73
- var resolvedSrc = src || (source && (typeof source === "undefined" ? "undefined" : _type_of(source)) === "object" && "uri" in source ? source.uri : source);
74
- React.useEffect(function () {
75
- if (!resolvedSrc) {
76
- setStatus("error");
77
- } else {
78
- setStatus("idle");
79
- }
80
- }, [resolvedSrc]);
81
- React.useEffect(function () {
82
- onLoadingStatusChange(status);
83
- context.onImageLoadingStatusChange(status);
84
- }, [status]);
85
- if (!resolvedSrc) {
86
- return null;
87
- }
88
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_stacks.YStack, {
89
- fullscreen: true,
90
- zIndex: 1,
91
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_image.Image, {
92
- position: "absolute",
93
- top: 0,
94
- left: 0,
95
- right: 0,
96
- bottom: 0,
97
- objectFit: "cover",
98
- // fill the frame. previously the image was sized to
99
- // getShapeSize(context.size) — but that resolves a numeric `size`
100
- // (e.g. <Avatar size={16} />) as a size-TOKEN index (tokens.size[16]),
101
- // so it got the token-scale value (~224px) instead of 16px, blowing
102
- // the image far past its frame; object-fit:cover then showed a
103
- // blurry mis-cropped corner. the frame already owns the size, so the
104
- // image just fills it — correct for numeric and token sizes alike.
105
- width: "100%",
106
- height: "100%",
107
- ...imageProps,
108
- // @ts-ignore
109
- ref: forwardedRef,
110
- // @ts-ignore
111
- src: resolvedSrc,
112
- // onLoadStart={() => {
113
- // // setStatus('loading')
114
- // }}
115
- onError: function () {
116
- setStatus("error");
117
- },
118
- onLoad: function () {
119
- setStatus("loaded");
120
- }
121
- })
122
- });
56
+ var AvatarImage = (0, import_core.createRefComponent)(function(props, forwardedRef) {
57
+ var { __scopeAvatar, src, source, onLoadingStatusChange = function() {}, ...imageProps } = props;
58
+ var context = useAvatarContext(IMAGE_NAME, __scopeAvatar);
59
+ var [status, setStatus] = React.useState("idle");
60
+ var resolvedSrc = src || (source && (typeof source === "undefined" ? "undefined" : _type_of(source)) === "object" && "uri" in source ? source.uri : source);
61
+ React.useEffect(function() {
62
+ if (!resolvedSrc) {
63
+ setStatus("error");
64
+ } else {
65
+ setStatus("idle");
66
+ }
67
+ }, [resolvedSrc]);
68
+ React.useEffect(function() {
69
+ onLoadingStatusChange(status);
70
+ context.onImageLoadingStatusChange(status);
71
+ }, [status]);
72
+ if (!resolvedSrc) {
73
+ return null;
74
+ }
75
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_stacks.YStack, {
76
+ position: "absolute",
77
+ inset: 0,
78
+ zIndex: 1,
79
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_image.Image, {
80
+ position: "absolute",
81
+ top: 0,
82
+ left: 0,
83
+ right: 0,
84
+ bottom: 0,
85
+ objectFit: "cover",
86
+ width: "100%",
87
+ height: "100%",
88
+ ...imageProps,
89
+ ref: forwardedRef,
90
+ src: resolvedSrc,
91
+ onError: function() {
92
+ setStatus("error");
93
+ },
94
+ onLoad: function() {
95
+ setStatus("loaded");
96
+ }
97
+ })
98
+ });
123
99
  });
124
100
  AvatarImage.displayName = IMAGE_NAME;
125
101
  var FALLBACK_NAME = "AvatarFallback";
126
102
  var AvatarFallbackFrame = (0, import_core.styled)(import_stacks.YStack, {
127
- name: FALLBACK_NAME,
128
- position: "absolute",
129
- fullscreen: true,
130
- zIndex: 0
103
+ displayName: FALLBACK_NAME,
104
+ position: "absolute",
105
+ inset: 0,
106
+ zIndex: 0
131
107
  });
132
- var AvatarFallback = AvatarFallbackFrame.styleable(function (props, forwardedRef) {
133
- var {
134
- __scopeAvatar,
135
- delayMs,
136
- ...fallbackProps
137
- } = props;
138
- var context = useAvatarContext(FALLBACK_NAME, __scopeAvatar);
139
- var [canRender, setCanRender] = React.useState(delayMs === void 0);
140
- React.useEffect(function () {
141
- if (delayMs !== void 0) {
142
- var timerId = setTimeout(function () {
143
- return setCanRender(true);
144
- }, delayMs);
145
- return function () {
146
- return clearTimeout(timerId);
147
- };
148
- }
149
- }, [delayMs]);
150
- return canRender && context.imageLoadingStatus !== "loaded" ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(AvatarFallbackFrame, {
151
- ...fallbackProps,
152
- ref: forwardedRef
153
- }) : null;
108
+ var AvatarFallback = (0, import_core.createStyledHOC)(AvatarFallbackFrame, function(props, forwardedRef) {
109
+ var { __scopeAvatar, delay, ...fallbackProps } = props;
110
+ var context = useAvatarContext(FALLBACK_NAME, __scopeAvatar);
111
+ var [canRender, setCanRender] = React.useState(delay === void 0);
112
+ React.useEffect(function() {
113
+ if (delay !== void 0) {
114
+ var timerId = setTimeout(function() {
115
+ return setCanRender(true);
116
+ }, delay);
117
+ return function() {
118
+ return clearTimeout(timerId);
119
+ };
120
+ }
121
+ }, [delay]);
122
+ return canRender && context.imageLoadingStatus !== "loaded" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AvatarFallbackFrame, {
123
+ ...fallbackProps,
124
+ ref: forwardedRef
125
+ }) : null;
154
126
  });
155
127
  AvatarFallback.displayName = FALLBACK_NAME;
156
128
  var AvatarFrame = (0, import_core.styled)(import_shapes.Square, {
157
- name: AVATAR_NAME,
158
- position: "relative",
159
- overflow: "hidden"
129
+ displayName: AVATAR_NAME,
130
+ position: "relative",
131
+ overflow: "hidden"
160
132
  });
161
- var Avatar = (0, import_helpers.withStaticProperties)(/* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
162
- var {
163
- __scopeAvatar,
164
- size = "$true",
165
- ...avatarProps
166
- } = props;
167
- var [imageLoadingStatus, setImageLoadingStatus] = React.useState("idle");
168
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(AvatarProvider, {
169
- size,
170
- scope: __scopeAvatar,
171
- imageLoadingStatus,
172
- onImageLoadingStatusChange: setImageLoadingStatus,
173
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(AvatarFrame, {
174
- size,
175
- ...avatarProps,
176
- ref: forwardedRef
177
- })
178
- });
133
+ var Avatar = (0, import_helpers.withStaticProperties)((0, import_core.createRefComponent)(function(props, forwardedRef) {
134
+ var { __scopeAvatar, size = true, ...avatarProps } = props;
135
+ var [imageLoadingStatus, setImageLoadingStatus] = React.useState("idle");
136
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AvatarProvider, {
137
+ size,
138
+ scope: __scopeAvatar,
139
+ imageLoadingStatus,
140
+ onImageLoadingStatusChange: setImageLoadingStatus,
141
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AvatarFrame, {
142
+ size,
143
+ ...avatarProps,
144
+ ref: forwardedRef
145
+ })
146
+ });
179
147
  }), {
180
- Image: AvatarImage,
181
- Fallback: AvatarFallback
148
+ Image: AvatarImage,
149
+ Fallback: AvatarFallback
182
150
  });
183
151
  Avatar.displayName = AVATAR_NAME;
152
+
184
153
  //# sourceMappingURL=Avatar.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","Avatar_exports","__export","Avatar","AvatarFallback","AvatarFallbackFrame","AvatarFrame","AvatarImage","createAvatarScope","module","exports","import_jsx_runtime","require","import_core","import_create_context","import_helpers","import_image","import_shapes","import_stacks","React","__toESM","_type_of","obj","Symbol","constructor","AVATAR_NAME","createAvatarContext","createContextScope","AvatarProvider","useAvatarContext","IMAGE_NAME","forwardRef","props","forwardedRef","__scopeAvatar","src","source","onLoadingStatusChange","imageProps","context","status","setStatus","useState","resolvedSrc","uri","useEffect","onImageLoadingStatusChange","jsx","YStack","fullscreen","zIndex","children","Image","position","top","left","right","bottom","objectFit","width","height","ref","onError","onLoad","displayName","FALLBACK_NAME","styled","name","styleable","delayMs","fallbackProps","canRender","setCanRender","timerId","setTimeout","clearTimeout","imageLoadingStatus","Square","overflow"],"sources":["../../src/Avatar.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Avatar.native.js","names":[],"sources":["cjs/Avatar.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar Avatar_exports = {};\n__export(Avatar_exports, {\n Avatar: () => Avatar,\n AvatarFallback: () => AvatarFallback,\n AvatarFallbackFrame: () => AvatarFallbackFrame,\n AvatarFrame: () => AvatarFrame,\n AvatarImage: () => AvatarImage,\n createAvatarScope: () => createAvatarScope\n});\nmodule.exports = __toCommonJS(Avatar_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_core = require(\"@tamagui/core\");\nvar import_create_context = require(\"@tamagui/create-context\");\nvar import_helpers = require(\"@tamagui/helpers\");\nvar import_image = require(\"@tamagui/image\");\nvar import_shapes = require(\"@tamagui/shapes\");\nvar import_stacks = require(\"@tamagui/stacks\");\nvar React = __toESM(require(\"react\"), 1);\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar AVATAR_NAME = \"Avatar\";\nvar [createAvatarContext, createAvatarScope] = (0, import_create_context.createContextScope)(AVATAR_NAME);\nvar [AvatarProvider, useAvatarContext] = createAvatarContext(AVATAR_NAME);\nvar IMAGE_NAME = \"AvatarImage\";\nvar AvatarImage = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var { __scopeAvatar, src, source, onLoadingStatusChange = function() {\n }, ...imageProps } = props;\n var context = useAvatarContext(IMAGE_NAME, __scopeAvatar);\n var [status, setStatus] = React.useState(\"idle\");\n var resolvedSrc = src || (source && (typeof source === \"undefined\" ? \"undefined\" : _type_of(source)) === \"object\" && \"uri\" in source ? source.uri : source);\n React.useEffect(function() {\n if (!resolvedSrc) {\n setStatus(\"error\");\n } else {\n setStatus(\"idle\");\n }\n }, [\n resolvedSrc\n ]);\n React.useEffect(function() {\n onLoadingStatusChange(status);\n context.onImageLoadingStatusChange(status);\n }, [\n status\n ]);\n if (!resolvedSrc) {\n return null;\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_stacks.YStack, {\n position: \"absolute\",\n inset: 0,\n zIndex: 1,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_image.Image, {\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n objectFit: \"cover\",\n // fill the frame. previously the image was sized to\n // getShapeSize(context.size) — but that resolves a numeric `size`\n // (e.g. <Avatar size={16} />) as a size-TOKEN index (tokens.size[16]),\n // so it got the token-scale value (~224px) instead of 16px, blowing\n // the image far past its frame; object-fit:cover then showed a\n // blurry mis-cropped corner. the frame already owns the size, so the\n // image just fills it — correct for numeric and token sizes alike.\n width: \"100%\",\n height: \"100%\",\n ...imageProps,\n // @ts-ignore\n ref: forwardedRef,\n // @ts-ignore\n src: resolvedSrc,\n // onLoadStart={() => {\n // // setStatus('loading')\n // }}\n onError: function() {\n setStatus(\"error\");\n },\n onLoad: function() {\n setStatus(\"loaded\");\n }\n })\n });\n});\nAvatarImage.displayName = IMAGE_NAME;\nvar FALLBACK_NAME = \"AvatarFallback\";\nvar AvatarFallbackFrame = (0, import_core.styled)(import_stacks.YStack, {\n displayName: FALLBACK_NAME,\n position: \"absolute\",\n inset: 0,\n zIndex: 0\n});\nvar AvatarFallback = (0, import_core.createStyledHOC)(AvatarFallbackFrame, function(props, forwardedRef) {\n var { __scopeAvatar, delay, ...fallbackProps } = props;\n var context = useAvatarContext(FALLBACK_NAME, __scopeAvatar);\n var [canRender, setCanRender] = React.useState(delay === void 0);\n React.useEffect(function() {\n if (delay !== void 0) {\n var timerId = setTimeout(function() {\n return setCanRender(true);\n }, delay);\n return function() {\n return clearTimeout(timerId);\n };\n }\n }, [\n delay\n ]);\n return canRender && context.imageLoadingStatus !== \"loaded\" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AvatarFallbackFrame, {\n ...fallbackProps,\n ref: forwardedRef\n }) : null;\n});\nAvatarFallback.displayName = FALLBACK_NAME;\nvar AvatarFrame = (0, import_core.styled)(import_shapes.Square, {\n displayName: AVATAR_NAME,\n position: \"relative\",\n overflow: \"hidden\"\n});\nvar Avatar = (0, import_helpers.withStaticProperties)((0, import_core.createRefComponent)(function(props, forwardedRef) {\n var { __scopeAvatar, size = true, ...avatarProps } = props;\n var [imageLoadingStatus, setImageLoadingStatus] = React.useState(\"idle\");\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AvatarProvider, {\n size,\n scope: __scopeAvatar,\n imageLoadingStatus,\n onImageLoadingStatusChange: setImageLoadingStatus,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AvatarFrame, {\n size,\n ...avatarProps,\n ref: forwardedRef\n })\n });\n}), {\n Image: AvatarImage,\n Fallback: AvatarFallback\n});\nAvatar.displayName = AVATAR_NAME;\n//# sourceMappingURL=Avatar.js.map\n"],"mappings":"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"}
@@ -1,20 +1,19 @@
1
+
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
6
  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;
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
9
+ get: () => from[key],
10
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
11
+ });
12
+ }
13
+ return to;
13
14
  };
14
15
  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);
16
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
17
  var index_exports = {};
19
18
  module.exports = __toCommonJS(index_exports);
20
- __reExport(index_exports, require("./Avatar.cjs"), module.exports);
19
+ __reExport(index_exports, require("./Avatar.cjs"), module.exports);
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from === "object" || typeof from === "function") {
10
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
11
+ get: () => from[key],
12
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
13
+ });
14
+ }
15
+ return to;
16
+ };
17
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var index_exports = {};
20
+ module.exports = __toCommonJS(index_exports);
21
+ __reExport(index_exports, require("./Avatar.native.js"), module.exports);
@@ -1,23 +1,23 @@
1
1
  "use strict";
2
2
 
3
+
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
8
  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;
9
+ if (from && typeof from === "object" || typeof from === "function") {
10
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
11
+ get: () => from[key],
12
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
13
+ });
14
+ }
15
+ return to;
15
16
  };
16
17
  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);
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
19
  var index_exports = {};
21
20
  module.exports = __toCommonJS(index_exports);
22
21
  __reExport(index_exports, require("./Avatar.native.js"), module.exports);
22
+
23
23
  //# sourceMappingURL=index.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","index_exports","module","exports"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,aAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAP,YAAc,CAAAK,aAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.native.js","names":[],"sources":["cjs/index.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar index_exports = {};\nmodule.exports = __toCommonJS(index_exports);\n__reExport(index_exports, require(\"./Avatar\"), module.exports);\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,cAAc,QAAQ,KAAK,kBAAkB,YAAY,QAAQ,KAAK,SAAS,GAAG,gBAAgB,YAAY,cAAc,KAAK,SAAS;AAC9I,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,gBAAgB,CAAC;AACrB,OAAO,UAAU,aAAa,aAAa;AAC3C,WAAW,eAAe,QAAQ,oBAAU,GAAG,OAAO,OAAO"}
@@ -1,4 +1,4 @@
1
- import { styled } from "@tamagui/core";
1
+ import { createRefComponent, createStyledHOC, styled } from "@tamagui/core";
2
2
  import { createContextScope } from "@tamagui/create-context";
3
3
  import { withStaticProperties } from "@tamagui/helpers";
4
4
  import { Image } from "@tamagui/image";
@@ -6,114 +6,103 @@ import { Square } from "@tamagui/shapes";
6
6
  import { YStack } from "@tamagui/stacks";
7
7
  import * as React from "react";
8
8
  import { jsx } from "react/jsx-runtime";
9
+
9
10
  const AVATAR_NAME = "Avatar";
10
11
  const [createAvatarContext, createAvatarScope] = createContextScope(AVATAR_NAME);
11
12
  const [AvatarProvider, useAvatarContext] = createAvatarContext(AVATAR_NAME);
12
13
  const IMAGE_NAME = "AvatarImage";
13
- const AvatarImage = React.forwardRef((props, forwardedRef) => {
14
- const {
15
- __scopeAvatar,
16
- src,
17
- source,
18
- onLoadingStatusChange = () => {},
19
- ...imageProps
20
- } = props;
21
- const context = useAvatarContext(IMAGE_NAME, __scopeAvatar);
22
- const [status, setStatus] = React.useState("idle");
23
- const resolvedSrc = src || (source && typeof source === "object" && "uri" in source ? source.uri : source);
24
- React.useEffect(() => {
25
- if (!resolvedSrc) {
26
- setStatus("error");
27
- } else {
28
- setStatus("idle");
29
- }
30
- }, [resolvedSrc]);
31
- React.useEffect(() => {
32
- onLoadingStatusChange(status);
33
- context.onImageLoadingStatusChange(status);
34
- }, [status]);
35
- if (!resolvedSrc) {
36
- return null;
37
- }
38
- return /* @__PURE__ */jsx(YStack, {
39
- fullscreen: true,
40
- zIndex: 1,
41
- children: /* @__PURE__ */jsx(Image, {
42
- position: "absolute",
43
- top: 0,
44
- left: 0,
45
- right: 0,
46
- bottom: 0,
47
- objectFit: "cover",
48
- width: "100%",
49
- height: "100%",
50
- ...imageProps,
51
- ref: forwardedRef,
52
- src: resolvedSrc,
53
- onError: () => {
54
- setStatus("error");
55
- },
56
- onLoad: () => {
57
- setStatus("loaded");
58
- }
59
- })
60
- });
14
+ const AvatarImage = createRefComponent((props, forwardedRef) => {
15
+ const { __scopeAvatar, src, source, onLoadingStatusChange = () => {}, ...imageProps } = props;
16
+ const context = useAvatarContext(IMAGE_NAME, __scopeAvatar);
17
+ const [status, setStatus] = React.useState("idle");
18
+ const resolvedSrc = src || (source && typeof source === "object" && "uri" in source ? source.uri : source);
19
+ React.useEffect(() => {
20
+ if (!resolvedSrc) {
21
+ setStatus("error");
22
+ } else {
23
+ setStatus("idle");
24
+ }
25
+ }, [resolvedSrc]);
26
+ React.useEffect(() => {
27
+ onLoadingStatusChange(status);
28
+ context.onImageLoadingStatusChange(status);
29
+ }, [status]);
30
+ if (!resolvedSrc) {
31
+ return null;
32
+ }
33
+ return /* @__PURE__ */ jsx(YStack, {
34
+ position: "absolute",
35
+ inset: 0,
36
+ zIndex: 1,
37
+ children: /* @__PURE__ */ jsx(Image, {
38
+ position: "absolute",
39
+ top: 0,
40
+ left: 0,
41
+ right: 0,
42
+ bottom: 0,
43
+ objectFit: "cover",
44
+ width: "100%",
45
+ height: "100%",
46
+ ...imageProps,
47
+ ref: forwardedRef,
48
+ src: resolvedSrc,
49
+ onError: () => {
50
+ setStatus("error");
51
+ },
52
+ onLoad: () => {
53
+ setStatus("loaded");
54
+ }
55
+ })
56
+ });
61
57
  });
62
58
  AvatarImage.displayName = IMAGE_NAME;
63
59
  const FALLBACK_NAME = "AvatarFallback";
64
60
  const AvatarFallbackFrame = styled(YStack, {
65
- name: FALLBACK_NAME,
66
- position: "absolute",
67
- fullscreen: true,
68
- zIndex: 0
61
+ displayName: FALLBACK_NAME,
62
+ position: "absolute",
63
+ inset: 0,
64
+ zIndex: 0
69
65
  });
70
- const AvatarFallback = AvatarFallbackFrame.styleable((props, forwardedRef) => {
71
- const {
72
- __scopeAvatar,
73
- delayMs,
74
- ...fallbackProps
75
- } = props;
76
- const context = useAvatarContext(FALLBACK_NAME, __scopeAvatar);
77
- const [canRender, setCanRender] = React.useState(delayMs === void 0);
78
- React.useEffect(() => {
79
- if (delayMs !== void 0) {
80
- const timerId = setTimeout(() => setCanRender(true), delayMs);
81
- return () => clearTimeout(timerId);
82
- }
83
- }, [delayMs]);
84
- return canRender && context.imageLoadingStatus !== "loaded" ? /* @__PURE__ */jsx(AvatarFallbackFrame, {
85
- ...fallbackProps,
86
- ref: forwardedRef
87
- }) : null;
66
+ const AvatarFallback = createStyledHOC(AvatarFallbackFrame, (props, forwardedRef) => {
67
+ const { __scopeAvatar, delay, ...fallbackProps } = props;
68
+ const context = useAvatarContext(FALLBACK_NAME, __scopeAvatar);
69
+ const [canRender, setCanRender] = React.useState(delay === void 0);
70
+ React.useEffect(() => {
71
+ if (delay !== void 0) {
72
+ const timerId = setTimeout(() => setCanRender(true), delay);
73
+ return () => clearTimeout(timerId);
74
+ }
75
+ }, [delay]);
76
+ return canRender && context.imageLoadingStatus !== "loaded" ? /* @__PURE__ */ jsx(AvatarFallbackFrame, {
77
+ ...fallbackProps,
78
+ ref: forwardedRef
79
+ }) : null;
88
80
  });
89
81
  AvatarFallback.displayName = FALLBACK_NAME;
90
82
  const AvatarFrame = styled(Square, {
91
- name: AVATAR_NAME,
92
- position: "relative",
93
- overflow: "hidden"
83
+ displayName: AVATAR_NAME,
84
+ position: "relative",
85
+ overflow: "hidden"
94
86
  });
95
- const Avatar = withStaticProperties(React.forwardRef((props, forwardedRef) => {
96
- const {
97
- __scopeAvatar,
98
- size = "$true",
99
- ...avatarProps
100
- } = props;
101
- const [imageLoadingStatus, setImageLoadingStatus] = React.useState("idle");
102
- return /* @__PURE__ */jsx(AvatarProvider, {
103
- size,
104
- scope: __scopeAvatar,
105
- imageLoadingStatus,
106
- onImageLoadingStatusChange: setImageLoadingStatus,
107
- children: /* @__PURE__ */jsx(AvatarFrame, {
108
- size,
109
- ...avatarProps,
110
- ref: forwardedRef
111
- })
112
- });
87
+ const Avatar = withStaticProperties(createRefComponent((props, forwardedRef) => {
88
+ const { __scopeAvatar, size = true, ...avatarProps } = props;
89
+ const [imageLoadingStatus, setImageLoadingStatus] = React.useState("idle");
90
+ return /* @__PURE__ */ jsx(AvatarProvider, {
91
+ size,
92
+ scope: __scopeAvatar,
93
+ imageLoadingStatus,
94
+ onImageLoadingStatusChange: setImageLoadingStatus,
95
+ children: /* @__PURE__ */ jsx(AvatarFrame, {
96
+ size,
97
+ ...avatarProps,
98
+ ref: forwardedRef
99
+ })
100
+ });
113
101
  }), {
114
- Image: AvatarImage,
115
- Fallback: AvatarFallback
102
+ Image: AvatarImage,
103
+ Fallback: AvatarFallback
116
104
  });
117
105
  Avatar.displayName = AVATAR_NAME;
106
+
118
107
  export { Avatar, AvatarFallback, AvatarFallbackFrame, AvatarFrame, AvatarImage, createAvatarScope };
119
108
  //# sourceMappingURL=Avatar.mjs.map