Repository URL to install this package:
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { WAThemeDesignerToolbox } from './toolbox/wa-theme-designer-toolbox';
import { Injectable, Inject, Injector, ApplicationRef, ComponentFactoryResolver } from '@angular/core';
import { NGXLogger } from 'web-console-core';
import { DOCUMENT } from '@angular/common';
/** @type {?} */
const LOG_TAG = '[WAThemeDesignerService]';
/**
* @record
*/
function ColorItemDef() { }
if (false) {
/** @type {?} */
ColorItemDef.prototype.name;
/** @type {?} */
ColorItemDef.prototype.variableName;
}
export class WAThemeDesignerService {
/**
* @param {?} logger
* @param {?} document
* @param {?} resolver
* @param {?} injector
* @param {?} app
*/
constructor(logger, document, resolver, injector, app) {
this.logger = logger;
this.document = document;
this.resolver = resolver;
this.injector = injector;
this.app = app;
this.logger.debug("@Inject(DOCUMENT) private document ", document);
this.themeWrapper = this.document.querySelector('app-root');
this.logger.debug("this.themeWrapper:", this.themeWrapper);
}
/**
* @return {?}
*/
show() {
if (this.themeEditor) {
this.themeEditor.show();
}
else {
/** @type {?} */
let factory = this.resolver.resolveComponentFactory(WAThemeDesignerToolbox);
/** @type {?} */
let newNode = document.createElement('div');
newNode.id = 'wa-theme-editor-container';
this.document.body.appendChild(newNode);
/** @type {?} */
const ref = factory.create(this.injector, [], newNode);
this.app.attachView(ref.hostView);
this.themeEditor = ref.instance;
console.log(">>>>>> this.themeEditor:", this.themeEditor);
}
}
}
WAThemeDesignerService.decorators = [
{ type: Injectable }
];
/** @nocollapse */
WAThemeDesignerService.ctorParameters = () => [
{ type: NGXLogger },
{ type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },
{ type: ComponentFactoryResolver },
{ type: Injector },
{ type: ApplicationRef }
];
if (false) {
/**
* @type {?}
* @private
*/
WAThemeDesignerService.prototype.themeWrapper;
/**
* @type {?}
* @private
*/
WAThemeDesignerService.prototype.themeModel;
/**
* @type {?}
* @private
*/
WAThemeDesignerService.prototype.themeEditor;
/**
* @type {?}
* @private
*/
WAThemeDesignerService.prototype.obj;
/**
* @type {?}
* @private
*/
WAThemeDesignerService.prototype.logger;
/**
* @type {?}
* @private
*/
WAThemeDesignerService.prototype.document;
/**
* @type {?}
* @private
*/
WAThemeDesignerService.prototype.resolver;
/**
* @type {?}
* @private
*/
WAThemeDesignerService.prototype.injector;
/**
* @type {?}
* @private
*/
WAThemeDesignerService.prototype.app;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV0FUaGVtZURlc2lnbmVyU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL21vdGlmLXdlYi1hZG1pbi1jb3JlLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL1RoZW1lRGVzaWduZXIvV0FUaGVtZURlc2lnbmVyU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFN0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztNQUdyQyxPQUFPLEdBQUcsMEJBQTBCOzs7O0FBRTFDLDJCQUdDOzs7SUFGQyw0QkFBYTs7SUFDYixvQ0FBcUI7O0FBSXZCLE1BQU0sT0FBTyxzQkFBc0I7Ozs7Ozs7O0lBTS9CLFlBQW9CLE1BQWlCLEVBQTRCLFFBQWEsRUFDcEUsUUFBa0MsRUFDbEMsUUFBa0IsRUFDbEIsR0FBbUI7UUFIVCxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQUs7UUFDcEUsYUFBUSxHQUFSLFFBQVEsQ0FBMEI7UUFDbEMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixRQUFHLEdBQUgsR0FBRyxDQUFnQjtRQUUzQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM3RCxDQUFDOzs7O0lBS00sSUFBSTtRQUNULElBQUksSUFBSSxDQUFDLFdBQVcsRUFBQztZQUNuQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3pCO2FBQU07O2dCQUNELE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLHNCQUFzQixDQUFDOztnQkFDdkUsT0FBTyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO1lBQzNDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsMkJBQTJCLENBQUM7WUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDOztrQkFDbEMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsT0FBTyxDQUFDO1lBQ3RELElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNsQyxJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUM7WUFDaEMsT0FBTyxDQUFDLEdBQUcsQ0FBQywwQkFBMEIsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDekQ7SUFDTCxDQUFDOzs7WUFqQ0osVUFBVTs7OztZQVhGLFNBQVM7NENBa0IwQixNQUFNLFNBQUMsUUFBUTtZQW5CSix3QkFBd0I7WUFBbEQsUUFBUTtZQUFFLGNBQWM7Ozs7Ozs7SUFlbkQsOENBQTBCOzs7OztJQUMxQiw0Q0FBK0I7Ozs7O0lBQy9CLDZDQUE0Qzs7Ozs7SUFZMUMscUNBQWdCOzs7OztJQVZKLHdDQUF5Qjs7Ozs7SUFBRSwwQ0FBdUM7Ozs7O0lBQzVFLDBDQUEwQzs7Ozs7SUFDMUMsMENBQTBCOzs7OztJQUMxQixxQ0FBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBXQVRoZW1lRGVzaWduZXJUb29sYm94IH0gZnJvbSAnLi90b29sYm94L3dhLXRoZW1lLWRlc2lnbmVyLXRvb2xib3gnO1xuaW1wb3J0IHsgVGhlbWVNb2RlbEJ1aWxkZXIsIFRoZW1lTW9kZWwsIFRoZW1lSXRlbSwgVGhlbWVHcm91cCwgVGhlbWVDb2xvckl0ZW0gfSBmcm9tICcuL1RoZW1lTW9kZWwnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0LCBJbmplY3RvciwgQXBwbGljYXRpb25SZWYsIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdYTG9nZ2VyIH0gZnJvbSAnd2ViLWNvbnNvbGUtY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cblxuY29uc3QgTE9HX1RBRyA9ICdbV0FUaGVtZURlc2lnbmVyU2VydmljZV0nO1xuXG5pbnRlcmZhY2UgQ29sb3JJdGVtRGVmIHtcbiAgbmFtZTogc3RyaW5nO1xuICB2YXJpYWJsZU5hbWU6IHN0cmluZztcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFdBVGhlbWVEZXNpZ25lclNlcnZpY2Uge1xuXG4gIHByaXZhdGUgdGhlbWVXcmFwcGVyOiBhbnk7XG4gIHByaXZhdGUgdGhlbWVNb2RlbDogVGhlbWVNb2RlbDtcbiAgcHJpdmF0ZSB0aGVtZUVkaXRvcjogV0FUaGVtZURlc2lnbmVyVG9vbGJveDtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9nZ2VyOiBOR1hMb2dnZXIsIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IGFueSxcbiAgICAgIHByaXZhdGUgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgcHJpdmF0ZSBhcHA6IEFwcGxpY2F0aW9uUmVmXG4gICAgKXtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFwiQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudCBcIiwgZG9jdW1lbnQpO1xuICAgICAgdGhpcy50aGVtZVdyYXBwZXIgPSB0aGlzLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2FwcC1yb290Jyk7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcInRoaXMudGhlbWVXcmFwcGVyOlwiLCB0aGlzLnRoZW1lV3JhcHBlcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvYmo6YW55O1xuXG5cbiAgICBwdWJsaWMgc2hvdygpe1xuICAgICAgaWYgKHRoaXMudGhlbWVFZGl0b3Ipe1xuICAgICAgICB0aGlzLnRoZW1lRWRpdG9yLnNob3coKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCBmYWN0b3J5ID0gdGhpcy5yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShXQVRoZW1lRGVzaWduZXJUb29sYm94KTtcbiAgICAgICAgbGV0IG5ld05vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgbmV3Tm9kZS5pZCA9ICd3YS10aGVtZS1lZGl0b3ItY29udGFpbmVyJztcbiAgICAgICAgdGhpcy5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG5ld05vZGUpO1xuICAgICAgICBjb25zdCByZWYgPSBmYWN0b3J5LmNyZWF0ZSh0aGlzLmluamVjdG9yLCBbXSwgbmV3Tm9kZSk7XG4gICAgICAgIHRoaXMuYXBwLmF0dGFjaFZpZXcocmVmLmhvc3RWaWV3KTtcbiAgICAgICAgdGhpcy50aGVtZUVkaXRvciA9IHJlZi5pbnN0YW5jZTtcbiAgICAgICAgY29uc29sZS5sb2coXCI+Pj4+Pj4gdGhpcy50aGVtZUVkaXRvcjpcIiwgdGhpcy50aGVtZUVkaXRvcik7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuIl19