all files / lib/resources/ static-resource.jsx

100% Statements 15/15
100% Branches 6/6
100% Functions 1/1
100% Lines 14/14
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37      18× 18× 18×   18× 14×             10×               18×            
'use strict';
 
import React from 'react';
 
function StaticResource({ resource }) {
  const mimeType = resource.getAttr('creativeType');
  let renderable = null;
 
  if (mimeType.indexOf('image') === 0) {
    renderable = (<img role="presentation" src={resource.getValue()} />);
  } else if (mimeType.indexOf('text/css') === 0) {
    renderable = (
      <link
        rel="stylesheet"
        property="stylesheet"
        href={resource.getValue()}
      />
    );
  } else if (mimeType.indexOf('application/javascript') === 0) {
    renderable = (
      <script
        src={resource.getValue()}
      />
    );
  } else {
    console.warn(`Static Resource Of MIME Type ${mimeType} Not Supported!`);
  }
 
  return renderable;
}
 
StaticResource.propTypes = {
  resource: React.PropTypes.object.isRequired,
};
 
export default StaticResource;