Skip to content

Instantly share code, notes, and snippets.

View toranb's full-sized avatar

Toran Billups toranb

View GitHub Profile
@toranb
toranb / components.my-component.js
Created July 28, 2016 01:47
Ember.Binding Example
import Ember from 'ember';
import {ValidationMixin, validate} from "ember-cli-simple-validation/mixins/validate";
export default Ember.Component.extend(ValidationMixin, {
nameValidation: validate("model.name")
});
@toranb
toranb / components.my-component.js
Created July 3, 2016 22:16
simple-validation-array-demo
import Ember from "ember";
import {ValidationMixin, validateEach} from "ember-cli-simple-validation/mixins/validate";
var isLegit = function(name) {
return name && name.length > 3;
};
export default Ember.Component.extend(ValidationMixin, {
tagName: "ul",
name: validateEach("name", isLegit),
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
@toranb
toranb / components.my-component.js
Last active July 10, 2016 21:31
simple-validation-demo
import Ember from 'ember';
import {ValidationMixin, validate} from "ember-cli-simple-validation/mixins/validate";
var isEven = function() {
var value = this.get("model.even");
var number = parseInt(value, 10);
return number && number % 2 === 0;
};
export default Ember.Component.extend(ValidationMixin, {
@toranb
toranb / fix-sound-dell-chromebook.txt
Created June 28, 2016 06:07
a quick step by step guide to fix the dell 11 chromebook sound issue I faced w/ ubuntu 15/16
1) open a terminal
2) sudo alsa force-unload
3) wget https://dl.dropboxusercontent.com/u/716525/downloads/asound.state
4) cd /var/lib/alsa/
5) cp ~/asound.state .
6) sudo !!
7) ls
8) sudo shutdown -r now
A full video of me doing the steps shown above
@toranb
toranb / integration-testing-dynamic-component-fail.js
Created April 17, 2016 18:19
a short try/catch style test to show how htmlbars will blow up when the component is not found
import hbs from 'htmlbars-inline-precompile';
import {moduleForComponent, test} from 'ember-qunit';
moduleForComponent('user-defined', 'integration: user defined test', {
integration: true,
setup() {
this.set('users', [{id: 3, name: 'foo'}]);
}
});
@toranb
toranb / integration-testing-dynamic-component.js
Created April 17, 2016 18:09
ember integration test to show how you can register/inject a custom template (for testing the component helper)
import hbs from 'htmlbars-inline-precompile';
import {moduleForComponent, test} from 'ember-qunit';
moduleForComponent('user-defined', 'integration: user defined test', {
integration: true,
setup() {
this.set('users', [{id: 3, name: 'foo'}]);
}
});
@toranb
toranb / user-defined-component.js
Created April 17, 2016 18:08
an example component that will render a custom component when configured
import Ember from 'ember';
import hbs from 'htmlbars-inline-precompile';
var UserDefinedComponent = Ember.Component.extend({
layout: hbs`
{{#each users as |user|}}
{{#if custom}}
{{component custom user=user}}
{{else}}
<h1>{{user.name}}</h1>
@toranb
toranb / user-table-component.js
Created April 17, 2016 17:41
presentation component with a simple closure action for removing users
import Ember from 'ember';
import hbs from 'htmlbars-inline-precompile';
var UserTableComponent = Ember.Component.extend({
layout: hbs`
{{#each users as |user|}}
<div>{{user.name}}</div>
<button onclick={{action remove user.id}}>remove</button>
{{/each}}
`
@toranb
toranb / integration-testing-closure-action.js
Created April 17, 2016 17:41
ember integration test for proving closure actions are wired up
import hbs from 'htmlbars-inline-precompile';
import {moduleForComponent, test} from 'ember-qunit';
moduleForComponent('users-table', 'integration: users table test', {
integration: true
});
test('should fire action when button is clicked', function(assert) {
assert.expect(1);
this.set('remove', (id) => {