@cuby-ui/cdk 0.0.15 → 0.0.16
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/esm2020/index.mjs +4 -3
- package/esm2020/pipes/filter.pipe.mjs +17 -0
- package/esm2020/pipes/index.mjs +2 -0
- package/esm2020/services/popover.service.mjs +2 -2
- package/esm2020/types/index.mjs +3 -1
- package/esm2020/types/mapper.mjs +2 -0
- package/esm2020/types/matcher.mjs +2 -0
- package/fesm2015/cuby-ui-cdk.mjs +18 -3
- package/fesm2015/cuby-ui-cdk.mjs.map +1 -1
- package/fesm2020/cuby-ui-cdk.mjs +18 -3
- package/fesm2020/cuby-ui-cdk.mjs.map +1 -1
- package/index.d.ts +3 -2
- package/package.json +1 -1
- package/pipes/filter.pipe.d.ts +8 -0
- package/pipes/index.d.ts +1 -0
- package/services/popover.service.d.ts +2 -2
- package/types/index.d.ts +2 -0
- package/types/mapper.d.ts +1 -0
- package/types/matcher.d.ts +2 -0
package/esm2020/index.mjs
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
export * from './interfaces';
|
|
2
|
-
export * from './types';
|
|
3
1
|
export * from './directives';
|
|
2
|
+
export * from './interfaces';
|
|
3
|
+
export * from './pipes';
|
|
4
4
|
export * from './services';
|
|
5
|
+
export * from './types';
|
|
5
6
|
export * from './utils';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jZGsvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class CuiFilterPipe {
|
|
4
|
+
transform(items, matcher, ...args) {
|
|
5
|
+
return items.filter(item => matcher(item, ...args));
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
CuiFilterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
9
|
+
CuiFilterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: CuiFilterPipe, isStandalone: true, name: "cuiFilter" });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiFilterPipe, decorators: [{
|
|
11
|
+
type: Pipe,
|
|
12
|
+
args: [{
|
|
13
|
+
standalone: true,
|
|
14
|
+
name: 'cuiFilter'
|
|
15
|
+
}]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvcGlwZXMvZmlsdGVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRckMsTUFBTSxPQUFPLGFBQWE7SUFDeEIsU0FBUyxDQUF5QixLQUF1QixFQUFFLE9BQThCLEVBQUUsR0FBRyxJQUFPO1FBQ25HLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7OzJHQUhVLGFBQWE7eUdBQWIsYUFBYTs0RkFBYixhQUFhO2tCQUp6QixJQUFJO21CQUFDO29CQUNKLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUUsV0FBVztpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ3VpTWF0Y2hlciB9IGZyb20gJy4uL3R5cGVzJztcblxuQFBpcGUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBuYW1lOiAnY3VpRmlsdGVyJ1xufSlcbmV4cG9ydCBjbGFzcyBDdWlGaWx0ZXJQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybTxULCBVIGV4dGVuZHMgdW5rbm93bltdPihpdGVtczogUmVhZG9ubHlBcnJheTxUPiwgbWF0Y2hlcjogQ3VpTWF0Y2hlcjxbVCwgLi4uVV0+LCAuLi5hcmdzOiBVKTogVFtdIHtcbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKGl0ZW0gPT4gbWF0Y2hlcihpdGVtLCAuLi5hcmdzKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './filter.pipe';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvcGlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ZpbHRlci5waXBlJztcbiJdfQ==
|
|
@@ -30,5 +30,5 @@ CuiPopoverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", versio
|
|
|
30
30
|
CuiPopoverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiPopoverService });
|
|
31
31
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiPopoverService, decorators: [{
|
|
32
32
|
type: Injectable
|
|
33
|
-
}], ctorParameters: function () { return [{ type: undefined }, { type:
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
}], ctorParameters: function () { return [{ type: undefined }, { type: undefined }, { type: undefined }]; } });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NlcnZpY2VzL3BvcG92ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWxDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBYTVDLE1BQU0sT0FBZ0IsaUJBQWlCO0lBS3JDLFlBQ0UsS0FBbUUsRUFDbkUsU0FBb0IsRUFDSCxVQUFhLEVBQU87UUFBcEIsWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQVB0QixpQkFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQVNuRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUM3QixDQUFDO0lBRU0sSUFBSSxDQUNULE9BQXFDLEVBQ3JDLFVBQXNCLEVBQUU7UUFFeEIsT0FBTyxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUMvQixNQUFNLElBQUksR0FBa0I7Z0JBQzFCLEdBQUcsSUFBSSxDQUFDLE9BQU87Z0JBQ2YsR0FBRyxPQUFPO2dCQUNWLFNBQVMsRUFBRSxRQUFRO2dCQUNuQixFQUFFLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2hDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztnQkFDekIsT0FBTyxFQUFFLE9BQU87YUFDakIsQ0FBQztZQUVGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBRS9DLE9BQU8sR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3RFLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7K0dBbENtQixpQkFBaUI7bUhBQWpCLGlCQUFpQjs0RkFBakIsaUJBQWlCO2tCQUR0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQcm92aWRlclRva2VuLCBUZW1wbGF0ZVJlZiwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQ3VpSWRTZXJ2aWNlIH0gZnJvbSAnLi9pZC5zZXJ2aWNlJztcblxuLy8gVE9ETzogQ29udGVudCDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YLQuNC/0L7QvCDQuNC3INC00LjRgNC10LrRgtC40LLRiyAqY29udGVudFxuZXhwb3J0IGludGVyZmFjZSBDdWlQb3BvdmVyQ29udGV4dCB7XG4gIHJlYWRvbmx5ICRpbXBsaWNpdDogT2JzZXJ2ZXI8YW55PjtcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgY29tcG9uZW50OiBUeXBlPHVua25vd24+O1xuICByZWFkb25seSBjb250ZW50OiBUeXBlPHVua25vd24+IHwgVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIEN1aVBvcG92ZXI8VD4gPSBUICYgQ3VpUG9wb3ZlckNvbnRleHQ7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDdWlQb3BvdmVyU2VydmljZTxUPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY3VpSWRTZXJ2aWNlID0gaW5qZWN0KEN1aUlkU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaXRlbXMkOiBCZWhhdmlvclN1YmplY3Q8UmVhZG9ubHlBcnJheTxDdWlQb3BvdmVyPFQ+Pj47XG4gIHByaXZhdGUgcmVhZG9ubHkgY29tcG9uZW50OiBUeXBlPGFueT47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgaXRlbXM6IFByb3ZpZGVyVG9rZW48QmVoYXZpb3JTdWJqZWN0PFJlYWRvbmx5QXJyYXk8Q3VpUG9wb3ZlcjxUPj4+PixcbiAgICBjb21wb25lbnQ6IFR5cGU8YW55PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFQgPSB7fSBhcyBUXG4gICkge1xuICAgIHRoaXMuaXRlbXMkID0gaW5qZWN0KGl0ZW1zKTtcbiAgICB0aGlzLmNvbXBvbmVudCA9IGNvbXBvbmVudDtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKFxuICAgIGNvbnRlbnQ6IEN1aVBvcG92ZXJDb250ZXh0Wydjb250ZW50J10sXG4gICAgb3B0aW9uczogUGFydGlhbDxUPiA9IHt9XG4gICk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZShvYnNlcnZlciA9PiB7XG4gICAgICBjb25zdCBpdGVtOiBDdWlQb3BvdmVyPFQ+ID0ge1xuICAgICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICRpbXBsaWNpdDogb2JzZXJ2ZXIsXG4gICAgICAgIGlkOiB0aGlzLmN1aUlkU2VydmljZS5nZW5lcmF0ZSgpLFxuICAgICAgICBjb21wb25lbnQ6IHRoaXMuY29tcG9uZW50LFxuICAgICAgICBjb250ZW50OiBjb250ZW50XG4gICAgICB9O1xuXG4gICAgICB0aGlzLml0ZW1zJC5uZXh0KFsuLi50aGlzLml0ZW1zJC52YWx1ZSwgaXRlbV0pO1xuXG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICB0aGlzLml0ZW1zJC5uZXh0KHRoaXMuaXRlbXMkLnZhbHVlLmZpbHRlcih2YWx1ZSA9PiB2YWx1ZSAhPT0gaXRlbSkpO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
package/esm2020/types/index.mjs
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export * from './input-type';
|
|
2
|
+
export * from './mapper';
|
|
3
|
+
export * from './matcher';
|
|
2
4
|
export * from './nullable';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2lucHV0LXR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9tYXRjaGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbnVsbGFibGUnO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3R5cGVzL21hcHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgTWFwcGVyPFQgZXh0ZW5kcyB1bmtub3duW10sIEc+ID0gKC4uLmFyZ3M6IFQpID0+IEc7XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay90eXBlcy9tYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE1hcHBlciB9IGZyb20gJy4vbWFwcGVyJztcblxuZXhwb3J0IHR5cGUgQ3VpTWF0Y2hlcjxJIGV4dGVuZHMgdW5rbm93bltdPiA9IE1hcHBlcjxJLCBib29sZWFuPjtcbiJdfQ==
|
package/fesm2015/cuby-ui-cdk.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, inject, ElementRef, Directive, HostListener, InjectionToken } from '@angular/core';
|
|
2
|
+
import { Injectable, inject, ElementRef, Directive, HostListener, Pipe, InjectionToken } from '@angular/core';
|
|
3
3
|
import { NgControl, NgModel } from '@angular/forms';
|
|
4
4
|
import { Subject, Observable, takeUntil } from 'rxjs';
|
|
5
5
|
|
|
@@ -52,7 +52,7 @@ CuiPopoverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", versio
|
|
|
52
52
|
CuiPopoverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiPopoverService });
|
|
53
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiPopoverService, decorators: [{
|
|
54
54
|
type: Injectable
|
|
55
|
-
}], ctorParameters: function () { return [{ type: undefined }, { type:
|
|
55
|
+
}], ctorParameters: function () { return [{ type: undefined }, { type: undefined }, { type: undefined }]; } });
|
|
56
56
|
|
|
57
57
|
class CuiAutoResizingDirective {
|
|
58
58
|
constructor() {
|
|
@@ -130,6 +130,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
130
130
|
}]
|
|
131
131
|
}], ctorParameters: function () { return []; } });
|
|
132
132
|
|
|
133
|
+
class CuiFilterPipe {
|
|
134
|
+
transform(items, matcher, ...args) {
|
|
135
|
+
return items.filter(item => matcher(item, ...args));
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
CuiFilterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
139
|
+
CuiFilterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: CuiFilterPipe, isStandalone: true, name: "cuiFilter" });
|
|
140
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiFilterPipe, decorators: [{
|
|
141
|
+
type: Pipe,
|
|
142
|
+
args: [{
|
|
143
|
+
standalone: true,
|
|
144
|
+
name: 'cuiFilter'
|
|
145
|
+
}]
|
|
146
|
+
}] });
|
|
147
|
+
|
|
133
148
|
function cuiCreateToken(defaults) {
|
|
134
149
|
return cuiCreateTokenFromFactory(() => defaults);
|
|
135
150
|
}
|
|
@@ -145,5 +160,5 @@ function cuiProvide(provide, useExisting, multi = false) {
|
|
|
145
160
|
* Generated bundle index. Do not edit.
|
|
146
161
|
*/
|
|
147
162
|
|
|
148
|
-
export { CuiAutoResizingDirective, CuiDestroyService, CuiElementDirective, CuiPopoverService, cuiCreateToken, cuiCreateTokenFromFactory, cuiProvide };
|
|
163
|
+
export { CuiAutoResizingDirective, CuiDestroyService, CuiElementDirective, CuiFilterPipe, CuiPopoverService, cuiCreateToken, cuiCreateTokenFromFactory, cuiProvide };
|
|
149
164
|
//# sourceMappingURL=cuby-ui-cdk.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cuby-ui-cdk.mjs","sources":["../../../projects/cdk/services/destroy.service.ts","../../../projects/cdk/services/id.service.ts","../../../projects/cdk/services/popover.service.ts","../../../projects/cdk/directives/auto-resizing.directive.ts","../../../projects/cdk/directives/element.directive.ts","../../../projects/cdk/utils/token/create-token.ts","../../../projects/cdk/utils/token/provide.ts","../../../projects/cdk/cuby-ui-cdk.ts"],"sourcesContent":["import type { OnDestroy } from '@angular/core';\nimport { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Injectable()\nexport class CuiDestroyService extends Subject<void> implements OnDestroy {\n public ngOnDestroy(): void {\n this.next();\n this.complete();\n }\n}\n","import { Injectable } from '@angular/core';\n\nconst CUI = 'cui_';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CuiIdService {\n private static autoId = 0;\n\n public generate(): string {\n return `${CUI}${CuiIdService.autoId++}${Date.now()}`;\n }\n}\n","import { inject, Injectable, ProviderToken, TemplateRef, Type } from '@angular/core';\nimport type { BehaviorSubject, Observer } from 'rxjs';\nimport { Observable } from 'rxjs';\n\nimport { CuiIdService } from './id.service';\n\nexport interface CuiPopoverContext {\n readonly $implicit: Observer<any>;\n readonly id: string;\n readonly component: Type<unknown>;\n readonly content: Type<unknown> | TemplateRef<unknown>;\n}\n\nexport type CuiPopover<T> = T & CuiPopoverContext;\n\n@Injectable()\nexport abstract class CuiPopoverService<T> {\n private readonly cuiIdService = inject(CuiIdService);\n private readonly items$: BehaviorSubject<ReadonlyArray<CuiPopover<T>>>;\n private readonly component: Type<any>;\n\n constructor(\n items: ProviderToken<BehaviorSubject<ReadonlyArray<CuiPopover<T>>>>,\n component: Type<any>,\n private readonly options: T = {} as T\n ) {\n this.items$ = inject(items);\n this.component = component;\n }\n\n public open(\n content: CuiPopoverContext['content'],\n options: Partial<T> = {}\n ): Observable<void> {\n return new Observable(observer => {\n const item: CuiPopover<T> = {\n ...this.options,\n ...options,\n $implicit: observer,\n id: this.cuiIdService.generate(),\n component: this.component,\n content: content\n };\n\n this.items$.next([...this.items$.value, item]);\n\n return () => {\n this.items$.next(this.items$.value.filter(value => value !== item));\n };\n });\n }\n}\n","import {\n AfterViewChecked,\n AfterViewInit,\n Directive,\n ElementRef,\n HostListener,\n inject,\n OnInit\n} from '@angular/core';\nimport { NgControl, NgModel } from '@angular/forms';\nimport { takeUntil } from 'rxjs';\n\nimport { CuiDestroyService } from '../services';\n\n@Directive({\n standalone: true,\n selector: 'textarea[cuiAutoResizing]',\n providers: [CuiDestroyService]\n})\nexport class CuiAutoResizingDirective implements OnInit, AfterViewInit, AfterViewChecked {\n private readonly element = inject(ElementRef).nativeElement as HTMLElement;\n private readonly ngControl = inject(NgControl, { self: true, optional: true });\n private readonly ngModel = inject(NgModel, { self: true, optional: true });\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n\n public ngOnInit(): void {\n this.initNgControlValueChangeSubscription();\n this.initNgModelValueChangeSubscription();\n }\n\n public ngAfterViewInit(): void {\n this.initHiddenOverflow();\n }\n\n // TODO: Бьёт по производительности - найти решение получше\n public ngAfterViewChecked(): void {\n this.resize();\n }\n\n @HostListener('input')\n protected onInput(): void {\n this.resize();\n }\n\n private initNgControlValueChangeSubscription(): void {\n if (!this.ngControl) {\n return;\n }\n\n this.ngControl.valueChanges!\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.resize.bind(this));\n }\n\n private initNgModelValueChangeSubscription(): void {\n if (!this.ngModel) {\n return;\n }\n\n this.ngModel.valueChanges!\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.resize.bind(this));\n }\n\n private initHiddenOverflow(): void {\n this.element.style.overflow = 'hidden';\n }\n\n private resize(): void {\n this.element.style.height = 'auto';\n this.element.style.height = this.element.scrollHeight + 'px';\n }\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n standalone: true,\n selector: '[cuiElement]',\n exportAs: 'elementRef',\n})\nexport class CuiElementDirective<T extends Element = HTMLElement> implements ElementRef<T> {\n public nativeElement = inject(ElementRef<T>).nativeElement;\n\n constructor() {\n return new ElementRef<T>(this.nativeElement);\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport function cuiCreateToken<T>(defaults: T): InjectionToken<T> {\n return cuiCreateTokenFromFactory(() => defaults);\n}\n\nexport function cuiCreateTokenFromFactory<T>(factory: () => T): InjectionToken<T> {\n return new InjectionToken<T>('', { factory });\n}\n","import type { ExistingProvider, ProviderToken } from '@angular/core';\n\nexport function cuiProvide<T>(\n provide: ProviderToken<T>,\n useExisting: ProviderToken<T>,\n): ExistingProvider;\nexport function cuiProvide<T>(\n provide: ProviderToken<T | T[]>,\n useExisting: ProviderToken<T>,\n multi: boolean,\n): ExistingProvider;\nexport function cuiProvide<T>(\n provide: ProviderToken<T>,\n useExisting: ProviderToken<T>,\n multi = false,\n): ExistingProvider {\n return { provide, useExisting, multi };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cuby-ui-cdk.mjs","sources":["../../../projects/cdk/services/destroy.service.ts","../../../projects/cdk/services/id.service.ts","../../../projects/cdk/services/popover.service.ts","../../../projects/cdk/directives/auto-resizing.directive.ts","../../../projects/cdk/directives/element.directive.ts","../../../projects/cdk/pipes/filter.pipe.ts","../../../projects/cdk/utils/token/create-token.ts","../../../projects/cdk/utils/token/provide.ts","../../../projects/cdk/cuby-ui-cdk.ts"],"sourcesContent":["import type { OnDestroy } from '@angular/core';\nimport { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Injectable()\nexport class CuiDestroyService extends Subject<void> implements OnDestroy {\n public ngOnDestroy(): void {\n this.next();\n this.complete();\n }\n}\n","import { Injectable } from '@angular/core';\n\nconst CUI = 'cui_';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CuiIdService {\n private static autoId = 0;\n\n public generate(): string {\n return `${CUI}${CuiIdService.autoId++}${Date.now()}`;\n }\n}\n","import type { ProviderToken, TemplateRef, Type } from '@angular/core';\nimport { inject, Injectable } from '@angular/core';\nimport type { BehaviorSubject, Observer } from 'rxjs';\nimport { Observable } from 'rxjs';\n\nimport { CuiIdService } from './id.service';\n\n// TODO: Content должен быть типом из директивы *content\nexport interface CuiPopoverContext {\n readonly $implicit: Observer<any>;\n readonly id: string;\n readonly component: Type<unknown>;\n readonly content: Type<unknown> | TemplateRef<unknown> | string;\n}\n\nexport type CuiPopover<T> = T & CuiPopoverContext;\n\n@Injectable()\nexport abstract class CuiPopoverService<T> {\n private readonly cuiIdService = inject(CuiIdService);\n private readonly items$: BehaviorSubject<ReadonlyArray<CuiPopover<T>>>;\n private readonly component: Type<any>;\n\n constructor(\n items: ProviderToken<BehaviorSubject<ReadonlyArray<CuiPopover<T>>>>,\n component: Type<any>,\n private readonly options: T = {} as T\n ) {\n this.items$ = inject(items);\n this.component = component;\n }\n\n public open(\n content: CuiPopoverContext['content'],\n options: Partial<T> = {}\n ): Observable<void> {\n return new Observable(observer => {\n const item: CuiPopover<T> = {\n ...this.options,\n ...options,\n $implicit: observer,\n id: this.cuiIdService.generate(),\n component: this.component,\n content: content\n };\n\n this.items$.next([...this.items$.value, item]);\n\n return () => {\n this.items$.next(this.items$.value.filter(value => value !== item));\n };\n });\n }\n}\n","import {\n AfterViewChecked,\n AfterViewInit,\n Directive,\n ElementRef,\n HostListener,\n inject,\n OnInit\n} from '@angular/core';\nimport { NgControl, NgModel } from '@angular/forms';\nimport { takeUntil } from 'rxjs';\n\nimport { CuiDestroyService } from '../services';\n\n@Directive({\n standalone: true,\n selector: 'textarea[cuiAutoResizing]',\n providers: [CuiDestroyService]\n})\nexport class CuiAutoResizingDirective implements OnInit, AfterViewInit, AfterViewChecked {\n private readonly element = inject(ElementRef).nativeElement as HTMLElement;\n private readonly ngControl = inject(NgControl, { self: true, optional: true });\n private readonly ngModel = inject(NgModel, { self: true, optional: true });\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n\n public ngOnInit(): void {\n this.initNgControlValueChangeSubscription();\n this.initNgModelValueChangeSubscription();\n }\n\n public ngAfterViewInit(): void {\n this.initHiddenOverflow();\n }\n\n // TODO: Бьёт по производительности - найти решение получше\n public ngAfterViewChecked(): void {\n this.resize();\n }\n\n @HostListener('input')\n protected onInput(): void {\n this.resize();\n }\n\n private initNgControlValueChangeSubscription(): void {\n if (!this.ngControl) {\n return;\n }\n\n this.ngControl.valueChanges!\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.resize.bind(this));\n }\n\n private initNgModelValueChangeSubscription(): void {\n if (!this.ngModel) {\n return;\n }\n\n this.ngModel.valueChanges!\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.resize.bind(this));\n }\n\n private initHiddenOverflow(): void {\n this.element.style.overflow = 'hidden';\n }\n\n private resize(): void {\n this.element.style.height = 'auto';\n this.element.style.height = this.element.scrollHeight + 'px';\n }\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n standalone: true,\n selector: '[cuiElement]',\n exportAs: 'elementRef',\n})\nexport class CuiElementDirective<T extends Element = HTMLElement> implements ElementRef<T> {\n public nativeElement = inject(ElementRef<T>).nativeElement;\n\n constructor() {\n return new ElementRef<T>(this.nativeElement);\n }\n}\n","import type { PipeTransform } from '@angular/core';\nimport { Pipe } from '@angular/core';\n\nimport { CuiMatcher } from '../types';\n\n@Pipe({\n standalone: true,\n name: 'cuiFilter'\n})\nexport class CuiFilterPipe implements PipeTransform {\n transform<T, U extends unknown[]>(items: ReadonlyArray<T>, matcher: CuiMatcher<[T, ...U]>, ...args: U): T[] {\n return items.filter(item => matcher(item, ...args));\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport function cuiCreateToken<T>(defaults: T): InjectionToken<T> {\n return cuiCreateTokenFromFactory(() => defaults);\n}\n\nexport function cuiCreateTokenFromFactory<T>(factory: () => T): InjectionToken<T> {\n return new InjectionToken<T>('', { factory });\n}\n","import type { ExistingProvider, ProviderToken } from '@angular/core';\n\nexport function cuiProvide<T>(\n provide: ProviderToken<T>,\n useExisting: ProviderToken<T>,\n): ExistingProvider;\nexport function cuiProvide<T>(\n provide: ProviderToken<T | T[]>,\n useExisting: ProviderToken<T>,\n multi: boolean,\n): ExistingProvider;\nexport function cuiProvide<T>(\n provide: ProviderToken<T>,\n useExisting: ProviderToken<T>,\n multi = false,\n): ExistingProvider {\n return { provide, useExisting, multi };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/fesm2020/cuby-ui-cdk.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, inject, ElementRef, Directive, HostListener, InjectionToken } from '@angular/core';
|
|
2
|
+
import { Injectable, inject, ElementRef, Directive, HostListener, Pipe, InjectionToken } from '@angular/core';
|
|
3
3
|
import { NgControl, NgModel } from '@angular/forms';
|
|
4
4
|
import { Subject, Observable, takeUntil } from 'rxjs';
|
|
5
5
|
|
|
@@ -59,7 +59,7 @@ CuiPopoverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", versio
|
|
|
59
59
|
CuiPopoverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiPopoverService });
|
|
60
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiPopoverService, decorators: [{
|
|
61
61
|
type: Injectable
|
|
62
|
-
}], ctorParameters: function () { return [{ type: undefined }, { type:
|
|
62
|
+
}], ctorParameters: function () { return [{ type: undefined }, { type: undefined }, { type: undefined }]; } });
|
|
63
63
|
|
|
64
64
|
class CuiAutoResizingDirective {
|
|
65
65
|
constructor() {
|
|
@@ -137,6 +137,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
137
137
|
}]
|
|
138
138
|
}], ctorParameters: function () { return []; } });
|
|
139
139
|
|
|
140
|
+
class CuiFilterPipe {
|
|
141
|
+
transform(items, matcher, ...args) {
|
|
142
|
+
return items.filter(item => matcher(item, ...args));
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
CuiFilterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
146
|
+
CuiFilterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: CuiFilterPipe, isStandalone: true, name: "cuiFilter" });
|
|
147
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiFilterPipe, decorators: [{
|
|
148
|
+
type: Pipe,
|
|
149
|
+
args: [{
|
|
150
|
+
standalone: true,
|
|
151
|
+
name: 'cuiFilter'
|
|
152
|
+
}]
|
|
153
|
+
}] });
|
|
154
|
+
|
|
140
155
|
function cuiCreateToken(defaults) {
|
|
141
156
|
return cuiCreateTokenFromFactory(() => defaults);
|
|
142
157
|
}
|
|
@@ -152,5 +167,5 @@ function cuiProvide(provide, useExisting, multi = false) {
|
|
|
152
167
|
* Generated bundle index. Do not edit.
|
|
153
168
|
*/
|
|
154
169
|
|
|
155
|
-
export { CuiAutoResizingDirective, CuiDestroyService, CuiElementDirective, CuiPopoverService, cuiCreateToken, cuiCreateTokenFromFactory, cuiProvide };
|
|
170
|
+
export { CuiAutoResizingDirective, CuiDestroyService, CuiElementDirective, CuiFilterPipe, CuiPopoverService, cuiCreateToken, cuiCreateTokenFromFactory, cuiProvide };
|
|
156
171
|
//# sourceMappingURL=cuby-ui-cdk.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cuby-ui-cdk.mjs","sources":["../../../projects/cdk/services/destroy.service.ts","../../../projects/cdk/services/id.service.ts","../../../projects/cdk/services/popover.service.ts","../../../projects/cdk/directives/auto-resizing.directive.ts","../../../projects/cdk/directives/element.directive.ts","../../../projects/cdk/utils/token/create-token.ts","../../../projects/cdk/utils/token/provide.ts","../../../projects/cdk/cuby-ui-cdk.ts"],"sourcesContent":["import type { OnDestroy } from '@angular/core';\nimport { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Injectable()\nexport class CuiDestroyService extends Subject<void> implements OnDestroy {\n public ngOnDestroy(): void {\n this.next();\n this.complete();\n }\n}\n","import { Injectable } from '@angular/core';\n\nconst CUI = 'cui_';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CuiIdService {\n private static autoId = 0;\n\n public generate(): string {\n return `${CUI}${CuiIdService.autoId++}${Date.now()}`;\n }\n}\n","import { inject, Injectable, ProviderToken, TemplateRef, Type } from '@angular/core';\nimport type { BehaviorSubject, Observer } from 'rxjs';\nimport { Observable } from 'rxjs';\n\nimport { CuiIdService } from './id.service';\n\nexport interface CuiPopoverContext {\n readonly $implicit: Observer<any>;\n readonly id: string;\n readonly component: Type<unknown>;\n readonly content: Type<unknown> | TemplateRef<unknown>;\n}\n\nexport type CuiPopover<T> = T & CuiPopoverContext;\n\n@Injectable()\nexport abstract class CuiPopoverService<T> {\n private readonly cuiIdService = inject(CuiIdService);\n private readonly items$: BehaviorSubject<ReadonlyArray<CuiPopover<T>>>;\n private readonly component: Type<any>;\n\n constructor(\n items: ProviderToken<BehaviorSubject<ReadonlyArray<CuiPopover<T>>>>,\n component: Type<any>,\n private readonly options: T = {} as T\n ) {\n this.items$ = inject(items);\n this.component = component;\n }\n\n public open(\n content: CuiPopoverContext['content'],\n options: Partial<T> = {}\n ): Observable<void> {\n return new Observable(observer => {\n const item: CuiPopover<T> = {\n ...this.options,\n ...options,\n $implicit: observer,\n id: this.cuiIdService.generate(),\n component: this.component,\n content: content\n };\n\n this.items$.next([...this.items$.value, item]);\n\n return () => {\n this.items$.next(this.items$.value.filter(value => value !== item));\n };\n });\n }\n}\n","import {\n AfterViewChecked,\n AfterViewInit,\n Directive,\n ElementRef,\n HostListener,\n inject,\n OnInit\n} from '@angular/core';\nimport { NgControl, NgModel } from '@angular/forms';\nimport { takeUntil } from 'rxjs';\n\nimport { CuiDestroyService } from '../services';\n\n@Directive({\n standalone: true,\n selector: 'textarea[cuiAutoResizing]',\n providers: [CuiDestroyService]\n})\nexport class CuiAutoResizingDirective implements OnInit, AfterViewInit, AfterViewChecked {\n private readonly element = inject(ElementRef).nativeElement as HTMLElement;\n private readonly ngControl = inject(NgControl, { self: true, optional: true });\n private readonly ngModel = inject(NgModel, { self: true, optional: true });\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n\n public ngOnInit(): void {\n this.initNgControlValueChangeSubscription();\n this.initNgModelValueChangeSubscription();\n }\n\n public ngAfterViewInit(): void {\n this.initHiddenOverflow();\n }\n\n // TODO: Бьёт по производительности - найти решение получше\n public ngAfterViewChecked(): void {\n this.resize();\n }\n\n @HostListener('input')\n protected onInput(): void {\n this.resize();\n }\n\n private initNgControlValueChangeSubscription(): void {\n if (!this.ngControl) {\n return;\n }\n\n this.ngControl.valueChanges!\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.resize.bind(this));\n }\n\n private initNgModelValueChangeSubscription(): void {\n if (!this.ngModel) {\n return;\n }\n\n this.ngModel.valueChanges!\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.resize.bind(this));\n }\n\n private initHiddenOverflow(): void {\n this.element.style.overflow = 'hidden';\n }\n\n private resize(): void {\n this.element.style.height = 'auto';\n this.element.style.height = this.element.scrollHeight + 'px';\n }\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n standalone: true,\n selector: '[cuiElement]',\n exportAs: 'elementRef',\n})\nexport class CuiElementDirective<T extends Element = HTMLElement> implements ElementRef<T> {\n public nativeElement = inject(ElementRef<T>).nativeElement;\n\n constructor() {\n return new ElementRef<T>(this.nativeElement);\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport function cuiCreateToken<T>(defaults: T): InjectionToken<T> {\n return cuiCreateTokenFromFactory(() => defaults);\n}\n\nexport function cuiCreateTokenFromFactory<T>(factory: () => T): InjectionToken<T> {\n return new InjectionToken<T>('', { factory });\n}\n","import type { ExistingProvider, ProviderToken } from '@angular/core';\n\nexport function cuiProvide<T>(\n provide: ProviderToken<T>,\n useExisting: ProviderToken<T>,\n): ExistingProvider;\nexport function cuiProvide<T>(\n provide: ProviderToken<T | T[]>,\n useExisting: ProviderToken<T>,\n multi: boolean,\n): ExistingProvider;\nexport function cuiProvide<T>(\n provide: ProviderToken<T>,\n useExisting: ProviderToken<T>,\n multi = false,\n): ExistingProvider {\n return { provide, useExisting, multi };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cuby-ui-cdk.mjs","sources":["../../../projects/cdk/services/destroy.service.ts","../../../projects/cdk/services/id.service.ts","../../../projects/cdk/services/popover.service.ts","../../../projects/cdk/directives/auto-resizing.directive.ts","../../../projects/cdk/directives/element.directive.ts","../../../projects/cdk/pipes/filter.pipe.ts","../../../projects/cdk/utils/token/create-token.ts","../../../projects/cdk/utils/token/provide.ts","../../../projects/cdk/cuby-ui-cdk.ts"],"sourcesContent":["import type { OnDestroy } from '@angular/core';\nimport { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Injectable()\nexport class CuiDestroyService extends Subject<void> implements OnDestroy {\n public ngOnDestroy(): void {\n this.next();\n this.complete();\n }\n}\n","import { Injectable } from '@angular/core';\n\nconst CUI = 'cui_';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CuiIdService {\n private static autoId = 0;\n\n public generate(): string {\n return `${CUI}${CuiIdService.autoId++}${Date.now()}`;\n }\n}\n","import type { ProviderToken, TemplateRef, Type } from '@angular/core';\nimport { inject, Injectable } from '@angular/core';\nimport type { BehaviorSubject, Observer } from 'rxjs';\nimport { Observable } from 'rxjs';\n\nimport { CuiIdService } from './id.service';\n\n// TODO: Content должен быть типом из директивы *content\nexport interface CuiPopoverContext {\n readonly $implicit: Observer<any>;\n readonly id: string;\n readonly component: Type<unknown>;\n readonly content: Type<unknown> | TemplateRef<unknown> | string;\n}\n\nexport type CuiPopover<T> = T & CuiPopoverContext;\n\n@Injectable()\nexport abstract class CuiPopoverService<T> {\n private readonly cuiIdService = inject(CuiIdService);\n private readonly items$: BehaviorSubject<ReadonlyArray<CuiPopover<T>>>;\n private readonly component: Type<any>;\n\n constructor(\n items: ProviderToken<BehaviorSubject<ReadonlyArray<CuiPopover<T>>>>,\n component: Type<any>,\n private readonly options: T = {} as T\n ) {\n this.items$ = inject(items);\n this.component = component;\n }\n\n public open(\n content: CuiPopoverContext['content'],\n options: Partial<T> = {}\n ): Observable<void> {\n return new Observable(observer => {\n const item: CuiPopover<T> = {\n ...this.options,\n ...options,\n $implicit: observer,\n id: this.cuiIdService.generate(),\n component: this.component,\n content: content\n };\n\n this.items$.next([...this.items$.value, item]);\n\n return () => {\n this.items$.next(this.items$.value.filter(value => value !== item));\n };\n });\n }\n}\n","import {\n AfterViewChecked,\n AfterViewInit,\n Directive,\n ElementRef,\n HostListener,\n inject,\n OnInit\n} from '@angular/core';\nimport { NgControl, NgModel } from '@angular/forms';\nimport { takeUntil } from 'rxjs';\n\nimport { CuiDestroyService } from '../services';\n\n@Directive({\n standalone: true,\n selector: 'textarea[cuiAutoResizing]',\n providers: [CuiDestroyService]\n})\nexport class CuiAutoResizingDirective implements OnInit, AfterViewInit, AfterViewChecked {\n private readonly element = inject(ElementRef).nativeElement as HTMLElement;\n private readonly ngControl = inject(NgControl, { self: true, optional: true });\n private readonly ngModel = inject(NgModel, { self: true, optional: true });\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n\n public ngOnInit(): void {\n this.initNgControlValueChangeSubscription();\n this.initNgModelValueChangeSubscription();\n }\n\n public ngAfterViewInit(): void {\n this.initHiddenOverflow();\n }\n\n // TODO: Бьёт по производительности - найти решение получше\n public ngAfterViewChecked(): void {\n this.resize();\n }\n\n @HostListener('input')\n protected onInput(): void {\n this.resize();\n }\n\n private initNgControlValueChangeSubscription(): void {\n if (!this.ngControl) {\n return;\n }\n\n this.ngControl.valueChanges!\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.resize.bind(this));\n }\n\n private initNgModelValueChangeSubscription(): void {\n if (!this.ngModel) {\n return;\n }\n\n this.ngModel.valueChanges!\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.resize.bind(this));\n }\n\n private initHiddenOverflow(): void {\n this.element.style.overflow = 'hidden';\n }\n\n private resize(): void {\n this.element.style.height = 'auto';\n this.element.style.height = this.element.scrollHeight + 'px';\n }\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n standalone: true,\n selector: '[cuiElement]',\n exportAs: 'elementRef',\n})\nexport class CuiElementDirective<T extends Element = HTMLElement> implements ElementRef<T> {\n public nativeElement = inject(ElementRef<T>).nativeElement;\n\n constructor() {\n return new ElementRef<T>(this.nativeElement);\n }\n}\n","import type { PipeTransform } from '@angular/core';\nimport { Pipe } from '@angular/core';\n\nimport { CuiMatcher } from '../types';\n\n@Pipe({\n standalone: true,\n name: 'cuiFilter'\n})\nexport class CuiFilterPipe implements PipeTransform {\n transform<T, U extends unknown[]>(items: ReadonlyArray<T>, matcher: CuiMatcher<[T, ...U]>, ...args: U): T[] {\n return items.filter(item => matcher(item, ...args));\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport function cuiCreateToken<T>(defaults: T): InjectionToken<T> {\n return cuiCreateTokenFromFactory(() => defaults);\n}\n\nexport function cuiCreateTokenFromFactory<T>(factory: () => T): InjectionToken<T> {\n return new InjectionToken<T>('', { factory });\n}\n","import type { ExistingProvider, ProviderToken } from '@angular/core';\n\nexport function cuiProvide<T>(\n provide: ProviderToken<T>,\n useExisting: ProviderToken<T>,\n): ExistingProvider;\nexport function cuiProvide<T>(\n provide: ProviderToken<T | T[]>,\n useExisting: ProviderToken<T>,\n multi: boolean,\n): ExistingProvider;\nexport function cuiProvide<T>(\n provide: ProviderToken<T>,\n useExisting: ProviderToken<T>,\n multi = false,\n): ExistingProvider {\n return { provide, useExisting, multi };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAKM,MAAO,iBAAkB,SAAQ,OAAa,CAAA;IAC3C,WAAW,GAAA;QAChB,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,QAAQ,EAAE,CAAC;KACjB;;+GAJU,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAjB,iBAAiB,EAAA,CAAA,CAAA;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;;;ACFX,MAAM,GAAG,GAAG,MAAM,CAAC;MAKN,YAAY,CAAA;IAGhB,QAAQ,GAAA;AACb,QAAA,OAAO,CAAG,EAAA,GAAG,CAAG,EAAA,YAAY,CAAC,MAAM,EAAE,CAAA,EAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;KACtD;;AAJc,YAAM,CAAA,MAAA,GAAG,CAAC,CAAC;0GADf,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cAFX,MAAM,EAAA,CAAA,CAAA;4FAEP,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCYqB,iBAAiB,CAAA;AAKrC,IAAA,WAAA,CACE,KAAmE,EACnE,SAAoB,EACH,UAAa,EAAO,EAAA;QAApB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAa;AAPtB,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AASnD,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5B,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC5B;AAEM,IAAA,IAAI,CACT,OAAqC,EACrC,OAAA,GAAsB,EAAE,EAAA;AAExB,QAAA,OAAO,IAAI,UAAU,CAAC,QAAQ,IAAG;AAC/B,YAAA,MAAM,IAAI,GAAkB;gBAC1B,GAAG,IAAI,CAAC,OAAO;AACf,gBAAA,GAAG,OAAO;AACV,gBAAA,SAAS,EAAE,QAAQ;AACnB,gBAAA,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;gBAChC,SAAS,EAAE,IAAI,CAAC,SAAS;AACzB,gBAAA,OAAO,EAAE,OAAO;aACjB,CAAC;AAEF,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAE/C,YAAA,OAAO,MAAK;gBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC;AACtE,aAAC,CAAC;AACJ,SAAC,CAAC,CAAC;KACJ;;+GAlCmB,iBAAiB,EAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAjB,iBAAiB,EAAA,CAAA,CAAA;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBADtC,UAAU;;;MCEE,wBAAwB,CAAA;AALrC,IAAA,WAAA,GAAA;AAMmB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,aAA4B,CAAC;AAC1D,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,IAAQ,CAAA,QAAA,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;AAiDvE,KAAA;IA/CQ,QAAQ,GAAA;QACb,IAAI,CAAC,oCAAoC,EAAE,CAAC;QAC5C,IAAI,CAAC,kCAAkC,EAAE,CAAC;KAC3C;IAEM,eAAe,GAAA;QACpB,IAAI,CAAC,kBAAkB,EAAE,CAAC;KAC3B;;IAGM,kBAAkB,GAAA;QACvB,IAAI,CAAC,MAAM,EAAE,CAAC;KACf;IAGS,OAAO,GAAA;QACf,IAAI,CAAC,MAAM,EAAE,CAAC;KACf;IAEO,oCAAoC,GAAA;AAC1C,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,OAAO;AACR,SAAA;QAED,IAAI,CAAC,SAAS,CAAC,YAAa;AACzB,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KACtC;IAEO,kCAAkC,GAAA;AACxC,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,OAAO;AACR,SAAA;QAED,IAAI,CAAC,OAAO,CAAC,YAAa;AACvB,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KACtC;IAEO,kBAAkB,GAAA;QACxB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;KACxC;IAEO,MAAM,GAAA;QACZ,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;AACnC,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;KAC9D;;sHApDU,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,WAAA,EAAA,EAAA,EAAA,SAAA,EAFxB,CAAC,iBAAiB,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAEnB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBALpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,2BAA2B;oBACrC,SAAS,EAAE,CAAC,iBAAiB,CAAC;AAC/B,iBAAA,CAAA;8BAsBW,OAAO,EAAA,CAAA;sBADhB,YAAY;uBAAC,OAAO,CAAA;;;MChCV,mBAAmB,CAAA;AAG9B,IAAA,WAAA,GAAA;QAFO,IAAa,CAAA,aAAA,GAAG,MAAM,EAAC,UAAa,EAAC,CAAC,aAAa,CAAC;AAGzD,QAAA,OAAO,IAAI,UAAU,CAAI,IAAI,CAAC,aAAa,CAAC,CAAC;KAC9C;;iHALU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE,YAAY;AACvB,iBAAA,CAAA;;;MCGY,aAAa,CAAA;AACxB,IAAA,SAAS,CAAyB,KAAuB,EAAE,OAA8B,EAAE,GAAG,IAAO,EAAA;AACnG,QAAA,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;KACrD;;2GAHU,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;yGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,CAAA;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE,WAAW;AAClB,iBAAA,CAAA;;;ACNK,SAAU,cAAc,CAAI,QAAW,EAAA;AAC3C,IAAA,OAAO,yBAAyB,CAAC,MAAM,QAAQ,CAAC,CAAC;AACnD,CAAC;AAEK,SAAU,yBAAyB,CAAI,OAAgB,EAAA;IAC3D,OAAO,IAAI,cAAc,CAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;AAChD;;ACGM,SAAU,UAAU,CACxB,OAAyB,EACzB,WAA6B,EAC7B,KAAK,GAAG,KAAK,EAAA;AAEb,IAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;AACzC;;ACjBA;;AAEG;;;;"}
|
package/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { PipeTransform } from '@angular/core';
|
|
2
|
+
import { CuiMatcher } from '../types';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class CuiFilterPipe implements PipeTransform {
|
|
5
|
+
transform<T, U extends unknown[]>(items: ReadonlyArray<T>, matcher: CuiMatcher<[T, ...U]>, ...args: U): T[];
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CuiFilterPipe, never>;
|
|
7
|
+
static ɵpipe: i0.ɵɵPipeDeclaration<CuiFilterPipe, "cuiFilter", true>;
|
|
8
|
+
}
|
package/pipes/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './filter.pipe';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ProviderToken, TemplateRef, Type } from '@angular/core';
|
|
1
|
+
import type { ProviderToken, TemplateRef, Type } from '@angular/core';
|
|
2
2
|
import type { BehaviorSubject, Observer } from 'rxjs';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
@@ -6,7 +6,7 @@ export interface CuiPopoverContext {
|
|
|
6
6
|
readonly $implicit: Observer<any>;
|
|
7
7
|
readonly id: string;
|
|
8
8
|
readonly component: Type<unknown>;
|
|
9
|
-
readonly content: Type<unknown> | TemplateRef<unknown
|
|
9
|
+
readonly content: Type<unknown> | TemplateRef<unknown> | string;
|
|
10
10
|
}
|
|
11
11
|
export type CuiPopover<T> = T & CuiPopoverContext;
|
|
12
12
|
export declare abstract class CuiPopoverService<T> {
|
package/types/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type Mapper<T extends unknown[], G> = (...args: T) => G;
|