Skip to content
This repository has been archived by the owner on Sep 16, 2022. It is now read-only.

Support ::ng-deep as an alternative to /deep/ #454

Closed
zoechi opened this issue Jun 12, 2017 · 5 comments
Closed

Support ::ng-deep as an alternative to /deep/ #454

zoechi opened this issue Jun 12, 2017 · 5 comments

Comments

@zoechi
Copy link

zoechi commented Jun 12, 2017

Angular will need some replacement
sass/dart-sass#154

@zoechi zoechi changed the title /deep/ is not supported by dart-sass /deep/ is not supported by dart-sass anymore Jun 12, 2017
@matanlurey
Copy link
Contributor

We have a number of ideas, but nothing I'm able to publish yet. Will update soon.

@matanlurey matanlurey added this to the V4 Alpha milestone Jun 15, 2017
@zoechi
Copy link
Author

zoechi commented Jun 15, 2017

That's what I wanted to hear, that it's on your radar. No need to provide details right now.

@matanlurey matanlurey changed the title /deep/ is not supported by dart-sass anymore Support ::ng-deep as an alternative to /deep/ Jun 16, 2017
@matanlurey
Copy link
Contributor

matanlurey commented Jun 16, 2017

We've decided to deprecate /deep/ and >>>, and support ::ng-deep as a drop-in.

Here is our internal test case for this feature:

  test('should handle ::ng-deep', () {
    var css = '::ng-deep y {}';
    shimAndExpect(css, 'y {}');
    css = 'x ::ng-deep y {}';
    shimAndExpect(css, 'x.$content y {}');
    css = ':host > ::ng-deep .x {}';
    shimAndExpect(css, '.$host > .x {}');
    css = ':host ::ng-deep > .x {}';
    shimAndExpect(css, '.$host > .x {}');
    css = ':host > ::ng-deep > .x {}';
    shimAndExpect(css, '.$host > > .x {}');
  });

We've gotten confirmation this will be supported (parsable) in all major SASS tooling.

AngularDart 4.x.x will be the last major release to support either /deep/ or >>> (both, including ::ng-deep, will be available in 4.0). As a result, native shadow DOM will also be deprecated (but not immediately removed), since there is no way after Chrome's /deep/ deprecation lands, and we don't have another story (yet).

NOTE: We will back-port and release 3.2.0 to unblock our users, but other packages (like angular_components) will need to be updated too in order to take advantage of this fully.

@alorenzen
Copy link
Contributor

@leonsenft Was this included as part of #471 ?

@leonsenft
Copy link
Contributor

@alorenzen Yes it was. Looks like it got swallowed up by 302c386 and we lost the commit message.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants