commit
f8d2127ebe
|
@ -1,28 +0,0 @@
|
||||||
// (C) Copyright 2015 Moodle Pty Ltd.
|
|
||||||
//
|
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
// you may not use this file except in compliance with the License.
|
|
||||||
// You may obtain a copy of the License at
|
|
||||||
//
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
|
|
||||||
import { Injectable, Pipe, PipeTransform } from '@angular/core';
|
|
||||||
import { TranslatePipe } from '@ngx-translate/core';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Copy of translate pipe to use when compiling a dynamic component.
|
|
||||||
* For some reason, when compiling a dynamic component the original translate pipe isn't found so we use this copy instead.
|
|
||||||
*/
|
|
||||||
@Injectable()
|
|
||||||
@Pipe({
|
|
||||||
name: 'translate',
|
|
||||||
pure: false, // required to update the value when the promise is resolved
|
|
||||||
standalone: true,
|
|
||||||
})
|
|
||||||
export class TranslatePipeForCompile extends TranslatePipe implements PipeTransform {}
|
|
|
@ -33,7 +33,6 @@ import {
|
||||||
ToastController,
|
ToastController,
|
||||||
} from '@ionic/angular';
|
} from '@ionic/angular';
|
||||||
import { TranslateService } from '@ngx-translate/core';
|
import { TranslateService } from '@ngx-translate/core';
|
||||||
import { TranslatePipeForCompile } from '../pipes/translate';
|
|
||||||
|
|
||||||
import { CoreLogger } from '@singletons/logger';
|
import { CoreLogger } from '@singletons/logger';
|
||||||
import { CoreEvents } from '@singletons/events';
|
import { CoreEvents } from '@singletons/events';
|
||||||
|
@ -161,6 +160,7 @@ export class CoreCompileProvider {
|
||||||
getModWorkshopComponentModules,
|
getModWorkshopComponentModules,
|
||||||
];
|
];
|
||||||
|
|
||||||
|
protected componentId = 0;
|
||||||
protected libraries?: unknown[];
|
protected libraries?: unknown[];
|
||||||
protected exportedObjects?: Record<string, unknown>;
|
protected exportedObjects?: Record<string, unknown>;
|
||||||
|
|
||||||
|
@ -187,14 +187,13 @@ export class CoreCompileProvider {
|
||||||
await import('@angular/compiler');
|
await import('@angular/compiler');
|
||||||
|
|
||||||
// Create the component using the template and the class.
|
// Create the component using the template and the class.
|
||||||
const component = Component({ template })(componentClass);
|
const component = Component({ template, host: { 'compiled-component-id': String(this.componentId++) } })(componentClass);
|
||||||
|
|
||||||
const lazyImports = await Promise.all(this.LAZY_IMPORTS.map(getModules => getModules()));
|
const lazyImports = await Promise.all(this.LAZY_IMPORTS.map(getModules => getModules()));
|
||||||
const imports = [
|
const imports = [
|
||||||
...lazyImports.flat(),
|
...lazyImports.flat(),
|
||||||
...this.IMPORTS,
|
...this.IMPORTS,
|
||||||
...extraImports,
|
...extraImports,
|
||||||
TranslatePipeForCompile,
|
|
||||||
];
|
];
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
Loading…
Reference in New Issue