@matechat/ng 0.0.1-alpha.0
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.
- package/Base/base.component.d.ts +11 -0
- package/Bubble/avatar/avatar.component.d.ts +23 -0
- package/Bubble/avatar-body-icon/avatar-body-icon.component.d.ts +7 -0
- package/Bubble/avatar-no-body-icon/avatar-no-body-icon.component.d.ts +7 -0
- package/Bubble/bubble-loading/bubble-loading.component.d.ts +5 -0
- package/Bubble/bubble.component.d.ts +24 -0
- package/Bubble/bubble.module.d.ts +10 -0
- package/Bubble/index.d.ts +6 -0
- package/Input/button/button.component.d.ts +31 -0
- package/Input/index.d.ts +2 -0
- package/Input/input.component.d.ts +56 -0
- package/Input/input.module.d.ts +11 -0
- package/Input/send-icon/send-icon.component.d.ts +5 -0
- package/Locale/index.d.ts +5 -0
- package/Locale/locale.module.d.ts +17 -0
- package/Locale/locale.service.d.ts +50 -0
- package/Locale/translate.pipe.d.ts +23 -0
- package/README.md +24 -0
- package/components-common/Base/foundation.d.ts +43 -0
- package/components-common/Bubble/common/bubble-constants.d.ts +4 -0
- package/components-common/Bubble/common/bubble-types.d.ts +12 -0
- package/components-common/Bubble/foundation.d.ts +9 -0
- package/components-common/Input/button-foundation.d.ts +15 -0
- package/components-common/Input/common/types.d.ts +16 -0
- package/components-common/Input/foundation.d.ts +20 -0
- package/components-common/Locale/lang/en-us.d.ts +26 -0
- package/components-common/Locale/lang/zh-cn.d.ts +26 -0
- package/esm2022/Base/base.component.mjs +46 -0
- package/esm2022/Bubble/avatar/avatar.component.mjs +121 -0
- package/esm2022/Bubble/avatar-body-icon/avatar-body-icon.component.mjs +19 -0
- package/esm2022/Bubble/avatar-no-body-icon/avatar-no-body-icon.component.mjs +19 -0
- package/esm2022/Bubble/bubble-loading/bubble-loading.component.mjs +11 -0
- package/esm2022/Bubble/bubble.component.mjs +82 -0
- package/esm2022/Bubble/bubble.module.mjs +36 -0
- package/esm2022/Bubble/index.mjs +7 -0
- package/esm2022/Input/button/button.component.mjs +83 -0
- package/esm2022/Input/index.mjs +3 -0
- package/esm2022/Input/input.component.mjs +181 -0
- package/esm2022/Input/input.module.mjs +34 -0
- package/esm2022/Input/send-icon/send-icon.component.mjs +11 -0
- package/esm2022/Locale/index.mjs +6 -0
- package/esm2022/Locale/locale.module.mjs +39 -0
- package/esm2022/Locale/locale.service.mjs +140 -0
- package/esm2022/Locale/translate.pipe.mjs +38 -0
- package/esm2022/components-common/Base/foundation.mjs +63 -0
- package/esm2022/components-common/Bubble/common/bubble-constants.mjs +5 -0
- package/esm2022/components-common/Bubble/common/bubble-types.mjs +2 -0
- package/esm2022/components-common/Bubble/foundation.mjs +30 -0
- package/esm2022/components-common/Input/button-foundation.mjs +33 -0
- package/esm2022/components-common/Input/common/types.mjs +21 -0
- package/esm2022/components-common/Input/foundation.mjs +72 -0
- package/esm2022/components-common/Locale/lang/en-us.mjs +26 -0
- package/esm2022/components-common/Locale/lang/zh-cn.mjs +26 -0
- package/esm2022/matechat-ng.mjs +5 -0
- package/esm2022/public-api.mjs +7 -0
- package/fesm2022/matechat-ng-en-us-DsYnUbZd.mjs +28 -0
- package/fesm2022/matechat-ng-en-us-DsYnUbZd.mjs.map +1 -0
- package/fesm2022/matechat-ng-zh-cn--_YVZHnW.mjs +28 -0
- package/fesm2022/matechat-ng-zh-cn--_YVZHnW.mjs.map +1 -0
- package/fesm2022/matechat-ng.mjs +1027 -0
- package/fesm2022/matechat-ng.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/package.json +31 -0
- package/public-api.d.ts +3 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter, ViewChild, ContentChild, } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { FormsModule } from '@angular/forms';
|
|
4
|
+
import { ButtonComponent } from './button/button.component';
|
|
5
|
+
import { DisplayType, InputVariant, SendBtnVariant, SubmitShortKey, } from '../components-common/Input/common/types';
|
|
6
|
+
import BaseComponent from '../Base/base.component';
|
|
7
|
+
import { InputFoundation, } from '../components-common/Input/foundation';
|
|
8
|
+
import { TranslatePipe } from '../Locale/translate.pipe';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "../Locale/locale.service";
|
|
11
|
+
import * as i2 from "@angular/common";
|
|
12
|
+
import * as i3 from "@angular/forms";
|
|
13
|
+
// 创建一个token用于组件间通信
|
|
14
|
+
export const inputContextToken = 'input-context';
|
|
15
|
+
export class InputComponent extends BaseComponent {
|
|
16
|
+
constructor(localeService) {
|
|
17
|
+
super();
|
|
18
|
+
this.localeService = localeService;
|
|
19
|
+
this.value = '';
|
|
20
|
+
this.placeholder = '';
|
|
21
|
+
this.disabled = false;
|
|
22
|
+
this.displayType = DisplayType.Full;
|
|
23
|
+
this.variant = InputVariant.Bordered;
|
|
24
|
+
this.sendBtnVariant = SendBtnVariant.Full;
|
|
25
|
+
this.loading = false;
|
|
26
|
+
this.showCount = false;
|
|
27
|
+
this.maxLength = null;
|
|
28
|
+
this.submitShortKey = SubmitShortKey.Enter;
|
|
29
|
+
this.autofocus = false;
|
|
30
|
+
this.change = new EventEmitter();
|
|
31
|
+
this.submit = new EventEmitter();
|
|
32
|
+
this.cancel = new EventEmitter();
|
|
33
|
+
this.focus = new EventEmitter();
|
|
34
|
+
this.blur = new EventEmitter();
|
|
35
|
+
this.headTemplate = null;
|
|
36
|
+
this.prefixTemplate = null;
|
|
37
|
+
this.suffixTemplate = null;
|
|
38
|
+
this.buttonTemplate = null;
|
|
39
|
+
this.extraTemplate = null;
|
|
40
|
+
this.inputValue = '';
|
|
41
|
+
this.lock = false;
|
|
42
|
+
}
|
|
43
|
+
ngOnInit() {
|
|
44
|
+
this.foundation = new InputFoundation(this.adapter);
|
|
45
|
+
this.foundation.init();
|
|
46
|
+
this.inputValue = this.value;
|
|
47
|
+
}
|
|
48
|
+
get adapter() {
|
|
49
|
+
return {
|
|
50
|
+
...super.adapter,
|
|
51
|
+
locale: (key, params) => this.localeService.translate(key, params),
|
|
52
|
+
emitChange: () => {
|
|
53
|
+
this.change.emit(this.inputValue);
|
|
54
|
+
},
|
|
55
|
+
submit: (inputValue) => {
|
|
56
|
+
this.submit.emit(inputValue);
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
onChange(e) {
|
|
61
|
+
e.stopPropagation();
|
|
62
|
+
this.foundation.emitChange();
|
|
63
|
+
}
|
|
64
|
+
ngOnChanges(changes) {
|
|
65
|
+
if (changes['value']) {
|
|
66
|
+
this.inputValue = changes['value']?.currentValue || '';
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
get inputClasses() {
|
|
70
|
+
return this.foundation.getInputClasses();
|
|
71
|
+
}
|
|
72
|
+
get maxlengthValue() {
|
|
73
|
+
return this.maxLength !== undefined ? this.maxLength : null;
|
|
74
|
+
}
|
|
75
|
+
onInput() {
|
|
76
|
+
if (!this.lock) {
|
|
77
|
+
this.foundation.emitChange();
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
onCompositionStart() {
|
|
81
|
+
this.lock = true;
|
|
82
|
+
}
|
|
83
|
+
onCompositionEnd() {
|
|
84
|
+
this.lock = false;
|
|
85
|
+
this.foundation.emitChange();
|
|
86
|
+
}
|
|
87
|
+
onKeydown(event) {
|
|
88
|
+
this.foundation.onKeydown(event);
|
|
89
|
+
}
|
|
90
|
+
clearInput() {
|
|
91
|
+
this.foundation.clearInput();
|
|
92
|
+
}
|
|
93
|
+
getInput() {
|
|
94
|
+
return this.inputValue;
|
|
95
|
+
}
|
|
96
|
+
// 处理button组件的事件
|
|
97
|
+
onButtonSubmit(value) {
|
|
98
|
+
this.submit.emit(value);
|
|
99
|
+
}
|
|
100
|
+
onButtonCancel() {
|
|
101
|
+
this.cancel.emit();
|
|
102
|
+
}
|
|
103
|
+
onButtonChange(value) {
|
|
104
|
+
this.inputValue = value;
|
|
105
|
+
this.foundation.emitChange();
|
|
106
|
+
}
|
|
107
|
+
ngAfterViewInit() {
|
|
108
|
+
if (this.autofocus && this.textareaElement && !this.disabled) {
|
|
109
|
+
// 在下一个变更检测周期中聚焦,以确保视图已经完全初始化
|
|
110
|
+
setTimeout(() => {
|
|
111
|
+
this.textareaElement.nativeElement.focus();
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
get placeholderText() {
|
|
116
|
+
return this.foundation.getPlaceholderText();
|
|
117
|
+
}
|
|
118
|
+
onFocus(event) {
|
|
119
|
+
this.focus.emit(event);
|
|
120
|
+
}
|
|
121
|
+
onBlur(event) {
|
|
122
|
+
this.blur.emit(event);
|
|
123
|
+
}
|
|
124
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: InputComponent, deps: [{ token: i1.LocaleService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
125
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: InputComponent, isStandalone: true, selector: "mc-input", inputs: { value: "value", placeholder: "placeholder", disabled: "disabled", displayType: "displayType", variant: "variant", sendBtnVariant: "sendBtnVariant", loading: "loading", showCount: "showCount", maxLength: "maxLength", submitShortKey: "submitShortKey", autofocus: "autofocus" }, outputs: { change: "change", submit: "submit", cancel: "cancel", focus: "focus", blur: "blur" }, providers: [{ provide: inputContextToken, useExisting: InputComponent }], queries: [{ propertyName: "headTemplate", first: true, predicate: ["head"], descendants: true }, { propertyName: "prefixTemplate", first: true, predicate: ["prefix"], descendants: true }, { propertyName: "suffixTemplate", first: true, predicate: ["suffix"], descendants: true }, { propertyName: "buttonTemplate", first: true, predicate: ["button"], descendants: true }, { propertyName: "extraTemplate", first: true, predicate: ["extra"], descendants: true }], viewQueries: [{ propertyName: "textareaElement", first: true, predicate: ["textarea"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div [ngClass]=\"inputClasses\">\n <ng-container *ngIf=\"headTemplate; then headTemplate\"></ng-container>\n\n <div class=\"mc-input-content\">\n <ng-container *ngIf=\"prefixTemplate; then prefixTemplate\"></ng-container>\n\n <textarea\n #textarea\n [(ngModel)]=\"inputValue\"\n [placeholder]=\"placeholderText\"\n [disabled]=\"disabled\"\n [maxlength]=\"maxLength\"\n class=\"mc-textarea\"\n [ngClass]=\"{\n 'mc-textarea-simple': displayType === 'simple',\n 'mc-textarea-disabled': disabled\n }\"\n [attr.aria-label]=\"'Input.ariaLabel' | translate\"\n [attr.aria-disabled]=\"disabled\"\n (input)=\"onInput()\"\n (change)=\"onChange($event)\"\n (compositionstart)=\"onCompositionStart()\"\n (compositionend)=\"onCompositionEnd()\"\n (keydown)=\"onKeydown($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n ></textarea>\n <ng-container *ngIf=\"suffixTemplate; then suffixTemplate\"></ng-container>\n\n <ng-container *ngIf=\"displayType === 'simple'\">\n <ng-container *ngIf=\"buttonTemplate; else defaultButton\">\n <ng-container\n *ngIf=\"buttonTemplate; then buttonTemplate\"\n ></ng-container>\n </ng-container>\n <ng-template #defaultButton>\n <mc-button\n [disabled]=\"disabled || (!loading && !inputValue)\"\n [loading]=\"loading\"\n [inputValue]=\"inputValue\"\n [sendBtnVariant]=\"sendBtnVariant\"\n (submit)=\"onButtonSubmit($event)\"\n (cancel)=\"onButtonCancel()\"\n (change)=\"onButtonChange($event)\"\n ></mc-button>\n </ng-template>\n </ng-container>\n </div>\n\n <div *ngIf=\"displayType === 'full'\" class=\"mc-input-foot\">\n <div class=\"mc-input-foot-left\">\n <ng-container *ngIf=\"extraTemplate; then extraTemplate\"></ng-container>\n <span *ngIf=\"showCount\" id=\"mc-input-count\" class=\"mc-input-foot-count\">\n {{ inputValue.length }}{{ !maxLength ? \"\" : \"/\" + maxLength }}\n </span>\n </div>\n\n <ng-container *ngIf=\"buttonTemplate; else defaultFooterButton\">\n <ng-container *ngIf=\"buttonTemplate; then buttonTemplate\"></ng-container>\n </ng-container>\n <ng-template #defaultFooterButton>\n <mc-button\n [disabled]=\"disabled || (!loading && !inputValue)\"\n [loading]=\"loading\"\n [inputValue]=\"inputValue\"\n [sendBtnVariant]=\"sendBtnVariant\"\n (submit)=\"onButtonSubmit($event)\"\n (cancel)=\"onButtonCancel()\"\n (change)=\"onButtonChange($event)\"\n ></mc-button>\n </ng-template>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";body[ui-theme=infinity-theme]{--mc-text: #aeaeae;--mc-box-shadow: rgba(25, 25, 25, .06)}body[ui-theme=galaxy-theme]{--mc-text: #4e5057;--mc-box-shadow: rgba(206, 209, 219, .06)}.mc-input{display:flex;flex-direction:column;width:100%;padding:12px 0;border:1px solid var(--devui-form-control-line, #d7d8da);border-radius:16px;box-sizing:border-box;background-color:var(--devui-base-bg, #ffffff)}.mc-input.mc-input-simple{border-radius:24px}.mc-input.mc-input-simple .mc-input-content{padding:0 20px}.mc-input.mc-input-borderless{border:none;box-shadow:0 1px 8px 0 var(--mc-box-shadow, rgba(25, 25, 25, .06))}.mc-input.mc-input-disabled{background-color:var(--devui-disabled-bg, #f5f5f5);cursor:not-allowed}.mc-input .mc-input-content{display:flex;align-items:flex-end;padding:0 16px}.mc-input .mc-input-foot{display:flex;justify-content:space-between;align-items:center;height:32px;padding:0 16px}.mc-input .mc-input-foot .mc-input-foot-left{flex:1;height:100%;display:flex;align-items:center}.mc-input .mc-input-foot .mc-input-foot-left .mc-input-foot-count{color:var(--mc-text, #aeaeae);font-size:var(--devui-font-size-sm, 12px)}.mc-textarea{width:100%;height:64px;padding:4px 0;color:var(--devui-text, #252b3a);font-size:var(--devui-font-size, 14px);background-color:var(--devui-form-control-bg, #ffffff);vertical-align:middle;outline:none;box-sizing:border-box;resize:none;border:none}.mc-textarea.mc-textarea-simple{height:32px}.mc-textarea.mc-textarea-disabled{color:var(--devui-disabled-text, #cfd0d3);background-color:var(--devui-disabled-bg, #f5f5f5);cursor:not-allowed}.mc-textarea::placeholder{color:var(--devui-placeholder, #babbc0)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ButtonComponent, selector: "mc-button", inputs: ["disabled", "loading", "inputValue", "sendBtnVariant"], outputs: ["submit", "cancel", "change"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
|
126
|
+
}
|
|
127
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: InputComponent, decorators: [{
|
|
128
|
+
type: Component,
|
|
129
|
+
args: [{ selector: 'mc-input', standalone: true, imports: [CommonModule, FormsModule, ButtonComponent, TranslatePipe], providers: [{ provide: inputContextToken, useExisting: InputComponent }], template: "<div [ngClass]=\"inputClasses\">\n <ng-container *ngIf=\"headTemplate; then headTemplate\"></ng-container>\n\n <div class=\"mc-input-content\">\n <ng-container *ngIf=\"prefixTemplate; then prefixTemplate\"></ng-container>\n\n <textarea\n #textarea\n [(ngModel)]=\"inputValue\"\n [placeholder]=\"placeholderText\"\n [disabled]=\"disabled\"\n [maxlength]=\"maxLength\"\n class=\"mc-textarea\"\n [ngClass]=\"{\n 'mc-textarea-simple': displayType === 'simple',\n 'mc-textarea-disabled': disabled\n }\"\n [attr.aria-label]=\"'Input.ariaLabel' | translate\"\n [attr.aria-disabled]=\"disabled\"\n (input)=\"onInput()\"\n (change)=\"onChange($event)\"\n (compositionstart)=\"onCompositionStart()\"\n (compositionend)=\"onCompositionEnd()\"\n (keydown)=\"onKeydown($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n ></textarea>\n <ng-container *ngIf=\"suffixTemplate; then suffixTemplate\"></ng-container>\n\n <ng-container *ngIf=\"displayType === 'simple'\">\n <ng-container *ngIf=\"buttonTemplate; else defaultButton\">\n <ng-container\n *ngIf=\"buttonTemplate; then buttonTemplate\"\n ></ng-container>\n </ng-container>\n <ng-template #defaultButton>\n <mc-button\n [disabled]=\"disabled || (!loading && !inputValue)\"\n [loading]=\"loading\"\n [inputValue]=\"inputValue\"\n [sendBtnVariant]=\"sendBtnVariant\"\n (submit)=\"onButtonSubmit($event)\"\n (cancel)=\"onButtonCancel()\"\n (change)=\"onButtonChange($event)\"\n ></mc-button>\n </ng-template>\n </ng-container>\n </div>\n\n <div *ngIf=\"displayType === 'full'\" class=\"mc-input-foot\">\n <div class=\"mc-input-foot-left\">\n <ng-container *ngIf=\"extraTemplate; then extraTemplate\"></ng-container>\n <span *ngIf=\"showCount\" id=\"mc-input-count\" class=\"mc-input-foot-count\">\n {{ inputValue.length }}{{ !maxLength ? \"\" : \"/\" + maxLength }}\n </span>\n </div>\n\n <ng-container *ngIf=\"buttonTemplate; else defaultFooterButton\">\n <ng-container *ngIf=\"buttonTemplate; then buttonTemplate\"></ng-container>\n </ng-container>\n <ng-template #defaultFooterButton>\n <mc-button\n [disabled]=\"disabled || (!loading && !inputValue)\"\n [loading]=\"loading\"\n [inputValue]=\"inputValue\"\n [sendBtnVariant]=\"sendBtnVariant\"\n (submit)=\"onButtonSubmit($event)\"\n (cancel)=\"onButtonCancel()\"\n (change)=\"onButtonChange($event)\"\n ></mc-button>\n </ng-template>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";body[ui-theme=infinity-theme]{--mc-text: #aeaeae;--mc-box-shadow: rgba(25, 25, 25, .06)}body[ui-theme=galaxy-theme]{--mc-text: #4e5057;--mc-box-shadow: rgba(206, 209, 219, .06)}.mc-input{display:flex;flex-direction:column;width:100%;padding:12px 0;border:1px solid var(--devui-form-control-line, #d7d8da);border-radius:16px;box-sizing:border-box;background-color:var(--devui-base-bg, #ffffff)}.mc-input.mc-input-simple{border-radius:24px}.mc-input.mc-input-simple .mc-input-content{padding:0 20px}.mc-input.mc-input-borderless{border:none;box-shadow:0 1px 8px 0 var(--mc-box-shadow, rgba(25, 25, 25, .06))}.mc-input.mc-input-disabled{background-color:var(--devui-disabled-bg, #f5f5f5);cursor:not-allowed}.mc-input .mc-input-content{display:flex;align-items:flex-end;padding:0 16px}.mc-input .mc-input-foot{display:flex;justify-content:space-between;align-items:center;height:32px;padding:0 16px}.mc-input .mc-input-foot .mc-input-foot-left{flex:1;height:100%;display:flex;align-items:center}.mc-input .mc-input-foot .mc-input-foot-left .mc-input-foot-count{color:var(--mc-text, #aeaeae);font-size:var(--devui-font-size-sm, 12px)}.mc-textarea{width:100%;height:64px;padding:4px 0;color:var(--devui-text, #252b3a);font-size:var(--devui-font-size, 14px);background-color:var(--devui-form-control-bg, #ffffff);vertical-align:middle;outline:none;box-sizing:border-box;resize:none;border:none}.mc-textarea.mc-textarea-simple{height:32px}.mc-textarea.mc-textarea-disabled{color:var(--devui-disabled-text, #cfd0d3);background-color:var(--devui-disabled-bg, #f5f5f5);cursor:not-allowed}.mc-textarea::placeholder{color:var(--devui-placeholder, #babbc0)}\n"] }]
|
|
130
|
+
}], ctorParameters: () => [{ type: i1.LocaleService }], propDecorators: { value: [{
|
|
131
|
+
type: Input
|
|
132
|
+
}], placeholder: [{
|
|
133
|
+
type: Input
|
|
134
|
+
}], disabled: [{
|
|
135
|
+
type: Input
|
|
136
|
+
}], displayType: [{
|
|
137
|
+
type: Input
|
|
138
|
+
}], variant: [{
|
|
139
|
+
type: Input
|
|
140
|
+
}], sendBtnVariant: [{
|
|
141
|
+
type: Input
|
|
142
|
+
}], loading: [{
|
|
143
|
+
type: Input
|
|
144
|
+
}], showCount: [{
|
|
145
|
+
type: Input
|
|
146
|
+
}], maxLength: [{
|
|
147
|
+
type: Input
|
|
148
|
+
}], submitShortKey: [{
|
|
149
|
+
type: Input
|
|
150
|
+
}], autofocus: [{
|
|
151
|
+
type: Input
|
|
152
|
+
}], change: [{
|
|
153
|
+
type: Output
|
|
154
|
+
}], submit: [{
|
|
155
|
+
type: Output
|
|
156
|
+
}], cancel: [{
|
|
157
|
+
type: Output
|
|
158
|
+
}], focus: [{
|
|
159
|
+
type: Output
|
|
160
|
+
}], blur: [{
|
|
161
|
+
type: Output
|
|
162
|
+
}], textareaElement: [{
|
|
163
|
+
type: ViewChild,
|
|
164
|
+
args: ['textarea']
|
|
165
|
+
}], headTemplate: [{
|
|
166
|
+
type: ContentChild,
|
|
167
|
+
args: ['head']
|
|
168
|
+
}], prefixTemplate: [{
|
|
169
|
+
type: ContentChild,
|
|
170
|
+
args: ['prefix']
|
|
171
|
+
}], suffixTemplate: [{
|
|
172
|
+
type: ContentChild,
|
|
173
|
+
args: ['suffix']
|
|
174
|
+
}], buttonTemplate: [{
|
|
175
|
+
type: ContentChild,
|
|
176
|
+
args: ['button']
|
|
177
|
+
}], extraTemplate: [{
|
|
178
|
+
type: ContentChild,
|
|
179
|
+
args: ['extra']
|
|
180
|
+
}] } });
|
|
181
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy1uZy9zcmMvSW5wdXQvaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy1uZy9zcmMvSW5wdXQvaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFFWixTQUFTLEVBRVQsWUFBWSxHQUdiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUNaLGNBQWMsRUFDZCxjQUFjLEdBQ2YsTUFBTSx5Q0FBeUMsQ0FBQztBQUNqRCxPQUFPLGFBQWEsTUFBTSx3QkFBd0IsQ0FBQztBQUNuRCxPQUFPLEVBRUwsZUFBZSxHQUNoQixNQUFNLHVDQUF1QyxDQUFDO0FBRS9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7QUFFekQsbUJBQW1CO0FBQ25CLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLGVBQWUsQ0FBQztBQVVqRCxNQUFNLE9BQU8sY0FBZSxTQUFRLGFBQWE7SUErQi9DLFlBQW9CLGFBQTRCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBRFUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUE5QnZDLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixnQkFBVyxHQUFnQixXQUFXLENB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YztzQkFBckMsWUFBWTt1QkFBQyxRQUFRO2dCQUNDLGFBQWE7c0JBQW5DLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBPbkluaXQsXG4gIFZpZXdDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgQ29udGVudENoaWxkLFxuICBUZW1wbGF0ZVJlZixcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7XG4gIERpc3BsYXlUeXBlLFxuICBJbnB1dFZhcmlhbnQsXG4gIFNlbmRCdG5WYXJpYW50LFxuICBTdWJtaXRTaG9ydEtleSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy1jb21tb24vSW5wdXQvY29tbW9uL3R5cGVzJztcbmltcG9ydCBCYXNlQ29tcG9uZW50IGZyb20gJy4uL0Jhc2UvYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgSW5wdXRBZGFwdGVyLFxuICBJbnB1dEZvdW5kYXRpb24sXG59IGZyb20gJy4uL2NvbXBvbmVudHMtY29tbW9uL0lucHV0L2ZvdW5kYXRpb24nO1xuaW1wb3J0IHsgTG9jYWxlU2VydmljZSB9IGZyb20gJy4uL0xvY2FsZS9sb2NhbGUuc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnLi4vTG9jYWxlL3RyYW5zbGF0ZS5waXBlJztcblxuLy8g5Yib5bu65LiA5LiqdG9rZW7nlKjkuo7nu4Tku7bpl7TpgJrkv6FcbmV4cG9ydCBjb25zdCBpbnB1dENvbnRleHRUb2tlbiA9ICdpbnB1dC1jb250ZXh0JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWMtaW5wdXQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgQnV0dG9uQ29tcG9uZW50LCBUcmFuc2xhdGVQaXBlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBpbnB1dENvbnRleHRUb2tlbiwgdXNlRXhpc3Rpbmc6IElucHV0Q29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZGlzcGxheVR5cGU6IERpc3BsYXlUeXBlID0gRGlzcGxheVR5cGUuRnVsbDtcbiAgQElucHV0KCkgdmFyaWFudDogSW5wdXRWYXJpYW50ID0gSW5wdXRWYXJpYW50LkJvcmRlcmVkO1xuICBASW5wdXQoKSBzZW5kQnRuVmFyaWFudDogU2VuZEJ0blZhcmlhbnQgPSBTZW5kQnRuVmFyaWFudC5GdWxsO1xuICBASW5wdXQoKSBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dDb3VudDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBtYXhMZW5ndGg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBzdWJtaXRTaG9ydEtleTogU3VibWl0U2hvcnRLZXkgfCBudWxsIHwgc3RyaW5nID1cbiAgICBTdWJtaXRTaG9ydEtleS5FbnRlcjtcbiAgQElucHV0KCkgYXV0b2ZvY3VzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgc3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBjYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBmb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcbiAgQE91dHB1dCgpIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyPEZvY3VzRXZlbnQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgndGV4dGFyZWEnKSB0ZXh0YXJlYUVsZW1lbnQhOiBFbGVtZW50UmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQ+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2hlYWQnKSBoZWFkVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgQENvbnRlbnRDaGlsZCgncHJlZml4JykgcHJlZml4VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgQENvbnRlbnRDaGlsZCgnc3VmZml4Jykgc3VmZml4VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgQENvbnRlbnRDaGlsZCgnYnV0dG9uJykgYnV0dG9uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgQENvbnRlbnRDaGlsZCgnZXh0cmEnKSBleHRyYVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCA9IG51bGw7XG5cbiAgaW5wdXRWYWx1ZTogc3RyaW5nID0gJyc7XG4gIGxvY2s6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5mb3VuZGF0aW9uID0gbmV3IElucHV0Rm91bmRhdGlvbih0aGlzLmFkYXB0ZXIpO1xuICAgIHRoaXMuZm91bmRhdGlvbi5pbml0KCk7XG4gICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy52YWx1ZTtcbiAgfVxuXG4gIG92ZXJyaWRlIGdldCBhZGFwdGVyKCk6IElucHV0QWRhcHRlciB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN1cGVyLmFkYXB0ZXIsXG4gICAgICBsb2NhbGU6IChrZXksIHBhcmFtcykgPT4gdGhpcy5sb2NhbGVTZXJ2aWNlLnRyYW5zbGF0ZShrZXksIHBhcmFtcyksXG4gICAgICBlbWl0Q2hhbmdlOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY2hhbmdlLmVtaXQodGhpcy5pbnB1dFZhbHVlKTtcbiAgICAgIH0sXG4gICAgICBzdWJtaXQ6IChpbnB1dFZhbHVlKSA9PiB7XG4gICAgICAgIHRoaXMuc3VibWl0LmVtaXQoaW5wdXRWYWx1ZSk7XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBvbkNoYW5nZShlKTogdm9pZCB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmZvdW5kYXRpb24uZW1pdENoYW5nZSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWyd2YWx1ZSddKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSBjaGFuZ2VzWyd2YWx1ZSddPy5jdXJyZW50VmFsdWUgfHwgJyc7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGlucHV0Q2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmZvdW5kYXRpb24uZ2V0SW5wdXRDbGFzc2VzKCk7XG4gIH1cblxuICBnZXQgbWF4bGVuZ3RoVmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWF4TGVuZ3RoICE9PSB1bmRlZmluZWQgPyB0aGlzLm1heExlbmd0aCA6IG51bGw7XG4gIH1cblxuICBvbklucHV0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5sb2NrKSB7XG4gICAgICB0aGlzLmZvdW5kYXRpb24uZW1pdENoYW5nZSgpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ29tcG9zaXRpb25TdGFydCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2sgPSB0cnVlO1xuICB9XG5cbiAgb25Db21wb3NpdGlvbkVuZCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2sgPSBmYWxzZTtcbiAgICB0aGlzLmZvdW5kYXRpb24uZW1pdENoYW5nZSgpO1xuICB9XG5cbiAgb25LZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5mb3VuZGF0aW9uLm9uS2V5ZG93bihldmVudCk7XG4gIH1cblxuICBjbGVhcklucHV0KCk6IHZvaWQge1xuICAgIHRoaXMuZm91bmRhdGlvbi5jbGVhcklucHV0KCk7XG4gIH1cblxuICBnZXRJbnB1dCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlucHV0VmFsdWU7XG4gIH1cblxuICAvLyDlpITnkIZidXR0b27nu4Tku7bnmoTkuovku7ZcbiAgb25CdXR0b25TdWJtaXQodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc3VibWl0LmVtaXQodmFsdWUpO1xuICB9XG5cbiAgb25CdXR0b25DYW5jZWwoKTogdm9pZCB7XG4gICAgdGhpcy5jYW5jZWwuZW1pdCgpO1xuICB9XG5cbiAgb25CdXR0b25DaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuZm91bmRhdGlvbi5lbWl0Q2hhbmdlKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMuYXV0b2ZvY3VzICYmIHRoaXMudGV4dGFyZWFFbGVtZW50ICYmICF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAvLyDlnKjkuIvkuIDkuKrlj5jmm7Tmo4DmtYvlkajmnJ/kuK3ogZrnhKbvvIzku6Xnoa7kv53op4blm77lt7Lnu4/lrozlhajliJ3lp4vljJZcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnRleHRhcmVhRWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBnZXQgcGxhY2Vob2xkZXJUZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZm91bmRhdGlvbi5nZXRQbGFjZWhvbGRlclRleHQoKTtcbiAgfVxuXG4gIG9uRm9jdXMoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICB0aGlzLmZvY3VzLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgb25CbHVyKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgdGhpcy5ibHVyLmVtaXQoZXZlbnQpO1xuICB9XG59XG4iLCI8ZGl2IFtuZ0NsYXNzXT1cImlucHV0Q2xhc3Nlc1wiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGVhZFRlbXBsYXRlOyB0aGVuIGhlYWRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuXG4gIDxkaXYgY2xhc3M9XCJtYy1pbnB1dC1jb250ZW50XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInByZWZpeFRlbXBsYXRlOyB0aGVuIHByZWZpeFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG5cbiAgICA8dGV4dGFyZWFcbiAgICAgICN0ZXh0YXJlYVxuICAgICAgWyhuZ01vZGVsKV09XCJpbnB1dFZhbHVlXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclRleHRcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFttYXhsZW5ndGhdPVwibWF4TGVuZ3RoXCJcbiAgICAgIGNsYXNzPVwibWMtdGV4dGFyZWFcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAnbWMtdGV4dGFyZWEtc2ltcGxlJzogZGlzcGxheVR5cGUgPT09ICdzaW1wbGUnLFxuICAgICAgICAnbWMtdGV4dGFyZWEtZGlzYWJsZWQnOiBkaXNhYmxlZFxuICAgICAgfVwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidJbnB1dC5hcmlhTGFiZWwnIHwgdHJhbnNsYXRlXCJcbiAgICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgKGlucHV0KT1cIm9uSW5wdXQoKVwiXG4gICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudClcIlxuICAgICAgKGNvbXBvc2l0aW9uc3RhcnQpPVwib25Db21wb3NpdGlvblN0YXJ0KClcIlxuICAgICAgKGNvbXBvc2l0aW9uZW5kKT1cIm9uQ29tcG9zaXRpb25FbmQoKVwiXG4gICAgICAoa2V5ZG93bik9XCJvbktleWRvd24oJGV2ZW50KVwiXG4gICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcbiAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcbiAgICA+PC90ZXh0YXJlYT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3VmZml4VGVtcGxhdGU7IHRoZW4gc3VmZml4VGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkaXNwbGF5VHlwZSA9PT0gJ3NpbXBsZSdcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJidXR0b25UZW1wbGF0ZTsgZWxzZSBkZWZhdWx0QnV0dG9uXCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdJZj1cImJ1dHRvblRlbXBsYXRlOyB0aGVuIGJ1dHRvblRlbXBsYXRlXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRCdXR0b24+XG4gICAgICAgIDxtYy1idXR0b25cbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgKCFsb2FkaW5nICYmICFpbnB1dFZhbHVlKVwiXG4gICAgICAgICAgW2xvYWRpbmddPVwibG9hZGluZ1wiXG4gICAgICAgICAgW2lucHV0VmFsdWVdPVwiaW5wdXRWYWx1ZVwiXG4gICAgICAgICAgW3NlbmRCdG5WYXJpYW50XT1cInNlbmRCdG5WYXJpYW50XCJcbiAgICAgICAgICAoc3VibWl0KT1cIm9uQnV0dG9uU3VibWl0KCRldmVudClcIlxuICAgICAgICAgIChjYW5jZWwpPVwib25CdXR0b25DYW5jZWwoKVwiXG4gICAgICAgICAgKGNoYW5nZSk9XCJvbkJ1dHRvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgPjwvbWMtYnV0dG9uPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG5cbiAgPGRpdiAqbmdJZj1cImRpc3BsYXlUeXBlID09PSAnZnVsbCdcIiBjbGFzcz1cIm1jLWlucHV0LWZvb3RcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWMtaW5wdXQtZm9vdC1sZWZ0XCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZXh0cmFUZW1wbGF0ZTsgdGhlbiBleHRyYVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8c3BhbiAqbmdJZj1cInNob3dDb3VudFwiIGlkPVwibWMtaW5wdXQtY291bnRcIiBjbGFzcz1cIm1jLWlucHV0LWZvb3QtY291bnRcIj5cbiAgICAgICAge3sgaW5wdXRWYWx1ZS5sZW5ndGggfX17eyAhbWF4TGVuZ3RoID8gXCJcIiA6IFwiL1wiICsgbWF4TGVuZ3RoIH19XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYnV0dG9uVGVtcGxhdGU7IGVsc2UgZGVmYXVsdEZvb3RlckJ1dHRvblwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJ1dHRvblRlbXBsYXRlOyB0aGVuIGJ1dHRvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Rm9vdGVyQnV0dG9uPlxuICAgICAgPG1jLWJ1dHRvblxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgKCFsb2FkaW5nICYmICFpbnB1dFZhbHVlKVwiXG4gICAgICAgIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxuICAgICAgICBbaW5wdXRWYWx1ZV09XCJpbnB1dFZhbHVlXCJcbiAgICAgICAgW3NlbmRCdG5WYXJpYW50XT1cInNlbmRCdG5WYXJpYW50XCJcbiAgICAgICAgKHN1Ym1pdCk9XCJvbkJ1dHRvblN1Ym1pdCgkZXZlbnQpXCJcbiAgICAgICAgKGNhbmNlbCk9XCJvbkJ1dHRvbkNhbmNlbCgpXCJcbiAgICAgICAgKGNoYW5nZSk9XCJvbkJ1dHRvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgID48L21jLWJ1dHRvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { InputComponent } from './input.component';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { FormsModule } from '@angular/forms';
|
|
5
|
+
import { ButtonComponent } from './button/button.component';
|
|
6
|
+
import { SendIconComponent } from './send-icon/send-icon.component';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class InputModule {
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: InputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: InputModule, imports: [CommonModule,
|
|
11
|
+
FormsModule,
|
|
12
|
+
ButtonComponent,
|
|
13
|
+
SendIconComponent,
|
|
14
|
+
InputComponent], exports: [InputComponent] }); }
|
|
15
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: InputModule, imports: [CommonModule,
|
|
16
|
+
FormsModule,
|
|
17
|
+
ButtonComponent,
|
|
18
|
+
InputComponent] }); }
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: InputModule, decorators: [{
|
|
21
|
+
type: NgModule,
|
|
22
|
+
args: [{
|
|
23
|
+
declarations: [],
|
|
24
|
+
imports: [
|
|
25
|
+
CommonModule,
|
|
26
|
+
FormsModule,
|
|
27
|
+
ButtonComponent,
|
|
28
|
+
SendIconComponent,
|
|
29
|
+
InputComponent
|
|
30
|
+
],
|
|
31
|
+
exports: [InputComponent],
|
|
32
|
+
}]
|
|
33
|
+
}] });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy1uZy9zcmMvSW5wdXQvaW5wdXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQWFwRSxNQUFNLE9BQU8sV0FBVzs4R0FBWCxXQUFXOytHQUFYLFdBQVcsWUFScEIsWUFBWTtZQUNaLFdBQVc7WUFDWCxlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLGNBQWMsYUFFTixjQUFjOytHQUViLFdBQVcsWUFScEIsWUFBWTtZQUNaLFdBQVc7WUFDWCxlQUFlO1lBRWYsY0FBYzs7MkZBSUwsV0FBVztrQkFYdkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsY0FBYztxQkFDZjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZW5kSWNvbkNvbXBvbmVudCB9IGZyb20gJy4vc2VuZC1pY29uL3NlbmQtaWNvbi5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBTZW5kSWNvbkNvbXBvbmVudCxcbiAgICBJbnB1dENvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbSW5wdXRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dE1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class SendIconComponent {
|
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SendIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: SendIconComponent, isStandalone: true, selector: "mc-send-icon", ngImport: i0, template: "<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n>\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <path\n d=\"M13.5105149,2.56164948 C14.1211149,2.35546948 14.7829149,2.68328948 14.9892149,3.29376948 C15.0349149,3.42925948 15.0552149,3.57159948 15.0495149,3.71368948 L15.0495149,3.71368948 L15.0351149,3.85546948 L13.6575149,12.2717195 C13.5237149,13.0892195 12.7524149,13.6435195 11.9348149,13.5097195 C11.8542149,13.4965195 11.7751149,13.4768195 11.6980149,13.4508195 L11.6980149,13.4508195 L11.5840149,13.4071195 L9.3049349,12.4260195 L8.4482449,13.5422195 C8.1958049,13.8708195 7.8205549,14.0786195 7.4128449,14.1207195 L7.4128449,14.1207195 L7.2585449,14.1286195 C6.4787649,14.1286195 5.8381349,13.5337195 5.7653849,12.7731195 L5.7653849,12.7731195 L5.7585449,12.6286195 L5.7602549,10.5258195 L5.7756349,10.4384195 L5.7944349,10.3824195 L5.8266649,10.3168995 L5.8735349,10.2503695 L5.9177249,10.2039195 L12.6909149,3.89392948 L2.3403349,7.38903948 C2.2329149,7.42529948 2.1418449,7.49676948 2.0808149,7.59063948 L2.0808149,7.59063948 L2.0412649,7.66497948 C1.9440949,7.89044948 2.0258749,8.14788948 2.2236349,8.27917948 L2.2236349,8.27917948 L2.3029749,8.32214948 L4.4799849,9.26177948 C4.7333949,9.37121948 4.8503449,9.66546948 4.7409649,9.91894948 C4.6435549,10.1443495 4.4003949,10.2616595 4.1694349,10.2081295 L4.1694349,10.2081295 L4.0837449,10.1798795 L1.9072249,9.24047948 C1.1462449,8.91284948 0.795166898,8.03039948 1.1225549,7.26953948 C1.2700249,6.92755948 1.5380849,6.65435948 1.8730449,6.50018948 L1.8730449,6.50018948 L2.0205049,6.44158948 Z M6.7578149,11.3299195 L6.7585449,12.6286195 L6.7666013,12.7185103 C6.80894095,12.9517898 7.0131049,13.1286195 7.2585449,13.1286195 C7.3828149,13.1286195 7.5014649,13.0824195 7.5925349,13.0008195 L7.5925349,13.0008195 L7.6550349,12.9332195 L8.3569349,12.0179195 L6.7578149,11.3299195 Z M13.9888149,4.05090948 L7.1599149,10.4129195 L11.9795149,12.4886195 C11.9980149,12.4966195 12.0173149,12.5035195 12.0369149,12.5093195 L12.0369149,12.5093195 L12.0964149,12.5228195 C12.3386149,12.5624195 12.5686149,12.4209195 12.6482149,12.1975195 L12.6482149,12.1975195 L12.6706149,12.1101195 L13.9888149,4.05090948 Z\"\n ></path>\n </g>\n</svg>\n", styles: [":host{display:contents}:host svg{margin-right:4px}\n"] }); }
|
|
6
|
+
}
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SendIconComponent, decorators: [{
|
|
8
|
+
type: Component,
|
|
9
|
+
args: [{ selector: 'mc-send-icon', standalone: true, template: "<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n>\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <path\n d=\"M13.5105149,2.56164948 C14.1211149,2.35546948 14.7829149,2.68328948 14.9892149,3.29376948 C15.0349149,3.42925948 15.0552149,3.57159948 15.0495149,3.71368948 L15.0495149,3.71368948 L15.0351149,3.85546948 L13.6575149,12.2717195 C13.5237149,13.0892195 12.7524149,13.6435195 11.9348149,13.5097195 C11.8542149,13.4965195 11.7751149,13.4768195 11.6980149,13.4508195 L11.6980149,13.4508195 L11.5840149,13.4071195 L9.3049349,12.4260195 L8.4482449,13.5422195 C8.1958049,13.8708195 7.8205549,14.0786195 7.4128449,14.1207195 L7.4128449,14.1207195 L7.2585449,14.1286195 C6.4787649,14.1286195 5.8381349,13.5337195 5.7653849,12.7731195 L5.7653849,12.7731195 L5.7585449,12.6286195 L5.7602549,10.5258195 L5.7756349,10.4384195 L5.7944349,10.3824195 L5.8266649,10.3168995 L5.8735349,10.2503695 L5.9177249,10.2039195 L12.6909149,3.89392948 L2.3403349,7.38903948 C2.2329149,7.42529948 2.1418449,7.49676948 2.0808149,7.59063948 L2.0808149,7.59063948 L2.0412649,7.66497948 C1.9440949,7.89044948 2.0258749,8.14788948 2.2236349,8.27917948 L2.2236349,8.27917948 L2.3029749,8.32214948 L4.4799849,9.26177948 C4.7333949,9.37121948 4.8503449,9.66546948 4.7409649,9.91894948 C4.6435549,10.1443495 4.4003949,10.2616595 4.1694349,10.2081295 L4.1694349,10.2081295 L4.0837449,10.1798795 L1.9072249,9.24047948 C1.1462449,8.91284948 0.795166898,8.03039948 1.1225549,7.26953948 C1.2700249,6.92755948 1.5380849,6.65435948 1.8730449,6.50018948 L1.8730449,6.50018948 L2.0205049,6.44158948 Z M6.7578149,11.3299195 L6.7585449,12.6286195 L6.7666013,12.7185103 C6.80894095,12.9517898 7.0131049,13.1286195 7.2585449,13.1286195 C7.3828149,13.1286195 7.5014649,13.0824195 7.5925349,13.0008195 L7.5925349,13.0008195 L7.6550349,12.9332195 L8.3569349,12.0179195 L6.7578149,11.3299195 Z M13.9888149,4.05090948 L7.1599149,10.4129195 L11.9795149,12.4886195 C11.9980149,12.4966195 12.0173149,12.5035195 12.0369149,12.5093195 L12.0369149,12.5093195 L12.0964149,12.5228195 C12.3386149,12.5624195 12.5686149,12.4209195 12.6482149,12.1975195 L12.6482149,12.1975195 L12.6706149,12.1101195 L13.9888149,4.05090948 Z\"\n ></path>\n </g>\n</svg>\n", styles: [":host{display:contents}:host svg{margin-right:4px}\n"] }]
|
|
10
|
+
}] });
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1pY29uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL0lucHV0L3NlbmQtaWNvbi9zZW5kLWljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy1uZy9zcmMvSW5wdXQvc2VuZC1pY29uL3NlbmQtaWNvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVExQyxNQUFNLE9BQU8saUJBQWlCOzhHQUFqQixpQkFBaUI7a0dBQWpCLGlCQUFpQix3RUNSOUIsK3dFQWFBOzsyRkRMYSxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBQ0UsY0FBYyxjQUNaLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWMtc2VuZC1pY29uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbmQtaWNvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlbmQtaWNvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlbmRJY29uQ29tcG9uZW50IHtcblxufSIsIjxzdmdcbiAgd2lkdGg9XCIxNnB4XCJcbiAgaGVpZ2h0PVwiMTZweFwiXG4gIHZpZXdCb3g9XCIwIDAgMTYgMTZcIlxuICB2ZXJzaW9uPVwiMS4xXCJcbiAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4+XG4gIDxnIHN0cm9rZT1cIm5vbmVcIiBzdHJva2Utd2lkdGg9XCIxXCIgZmlsbD1cIm5vbmVcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCI+XG4gICAgPHBhdGhcbiAgICAgIGQ9XCJNMTMuNTEwNTE0OSwyLjU2MTY0OTQ4IEMxNC4xMjExMTQ5LDIuMzU1NDY5NDggMTQuNzgyOTE0OSwyLjY4MzI4OTQ4IDE0Ljk4OTIxNDksMy4yOTM3Njk0OCBDMTUuMDM0OTE0OSwzLjQyOTI1OTQ4IDE1LjA1NTIxNDksMy41NzE1OTk0OCAxNS4wNDk1MTQ5LDMuNzEzNjg5NDggTDE1LjA0OTUxNDksMy43MTM2ODk0OCBMMTUuMDM1MTE0OSwzLjg1NTQ2OTQ4IEwxMy42NTc1MTQ5LDEyLjI3MTcxOTUgQzEzLjUyMzcxNDksMTMuMDg5MjE5NSAxMi43NTI0MTQ5LDEzLjY0MzUxOTUgMTEuOTM0ODE0OSwxMy41MDk3MTk1IEMxMS44NTQyMTQ5LDEzLjQ5NjUxOTUgMTEuNzc1MTE0OSwxMy40NzY4MTk1IDExLjY5ODAxNDksMTMuNDUwODE5NSBMMTEuNjk4MDE0OSwxMy40NTA4MTk1IEwxMS41ODQwMTQ5LDEzLjQwNzExOTUgTDkuMzA0OTM0OSwxMi40MjYwMTk1IEw4LjQ0ODI0NDksMTMuNTQyMjE5NSBDOC4xOTU4MDQ5LDEzLjg3MDgxOTUgNy44MjA1NTQ5LDE0LjA3ODYxOTUgNy40MTI4NDQ5LDE0LjEyMDcxOTUgTDcuNDEyODQ0OSwxNC4xMjA3MTk1IEw3LjI1ODU0NDksMTQuMTI4NjE5NSBDNi40Nzg3NjQ5LDE0LjEyODYxOTUgNS44MzgxMzQ5LDEzLjUzMzcxOTUgNS43NjUzODQ5LDEyLjc3MzExOTUgTDUuNzY1Mzg0OSwxMi43NzMxMTk1IEw1Ljc1ODU0NDksMTIuNjI4NjE5NSBMNS43NjAyNTQ5LDEwLjUyNTgxOTUgTDUuNzc1NjM0OSwxMC40Mzg0MTk1IEw1Ljc5NDQzNDksMTAuMzgyNDE5NSBMNS44MjY2NjQ5LDEwLjMxNjg5OTUgTDUuODczNTM0OSwxMC4yNTAzNjk1IEw1LjkxNzcyNDksMTAuMjAzOTE5NSBMMTIuNjkwOTE0OSwzLjg5MzkyOTQ4IEwyLjM0MDMzNDksNy4zODkwMzk0OCBDMi4yMzI5MTQ5LDcuNDI1Mjk5NDggMi4xNDE4NDQ5LDcuNDk2NzY5NDggMi4wODA4MTQ5LDcuNTkwNjM5NDggTDIuMDgwODE0OSw3LjU5MDYzOTQ4IEwyLjA0MTI2NDksNy42NjQ5Nzk0OCBDMS45NDQwOTQ5LDcuODkwNDQ5NDggMi4wMjU4NzQ5LDguMTQ3ODg5NDggMi4yMjM2MzQ5LDguMjc5MTc5NDggTDIuMjIzNjM0OSw4LjI3OTE3OTQ4IEwyLjMwMjk3NDksOC4zMjIxNDk0OCBMNC40Nzk5ODQ5LDkuMjYxNzc5NDggQzQuNzMzMzk0OSw5LjM3MTIxOTQ4IDQuODUwMzQ0OSw5LjY2NTQ2OTQ4IDQuNzQwOTY0OSw5LjkxODk0OTQ4IEM0LjY0MzU1NDksMTAuMTQ0MzQ5NSA0LjQwMDM5NDksMTAuMjYxNjU5NSA0LjE2OTQzNDksMTAuMjA4MTI5NSBMNC4xNjk0MzQ5LDEwLjIwODEyOTUgTDQuMDgzNzQ0OSwxMC4xNzk4Nzk1IEwxLjkwNzIyNDksOS4yNDA0Nzk0OCBDMS4xNDYyNDQ5LDguOTEyODQ5NDggMC43OTUxNjY4OTgsOC4wMzAzOTk0OCAxLjEyMjU1NDksNy4yNjk1Mzk0OCBDMS4yNzAwMjQ5LDYuOTI3NTU5NDggMS41MzgwODQ5LDYuNjU0MzU5NDggMS44NzMwNDQ5LDYuNTAwMTg5NDggTDEuODczMDQ0OSw2LjUwMDE4OTQ4IEwyLjAyMDUwNDksNi40NDE1ODk0OCBaIE02Ljc1NzgxNDksMTEuMzI5OTE5NSBMNi43NTg1NDQ5LDEyLjYyODYxOTUgTDYuNzY2NjAxMywxMi43MTg1MTAzIEM2LjgwODk0MDk1LDEyLjk1MTc4OTggNy4wMTMxMDQ5LDEzLjEyODYxOTUgNy4yNTg1NDQ5LDEzLjEyODYxOTUgQzcuMzgyODE0OSwxMy4xMjg2MTk1IDcuNTAxNDY0OSwxMy4wODI0MTk1IDcuNTkyNTM0OSwxMy4wMDA4MTk1IEw3LjU5MjUzNDksMTMuMDAwODE5NSBMNy42NTUwMzQ5LDEyLjkzMzIxOTUgTDguMzU2OTM0OSwxMi4wMTc5MTk1IEw2Ljc1NzgxNDksMTEuMzI5OTE5NSBaIE0xMy45ODg4MTQ5LDQuMDUwOTA5NDggTDcuMTU5OTE0OSwxMC40MTI5MTk1IEwxMS45Nzk1MTQ5LDEyLjQ4ODYxOTUgQzExLjk5ODAxNDksMTIuNDk2NjE5NSAxMi4wMTczMTQ5LDEyLjUwMzUxOTUgMTIuMDM2OTE0OSwxMi41MDkzMTk1IEwxMi4wMzY5MTQ5LDEyLjUwOTMxOTUgTDEyLjA5NjQxNDksMTIuNTIyODE5NSBDMTIuMzM4NjE0OSwxMi41NjI0MTk1IDEyLjU2ODYxNDksMTIuNDIwOTE5NSAxMi42NDgyMTQ5LDEyLjE5NzUxOTUgTDEyLjY0ODIxNDksMTIuMTk3NTE5NSBMMTIuNjcwNjE0OSwxMi4xMTAxMTk1IEwxMy45ODg4MTQ5LDQuMDUwOTA5NDggWlwiXG4gICAgPjwvcGF0aD5cbiAgPC9nPlxuPC9zdmc+XG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// 导出Locale服务
|
|
2
|
+
import { LocaleService } from './locale.service';
|
|
3
|
+
import { LocaleModule } from './locale.module';
|
|
4
|
+
import { TranslatePipe } from './translate.pipe';
|
|
5
|
+
export { LocaleService, LocaleModule, TranslatePipe };
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9Mb2NhbGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsYUFBYTtBQUNiLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBS2pELE9BQU8sRUFDTCxhQUFhLEVBQ2IsWUFBWSxFQUNaLGFBQWEsRUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8g5a+85Ye6TG9jYWxl5pyN5YqhXG5pbXBvcnQgeyBMb2NhbGVTZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbGUuc2VydmljZSc7XG5pbXBvcnQgeyBMb2NhbGVNb2R1bGUgfSBmcm9tICcuL2xvY2FsZS5tb2R1bGUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gJy4vdHJhbnNsYXRlLnBpcGUnO1xuXG4vLyDph43mlrDlr7zlh7rnsbvlnotcbmV4cG9ydCB0eXBlIHsgTGFuZ3VhZ2VDb2RlLCBMb2NhbGVEYXRhIH0gZnJvbSAnLi9sb2NhbGUuc2VydmljZSc7XG5cbmV4cG9ydCB7XG4gIExvY2FsZVNlcnZpY2UsXG4gIExvY2FsZU1vZHVsZSxcbiAgVHJhbnNsYXRlUGlwZVxufTsiXX0=
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { LocaleService } from './locale.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class LocaleModule {
|
|
5
|
+
/**
|
|
6
|
+
* 静态方法,用于配置模块并提供服务
|
|
7
|
+
* 可以在AppModule中使用LocaleModule.forRoot()来初始化
|
|
8
|
+
*/
|
|
9
|
+
static forRoot() {
|
|
10
|
+
return {
|
|
11
|
+
ngModule: LocaleModule,
|
|
12
|
+
providers: [
|
|
13
|
+
LocaleService
|
|
14
|
+
]
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* 普通导入方法,用于特性模块中导入
|
|
19
|
+
* 避免服务被多次实例化
|
|
20
|
+
*/
|
|
21
|
+
static forChild() {
|
|
22
|
+
return {
|
|
23
|
+
ngModule: LocaleModule,
|
|
24
|
+
providers: [] // 子模块不提供服务实例
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LocaleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
28
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: LocaleModule }); }
|
|
29
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LocaleModule }); }
|
|
30
|
+
}
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LocaleModule, decorators: [{
|
|
32
|
+
type: NgModule,
|
|
33
|
+
args: [{
|
|
34
|
+
declarations: [],
|
|
35
|
+
imports: [],
|
|
36
|
+
exports: []
|
|
37
|
+
}]
|
|
38
|
+
}] });
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL0xvY2FsZS9sb2NhbGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPakQsTUFBTSxPQUFPLFlBQVk7SUFDdkI7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLFlBQVk7WUFDdEIsU0FBUyxFQUFFO2dCQUNULGFBQWE7YUFDZDtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLFFBQVE7UUFDYixPQUFPO1lBQ0wsUUFBUSxFQUFFLFlBQVk7WUFDdEIsU0FBUyxFQUFFLEVBQUUsQ0FBQyxhQUFhO1NBQzVCLENBQUM7SUFDSixDQUFDOzhHQXZCVSxZQUFZOytHQUFaLFlBQVk7K0dBQVosWUFBWTs7MkZBQVosWUFBWTtrQkFMeEIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9jYWxlU2VydmljZSB9IGZyb20gJy4vbG9jYWxlLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBpbXBvcnRzOiBbXSxcbiAgZXhwb3J0czogW11cbn0pXG5leHBvcnQgY2xhc3MgTG9jYWxlTW9kdWxlIHtcbiAgLyoqXG4gICAqIOmdmeaAgeaWueazle+8jOeUqOS6jumFjee9ruaooeWdl+W5tuaPkOS+m+acjeWKoVxuICAgKiDlj6/ku6XlnKhBcHBNb2R1bGXkuK3kvb/nlKhMb2NhbGVNb2R1bGUuZm9yUm9vdCgp5p2l5Yid5aeL5YyWXG4gICAqL1xuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPExvY2FsZU1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTG9jYWxlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIExvY2FsZVNlcnZpY2VcbiAgICAgIF1cbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIOaZrumAmuWvvOWFpeaWueazle+8jOeUqOS6jueJueaAp+aooeWdl+S4reWvvOWFpVxuICAgKiDpgb/lhY3mnI3liqHooqvlpJrmrKHlrp7kvovljJZcbiAgICovXG4gIHN0YXRpYyBmb3JDaGlsZCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPExvY2FsZU1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTG9jYWxlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXSAvLyDlrZDmqKHlnZfkuI3mj5DkvpvmnI3liqHlrp7kvotcbiAgICB9O1xuICB9XG59Il19
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class LocaleService {
|
|
5
|
+
constructor() {
|
|
6
|
+
// 当前语言
|
|
7
|
+
this._currentLanguage = 'zh-cn';
|
|
8
|
+
// 语言包存储
|
|
9
|
+
this._localeData = new Map();
|
|
10
|
+
// 语言变更通知
|
|
11
|
+
this._languageChange = new Subject();
|
|
12
|
+
// 公开语言变更Observable
|
|
13
|
+
this.languageChange$ = this._languageChange.asObservable();
|
|
14
|
+
// 首先尝试从localStorage获取语言设置
|
|
15
|
+
const savedLang = localStorage.getItem('lang');
|
|
16
|
+
if (savedLang) {
|
|
17
|
+
this._currentLanguage = savedLang;
|
|
18
|
+
}
|
|
19
|
+
// 初始化默认语言包
|
|
20
|
+
this.loadDefaultLocales();
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* 加载默认语言包
|
|
24
|
+
*/
|
|
25
|
+
async loadDefaultLocales() {
|
|
26
|
+
try {
|
|
27
|
+
// 动态导入默认语言包
|
|
28
|
+
const zhCN = await import('../components-common/Locale/lang/zh-cn');
|
|
29
|
+
const enUS = await import('../components-common/Locale/lang/en-us');
|
|
30
|
+
this._localeData.set('zh-cn', zhCN.default);
|
|
31
|
+
this._localeData.set('en-us', enUS.default);
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
console.error('Failed to load default locales:', error);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* 设置当前语言
|
|
39
|
+
*/
|
|
40
|
+
setLanguage(language) {
|
|
41
|
+
if (this._currentLanguage !== language) {
|
|
42
|
+
this._currentLanguage = language;
|
|
43
|
+
// 保存到localStorage
|
|
44
|
+
localStorage.setItem('lang', language);
|
|
45
|
+
this._languageChange.next(language);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* 获取当前语言
|
|
50
|
+
*/
|
|
51
|
+
getLanguage() {
|
|
52
|
+
return this._currentLanguage;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* 翻译文本
|
|
56
|
+
* @param key 翻译键,支持嵌套路径如 'Input.send'
|
|
57
|
+
* @param params 替换参数
|
|
58
|
+
*/
|
|
59
|
+
translate(key, params) {
|
|
60
|
+
if (!key)
|
|
61
|
+
return key;
|
|
62
|
+
// 获取当前语言的语言包
|
|
63
|
+
const localeData = this._localeData.get(this._currentLanguage) || {};
|
|
64
|
+
// 解析嵌套键
|
|
65
|
+
const keys = key.split('.');
|
|
66
|
+
let value = localeData;
|
|
67
|
+
for (const k of keys) {
|
|
68
|
+
if (value && typeof value === 'object' && k in value) {
|
|
69
|
+
value = value[k];
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
// 如果键不存在,返回原始键
|
|
73
|
+
return key;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// 处理替换参数
|
|
77
|
+
if (typeof value === 'string' && params) {
|
|
78
|
+
let result = value;
|
|
79
|
+
for (const [paramKey, paramValue] of Object.entries(params)) {
|
|
80
|
+
const regex = new RegExp(`\\{${paramKey}\\}`, 'g');
|
|
81
|
+
result = result.replace(regex, String(paramValue));
|
|
82
|
+
}
|
|
83
|
+
return result;
|
|
84
|
+
}
|
|
85
|
+
return value;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* 添加新的语言
|
|
89
|
+
*/
|
|
90
|
+
addLanguage(language, localeData) {
|
|
91
|
+
this._localeData.set(language, localeData);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* 覆盖现有语言的部分翻译
|
|
95
|
+
*/
|
|
96
|
+
overrideLocale(language, localeData) {
|
|
97
|
+
if (this._localeData.has(language)) {
|
|
98
|
+
const existingLocale = this._localeData.get(language) || {};
|
|
99
|
+
// 深度合并语言包
|
|
100
|
+
const mergedLocale = this.deepMerge(existingLocale, localeData);
|
|
101
|
+
this._localeData.set(language, mergedLocale);
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
// 如果语言不存在,则添加新语言
|
|
105
|
+
this.addLanguage(language, localeData);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* 获取所有支持的语言
|
|
110
|
+
*/
|
|
111
|
+
getSupportedLanguages() {
|
|
112
|
+
return Array.from(this._localeData.keys());
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* 深度合并对象
|
|
116
|
+
*/
|
|
117
|
+
deepMerge(target, source) {
|
|
118
|
+
const result = { ...target };
|
|
119
|
+
for (const key in source) {
|
|
120
|
+
if (source.hasOwnProperty(key)) {
|
|
121
|
+
if (source[key] instanceof Object && key in target) {
|
|
122
|
+
result[key] = this.deepMerge(target[key], source[key]);
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
result[key] = source[key];
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
return result;
|
|
130
|
+
}
|
|
131
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LocaleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
132
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LocaleService, providedIn: 'root' }); }
|
|
133
|
+
}
|
|
134
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LocaleService, decorators: [{
|
|
135
|
+
type: Injectable,
|
|
136
|
+
args: [{
|
|
137
|
+
providedIn: 'root'
|
|
138
|
+
}]
|
|
139
|
+
}], ctorParameters: () => [] });
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9Mb2NhbGUvbG9jYWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQWEvQixNQUFNLE9BQU8sYUFBYTtJQVV4QjtRQVRBLE9BQU87UUFDQyxxQkFBZ0IsR0FBaUIsT0FBTyxDQUFDO1FBQ2pELFFBQVE7UUFDQSxnQkFBVyxHQUFrQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQy9ELFNBQVM7UUFDRCxvQkFBZSxHQUFHLElBQUksT0FBTyxFQUFnQixDQUFDO1FBQ3RELG1CQUFtQjtRQUNuQixvQkFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLENBQUM7UUFHcEQsMEJBQTBCO1FBQzFCLE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0MsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxTQUFTLENBQUM7UUFDcEMsQ0FBQztRQUVELFdBQVc7UUFDWCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSyxLQUFLLENBQUMsa0JBQWtCO1FBQzlCLElBQUksQ0FBQztZQUNILFlBQVk7WUFDWixNQUFNLElBQUksR0FBRyxNQUFNLE1BQU0sQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1lBQ3BFLE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxDQUFDLHdDQUF3QyxDQUFDLENBQUM7WUFFcEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMxRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVyxDQUFDLFFBQXNCO1FBQ2hDLElBQUksSUFBSSxDQUFDLGdCQUFnQixLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUM7WUFDakMsa0JBQWtCO1lBQ2xCLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxTQUFTLENBQUMsR0FBVyxFQUFFLE1BQTJDO1FBQ2hFLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxHQUFHLENBQUM7UUFFckIsYUFBYTtRQUNiLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVyRSxRQUFRO1FBQ1IsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssR0FBUSxVQUFVLENBQUM7UUFFNUIsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNyQixJQUFJLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUNyRCxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ25CLENBQUM7aUJBQU0sQ0FBQztnQkFDTixlQUFlO2dCQUNmLE9BQU8sR0FBRyxDQUFDO1lBQ2IsQ0FBQztRQUNILENBQUM7UUFFRCxTQUFTO1FBQ1QsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksTUFBTSxFQUFFLENBQUM7WUFDeEMsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ25CLEtBQUssTUFBTSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQzVELE1BQU0sS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE1BQU0sUUFBUSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ25ELE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztZQUNyRCxDQUFDO1lBQ0QsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUVELE9BQU8sS0FBZSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVcsQ0FBQyxRQUFzQixFQUFFLFVBQXNCO1FBQ3hELElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxjQUFjLENBQUMsUUFBc0IsRUFBRSxVQUFzQjtRQUMzRCxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDbkMsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQzVELFVBQVU7WUFDVixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDL0MsQ0FBQzthQUFNLENBQUM7WUFDTixpQkFBaUI7WUFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDekMsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILHFCQUFxQjtRQUNuQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNLLFNBQVMsQ0FBQyxNQUFXLEVBQUUsTUFBVztRQUN4QyxNQUFNLE1BQU0sR0FBRyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFFN0IsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUN6QixJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLFlBQVksTUFBTSxJQUFJLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQztvQkFDbkQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUN6RCxDQUFDO3FCQUFNLENBQUM7b0JBQ04sTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDNUIsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs4R0EzSVUsYUFBYTtrSEFBYixhQUFhLGNBRlosTUFBTTs7MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbi8vIOWumuS5ieivreiogOWMheaOpeWPo1xuZXhwb3J0IGludGVyZmFjZSBMb2NhbGVEYXRhIHtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG4vLyDlrprkuYnmlK/mjIHnmoTor63oqIDnsbvlnotcbmV4cG9ydCB0eXBlIExhbmd1YWdlQ29kZSA9ICd6aC1jbicgfCAnZW4tdXMnIHwgc3RyaW5nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBMb2NhbGVTZXJ2aWNlIHtcbiAgLy8g5b2T5YmN6K+t6KiAXG4gIHByaXZhdGUgX2N1cnJlbnRMYW5ndWFnZTogTGFuZ3VhZ2VDb2RlID0gJ3poLWNuJztcbiAgLy8g6K+t6KiA5YyF5a2Y5YKoXG4gIHByaXZhdGUgX2xvY2FsZURhdGE6IE1hcDxMYW5ndWFnZUNvZGUsIExvY2FsZURhdGE+ID0gbmV3IE1hcCgpO1xuICAvLyDor63oqIDlj5jmm7TpgJrnn6VcbiAgcHJpdmF0ZSBfbGFuZ3VhZ2VDaGFuZ2UgPSBuZXcgU3ViamVjdDxMYW5ndWFnZUNvZGU+KCk7XG4gIC8vIOWFrOW8gOivreiogOWPmOabtE9ic2VydmFibGVcbiAgbGFuZ3VhZ2VDaGFuZ2UkID0gdGhpcy5fbGFuZ3VhZ2VDaGFuZ2UuYXNPYnNlcnZhYmxlKCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgLy8g6aaW5YWI5bCd6K+V5LuObG9jYWxTdG9yYWdl6I635Y+W6K+t6KiA6K6+572uXG4gICAgY29uc3Qgc2F2ZWRMYW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmcnKTtcbiAgICBpZiAoc2F2ZWRMYW5nKSB7XG4gICAgICB0aGlzLl9jdXJyZW50TGFuZ3VhZ2UgPSBzYXZlZExhbmc7XG4gICAgfVxuICAgIFxuICAgIC8vIOWIneWni+WMlum7mOiupOivreiogOWMhVxuICAgIHRoaXMubG9hZERlZmF1bHRMb2NhbGVzKCk7XG4gIH1cblxuICAvKipcbiAgICog5Yqg6L296buY6K6k6K+t6KiA5YyFXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGxvYWREZWZhdWx0TG9jYWxlcygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgLy8g5Yqo5oCB5a+85YWl6buY6K6k6K+t6KiA5YyFXG4gICAgICBjb25zdCB6aENOID0gYXdhaXQgaW1wb3J0KCcuLi9jb21wb25lbnRzLWNvbW1vbi9Mb2NhbGUvbGFuZy96aC1jbicpO1xuICAgICAgY29uc3QgZW5VUyA9IGF3YWl0IGltcG9ydCgnLi4vY29tcG9uZW50cy1jb21tb24vTG9jYWxlL2xhbmcvZW4tdXMnKTtcbiAgICAgIFxuICAgICAgdGhpcy5fbG9jYWxlRGF0YS5zZXQoJ3poLWNuJywgemhDTi5kZWZhdWx0KTtcbiAgICAgIHRoaXMuX2xvY2FsZURhdGEuc2V0KCdlbi11cycsIGVuVVMuZGVmYXVsdCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIGRlZmF1bHQgbG9jYWxlczonLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIOiuvue9ruW9k+WJjeivreiogFxuICAgKi9cbiAgc2V0TGFuZ3VhZ2UobGFuZ3VhZ2U6IExhbmd1YWdlQ29kZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9jdXJyZW50TGFuZ3VhZ2UgIT09IGxhbmd1YWdlKSB7XG4gICAgICB0aGlzLl9jdXJyZW50TGFuZ3VhZ2UgPSBsYW5ndWFnZTtcbiAgICAgIC8vIOS/neWtmOWIsGxvY2FsU3RvcmFnZVxuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2xhbmcnLCBsYW5ndWFnZSk7XG4gICAgICB0aGlzLl9sYW5ndWFnZUNoYW5nZS5uZXh0KGxhbmd1YWdlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICog6I635Y+W5b2T5YmN6K+t6KiAXG4gICAqL1xuICBnZXRMYW5ndWFnZSgpOiBMYW5ndWFnZUNvZGUge1xuICAgIHJldHVybiB0aGlzLl9jdXJyZW50TGFuZ3VhZ2U7XG4gIH1cblxuICAvKipcbiAgICog57+76K+R5paH5pysXG4gICAqIEBwYXJhbSBrZXkg57+76K+R6ZSu77yM5pSv5oyB5bWM5aWX6Lev5b6E5aaCICdJbnB1dC5zZW5kJ1xuICAgKiBAcGFyYW0gcGFyYW1zIOabv+aNouWPguaVsFxuICAgKi9cbiAgdHJhbnNsYXRlKGtleTogc3RyaW5nLCBwYXJhbXM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB9KTogc3RyaW5nIHtcbiAgICBpZiAoIWtleSkgcmV0dXJuIGtleTtcblxuICAgIC8vIOiOt+WPluW9k+WJjeivreiogOeahOivreiogOWMhVxuICAgIGNvbnN0IGxvY2FsZURhdGEgPSB0aGlzLl9sb2NhbGVEYXRhLmdldCh0aGlzLl9jdXJyZW50TGFuZ3VhZ2UpIHx8IHt9O1xuICAgIFxuICAgIC8vIOino+aekOW1jOWll+mUrlxuICAgIGNvbnN0IGtleXMgPSBrZXkuc3BsaXQoJy4nKTtcbiAgICBsZXQgdmFsdWU6IGFueSA9IGxvY2FsZURhdGE7XG4gICAgXG4gICAgZm9yIChjb25zdCBrIG9mIGtleXMpIHtcbiAgICAgIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIGsgaW4gdmFsdWUpIHtcbiAgICAgICAgdmFsdWUgPSB2YWx1ZVtrXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIOWmguaenOmUruS4jeWtmOWcqO+8jOi/lOWbnuWOn+Wni+mUrlxuICAgICAgICByZXR1cm4ga2V5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIOWkhOeQhuabv+aNouWPguaVsFxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHBhcmFtcykge1xuICAgICAgbGV0IHJlc3VsdCA9IHZhbHVlO1xuICAgICAgZm9yIChjb25zdCBbcGFyYW1LZXksIHBhcmFtVmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHBhcmFtcykpIHtcbiAgICAgICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKGBcXFxceyR7cGFyYW1LZXl9XFxcXH1gLCAnZycpO1xuICAgICAgICByZXN1bHQgPSByZXN1bHQucmVwbGFjZShyZWdleCwgU3RyaW5nKHBhcmFtVmFsdWUpKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlIGFzIHN0cmluZztcbiAgfVxuXG4gIC8qKlxuICAgKiDmt7vliqDmlrDnmoTor63oqIBcbiAgICovXG4gIGFkZExhbmd1YWdlKGxhbmd1YWdlOiBMYW5ndWFnZUNvZGUsIGxvY2FsZURhdGE6IExvY2FsZURhdGEpOiB2b2lkIHtcbiAgICB0aGlzLl9sb2NhbGVEYXRhLnNldChsYW5ndWFnZSwgbG9jYWxlRGF0YSk7XG4gIH1cblxuICAvKipcbiAgICog6KaG55uW546w5pyJ6K+t6KiA55qE6YOo5YiG57+76K+RXG4gICAqL1xuICBvdmVycmlkZUxvY2FsZShsYW5ndWFnZTogTGFuZ3VhZ2VDb2RlLCBsb2NhbGVEYXRhOiBMb2NhbGVEYXRhKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2xvY2FsZURhdGEuaGFzKGxhbmd1YWdlKSkge1xuICAgICAgY29uc3QgZXhpc3RpbmdMb2NhbGUgPSB0aGlzLl9sb2NhbGVEYXRhLmdldChsYW5ndWFnZSkgfHwge307XG4gICAgICAvLyDmt7HluqblkIjlubbor63oqIDljIVcbiAgICAgIGNvbnN0IG1lcmdlZExvY2FsZSA9IHRoaXMuZGVlcE1lcmdlKGV4aXN0aW5nTG9jYWxlLCBsb2NhbGVEYXRhKTtcbiAgICAgIHRoaXMuX2xvY2FsZURhdGEuc2V0KGxhbmd1YWdlLCBtZXJnZWRMb2NhbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyDlpoLmnpzor63oqIDkuI3lrZjlnKjvvIzliJnmt7vliqDmlrDor63oqIBcbiAgICAgIHRoaXMuYWRkTGFuZ3VhZ2UobGFuZ3VhZ2UsIGxvY2FsZURhdGEpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiDojrflj5bmiYDmnInmlK/mjIHnmoTor63oqIBcbiAgICovXG4gIGdldFN1cHBvcnRlZExhbmd1YWdlcygpOiBMYW5ndWFnZUNvZGVbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5fbG9jYWxlRGF0YS5rZXlzKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIOa3seW6puWQiOW5tuWvueixoVxuICAgKi9cbiAgcHJpdmF0ZSBkZWVwTWVyZ2UodGFyZ2V0OiBhbnksIHNvdXJjZTogYW55KTogYW55IHtcbiAgICBjb25zdCByZXN1bHQgPSB7IC4uLnRhcmdldCB9O1xuICAgIFxuICAgIGZvciAoY29uc3Qga2V5IGluIHNvdXJjZSkge1xuICAgICAgaWYgKHNvdXJjZS5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgIGlmIChzb3VyY2Vba2V5XSBpbnN0YW5jZW9mIE9iamVjdCAmJiBrZXkgaW4gdGFyZ2V0KSB7XG4gICAgICAgICAgcmVzdWx0W2tleV0gPSB0aGlzLmRlZXBNZXJnZSh0YXJnZXRba2V5XSwgc291cmNlW2tleV0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlc3VsdFtrZXldID0gc291cmNlW2tleV07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufSJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Pipe, Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./locale.service";
|
|
4
|
+
/**
|
|
5
|
+
* 翻译管道,用于在Angular模板中直接使用翻译功能
|
|
6
|
+
* 用法:{{ 'Input.send' | translate }}
|
|
7
|
+
* 带参数:{{ 'Input.pleaseEnterPlaceholder' | translate:{ enterKey: 'Enter', shiftEnterKey: 'Shift + Enter' } }}
|
|
8
|
+
*/
|
|
9
|
+
export class TranslatePipe {
|
|
10
|
+
constructor(localeService) {
|
|
11
|
+
this.localeService = localeService;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* 转换方法,实现PipeTransform接口
|
|
15
|
+
* @param key 翻译键
|
|
16
|
+
* @param params 替换参数
|
|
17
|
+
*/
|
|
18
|
+
transform(key, params) {
|
|
19
|
+
if (!key)
|
|
20
|
+
return key;
|
|
21
|
+
// 调用LocaleService的翻译方法
|
|
22
|
+
return this.localeService.translate(key, params);
|
|
23
|
+
}
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TranslatePipe, deps: [{ token: i1.LocaleService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
25
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: TranslatePipe, isStandalone: true, name: "translate", pure: false }); }
|
|
26
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TranslatePipe }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TranslatePipe, decorators: [{
|
|
29
|
+
type: Pipe,
|
|
30
|
+
args: [{
|
|
31
|
+
name: 'translate',
|
|
32
|
+
pure: false, // 设置为非纯管道,以便在语言变化时自动更新视图
|
|
33
|
+
standalone: true // 标记为standalone,以便在standalone组件中直接使用
|
|
34
|
+
}]
|
|
35
|
+
}, {
|
|
36
|
+
type: Injectable
|
|
37
|
+
}], ctorParameters: () => [{ type: i1.LocaleService }] });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9Mb2NhbGUvdHJhbnNsYXRlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFHaEU7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQW9CLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUVwRDs7OztPQUlHO0lBQ0gsU0FBUyxDQUFDLEdBQVcsRUFBRSxNQUEyQztRQUNoRSxJQUFJLENBQUMsR0FBRztZQUFFLE9BQU8sR0FBRyxDQUFDO1FBRXJCLHVCQUF1QjtRQUN2QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNuRCxDQUFDOzhHQWJVLGFBQWE7NEdBQWIsYUFBYTtrSEFBYixhQUFhOzsyRkFBYixhQUFhO2tCQU56QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxXQUFXO29CQUNqQixJQUFJLEVBQUUsS0FBSyxFQUFFLHlCQUF5QjtvQkFDdEMsVUFBVSxFQUFFLElBQUksQ0FBQyxxQ0FBcUM7aUJBQ3ZEOztrQkFDQSxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9jYWxlU2VydmljZSB9IGZyb20gJy4vbG9jYWxlLnNlcnZpY2UnO1xuXG4vKipcbiAqIOe/u+ivkeeuoemBk++8jOeUqOS6juWcqEFuZ3VsYXLmqKHmnb/kuK3nm7TmjqXkvb/nlKjnv7vor5Hlip/og71cbiAqIOeUqOazle+8mnt7ICdJbnB1dC5zZW5kJyB8IHRyYW5zbGF0ZSB9fVxuICog5bim5Y+C5pWw77yae3sgJ0lucHV0LnBsZWFzZUVudGVyUGxhY2Vob2xkZXInIHwgdHJhbnNsYXRlOnsgZW50ZXJLZXk6ICdFbnRlcicsIHNoaWZ0RW50ZXJLZXk6ICdTaGlmdCArIEVudGVyJyB9IH19XG4gKi9cbkBQaXBlKHtcbiAgbmFtZTogJ3RyYW5zbGF0ZScsXG4gIHB1cmU6IGZhbHNlLCAvLyDorr7nva7kuLrpnZ7nuq/nrqHpgZPvvIzku6Xkvr/lnKjor63oqIDlj5jljJbml7boh6rliqjmm7TmlrDop4blm75cbiAgc3RhbmRhbG9uZTogdHJ1ZSAvLyDmoIforrDkuLpzdGFuZGFsb25l77yM5Lul5L6/5Zyoc3RhbmRhbG9uZee7hOS7tuS4reebtOaOpeS9v+eUqFxufSlcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSkge31cblxuICAvKipcbiAgICog6L2s5o2i5pa55rOV77yM5a6e546wUGlwZVRyYW5zZm9ybeaOpeWPo1xuICAgKiBAcGFyYW0ga2V5IOe/u+ivkemUrlxuICAgKiBAcGFyYW0gcGFyYW1zIOabv+aNouWPguaVsFxuICAgKi9cbiAgdHJhbnNmb3JtKGtleTogc3RyaW5nLCBwYXJhbXM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB9KTogc3RyaW5nIHtcbiAgICBpZiAoIWtleSkgcmV0dXJuIGtleTtcbiAgICBcbiAgICAvLyDosIPnlKhMb2NhbGVTZXJ2aWNl55qE57+76K+R5pa55rOVXG4gICAgcmV0dXJuIHRoaXMubG9jYWxlU2VydmljZS50cmFuc2xhdGUoa2V5LCBwYXJhbXMpO1xuICB9XG59Il19
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
const noop = () => { };
|
|
2
|
+
class BaseFoundation {
|
|
3
|
+
static get cssClasses() {
|
|
4
|
+
return {};
|
|
5
|
+
}
|
|
6
|
+
static get strings() {
|
|
7
|
+
return {};
|
|
8
|
+
}
|
|
9
|
+
static get numbers() {
|
|
10
|
+
return {};
|
|
11
|
+
}
|
|
12
|
+
static get defaultAdapter() {
|
|
13
|
+
return {
|
|
14
|
+
getProp: noop,
|
|
15
|
+
getProps: noop,
|
|
16
|
+
getState: noop,
|
|
17
|
+
getStates: noop,
|
|
18
|
+
setState: noop,
|
|
19
|
+
getContext: noop,
|
|
20
|
+
getContexts: noop,
|
|
21
|
+
getCache: noop,
|
|
22
|
+
setCache: noop,
|
|
23
|
+
getCaches: noop,
|
|
24
|
+
stopPropagation: noop,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
constructor(adapter) {
|
|
28
|
+
this._adapter = { ...BaseFoundation.defaultAdapter, ...adapter };
|
|
29
|
+
}
|
|
30
|
+
getProp(key) {
|
|
31
|
+
return this._adapter.getProp(key);
|
|
32
|
+
}
|
|
33
|
+
getProps() {
|
|
34
|
+
return this._adapter.getProps();
|
|
35
|
+
}
|
|
36
|
+
getState(key) {
|
|
37
|
+
return this._adapter.getState(key);
|
|
38
|
+
}
|
|
39
|
+
getStates() {
|
|
40
|
+
return this._adapter.getStates();
|
|
41
|
+
}
|
|
42
|
+
setState(states, cb) {
|
|
43
|
+
return this._adapter.setState({ ...states }, cb);
|
|
44
|
+
}
|
|
45
|
+
/* istanbul ignore next */
|
|
46
|
+
getCaches() {
|
|
47
|
+
return this._adapter.getCaches();
|
|
48
|
+
}
|
|
49
|
+
getCache(key) {
|
|
50
|
+
return this._adapter.getCache(key);
|
|
51
|
+
}
|
|
52
|
+
setCache(key, value) {
|
|
53
|
+
return key && this._adapter.setCache(key, value);
|
|
54
|
+
}
|
|
55
|
+
_isInProps(key) {
|
|
56
|
+
const props = this.getProps();
|
|
57
|
+
return key in props;
|
|
58
|
+
}
|
|
59
|
+
init(lifecycle) { }
|
|
60
|
+
destroy() { }
|
|
61
|
+
}
|
|
62
|
+
export default BaseFoundation;
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm91bmRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL2NvbXBvbmVudHMtY29tbW9uL0Jhc2UvZm91bmRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLElBQUksR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7QUFjdEIsTUFBTSxjQUFjO0lBQ2xCLE1BQU0sS0FBSyxVQUFVO1FBQ25CLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sS0FBSyxPQUFPO1FBQ2hCLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sS0FBSyxPQUFPO1FBQ2hCLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sS0FBSyxjQUFjO1FBQ3ZCLE9BQU87WUFDTCxPQUFPLEVBQUUsSUFBSTtZQUNiLFFBQVEsRUFBRSxJQUFJO1lBQ2QsUUFBUSxFQUFFLElBQUk7WUFDZCxTQUFTLEVBQUUsSUFBSTtZQUNmLFFBQVEsRUFBRSxJQUFJO1lBQ2QsVUFBVSxFQUFFLElBQUk7WUFDaEIsV0FBVyxFQUFFLElBQUk7WUFDakIsUUFBUSxFQUFFLElBQUk7WUFDZCxRQUFRLEVBQUUsSUFBSTtZQUNkLFNBQVMsRUFBRSxJQUFJO1lBQ2YsZUFBZSxFQUFFLElBQUk7U0FDdEIsQ0FBQztJQUNKLENBQUM7SUFJRCxZQUFZLE9BQVU7UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLEdBQUcsY0FBYyxDQUFDLGNBQWMsRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDO0lBQ25FLENBQUM7SUFFRCxPQUFPLENBQUMsR0FBVztRQUNqQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBUyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxRQUFRLENBQUMsR0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBVyxFQUFFLEVBQTJCO1FBQy9DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCwwQkFBMEI7SUFDMUIsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQVcsRUFBRSxLQUFVO1FBQzlCLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQVc7UUFDcEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzlCLE9BQU8sR0FBRyxJQUFLLEtBQWEsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxDQUFDLFNBQWUsSUFBRyxDQUFDO0lBRXhCLE9BQU8sS0FBSSxDQUFDO0NBQ2I7QUFDRCxlQUFlLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IG5vb3AgPSAoKSA9PiB7fTtcbmV4cG9ydCB0eXBlIG5vb3BGdW5jdGlvbiA9ICguLi5hcmdzOiBhbnkpID0+IGFueTtcblxuZXhwb3J0IGludGVyZmFjZSBEZWZhdWx0QWRhcHRlciB7XG4gIGdldFByb3Aoa2V5OiBzdHJpbmcpOiBhbnk7XG4gIGdldFByb3BzKCk6IGFueTtcbiAgZ2V0U3RhdGUoa2V5OiBzdHJpbmcpOiBhbnk7XG4gIGdldFN0YXRlcygpOiBhbnk7XG4gIHNldFN0YXRlKHM6IGFueSwgY2FsbGJhY2s/OiBhbnkpOiB2b2lkO1xuICBnZXRDYWNoZShjOiBzdHJpbmcpOiBhbnk7XG4gIGdldENhY2hlcygpOiBhbnk7XG4gIHNldENhY2hlKGtleTogYW55LCB2YWx1ZTogYW55KTogdm9pZDtcbn1cblxuY2xhc3MgQmFzZUZvdW5kYXRpb248VCBleHRlbmRzIERlZmF1bHRBZGFwdGVyPiB7XG4gIHN0YXRpYyBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICByZXR1cm4ge307XG4gIH1cblxuICBzdGF0aWMgZ2V0IHN0cmluZ3MoKSB7XG4gICAgcmV0dXJuIHt9O1xuICB9XG5cbiAgc3RhdGljIGdldCBudW1iZXJzKCkge1xuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgZGVmYXVsdEFkYXB0ZXIoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldFByb3A6IG5vb3AsXG4gICAgICBnZXRQcm9wczogbm9vcCxcbiAgICAgIGdldFN0YXRlOiBub29wLFxuICAgICAgZ2V0U3RhdGVzOiBub29wLFxuICAgICAgc2V0U3RhdGU6IG5vb3AsXG4gICAgICBnZXRDb250ZXh0OiBub29wLFxuICAgICAgZ2V0Q29udGV4dHM6IG5vb3AsXG4gICAgICBnZXRDYWNoZTogbm9vcCxcbiAgICAgIHNldENhY2hlOiBub29wLFxuICAgICAgZ2V0Q2FjaGVzOiBub29wLFxuICAgICAgc3RvcFByb3BhZ2F0aW9uOiBub29wLFxuICAgIH07XG4gIH1cblxuICBfYWRhcHRlciE6IFQ7XG5cbiAgY29uc3RydWN0b3IoYWRhcHRlcjogVCkge1xuICAgIHRoaXMuX2FkYXB0ZXIgPSB7IC4uLkJhc2VGb3VuZGF0aW9uLmRlZmF1bHRBZGFwdGVyLCAuLi5hZGFwdGVyIH07XG4gIH1cblxuICBnZXRQcm9wKGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXIuZ2V0UHJvcChrZXkpO1xuICB9XG5cbiAgZ2V0UHJvcHMoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlci5nZXRQcm9wcygpIGFzIGFueTtcbiAgfVxuXG4gIGdldFN0YXRlKGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXIuZ2V0U3RhdGUoa2V5KTtcbiAgfVxuXG4gIGdldFN0YXRlcygpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyLmdldFN0YXRlcygpO1xuICB9XG5cbiAgc2V0U3RhdGUoc3RhdGVzOiBhbnksIGNiPzogKC4uLmFyZ3M6IGFueSkgPT4gdm9pZCkge1xuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyLnNldFN0YXRlKHsgLi4uc3RhdGVzIH0sIGNiKTtcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGdldENhY2hlcygpIHtcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlci5nZXRDYWNoZXMoKTtcbiAgfVxuXG4gIGdldENhY2hlKGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXIuZ2V0Q2FjaGUoa2V5KTtcbiAgfVxuXG4gIHNldENhY2hlKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XG4gICAgcmV0dXJuIGtleSAmJiB0aGlzLl9hZGFwdGVyLnNldENhY2hlKGtleSwgdmFsdWUpO1xuICB9XG5cbiAgX2lzSW5Qcm9wcyhrZXk6IHN0cmluZykge1xuICAgIGNvbnN0IHByb3BzID0gdGhpcy5nZXRQcm9wcygpO1xuICAgIHJldHVybiBrZXkgaW4gKHByb3BzIGFzIGFueSk7XG4gIH1cblxuICBpbml0KGxpZmVjeWNsZT86IGFueSkge31cblxuICBkZXN0cm95KCkge31cbn1cbmV4cG9ydCBkZWZhdWx0IEJhc2VGb3VuZGF0aW9uO1xuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export const DEFAULT_AVATAR_WIDTH = 36;
|
|
2
|
+
export const DEFAULT_AVATAR_HEIGHT = 36;
|
|
3
|
+
export const AVATAR_NAME = 'name';
|
|
4
|
+
export const AVATAR_IMG = 'imgSrc';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnViYmxlLWNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL2NvbXBvbmVudHMtY29tbW9uL0J1YmJsZS9jb21tb24vYnViYmxlLWNvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxFQUFFLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsRUFBRSxDQUFDO0FBQ3hDLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUM7QUFDbEMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBERUZBVUxUX0FWQVRBUl9XSURUSCA9IDM2O1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfQVZBVEFSX0hFSUdIVCA9IDM2O1xuZXhwb3J0IGNvbnN0IEFWQVRBUl9OQU1FID0gJ25hbWUnO1xuZXhwb3J0IGNvbnN0IEFWQVRBUl9JTUcgPSAnaW1nU3JjJztcbiJdfQ==
|