Skip to content

Conversation

@ocean90
Copy link
Member

@ocean90 ocean90 commented Oct 31, 2018

Description

I initially checked for the file type to not be one of the other types supported by the video/image/audio/gallery blocks. But since this has a higher priority this isn't actually required as it will only be used as a fallback. Due to the power of the block specific transforms it's still possible to easily convert the block to another specific media block which I think is just awesome.

Fixes #11249.

Screenshots

kapture 2018-10-31 at 13 31 16

type: 'files',
isMatch: ( files ) => files.length === 1,
isMatch( files ) {
return files.length > 0;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

isMatch is required per

( transform ) => transform.type === 'files' && transform.isMatch( files )
so this is just a simple sanity check.

fileName: file.name,
textLinkHref: blobURL,
files.map( ( file ) => {
const blobURL = createBlobURL( file );
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Out of scope of this PR but I thought I'd mention for context. Ideally, we shouldn't rely on the edit function to properly upload the file and use the final URL. Instead we should avoid storing temporary attributes in blocks.

That said, we don't have a proper solution for this problem at the moment, we'll more likely need to think about a "reactive" transform API but this is not high-priority.

Copy link
Contributor

@youknowriad youknowriad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

@jasmussen
Copy link
Contributor

♥️

@ocean90 ocean90 added this to the 4.3 milestone Oct 31, 2018
@ocean90 ocean90 merged commit de7121c into master Nov 1, 2018
@ocean90 ocean90 deleted the fix/drop-file-blocks branch November 1, 2018 17:07
daniloercoli added a commit that referenced this pull request Nov 1, 2018
…rnmobile/port-quote-block-step-1

* 'master' of https://github.com/WordPress/gutenberg: (22 commits)
  Add removed periods to block descriptions. (#11367)
  Remove findDOMNode usage from the inserter (#11363)
  Remove deprecated componentWillReceiveProps from TinyMCE component (#11368)
  Create file blocks when dropping multiple files at once (#11297)
  Try avoiding the deprecated findDOMNode API from DropZone Provider (#11168)
  Fix: make meta+A behaviour of selecting all blocks work on safari and firefox. (#8180)
  Remove _wpGutenbergCodeEditorSettings and wp.codeEditor assets (#11342)
  Remove the Cloudflare warning (#11350)
  Image Block: Use source_url for media file link (#11254)
  Enhance styling of nextpage block using the Hr element (#11354)
  Embed block refactor and tidy (#10958)
  Nonce Middleware: Wrap the nonce middleware function into it's own function that isn't regenerated on every API request. (#11347)
  Fix RTL block alignments (#11293)
  RichText: fix buggy enter/delete behaviour (#11287)
  Remove code coverage setup (#11198)
  Parser: Runs all parser implementations against the same tests (#11320)
  Stop trying to autosave when title and classic block content both are empty. (#10404)
  Fix "Mac OS" typo + use fancy quotes consistently (#11310)
  Update documentation link paths (#11324)
  Editor: Reshape blocks state under own key (#11315)
  ...

# Conflicts:
#	gutenberg-mobile
@mtias mtias added the [Block] File Affects the File Block label Nov 12, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

[Block] File Affects the File Block

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants