@angular/language-service 8.0.0-rc.4 → 8.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v8.0.0-rc.4
2
+ * @license Angular v8.0.2
3
3
  * (c) 2010-2019 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -2847,11 +2847,11 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
2847
2847
  name: 'ɵregisterModuleFactory',
2848
2848
  moduleName: CORE,
2849
2849
  };
2850
- Identifiers.inject = { name: 'Δinject', moduleName: CORE };
2850
+ Identifiers.inject = { name: 'ɵɵinject', moduleName: CORE };
2851
2851
  Identifiers.INJECTOR = { name: 'INJECTOR', moduleName: CORE };
2852
2852
  Identifiers.Injector = { name: 'Injector', moduleName: CORE };
2853
- IdentifiersdefineInjectable = { name: 'ΔdefineInjectable', moduleName: CORE };
2854
- Identifiers.InjectableDef = { name: 'ΔInjectableDef', moduleName: CORE };
2853
+ Identifiers.ɵɵdefineInjectable = { name: 'ɵɵdefineInjectable', moduleName: CORE };
2854
+ Identifiers.InjectableDef = { name: 'ɵɵInjectableDef', moduleName: CORE };
2855
2855
  Identifiers.ViewEncapsulation = {
2856
2856
  name: 'ViewEncapsulation',
2857
2857
  moduleName: CORE,
@@ -3355,159 +3355,159 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
3355
3355
  Identifiers.TRANSFORM_METHOD = 'transform';
3356
3356
  Identifiers.PATCH_DEPS = 'patchedDeps';
3357
3357
  /* Instructions */
3358
- Identifiers.namespaceHTML = { name: 'ΔnamespaceHTML', moduleName: CORE$1 };
3359
- Identifiers.namespaceMathML = { name: 'ΔnamespaceMathML', moduleName: CORE$1 };
3360
- Identifiers.namespaceSVG = { name: 'ΔnamespaceSVG', moduleName: CORE$1 };
3361
- Identifiers.element = { name: 'Δelement', moduleName: CORE$1 };
3362
- Identifiers.elementStart = { name: 'ΔelementStart', moduleName: CORE$1 };
3363
- Identifiers.elementEnd = { name: 'ΔelementEnd', moduleName: CORE$1 };
3364
- Identifiers.elementProperty = { name: 'ΔelementProperty', moduleName: CORE$1 };
3365
- Identifiers.select = { name: 'Δselect', moduleName: CORE$1 };
3366
- Identifiers.componentHostSyntheticProperty = { name: 'ΔcomponentHostSyntheticProperty', moduleName: CORE$1 };
3367
- Identifiers.componentHostSyntheticListener = { name: 'ΔcomponentHostSyntheticListener', moduleName: CORE$1 };
3368
- Identifiers.elementAttribute = { name: 'ΔelementAttribute', moduleName: CORE$1 };
3369
- Identifiers.elementClassProp = { name: 'ΔelementClassProp', moduleName: CORE$1 };
3370
- Identifiers.elementContainerStart = { name: 'ΔelementContainerStart', moduleName: CORE$1 };
3371
- Identifiers.elementContainerEnd = { name: 'ΔelementContainerEnd', moduleName: CORE$1 };
3372
- Identifiers.elementStyling = { name: 'ΔelementStyling', moduleName: CORE$1 };
3373
- Identifiers.elementStylingMap = { name: 'ΔelementStylingMap', moduleName: CORE$1 };
3374
- Identifiers.elementStyleProp = { name: 'ΔelementStyleProp', moduleName: CORE$1 };
3375
- Identifiers.elementStylingApply = { name: 'ΔelementStylingApply', moduleName: CORE$1 };
3376
- Identifiers.elementHostAttrs = { name: 'ΔelementHostAttrs', moduleName: CORE$1 };
3377
- Identifiers.elementHostStyling = { name: 'ΔelementHostStyling', moduleName: CORE$1 };
3378
- Identifiers.elementHostStylingMap = { name: 'ΔelementHostStylingMap', moduleName: CORE$1 };
3379
- Identifiers.elementHostStyleProp = { name: 'ΔelementHostStyleProp', moduleName: CORE$1 };
3380
- Identifiers.elementHostClassProp = { name: 'ΔelementHostClassProp', moduleName: CORE$1 };
3381
- Identifiers.elementHostStylingApply = { name: 'ΔelementHostStylingApply', moduleName: CORE$1 };
3382
- Identifiers.containerCreate = { name: 'Δcontainer', moduleName: CORE$1 };
3383
- Identifiers.nextContext = { name: 'ΔnextContext', moduleName: CORE$1 };
3384
- Identifiers.templateCreate = { name: 'Δtemplate', moduleName: CORE$1 };
3385
- Identifiers.text = { name: 'Δtext', moduleName: CORE$1 };
3386
- Identifiers.textBinding = { name: 'ΔtextBinding', moduleName: CORE$1 };
3387
- Identifiers.bind = { name: 'Δbind', moduleName: CORE$1 };
3388
- Identifiers.enableBindings = { name: 'ΔenableBindings', moduleName: CORE$1 };
3389
- Identifiers.disableBindings = { name: 'ΔdisableBindings', moduleName: CORE$1 };
3390
- Identifiers.allocHostVars = { name: 'ΔallocHostVars', moduleName: CORE$1 };
3391
- Identifiers.getCurrentView = { name: 'ΔgetCurrentView', moduleName: CORE$1 };
3392
- Identifiers.restoreView = { name: 'ΔrestoreView', moduleName: CORE$1 };
3393
- Identifiers.interpolation1 = { name: 'Δinterpolation1', moduleName: CORE$1 };
3394
- Identifiers.interpolation2 = { name: 'Δinterpolation2', moduleName: CORE$1 };
3395
- Identifiers.interpolation3 = { name: 'Δinterpolation3', moduleName: CORE$1 };
3396
- Identifiers.interpolation4 = { name: 'Δinterpolation4', moduleName: CORE$1 };
3397
- Identifiers.interpolation5 = { name: 'Δinterpolation5', moduleName: CORE$1 };
3398
- Identifiers.interpolation6 = { name: 'Δinterpolation6', moduleName: CORE$1 };
3399
- Identifiers.interpolation7 = { name: 'Δinterpolation7', moduleName: CORE$1 };
3400
- Identifiers.interpolation8 = { name: 'Δinterpolation8', moduleName: CORE$1 };
3401
- Identifiers.interpolationV = { name: 'ΔinterpolationV', moduleName: CORE$1 };
3402
- Identifiers.pureFunction0 = { name: 'ΔpureFunction0', moduleName: CORE$1 };
3403
- Identifiers.pureFunction1 = { name: 'ΔpureFunction1', moduleName: CORE$1 };
3404
- Identifiers.pureFunction2 = { name: 'ΔpureFunction2', moduleName: CORE$1 };
3405
- Identifiers.pureFunction3 = { name: 'ΔpureFunction3', moduleName: CORE$1 };
3406
- Identifiers.pureFunction4 = { name: 'ΔpureFunction4', moduleName: CORE$1 };
3407
- Identifiers.pureFunction5 = { name: 'ΔpureFunction5', moduleName: CORE$1 };
3408
- Identifiers.pureFunction6 = { name: 'ΔpureFunction6', moduleName: CORE$1 };
3409
- Identifiers.pureFunction7 = { name: 'ΔpureFunction7', moduleName: CORE$1 };
3410
- Identifiers.pureFunction8 = { name: 'ΔpureFunction8', moduleName: CORE$1 };
3411
- Identifiers.pureFunctionV = { name: 'ΔpureFunctionV', moduleName: CORE$1 };
3412
- Identifiers.pipeBind1 = { name: 'ΔpipeBind1', moduleName: CORE$1 };
3413
- Identifiers.pipeBind2 = { name: 'ΔpipeBind2', moduleName: CORE$1 };
3414
- Identifiers.pipeBind3 = { name: 'ΔpipeBind3', moduleName: CORE$1 };
3415
- Identifiers.pipeBind4 = { name: 'ΔpipeBind4', moduleName: CORE$1 };
3416
- Identifiers.pipeBindV = { name: 'ΔpipeBindV', moduleName: CORE$1 };
3417
- Identifiers.property = { name: 'Δproperty', moduleName: CORE$1 };
3418
- Identifiers.propertyInterpolate = { name: 'ΔpropertyInterpolate', moduleName: CORE$1 };
3419
- Identifiers.propertyInterpolate1 = { name: 'ΔpropertyInterpolate1', moduleName: CORE$1 };
3420
- Identifiers.propertyInterpolate2 = { name: 'ΔpropertyInterpolate2', moduleName: CORE$1 };
3421
- Identifiers.propertyInterpolate3 = { name: 'ΔpropertyInterpolate3', moduleName: CORE$1 };
3422
- Identifiers.propertyInterpolate4 = { name: 'ΔpropertyInterpolate4', moduleName: CORE$1 };
3423
- Identifiers.propertyInterpolate5 = { name: 'ΔpropertyInterpolate5', moduleName: CORE$1 };
3424
- Identifiers.propertyInterpolate6 = { name: 'ΔpropertyInterpolate6', moduleName: CORE$1 };
3425
- Identifiers.propertyInterpolate7 = { name: 'ΔpropertyInterpolate7', moduleName: CORE$1 };
3426
- Identifiers.propertyInterpolate8 = { name: 'ΔpropertyInterpolate8', moduleName: CORE$1 };
3427
- Identifiers.propertyInterpolateV = { name: 'ΔpropertyInterpolateV', moduleName: CORE$1 };
3428
- Identifiers.i18n = { name: 'Δi18n', moduleName: CORE$1 };
3429
- Identifiers.i18nAttributes = { name: 'Δi18nAttributes', moduleName: CORE$1 };
3430
- Identifiers.i18nExp = { name: 'Δi18nExp', moduleName: CORE$1 };
3431
- Identifiers.i18nStart = { name: 'Δi18nStart', moduleName: CORE$1 };
3432
- Identifiers.i18nEnd = { name: 'Δi18nEnd', moduleName: CORE$1 };
3433
- Identifiers.i18nApply = { name: 'Δi18nApply', moduleName: CORE$1 };
3434
- Identifiers.i18nPostprocess = { name: 'Δi18nPostprocess', moduleName: CORE$1 };
3435
- Identifiers.i18nLocalize = { name: 'Δi18nLocalize', moduleName: CORE$1 };
3436
- Identifiers.load = { name: 'Δload', moduleName: CORE$1 };
3437
- Identifiers.pipe = { name: 'Δpipe', moduleName: CORE$1 };
3438
- Identifiers.projection = { name: 'Δprojection', moduleName: CORE$1 };
3439
- Identifiers.projectionDef = { name: 'ΔprojectionDef', moduleName: CORE$1 };
3440
- Identifiers.reference = { name: 'Δreference', moduleName: CORE$1 };
3441
- Identifiers.inject = { name: 'Δinject', moduleName: CORE$1 };
3442
- Identifiers.injectAttribute = { name: 'ΔinjectAttribute', moduleName: CORE$1 };
3443
- Identifiers.directiveInject = { name: 'ΔdirectiveInject', moduleName: CORE$1 };
3444
- Identifiers.templateRefExtractor = { name: 'ΔtemplateRefExtractor', moduleName: CORE$1 };
3445
- Identifiers.resolveWindow = { name: 'ΔresolveWindow', moduleName: CORE$1 };
3446
- Identifiers.resolveDocument = { name: 'ΔresolveDocument', moduleName: CORE$1 };
3447
- Identifiers.resolveBody = { name: 'ΔresolveBody', moduleName: CORE$1 };
3448
- Identifiers.defineBase = { name: 'ΔdefineBase', moduleName: CORE$1 };
3358
+ Identifiers.namespaceHTML = { name: 'ɵɵnamespaceHTML', moduleName: CORE$1 };
3359
+ Identifiers.namespaceMathML = { name: 'ɵɵnamespaceMathML', moduleName: CORE$1 };
3360
+ Identifiers.namespaceSVG = { name: 'ɵɵnamespaceSVG', moduleName: CORE$1 };
3361
+ Identifiers.element = { name: 'ɵɵelement', moduleName: CORE$1 };
3362
+ Identifiers.elementStart = { name: 'ɵɵelementStart', moduleName: CORE$1 };
3363
+ Identifiers.elementEnd = { name: 'ɵɵelementEnd', moduleName: CORE$1 };
3364
+ Identifiers.elementProperty = { name: 'ɵɵelementProperty', moduleName: CORE$1 };
3365
+ Identifiers.select = { name: 'ɵɵselect', moduleName: CORE$1 };
3366
+ Identifiers.componentHostSyntheticProperty = { name: 'ɵɵcomponentHostSyntheticProperty', moduleName: CORE$1 };
3367
+ Identifiers.componentHostSyntheticListener = { name: 'ɵɵcomponentHostSyntheticListener', moduleName: CORE$1 };
3368
+ Identifiers.elementAttribute = { name: 'ɵɵelementAttribute', moduleName: CORE$1 };
3369
+ Identifiers.elementClassProp = { name: 'ɵɵelementClassProp', moduleName: CORE$1 };
3370
+ Identifiers.elementContainerStart = { name: 'ɵɵelementContainerStart', moduleName: CORE$1 };
3371
+ Identifiers.elementContainerEnd = { name: 'ɵɵelementContainerEnd', moduleName: CORE$1 };
3372
+ Identifiers.elementStyling = { name: 'ɵɵelementStyling', moduleName: CORE$1 };
3373
+ Identifiers.elementStylingMap = { name: 'ɵɵelementStylingMap', moduleName: CORE$1 };
3374
+ Identifiers.elementStyleProp = { name: 'ɵɵelementStyleProp', moduleName: CORE$1 };
3375
+ Identifiers.elementStylingApply = { name: 'ɵɵelementStylingApply', moduleName: CORE$1 };
3376
+ Identifiers.elementHostAttrs = { name: 'ɵɵelementHostAttrs', moduleName: CORE$1 };
3377
+ Identifiers.elementHostStyling = { name: 'ɵɵelementHostStyling', moduleName: CORE$1 };
3378
+ Identifiers.elementHostStylingMap = { name: 'ɵɵelementHostStylingMap', moduleName: CORE$1 };
3379
+ Identifiers.elementHostStyleProp = { name: 'ɵɵelementHostStyleProp', moduleName: CORE$1 };
3380
+ Identifiers.elementHostClassProp = { name: 'ɵɵelementHostClassProp', moduleName: CORE$1 };
3381
+ Identifiers.elementHostStylingApply = { name: 'ɵɵelementHostStylingApply', moduleName: CORE$1 };
3382
+ Identifiers.containerCreate = { name: 'ɵɵcontainer', moduleName: CORE$1 };
3383
+ Identifiers.nextContext = { name: 'ɵɵnextContext', moduleName: CORE$1 };
3384
+ Identifiers.templateCreate = { name: 'ɵɵtemplate', moduleName: CORE$1 };
3385
+ Identifiers.text = { name: 'ɵɵtext', moduleName: CORE$1 };
3386
+ Identifiers.textBinding = { name: 'ɵɵtextBinding', moduleName: CORE$1 };
3387
+ Identifiers.bind = { name: 'ɵɵbind', moduleName: CORE$1 };
3388
+ Identifiers.enableBindings = { name: 'ɵɵenableBindings', moduleName: CORE$1 };
3389
+ Identifiers.disableBindings = { name: 'ɵɵdisableBindings', moduleName: CORE$1 };
3390
+ Identifiers.allocHostVars = { name: 'ɵɵallocHostVars', moduleName: CORE$1 };
3391
+ Identifiers.getCurrentView = { name: 'ɵɵgetCurrentView', moduleName: CORE$1 };
3392
+ Identifiers.restoreView = { name: 'ɵɵrestoreView', moduleName: CORE$1 };
3393
+ Identifiers.interpolation1 = { name: 'ɵɵinterpolation1', moduleName: CORE$1 };
3394
+ Identifiers.interpolation2 = { name: 'ɵɵinterpolation2', moduleName: CORE$1 };
3395
+ Identifiers.interpolation3 = { name: 'ɵɵinterpolation3', moduleName: CORE$1 };
3396
+ Identifiers.interpolation4 = { name: 'ɵɵinterpolation4', moduleName: CORE$1 };
3397
+ Identifiers.interpolation5 = { name: 'ɵɵinterpolation5', moduleName: CORE$1 };
3398
+ Identifiers.interpolation6 = { name: 'ɵɵinterpolation6', moduleName: CORE$1 };
3399
+ Identifiers.interpolation7 = { name: 'ɵɵinterpolation7', moduleName: CORE$1 };
3400
+ Identifiers.interpolation8 = { name: 'ɵɵinterpolation8', moduleName: CORE$1 };
3401
+ Identifiers.interpolationV = { name: 'ɵɵinterpolationV', moduleName: CORE$1 };
3402
+ Identifiers.pureFunction0 = { name: 'ɵɵpureFunction0', moduleName: CORE$1 };
3403
+ Identifiers.pureFunction1 = { name: 'ɵɵpureFunction1', moduleName: CORE$1 };
3404
+ Identifiers.pureFunction2 = { name: 'ɵɵpureFunction2', moduleName: CORE$1 };
3405
+ Identifiers.pureFunction3 = { name: 'ɵɵpureFunction3', moduleName: CORE$1 };
3406
+ Identifiers.pureFunction4 = { name: 'ɵɵpureFunction4', moduleName: CORE$1 };
3407
+ Identifiers.pureFunction5 = { name: 'ɵɵpureFunction5', moduleName: CORE$1 };
3408
+ Identifiers.pureFunction6 = { name: 'ɵɵpureFunction6', moduleName: CORE$1 };
3409
+ Identifiers.pureFunction7 = { name: 'ɵɵpureFunction7', moduleName: CORE$1 };
3410
+ Identifiers.pureFunction8 = { name: 'ɵɵpureFunction8', moduleName: CORE$1 };
3411
+ Identifiers.pureFunctionV = { name: 'ɵɵpureFunctionV', moduleName: CORE$1 };
3412
+ Identifiers.pipeBind1 = { name: 'ɵɵpipeBind1', moduleName: CORE$1 };
3413
+ Identifiers.pipeBind2 = { name: 'ɵɵpipeBind2', moduleName: CORE$1 };
3414
+ Identifiers.pipeBind3 = { name: 'ɵɵpipeBind3', moduleName: CORE$1 };
3415
+ Identifiers.pipeBind4 = { name: 'ɵɵpipeBind4', moduleName: CORE$1 };
3416
+ Identifiers.pipeBindV = { name: 'ɵɵpipeBindV', moduleName: CORE$1 };
3417
+ Identifiers.property = { name: 'ɵɵproperty', moduleName: CORE$1 };
3418
+ Identifiers.propertyInterpolate = { name: 'ɵɵpropertyInterpolate', moduleName: CORE$1 };
3419
+ Identifiers.propertyInterpolate1 = { name: 'ɵɵpropertyInterpolate1', moduleName: CORE$1 };
3420
+ Identifiers.propertyInterpolate2 = { name: 'ɵɵpropertyInterpolate2', moduleName: CORE$1 };
3421
+ Identifiers.propertyInterpolate3 = { name: 'ɵɵpropertyInterpolate3', moduleName: CORE$1 };
3422
+ Identifiers.propertyInterpolate4 = { name: 'ɵɵpropertyInterpolate4', moduleName: CORE$1 };
3423
+ Identifiers.propertyInterpolate5 = { name: 'ɵɵpropertyInterpolate5', moduleName: CORE$1 };
3424
+ Identifiers.propertyInterpolate6 = { name: 'ɵɵpropertyInterpolate6', moduleName: CORE$1 };
3425
+ Identifiers.propertyInterpolate7 = { name: 'ɵɵpropertyInterpolate7', moduleName: CORE$1 };
3426
+ Identifiers.propertyInterpolate8 = { name: 'ɵɵpropertyInterpolate8', moduleName: CORE$1 };
3427
+ Identifiers.propertyInterpolateV = { name: 'ɵɵpropertyInterpolateV', moduleName: CORE$1 };
3428
+ Identifiers.i18n = { name: 'ɵɵi18n', moduleName: CORE$1 };
3429
+ Identifiers.i18nAttributes = { name: 'ɵɵi18nAttributes', moduleName: CORE$1 };
3430
+ Identifiers.i18nExp = { name: 'ɵɵi18nExp', moduleName: CORE$1 };
3431
+ Identifiers.i18nStart = { name: 'ɵɵi18nStart', moduleName: CORE$1 };
3432
+ Identifiers.i18nEnd = { name: 'ɵɵi18nEnd', moduleName: CORE$1 };
3433
+ Identifiers.i18nApply = { name: 'ɵɵi18nApply', moduleName: CORE$1 };
3434
+ Identifiers.i18nPostprocess = { name: 'ɵɵi18nPostprocess', moduleName: CORE$1 };
3435
+ Identifiers.i18nLocalize = { name: 'ɵɵi18nLocalize', moduleName: CORE$1 };
3436
+ Identifiers.load = { name: 'ɵɵload', moduleName: CORE$1 };
3437
+ Identifiers.pipe = { name: 'ɵɵpipe', moduleName: CORE$1 };
3438
+ Identifiers.projection = { name: 'ɵɵprojection', moduleName: CORE$1 };
3439
+ Identifiers.projectionDef = { name: 'ɵɵprojectionDef', moduleName: CORE$1 };
3440
+ Identifiers.reference = { name: 'ɵɵreference', moduleName: CORE$1 };
3441
+ Identifiers.inject = { name: 'ɵɵinject', moduleName: CORE$1 };
3442
+ Identifiers.injectAttribute = { name: 'ɵɵinjectAttribute', moduleName: CORE$1 };
3443
+ Identifiers.directiveInject = { name: 'ɵɵdirectiveInject', moduleName: CORE$1 };
3444
+ Identifiers.templateRefExtractor = { name: 'ɵɵtemplateRefExtractor', moduleName: CORE$1 };
3445
+ Identifiers.resolveWindow = { name: 'ɵɵresolveWindow', moduleName: CORE$1 };
3446
+ Identifiers.resolveDocument = { name: 'ɵɵresolveDocument', moduleName: CORE$1 };
3447
+ Identifiers.resolveBody = { name: 'ɵɵresolveBody', moduleName: CORE$1 };
3448
+ Identifiers.defineBase = { name: 'ɵɵdefineBase', moduleName: CORE$1 };
3449
3449
  Identifiers.BaseDef = {
3450
- name: 'ΔBaseDef',
3450
+ name: 'ɵɵBaseDef',
3451
3451
  moduleName: CORE$1,
3452
3452
  };
3453
- Identifiers.defineComponent = { name: 'ΔdefineComponent', moduleName: CORE$1 };
3454
- Identifiers.setComponentScope = { name: 'ΔsetComponentScope', moduleName: CORE$1 };
3453
+ Identifiers.defineComponent = { name: 'ɵɵdefineComponent', moduleName: CORE$1 };
3454
+ Identifiers.setComponentScope = { name: 'ɵɵsetComponentScope', moduleName: CORE$1 };
3455
3455
  Identifiers.ComponentDefWithMeta = {
3456
- name: 'ΔComponentDefWithMeta',
3456
+ name: 'ɵɵComponentDefWithMeta',
3457
3457
  moduleName: CORE$1,
3458
3458
  };
3459
3459
  Identifiers.defineDirective = {
3460
- name: 'ΔdefineDirective',
3460
+ name: 'ɵɵdefineDirective',
3461
3461
  moduleName: CORE$1,
3462
3462
  };
3463
3463
  Identifiers.DirectiveDefWithMeta = {
3464
- name: 'ΔDirectiveDefWithMeta',
3464
+ name: 'ɵɵDirectiveDefWithMeta',
3465
3465
  moduleName: CORE$1,
3466
3466
  };
3467
3467
  Identifiers.InjectorDef = {
3468
- name: 'ΔInjectorDef',
3468
+ name: 'ɵɵInjectorDef',
3469
3469
  moduleName: CORE$1,
3470
3470
  };
3471
3471
  Identifiers.defineInjector = {
3472
- name: 'ΔdefineInjector',
3472
+ name: 'ɵɵdefineInjector',
3473
3473
  moduleName: CORE$1,
3474
3474
  };
3475
3475
  Identifiers.NgModuleDefWithMeta = {
3476
- name: 'ΔNgModuleDefWithMeta',
3476
+ name: 'ɵɵNgModuleDefWithMeta',
3477
3477
  moduleName: CORE$1,
3478
3478
  };
3479
- Identifiers.defineNgModule = { name: 'ΔdefineNgModule', moduleName: CORE$1 };
3480
- Identifiers.setNgModuleScope = { name: 'ΔsetNgModuleScope', moduleName: CORE$1 };
3481
- Identifiers.PipeDefWithMeta = { name: 'ΔPipeDefWithMeta', moduleName: CORE$1 };
3482
- Identifiers.definePipe = { name: 'ΔdefinePipe', moduleName: CORE$1 };
3483
- Identifiers.queryRefresh = { name: 'ΔqueryRefresh', moduleName: CORE$1 };
3484
- Identifiers.viewQuery = { name: 'ΔviewQuery', moduleName: CORE$1 };
3485
- Identifiers.staticViewQuery = { name: 'ΔstaticViewQuery', moduleName: CORE$1 };
3486
- Identifiers.staticContentQuery = { name: 'ΔstaticContentQuery', moduleName: CORE$1 };
3487
- Identifiers.loadViewQuery = { name: 'ΔloadViewQuery', moduleName: CORE$1 };
3488
- Identifiers.contentQuery = { name: 'ΔcontentQuery', moduleName: CORE$1 };
3489
- Identifiers.loadContentQuery = { name: 'ΔloadContentQuery', moduleName: CORE$1 };
3490
- Identifiers.NgOnChangesFeature = { name: 'ΔNgOnChangesFeature', moduleName: CORE$1 };
3491
- Identifiers.InheritDefinitionFeature = { name: 'ΔInheritDefinitionFeature', moduleName: CORE$1 };
3492
- Identifiers.ProvidersFeature = { name: 'ΔProvidersFeature', moduleName: CORE$1 };
3493
- Identifiers.listener = { name: 'Δlistener', moduleName: CORE$1 };
3479
+ Identifiers.defineNgModule = { name: 'ɵɵdefineNgModule', moduleName: CORE$1 };
3480
+ Identifiers.setNgModuleScope = { name: 'ɵɵsetNgModuleScope', moduleName: CORE$1 };
3481
+ Identifiers.PipeDefWithMeta = { name: 'ɵɵPipeDefWithMeta', moduleName: CORE$1 };
3482
+ Identifiers.definePipe = { name: 'ɵɵdefinePipe', moduleName: CORE$1 };
3483
+ Identifiers.queryRefresh = { name: 'ɵɵqueryRefresh', moduleName: CORE$1 };
3484
+ Identifiers.viewQuery = { name: 'ɵɵviewQuery', moduleName: CORE$1 };
3485
+ Identifiers.staticViewQuery = { name: 'ɵɵstaticViewQuery', moduleName: CORE$1 };
3486
+ Identifiers.staticContentQuery = { name: 'ɵɵstaticContentQuery', moduleName: CORE$1 };
3487
+ Identifiers.loadViewQuery = { name: 'ɵɵloadViewQuery', moduleName: CORE$1 };
3488
+ Identifiers.contentQuery = { name: 'ɵɵcontentQuery', moduleName: CORE$1 };
3489
+ Identifiers.loadContentQuery = { name: 'ɵɵloadContentQuery', moduleName: CORE$1 };
3490
+ Identifiers.NgOnChangesFeature = { name: 'ɵɵNgOnChangesFeature', moduleName: CORE$1 };
3491
+ Identifiers.InheritDefinitionFeature = { name: 'ɵɵInheritDefinitionFeature', moduleName: CORE$1 };
3492
+ Identifiers.ProvidersFeature = { name: 'ɵɵProvidersFeature', moduleName: CORE$1 };
3493
+ Identifiers.listener = { name: 'ɵɵlistener', moduleName: CORE$1 };
3494
3494
  Identifiers.getFactoryOf = {
3495
- name: 'ΔgetFactoryOf',
3495
+ name: 'ɵɵgetFactoryOf',
3496
3496
  moduleName: CORE$1,
3497
3497
  };
3498
3498
  Identifiers.getInheritedFactory = {
3499
- name: 'ΔgetInheritedFactory',
3499
+ name: 'ɵɵgetInheritedFactory',
3500
3500
  moduleName: CORE$1,
3501
3501
  };
3502
3502
  Identifiers.registerNgModuleType = { name: 'ɵregisterNgModuleType', moduleName: CORE$1 };
3503
3503
  // sanitization-related functions
3504
- Identifiers.sanitizeHtml = { name: 'ΔsanitizeHtml', moduleName: CORE$1 };
3505
- Identifiers.sanitizeStyle = { name: 'ΔsanitizeStyle', moduleName: CORE$1 };
3506
- Identifiers.defaultStyleSanitizer = { name: 'ΔdefaultStyleSanitizer', moduleName: CORE$1 };
3507
- Identifiers.sanitizeResourceUrl = { name: 'ΔsanitizeResourceUrl', moduleName: CORE$1 };
3508
- Identifiers.sanitizeScript = { name: 'ΔsanitizeScript', moduleName: CORE$1 };
3509
- Identifiers.sanitizeUrl = { name: 'ΔsanitizeUrl', moduleName: CORE$1 };
3510
- Identifiers.sanitizeUrlOrResourceUrl = { name: 'ΔsanitizeUrlOrResourceUrl', moduleName: CORE$1 };
3504
+ Identifiers.sanitizeHtml = { name: 'ɵɵsanitizeHtml', moduleName: CORE$1 };
3505
+ Identifiers.sanitizeStyle = { name: 'ɵɵsanitizeStyle', moduleName: CORE$1 };
3506
+ Identifiers.defaultStyleSanitizer = { name: 'ɵɵdefaultStyleSanitizer', moduleName: CORE$1 };
3507
+ Identifiers.sanitizeResourceUrl = { name: 'ɵɵsanitizeResourceUrl', moduleName: CORE$1 };
3508
+ Identifiers.sanitizeScript = { name: 'ɵɵsanitizeScript', moduleName: CORE$1 };
3509
+ Identifiers.sanitizeUrl = { name: 'ɵɵsanitizeUrl', moduleName: CORE$1 };
3510
+ Identifiers.sanitizeUrlOrResourceUrl = { name: 'ɵɵsanitizeUrlOrResourceUrl', moduleName: CORE$1 };
3511
3511
  return Identifiers;
3512
3512
  }());
