I hereby claim:
- I am adrianmc on github.
- I am adrianmcli (https://keybase.io/adrianmcli) on keybase.
- I have a public key ASBfyo8kunHt6ETIM0v8Gb6kjZETpAmPl-wmyqbMf68slgo
To claim this, I am signing this object:
| Template.layout.rendered = function(){ | |
| $(document).foundation('topbar', 'reflow'); // apply listener | |
| } |
| .typeahead, | |
| .tt-query, | |
| .tt-hint { | |
| height: 30px; | |
| padding: 8px 12px; | |
| font-size: 24px; | |
| line-height: 30px; | |
| border: 2px solid #ccc; | |
| -webkit-border-radius: 8px; | |
| -moz-border-radius: 8px; |
I hereby claim:
To claim this, I am signing this object:
| scrollHandler = () => { | |
| // Get the element | |
| const ele = $(this._container); | |
| // Compare these two metrics to get the distance scrolled from the bottom | |
| const metricA = ele[0].scrollHeight - ele.scrollTop(); | |
| const metricB = ele.outerHeight(); | |
| const distanceFromBottom = metricA - metricB; | |
| console.log(`distanceFromBottom: ${distanceFromBottom}`); |
| componentWillReceiveProps() { | |
| // before the new props come in, save the current scroll position | |
| const ele = $(this._container); | |
| const distanceFromBottom = ele[0].scrollHeight - ele.scrollTop() - ele.outerHeight(); | |
| this.setState({ | |
| distanceFromBottom, | |
| }); | |
| } |
| import React from 'react'; | |
| import Avatar from 'material-ui/lib/avatar'; | |
| import CloseIcon from 'material-ui/lib/svg-icons/navigation/cancel'; | |
| export default class Chip extends React.Component { | |
| constructor(props) { | |
| super(props); | |
| this.state = { |
| const hasFocus = editorState.getSelection().getHasFocus(); | |
| if (hasFocus) { | |
| // make an array of blocks we need to request locks for | |
| // 1. which locks do we currently have? | |
| const currentLocks = this.locks.map(lock => lock.blockKey); | |
| // 2. which locks does the user want? (getSelectedBlocks) | |
| const desiredLocks = getSelectedBlocks().map(block => block.getKey()); | |
| // 3. Make a list of all elements in the desiredLocks not contained in currentLocks | |
| const requestLocks = R.difference(desiredLocks, currentLocks); | |
| // 4. Make a list of all elements in currentLocks not contained in desiredLocks |
| // ### Note ### | |
| // | |
| // R.difference(currentKeys, newKeys) returns an | |
| // array of keys that I have, but the server does | |
| // not have. | |
| // | |
| // Note also that the injectChanges function does not have any changes | |
| componentWillReceiveProps(nextProps) { | |
| this.locks = nextProps.locks; |
| function fetchDuration(videoId, apiKey) { | |
| const baseURL = 'https://www.googleapis.com/youtube/v3/videos?'; | |
| const url = `${baseURL}id=${videoId}&key=${apiKey}&part=snippet,contentDetails`; | |
| $.ajax({ | |
| async: false, | |
| type: 'GET', | |
| url: url, | |
| success: function(data) { | |
| const item = data.items[0]; | |
| const result = item ? item.contentDetails.duration : null; |
| import React from 'react'; | |
| import PureRenderMixin from 'react-addons-pure-render-mixin'; | |
| import {convertFromRaw, ContentState} from 'draft-js'; | |
| import {stateToHTML} from 'draft-js-export-html'; | |
| import linkifyIt from 'linkify-it'; | |
| import tlds from 'tlds'; | |
| const linkify = linkifyIt(); | |
| linkify.tlds(tlds); |