Comments (3)
I believe it can be replaced by leveraging of the document.activeElement
in a custom property, smth like:
// pseudo code
export function hasFocus(selector, userOptions = {}) {
return {
isDescriptor: true,
get(key) {
let options = { pageObjectKey: key, ...userOptions };
return findOne(this, selector, options) === document.activeElement;
}
};
}
which could be used like the rest of the page object props:
const element = create({
scope: '.selector',
hasFocus: hasFocus()
});
hope it helps and would work for you!
Also I'm definitely open to accept an update for the is
deprecation section.
from ember-cli-page-object.
Hey @ro0gr, I’d be happy to contribute with an update/improvement. Would there be interested in adding this hasFocus
(or something similar) to ember-cli-page-object
as an official helper as well?
from ember-cli-page-object.
hey @gnclmorais! though I feel like it isn't a super frequently used feature, I'm not opposed to have this included by default.
Just a remark about possible implementation... The suggested approach with findOne(
does contradict a bit with what we currently do for the rest of similar properties in v1. At the moment we try to respect the multiple
option, which in its turn is deprecated now, and it's going to be removed in v2. That's why I think for the new property it'd be better to use findOne
, even if we become inconsistent with the rest of props.
from ember-cli-page-object.
Related Issues (20)
- Clicking on text with comma produces a deprecation warning HOT 1
- Errors running tests since upgrading to v5 of `ember-qunit` HOT 7
- Deprecation calls need to be updated for compat with Ember 3.24 HOT 2
- Incompatible with Embroider 's `staticAddonTestSupportTrees` optimized mode HOT 10
- new deprecation: `create-url-argument` *always* throws when an object is passed to create. HOT 4
- Query Engines
- Assign is being referenced from @ember/polyfills. This prevents upgrade to Ember 4 HOT 4
- Update ember-cli-babel HOT 5
- migrate to v2 Addon Format HOT 4
- Types require allowSyntheticDefaultImports=true HOT 2
- Replace usage of ember-native-dom-helpers by @ember/test-helpers HOT 1
- is there a way to create recursive page object? HOT 2
- docs: clickable needs to be awaited HOT 2
- All imports must be declared as dependencies or peers HOT 3
- Fix support for @tsconfig/ember 3.0.0 error TS7016 HOT 6
- [Quest] Remove jquery
- get rid of `$.param(`
- `$.prop(`
- deprecate finders `scope` option
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ember-cli-page-object.