From 5c097742b47afce7260f403f7c4eb47d7d68e601 Mon Sep 17 00:00:00 2001 From: Jorge Date: Thu, 4 Oct 2018 17:14:15 -0400 Subject: [PATCH] picker refactor --- docs/reference/deprecated.md | 1 + packages/block-library/src/gallery/edit.js | 9 ++++++--- packages/block-library/src/gallery/index.js | 6 +++--- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/docs/reference/deprecated.md b/docs/reference/deprecated.md index 689fd8cbb8b54a..dad92900256832 100644 --- a/docs/reference/deprecated.md +++ b/docs/reference/deprecated.md @@ -22,6 +22,7 @@ Gutenberg's deprecation policy is intended to support backwards-compatibility fo - `getMetaBoxes` selector (`core/edit-post`) has been removed. Use `getActiveMetaBoxLocations` selector (`core/edit-post`) instead. - `getMetaBox` selector (`core/edit-post`) has been removed. Use `isMetaBoxLocationActive` selector (`core/edit-post`) instead. - Attribute type coercion has been removed. Omit the source to preserve type via serialized comment demarcation. +- `mediaDetails` in object passed to `onFileChange` callback of `wp.editor.mediaUpload`. Please use `media_details` property instead. ## 4.1.0 diff --git a/packages/block-library/src/gallery/edit.js b/packages/block-library/src/gallery/edit.js index c419579d309289..e70b0489f64751 100644 --- a/packages/block-library/src/gallery/edit.js +++ b/packages/block-library/src/gallery/edit.js @@ -44,7 +44,10 @@ export function defaultColumnsNumber( attributes ) { return Math.min( 3, attributes.images.length ); } -export const RELEVANT_MEDIA_FIELDS = [ 'alt', 'caption', 'id', 'link', 'url' ]; +const RELEVANT_MEDIA_FIELDS = [ 'alt', 'caption', 'id', 'link', 'url' ]; +export const pickRelevantMediaFiles = ( image ) => { + return pick( image, RELEVANT_MEDIA_FIELDS ); +}; class GalleryEdit extends Component { constructor() { @@ -89,7 +92,7 @@ class GalleryEdit extends Component { onSelectImages( images ) { this.props.setAttributes( { - images: images.map( ( image ) => pick( image, RELEVANT_MEDIA_FIELDS ) ), + images: images.map( ( image ) => pickRelevantMediaFiles( image ) ), } ); } @@ -137,7 +140,7 @@ class GalleryEdit extends Component { allowedTypes: ALLOWED_MEDIA_TYPES, filesList: files, onFileChange: ( images ) => { - const imagesNormalized = images.map( ( image ) => pick( image, RELEVANT_MEDIA_FIELDS ) ); + const imagesNormalized = images.map( ( image ) => pickRelevantMediaFiles( image ) ); setAttributes( { images: currentImages.concat( imagesNormalized ), } ); diff --git a/packages/block-library/src/gallery/index.js b/packages/block-library/src/gallery/index.js index 5fa499901a3d64..c702ea415ef47c 100644 --- a/packages/block-library/src/gallery/index.js +++ b/packages/block-library/src/gallery/index.js @@ -1,7 +1,7 @@ /** * External dependencies */ -import { filter, every, pick } from 'lodash'; +import { filter, every } from 'lodash'; /** * WordPress dependencies @@ -14,7 +14,7 @@ import { createBlobURL } from '@wordpress/blob'; /** * Internal dependencies */ -import { default as edit, defaultColumnsNumber, RELEVANT_MEDIA_FIELDS } from './edit'; +import { default as edit, defaultColumnsNumber, pickRelevantMediaFiles } from './edit'; const blockAttributes = { images: { @@ -135,7 +135,7 @@ export const settings = { mediaUpload( { filesList: files, onFileChange: ( images ) => onChange( block.clientId, { - images: images.map( ( image ) => pick( image, RELEVANT_MEDIA_FIELDS ) ), + images: images.map( ( image ) => pickRelevantMediaFiles( image ) ), } ), allowedTypes: [ 'image' ], } );