3513
3513
 
@@ -5125,7 +5125,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
5125
5125
  }
5126
5126
  var token = meta.type;
5127
5127
  var providedIn = meta.providedIn;
5128
- var expression = importExpr(IdentifiersdefineInjectable).callFn([mapToMapExpression({ token: token, factory: result.factory, providedIn: providedIn })]);
5128
+ var expression = importExpr(Identifiers.ɵɵdefineInjectable).callFn([mapToMapExpression({ token: token, factory: result.factory, providedIn: providedIn })]);
5129
5129
  var type = new ExpressionType(importExpr(Identifiers.InjectableDef, [typeWithParameters(meta.type, meta.typeArgumentCount)]));
5130
5130
  return {
5131
5131
  expression: expression,
@@ -6471,7 +6471,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
6471
6471
  definitionMap.bootstrap = refsToArray(bootstrap, containsForwardDecls);
6472
6472
  }
6473
6473
  // If requested to emit scope information inline, pass the declarations, imports and exports to
6474
- // the defineNgModule` call. The JIT compilation uses this.
6474
+ // the `ɵɵdefineNgModule` call. The JIT compilation uses this.
6475
6475
  if (emitInline) {
6476
6476
  if (declarations.length) {
6477
6477
  definitionMap.declarations = refsToArray(declarations, containsForwardDecls);
@@ -6483,7 +6483,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
6483
6483
  definitionMap.exports = refsToArray(exports, containsForwardDecls);
6484
6484
  }
6485
6485
  }
6486
- // If not emitting inline, the scope information is not passed into defineNgModule` as it would
6486
+ // If not emitting inline, the scope information is not passed into `ɵɵdefineNgModule` as it would
6487
6487
  // prevent tree-shaking of the declarations, imports and exports references.
6488
6488
  else {
6489
6489
  var setNgModuleScopeCall = generateSetNgModuleScopeCall(meta);
@@ -6502,7 +6502,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
6502
6502
  return { expression: expression, type: type, additionalStatements: additionalStatements };
6503
6503
  }
6504
6504
  /**
6505
- * Generates a function call to setNgModuleScope` with all necessary information so that the
6505
+ * Generates a function call to `ɵɵsetNgModuleScope` with all necessary information so that the
6506
6506
  * transitive module scope can be computed during runtime in JIT mode. This call is marked pure
6507
6507
  * such that the references to declarations, imports and exports may be elided causing these
6508
6508
  * symbols to become tree-shakeable.
@@ -7481,6 +7481,9 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7481
7481
  var actionStmts = [];
7482
7482
  flattenStatements(actionWithoutBuiltins.visit(visitor, _Mode.Statement), actionStmts);
7483
7483
  prependTemporaryDecls(visitor.temporaryCount, bindingId, actionStmts);
7484
+ if (visitor.usesImplicitReceiver) {
7485
+ localResolver.notifyImplicitReceiverUse();
7486
+ }
7484
7487
  var lastIndex = actionStmts.length - 1;
7485
7488
  var preventDefaultVar = null;
7486
7489
  if (lastIndex >= 0) {
@@ -7528,6 +7531,9 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7528
7531
  var visitor = new _AstToIrVisitor(localResolver, implicitReceiver, bindingId, interpolationFunction);
7529
7532
  var outputExpr = expressionWithoutBuiltins.visit(visitor, _Mode.Expression);
7530
7533
  var stmts = getStatementsFromVisitor(visitor, bindingId);
7534
+ if (visitor.usesImplicitReceiver) {
7535
+ localResolver.notifyImplicitReceiverUse();
7536
+ }
7531
7537
  if (visitor.temporaryCount === 0 && form == BindingForm.TrySimple) {
7532
7538
  return new ConvertPropertyBindingResult([], outputExpr);
7533
7539
  }
@@ -7553,6 +7559,9 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7553
7559
  function convertUpdateArguments(localResolver, contextVariableExpression, expressionWithArgumentsToExtract, bindingId) {
7554
7560
  var visitor = new _AstToIrVisitor(localResolver, contextVariableExpression, bindingId, undefined);
7555
7561
  var outputExpr = expressionWithArgumentsToExtract.visit(visitor, _Mode.Expression);
7562
+ if (visitor.usesImplicitReceiver) {
7563
+ localResolver.notifyImplicitReceiverUse();
7564
+ }
7556
7565
  var stmts = getStatementsFromVisitor(visitor, bindingId);
7557
7566
  // Removing the first argument, because it was a length for ViewEngine, not Ivy.
7558
7567
  var args = outputExpr.args.slice(1);
@@ -7652,6 +7661,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7652
7661
  this._resultMap = new Map();
7653
7662
  this._currentTemporary = 0;
7654
7663
  this.temporaryCount = 0;
7664
+ this.usesImplicitReceiver = false;
7655
7665
  }
7656
7666
  _AstToIrVisitor.prototype.visitBinary = function (ast, mode) {
7657
7667
  var op;
@@ -7731,6 +7741,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7731
7741
  };
7732
7742
  _AstToIrVisitor.prototype.visitImplicitReceiver = function (ast, mode) {
7733
7743
  ensureExpressionMode(mode, ast);
7744
+ this.usesImplicitReceiver = true;
7734
7745
  return this._implicitReceiver;
7735
7746
  };
7736
7747
  _AstToIrVisitor.prototype.visitInterpolation = function (ast, mode) {
@@ -7794,11 +7805,15 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7794
7805
  }
7795
7806
  else {
7796
7807
  var args = this.visitAll(ast.args, _Mode.Expression);
7808
+ var prevUsesImplicitReceiver = this.usesImplicitReceiver;
7797
7809
  var result = null;
7798
7810
  var receiver = this._visit(ast.receiver, _Mode.Expression);
7799
7811
  if (receiver === this._implicitReceiver) {
7800
7812
  var varExpr = this._getLocal(ast.name);
7801
7813
  if (varExpr) {
7814
+ // Restore the previous "usesImplicitReceiver" state since the implicit
7815
+ // receiver has been replaced with a resolved local expression.
7816
+ this.usesImplicitReceiver = prevUsesImplicitReceiver;
7802
7817
  result = varExpr.callFn(args);
7803
7818
  }
7804
7819
  }
@@ -7821,9 +7836,15 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7821
7836
  }
7822
7837
  else {
7823
7838
  var result = null;
7839
+ var prevUsesImplicitReceiver = this.usesImplicitReceiver;
7824
7840
  var receiver = this._visit(ast.receiver, _Mode.Expression);
7825
7841
  if (receiver === this._implicitReceiver) {
7826
7842
  result = this._getLocal(ast.name);
7843
+ if (result) {
7844
+ // Restore the previous "usesImplicitReceiver" state since the implicit
7845
+ // receiver has been replaced with a resolved local expression.
7846
+ this.usesImplicitReceiver = prevUsesImplicitReceiver;
7847
+ }
7827
7848
  }
7828
7849
  if (result == null) {
7829
7850
  result = receiver.prop(ast.name);
@@ -7833,6 +7854,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7833
7854
  };
7834
7855
  _AstToIrVisitor.prototype.visitPropertyWrite = function (ast, mode) {
7835
7856
  var receiver = this._visit(ast.receiver, _Mode.Expression);
7857
+ var prevUsesImplicitReceiver = this.usesImplicitReceiver;
7836
7858
  var varExpr = null;
7837
7859
  if (receiver === this._implicitReceiver) {
7838
7860
  var localExpr = this._getLocal(ast.name);
@@ -7842,6 +7864,9 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7842
7864
  // to a 'context.property' value and will be used as the target of the
7843
7865
  // write expression.
7844
7866
  varExpr = localExpr;
7867
+ // Restore the previous "usesImplicitReceiver" state since the implicit
7868
+ // receiver has been replaced with a resolved local expression.
7869
+ this.usesImplicitReceiver = prevUsesImplicitReceiver;
7845
7870
  }
7846
7871
  else {
7847
7872
  // Otherwise it's an error.
@@ -7903,7 +7928,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
7903
7928
  // / \ / \
7904
7929
  // . c . e
7905
7930
  // / \ / \
7906
- // a b , d
7931
+ // a b . d
7907
7932
  // / \
7908
7933
  // . c
7909
7934
  // / \
@@ -8062,6 +8087,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
8062
8087
  var DefaultLocalResolver = /** @class */ (function () {
8063
8088
  function DefaultLocalResolver() {
8064
8089
  }
8090
+ DefaultLocalResolver.prototype.notifyImplicitReceiverUse = function () { };
8065
8091
  DefaultLocalResolver.prototype.getLocal = function (name) {
8066
8092
  if (name === EventHandlerVars.event.name) {
8067
8093
  return EventHandlerVars.event;
@@ -15386,8 +15412,6 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15386
15412
  * Use of this source code is governed by an MIT-style license that can be
15387
15413
  * found in the LICENSE file at https://angular.io/license
15388
15414
  */
15389
- // Default selector used by `<ng-content>` if none specified
15390
- var DEFAULT_NG_CONTENT_SELECTOR = '*';
15391
15415
  // Selector attribute name of `<ng-content>`
15392
15416
  var NG_CONTENT_SELECT_ATTR$1 = 'select';
15393
15417
  // Attribute name of `ngProjectAs`.
@@ -15399,14 +15423,17 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15399
15423
  function renderFlagCheckIfStmt(flags, statements) {
15400
15424
  return ifStmt(variable(RENDER_FLAGS).bitwiseAnd(literal(flags), null, false), statements);
15401
15425
  }
15402
- function prepareEventListenerParameters(eventAst, bindingContext, handlerName, scope) {
15426
+ function prepareEventListenerParameters(eventAst, handlerName, scope) {
15403
15427
  if (handlerName === void 0) { handlerName = null; }
15404
15428
  if (scope === void 0) { scope = null; }
15405
15429
  var type = eventAst.type, name = eventAst.name, target = eventAst.target, phase = eventAst.phase, handler = eventAst.handler;
15406
15430
  if (target && !GLOBAL_TARGET_RESOLVERS.has(target)) {
15407
15431
  throw new Error("Unexpected global target '" + target + "' defined for '" + name + "' event.\n Supported list of global targets: " + Array.from(GLOBAL_TARGET_RESOLVERS.keys()) + ".");
15408
15432
  }
15409
- var bindingExpr = convertActionBinding(scope, bindingContext, handler, 'b', function () { return error('Unexpected interpolation'); }, eventAst.handlerSpan);
15433
+ var implicitReceiverExpr = (scope === null || scope.bindingLevel === 0) ?
15434
+ variable(CONTEXT_NAME) :
15435
+ scope.getOrCreateSharedContextVar(0);
15436
+ var bindingExpr = convertActionBinding(scope, implicitReceiverExpr, handler, 'b', function () { return error('Unexpected interpolation'); }, eventAst.handlerSpan);
15410
15437
  var statements = [];
15411
15438
  if (scope) {
15412
15439
  statements.push.apply(statements, __spread(scope.restoreViewStatement()));
@@ -15478,13 +15505,16 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15478
15505
  this._pureFunctionSlots = 0;
15479
15506
  // Number of binding slots
15480
15507
  this._bindingSlots = 0;
15481
- // Whether the template includes <ng-content> tags.
15482
- this._hasNgContent = false;
15483
- // Selectors found in the <ng-content> tags in the template.
15484
- this._ngContentSelectors = [];
15508
+ // Projection slots found in the template. Projection slots can distribute projected
15509
+ // nodes based on a selector, or can just use the wildcard selector to match
15510
+ // all nodes which aren't matching any selector.
15511
+ this._ngContentReservedSlots = [];
15485
15512
  // Number of non-default selectors found in all parent templates of this template. We need to
15486
- // track it to properly adjust projection bucket index in the `projection` instruction.
15513
+ // track it to properly adjust projection slot index in the `projection` instruction.
15487
15514
  this._ngContentSelectorsOffset = 0;
15515
+ // Expression that should be used as implicit receiver when converting template
15516
+ // expressions to output AST.
15517
+ this._implicitReceiverExpr = null;
15488
15518
  // These should be handled in the template or element directly.
15489
15519
  this.visitReference = invalid$1;
15490
15520
  this.visitVariable = invalid$1;
@@ -15557,15 +15587,17 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15557
15587
  // Nested templates must be processed before creation instructions so template()
15558
15588
  // instructions can be generated with the correct internal const count.
15559
15589
  this._nestedTemplateFns.forEach(function (buildTemplateFn) { return buildTemplateFn(); });
15560
- // Output the `projectionDef` instruction when some `<ng-content>` are present.
15561
- // The `projectionDef` instruction only emitted for the component template and it is skipped for
15562
- // nested templates (<ng-template> tags).
15563
- if (this.level === 0 && this._hasNgContent) {
15590
+ // Output the `projectionDef` instruction when some `<ng-content>` tags are present.
15591
+ // The `projectionDef` instruction is only emitted for the component template and
15592
+ // is skipped for nested templates (<ng-template> tags).
15593
+ if (this.level === 0 && this._ngContentReservedSlots.length) {
15564
15594
  var parameters = [];
15565
- // Only selectors with a non-default value are generated
15566
- if (this._ngContentSelectors.length) {
15567
- var r3Selectors = this._ngContentSelectors.map(function (s) { return parseSelectorToR3Selector(s); });
15568
- parameters.push(this.constantPool.getConstLiteral(asLiteral(r3Selectors), true));
15595
+ // By default the `projectionDef` instructions creates one slot for the wildcard
15596
+ // selector if no parameters are passed. Therefore we only want to allocate a new
15597
+ // array for the projection slots if the default projection slot is not sufficient.
15598
+ if (this._ngContentReservedSlots.length > 1 || this._ngContentReservedSlots[0] !== '*') {
15599
+ var r3ReservedSlots = this._ngContentReservedSlots.map(function (s) { return s !== '*' ? parseSelectorToR3Selector(s) : s; });
15600
+ parameters.push(this.constantPool.getConstLiteral(asLiteral(r3ReservedSlots), true));
15569
15601
  }
15570
15602
  // Since we accumulate ngContent selectors while processing template elements,
15571
15603
  // we *prepend* `projectionDef` to creation instructions block, to put it before
@@ -15596,6 +15628,8 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15596
15628
  };
15597
15629
  // LocalResolver
15598
15630
  TemplateDefinitionBuilder.prototype.getLocal = function (name) { return this._bindingScope.get(name); };
15631
+ // LocalResolver
15632
+ TemplateDefinitionBuilder.prototype.notifyImplicitReceiverUse = function () { this._bindingScope.notifyImplicitReceiverUse(); };
15599
15633
  TemplateDefinitionBuilder.prototype.i18nTranslate = function (message, params, ref, transformFn) {
15600
15634
  var _a;
15601
15635
  if (params === void 0) { params = {}; }
@@ -15733,7 +15767,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15733
15767
  var _a = this.i18n, index = _a.index, bindings = _a.bindings;
15734
15768
  if (bindings.size) {
15735
15769
  bindings.forEach(function (binding) {
15736
- _this.updateInstruction(index, span, Identifiers$1.i18nExp, function () { return [_this.convertPropertyBinding(variable(CONTEXT_NAME), binding)]; });
15770
+ _this.updateInstruction(index, span, Identifiers$1.i18nExp, function () { return [_this.convertPropertyBinding(binding)]; });
15737
15771
  });
15738
15772
  this.updateInstruction(index, span, Identifiers$1.i18nApply, [literal(index)]);
15739
15773
  }
@@ -15743,13 +15777,11 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15743
15777
  this.i18n = null; // reset local i18n context
15744
15778
  };
15745
15779
  TemplateDefinitionBuilder.prototype.visitContent = function (ngContent) {
15746
- this._hasNgContent = true;
15747
15780
  var slot = this.allocateDataSlot();
15748
- var selectorIndex = ngContent.selector === DEFAULT_NG_CONTENT_SELECTOR ?
15749
- 0 :
15750
- this._ngContentSelectors.push(ngContent.selector) + this._ngContentSelectorsOffset;
15781
+ var projectionSlotIdx = this._ngContentSelectorsOffset + this._ngContentReservedSlots.length;
15751
15782
  var parameters = [literal(slot)];
15752
15783
  var attributes = [];
15784
+ this._ngContentReservedSlots.push(ngContent.selector);
15753
15785
  ngContent.attributes.forEach(function (attribute) {
15754
15786
  var name = attribute.name, value = attribute.value;
15755
15787
  if (name === NG_PROJECT_AS_ATTR_NAME) {
@@ -15760,10 +15792,10 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15760
15792
  }
15761
15793
  });
15762
15794
  if (attributes.length > 0) {
15763
- parameters.push(literal(selectorIndex), literalArr(attributes));
15795
+ parameters.push(literal(projectionSlotIdx), literalArr(attributes));
15764
15796
  }
15765
- else if (selectorIndex !== 0) {
15766
- parameters.push(literal(selectorIndex));
15797
+ else if (projectionSlotIdx !== 0) {
15798
+ parameters.push(literal(projectionSlotIdx));
15767
15799
  }
15768
15800
  this.creationInstruction(ngContent.sourceSpan, Identifiers$1.projection, parameters);
15769
15801
  };
@@ -15871,7 +15903,6 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15871
15903
  if (currentNamespace !== wasInNamespace) {
15872
15904
  this.addNamespaceInstruction(currentNamespace, element);
15873
15905
  }
15874
- var implicit = variable(CONTEXT_NAME);
15875
15906
  if (this.i18n) {
15876
15907
  this.i18n.appendElement(element.i18n, elementIndex);
15877
15908
  }
@@ -15913,7 +15944,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15913
15944
  i18nAttrArgs_1.push(literal(attr.name), _this.i18nTranslate(message, params));
15914
15945
  converted.expressions.forEach(function (expression) {
15915
15946
  hasBindings_1 = true;
15916
- var binding = _this.convertExpressionBinding(implicit, expression);
15947
+ var binding = _this.convertExpressionBinding(expression);
15917
15948
  _this.updateInstruction(elementIndex, element.sourceSpan, Identifiers$1.i18nExp, [binding]);
15918
15949
  });
15919
15950
  }
@@ -15934,7 +15965,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15934
15965
  // designed to run inside of `elementStart` and `elementEnd`. The update instructions
15935
15966
  // (things like `elementStyleProp`, `elementClassProp`, etc..) are applied later on in this
15936
15967
  // file
15937
- this.processStylingInstruction(implicit, stylingBuilder.buildElementStylingInstruction(element.sourceSpan, this.constantPool), true);
15968
+ this.processStylingInstruction(stylingBuilder.buildElementStylingInstruction(element.sourceSpan, this.constantPool), true);
15938
15969
  // Generate Listeners (outputs)
15939
15970
  element.outputs.forEach(function (outputAst) {
15940
15971
  _this.creationInstruction(outputAst.sourceSpan, Identifiers$1.listener, _this.prepareListenerParameter(element.name, outputAst, elementIndex));
@@ -15951,7 +15982,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15951
15982
  // and assign in the code below.
15952
15983
  stylingBuilder.buildUpdateLevelInstructions(this._valueConverter).forEach(function (instruction) {
15953
15984
  _this._bindingSlots += instruction.allocateBindingSlots;
15954
- _this.processStylingInstruction(implicit, instruction, false);
15985
+ _this.processStylingInstruction(instruction, false);
15955
15986
  });
15956
15987
  // the reason why `undefined` is used is because the renderer understands this as a
15957
15988
  // special value to symbolize that there is no RHS to this binding
@@ -15977,7 +16008,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
15977
16008
  _this.updateInstruction(elementIndex, input.sourceSpan, Identifiers$1.property, function () {
15978
16009
  return [
15979
16010
  literal(bindingName_1),
15980
- (hasValue_1 ? _this.convertPropertyBinding(implicit, value_1, /* skipBindFn */ true) :
16011
+ (hasValue_1 ? _this.convertPropertyBinding(value_1, /* skipBindFn */ true) :
15981
16012
  emptyValueBindInstruction),
15982
16013
  ];
15983
16014
  });
@@ -16010,15 +16041,13 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16010
16041
  if (inputType === 0 /* Property */) {
16011
16042
  if (value_2 instanceof Interpolation) {
16012
16043
  _this.updateInstruction(elementIndex, input.sourceSpan, getPropertyInterpolationExpression(value_2), function () {
16013
- return __spread([literal(attrName_1)], _this.getUpdateInstructionArguments(variable(CONTEXT_NAME), value_2), params_2);
16044
+ return __spread([literal(attrName_1)], _this.getUpdateInstructionArguments(value_2), params_2);
16014
16045
  });
16015
16046
  }
16016
16047
  else {
16017
16048
  // Bound, un-interpolated properties
16018
16049
  _this.updateInstruction(elementIndex, input.sourceSpan, Identifiers$1.property, function () {
16019
- return __spread([
16020
- literal(attrName_1), _this.convertPropertyBinding(implicit, value_2, true)
16021
- ], params_2);
16050
+ return __spread([literal(attrName_1), _this.convertPropertyBinding(value_2, true)], params_2);
16022
16051
  });
16023
16052
  }
16024
16053
  }
@@ -16032,8 +16061,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16032
16061
  }
16033
16062
  _this.updateInstruction(elementIndex, input.sourceSpan, instruction_1, function () {
16034
16063
  return __spread([
16035
- literal(elementIndex), literal(attrName_1),
16036
- _this.convertPropertyBinding(implicit, value_2)
16064
+ literal(elementIndex), literal(attrName_1), _this.convertPropertyBinding(value_2)
16037
16065
  ], params_2);
16038
16066
  });
16039
16067
  }
@@ -16094,11 +16122,10 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16094
16122
  // template definition. e.g. <div *ngIf="showing">{{ foo }}</div> <div #foo></div>
16095
16123
  this._nestedTemplateFns.push(function () {
16096
16124
  var _a;
16097
- var templateFunctionExpr = templateVisitor.buildTemplateFunction(template.children, template.variables, _this._ngContentSelectors.length + _this._ngContentSelectorsOffset, template.i18n);
16125
+ var templateFunctionExpr = templateVisitor.buildTemplateFunction(template.children, template.variables, _this._ngContentReservedSlots.length + _this._ngContentSelectorsOffset, template.i18n);
16098
16126
  _this.constantPool.statements.push(templateFunctionExpr.toDeclStmt(templateName, null));
16099
- if (templateVisitor._hasNgContent) {
16100
- _this._hasNgContent = true;
16101
- (_a = _this._ngContentSelectors).push.apply(_a, __spread(templateVisitor._ngContentSelectors));
16127
+ if (templateVisitor._ngContentReservedSlots.length) {
16128
+ (_a = _this._ngContentReservedSlots).push.apply(_a, __spread(templateVisitor._ngContentReservedSlots));
16102
16129
  }
16103
16130
  });
16104
16131
  // e.g. template(1, MyComp_Template_1)
@@ -16106,13 +16133,12 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16106
16133
  parameters.splice(2, 0, literal(templateVisitor.getConstCount()), literal(templateVisitor.getVarCount()));
16107
16134
  return trimTrailingNulls(parameters);
16108
16135
  });
16109
- // handle property bindings e.g. Δproperty('ngForOf', ctx.items), et al;
16110
- var context = variable(CONTEXT_NAME);
16111
- this.templatePropertyBindings(template, templateIndex, context, template.templateAttrs);
16136
+ // handle property bindings e.g. ɵɵproperty('ngForOf', ctx.items), et al;
16137
+ this.templatePropertyBindings(template, templateIndex, template.templateAttrs);
16112
16138
  // Only add normal input/output binding instructions on explicit ng-template elements.
16113
16139
  if (template.tagName === NG_TEMPLATE_TAG_NAME) {
16114
16140
  // Add the input bindings
16115
- this.templatePropertyBindings(template, templateIndex, context, template.inputs);
16141
+ this.templatePropertyBindings(template, templateIndex, template.inputs);
16116
16142
  // Generate listeners for directive output
16117
16143
  template.outputs.forEach(function (outputAst) {
16118
16144
  _this.creationInstruction(outputAst.sourceSpan, Identifiers$1.listener, _this.prepareListenerParameter('ng_template', outputAst, templateIndex));
@@ -16134,7 +16160,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16134
16160
  this.creationInstruction(text.sourceSpan, Identifiers$1.text, [literal(nodeIndex)]);
16135
16161
  var value = text.value.visit(this._valueConverter);
16136
16162
  this.allocateBindingSlots(value);
16137
- this.updateInstruction(nodeIndex, text.sourceSpan, Identifiers$1.textBinding, function () { return [literal(nodeIndex), _this.convertPropertyBinding(variable(CONTEXT_NAME), value)]; });
16163
+ this.updateInstruction(nodeIndex, text.sourceSpan, Identifiers$1.textBinding, function () { return [literal(nodeIndex), _this.convertPropertyBinding(value)]; });
16138
16164
  };
16139
16165
  TemplateDefinitionBuilder.prototype.visitText = function (text) {
16140
16166
  // when a text element is located within a translatable
@@ -16181,18 +16207,18 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16181
16207
  TemplateDefinitionBuilder.prototype.getConstCount = function () { return this._dataIndex; };
16182
16208
  TemplateDefinitionBuilder.prototype.getVarCount = function () { return this._pureFunctionSlots; };
16183
16209
  TemplateDefinitionBuilder.prototype.getNgContentSelectors = function () {
16184
- return this._hasNgContent ?
16185
- this.constantPool.getConstLiteral(asLiteral(this._ngContentSelectors), true) :
16210
+ return this._ngContentReservedSlots.length ?
16211
+ this.constantPool.getConstLiteral(asLiteral(this._ngContentReservedSlots), true) :
16186
16212
  null;
16187
16213
  };
16188
16214
  TemplateDefinitionBuilder.prototype.bindingContext = function () { return "" + this._bindingContext++; };
16189
- TemplateDefinitionBuilder.prototype.templatePropertyBindings = function (template, templateIndex, context, attrs) {
16215
+ TemplateDefinitionBuilder.prototype.templatePropertyBindings = function (template, templateIndex, attrs) {
16190
16216
  var _this = this;
16191
16217
  attrs.forEach(function (input) {
16192
16218
  if (input instanceof BoundAttribute) {
16193
16219
  var value_4 = input.value.visit(_this._valueConverter);
16194
16220
  _this.allocateBindingSlots(value_4);
16195
- _this.updateInstruction(templateIndex, template.sourceSpan, Identifiers$1.property, function () { return [literal(input.name), _this.convertPropertyBinding(context, value_4, true)]; });
16221
+ _this.updateInstruction(templateIndex, template.sourceSpan, Identifiers$1.property, function () { return [literal(input.name), _this.convertPropertyBinding(value_4, true)]; });
16196
16222
  }
16197
16223
  });
16198
16224
  };
@@ -16207,11 +16233,11 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16207
16233
  return instruction(span, reference, params).toStmt();
16208
16234
  });
16209
16235
  };
16210
- TemplateDefinitionBuilder.prototype.processStylingInstruction = function (implicit, instruction, createMode) {
16236
+ TemplateDefinitionBuilder.prototype.processStylingInstruction = function (instruction, createMode) {
16211
16237
  var _this = this;
16212
16238
  if (instruction) {
16213
16239
  var paramsFn = function () {
16214
- return instruction.buildParams(function (value) { return _this.convertPropertyBinding(implicit, value, true); });
16240
+ return instruction.buildParams(function (value) { return _this.convertPropertyBinding(value, true); });
16215
16241
  };
16216
16242
  if (createMode) {
16217
16243
  this.creationInstruction(instruction.sourceSpan, instruction.reference, paramsFn);
@@ -16239,17 +16265,29 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16239
16265
  TemplateDefinitionBuilder.prototype.allocateBindingSlots = function (value) {
16240
16266
  this._bindingSlots += value instanceof Interpolation ? value.expressions.length : 1;
16241
16267
  };
16242
- TemplateDefinitionBuilder.prototype.convertExpressionBinding = function (implicit, value) {
16243
- var convertedPropertyBinding = convertPropertyBinding(this, implicit, value, this.bindingContext(), BindingForm.TrySimple);
16268
+ /**
16269
+ * Gets an expression that refers to the implicit receiver. The implicit
16270
+ * receiver is always the root level context.
16271
+ */
16272
+ TemplateDefinitionBuilder.prototype.getImplicitReceiverExpr = function () {
16273
+ if (this._implicitReceiverExpr) {
16274
+ return this._implicitReceiverExpr;
16275
+ }
16276
+ return this._implicitReceiverExpr = this.level === 0 ?
16277
+ variable(CONTEXT_NAME) :
16278
+ this._bindingScope.getOrCreateSharedContextVar(0);
16279
+ };
16280
+ TemplateDefinitionBuilder.prototype.convertExpressionBinding = function (value) {
16281
+ var convertedPropertyBinding = convertPropertyBinding(this, this.getImplicitReceiverExpr(), value, this.bindingContext(), BindingForm.TrySimple);
16244
16282
  var valExpr = convertedPropertyBinding.currValExpr;
16245
16283
  return importExpr(Identifiers$1.bind).callFn([valExpr]);
16246
16284
  };
16247
- TemplateDefinitionBuilder.prototype.convertPropertyBinding = function (implicit, value, skipBindFn) {
16285
+ TemplateDefinitionBuilder.prototype.convertPropertyBinding = function (value, skipBindFn) {
16248
16286
  var _a;
16249
16287
  var interpolationFn = value instanceof Interpolation ? interpolate : function () { return error('Unexpected interpolation'); };
16250
- var convertedPropertyBinding = convertPropertyBinding(this, implicit, value, this.bindingContext(), BindingForm.TrySimple, interpolationFn);
16251
- (_a = this._tempVariables).push.apply(_a, __spread(convertedPropertyBinding.stmts));
16288
+ var convertedPropertyBinding = convertPropertyBinding(this, this.getImplicitReceiverExpr(), value, this.bindingContext(), BindingForm.TrySimple, interpolationFn);
16252
16289
  var valExpr = convertedPropertyBinding.currValExpr;
16290
+ (_a = this._tempVariables).push.apply(_a, __spread(convertedPropertyBinding.stmts));
16253
16291
  return value instanceof Interpolation || skipBindFn ? valExpr :
16254
16292
  importExpr(Identifiers$1.bind).callFn([valExpr]);
16255
16293
  };
@@ -16257,12 +16295,11 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16257
16295
  * Gets a list of argument expressions to pass to an update instruction expression. Also updates
16258
16296
  * the temp variables state with temp variables that were identified as needing to be created
16259
16297
  * while visiting the arguments.
16260
- * @param contextExpression The expression for the context variable used to create arguments
16261
16298
  * @param value The original expression we will be resolving an arguments list from.
16262
16299
  */
16263
- TemplateDefinitionBuilder.prototype.getUpdateInstructionArguments = function (contextExpression, value) {
16300
+ TemplateDefinitionBuilder.prototype.getUpdateInstructionArguments = function (value) {
16264
16301
  var _a;
16265
- var _b = convertUpdateArguments(this, contextExpression, value, this.bindingContext()), args = _b.args, stmts = _b.stmts;
16302
+ var _b = convertUpdateArguments(this, this.getImplicitReceiverExpr(), value, this.bindingContext()), args = _b.args, stmts = _b.stmts;
16266
16303
  (_a = this._tempVariables).push.apply(_a, __spread(stmts));
16267
16304
  return args;
16268
16305
  };
@@ -16381,8 +16418,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16381
16418
  sanitizeIdentifier(eventName);
16382
16419
  var handlerName = _this.templateName + "_" + tagName + "_" + bindingFnName + "_" + index + "_listener";
16383
16420
  var scope = _this._bindingScope.nestedScope(_this._bindingScope.bindingLevel);
16384
- var context = variable(CONTEXT_NAME);
16385
- return prepareEventListenerParameters(outputAst, context, handlerName, scope);
16421
+ return prepareEventListenerParameters(outputAst, handlerName, scope);
16386
16422
  };
16387
16423
  };
16388
16424
  return TemplateDefinitionBuilder;
@@ -16602,13 +16638,35 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
16602
16638
  });
16603
16639
  return this;
16604
16640
  };
16641
+ // Implemented as part of LocalResolver.
16605
16642
  BindingScope.prototype.getLocal = function (name) { return this.get(name); };
16643
+ // Implemented as part of LocalResolver.
16644
+ BindingScope.prototype.notifyImplicitReceiverUse = function () {
16645
+ if (this.bindingLevel !== 0) {
16646
+ // Since the implicit receiver is accessed in an embedded view, we need to
16647
+ // ensure that we declare a shared context variable for the current template
16648
+ // in the update variables.
16649
+ this.map.get(SHARED_CONTEXT_KEY + 0).declare = true;
16650
+ }
16651
+ };
16606
16652
  BindingScope.prototype.nestedScope = function (level) {
16607
16653
  var newScope = new BindingScope(level, this);
16608
16654
  if (level > 0)
16609
16655
  newScope.generateSharedContextVar(0);
16610
16656
  return newScope;
16611
16657
  };
16658
+ /**
16659
+ * Gets or creates a shared context variable and returns its expression. Note that
16660
+ * this does not mean that the shared variable will be declared. Variables in the
16661
+ * binding scope will be only declared if they are used.
16662
+ */
16663
+ BindingScope.prototype.getOrCreateSharedContextVar = function (retrievalLevel) {
16664
+ var bindingKey = SHARED_CONTEXT_KEY + retrievalLevel;
16665
+ if (!this.map.has(bindingKey)) {
16666
+ this.generateSharedContextVar(retrievalLevel);
16667
+ }
16668
+ return this.map.get(bindingKey).lhs;
16669
+ };
16612
16670
  BindingScope.prototype.getSharedContextName = function (retrievalLevel) {
16613
16671
  var sharedCtxObj = this.map.get(SHARED_CONTEXT_KEY + retrievalLevel);
16614
16672
  return sharedCtxObj && sharedCtxObj.declare ? sharedCtxObj.lhs : null;
@@ -17255,7 +17313,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
17255
17313
  // Calculate host event bindings
17256
17314
  var eventBindings = bindingParser.createDirectiveHostEventAsts(directiveSummary, hostBindingSourceSpan);
17257
17315
  if (eventBindings && eventBindings.length) {
17258
- var listeners = createHostListeners(bindingContext, eventBindings, meta);
17316
+ var listeners = createHostListeners(eventBindings, meta);
17259
17317
  createStatements.push.apply(createStatements, __spread(listeners));
17260
17318
  }
17261
17319
  // Calculate the host property bindings
@@ -17391,14 +17449,14 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
17391
17449
  }
17392
17450
  return { bindingName: bindingName, instruction: instruction, isAttribute: !!attrMatches };
17393
17451
  }
17394
- function createHostListeners(bindingContext, eventBindings, meta) {
17452
+ function createHostListeners(eventBindings, meta) {
17395
17453
  return eventBindings.map(function (binding) {
17396
17454
  var bindingName = binding.name && sanitizeIdentifier(binding.name);
17397
17455
  var bindingFnName = binding.type === 1 /* Animation */ ?
17398
17456
  prepareSyntheticListenerFunctionName(bindingName, binding.targetOrPhase) :
17399
17457
  bindingName;
17400
17458
  var handlerName = meta.name && bindingName ? meta.name + "_" + bindingFnName + "_HostBindingHandler" : null;
17401
- var params = prepareEventListenerParameters(BoundEvent.fromParsedEvent(binding), bindingContext, handlerName);
17459
+ var params = prepareEventListenerParameters(BoundEvent.fromParsedEvent(binding), handlerName);
17402
17460
  var instruction = binding.type == 1 /* Animation */ ? Identifiers$1.componentHostSyntheticListener : Identifiers$1.listener;
17403
17461
  return importExpr(instruction).callFn(params).toStmt();
17404
17462
  });
@@ -17775,7 +17833,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
17775
17833
  * Use of this source code is governed by an MIT-style license that can be
17776
17834
  * found in the LICENSE file at https://angular.io/license
17777
17835
  */
17778
- var VERSION$1 = new Version('8.0.0-rc.4');
17836
+ var VERSION$1 = new Version('8.0.2');
17779
17837
 
17780
17838
  /**
17781
17839
  * @license
@@ -29398,7 +29456,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
29398
29456
  *
29399
29457
  * @codeGenApi
29400
29458
  */
29401
- function ΔdefineInjectable(opts) {
29459
+ function ɵɵdefineInjectable(opts) {
29402
29460
  return {
29403
29461
  providedIn: opts.providedIn || null, factory: opts.factory, value: undefined,
29404
29462
  };
@@ -29423,7 +29481,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
29423
29481
  *
29424
29482
  * @publicApi
29425
29483
  */
29426
- function ΔdefineInjector(options) {
29484
+ function ɵɵdefineInjector(options) {
29427
29485
  return {
29428
29486
  factory: options.factory, providers: options.providers || [], imports: options.imports || [],
29429
29487
  };
@@ -29617,7 +29675,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
29617
29675
  return _currentInjector.get(token, flags & InjectFlags.Optional ? null : undefined, flags);
29618
29676
  }
29619
29677
  }
29620
- function Δinject(token, flags) {
29678
+ function ɵɵinject(token, flags) {
29621
29679
  if (flags === void 0) { flags = InjectFlags.Default; }
29622
29680
  return (_injectImplementation || injectInjectorOnly)(token, flags);
29623
29681
  }
@@ -29668,10 +29726,10 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
29668
29726
  type = meta;
29669
29727
  }
29670
29728
  }
29671
- args.push(Δinject(type, flags));
29729
+ args.push(ɵɵinject(type, flags));
29672
29730
  }
29673
29731
  else {
29674
- args.push(Δinject(arg));
29732
+ args.push(ɵɵinject(arg));
29675
29733
  }
29676
29734
  }
29677
29735
  return args;
@@ -29989,7 +30047,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
29989
30047
  }
29990
30048
  else if (provider.useExisting) {
29991
30049
  var existingProvider_1 = provider;
29992
- return function () { return Δinject(existingProvider_1.useExisting); };
30050
+ return function () { return ɵɵinject(existingProvider_1.useExisting); };
29993
30051
  }
29994
30052
  else if (provider.useFactory) {
29995
30053
  var factoryProvider_1 = provider;
@@ -30037,7 +30095,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
30037
30095
  */
30038
30096
  function render2CompileInjectable(injectableType, options) {
30039
30097
  if (options && options.providedIn !== undefined && !getInjectableDef(injectableType)) {
30040
- injectableType.ngInjectableDef = ΔdefineInjectable({
30098
+ injectableType.ngInjectableDef = ɵɵdefineInjectable({
30041
30099
  providedIn: options.providedIn,
30042
30100
  factory: convertInjectableProviderToFactory(injectableType, options),
30043
30101
  });
@@ -30106,7 +30164,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
30106
30164
  this.__NG_ELEMENT_ID__ = options;
30107
30165
  }
30108
30166
  else if (options !== undefined) {
30109
- this.ngInjectableDef = ΔdefineInjectable({
30167
+ this.ngInjectableDef = ɵɵdefineInjectable({
30110
30168
  providedIn: options.providedIn || 'root',
30111
30169
  factory: options.factory,
30112
30170
  });
@@ -30192,9 +30250,9 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
30192
30250
  Injector.THROW_IF_NOT_FOUND = _THROW_IF_NOT_FOUND;
30193
30251
  Injector.NULL = new NullInjector();
30194
30252
  /** @nocollapse */
30195
- Injector.ngInjectableDef = ΔdefineInjectable({
30253
+ Injector.ngInjectableDef = ɵɵdefineInjectable({
30196
30254
  providedIn: 'any',
30197
- factory: function () { return Δinject(INJECTOR); },
30255
+ factory: function () { return ɵɵinject(INJECTOR); },
30198
30256
  });
30199
30257
  /**
30200
30258
  * @internal
@@ -32595,7 +32653,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
32595
32653
  *
32596
32654
  * @codeGenApi
32597
32655
  */
32598
- function ΔnamespaceHTML() {
32656
+ function ɵɵnamespaceHTML() {
32599
32657
  _currentNamespace = null;
32600
32658
  }
32601
32659
  function getNamespace() {
@@ -34851,7 +34909,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
34851
34909
  }
34852
34910
  }
34853
34911
  function executeTemplate(templateFn, rf, context) {
34854
- ΔnamespaceHTML();
34912
+ ɵɵnamespaceHTML();
34855
34913
  try {
34856
34914
  templateFn(rf, context);
34857
34915
  }
@@ -36819,7 +36877,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
36819
36877
  factory = function () { return resolveForwardRef$1(provider.useValue); };
36820
36878
  }
36821
36879
  else if (isExistingProvider(provider)) {
36822
- factory = function () { return Δinject(resolveForwardRef$1(provider.useExisting)); };
36880
+ factory = function () { return ɵɵinject(resolveForwardRef$1(provider.useExisting)); };
36823
36881
  }
36824
36882
  else if (isFactoryProvider(provider)) {
36825
36883
  factory = function () { return provider.useFactory.apply(provider, __spread(injectArgs(provider.deps || []))); };
@@ -37462,7 +37520,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
37462
37520
  /**
37463
37521
  * @publicApi
37464
37522
  */
37465
- var VERSION$2 = new Version$1('8.0.0-rc.4');
37523
+ var VERSION$2 = new Version$1('8.0.2');
37466
37524
 
37467
37525
  /**
37468
37526
  * @license
@@ -38463,7 +38521,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
38463
38521
  }
38464
38522
  };
38465
38523
  /** @nocollapse */
38466
- IterableDiffers.ngInjectableDef = ΔdefineInjectable({
38524
+ IterableDiffers.ngInjectableDef = ɵɵdefineInjectable({
38467
38525
  providedIn: 'root',
38468
38526
  factory: function () { return new IterableDiffers([new DefaultIterableDifferFactory()]); }
38469
38527
  });
@@ -38539,7 +38597,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
38539
38597
  throw new Error("Cannot find a differ supporting object '" + kv + "'");
38540
38598
  };
38541
38599
  /** @nocollapse */
38542
- KeyValueDiffers.ngInjectableDef = ΔdefineInjectable({
38600
+ KeyValueDiffers.ngInjectableDef = ɵɵdefineInjectable({
38543
38601
  providedIn: 'root',
38544
38602
  factory: function () { return new KeyValueDiffers([new DefaultKeyValueDifferFactory()]); }
38545
38603
  });
@@ -40326,7 +40384,7 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
40326
40384
  /**
40327
40385
  * Default {@link RootContext} for all components rendered with {@link renderComponent}.
40328
40386
  */
40329
- var ROOT_CONTEXT = new InjectionToken('ROOT_CONTEXT_TOKEN', { providedIn: 'root', factory: function () { return createRootContext(Δinject(SCHEDULER)); } });
40387
+ var ROOT_CONTEXT = new InjectionToken('ROOT_CONTEXT_TOKEN', { providedIn: 'root', factory: function () { return createRootContext(ɵɵinject(SCHEDULER)); } });
40330
40388
  /**
40331
40389
  * A change detection scheduler token for {@link RootContext}. This token is the default value used
40332
40390
  * for the default `RootContext` found in the {@link ROOT_CONTEXT} token.
@@ -40367,10 +40425,8 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
40367
40425
  _this.ngModule = ngModule;
40368
40426
  _this.componentType = componentDef.type;
40369
40427
  _this.selector = componentDef.selectors[0][0];
40370
- // The component definition does not include the wildcard ('*') selector in its list.
40371
- // It is implicitly expected as the first item in the projectable nodes array.
40372
40428
  _this.ngContentSelectors =
40373
- componentDef.ngContentSelectors ? __spread(['*'], componentDef.ngContentSelectors) : [];
40429
+ componentDef.ngContentSelectors ? componentDef.ngContentSelectors : [];
40374
40430
  _this.isBoundToModule = !!ngModule;
40375
40431
  return _this;
40376
40432
  }
@@ -40520,28 +40576,27 @@ define(['exports', 'path', 'typescript', 'fs'], function (exports, path, ts, fs)
40520
40576
  * found in the LICENSE file at https://angular.io/license
40521
40577
  */
40522
40578
  /**
40523
- * Flattens an array in non-recursive way. Input arrays are not modified.
40579
+ * Flattens an array.
40524
40580
  */
40525
- function flatten$2(list, mapFn) {
40526
- var result = [];
40527
- var i = 0;
40528
- while (i < list.length) {
40581
+ function flatten$2(list, dst) {
40582
+ if (dst === undefined)
40583
+ dst = list;
40584
+ for (var i = 0; i < list.length; i++) {
40529
40585
  var item = list[i];
40530
40586
  if (Array.isArray(item)) {
40531
- if (item.length > 0) {
40532
- list = item.concat(list.slice(i + 1));
40533
- i = 0;
40534
- }
40535
- else {
40536
- i++;
40587
+ // we need to inline it.
40588
+ if (dst === list) {
40589
+ // Our assumption that the list was already flat was wrong and
40590
+ // we need to clone flat since we need to write to it.
40591
+ dst = list.slice(0, i);
40537
40592
  }
40593
+ flatten$2(item, dst);
40538
40594
  }
40539
- else {
40540
- result.push(mapFn ? mapFn(item) : item);
40541
- i++;
40595
+ else if (dst !== list) {
40596
+ dst.push(item);
40542
40597
  }
40543
40598
  }
40544
- return result;
40599
+ return dst;
40545
40600
  }
40546
40601
 
40547
40602
  /**
@@ -42706,7 +42761,7 @@ ${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\n ')}` : '';
42706
42761
  if (metadata && metadata.exports) {
42707
42762
  imports = __spread(imports, [metadata.exports]);
42708
42763
  }
42709
- moduleType.ngInjectorDef = ΔdefineInjector({
42764
+ moduleType.ngInjectorDef = ɵɵdefineInjector({
42710
42765
  factory: convertInjectableProviderToFactory(moduleType, { useClass: moduleType }),
42711
42766
  providers: metadata && metadata.providers,
42712
42767
  imports: imports,
@@ -43064,6 +43119,7 @@ ${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\n ')}` : '';
43064
43119
  * an exception is expected during normal execution while profiling.
43065
43120
  *
43066
43121
  * @publicApi
43122
+ * @deprecated the Web Tracing Framework is no longer supported in Angular
43067
43123
  */
43068
43124
  var wtfCreateScope = wtfEnabled ? createScope : function (signature, flags) { return noopScope; };
43069
43125
  /**
@@ -43074,6 +43130,7 @@ ${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\n ')}` : '';
43074
43130
  *
43075
43131
  * Returns the `returnValue for easy chaining.
43076
43132
  * @publicApi
43133
+ * @deprecated the Web Tracing Framework is no longer supported in Angular
43077
43134
  */
43078
43135
  var wtfLeave = wtfEnabled ? leave : function (s, r) { return r; };
43079
43136
 
@@ -47955,39 +48012,29 @@ ${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\n ')}` : '';
47955
48012
  };
47956
48013
  proxy.getQuickInfoAtPosition = function (fileName, position) {
47957
48014
  var base = oldLS.getQuickInfoAtPosition(fileName, position);
47958
- // TODO(vicb): the tags property has been removed in TS 2.2
47959
- tryOperation('get quick info', function () {
47960
- var e_2, _a;
47961
- var ours = ls.getHoverAt(fileName, position);
47962
- if (ours) {
47963
- var displayParts = [];
47964
- try {
47965
- for (var _b = __values(ours.text), _c = _b.next(); !_c.done; _c = _b.next()) {
47966
- var part = _c.value;
47967
- displayParts.push({ kind: part.language || 'angular', text: part.text });
47968
- }
47969
- }
47970
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
47971
- finally {
47972
- try {
47973
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
47974
- }
47975
- finally { if (e_2) throw e_2.error; }
47976
- }
47977
- var tags = base && base.tags;
47978
- base = {
47979
- displayParts: displayParts,
47980
- documentation: [],
47981
- kind: 'angular',
47982
- kindModifiers: 'what does this do?',
47983
- textSpan: { start: ours.span.start, length: ours.span.end - ours.span.start },
48015
+ var ours = ls.getHoverAt(fileName, position);
48016
+ if (!ours) {
48017
+ return base;
48018
+ }
48019
+ var result = {
48020
+ kind: ts.ScriptElementKind.unknown,
48021
+ kindModifiers: ts.ScriptElementKindModifier.none,
48022
+ textSpan: {
48023
+ start: ours.span.start,
48024
+ length: ours.span.end - ours.span.start,
48025
+ },
48026
+ displayParts: ours.text.map(function (part) {
48027
+ return {
48028
+ text: part.text,
48029
+ kind: part.language || 'angular',
47984
48030
  };
47985
- if (tags) {
47986
- base.tags = tags;
47987
- }
47988
- }
47989
- });
47990
- return base;
48031
+ }),
48032
+ documentation: [],
48033
+ };
48034
+ if (base && base.tags) {
48035
+ result.tags = base.tags;
48036
+ }
48037
+ return result;
47991
48038
  };
47992
48039
  proxy.getSemanticDiagnostics = function (fileName) {
47993
48040
  var result = oldLS.getSemanticDiagnostics(fileName);
@@ -48010,7 +48057,7 @@ ${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\n ')}` : '';
48010
48057
  return base;
48011
48058
  }
48012
48059
  return tryOperation('get definition', function () {
48013
- var e_3, _a;
48060
+ var e_2, _a;
48014
48061
  var ours = ls.getDefinitionAt(fileName, position);
48015
48062
  var combined;
48016
48063
  if (ours && ours.length) {
@@ -48029,12 +48076,12 @@ ${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\n ')}` : '';
48029
48076
  });
48030
48077
  }
48031
48078
  }
48032
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
48079
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
48033
48080
  finally {
48034
48081
  try {
48035
48082
  if (ours_1_1 && !ours_1_1.done && (_a = ours_1.return)) _a.call(ours_1);
48036
48083
  }
48037
- finally { if (e_3) throw e_3.error; }
48084
+ finally { if (e_2) throw e_2.error; }
48038
48085
  }
48039
48086
  }
48040
48087
  else {
@@ -48053,7 +48100,7 @@ ${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\n ')}` : '';
48053
48100
  * Use of this source code is governed by an MIT-style license that can be
48054
48101
  * found in the LICENSE file at https://angular.io/license
48055
48102
  */
48056
- var VERSION$3 = new Version$1('8.0.0-rc.4');
48103
+ var VERSION$3 = new Version$1('8.0.2');
48057
48104
 
48058
48105
  /**
48059
48106
  * @license