@os-design-mobile/image-upload 1.0.93 → 1.0.95
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.
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +11 -10
- package/src/index.tsx +1 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type RectButtonProps } from 'react-native-gesture-handler';
|
|
2
2
|
import { type Asset, type CameraOptions, type ImageLibraryOptions } from 'react-native-image-picker';
|
|
3
|
-
import { type ImageUploadLocale } from './utils/defaultLocale
|
|
3
|
+
import { type ImageUploadLocale } from './utils/defaultLocale';
|
|
4
4
|
export interface ImageUploadProps extends RectButtonProps {
|
|
5
5
|
/**
|
|
6
6
|
* The url of the image.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGhF,OAAO,EAGL,KAAK,KAAK,EAEV,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACzB,MAAM,2BAA2B,CAAC;AAQnC,OAAsB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGhF,OAAO,EAGL,KAAK,KAAK,EAEV,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACzB,MAAM,2BAA2B,CAAC;AAQnC,OAAsB,EAAE,KAAK,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE9E,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IACvD;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,IAAI,CACxB,mBAAmB,EACnB,UAAU,GAAG,WAAW,GAAG,SAAS,CACrC,CAAC;IACF;;;OAGG;IACH,aAAa,CAAC,EAAE,IAAI,CAClB,aAAa,EACb,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,cAAc,GAAG,YAAY,CACrE,CAAC;IACF;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;CAC1C;AAgFD;;GAEG;AACH,QAAA,MAAM,WAAW,gNA4IhB,CAAC;AAIF,eAAe,WAAW,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _react=require("react");var _reactNative=require("react-native");var _reactNativeGestureHandler=require("react-native-gesture-handler");var _actionMenu=_interopRequireWildcard(require("@os-design-mobile/action-menu"));var _icons=require("@os-design-mobile/icons");var _reactNativeImagePicker=require("react-native-image-picker");var _text=_interopRequireDefault(require("@os-design-mobile/text"));var _image=_interopRequireDefault(require("@os-design-mobile/image"));var _useForwardedState3=_interopRequireDefault(require("@os-design/use-forwarded-state"));var _native=_interopRequireDefault(require("@emotion/native"));var _omitEmotionProps=_interopRequireDefault(require("@os-design/omit-emotion-props"));var _theming=require("@os-design-mobile/theming");var _button=_interopRequireDefault(require("@os-design-mobile/button"));var _defaultLocale=_interopRequireDefault(require("./utils/defaultLocale
|
|
1
|
+
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _react=require("react");var _reactNative=require("react-native");var _reactNativeGestureHandler=require("react-native-gesture-handler");var _actionMenu=_interopRequireWildcard(require("@os-design-mobile/action-menu"));var _icons=require("@os-design-mobile/icons");var _reactNativeImagePicker=require("react-native-image-picker");var _text=_interopRequireDefault(require("@os-design-mobile/text"));var _image=_interopRequireDefault(require("@os-design-mobile/image"));var _useForwardedState3=_interopRequireDefault(require("@os-design/use-forwarded-state"));var _native=_interopRequireDefault(require("@emotion/native"));var _omitEmotionProps=_interopRequireDefault(require("@os-design/omit-emotion-props"));var _theming=require("@os-design-mobile/theming");var _button=_interopRequireDefault(require("@os-design-mobile/button"));var _defaultLocale=_interopRequireDefault(require("./utils/defaultLocale"));var _jsxRuntime=require("react/jsx-runtime");var _excluded=["url","locale","imageLibraryOptions","cameraOptions","value","defaultValue","onChange","onPress"];function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var r=new WeakMap(),t=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(e){return e?t:r;})(e);}function _interopRequireWildcard(e,r){if(!r&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var t=_getRequireWildcardCache(r);if(t&&t.has(e))return t.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&{}.hasOwnProperty.call(e,u)){var i=a?Object.getOwnPropertyDescriptor(e,u):null;i&&(i.get||i.set)?Object.defineProperty(n,u,i):n[u]=e[u];}return n.default=e,t&&t.set(e,n),n;}var overlayHasImageStyles=function overlayHasImageStyles(p){return p.hasImage?{backgroundColor:(0,_theming.clr)([0,0,0,p.theme.imageUploadOverlayOpacity]),borderRadius:p.theme.borderRadius*p.theme.fontSize}:{};};var Overlay=(0,_native.default)(_reactNative.View,(0,_omitEmotionProps.default)('hasImage'))(function(p){return Object.assign({position:'absolute',top:0,right:0,bottom:0,left:0,justifyContent:'center',alignItems:'center',padding:p.theme.imageUploadOverlayPadding*p.theme.fontSize},overlayHasImageStyles(p));});var StyledRectButton=(0,_native.default)(_reactNativeGestureHandler.RectButton)(function(p){return{width:'100%',maxWidth:p.theme.imageUploadMaxWidth*p.theme.fontSize,minHeight:p.theme.imageUploadMinHeight*p.theme.fontSize,borderRadius:p.theme.borderRadius*p.theme.fontSize};});var notHasImageStyles=function notHasImageStyles(p){return!p.hasImage?{backgroundColor:(0,_theming.clr)(p.theme.imageUploadNoImageColorBg),borderWidth:2,borderColor:(0,_theming.clr)(p.theme.imageUploadNoImageColorBorder),borderStyle:'dashed'}:{};};var Container=(0,_native.default)(_reactNative.View,(0,_omitEmotionProps.default)('hasImage'))(function(p){return Object.assign({minHeight:p.theme.imageUploadMinHeight*p.theme.fontSize,borderRadius:p.theme.borderRadius*p.theme.fontSize},notHasImageStyles(p));});var Content=_native.default.View({flex:1,justifyContent:'center',alignItems:'center'});var Title=(0,_native.default)(_text.default)(function(p){return{marginTop:0.5*p.theme.fontSize,textAlign:'center'};});var StyledImage=(0,_native.default)(_image.default)({resizeMode:'cover',aspectRatio:1});var DeleteButtonContainer=_native.default.View(function(p){return{position:'absolute',top:0.5*p.theme.fontSize,right:0.5*p.theme.fontSize};});var ImageUpload=(0,_react.forwardRef)(function(_ref,ref){var url=_ref.url,_ref$locale=_ref.locale,locale=_ref$locale===void 0?_defaultLocale.default:_ref$locale,_ref$imageLibraryOpti=_ref.imageLibraryOptions,imageLibraryOptions=_ref$imageLibraryOpti===void 0?{}:_ref$imageLibraryOpti,_ref$cameraOptions=_ref.cameraOptions,cameraOptions=_ref$cameraOptions===void 0?{}:_ref$cameraOptions,value=_ref.value,defaultValue=_ref.defaultValue,onChange=_ref.onChange,_ref$onPress=_ref.onPress,_onPress=_ref$onPress===void 0?function(){}:_ref$onPress,rest=(0,_objectWithoutProperties2.default)(_ref,_excluded);var _useForwardedState=(0,_useForwardedState3.default)({value:value,defaultValue:defaultValue,onChange:onChange}),_useForwardedState2=(0,_slicedToArray2.default)(_useForwardedState,2),forwardedValue=_useForwardedState2[0],setForwardedValue=_useForwardedState2[1];var _useState=(0,_react.useState)(false),_useState2=(0,_slicedToArray2.default)(_useState,2),modalVisible=_useState2[0],setModalVisible=_useState2[1];var _useTheme=(0,_theming.useTheme)(),theme=_useTheme.theme;var chooseFromPhotoLibraryHandler=(0,_react.useCallback)((0,_asyncToGenerator2.default)(function*(){try{var _yield$Promise=yield new Promise(function(resolve){(0,_reactNativeImagePicker.launchImageLibrary)(Object.assign({mediaType:'photo'},imageLibraryOptions),resolve);}),assets=_yield$Promise.assets;setModalVisible(false);if(assets)setForwardedValue(assets[0]);}catch(_unused){}}),[imageLibraryOptions,setForwardedValue]);var takePhotoHandler=(0,_react.useCallback)((0,_asyncToGenerator2.default)(function*(){try{var _yield$Promise2=yield new Promise(function(resolve){(0,_reactNativeImagePicker.launchCamera)(Object.assign({mediaType:'photo'},cameraOptions),resolve);}),assets=_yield$Promise2.assets;setModalVisible(false);if(assets)setForwardedValue(assets[0]);}catch(_unused2){}}),[cameraOptions,setForwardedValue]);var source=(0,_react.useMemo)(function(){if(forwardedValue===null)return null;if(forwardedValue)return forwardedValue.uri;if(url)return url;return null;},[forwardedValue,url]);var hasImage=(0,_react.useMemo)(function(){return!!source;},[source]);return(0,_jsxRuntime.jsxs)(_jsxRuntime.Fragment,{children:[(0,_jsxRuntime.jsx)(_theming.ThemeOverrider,{overrides:hasImage?{colorText:[0,0,100]}:{},children:(0,_jsxRuntime.jsx)(StyledRectButton,Object.assign({onPress:function onPress(e){setModalVisible(true);_onPress(e);},underlayColor:hasImage?(0,_theming.clr)([0,0,100]):(0,_theming.clr)(theme.imageUploadNoImageBgHighlight),rippleColor:hasImage?(0,_theming.clr)([0,0,100]):(0,_theming.clr)(theme.imageUploadNoImageBgRipple),activeOpacity:hasImage?0.8:1},rest,{ref:ref,children:(0,_jsxRuntime.jsxs)(Container,{hasImage:hasImage,accessible:true,accessibilityRole:"imagebutton",children:[source&&(0,_jsxRuntime.jsx)(StyledImage,{source:{uri:source}}),(0,_jsxRuntime.jsxs)(Overlay,{hasImage:hasImage,children:[(0,_jsxRuntime.jsxs)(Content,{children:[(0,_jsxRuntime.jsx)(_theming.ThemeOverrider,{overrides:function overrides(t){return{fontSize:2.5*t.fontSize};},children:(0,_jsxRuntime.jsx)(_icons.Picture,{})}),(0,_jsxRuntime.jsx)(Title,{children:locale==null?void 0:locale.title})]}),hasImage&&(0,_jsxRuntime.jsx)(_theming.ThemeOverrider,{overrides:{buttonGhostColorText:[0,0,100],buttonGhostColorBgHighlight:[0,0,100,0.1]},children:(0,_jsxRuntime.jsx)(DeleteButtonContainer,{children:(0,_jsxRuntime.jsx)(_button.default,{type:"ghost",onPress:function onPress(){return setForwardedValue(null);},children:(0,_jsxRuntime.jsx)(_icons.Delete,{})})})})]})]})}))}),(0,_jsxRuntime.jsxs)(_actionMenu.default,{visible:modalVisible,onClose:function onClose(){return setModalVisible(false);},children:[(0,_jsxRuntime.jsx)(_actionMenu.MenuItem,{left:(0,_jsxRuntime.jsx)(_icons.Picture,{}),onPress:chooseFromPhotoLibraryHandler,children:locale==null?void 0:locale.chooseFromLibrary}),(0,_jsxRuntime.jsx)(_actionMenu.MenuItem,{left:(0,_jsxRuntime.jsx)(_icons.Camera,{}),onPress:takePhotoHandler,children:locale==null?void 0:locale.takePhoto})]})]});});ImageUpload.displayName='ImageUpload';var _default=exports.default=ImageUpload;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","require","_reactNative","_reactNativeGestureHandler","_actionMenu","_interopRequireWildcard","_icons","_reactNativeImagePicker","_text","_interopRequireDefault","_image","_useForwardedState3","_native","_omitEmotionProps","_theming","_button","_defaultLocale","_jsxRuntime","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","overlayHasImageStyles","p","hasImage","backgroundColor","clr","theme","imageUploadOverlayOpacity","borderRadius","fontSize","Overlay","styled","View","omitEmotionProps","assign","position","top","right","bottom","left","justifyContent","alignItems","padding","imageUploadOverlayPadding","StyledRectButton","RectButton","width","maxWidth","imageUploadMaxWidth","minHeight","imageUploadMinHeight","notHasImageStyles","imageUploadNoImageColorBg","borderWidth","borderColor","imageUploadNoImageColorBorder","borderStyle","Container","Content","flex","Title","Text","marginTop","textAlign","StyledImage","Image","resizeMode","aspectRatio","DeleteButtonContainer","ImageUpload","forwardRef","_ref","ref","url","_ref$locale","locale","defaultLocale","_ref$imageLibraryOpti","imageLibraryOptions","_ref$cameraOptions","cameraOptions","value","defaultValue","onChange","_ref$onPress","onPress","rest","_objectWithoutProperties2","_useForwardedState","useForwardedState","_useForwardedState2","_slicedToArray2","forwardedValue","setForwardedValue","_useState","useState","_useState2","modalVisible","setModalVisible","_useTheme","useTheme","chooseFromPhotoLibraryHandler","useCallback","_asyncToGenerator2","_yield$Promise","Promise","resolve","launchImageLibrary","mediaType","assets","_unused","takePhotoHandler","_yield$Promise2","launchCamera","_unused2","source","useMemo","uri","jsxs","Fragment","children","jsx","ThemeOverrider","overrides","colorText","underlayColor","imageUploadNoImageBgHighlight","rippleColor","imageUploadNoImageBgRipple","activeOpacity","accessible","accessibilityRole","Picture","title","buttonGhostColorText","buttonGhostColorBgHighlight","type","Delete","visible","onClose","MenuItem","chooseFromLibrary","Camera","takePhoto","displayName","_default","exports"],"sources":["../src/index.tsx"],"sourcesContent":["import { forwardRef, useCallback, useMemo, useState } from 'react';\nimport { View, type ViewProps } from 'react-native';\nimport { RectButton, type RectButtonProps } from 'react-native-gesture-handler';\nimport ActionMenu, { MenuItem } from '@os-design-mobile/action-menu';\nimport { Picture, Camera, Delete } from '@os-design-mobile/icons';\nimport {\n launchImageLibrary,\n launchCamera,\n type Asset,\n type ImagePickerResponse,\n type CameraOptions,\n type ImageLibraryOptions,\n} from 'react-native-image-picker';\nimport Text from '@os-design-mobile/text';\nimport Image from '@os-design-mobile/image';\nimport useForwardedState from '@os-design/use-forwarded-state';\nimport styled from '@emotion/native';\nimport omitEmotionProps from '@os-design/omit-emotion-props';\nimport { clr, ThemeOverrider, useTheme } from '@os-design-mobile/theming';\nimport Button from '@os-design-mobile/button';\nimport defaultLocale, {\n type ImageUploadLocale,\n} from './utils/defaultLocale.js';\n\nexport interface ImageUploadProps extends RectButtonProps {\n /**\n * The url of the image.\n * @default undefined\n */\n url?: string;\n /**\n * The locale of the component.\n * @default undefined\n */\n locale?: ImageUploadLocale;\n /**\n * The image library options.\n * @default undefined\n */\n imageLibraryOptions?: Pick<\n ImageLibraryOptions,\n 'maxWidth' | 'maxHeight' | 'quality'\n >;\n /**\n * The camera options.\n * @default undefined\n */\n cameraOptions?: Pick<\n CameraOptions,\n 'maxWidth' | 'maxHeight' | 'quality' | 'saveToPhotos' | 'cameraType'\n >;\n /**\n * The selected local file, or null if the image is marked as deleted.\n * @default undefined\n */\n value?: Asset | null;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: Asset | null;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: Asset | null) => void;\n}\n\nconst overlayHasImageStyles = (p) =>\n p.hasImage\n ? {\n backgroundColor: clr([0, 0, 0, p.theme.imageUploadOverlayOpacity]),\n borderRadius: p.theme.borderRadius * p.theme.fontSize,\n }\n : {};\n\ninterface OverlayProps {\n hasImage: boolean;\n}\nconst Overlay = styled(\n View,\n omitEmotionProps('hasImage')\n)<OverlayProps>((p) => ({\n position: 'absolute',\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n justifyContent: 'center',\n alignItems: 'center',\n padding: p.theme.imageUploadOverlayPadding * p.theme.fontSize,\n ...overlayHasImageStyles(p),\n}));\n\nconst StyledRectButton = styled(RectButton)((p) => ({\n width: '100%',\n maxWidth: p.theme.imageUploadMaxWidth * p.theme.fontSize,\n minHeight: p.theme.imageUploadMinHeight * p.theme.fontSize,\n borderRadius: p.theme.borderRadius * p.theme.fontSize,\n}));\n\nconst notHasImageStyles = (p): Partial<ViewProps> =>\n !p.hasImage\n ? ({\n backgroundColor: clr(p.theme.imageUploadNoImageColorBg),\n borderWidth: 2,\n borderColor: clr(p.theme.imageUploadNoImageColorBorder),\n borderStyle: 'dashed',\n } as Partial<ViewProps>)\n : {};\n\ninterface ContainerProps {\n hasImage: boolean;\n}\n\nconst Container = styled(\n View,\n omitEmotionProps('hasImage')\n)<ContainerProps>((p) => ({\n minHeight: p.theme.imageUploadMinHeight * p.theme.fontSize,\n borderRadius: p.theme.borderRadius * p.theme.fontSize,\n ...notHasImageStyles(p),\n}));\n\nconst Content = styled.View({\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n});\n\nconst Title = styled(Text)((p) => ({\n marginTop: 0.5 * p.theme.fontSize,\n textAlign: 'center',\n}));\n\nconst StyledImage = styled(Image)({\n resizeMode: 'cover',\n aspectRatio: 1,\n});\n\nconst DeleteButtonContainer = styled.View((p) => ({\n position: 'absolute',\n top: 0.5 * p.theme.fontSize,\n right: 0.5 * p.theme.fontSize,\n}));\n\n/**\n * The component to upload an image.\n */\nconst ImageUpload = forwardRef<typeof RectButton, ImageUploadProps>(\n (\n {\n url,\n locale = defaultLocale,\n imageLibraryOptions = {},\n cameraOptions = {},\n value,\n defaultValue,\n onChange,\n onPress = () => {},\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n const [modalVisible, setModalVisible] = useState(false);\n const { theme } = useTheme();\n\n const chooseFromPhotoLibraryHandler = useCallback(async () => {\n try {\n const { assets } = await new Promise<ImagePickerResponse>((resolve) => {\n launchImageLibrary(\n {\n mediaType: 'photo',\n ...imageLibraryOptions,\n },\n resolve\n );\n });\n setModalVisible(false);\n if (assets) setForwardedValue(assets[0]);\n } catch {} // eslint-disable-line no-empty\n }, [imageLibraryOptions, setForwardedValue]);\n\n const takePhotoHandler = useCallback(async () => {\n try {\n const { assets } = await new Promise<ImagePickerResponse>((resolve) => {\n launchCamera(\n {\n mediaType: 'photo',\n ...cameraOptions,\n },\n resolve\n );\n });\n setModalVisible(false);\n if (assets) setForwardedValue(assets[0]);\n } catch {} // eslint-disable-line no-empty\n }, [cameraOptions, setForwardedValue]);\n\n const source = useMemo(() => {\n if (forwardedValue === null) return null;\n if (forwardedValue) return forwardedValue.uri; // If the user select an image\n if (url) return url; // If the image already exists\n return null;\n }, [forwardedValue, url]);\n\n const hasImage = useMemo(() => !!source, [source]);\n\n return (\n <>\n <ThemeOverrider overrides={hasImage ? { colorText: [0, 0, 100] } : {}}>\n <StyledRectButton\n onPress={(e) => {\n setModalVisible(true);\n onPress(e);\n }}\n underlayColor={\n hasImage\n ? clr([0, 0, 100])\n : clr(theme.imageUploadNoImageBgHighlight)\n }\n rippleColor={\n hasImage\n ? clr([0, 0, 100])\n : clr(theme.imageUploadNoImageBgRipple)\n }\n activeOpacity={hasImage ? 0.8 : 1}\n {...rest}\n ref={ref}\n >\n <Container\n hasImage={hasImage}\n accessible\n accessibilityRole='imagebutton'\n >\n {source && <StyledImage source={{ uri: source }} />}\n\n <Overlay hasImage={hasImage}>\n <Content>\n <ThemeOverrider\n overrides={(t) => ({ fontSize: 2.5 * t.fontSize })}\n >\n <Picture />\n </ThemeOverrider>\n <Title>{locale?.title}</Title>\n </Content>\n\n {hasImage && (\n <ThemeOverrider\n overrides={{\n buttonGhostColorText: [0, 0, 100],\n buttonGhostColorBgHighlight: [0, 0, 100, 0.1],\n }}\n >\n <DeleteButtonContainer>\n <Button\n type='ghost'\n onPress={() => setForwardedValue(null)}\n >\n <Delete />\n </Button>\n </DeleteButtonContainer>\n </ThemeOverrider>\n )}\n </Overlay>\n </Container>\n </StyledRectButton>\n </ThemeOverrider>\n\n <ActionMenu\n visible={modalVisible}\n onClose={() => setModalVisible(false)}\n >\n <MenuItem left={<Picture />} onPress={chooseFromPhotoLibraryHandler}>\n {locale?.chooseFromLibrary}\n </MenuItem>\n <MenuItem left={<Camera />} onPress={takePhotoHandler}>\n {locale?.takePhoto}\n </MenuItem>\n </ActionMenu>\n </>\n );\n }\n);\n\nImageUpload.displayName = 'ImageUpload';\n\nexport default ImageUpload;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","require","_reactNative","_reactNativeGestureHandler","_actionMenu","_interopRequireWildcard","_icons","_reactNativeImagePicker","_text","_interopRequireDefault","_image","_useForwardedState3","_native","_omitEmotionProps","_theming","_button","_defaultLocale","_jsxRuntime","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","overlayHasImageStyles","p","hasImage","backgroundColor","clr","theme","imageUploadOverlayOpacity","borderRadius","fontSize","Overlay","styled","View","omitEmotionProps","assign","position","top","right","bottom","left","justifyContent","alignItems","padding","imageUploadOverlayPadding","StyledRectButton","RectButton","width","maxWidth","imageUploadMaxWidth","minHeight","imageUploadMinHeight","notHasImageStyles","imageUploadNoImageColorBg","borderWidth","borderColor","imageUploadNoImageColorBorder","borderStyle","Container","Content","flex","Title","Text","marginTop","textAlign","StyledImage","Image","resizeMode","aspectRatio","DeleteButtonContainer","ImageUpload","forwardRef","_ref","ref","url","_ref$locale","locale","defaultLocale","_ref$imageLibraryOpti","imageLibraryOptions","_ref$cameraOptions","cameraOptions","value","defaultValue","onChange","_ref$onPress","onPress","rest","_objectWithoutProperties2","_useForwardedState","useForwardedState","_useForwardedState2","_slicedToArray2","forwardedValue","setForwardedValue","_useState","useState","_useState2","modalVisible","setModalVisible","_useTheme","useTheme","chooseFromPhotoLibraryHandler","useCallback","_asyncToGenerator2","_yield$Promise","Promise","resolve","launchImageLibrary","mediaType","assets","_unused","takePhotoHandler","_yield$Promise2","launchCamera","_unused2","source","useMemo","uri","jsxs","Fragment","children","jsx","ThemeOverrider","overrides","colorText","underlayColor","imageUploadNoImageBgHighlight","rippleColor","imageUploadNoImageBgRipple","activeOpacity","accessible","accessibilityRole","Picture","title","buttonGhostColorText","buttonGhostColorBgHighlight","type","Delete","visible","onClose","MenuItem","chooseFromLibrary","Camera","takePhoto","displayName","_default","exports"],"sources":["../src/index.tsx"],"sourcesContent":["import { forwardRef, useCallback, useMemo, useState } from 'react';\nimport { View, type ViewProps } from 'react-native';\nimport { RectButton, type RectButtonProps } from 'react-native-gesture-handler';\nimport ActionMenu, { MenuItem } from '@os-design-mobile/action-menu';\nimport { Picture, Camera, Delete } from '@os-design-mobile/icons';\nimport {\n launchImageLibrary,\n launchCamera,\n type Asset,\n type ImagePickerResponse,\n type CameraOptions,\n type ImageLibraryOptions,\n} from 'react-native-image-picker';\nimport Text from '@os-design-mobile/text';\nimport Image from '@os-design-mobile/image';\nimport useForwardedState from '@os-design/use-forwarded-state';\nimport styled from '@emotion/native';\nimport omitEmotionProps from '@os-design/omit-emotion-props';\nimport { clr, ThemeOverrider, useTheme } from '@os-design-mobile/theming';\nimport Button from '@os-design-mobile/button';\nimport defaultLocale, { type ImageUploadLocale } from './utils/defaultLocale';\n\nexport interface ImageUploadProps extends RectButtonProps {\n /**\n * The url of the image.\n * @default undefined\n */\n url?: string;\n /**\n * The locale of the component.\n * @default undefined\n */\n locale?: ImageUploadLocale;\n /**\n * The image library options.\n * @default undefined\n */\n imageLibraryOptions?: Pick<\n ImageLibraryOptions,\n 'maxWidth' | 'maxHeight' | 'quality'\n >;\n /**\n * The camera options.\n * @default undefined\n */\n cameraOptions?: Pick<\n CameraOptions,\n 'maxWidth' | 'maxHeight' | 'quality' | 'saveToPhotos' | 'cameraType'\n >;\n /**\n * The selected local file, or null if the image is marked as deleted.\n * @default undefined\n */\n value?: Asset | null;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: Asset | null;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: Asset | null) => void;\n}\n\nconst overlayHasImageStyles = (p) =>\n p.hasImage\n ? {\n backgroundColor: clr([0, 0, 0, p.theme.imageUploadOverlayOpacity]),\n borderRadius: p.theme.borderRadius * p.theme.fontSize,\n }\n : {};\n\ninterface OverlayProps {\n hasImage: boolean;\n}\nconst Overlay = styled(\n View,\n omitEmotionProps('hasImage')\n)<OverlayProps>((p) => ({\n position: 'absolute',\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n justifyContent: 'center',\n alignItems: 'center',\n padding: p.theme.imageUploadOverlayPadding * p.theme.fontSize,\n ...overlayHasImageStyles(p),\n}));\n\nconst StyledRectButton = styled(RectButton)((p) => ({\n width: '100%',\n maxWidth: p.theme.imageUploadMaxWidth * p.theme.fontSize,\n minHeight: p.theme.imageUploadMinHeight * p.theme.fontSize,\n borderRadius: p.theme.borderRadius * p.theme.fontSize,\n}));\n\nconst notHasImageStyles = (p): Partial<ViewProps> =>\n !p.hasImage\n ? ({\n backgroundColor: clr(p.theme.imageUploadNoImageColorBg),\n borderWidth: 2,\n borderColor: clr(p.theme.imageUploadNoImageColorBorder),\n borderStyle: 'dashed',\n } as Partial<ViewProps>)\n : {};\n\ninterface ContainerProps {\n hasImage: boolean;\n}\n\nconst Container = styled(\n View,\n omitEmotionProps('hasImage')\n)<ContainerProps>((p) => ({\n minHeight: p.theme.imageUploadMinHeight * p.theme.fontSize,\n borderRadius: p.theme.borderRadius * p.theme.fontSize,\n ...notHasImageStyles(p),\n}));\n\nconst Content = styled.View({\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n});\n\nconst Title = styled(Text)((p) => ({\n marginTop: 0.5 * p.theme.fontSize,\n textAlign: 'center',\n}));\n\nconst StyledImage = styled(Image)({\n resizeMode: 'cover',\n aspectRatio: 1,\n});\n\nconst DeleteButtonContainer = styled.View((p) => ({\n position: 'absolute',\n top: 0.5 * p.theme.fontSize,\n right: 0.5 * p.theme.fontSize,\n}));\n\n/**\n * The component to upload an image.\n */\nconst ImageUpload = forwardRef<typeof RectButton, ImageUploadProps>(\n (\n {\n url,\n locale = defaultLocale,\n imageLibraryOptions = {},\n cameraOptions = {},\n value,\n defaultValue,\n onChange,\n onPress = () => {},\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n const [modalVisible, setModalVisible] = useState(false);\n const { theme } = useTheme();\n\n const chooseFromPhotoLibraryHandler = useCallback(async () => {\n try {\n const { assets } = await new Promise<ImagePickerResponse>((resolve) => {\n launchImageLibrary(\n {\n mediaType: 'photo',\n ...imageLibraryOptions,\n },\n resolve\n );\n });\n setModalVisible(false);\n if (assets) setForwardedValue(assets[0]);\n } catch {} // eslint-disable-line no-empty\n }, [imageLibraryOptions, setForwardedValue]);\n\n const takePhotoHandler = useCallback(async () => {\n try {\n const { assets } = await new Promise<ImagePickerResponse>((resolve) => {\n launchCamera(\n {\n mediaType: 'photo',\n ...cameraOptions,\n },\n resolve\n );\n });\n setModalVisible(false);\n if (assets) setForwardedValue(assets[0]);\n } catch {} // eslint-disable-line no-empty\n }, [cameraOptions, setForwardedValue]);\n\n const source = useMemo(() => {\n if (forwardedValue === null) return null;\n if (forwardedValue) return forwardedValue.uri; // If the user select an image\n if (url) return url; // If the image already exists\n return null;\n }, [forwardedValue, url]);\n\n const hasImage = useMemo(() => !!source, [source]);\n\n return (\n <>\n <ThemeOverrider overrides={hasImage ? { colorText: [0, 0, 100] } : {}}>\n <StyledRectButton\n onPress={(e) => {\n setModalVisible(true);\n onPress(e);\n }}\n underlayColor={\n hasImage\n ? clr([0, 0, 100])\n : clr(theme.imageUploadNoImageBgHighlight)\n }\n rippleColor={\n hasImage\n ? clr([0, 0, 100])\n : clr(theme.imageUploadNoImageBgRipple)\n }\n activeOpacity={hasImage ? 0.8 : 1}\n {...rest}\n ref={ref}\n >\n <Container\n hasImage={hasImage}\n accessible\n accessibilityRole='imagebutton'\n >\n {source && <StyledImage source={{ uri: source }} />}\n\n <Overlay hasImage={hasImage}>\n <Content>\n <ThemeOverrider\n overrides={(t) => ({ fontSize: 2.5 * t.fontSize })}\n >\n <Picture />\n </ThemeOverrider>\n <Title>{locale?.title}</Title>\n </Content>\n\n {hasImage && (\n <ThemeOverrider\n overrides={{\n buttonGhostColorText: [0, 0, 100],\n buttonGhostColorBgHighlight: [0, 0, 100, 0.1],\n }}\n >\n <DeleteButtonContainer>\n <Button\n type='ghost'\n onPress={() => setForwardedValue(null)}\n >\n <Delete />\n </Button>\n </DeleteButtonContainer>\n </ThemeOverrider>\n )}\n </Overlay>\n </Container>\n </StyledRectButton>\n </ThemeOverrider>\n\n <ActionMenu\n visible={modalVisible}\n onClose={() => setModalVisible(false)}\n >\n <MenuItem left={<Picture />} onPress={chooseFromPhotoLibraryHandler}>\n {locale?.chooseFromLibrary}\n </MenuItem>\n <MenuItem left={<Camera />} onPress={takePhotoHandler}>\n {locale?.takePhoto}\n </MenuItem>\n </ActionMenu>\n </>\n );\n }\n);\n\nImageUpload.displayName = 'ImageUpload';\n\nexport default ImageUpload;\n"],"mappings":"idAAA,IAAAA,MAAA,CAAAC,OAAA,UACA,IAAAC,YAAA,CAAAD,OAAA,iBACA,IAAAE,0BAAA,CAAAF,OAAA,iCACA,IAAAG,WAAA,CAAAC,uBAAA,CAAAJ,OAAA,mCACA,IAAAK,MAAA,CAAAL,OAAA,4BACA,IAAAM,uBAAA,CAAAN,OAAA,8BAQA,IAAAO,KAAA,CAAAC,sBAAA,CAAAR,OAAA,4BACA,IAAAS,MAAA,CAAAD,sBAAA,CAAAR,OAAA,6BACA,IAAAU,mBAAA,CAAAF,sBAAA,CAAAR,OAAA,oCACA,IAAAW,OAAA,CAAAH,sBAAA,CAAAR,OAAA,qBACA,IAAAY,iBAAA,CAAAJ,sBAAA,CAAAR,OAAA,mCACA,IAAAa,QAAA,CAAAb,OAAA,8BACA,IAAAc,OAAA,CAAAN,sBAAA,CAAAR,OAAA,8BACA,IAAAe,cAAA,CAAAP,sBAAA,CAAAR,OAAA,2BAA8E,IAAAgB,WAAA,CAAAhB,OAAA,0BAAAiB,SAAA,6GAAAC,yBAAAC,CAAA,wBAAAC,OAAA,iBAAAC,CAAA,KAAAD,OAAA,GAAAE,CAAA,KAAAF,OAAA,UAAAF,wBAAA,UAAAA,yBAAAC,CAAA,SAAAA,CAAA,CAAAG,CAAA,CAAAD,CAAA,IAAAF,CAAA,YAAAf,wBAAAe,CAAA,CAAAE,CAAA,MAAAA,CAAA,EAAAF,CAAA,EAAAA,CAAA,CAAAI,UAAA,QAAAJ,CAAA,WAAAA,CAAA,mBAAAA,CAAA,qBAAAA,CAAA,QAAAK,OAAA,CAAAL,CAAA,MAAAG,CAAA,CAAAJ,wBAAA,CAAAG,CAAA,KAAAC,CAAA,EAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,SAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,MAAAQ,CAAA,EAAAC,SAAA,OAAAC,CAAA,CAAAC,MAAA,CAAAC,cAAA,EAAAD,MAAA,CAAAE,wBAAA,SAAAC,CAAA,IAAAd,CAAA,gBAAAc,CAAA,KAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,CAAAc,CAAA,OAAAG,CAAA,CAAAP,CAAA,CAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,CAAAc,CAAA,OAAAG,CAAA,GAAAA,CAAA,CAAAV,GAAA,EAAAU,CAAA,CAAAC,GAAA,EAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,CAAAM,CAAA,CAAAG,CAAA,EAAAT,CAAA,CAAAM,CAAA,EAAAd,CAAA,CAAAc,CAAA,UAAAN,CAAA,CAAAH,OAAA,CAAAL,CAAA,CAAAG,CAAA,EAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,CAAAQ,CAAA,EAAAA,CAAA,EA8C9E,GAAM,CAAAW,qBAAqB,CAAG,QAAxB,CAAAA,qBAAqBA,CAAIC,CAAC,QAC9B,CAAAA,CAAC,CAACC,QAAQ,CACN,CACEC,eAAe,CAAE,GAAAC,YAAG,EAAC,CAAC,CAAC,CAAE,CAAC,CAAE,CAAC,CAAEH,CAAC,CAACI,KAAK,CAACC,yBAAyB,CAAC,CAAC,CAClEC,YAAY,CAAEN,CAAC,CAACI,KAAK,CAACE,YAAY,CAAGN,CAAC,CAACI,KAAK,CAACG,QAC/C,CAAC,CACD,CAAC,CAAC,GAKR,GAAM,CAAAC,OAAO,CAAG,GAAAC,eAAM,EACpBC,iBAAI,CACJ,GAAAC,yBAAgB,EAAC,UAAU,CAC7B,CAAC,CAAe,SAACX,CAAC,SAAAT,MAAA,CAAAqB,MAAA,EAChBC,QAAQ,CAAE,UAAU,CACpBC,GAAG,CAAE,CAAC,CACNC,KAAK,CAAE,CAAC,CACRC,MAAM,CAAE,CAAC,CACTC,IAAI,CAAE,CAAC,CACPC,cAAc,CAAE,QAAQ,CACxBC,UAAU,CAAE,QAAQ,CACpBC,OAAO,CAAEpB,CAAC,CAACI,KAAK,CAACiB,yBAAyB,CAAGrB,CAAC,CAACI,KAAK,CAACG,QAAQ,EAC1DR,qBAAqB,CAACC,CAAC,CAAC,GAC3B,CAAC,CAEH,GAAM,CAAAsB,gBAAgB,CAAG,GAAAb,eAAM,EAACc,qCAAU,CAAC,CAAC,SAACvB,CAAC,QAAM,CAClDwB,KAAK,CAAE,MAAM,CACbC,QAAQ,CAAEzB,CAAC,CAACI,KAAK,CAACsB,mBAAmB,CAAG1B,CAAC,CAACI,KAAK,CAACG,QAAQ,CACxDoB,SAAS,CAAE3B,CAAC,CAACI,KAAK,CAACwB,oBAAoB,CAAG5B,CAAC,CAACI,KAAK,CAACG,QAAQ,CAC1DD,YAAY,CAAEN,CAAC,CAACI,KAAK,CAACE,YAAY,CAAGN,CAAC,CAACI,KAAK,CAACG,QAC/C,CAAC,EAAC,CAAC,CAEH,GAAM,CAAAsB,iBAAiB,CAAG,QAApB,CAAAA,iBAAiBA,CAAI7B,CAAC,QAC1B,CAACA,CAAC,CAACC,QAAQ,CACN,CACCC,eAAe,CAAE,GAAAC,YAAG,EAACH,CAAC,CAACI,KAAK,CAAC0B,yBAAyB,CAAC,CACvDC,WAAW,CAAE,CAAC,CACdC,WAAW,CAAE,GAAA7B,YAAG,EAACH,CAAC,CAACI,KAAK,CAAC6B,6BAA6B,CAAC,CACvDC,WAAW,CAAE,QACf,CAAC,CACD,CAAC,CAAC,GAMR,GAAM,CAAAC,SAAS,CAAG,GAAA1B,eAAM,EACtBC,iBAAI,CACJ,GAAAC,yBAAgB,EAAC,UAAU,CAC7B,CAAC,CAAiB,SAACX,CAAC,SAAAT,MAAA,CAAAqB,MAAA,EAClBe,SAAS,CAAE3B,CAAC,CAACI,KAAK,CAACwB,oBAAoB,CAAG5B,CAAC,CAACI,KAAK,CAACG,QAAQ,CAC1DD,YAAY,CAAEN,CAAC,CAACI,KAAK,CAACE,YAAY,CAAGN,CAAC,CAACI,KAAK,CAACG,QAAQ,EAClDsB,iBAAiB,CAAC7B,CAAC,CAAC,GACvB,CAAC,CAEH,GAAM,CAAAoC,OAAO,CAAG3B,eAAM,CAACC,IAAI,CAAC,CAC1B2B,IAAI,CAAE,CAAC,CACPnB,cAAc,CAAE,QAAQ,CACxBC,UAAU,CAAE,QACd,CAAC,CAAC,CAEF,GAAM,CAAAmB,KAAK,CAAG,GAAA7B,eAAM,EAAC8B,aAAI,CAAC,CAAC,SAACvC,CAAC,QAAM,CACjCwC,SAAS,CAAE,GAAG,CAAGxC,CAAC,CAACI,KAAK,CAACG,QAAQ,CACjCkC,SAAS,CAAE,QACb,CAAC,EAAC,CAAC,CAEH,GAAM,CAAAC,WAAW,CAAG,GAAAjC,eAAM,EAACkC,cAAK,CAAC,CAAC,CAChCC,UAAU,CAAE,OAAO,CACnBC,WAAW,CAAE,CACf,CAAC,CAAC,CAEF,GAAM,CAAAC,qBAAqB,CAAGrC,eAAM,CAACC,IAAI,CAAC,SAACV,CAAC,QAAM,CAChDa,QAAQ,CAAE,UAAU,CACpBC,GAAG,CAAE,GAAG,CAAGd,CAAC,CAACI,KAAK,CAACG,QAAQ,CAC3BQ,KAAK,CAAE,GAAG,CAAGf,CAAC,CAACI,KAAK,CAACG,QACvB,CAAC,EAAC,CAAC,CAKH,GAAM,CAAAwC,WAAW,CAAG,GAAAC,iBAAU,EAC5B,SAAAC,IAAA,CAYEC,GAAG,CACA,IAXD,CAAAC,GAAG,CAAAF,IAAA,CAAHE,GAAG,CAAAC,WAAA,CAAAH,IAAA,CACHI,MAAM,CAANA,MAAM,CAAAD,WAAA,UAAGE,sBAAa,CAAAF,WAAA,CAAAG,qBAAA,CAAAN,IAAA,CACtBO,mBAAmB,CAAnBA,mBAAmB,CAAAD,qBAAA,UAAG,CAAC,CAAC,CAAAA,qBAAA,CAAAE,kBAAA,CAAAR,IAAA,CACxBS,aAAa,CAAbA,aAAa,CAAAD,kBAAA,UAAG,CAAC,CAAC,CAAAA,kBAAA,CAClBE,KAAK,CAAAV,IAAA,CAALU,KAAK,CACLC,YAAY,CAAAX,IAAA,CAAZW,YAAY,CACZC,QAAQ,CAAAZ,IAAA,CAARY,QAAQ,CAAAC,YAAA,CAAAb,IAAA,CACRc,OAAO,CAAPA,QAAO,CAAAD,YAAA,UAAG,UAAM,CAAC,CAAC,CAAAA,YAAA,CACfE,IAAI,IAAAC,yBAAA,CAAAhF,OAAA,EAAAgE,IAAA,CAAAvE,SAAA,EAIT,IAAAwF,kBAAA,CAA4C,GAAAC,2BAAiB,EAAC,CAC5DR,KAAK,CAALA,KAAK,CACLC,YAAY,CAAZA,YAAY,CACZC,QAAQ,CAARA,QACF,CAAC,CAAC,CAAAO,mBAAA,IAAAC,eAAA,CAAApF,OAAA,EAAAiF,kBAAA,IAJKI,cAAc,CAAAF,mBAAA,IAAEG,iBAAiB,CAAAH,mBAAA,IAMxC,IAAAI,SAAA,CAAwC,GAAAC,eAAQ,EAAC,KAAK,CAAC,CAAAC,UAAA,IAAAL,eAAA,CAAApF,OAAA,EAAAuF,SAAA,IAAhDG,YAAY,CAAAD,UAAA,IAAEE,eAAe,CAAAF,UAAA,IACpC,IAAAG,SAAA,CAAkB,GAAAC,iBAAQ,EAAC,CAAC,CAApB1E,KAAK,CAAAyE,SAAA,CAALzE,KAAK,CAEb,GAAM,CAAA2E,6BAA6B,CAAG,GAAAC,kBAAW,KAAAC,kBAAA,CAAAhG,OAAA,EAAC,WAAY,CAC5D,GAAI,CACF,IAAAiG,cAAA,MAAyB,IAAI,CAAAC,OAAO,CAAsB,SAACC,OAAO,CAAK,CACrE,GAAAC,0CAAkB,EAAA9F,MAAA,CAAAqB,MAAA,EAEd0E,SAAS,CAAE,OAAO,EACf9B,mBAAmB,EAExB4B,OACF,CAAC,CACH,CAAC,CAAC,CARMG,MAAM,CAAAL,cAAA,CAANK,MAAM,CASdX,eAAe,CAAC,KAAK,CAAC,CACtB,GAAIW,MAAM,CAAEhB,iBAAiB,CAACgB,MAAM,CAAC,CAAC,CAAC,CAAC,CAC1C,CAAE,MAAAC,OAAA,CAAM,CAAC,CACX,CAAC,EAAE,CAAChC,mBAAmB,CAAEe,iBAAiB,CAAC,CAAC,CAE5C,GAAM,CAAAkB,gBAAgB,CAAG,GAAAT,kBAAW,KAAAC,kBAAA,CAAAhG,OAAA,EAAC,WAAY,CAC/C,GAAI,CACF,IAAAyG,eAAA,MAAyB,IAAI,CAAAP,OAAO,CAAsB,SAACC,OAAO,CAAK,CACrE,GAAAO,oCAAY,EAAApG,MAAA,CAAAqB,MAAA,EAER0E,SAAS,CAAE,OAAO,EACf5B,aAAa,EAElB0B,OACF,CAAC,CACH,CAAC,CAAC,CARMG,MAAM,CAAAG,eAAA,CAANH,MAAM,CASdX,eAAe,CAAC,KAAK,CAAC,CACtB,GAAIW,MAAM,CAAEhB,iBAAiB,CAACgB,MAAM,CAAC,CAAC,CAAC,CAAC,CAC1C,CAAE,MAAAK,QAAA,CAAM,CAAC,CACX,CAAC,EAAE,CAAClC,aAAa,CAAEa,iBAAiB,CAAC,CAAC,CAEtC,GAAM,CAAAsB,MAAM,CAAG,GAAAC,cAAO,EAAC,UAAM,CAC3B,GAAIxB,cAAc,GAAK,IAAI,CAAE,MAAO,KAAI,CACxC,GAAIA,cAAc,CAAE,MAAO,CAAAA,cAAc,CAACyB,GAAG,CAC7C,GAAI5C,GAAG,CAAE,MAAO,CAAAA,GAAG,CACnB,MAAO,KAAI,CACb,CAAC,CAAE,CAACmB,cAAc,CAAEnB,GAAG,CAAC,CAAC,CAEzB,GAAM,CAAAlD,QAAQ,CAAG,GAAA6F,cAAO,EAAC,iBAAM,CAAC,CAACD,MAAM,GAAE,CAACA,MAAM,CAAC,CAAC,CAElD,MACE,GAAApH,WAAA,CAAAuH,IAAA,EAAAvH,WAAA,CAAAwH,QAAA,EAAAC,QAAA,EACE,GAAAzH,WAAA,CAAA0H,GAAA,EAAC7H,QAAA,CAAA8H,cAAc,EAACC,SAAS,CAAEpG,QAAQ,CAAG,CAAEqG,SAAS,CAAE,CAAC,CAAC,CAAE,CAAC,CAAE,GAAG,CAAE,CAAC,CAAG,CAAC,CAAE,CAAAJ,QAAA,CACpE,GAAAzH,WAAA,CAAA0H,GAAA,EAAC7E,gBAAgB,CAAA/B,MAAA,CAAAqB,MAAA,EACfmD,OAAO,CAAE,QAAT,CAAAA,OAAOA,CAAGnF,CAAC,CAAK,CACdgG,eAAe,CAAC,IAAI,CAAC,CACrBb,QAAO,CAACnF,CAAC,CAAC,CACZ,CAAE,CACF2H,aAAa,CACXtG,QAAQ,CACJ,GAAAE,YAAG,EAAC,CAAC,CAAC,CAAE,CAAC,CAAE,GAAG,CAAC,CAAC,CAChB,GAAAA,YAAG,EAACC,KAAK,CAACoG,6BAA6B,CAC5C,CACDC,WAAW,CACTxG,QAAQ,CACJ,GAAAE,YAAG,EAAC,CAAC,CAAC,CAAE,CAAC,CAAE,GAAG,CAAC,CAAC,CAChB,GAAAA,YAAG,EAACC,KAAK,CAACsG,0BAA0B,CACzC,CACDC,aAAa,CAAE1G,QAAQ,CAAG,GAAG,CAAG,CAAE,EAC9B+D,IAAI,EACRd,GAAG,CAAEA,GAAI,CAAAgD,QAAA,CAET,GAAAzH,WAAA,CAAAuH,IAAA,EAAC7D,SAAS,EACRlC,QAAQ,CAAEA,QAAS,CACnB2G,UAAU,MACVC,iBAAiB,CAAC,aAAa,CAAAX,QAAA,EAE9BL,MAAM,EAAI,GAAApH,WAAA,CAAA0H,GAAA,EAACzD,WAAW,EAACmD,MAAM,CAAE,CAAEE,GAAG,CAAEF,MAAO,CAAE,CAAE,CAAC,CAEnD,GAAApH,WAAA,CAAAuH,IAAA,EAACxF,OAAO,EAACP,QAAQ,CAAEA,QAAS,CAAAiG,QAAA,EAC1B,GAAAzH,WAAA,CAAAuH,IAAA,EAAC5D,OAAO,EAAA8D,QAAA,EACN,GAAAzH,WAAA,CAAA0H,GAAA,EAAC7H,QAAA,CAAA8H,cAAc,EACbC,SAAS,CAAE,QAAX,CAAAA,SAASA,CAAGtH,CAAC,QAAM,CAAEwB,QAAQ,CAAE,GAAG,CAAGxB,CAAC,CAACwB,QAAS,CAAC,EAAE,CAAA2F,QAAA,CAEnD,GAAAzH,WAAA,CAAA0H,GAAA,EAACrI,MAAA,CAAAgJ,OAAO,GAAE,CAAC,CACG,CAAC,CACjB,GAAArI,WAAA,CAAA0H,GAAA,EAAC7D,KAAK,EAAA4D,QAAA,CAAE7C,MAAM,cAANA,MAAM,CAAE0D,KAAK,CAAQ,CAAC,EACvB,CAAC,CAET9G,QAAQ,EACP,GAAAxB,WAAA,CAAA0H,GAAA,EAAC7H,QAAA,CAAA8H,cAAc,EACbC,SAAS,CAAE,CACTW,oBAAoB,CAAE,CAAC,CAAC,CAAE,CAAC,CAAE,GAAG,CAAC,CACjCC,2BAA2B,CAAE,CAAC,CAAC,CAAE,CAAC,CAAE,GAAG,CAAE,GAAG,CAC9C,CAAE,CAAAf,QAAA,CAEF,GAAAzH,WAAA,CAAA0H,GAAA,EAACrD,qBAAqB,EAAAoD,QAAA,CACpB,GAAAzH,WAAA,CAAA0H,GAAA,EAAC5H,OAAA,CAAAU,OAAM,EACLiI,IAAI,CAAC,OAAO,CACZnD,OAAO,CAAE,QAAT,CAAAA,OAAOA,CAAA,QAAQ,CAAAQ,iBAAiB,CAAC,IAAI,CAAC,EAAC,CAAA2B,QAAA,CAEvC,GAAAzH,WAAA,CAAA0H,GAAA,EAACrI,MAAA,CAAAqJ,MAAM,GAAE,CAAC,CACJ,CAAC,CACY,CAAC,CACV,CACjB,EACM,CAAC,EACD,CAAC,EACI,CAAC,CACL,CAAC,CAEjB,GAAA1I,WAAA,CAAAuH,IAAA,EAACpI,WAAA,CAAAqB,OAAU,EACTmI,OAAO,CAAEzC,YAAa,CACtB0C,OAAO,CAAE,QAAT,CAAAA,OAAOA,CAAA,QAAQ,CAAAzC,eAAe,CAAC,KAAK,CAAC,EAAC,CAAAsB,QAAA,EAEtC,GAAAzH,WAAA,CAAA0H,GAAA,EAACvI,WAAA,CAAA0J,QAAQ,EAACrG,IAAI,CAAE,GAAAxC,WAAA,CAAA0H,GAAA,EAACrI,MAAA,CAAAgJ,OAAO,GAAE,CAAE,CAAC/C,OAAO,CAAEgB,6BAA8B,CAAAmB,QAAA,CACjE7C,MAAM,cAANA,MAAM,CAAEkE,iBAAiB,CAClB,CAAC,CACX,GAAA9I,WAAA,CAAA0H,GAAA,EAACvI,WAAA,CAAA0J,QAAQ,EAACrG,IAAI,CAAE,GAAAxC,WAAA,CAAA0H,GAAA,EAACrI,MAAA,CAAA0J,MAAM,GAAE,CAAE,CAACzD,OAAO,CAAE0B,gBAAiB,CAAAS,QAAA,CACnD7C,MAAM,cAANA,MAAM,CAAEoE,SAAS,CACV,CAAC,EACD,CAAC,EACb,CAAC,CAEP,CACF,CAAC,CAED1E,WAAW,CAAC2E,WAAW,CAAG,aAAa,CAAC,IAAAC,QAAA,CAAAC,OAAA,CAAA3I,OAAA,CAEzB8D,WAAW","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@os-design-mobile/image-upload",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.95",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"repository": "git@gitlab.com:os-team/libs/os-design-mobile.git",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"main": "dist/index.js",
|
|
8
|
-
"types": "dist/index.d.ts",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"react-native": "./src/index.ts",
|
|
9
10
|
"files": [
|
|
10
11
|
"dist",
|
|
11
12
|
"src",
|
|
@@ -28,12 +29,12 @@
|
|
|
28
29
|
"access": "public"
|
|
29
30
|
},
|
|
30
31
|
"dependencies": {
|
|
31
|
-
"@os-design-mobile/action-menu": "^1.0.
|
|
32
|
-
"@os-design-mobile/button": "^1.0.
|
|
33
|
-
"@os-design-mobile/icons": "^1.0.
|
|
34
|
-
"@os-design-mobile/image": "^1.0.
|
|
35
|
-
"@os-design-mobile/text": "^1.0.
|
|
36
|
-
"@os-design-mobile/theming": "^1.0.
|
|
32
|
+
"@os-design-mobile/action-menu": "^1.0.94",
|
|
33
|
+
"@os-design-mobile/button": "^1.0.70",
|
|
34
|
+
"@os-design-mobile/icons": "^1.0.66",
|
|
35
|
+
"@os-design-mobile/image": "^1.0.52",
|
|
36
|
+
"@os-design-mobile/text": "^1.0.64",
|
|
37
|
+
"@os-design-mobile/theming": "^1.0.48",
|
|
37
38
|
"@os-design/omit-emotion-props": "^1.0.24",
|
|
38
39
|
"@os-design/use-forwarded-state": "^1.0.27"
|
|
39
40
|
},
|
|
@@ -48,5 +49,5 @@
|
|
|
48
49
|
"react-native-safe-area-context": ">=3",
|
|
49
50
|
"react-native-svg": ">=12"
|
|
50
51
|
},
|
|
51
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "1de2f821ec10cf3084e3d92df85e74d5632ab005"
|
|
52
53
|
}
|
package/src/index.tsx
CHANGED
|
@@ -18,9 +18,7 @@ import styled from '@emotion/native';
|
|
|
18
18
|
import omitEmotionProps from '@os-design/omit-emotion-props';
|
|
19
19
|
import { clr, ThemeOverrider, useTheme } from '@os-design-mobile/theming';
|
|
20
20
|
import Button from '@os-design-mobile/button';
|
|
21
|
-
import defaultLocale, {
|
|
22
|
-
type ImageUploadLocale,
|
|
23
|
-
} from './utils/defaultLocale.js';
|
|
21
|
+
import defaultLocale, { type ImageUploadLocale } from './utils/defaultLocale';
|
|
24
22
|
|
|
25
23
|
export interface ImageUploadProps extends RectButtonProps {
|
|
26
24
|
/**
|