@artsy/palette 40.7.0-canary.1423.31600.0 → 40.7.0-canary.1423.31605.0

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.
@@ -25,16 +25,18 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
25
25
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
26
26
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
27
27
  var Image = function Image(_ref) {
28
+ var _imageRef$current;
28
29
  var _ref$lazyLoad = _ref.lazyLoad,
29
30
  lazyLoad = _ref$lazyLoad === void 0 ? false : _ref$lazyLoad,
30
31
  _ref$preventRightClic = _ref.preventRightClick,
31
32
  preventRightClick = _ref$preventRightClic === void 0 ? false : _ref$preventRightClic,
32
33
  placeHolderURL = _ref.placeHolderURL,
33
34
  style = _ref.style,
34
- _onLoad = _ref.onLoad,
35
+ onLoad = _ref.onLoad,
35
36
  width = _ref.width,
36
37
  height = _ref.height,
37
38
  rest = _objectWithoutProperties(_ref, _excluded);
39
+ var imageRef = (0, _react.useRef)(null);
38
40
  var _useState = (0, _react.useState)("Pending"),
39
41
  _useState2 = _slicedToArray(_useState, 2),
40
42
  mode = _useState2[0],
@@ -43,6 +45,13 @@ var Image = function Image(_ref) {
43
45
  _splitBoxProps2 = _slicedToArray(_splitBoxProps, 2),
44
46
  boxProps = _splitBoxProps2[0],
45
47
  imageProps = _splitBoxProps2[1];
48
+
49
+ // If the image is already complete, we should show it immediately
50
+ var isImageLoaded = ((_imageRef$current = imageRef.current) === null || _imageRef$current === void 0 ? void 0 : _imageRef$current.complete) || mode === "Ready";
51
+ var handleLoad = function handleLoad(event) {
52
+ setMode("Ready");
53
+ onLoad === null || onLoad === void 0 ? void 0 : onLoad(event);
54
+ };
46
55
  return /*#__PURE__*/_react.default.createElement(_Box.Box, _extends({
47
56
  position: "relative",
48
57
  width: width,
@@ -55,6 +64,7 @@ var Image = function Image(_ref) {
55
64
  }
56
65
  }), /*#__PURE__*/_react.default.createElement(_Box.Box, _extends({
57
66
  as: "img",
67
+ ref: imageRef,
58
68
  position: "absolute",
59
69
  top: 0,
60
70
  left: 0,
@@ -62,15 +72,12 @@ var Image = function Image(_ref) {
62
72
  height: "100%",
63
73
  display: "block",
64
74
  loading: lazyLoad ? "lazy" : undefined,
65
- onLoad: function onLoad(event) {
66
- setMode("Ready");
67
- _onLoad === null || _onLoad === void 0 ? void 0 : _onLoad(event);
68
- },
75
+ onLoad: handleLoad,
69
76
  onContextMenu: preventRightClick ? function (e) {
70
77
  return e.preventDefault();
71
78
  } : undefined,
72
79
  style: _objectSpread(_objectSpread({}, style), {}, {
73
- opacity: mode === "Ready" ? 1 : 0,
80
+ opacity: isImageLoaded ? 1 : 0,
74
81
  transition: "opacity 0.2s ease-in-out",
75
82
  objectFit: "cover"
76
83
  })
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","names":["_react","_interopRequireWildcard","require","_Box","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Image","_ref","_ref$lazyLoad","lazyLoad","_ref$preventRightClic","preventRightClick","placeHolderURL","style","onLoad","width","height","rest","_useState","useState","_useState2","mode","setMode","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","imageProps","createElement","Box","position","backgroundImage","concat","backgroundSize","backgroundPosition","as","top","left","display","loading","event","onContextMenu","e","preventDefault","opacity","transition","objectFit","exports","displayName"],"sources":["../../../src/elements/Image/Image.tsx"],"sourcesContent":["import React, { useState } from \"react\"\nimport { Box, BoxProps, splitBoxProps } from \"../Box\"\n\nexport interface ImageProps\n extends Omit<React.ImgHTMLAttributes<HTMLImageElement>, \"width\" | \"height\">,\n BoxProps {\n /** Flag for if image should be lazy loaded */\n lazyLoad?: boolean\n /** Flag indicating that right clicks should be prevented */\n preventRightClick?: boolean\n /** Currently, this is used by clients for BlurHash data,\n decoded and represented as a data URL */\n placeHolderURL?: string\n}\n\nexport const Image: React.FC<ImageProps> = ({\n lazyLoad = false,\n preventRightClick = false,\n placeHolderURL,\n style,\n onLoad,\n width,\n height,\n ...rest\n}) => {\n const [mode, setMode] = useState<\"Pending\" | \"Ready\">(\"Pending\")\n\n const [boxProps, imageProps] = splitBoxProps(rest)\n\n return (\n <Box\n position=\"relative\"\n width={width}\n height={height}\n {...boxProps}\n style={{\n backgroundImage: placeHolderURL ? `url(${placeHolderURL})` : undefined,\n backgroundSize: \"cover\",\n backgroundPosition: \"center\",\n }}\n >\n <Box\n as=\"img\"\n position=\"absolute\"\n top={0}\n left={0}\n width=\"100%\"\n height=\"100%\"\n display=\"block\"\n loading={lazyLoad ? \"lazy\" : undefined}\n onLoad={(event: React.SyntheticEvent<HTMLImageElement, Event>) => {\n setMode(\"Ready\")\n onLoad?.(event)\n }}\n onContextMenu={\n preventRightClick ? (e) => e.preventDefault() : undefined\n }\n style={{\n ...style,\n opacity: mode === \"Ready\" ? 1 : 0,\n transition: \"opacity 0.2s ease-in-out\",\n objectFit: \"cover\",\n }}\n {...imageProps}\n />\n </Box>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Image.js","names":["_react","_interopRequireWildcard","require","_Box","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Image","_ref","_imageRef$current","_ref$lazyLoad","lazyLoad","_ref$preventRightClic","preventRightClick","placeHolderURL","style","onLoad","width","height","rest","imageRef","useRef","_useState","useState","_useState2","mode","setMode","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","imageProps","isImageLoaded","current","complete","handleLoad","event","createElement","Box","position","backgroundImage","concat","backgroundSize","backgroundPosition","as","ref","top","left","display","loading","onContextMenu","e","preventDefault","opacity","transition","objectFit","exports","displayName"],"sources":["../../../src/elements/Image/Image.tsx"],"sourcesContent":["import React, { useState, useRef } from \"react\"\nimport { Box, BoxProps, splitBoxProps } from \"../Box\"\n\nexport interface ImageProps\n extends Omit<React.ImgHTMLAttributes<HTMLImageElement>, \"width\" | \"height\">,\n BoxProps {\n /** Flag for if image should be lazy loaded */\n lazyLoad?: boolean\n /** Flag indicating that right clicks should be prevented */\n preventRightClick?: boolean\n /** Currently, this is used by clients for BlurHash data,\n decoded and represented as a data URL */\n placeHolderURL?: string\n}\n\nexport const Image: React.FC<ImageProps> = ({\n lazyLoad = false,\n preventRightClick = false,\n placeHolderURL,\n style,\n onLoad,\n width,\n height,\n ...rest\n}) => {\n const imageRef = useRef<HTMLImageElement>(null)\n\n const [mode, setMode] = useState<\"Pending\" | \"Ready\">(\"Pending\")\n\n const [boxProps, imageProps] = splitBoxProps(rest)\n\n // If the image is already complete, we should show it immediately\n const isImageLoaded = imageRef.current?.complete || mode === \"Ready\"\n\n const handleLoad = (event: React.SyntheticEvent<HTMLImageElement, Event>) => {\n setMode(\"Ready\")\n onLoad?.(event)\n }\n\n return (\n <Box\n position=\"relative\"\n width={width}\n height={height}\n {...boxProps}\n style={{\n backgroundImage: placeHolderURL ? `url(${placeHolderURL})` : undefined,\n backgroundSize: \"cover\",\n backgroundPosition: \"center\",\n }}\n >\n <Box\n as=\"img\"\n ref={imageRef as any}\n position=\"absolute\"\n top={0}\n left={0}\n width=\"100%\"\n height=\"100%\"\n display=\"block\"\n loading={lazyLoad ? \"lazy\" : undefined}\n onLoad={handleLoad}\n onContextMenu={\n preventRightClick ? (e) => e.preventDefault() : undefined\n }\n style={{\n ...style,\n opacity: isImageLoaded ? 1 : 0,\n transition: \"opacity 0.2s ease-in-out\",\n objectFit: \"cover\",\n }}\n {...imageProps}\n />\n </Box>\n )\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artsy/palette",
3
- "version": "40.7.0-canary.1423.31600.0",
3
+ "version": "40.7.0-canary.1423.31605.0",
4
4
  "description": "Design system library for react components",
5
5
  "main": "dist/index.js",
6
6
  "publishConfig": {
@@ -189,5 +189,5 @@
189
189
  "url": "http://localhost"
190
190
  }
191
191
  },
192
- "gitHead": "d38a32199dd94b319820bed43f63e89269e4e30e"
192
+ "gitHead": "09a78dc470049ee698641598feae352ba996dfeb"
193
193
  }