Socket
Socket
Sign inDemoInstall

article-json-to-contenteditable

Package Overview
Dependencies
59
Maintainers
2
Versions
31
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    article-json-to-contenteditable

## Installation


Version published
Weekly downloads
17
increased by750%
Maintainers
2
Install size
3.69 MB
Created
Weekly downloads
 

Readme

Source

article-json-to-contenteditable

Installation

Download node at nodejs.org and install it, if you haven't already.

npm install article-json-to-contenteditable --save

Example

import {render, tree} from 'deku';
import setupArticle from '../lib';
import element from 'magic-virtual-element';

const Article = setupArticle();
const container = document.querySelector('#editor');

const items = [
  {
    type: 'paragraph',
    children: [{
      type: 'text',
      content: 'Text text text',
      href: null,
      italic: false,
      bold: false,
      mark: false,
      markClass: null
    }]
  }, {
    type: 'embed',
    embedType: 'facebook',
    url: 'https://www.facebook.com/david.bjorklund/posts/10153809692501070',
    embedAs: 'post',
    date: 'Thursday, January 21, 2016',
    user: 'David Pop Hipsterson',
    text: [{
      content: 'Hey!So, for the last few weeks I\'ve worked on http://mic.com/ - the new home for mic.com (on desktop) - please take a look :)',
      href: null
    }]
  }
];

const getCustomKeyDown = (e) => {
  // Return method(s) to handle any keydown events you want custom
  // handling for, like undo/redo etc.
  const zKeyCode = 90;
  if (e.metaKey && e.keyCode === zKeyCode) {
    return function handleUndoRedo () {
      console.log('should undo/redo');
    };
  }
};

const onUpdate = ({items, selectionBoundingClientRect, activeItem}) => {
  console.log('in client.js onUpdate');
  console.log('selectionBoundingClientRect:', selectionBoundingClientRect);
  console.log('activeItem:', activeItem);
  app.mount(<Article items={items} onUpdate={onUpdate} getCustomKeyDown={getCustomKeyDown} />);
};

const app = tree(<Article items={items} onUpdate={onUpdate} getCustomKeyDown={getCustomKeyDown} />);

render(app, container);

Tests

npm install
npm test

Dependencies

Dev Dependencies

  • babel-cli: Babel command line.
  • babel-plugin-transform-react-jsx: Turn JSX into React function calls
  • babel-preset-es2015: Babel preset for all es2015 plugins.
  • babel-tape-runner: Babel + Tape for running your ES Next tests
  • babelify: Babel browserify transform
  • beefy: local development server that aims to make using browserify fast and fun
  • brfs: browserify fs.readFileSync() static asset inliner
  • browserify: browser-side require() the node way
  • create-event: Create an event object
  • electron-prebuilt: Install electron prebuilt binaries for the command-line use using npm
  • faucet: human-readable TAP summarizer
  • semistandard-deku: All the goodness of feross/standard with semicolons sprinkled on top. Adapted for deku
  • snazzy: Format JavaScript Standard Style as Stylish (i.e. snazzy) output
  • tape: tap-producing test harness for node and browsers
  • tape-catch: a wrapper around tape that catches and reports exceptions
  • testron: CI your client side tests with Electron

License

MIT

Generated by package-json-to-readme

FAQs

Last updated on 02 May 2017

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc