Skip to content

Instantly share code, notes, and snippets.

@hbrysiewicz
Last active July 6, 2018 16:17
Show Gist options
  • Save hbrysiewicz/b944b17a6e87684ce0f2cb8bfa944272 to your computer and use it in GitHub Desktop.
Save hbrysiewicz/b944b17a6e87684ce0f2cb8bfa944272 to your computer and use it in GitHub Desktop.
New Twiddle
import Ember from 'ember';
import { task } from 'ember-concurrency';
import { sort } from '@ember/object/computed';
export default Ember.Component.extend({
columns: [
{
propertyName: "requestStatus",
title: "Status",
component: "custom/format-status",
filterWithSelect: true,
className: "tableCellRequestStatus",
filterFunction: strictFilterFunction
}
],
sortedActivities: sort('activities', function(activity1, activity2) {
let date1 = activity1.get('createdDate');
let date2 = activity2.get('createdDate');
return moment(date2).diff(date1, 'days');
}),
fetchActivities: task(function* () {
let activities = yield this.get('store').findAll('request');
this.set('activities', activities);
}),
didReceiveAttrs() {
this.get('fetchActivities').perform();
}
});
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
import Model from 'ember-data/model';
import attr from 'ember-data/attr';
import { belongsTo, hasMany } from 'ember-data/relationships';
export default Model.extend({
});
import Ember from 'ember';
export default Ember.Route.extend({
beforeModel() {
this.get('store').createRecord('request', { requestStatus: 'Incomplete Data', createdDate: new Date() });
this.get('store').createRecord('request', { requestStatus: 'Complete', createdDate: new Date() });
this.get('store').createRecord('request', { requestStatus: 'Needs Revision', createdDate: new Date() });
}
});
{{models-table
columns=columns
data=sortdActivities
filteringIgnoreCase=true
multipleColumnsSorting=false
pageSize=10
showColumnsDropdown=true
showComponentFooter=true
showGlobalFilter=true
showPageSize=false
tagName=""
useFilteringByColumns=true
useNumericPagination=true
}}
{
"version": "0.15.0",
"EmberENV": {
"FEATURES": {}
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js",
"ember": "3.1.0",
"ember-template-compiler": "3.1.0",
"ember-testing": "3.2.2",
},
"addons": {
"ember-data": "ryanto/data#v2.18.2-kaspick-has-many",
"ember-models-table": "2.6.0",
"ember-concurrency": "0.8.7",
"ember-moment": "^7.4.1",
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment