@wlcm/angular 0.0.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/README.md +62 -0
- package/button/README.md +7 -0
- package/button/esm2022/index.mjs +3 -0
- package/button/esm2022/lib/button.module.mjs +16 -0
- package/button/esm2022/lib/components/button/button.component.mjs +37 -0
- package/button/esm2022/lib/models/button.models.mjs +2 -0
- package/button/esm2022/wlcm-angular-button.mjs +5 -0
- package/button/fesm2022/wlcm-angular-button.mjs +57 -0
- package/button/fesm2022/wlcm-angular-button.mjs.map +1 -0
- package/button/index.d.ts +2 -0
- package/button/lib/button.module.d.ts +7 -0
- package/button/lib/components/button/button.component.d.ts +13 -0
- package/button/lib/models/button.models.d.ts +1 -0
- package/core/README.md +7 -0
- package/core/esm2022/index.mjs +10 -0
- package/core/esm2022/lib/components/chevron-down-icon/chevron-down-icon.component.mjs +12 -0
- package/core/esm2022/lib/components/close-icon/close-icon.component.mjs +12 -0
- package/core/esm2022/lib/components/search-icon/search-icon.component.mjs +12 -0
- package/core/esm2022/lib/constants/http.constants.mjs +6 -0
- package/core/esm2022/lib/models/option.models.mjs +15 -0
- package/core/esm2022/lib/models/paginated-data.models.mjs +2 -0
- package/core/esm2022/lib/models/query-params.models.mjs +6 -0
- package/core/esm2022/lib/utils/stream.utils.mjs +28 -0
- package/core/esm2022/wlcm-angular-core.mjs +5 -0
- package/core/fesm2022/wlcm-angular-core.mjs +92 -0
- package/core/fesm2022/wlcm-angular-core.mjs.map +1 -0
- package/core/index.d.ts +8 -0
- package/core/lib/components/chevron-down-icon/chevron-down-icon.component.d.ts +5 -0
- package/core/lib/components/close-icon/close-icon.component.d.ts +5 -0
- package/core/lib/components/search-icon/search-icon.component.d.ts +5 -0
- package/core/lib/constants/http.constants.d.ts +2 -0
- package/core/lib/models/option.models.d.ts +11 -0
- package/core/lib/models/paginated-data.models.d.ts +6 -0
- package/core/lib/models/query-params.models.d.ts +26 -0
- package/core/lib/utils/stream.utils.d.ts +7 -0
- package/filters/README.md +7 -0
- package/filters/esm2022/index.mjs +8 -0
- package/filters/esm2022/lib/filters/components/filters/filters.component.mjs +21 -0
- package/filters/esm2022/lib/filters/components/filters-button/filters-button.component.mjs +25 -0
- package/filters/esm2022/lib/filters/components/filters-panel/filters-panel.component.mjs +86 -0
- package/filters/esm2022/lib/filters/components/filters-unit/filters-unit.component.mjs +55 -0
- package/filters/esm2022/lib/filters/directives/filters-content.directive.mjs +11 -0
- package/filters/esm2022/lib/filters/directives/filters-trigger.directive.mjs +69 -0
- package/filters/esm2022/lib/filters/filters.module.mjs +53 -0
- package/filters/esm2022/lib/filters/models/filters-default-selection-model.mjs +56 -0
- package/filters/esm2022/lib/filters/models/filters-trigger.base.mjs +56 -0
- package/filters/esm2022/lib/filters/models/filters.models.mjs +44 -0
- package/filters/esm2022/lib/filters/pipes/is-filters-param-checked.pipe.mjs +21 -0
- package/filters/esm2022/lib/filters/pipes/total-filters-applied.pipe.mjs +18 -0
- package/filters/esm2022/lib/filters/utils/filters.utils.mjs +13 -0
- package/filters/esm2022/wlcm-angular-filters.mjs +5 -0
- package/filters/fesm2022/wlcm-angular-filters.mjs +474 -0
- package/filters/fesm2022/wlcm-angular-filters.mjs.map +1 -0
- package/filters/index.d.ts +7 -0
- package/filters/lib/filters/components/filters/filters.component.d.ts +10 -0
- package/filters/lib/filters/components/filters-button/filters-button.component.d.ts +11 -0
- package/filters/lib/filters/components/filters-panel/filters-panel.component.d.ts +25 -0
- package/filters/lib/filters/components/filters-unit/filters-unit.component.d.ts +21 -0
- package/filters/lib/filters/directives/filters-content.directive.d.ts +5 -0
- package/filters/lib/filters/directives/filters-trigger.directive.d.ts +22 -0
- package/filters/lib/filters/filters.module.d.ts +20 -0
- package/filters/lib/filters/models/filters-default-selection-model.d.ts +18 -0
- package/filters/lib/filters/models/filters-trigger.base.d.ts +15 -0
- package/filters/lib/filters/models/filters.models.d.ts +42 -0
- package/filters/lib/filters/pipes/is-filters-param-checked.pipe.d.ts +10 -0
- package/filters/lib/filters/pipes/total-filters-applied.pipe.d.ts +8 -0
- package/filters/lib/filters/utils/filters.utils.d.ts +5 -0
- package/forms/README.md +7 -0
- package/forms/esm2022/index.mjs +10 -0
- package/forms/esm2022/lib/forms/components/autocomplete/autocomplete.component.mjs +164 -0
- package/forms/esm2022/lib/forms/components/error/error.component.mjs +12 -0
- package/forms/esm2022/lib/forms/components/form-field/form-field.component.mjs +118 -0
- package/forms/esm2022/lib/forms/components/index.mjs +6 -0
- package/forms/esm2022/lib/forms/components/label/label.component.mjs +23 -0
- package/forms/esm2022/lib/forms/components/select/select.component.mjs +107 -0
- package/forms/esm2022/lib/forms/constants/form-elements.constants.mjs +5 -0
- package/forms/esm2022/lib/forms/constants/form-errors.constants.mjs +7 -0
- package/forms/esm2022/lib/forms/constants/form-state-handlers.constants.mjs +13 -0
- package/forms/esm2022/lib/forms/constants/index.mjs +4 -0
- package/forms/esm2022/lib/forms/directives/ac-input-binder.directive.mjs +33 -0
- package/forms/esm2022/lib/forms/directives/autocomplete.directive.mjs +63 -0
- package/forms/esm2022/lib/forms/directives/form-field-custom-container.directive.mjs +17 -0
- package/forms/esm2022/lib/forms/directives/form-field-hint.directive.mjs +15 -0
- package/forms/esm2022/lib/forms/directives/form-field-suffix.directive.mjs +14 -0
- package/forms/esm2022/lib/forms/directives/input.directive.mjs +35 -0
- package/forms/esm2022/lib/forms/forms.module.mjs +51 -0
- package/forms/esm2022/lib/forms/models/_index.mjs +4 -0
- package/forms/esm2022/lib/forms/models/form-errors.models.mjs +2 -0
- package/forms/esm2022/lib/forms/models/form.models.mjs +2 -0
- package/forms/esm2022/lib/forms/models/input.models.mjs +2 -0
- package/forms/esm2022/lib/forms/pipes/errors-mapper.pipe.mjs +53 -0
- package/forms/esm2022/lib/forms/services/form-state-handler.service.mjs +19 -0
- package/forms/esm2022/lib/forms/services/index.mjs +2 -0
- package/forms/esm2022/wlcm-angular-forms.mjs +5 -0
- package/forms/fesm2022/wlcm-angular-forms.mjs +675 -0
- package/forms/fesm2022/wlcm-angular-forms.mjs.map +1 -0
- package/forms/index.d.ts +9 -0
- package/forms/lib/forms/components/autocomplete/autocomplete.component.d.ts +46 -0
- package/forms/lib/forms/components/error/error.component.d.ts +5 -0
- package/forms/lib/forms/components/form-field/form-field.component.d.ts +27 -0
- package/forms/lib/forms/components/index.d.ts +5 -0
- package/forms/lib/forms/components/label/label.component.d.ts +7 -0
- package/forms/lib/forms/components/select/select.component.d.ts +31 -0
- package/forms/lib/forms/constants/form-elements.constants.d.ts +6 -0
- package/forms/lib/forms/constants/form-errors.constants.d.ts +4 -0
- package/forms/lib/forms/constants/form-state-handlers.constants.d.ts +6 -0
- package/forms/lib/forms/constants/index.d.ts +3 -0
- package/forms/lib/forms/directives/ac-input-binder.directive.d.ts +5 -0
- package/forms/lib/forms/directives/autocomplete.directive.d.ts +16 -0
- package/forms/lib/forms/directives/form-field-custom-container.directive.d.ts +8 -0
- package/forms/lib/forms/directives/form-field-hint.directive.d.ts +5 -0
- package/forms/lib/forms/directives/form-field-suffix.directive.d.ts +5 -0
- package/forms/lib/forms/directives/input.directive.d.ts +5 -0
- package/forms/lib/forms/forms.module.d.ts +15 -0
- package/forms/lib/forms/models/_index.d.ts +3 -0
- package/forms/lib/forms/models/form-errors.models.d.ts +5 -0
- package/forms/lib/forms/models/form.models.d.ts +11 -0
- package/forms/lib/forms/models/input.models.d.ts +7 -0
- package/forms/lib/forms/pipes/errors-mapper.pipe.d.ts +17 -0
- package/forms/lib/forms/services/form-state-handler.service.d.ts +10 -0
- package/forms/lib/forms/services/index.d.ts +1 -0
- package/index.d.ts +1 -0
- package/index.mjs +4 -0
- package/package.json +109 -0
- package/search-field/README.md +7 -0
- package/search-field/esm2022/index.mjs +3 -0
- package/search-field/esm2022/lib/components/search-field/search-field.component.mjs +36 -0
- package/search-field/esm2022/lib/search-field.module.mjs +18 -0
- package/search-field/esm2022/wlcm-angular-search-field.mjs +5 -0
- package/search-field/fesm2022/wlcm-angular-search-field.mjs +57 -0
- package/search-field/fesm2022/wlcm-angular-search-field.mjs.map +1 -0
- package/search-field/index.d.ts +2 -0
- package/search-field/lib/components/search-field/search-field.component.d.ts +14 -0
- package/search-field/lib/search-field.module.d.ts +8 -0
- package/styles/components/button/index.scss +91 -0
- package/styles/components/common/index.scss +33 -0
- package/styles/components/filters/_filters-panel.scss +44 -0
- package/styles/components/filters/_filters-unit.scss +92 -0
- package/styles/components/filters/index.scss +7 -0
- package/styles/components/forms/_checkbox.scss +89 -0
- package/styles/components/forms/_error.scss +23 -0
- package/styles/components/forms/_form-field.scss +65 -0
- package/styles/components/forms/_label.scss +42 -0
- package/styles/components/forms/_select.scss +74 -0
- package/styles/components/forms/index.scss +13 -0
- package/styles/components/search-field/index.scss +31 -0
- package/styles/core/_all-theme.scss +15 -0
- package/styles/core/_core.scss +10 -0
- package/styles/core/_utils.scss +53 -0
- package/styles/wlcm.scss +3 -0
@@ -0,0 +1,36 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
2
|
+
import { DEFAULT_QUERY_PARAMS, SearchIconComponent } from '@wlcm/angular/core';
|
3
|
+
import { BehaviorSubject, debounceTime, skip } from 'rxjs';
|
4
|
+
import { CommonModule } from '@angular/common';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
export class WlcmSearchFieldComponent {
|
7
|
+
constructor() {
|
8
|
+
this.placeholder = 'Search by';
|
9
|
+
this.queryParams = DEFAULT_QUERY_PARAMS;
|
10
|
+
this.queryParamsChange = new EventEmitter();
|
11
|
+
this._inputValue$ = new BehaviorSubject('');
|
12
|
+
}
|
13
|
+
ngOnInit() {
|
14
|
+
this._inputValue$.next(this.queryParams.query);
|
15
|
+
this.handleInputValue();
|
16
|
+
}
|
17
|
+
handleInputValue() {
|
18
|
+
this._inputValue$.pipe(skip(1), debounceTime(400)).subscribe((query) => {
|
19
|
+
const params = { ...this.queryParams, page: 1, query };
|
20
|
+
this.queryParamsChange.emit(params);
|
21
|
+
});
|
22
|
+
}
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
24
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: WlcmSearchFieldComponent, isStandalone: true, selector: "wlcm-search-field", inputs: { placeholder: "placeholder", queryParams: "queryParams" }, outputs: { queryParamsChange: "queryParamsChange" }, ngImport: i0, template: "<div class=\"wlcm-search-field\">\n <wlcm-search-icon></wlcm-search-icon>\n\n <input\n #field\n type=\"text\"\n class=\"wlcm-search-field__input\"\n [placeholder]=\"placeholder\"\n [value]=\"queryParams.query\"\n (input)=\"_inputValue$.next(field.value)\"\n />\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: SearchIconComponent, selector: "wlcm-search-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
25
|
+
}
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldComponent, decorators: [{
|
27
|
+
type: Component,
|
28
|
+
args: [{ selector: 'wlcm-search-field', standalone: true, imports: [CommonModule, SearchIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"wlcm-search-field\">\n <wlcm-search-icon></wlcm-search-icon>\n\n <input\n #field\n type=\"text\"\n class=\"wlcm-search-field__input\"\n [placeholder]=\"placeholder\"\n [value]=\"queryParams.query\"\n (input)=\"_inputValue$.next(field.value)\"\n />\n</div>\n" }]
|
29
|
+
}], propDecorators: { placeholder: [{
|
30
|
+
type: Input
|
31
|
+
}], queryParams: [{
|
32
|
+
type: Input
|
33
|
+
}], queryParamsChange: [{
|
34
|
+
type: Output
|
35
|
+
}] } });
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2VhcmNoLWZpZWxkL3NyYy9saWIvY29tcG9uZW50cy9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2VhcmNoLWZpZWxkL3NyYy9saWIvY29tcG9uZW50cy9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUFFLG9CQUFvQixFQUFlLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFVL0MsTUFBTSxPQUFPLHdCQUF3QjtJQVJyQztRQVNXLGdCQUFXLEdBQVcsV0FBVyxDQUFDO1FBRWxDLGdCQUFXLEdBQWdCLG9CQUFvQixDQUFDO1FBRS9DLHNCQUFpQixHQUE4QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRW5FLGlCQUFZLEdBQTRCLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBZTFFO0lBYkMsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0MsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBYSxFQUFFLEVBQUU7WUFDN0UsTUFBTSxNQUFNLEdBQWdCLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFFcEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBckJVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLHNNQ2JyQyxxU0FZQSx5RERKWSxZQUFZLCtCQUFFLG1CQUFtQjs7MkZBS2hDLHdCQUF3QjtrQkFScEMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDLG1CQUczQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERFRkFVTFRfUVVFUllfUEFSQU1TLCBRdWVyeVBhcmFtcywgU2VhcmNoSWNvbkNvbXBvbmVudCB9IGZyb20gJ0B3bGNtL2FuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGRlYm91bmNlVGltZSwgc2tpcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2xjbS1zZWFyY2gtZmllbGQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBTZWFyY2hJY29uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC1maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC1maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgV2xjbVNlYXJjaEZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICdTZWFyY2ggYnknO1xuXG4gIEBJbnB1dCgpIHF1ZXJ5UGFyYW1zOiBRdWVyeVBhcmFtcyA9IERFRkFVTFRfUVVFUllfUEFSQU1TO1xuXG4gIEBPdXRwdXQoKSBxdWVyeVBhcmFtc0NoYW5nZTogRXZlbnRFbWl0dGVyPFF1ZXJ5UGFyYW1zPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICByZWFkb25seSBfaW5wdXRWYWx1ZSQ6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCgnJyk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5faW5wdXRWYWx1ZSQubmV4dCh0aGlzLnF1ZXJ5UGFyYW1zLnF1ZXJ5KTtcblxuICAgIHRoaXMuaGFuZGxlSW5wdXRWYWx1ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVJbnB1dFZhbHVlKCk6IHZvaWQge1xuICAgIHRoaXMuX2lucHV0VmFsdWUkLnBpcGUoc2tpcCgxKSwgZGVib3VuY2VUaW1lKDQwMCkpLnN1YnNjcmliZSgocXVlcnk6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgcGFyYW1zOiBRdWVyeVBhcmFtcyA9IHsgLi4udGhpcy5xdWVyeVBhcmFtcywgcGFnZTogMSwgcXVlcnkgfTtcblxuICAgICAgdGhpcy5xdWVyeVBhcmFtc0NoYW5nZS5lbWl0KHBhcmFtcyk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3bGNtLXNlYXJjaC1maWVsZFwiPlxuICA8d2xjbS1zZWFyY2gtaWNvbj48L3dsY20tc2VhcmNoLWljb24+XG5cbiAgPGlucHV0XG4gICAgI2ZpZWxkXG4gICAgdHlwZT1cInRleHRcIlxuICAgIGNsYXNzPVwid2xjbS1zZWFyY2gtZmllbGRfX2lucHV0XCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFt2YWx1ZV09XCJxdWVyeVBhcmFtcy5xdWVyeVwiXG4gICAgKGlucHV0KT1cIl9pbnB1dFZhbHVlJC5uZXh0KGZpZWxkLnZhbHVlKVwiXG4gIC8+XG48L2Rpdj5cbiJdfQ==
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { WlcmSearchFieldComponent } from './components/search-field/search-field.component';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export class WlcmSearchFieldModule {
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldModule, imports: [CommonModule, WlcmSearchFieldComponent], exports: [WlcmSearchFieldComponent] }); }
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldModule, imports: [CommonModule, WlcmSearchFieldComponent] }); }
|
9
|
+
}
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldModule, decorators: [{
|
11
|
+
type: NgModule,
|
12
|
+
args: [{
|
13
|
+
declarations: [],
|
14
|
+
imports: [CommonModule, WlcmSearchFieldComponent],
|
15
|
+
exports: [WlcmSearchFieldComponent],
|
16
|
+
}]
|
17
|
+
}] });
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpZWxkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2VhcmNoLWZpZWxkL3NyYy9saWIvc2VhcmNoLWZpZWxkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7QUFNNUYsTUFBTSxPQUFPLHFCQUFxQjs4R0FBckIscUJBQXFCOytHQUFyQixxQkFBcUIsWUFIdEIsWUFBWSxFQUFFLHdCQUF3QixhQUN0Qyx3QkFBd0I7K0dBRXZCLHFCQUFxQixZQUh0QixZQUFZLEVBQUUsd0JBQXdCOzsyRkFHckMscUJBQXFCO2tCQUxqQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsd0JBQXdCLENBQUM7b0JBQ2pELE9BQU8sRUFBRSxDQUFDLHdCQUF3QixDQUFDO2lCQUNwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgV2xjbVNlYXJjaEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NlYXJjaC1maWVsZC9zZWFyY2gtZmllbGQuY29tcG9uZW50JztcbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW10sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFdsY21TZWFyY2hGaWVsZENvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtXbGNtU2VhcmNoRmllbGRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBXbGNtU2VhcmNoRmllbGRNb2R1bGUge31cbiJdfQ==
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
4
|
+
export * from './index';
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2xjbS1hbmd1bGFyLXNlYXJjaC1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL21vZHVsZXMvc2VhcmNoLWZpZWxkL3NyYy93bGNtLWFuZ3VsYXItc2VhcmNoLWZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
|
@@ -0,0 +1,57 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output, NgModule } from '@angular/core';
|
3
|
+
import { DEFAULT_QUERY_PARAMS, SearchIconComponent } from '@wlcm/angular/core';
|
4
|
+
import { BehaviorSubject, skip, debounceTime } from 'rxjs';
|
5
|
+
import { CommonModule } from '@angular/common';
|
6
|
+
|
7
|
+
class WlcmSearchFieldComponent {
|
8
|
+
constructor() {
|
9
|
+
this.placeholder = 'Search by';
|
10
|
+
this.queryParams = DEFAULT_QUERY_PARAMS;
|
11
|
+
this.queryParamsChange = new EventEmitter();
|
12
|
+
this._inputValue$ = new BehaviorSubject('');
|
13
|
+
}
|
14
|
+
ngOnInit() {
|
15
|
+
this._inputValue$.next(this.queryParams.query);
|
16
|
+
this.handleInputValue();
|
17
|
+
}
|
18
|
+
handleInputValue() {
|
19
|
+
this._inputValue$.pipe(skip(1), debounceTime(400)).subscribe((query) => {
|
20
|
+
const params = { ...this.queryParams, page: 1, query };
|
21
|
+
this.queryParamsChange.emit(params);
|
22
|
+
});
|
23
|
+
}
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
25
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: WlcmSearchFieldComponent, isStandalone: true, selector: "wlcm-search-field", inputs: { placeholder: "placeholder", queryParams: "queryParams" }, outputs: { queryParamsChange: "queryParamsChange" }, ngImport: i0, template: "<div class=\"wlcm-search-field\">\n <wlcm-search-icon></wlcm-search-icon>\n\n <input\n #field\n type=\"text\"\n class=\"wlcm-search-field__input\"\n [placeholder]=\"placeholder\"\n [value]=\"queryParams.query\"\n (input)=\"_inputValue$.next(field.value)\"\n />\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: SearchIconComponent, selector: "wlcm-search-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
26
|
+
}
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldComponent, decorators: [{
|
28
|
+
type: Component,
|
29
|
+
args: [{ selector: 'wlcm-search-field', standalone: true, imports: [CommonModule, SearchIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"wlcm-search-field\">\n <wlcm-search-icon></wlcm-search-icon>\n\n <input\n #field\n type=\"text\"\n class=\"wlcm-search-field__input\"\n [placeholder]=\"placeholder\"\n [value]=\"queryParams.query\"\n (input)=\"_inputValue$.next(field.value)\"\n />\n</div>\n" }]
|
30
|
+
}], propDecorators: { placeholder: [{
|
31
|
+
type: Input
|
32
|
+
}], queryParams: [{
|
33
|
+
type: Input
|
34
|
+
}], queryParamsChange: [{
|
35
|
+
type: Output
|
36
|
+
}] } });
|
37
|
+
|
38
|
+
class WlcmSearchFieldModule {
|
39
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
40
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldModule, imports: [CommonModule, WlcmSearchFieldComponent], exports: [WlcmSearchFieldComponent] }); }
|
41
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldModule, imports: [CommonModule, WlcmSearchFieldComponent] }); }
|
42
|
+
}
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmSearchFieldModule, decorators: [{
|
44
|
+
type: NgModule,
|
45
|
+
args: [{
|
46
|
+
declarations: [],
|
47
|
+
imports: [CommonModule, WlcmSearchFieldComponent],
|
48
|
+
exports: [WlcmSearchFieldComponent],
|
49
|
+
}]
|
50
|
+
}] });
|
51
|
+
|
52
|
+
/**
|
53
|
+
* Generated bundle index. Do not edit.
|
54
|
+
*/
|
55
|
+
|
56
|
+
export { WlcmSearchFieldComponent, WlcmSearchFieldModule };
|
57
|
+
//# sourceMappingURL=wlcm-angular-search-field.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"wlcm-angular-search-field.mjs","sources":["../../../../modules/search-field/src/lib/components/search-field/search-field.component.ts","../../../../modules/search-field/src/lib/components/search-field/search-field.component.html","../../../../modules/search-field/src/lib/search-field.module.ts","../../../../modules/search-field/src/wlcm-angular-search-field.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { DEFAULT_QUERY_PARAMS, QueryParams, SearchIconComponent } from '@wlcm/angular/core';\nimport { BehaviorSubject, debounceTime, skip } from 'rxjs';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-search-field',\n standalone: true,\n imports: [CommonModule, SearchIconComponent],\n templateUrl: './search-field.component.html',\n styleUrls: ['./search-field.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class WlcmSearchFieldComponent implements OnInit {\n @Input() placeholder: string = 'Search by';\n\n @Input() queryParams: QueryParams = DEFAULT_QUERY_PARAMS;\n\n @Output() queryParamsChange: EventEmitter<QueryParams> = new EventEmitter();\n\n readonly _inputValue$: BehaviorSubject<string> = new BehaviorSubject('');\n\n ngOnInit(): void {\n this._inputValue$.next(this.queryParams.query);\n\n this.handleInputValue();\n }\n\n private handleInputValue(): void {\n this._inputValue$.pipe(skip(1), debounceTime(400)).subscribe((query: string) => {\n const params: QueryParams = { ...this.queryParams, page: 1, query };\n\n this.queryParamsChange.emit(params);\n });\n }\n}\n","<div class=\"wlcm-search-field\">\n <wlcm-search-icon></wlcm-search-icon>\n\n <input\n #field\n type=\"text\"\n class=\"wlcm-search-field__input\"\n [placeholder]=\"placeholder\"\n [value]=\"queryParams.query\"\n (input)=\"_inputValue$.next(field.value)\"\n />\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { WlcmSearchFieldComponent } from './components/search-field/search-field.component';\n@NgModule({\n declarations: [],\n imports: [CommonModule, WlcmSearchFieldComponent],\n exports: [WlcmSearchFieldComponent],\n})\nexport class WlcmSearchFieldModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { EventEmitter, OnInit } from '@angular/core';
|
2
|
+
import { QueryParams } from '@wlcm/angular/core';
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class WlcmSearchFieldComponent implements OnInit {
|
6
|
+
placeholder: string;
|
7
|
+
queryParams: QueryParams;
|
8
|
+
queryParamsChange: EventEmitter<QueryParams>;
|
9
|
+
readonly _inputValue$: BehaviorSubject<string>;
|
10
|
+
ngOnInit(): void;
|
11
|
+
private handleInputValue;
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<WlcmSearchFieldComponent, never>;
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<WlcmSearchFieldComponent, "wlcm-search-field", never, { "placeholder": { "alias": "placeholder"; "required": false; }; "queryParams": { "alias": "queryParams"; "required": false; }; }, { "queryParamsChange": "queryParamsChange"; }, never, never, true, never>;
|
14
|
+
}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import * as i0 from "@angular/core";
|
2
|
+
import * as i1 from "@angular/common";
|
3
|
+
import * as i2 from "./components/search-field/search-field.component";
|
4
|
+
export declare class WlcmSearchFieldModule {
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<WlcmSearchFieldModule, never>;
|
6
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<WlcmSearchFieldModule, never, [typeof i1.CommonModule, typeof i2.WlcmSearchFieldComponent], [typeof i2.WlcmSearchFieldComponent]>;
|
7
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<WlcmSearchFieldModule>;
|
8
|
+
}
|
@@ -0,0 +1,91 @@
|
|
1
|
+
@use 'sass:map';
|
2
|
+
@use '../../core/utils' as utils;
|
3
|
+
|
4
|
+
@mixin theme($theme-config) {
|
5
|
+
$theme: utils.using-theme($theme_config);
|
6
|
+
|
7
|
+
.wlcm-button {
|
8
|
+
display: flex;
|
9
|
+
align-items: center;
|
10
|
+
overflow: hidden;
|
11
|
+
border: none;
|
12
|
+
border-radius: 4px;
|
13
|
+
outline: none;
|
14
|
+
cursor: pointer;
|
15
|
+
|
16
|
+
&__content {
|
17
|
+
display: flex;
|
18
|
+
align-items: center;
|
19
|
+
font-family: map-get($theme, bold-font-family);
|
20
|
+
white-space: nowrap;
|
21
|
+
font-size: 14px;
|
22
|
+
}
|
23
|
+
|
24
|
+
&--large {
|
25
|
+
height: 32px;
|
26
|
+
padding: 0 16px;
|
27
|
+
}
|
28
|
+
|
29
|
+
&--small {
|
30
|
+
height: 24px;
|
31
|
+
padding: 0 16px;
|
32
|
+
}
|
33
|
+
|
34
|
+
&--primary {
|
35
|
+
background-color: map-get($theme, primary-color);
|
36
|
+
color: #ffffff;
|
37
|
+
&:hover {
|
38
|
+
background-color: lighten(map-get($theme, primary-color), 5%);
|
39
|
+
}
|
40
|
+
}
|
41
|
+
&--secondary {
|
42
|
+
background-color: map-get($theme, accent-color);
|
43
|
+
color: #5a5a5a;
|
44
|
+
&:hover {
|
45
|
+
background-color: lighten(map-get($theme, accent-color), 2.5%);
|
46
|
+
}
|
47
|
+
}
|
48
|
+
&--accent {
|
49
|
+
background-color: map-get($theme, warn-color);
|
50
|
+
color: #ffffff;
|
51
|
+
&:hover {
|
52
|
+
background-color: lighten(map-get($theme, warn-color), 5%);
|
53
|
+
}
|
54
|
+
}
|
55
|
+
&--borderless {
|
56
|
+
background-color: transparent;
|
57
|
+
color: map-get($theme, primary-color);
|
58
|
+
}
|
59
|
+
&--paddingless {
|
60
|
+
padding-left: 0;
|
61
|
+
padding-right: 0;
|
62
|
+
background-color: transparent;
|
63
|
+
color: map-get($theme, primary-color);
|
64
|
+
|
65
|
+
&.wlcm-button--disabled {
|
66
|
+
pointer-events: none;
|
67
|
+
user-select: none;
|
68
|
+
opacity: 0.5;
|
69
|
+
}
|
70
|
+
}
|
71
|
+
|
72
|
+
&--loading {
|
73
|
+
pointer-events: none;
|
74
|
+
opacity: 0.7;
|
75
|
+
|
76
|
+
mat-spinner {
|
77
|
+
margin-right: 8px;
|
78
|
+
}
|
79
|
+
}
|
80
|
+
|
81
|
+
&--disabled {
|
82
|
+
&:not(.wlcm-button--paddingless) {
|
83
|
+
pointer-events: none;
|
84
|
+
|
85
|
+
.wlcm-button__content {
|
86
|
+
opacity: 0.7;
|
87
|
+
}
|
88
|
+
}
|
89
|
+
}
|
90
|
+
}
|
91
|
+
}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
@use 'sass:map';
|
2
|
+
@use '../../core/utils' as utils;
|
3
|
+
|
4
|
+
@mixin theme($theme-config) {
|
5
|
+
$theme: utils.using-theme($theme_config);
|
6
|
+
|
7
|
+
.wlcm-entities-count {
|
8
|
+
height: 14px;
|
9
|
+
min-width: 14px;
|
10
|
+
display: flex;
|
11
|
+
align-items: center;
|
12
|
+
justify-content: center;
|
13
|
+
font-family: map-get($theme, bold-font-family);
|
14
|
+
background: map-get($theme, selected-option-color);
|
15
|
+
color: map-get($theme, primary-color);
|
16
|
+
letter-spacing: 0.32px;
|
17
|
+
box-sizing: border-box;
|
18
|
+
border-radius: 4px;
|
19
|
+
font-size: 11px;
|
20
|
+
padding: 0 5px;
|
21
|
+
}
|
22
|
+
|
23
|
+
.wlcm-hint {
|
24
|
+
color: #5a5a5a;
|
25
|
+
letter-spacing: 0.35px;
|
26
|
+
line-height: 20px;
|
27
|
+
font-size: 12px;
|
28
|
+
}
|
29
|
+
|
30
|
+
.wlcm-cursor-pointer {
|
31
|
+
cursor: pointer;
|
32
|
+
}
|
33
|
+
}
|
@@ -0,0 +1,44 @@
|
|
1
|
+
@use 'sass:map';
|
2
|
+
@use '../../core/utils' as utils;
|
3
|
+
|
4
|
+
@mixin theme($theme-config) {
|
5
|
+
$theme: utils.using-theme($theme_config);
|
6
|
+
|
7
|
+
.wlcm-filters-panel {
|
8
|
+
width: 100%;
|
9
|
+
padding: 16px;
|
10
|
+
box-sizing: border-box;
|
11
|
+
box-shadow: 0 10px 32px 0 rgba(38, 41, 45, 0.15);
|
12
|
+
background: white;
|
13
|
+
border-radius: 4px;
|
14
|
+
|
15
|
+
&__title {
|
16
|
+
font-size: 16px;
|
17
|
+
letter-spacing: 0.47px;
|
18
|
+
font-family: map-get($theme, bold-font-family);
|
19
|
+
line-height: 24px;
|
20
|
+
margin: 0 0 8px 0;
|
21
|
+
margin-bottom: 0;
|
22
|
+
}
|
23
|
+
}
|
24
|
+
|
25
|
+
.wlcm-filters-panel-header {
|
26
|
+
display: flex;
|
27
|
+
align-items: center;
|
28
|
+
justify-content: space-between;
|
29
|
+
margin-bottom: 10px;
|
30
|
+
}
|
31
|
+
|
32
|
+
.wlcm-filters-panel-units {
|
33
|
+
display: grid;
|
34
|
+
grid-auto-flow: row;
|
35
|
+
grid-auto-rows: max-content;
|
36
|
+
margin-bottom: 16px;
|
37
|
+
gap: 8px;
|
38
|
+
}
|
39
|
+
|
40
|
+
.wlcm-filters-panel-actions {
|
41
|
+
display: flex;
|
42
|
+
justify-content: flex-end;
|
43
|
+
}
|
44
|
+
}
|
@@ -0,0 +1,92 @@
|
|
1
|
+
@use 'sass:map';
|
2
|
+
@use '../../core/utils' as utils;
|
3
|
+
|
4
|
+
@mixin theme($theme-config) {
|
5
|
+
$theme: utils.using-theme($theme_config);
|
6
|
+
|
7
|
+
.wlcm-filters-unit {
|
8
|
+
&__chevron {
|
9
|
+
width: 12px;
|
10
|
+
height: 12px;
|
11
|
+
display: flex;
|
12
|
+
align-items: center;
|
13
|
+
justify-content: center;
|
14
|
+
transform: rotateZ(-90deg);
|
15
|
+
transition: 225ms cubic-bezier(0.4, 0, 0.2, 1),
|
16
|
+
box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
.wlcm-filters-unit-header {
|
21
|
+
display: flex;
|
22
|
+
align-items: center;
|
23
|
+
justify-content: space-between;
|
24
|
+
height: 30px;
|
25
|
+
width: 100%;
|
26
|
+
|
27
|
+
section {
|
28
|
+
display: flex;
|
29
|
+
align-items: center;
|
30
|
+
}
|
31
|
+
|
32
|
+
.wlcm-entities-count {
|
33
|
+
margin-left: 6px;
|
34
|
+
}
|
35
|
+
|
36
|
+
.reset-btn {
|
37
|
+
margin-right: 12px;
|
38
|
+
}
|
39
|
+
|
40
|
+
&__label {
|
41
|
+
font-family: map-get($theme, bold-font-family);
|
42
|
+
letter-spacing: 0.41px;
|
43
|
+
line-height: 24px;
|
44
|
+
font-size: 14px;
|
45
|
+
}
|
46
|
+
}
|
47
|
+
|
48
|
+
.reset-btn {
|
49
|
+
border: none;
|
50
|
+
outline: none;
|
51
|
+
background: white;
|
52
|
+
font-family: map-get($theme, bold-font-family);
|
53
|
+
color: map-get($theme, primary-color);
|
54
|
+
letter-spacing: 0.41px;
|
55
|
+
font-size: 14px;
|
56
|
+
padding: 0;
|
57
|
+
}
|
58
|
+
|
59
|
+
.wlcm-filters-unit-checkboxes {
|
60
|
+
display: grid;
|
61
|
+
grid-auto-flow: row;
|
62
|
+
grid-auto-rows: max-content;
|
63
|
+
gap: 4px;
|
64
|
+
}
|
65
|
+
|
66
|
+
.wlcm-filters-unit {
|
67
|
+
box-shadow: none !important;
|
68
|
+
|
69
|
+
.wlcm-filters-unit-header {
|
70
|
+
background-color: white !important;
|
71
|
+
}
|
72
|
+
|
73
|
+
.mat-content {
|
74
|
+
margin: 0 !important;
|
75
|
+
}
|
76
|
+
|
77
|
+
.mat-expansion-panel-body {
|
78
|
+
padding: 8px 0 !important;
|
79
|
+
}
|
80
|
+
|
81
|
+
&.mat-expanded {
|
82
|
+
.wlcm-filters-unit__chevron {
|
83
|
+
color: map-get($theme, primary-color);
|
84
|
+
transform: rotateZ(0deg);
|
85
|
+
}
|
86
|
+
}
|
87
|
+
|
88
|
+
mat-expansion-panel-header {
|
89
|
+
padding: 0 !important;
|
90
|
+
}
|
91
|
+
}
|
92
|
+
}
|
@@ -0,0 +1,89 @@
|
|
1
|
+
@use 'sass:map';
|
2
|
+
@use '../../core/utils' as utils;
|
3
|
+
|
4
|
+
@mixin theme($theme-config) {
|
5
|
+
$color-config: utils.get-color-config($theme_config);
|
6
|
+
$primary: map-get($color-config, primary);
|
7
|
+
$accent: map-get($color-config, accent);
|
8
|
+
$warn: map-get($color-config, warn);
|
9
|
+
|
10
|
+
$typography-config: utils.get-typography-config($theme_config);
|
11
|
+
$bold-font-family: utils.get-bold-typography($typography-config);
|
12
|
+
$medium-font-family: utils.get-medium-typography($typography-config);
|
13
|
+
$regular-font-family: utils.get-regular-typography($typography-config);
|
14
|
+
|
15
|
+
mat-checkbox {
|
16
|
+
.mdc-checkbox {
|
17
|
+
padding: 0 !important;
|
18
|
+
}
|
19
|
+
|
20
|
+
.mat-ripple,
|
21
|
+
.mdc-checkbox__ripple {
|
22
|
+
display: none !important;
|
23
|
+
}
|
24
|
+
|
25
|
+
.mdc-checkbox__background {
|
26
|
+
width: 16px;
|
27
|
+
height: 16px;
|
28
|
+
box-sizing: border-box;
|
29
|
+
top: 0 !important;
|
30
|
+
left: 0 !important;
|
31
|
+
background: transparent !important;
|
32
|
+
border: 1px solid #d5d5d5 !important;
|
33
|
+
border-radius: 4px;
|
34
|
+
|
35
|
+
.mdc-checkbox__checkmark {
|
36
|
+
transition: 0s !important;
|
37
|
+
}
|
38
|
+
}
|
39
|
+
|
40
|
+
.mdc-checkbox__checkmark-path {
|
41
|
+
stroke: $primary !important;
|
42
|
+
d: path('M 5 11.7 L 11 16.6 L 19 7') !important;
|
43
|
+
}
|
44
|
+
|
45
|
+
label {
|
46
|
+
padding-left: 8px !important;
|
47
|
+
padding-bottom: 2px !important;
|
48
|
+
letter-spacing: 0.41px;
|
49
|
+
line-height: 24px;
|
50
|
+
user-select: none;
|
51
|
+
font-size: 14px;
|
52
|
+
}
|
53
|
+
|
54
|
+
&.mat-mdc-checkbox-checked {
|
55
|
+
.mdc-checkbox__background {
|
56
|
+
color: $primary !important;
|
57
|
+
border-color: $primary !important;
|
58
|
+
border-width: 2px !important;
|
59
|
+
}
|
60
|
+
}
|
61
|
+
|
62
|
+
.mdc-checkbox__native-control {
|
63
|
+
top: 0 !important;
|
64
|
+
left: 0 !important;
|
65
|
+
height: auto !important;
|
66
|
+
width: auto !important;
|
67
|
+
}
|
68
|
+
}
|
69
|
+
|
70
|
+
.mat-pseudo-checkbox {
|
71
|
+
width: 16px !important;
|
72
|
+
height: 16px !important;
|
73
|
+
border: 1px solid #d5d5d5 !important;
|
74
|
+
background: white !important;
|
75
|
+
border-radius: 4px !important;
|
76
|
+
|
77
|
+
&.mat-pseudo-checkbox-checked {
|
78
|
+
border-width: 2px !important;
|
79
|
+
border-color: $primary !important;
|
80
|
+
|
81
|
+
&::after {
|
82
|
+
width: 5px !important;
|
83
|
+
height: 3px !important;
|
84
|
+
border-color: $primary;
|
85
|
+
top: -2.5px !important;
|
86
|
+
}
|
87
|
+
}
|
88
|
+
}
|
89
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
@use 'sass:map';
|
2
|
+
@use '../../core/utils' as utils;
|
3
|
+
|
4
|
+
@mixin theme($theme-config) {
|
5
|
+
$color-config: utils.get-color-config($theme_config);
|
6
|
+
$primary: map-get($color-config, primary);
|
7
|
+
$accent: map-get($color-config, accent);
|
8
|
+
$warn: map-get($color-config, warn);
|
9
|
+
|
10
|
+
$typography-config: utils.get-typography-config($theme_config);
|
11
|
+
$bold-font-family: utils.get-bold-typography($typography-config);
|
12
|
+
$medium-font-family: utils.get-medium-typography($typography-config);
|
13
|
+
$regular-font-family: utils.get-regular-typography($typography-config);
|
14
|
+
|
15
|
+
.wlcm-error {
|
16
|
+
display: block;
|
17
|
+
color: $warn;
|
18
|
+
font-size: 13px;
|
19
|
+
letter-spacing: 0.35px;
|
20
|
+
font-family: $regular-font-family;
|
21
|
+
line-height: 20px;
|
22
|
+
}
|
23
|
+
}
|
@@ -0,0 +1,65 @@
|
|
1
|
+
@use 'sass:map';
|
2
|
+
@use '../../core/utils' as utils;
|
3
|
+
|
4
|
+
@mixin theme($theme-config) {
|
5
|
+
$theme: utils.using-theme($theme_config);
|
6
|
+
|
7
|
+
.wlcm-form-field {
|
8
|
+
display: block;
|
9
|
+
|
10
|
+
&.wlcm-field-focused {
|
11
|
+
.wlcm-field-container {
|
12
|
+
border-color: map-get($theme, focus-field-outline-color);
|
13
|
+
}
|
14
|
+
}
|
15
|
+
|
16
|
+
&:not(.wlcm-field-focused, .wlcm-field-touched.wlcm-field-invalid) {
|
17
|
+
.wlcm-field-container:hover {
|
18
|
+
border-color: #5a5a5a;
|
19
|
+
}
|
20
|
+
}
|
21
|
+
}
|
22
|
+
|
23
|
+
.wlcm-field-touched {
|
24
|
+
&.wlcm-field-invalid {
|
25
|
+
.wlcm-field-container {
|
26
|
+
border-color: map-get($theme, warn-color);
|
27
|
+
}
|
28
|
+
|
29
|
+
.wlcm-field-error-container {
|
30
|
+
wlcm-error {
|
31
|
+
display: block;
|
32
|
+
}
|
33
|
+
}
|
34
|
+
}
|
35
|
+
}
|
36
|
+
|
37
|
+
.wlcm-field-container {
|
38
|
+
display: flex;
|
39
|
+
align-items: center;
|
40
|
+
padding: 6px 8px;
|
41
|
+
border: 1px solid map-get($theme, field-outline-color);
|
42
|
+
box-sizing: border-box;
|
43
|
+
border-radius: 4px;
|
44
|
+
position: relative;
|
45
|
+
}
|
46
|
+
|
47
|
+
.wlcm-field-error-container {
|
48
|
+
min-height: 20px;
|
49
|
+
|
50
|
+
wlcm-error {
|
51
|
+
display: none;
|
52
|
+
}
|
53
|
+
}
|
54
|
+
|
55
|
+
.wlcm-form-field-input {
|
56
|
+
border: 0;
|
57
|
+
padding: 0;
|
58
|
+
outline: none;
|
59
|
+
line-height: 18px;
|
60
|
+
width: 100%;
|
61
|
+
font-size: 14px;
|
62
|
+
letter-spacing: 0.41px;
|
63
|
+
font-family: map-get($theme, regular-font-family);
|
64
|
+
}
|
65
|
+
}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
@use 'sass:map';
|
2
|
+
@use '../../core/utils' as utils;
|
3
|
+
|
4
|
+
@mixin theme($theme-config) {
|
5
|
+
$color-config: utils.get-color-config($theme_config);
|
6
|
+
$primary: map-get($color-config, primary);
|
7
|
+
$accent: map-get($color-config, accent);
|
8
|
+
$warn: map-get($color-config, warn);
|
9
|
+
|
10
|
+
$typography-config: utils.get-typography-config($theme_config);
|
11
|
+
$bold-font-family: utils.get-bold-typography($typography-config);
|
12
|
+
$medium-font-family: utils.get-medium-typography($typography-config);
|
13
|
+
$regular-font-family: utils.get-regular-typography($typography-config);
|
14
|
+
|
15
|
+
.wlcm-label {
|
16
|
+
display: flex;
|
17
|
+
align-items: center;
|
18
|
+
font-family: $medium-font-family;
|
19
|
+
letter-spacing: 0.41px;
|
20
|
+
line-height: 20px;
|
21
|
+
margin-bottom: 5px;
|
22
|
+
font-size: 14px;
|
23
|
+
|
24
|
+
&.required {
|
25
|
+
.wlcm-label-asterisk {
|
26
|
+
display: block;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
}
|
30
|
+
|
31
|
+
.wlcm-label-asterisk {
|
32
|
+
color: $warn;
|
33
|
+
display: none;
|
34
|
+
margin-right: 2px;
|
35
|
+
}
|
36
|
+
|
37
|
+
.wlcm-field-required {
|
38
|
+
.wlcm-label-asterisk {
|
39
|
+
display: block;
|
40
|
+
}
|
41
|
+
}
|
42
|
+
}
|