-
Notifications
You must be signed in to change notification settings - Fork 392
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(engine): exposing host #705
fix(engine): exposing host #705
Conversation
Benchmark resultsBase commit: |
@@ -24,5 +24,18 @@ describe('restrictions', () => { | |||
template.querySelector('p').childNodes; | |||
}).toLogWarning('Discouraged access to property \'childNodes\' on \'Node\': It returns a live NodeList and should not be relied upon. Instead, use \'querySelectorAll\' which returns a static NodeList.'); | |||
}); | |||
|
|||
it('should not restrict host', () => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This test is redundant. It is a subset of the other test you are adding above.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is true, but I couldn't decide if I should test the restriction removal, or the host behavior. So I did both
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Input on which I should keep @ravijayaramappa ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
😄 First world problems.
IMO, you should keep the test in shadow-root.spec.ts
coz it is now part of the shadow-root spec.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agree with Ravi. Makes more sense to test new functionality closer to the implementation rather than add a test here for what we used to restrict.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Braze yourself!
@@ -0,0 +1,3 @@ | |||
export default function detect(): boolean { | |||
return true; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
typeof (window as any).ShadowRoot !== "undefined";
? Or this is by choice?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm still working on the detection logic. Unfortunately, in Selenium, we always want to patch window.ShadowDom
because internally Selenium uses instanceof
to verify that a value is Shadow
@@ -49,7 +49,8 @@ const compatBrowsers = [ | |||
commonName: 'ie11', | |||
browserName: 'internet explorer', | |||
platform: 'Windows 10', | |||
version: '11.103' | |||
version: '11.103', | |||
iedriverVersion: '3.4.0' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adding a small comment here would be interesting, explaining why the previous version are incompatible.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By the way did we tests against the other browsers?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What do you mean "test against other browsers?" Our CI is running against everything...
@@ -0,0 +1,3 @@ | |||
export default function detect(): boolean { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should add a README.md
explaining this polyfill
@@ -0,0 +1,3 @@ | |||
export default function detect(): boolean { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should add a README.md
explaining this polyfill.
}) as ShadowRoot; | ||
|
||
// These cannot be patched when module is loaded because | ||
// Element.prototype needs to be patched first, which happens |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like another circular dependency issue.
Benchmark resultsBase commit: |
removeShadowRootEventListener(this, type, listener, options); | ||
} | ||
compareDocumentPosition(otherNode: Node | SyntheticShadowRoot) { | ||
// this API might be called with proxies |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
proxies? what proxies? lol
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think all those comments about proxies can be removed.
const elements = elementsFromPoint.call(document, left, top); | ||
const hostKey = getNodeKey(this.host); | ||
let topElement = null; | ||
for (let i = elements.length - 1; i >= 0; i -= 1) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is very redundant, I think calling getFirstMatch(host, elements)
might be sufficient here, that already take care of the undefined keys, etc.
for (let i = length - 1; i >= 0; i -= 1) { | ||
const el = elements[i]; | ||
const ownerKey = getNodeOwnerKey(el); | ||
if (isUndefined(ownerKey)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this logic does not cover manually inserted elements inside LWC, but I think that's a very edge case for now.
import { SyntheticShadowRoot } from "../../faux-shadow/shadow-root"; | ||
|
||
export default function apply() { | ||
(window as any).ShadowRoot = SyntheticShadowRoot; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm fine with this, but I think this constructor should not be callable/newable, so it matches the native one. In this PR, you'are making that constructor a valid target for new.
* feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix
* feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix
* refactor(engine): removal of is attr and forceTagName refactor(engine): removal of is attr and forceTagName fix(engine): removing integration test for forceTagName refactor(engine): snabbdom lite - phase 1 refactor(engine): adding hooks.ts refactor(engine): removing global hooks refactor(engine): PR 606 refactor(engine): splitting style and class modules into static and dynamic test(engine): ready for the final push refactor(engine): making hooks mandatory. refactor(engine): making all hooks functions refactor(engine): dynamic diff vs static diff refactor(engine): using two diff algos refactor(engine): removing htmlapi in favor of pure patching fix(engine): missing argument when determining diff algo fix(engine): adding tests for dynamic diff fix(engine): clean up fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test
refactor(engine): removal of is attr and forceTagName fix(engine): removing integration test for forceTagName fix: remove custom element transformation from CSS (#695) fix(compiler): fixing fixtures refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName refactor(engine): removal of is attr and forceTagName fix(engine): removing integration test for forceTagName refactor(engine): snabbdom lite - phase 1 refactor(engine): adding hooks.ts refactor(engine): removing global hooks refactor(engine): PR 606 refactor(engine): splitting style and class modules into static and dynamic test(engine): ready for the final push refactor(engine): making hooks mandatory. refactor(engine): making all hooks functions refactor(engine): dynamic diff vs static diff refactor(engine): using two diff algos refactor(engine): removing htmlapi in favor of pure patching fix(engine): missing argument when determining diff algo fix(engine): adding tests for dynamic diff fix(engine): clean up fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test
refactor(engine): removal of is attr and forceTagName fix(engine): removing integration test for forceTagName fix: remove custom element transformation from CSS (#695) fix(compiler): fixing fixtures refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName refactor(engine): removal of is attr and forceTagName fix(engine): removing integration test for forceTagName refactor(engine): snabbdom lite - phase 1 refactor(engine): adding hooks.ts refactor(engine): removing global hooks refactor(engine): PR 606 refactor(engine): splitting style and class modules into static and dynamic test(engine): ready for the final push refactor(engine): making hooks mandatory. refactor(engine): making all hooks functions refactor(engine): dynamic diff vs static diff refactor(engine): using two diff algos refactor(engine): removing htmlapi in favor of pure patching fix(engine): missing argument when determining diff algo fix(engine): adding tests for dynamic diff fix(engine): clean up fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test
* refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test wip: styles still broken wip: fix styles
* refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test wip: styles still broken wip: fix styles
* refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test wip: styles still broken wip: fix styles
* refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test wip: styles still broken wip: fix styles
* refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test wip: styles still broken wip: fix styles
* refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test wip: styles still broken wip: fix styles
* refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test wip: styles still broken wip: fix styles
* refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test wip: styles still broken wip: fix styles
* * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test wip: styles still broken wip: fix styles * refactor(engine): preliminar work for tabindex * feat(engine): prototype over descriptors * refactor(engine): preliminar work for focus and blur patch * fix(engine): invalid import statement * refactor(engine): preliminar work for focus and blur patch * fix(engine): make shadowroot a fragment * fix(engine): make shadowroot a fragment * fix(engine): make shadowroot a fragment * fix(engine): make shadowroot a fragment * feat(engine): active element for shadow roots (#740) * feat(engine): active element for shadow roots * fix(engine): linting * fix(docs): updated readme * fix(engine): types * fix(engine): nodelist iterator * fix(engine): nodelist iterator * chore(engine): rebasing next-rebased * refactor(engine): implement delegatesFocus flag * test(engine): implement delegatesFocus flag tests * chore(engine): fixing dval mess with the history * fix: newlines on tests * feat: add some polyfill tests * fix(engine): tests * fix(engine): review for PR 747
* refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * fix: remove custom element transformation from CSS (#695) * fix(compiler): fixing fixtures * refactor(engine): snabbdom lite - phase 1 (#606) * refactor(engine): removal of is attr and forceTagName * refactor(engine): removal of is attr and forceTagName * fix(engine): removing integration test for forceTagName * refactor(engine): snabbdom lite - phase 1 * refactor(engine): adding hooks.ts * refactor(engine): removing global hooks * refactor(engine): splitting style and class modules into static and dynamic * test(engine): ready for the final push * refactor(engine): making hooks mandatory. * refactor(engine): making all hooks functions * refactor(engine): dynamic diff vs static diff * refactor(engine): using two diff algos * refactor(engine): removing htmlapi in favor of pure patching * fix(engine): missing argument when determining diff algo * fix(engine): adding tests for dynamic diff * fix(engine): clean up * fix(engine): integration test failures * refactor(engine): proto chaining * fix(engine): wrong auto import * fix(engine): correcting the proto chain * refactor(engine): implementing the base element proto chain * test(engine): adding more tests for restrictions on elements * refactor(engine): rename to BaseBridgeElement * feat(engine): dom patching (#688) * feat(engine): dom patching * fix(engine): cleanup descriptors * feat(engine): rebase * fix(engine): linting * fix(engine): pr feedback * fix(engine): lint * fix(compiler): updated snapshot testing to account for shadow dom * fix(engine): pr feedback * fix(engine): fixing restrictions on custom elements * fix(engine): exposing host (#705) * fix(engine): exposing host * fix(engine): shadow root * wip(engine): linting and type errors * fix(engine): cleaning up shadow root detection * fix(engine): removing restrictions test * fix(engine): fixing element from point methods * fix(engine): disabling some attribute integration test for now * fix(engine): linting * fix(engine): upgrade ie11 driver * fix(engine): compat test fix * fix(engine): applying elementFromPoint on document * fix(engine): linting * fix(engine): reverting unnecessary changes * fix(engine): removing skip in test * fix(engine): polyfill readmes * fix(engine): review feedback * fix(engine): integration tests for elementFromPoint * fix(engine): ie11 elementsFromPoint * fix(engine): feedback * fix(engine): ts fix * wip: yarn update * fix(engine): fixing snapshot test
Details
Exposing
host
on shadowRootDoes this PR introduce a breaking change?