87ab332bce
This commit adds 2 ember component/helpers and a service to contain the shared functionality for matching/rendering content dependent on state identifiers. Currently a `service.state` method has been added to easily make manual state objects, but these are built towards using `xstate` to manage UI state in some of our future components. We've added some tests here, and we aren't currently using these components anywhere in this commit.
15 lines
325 B
JavaScript
15 lines
325 B
JavaScript
import Service from '@ember/service';
|
|
export default Service.extend({
|
|
matches: function(state, matches) {
|
|
const values = Array.isArray(matches) ? matches : [matches];
|
|
return values.some(item => {
|
|
return state.matches(item);
|
|
});
|
|
},
|
|
state: function(cb) {
|
|
return {
|
|
matches: cb,
|
|
};
|
|
},
|
|
});
|