mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-26 12:21:36 +03:00
03defc274e
closes https://github.com/TryGhost/Team/issues/1309 closes https://github.com/TryGhost/Team/issues/1336 - the error occurred because the `<Members::FilterValue>` component detaches it's value from the passed in value it was initialized with. Due to the detached handling, after changing the filter type away from the default label filter to a text input based filter, the internal value stayed as `[]` even though the filter type's value was changed. When the blur event was triggered in that state the internal `[]` value was used to update the filter resulting in an invalid filter string - added a quick-fix of assigning the input's value in the blur event handler meaning we get the expected `''` value - allows for passing tests to be created ready for a deeper fix/refactor later - added `nql` dependency and used it in the `GET /members` API mock to match members against the filter param so behaviour matches the real API - tested increase in code size - dev build increased by ~180KB, no difference in prod - added acceptance tests for all current filters and search
28 lines
726 B
JavaScript
28 lines
726 B
JavaScript
import faker from 'faker';
|
|
import moment from 'moment';
|
|
import {Factory, trait} from 'ember-cli-mirage';
|
|
|
|
let randomDate = function randomDate(start = moment().subtract(30, 'days').toDate(), end = new Date()) {
|
|
return new Date(start.getTime() + Math.random() * (end.getTime() - start.getTime()));
|
|
};
|
|
|
|
export default Factory.extend({
|
|
name() { return `${faker.name.firstName()} ${faker.name.lastName()}`; },
|
|
email: faker.internet.email,
|
|
status: 'free',
|
|
subscribed: true,
|
|
createdAt() { return moment(randomDate()).format('YYYY-MM-DD HH:mm:ss'); },
|
|
|
|
free: trait({
|
|
status: 'free'
|
|
}),
|
|
|
|
paid: trait({
|
|
status: 'paid'
|
|
}),
|
|
|
|
comped: trait({
|
|
status: 'comped'
|
|
})
|
|
});
|