UNPKG

@sanity/form-builder

Version:
105 lines (103 loc) 4.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ImageInputTester = exports.DEFAULT_PROPS = void 0; var _rxjs = require("rxjs"); var _imageUrl = _interopRequireDefault(require("@sanity/image-url")); var _react = _interopRequireDefault(require("react")); var _ui = require("@sanity/ui"); var _formBuilder = require("../../sanity/legacyPartImplementations/form-builder"); var _ImageInput = _interopRequireDefault(require("../../inputs/files/ImageInput")); var _excluded = ["schema"]; function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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; } 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; } var resolveUploaderStub = () => ({ priority: 1, type: 'image', accepts: 'image/*', upload: (file, type, options) => _rxjs.EMPTY }); var observeAssetStub = id => (0, _rxjs.of)({ _id: id, _type: 'sanity.imageAsset', _createdAt: '2021-06-30T08:16:55Z', _rev: 'x3HeExLNg9nMfqQGwLDqyZ', _updatedAt: '2021-06-30T08:16:55Z', assetId: '47b2fbcdb38bee39c02064b218b47a17de808945', extension: 'jpg', metadata: { _type: 'sanity.imageMetadata', dimensions: { _type: 'sanity.imageDimensions', aspectRatio: 0.75, height: 3648, width: 2736 }, hasAlpha: false, isOpaque: true }, mimeType: 'image/jpeg', originalFilename: '2021-06-23 08.10.04.jpg', path: 'images/ppsg7ml5/test/47b2fbcdb38bee39c02064b218b47a17de808945-2736x3648.jpg', sha1hash: '47b2fbcdb38bee39c02064b218b47a17de808945', size: 4277677, uploadId: 'OLknm0kCxeXuzlxbcBHaRzmRWCHIbIYu', url: 'https://cdn.sanity.io/images/ppsg7ml5/test/47b2fbcdb38bee39c02064b218b47a17de808945-2736x3648.jpg' }); var imageUrlBuilderStub = (0, _imageUrl.default)({ dataset: 'some-dataset', projectId: 'some-project-id' }); var DEFAULT_PROPS = { value: {}, compareValue: {}, type: { description: '', fields: [], isCustomized: false, jsonType: 'object', name: '', options: {}, preview: {}, title: '', type: { jsonType: 'object', name: 'image', type: null } }, level: 1, onChange: () => undefined, resolveUploader: resolveUploaderStub, observeAsset: observeAssetStub, onBlur: () => undefined, onFocus: () => undefined, readOnly: false, focusPath: [], directUploads: true, assetSources: [{}], markers: [], presence: [], imageUrlBuilder: imageUrlBuilderStub, getValuePath: () => ['Image'] }; // Use this in your test to get full control when testing the form builder // the default props are available in DEFAULT_props exports.DEFAULT_PROPS = DEFAULT_PROPS; var ImageInputTester = /*#__PURE__*/_react.default.forwardRef(function ImageInputTester(props, ref) { var schema = props.schema, rest = _objectWithoutProperties(props, _excluded); return /*#__PURE__*/_react.default.createElement(_ui.ThemeProvider, { scheme: "light", theme: _ui.studioTheme }, /*#__PURE__*/_react.default.createElement(_ui.LayerProvider, null, /*#__PURE__*/_react.default.createElement(_ui.ToastProvider, null, /*#__PURE__*/_react.default.createElement(_formBuilder.FormBuilderContext, { value: undefined, patchChannel: { onPatch: _rxjs.noop }, schema: schema }, /*#__PURE__*/_react.default.createElement(_ImageInput.default, rest))))); }); exports.ImageInputTester = ImageInputTester;