@meshmakers/octo-ui 2.0.2304-23001 → 2.1.4-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/esm2020/lib/list-element/globalTypes.mjs +45 -0
- package/esm2020/lib/list-element/graphQLDataSource.mjs +23 -0
- package/esm2020/lib/list-element/list-element.module.mjs +18 -0
- package/esm2020/lib/list-element/octoListNavigation.mjs +88 -0
- package/esm2020/public-api.mjs +5 -4
- package/fesm2015/meshmakers-octo-ui.mjs +162 -41
- package/fesm2015/meshmakers-octo-ui.mjs.map +1 -1
- package/fesm2020/meshmakers-octo-ui.mjs +162 -41
- package/fesm2020/meshmakers-octo-ui.mjs.map +1 -1
- package/lib/list-element/globalTypes.d.ts +63 -0
- package/lib/list-element/graphQLDataSource.d.ts +9 -0
- package/lib/list-element/list-element.module.d.ts +7 -0
- package/lib/list-element/octoListNavigation.d.ts +31 -0
- package/package.json +1 -1
- package/public-api.d.ts +4 -3
- package/esm2020/lib/octo-ui.component.mjs +0 -19
- package/esm2020/lib/octo-ui.module.mjs +0 -21
- package/esm2020/lib/octo-ui.service.mjs +0 -14
- package/lib/octo-ui.component.d.ts +0 -5
- package/lib/octo-ui.module.d.ts +0 -7
- package/lib/octo-ui.service.d.ts +0 -6
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
// @generated
|
|
4
|
+
// This file was automatically generated and should not be edited.
|
|
5
|
+
/** Defines the operator of field compare */
|
|
6
|
+
export var FieldFilterOperatorsDto;
|
|
7
|
+
(function (FieldFilterOperatorsDto) {
|
|
8
|
+
FieldFilterOperatorsDto["EqualsDto"] = "EQUALS";
|
|
9
|
+
FieldFilterOperatorsDto["GreaterEqualThanDto"] = "GREATER_EQUAL_THAN";
|
|
10
|
+
FieldFilterOperatorsDto["GreaterThanDto"] = "GREATER_THAN";
|
|
11
|
+
FieldFilterOperatorsDto["InDto"] = "IN";
|
|
12
|
+
FieldFilterOperatorsDto["LessEqualThanDto"] = "LESS_EQUAL_THAN";
|
|
13
|
+
FieldFilterOperatorsDto["LessThanDto"] = "LESS_THAN";
|
|
14
|
+
FieldFilterOperatorsDto["LikeDto"] = "LIKE";
|
|
15
|
+
FieldFilterOperatorsDto["MatchRegExDto"] = "MATCH_REG_EX";
|
|
16
|
+
FieldFilterOperatorsDto["NotEqualsDto"] = "NOT_EQUALS";
|
|
17
|
+
FieldFilterOperatorsDto["NotInDto"] = "NOT_IN";
|
|
18
|
+
FieldFilterOperatorsDto["NotMatchRegExDto"] = "NOT_MATCH_REG_EX";
|
|
19
|
+
})(FieldFilterOperatorsDto || (FieldFilterOperatorsDto = {}));
|
|
20
|
+
/** The scope of the construction kit model */
|
|
21
|
+
export var ScopesDto;
|
|
22
|
+
(function (ScopesDto) {
|
|
23
|
+
ScopesDto["ApplicationDto"] = "APPLICATION";
|
|
24
|
+
ScopesDto["Layer_2Dto"] = "LAYER_2";
|
|
25
|
+
ScopesDto["Layer_3Dto"] = "LAYER_3";
|
|
26
|
+
ScopesDto["Layer_4Dto"] = "LAYER_4";
|
|
27
|
+
ScopesDto["SystemDto"] = "SYSTEM";
|
|
28
|
+
})(ScopesDto || (ScopesDto = {}));
|
|
29
|
+
/** The type of search that is used (a text based search using text analysis (high performance, scoring, maybe more false positives) or filtering of attributes (lower performance, more exact results) */
|
|
30
|
+
export var SearchFilterTypesDto;
|
|
31
|
+
(function (SearchFilterTypesDto) {
|
|
32
|
+
SearchFilterTypesDto["AttributeFilterDto"] = "ATTRIBUTE_FILTER";
|
|
33
|
+
SearchFilterTypesDto["TextSearchDto"] = "TEXT_SEARCH";
|
|
34
|
+
})(SearchFilterTypesDto || (SearchFilterTypesDto = {}));
|
|
35
|
+
/** Defines the sort order */
|
|
36
|
+
export var SortOrdersDto;
|
|
37
|
+
(function (SortOrdersDto) {
|
|
38
|
+
SortOrdersDto["AscendingDto"] = "ASCENDING";
|
|
39
|
+
SortOrdersDto["DefaultDto"] = "DEFAULT";
|
|
40
|
+
SortOrdersDto["DescendingDto"] = "DESCENDING";
|
|
41
|
+
})(SortOrdersDto || (SortOrdersDto = {}));
|
|
42
|
+
//==============================================================
|
|
43
|
+
// END Enums and Input Objects
|
|
44
|
+
//==============================================================
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsVHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL29jdG8tdWkvc3JjL2xpYi9saXN0LWVsZW1lbnQvZ2xvYmFsVHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCLG9CQUFvQjtBQUNwQixhQUFhO0FBQ2Isa0VBQWtFO0FBNEJsRSw0Q0FBNEM7QUFDNUMsTUFBTSxDQUFOLElBQVksdUJBWVg7QUFaRCxXQUFZLHVCQUF1QjtJQUNqQywrQ0FBb0IsQ0FBQTtJQUNwQixxRUFBMEMsQ0FBQTtJQUMxQywwREFBK0IsQ0FBQTtJQUMvQix1Q0FBWSxDQUFBO0lBQ1osK0RBQW9DLENBQUE7SUFDcEMsb0RBQXlCLENBQUE7SUFDekIsMkNBQWdCLENBQUE7SUFDaEIseURBQThCLENBQUE7SUFDOUIsc0RBQTJCLENBQUE7SUFDM0IsOENBQW1CLENBQUE7SUFDbkIsZ0VBQXFDLENBQUE7QUFDdkMsQ0FBQyxFQVpXLHVCQUF1QixLQUF2Qix1QkFBdUIsUUFZbEM7QUFFRCw4Q0FBOEM7QUFDOUMsTUFBTSxDQUFOLElBQVksU0FNWDtBQU5ELFdBQVksU0FBUztJQUNuQiwyQ0FBOEIsQ0FBQTtJQUM5QixtQ0FBc0IsQ0FBQTtJQUN0QixtQ0FBc0IsQ0FBQTtJQUN0QixtQ0FBc0IsQ0FBQTtJQUN0QixpQ0FBb0IsQ0FBQTtBQUN0QixDQUFDLEVBTlcsU0FBUyxLQUFULFNBQVMsUUFNcEI7QUFTRCwwTUFBME07QUFDMU0sTUFBTSxDQUFOLElBQVksb0JBR1g7QUFIRCxXQUFZLG9CQUFvQjtJQUM5QiwrREFBdUMsQ0FBQTtJQUN2QyxxREFBNkIsQ0FBQTtBQUMvQixDQUFDLEVBSFcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQUcvQjtBQU9ELDZCQUE2QjtBQUM3QixNQUFNLENBQU4sSUFBWSxhQUlYO0FBSkQsV0FBWSxhQUFhO0lBQ3ZCLDJDQUEwQixDQUFBO0lBQzFCLHVDQUFzQixDQUFBO0lBQ3RCLDZDQUE0QixDQUFBO0FBQzlCLENBQUMsRUFKVyxhQUFhLEtBQWIsYUFBYSxRQUl4QjtBQUVELGdFQUFnRTtBQUNoRSw4QkFBOEI7QUFDOUIsZ0VBQWdFIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGUgKi9cbi8qIGVzbGludC1kaXNhYmxlICovXG4vLyBAZ2VuZXJhdGVkXG4vLyBUaGlzIGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGFuZCBzaG91bGQgbm90IGJlIGVkaXRlZC5cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU1RBUlQgRW51bXMgYW5kIElucHV0IE9iamVjdHNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbmV4cG9ydCB0eXBlIE1heWJlPFQ+ID0gVCB8IG51bGw7XG5leHBvcnQgdHlwZSBJbnB1dE1heWJlPFQ+ID0gTWF5YmU8VD47XG5cbi8qKiBBbGwgYnVpbHQtaW4gYW5kIGN1c3RvbSBzY2FsYXJzLCBtYXBwZWQgdG8gdGhlaXIgYWN0dWFsIHZhbHVlcyAqL1xuZXhwb3J0IHR5cGUgU2NhbGFycyA9IHtcbiAgSUQ6IHN0cmluZztcbiAgU3RyaW5nOiBzdHJpbmc7XG4gIEJvb2xlYW46IGJvb2xlYW47XG4gIEludDogbnVtYmVyO1xuICBGbG9hdDogbnVtYmVyO1xuICAvKiogVGhlIGBEYXRlVGltZWAgc2NhbGFyIHR5cGUgcmVwcmVzZW50cyBhIGRhdGUgYW5kIHRpbWUuIGBEYXRlVGltZWAgZXhwZWN0cyB0aW1lc3RhbXBzIHRvIGJlIGZvcm1hdHRlZCBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIFtJU08tODYwMV0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvSVNPXzg2MDEpIHN0YW5kYXJkLiAqL1xuICBEYXRlVGltZTogYW55O1xuICBEZWNpbWFsOiBhbnk7XG4gIE9zcE9iamVjdElkVHlwZTogYW55O1xuICBTaW1wbGVTY2FsYXJUeXBlOiBhbnk7XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZEZpbHRlckR0byA9IHtcbiAgYXR0cmlidXRlTmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGNvbXBhcmlzb25WYWx1ZT86IElucHV0TWF5YmU8U2NhbGFyc1snU2ltcGxlU2NhbGFyVHlwZSddPjtcbiAgb3BlcmF0b3I/OiBJbnB1dE1heWJlPEZpZWxkRmlsdGVyT3BlcmF0b3JzRHRvPjtcbn07XG5cbi8qKiBEZWZpbmVzIHRoZSBvcGVyYXRvciBvZiBmaWVsZCBjb21wYXJlICovXG5leHBvcnQgZW51bSBGaWVsZEZpbHRlck9wZXJhdG9yc0R0byB7XG4gIEVxdWFsc0R0byA9ICdFUVVBTFMnLFxuICBHcmVhdGVyRXF1YWxUaGFuRHRvID0gJ0dSRUFURVJfRVFVQUxfVEhBTicsXG4gIEdyZWF0ZXJUaGFuRHRvID0gJ0dSRUFURVJfVEhBTicsXG4gIEluRHRvID0gJ0lOJyxcbiAgTGVzc0VxdWFsVGhhbkR0byA9ICdMRVNTX0VRVUFMX1RIQU4nLFxuICBMZXNzVGhhbkR0byA9ICdMRVNTX1RIQU4nLFxuICBMaWtlRHRvID0gJ0xJS0UnLFxuICBNYXRjaFJlZ0V4RHRvID0gJ01BVENIX1JFR19FWCcsXG4gIE5vdEVxdWFsc0R0byA9ICdOT1RfRVFVQUxTJyxcbiAgTm90SW5EdG8gPSAnTk9UX0lOJyxcbiAgTm90TWF0Y2hSZWdFeER0byA9ICdOT1RfTUFUQ0hfUkVHX0VYJ1xufVxuXG4vKiogVGhlIHNjb3BlIG9mIHRoZSBjb25zdHJ1Y3Rpb24ga2l0IG1vZGVsICovXG5leHBvcnQgZW51bSBTY29wZXNEdG8ge1xuICBBcHBsaWNhdGlvbkR0byA9ICdBUFBMSUNBVElPTicsXG4gIExheWVyXzJEdG8gPSAnTEFZRVJfMicsXG4gIExheWVyXzNEdG8gPSAnTEFZRVJfMycsXG4gIExheWVyXzREdG8gPSAnTEFZRVJfNCcsXG4gIFN5c3RlbUR0byA9ICdTWVNURU0nXG59XG5cbmV4cG9ydCB0eXBlIFNlYXJjaEZpbHRlckR0byA9IHtcbiAgYXR0cmlidXRlTmFtZXM/OiBJbnB1dE1heWJlPEFycmF5PElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+Pj47XG4gIGxhbmd1YWdlPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHNlYXJjaFRlcm06IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0eXBlPzogSW5wdXRNYXliZTxTZWFyY2hGaWx0ZXJUeXBlc0R0bz47XG59O1xuXG4vKiogVGhlIHR5cGUgb2Ygc2VhcmNoIHRoYXQgaXMgdXNlZCAoYSB0ZXh0IGJhc2VkIHNlYXJjaCB1c2luZyB0ZXh0IGFuYWx5c2lzIChoaWdoIHBlcmZvcm1hbmNlLCBzY29yaW5nLCBtYXliZSBtb3JlIGZhbHNlIHBvc2l0aXZlcykgb3IgZmlsdGVyaW5nIG9mIGF0dHJpYnV0ZXMgKGxvd2VyIHBlcmZvcm1hbmNlLCBtb3JlIGV4YWN0IHJlc3VsdHMpICovXG5leHBvcnQgZW51bSBTZWFyY2hGaWx0ZXJUeXBlc0R0byB7XG4gIEF0dHJpYnV0ZUZpbHRlckR0byA9ICdBVFRSSUJVVEVfRklMVEVSJyxcbiAgVGV4dFNlYXJjaER0byA9ICdURVhUX1NFQVJDSCdcbn1cblxuZXhwb3J0IHR5cGUgU29ydER0byA9IHtcbiAgYXR0cmlidXRlTmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHNvcnRPcmRlcj86IElucHV0TWF5YmU8U29ydE9yZGVyc0R0bz47XG59O1xuXG4vKiogRGVmaW5lcyB0aGUgc29ydCBvcmRlciAqL1xuZXhwb3J0IGVudW0gU29ydE9yZGVyc0R0byB7XG4gIEFzY2VuZGluZ0R0byA9ICdBU0NFTkRJTkcnLFxuICBEZWZhdWx0RHRvID0gJ0RFRkFVTFQnLFxuICBEZXNjZW5kaW5nRHRvID0gJ0RFU0NFTkRJTkcnXG59XG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEVORCBFbnVtcyBhbmQgSW5wdXQgT2JqZWN0c1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { of } from "rxjs";
|
|
2
|
+
import { catchError } from "rxjs/operators";
|
|
3
|
+
import { DataSourceBase, PagedResultDto } from "@meshmakers/shared-services";
|
|
4
|
+
export class GraphQLDataSource extends DataSourceBase {
|
|
5
|
+
constructor(messageService) {
|
|
6
|
+
super();
|
|
7
|
+
this.messageService = messageService;
|
|
8
|
+
}
|
|
9
|
+
loadData(tenantId, skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
|
|
10
|
+
super.onBeginLoad();
|
|
11
|
+
this.executeLoad(tenantId, skip, take, searchFilter, fieldFilter, sort).pipe(catchError((error) => {
|
|
12
|
+
this.messageService.showError(error, "Error during load of data");
|
|
13
|
+
return of(new PagedResultDto());
|
|
14
|
+
}))
|
|
15
|
+
.subscribe(pagedResult => {
|
|
16
|
+
super.onCompleteLoad(pagedResult);
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
executeLoad(tenantId, skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
|
|
20
|
+
return of(new PagedResultDto());
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhRTERhdGFTb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL29jdG8tdWkvc3JjL2xpYi9saXN0LWVsZW1lbnQvZ3JhcGhRTERhdGFTb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGNBQWMsRUFBa0IsY0FBYyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFM0YsTUFBTSxPQUFPLGlCQUF3QixTQUFRLGNBQW9CO0lBRS9ELFlBQXNCLGNBQThCO1FBQ2xELEtBQUssRUFBRSxDQUFDO1FBRFksbUJBQWMsR0FBZCxjQUFjLENBQWdCO0lBRXBELENBQUM7SUFDTSxRQUFRLENBQUMsUUFBZ0IsRUFBRSxPQUFlLENBQUMsRUFBRSxPQUFlLEVBQUUsRUFBRSxlQUF1QyxJQUFJLEVBQ2xHLGNBQXVDLElBQUksRUFBRSxPQUF5QixJQUFJO1FBRXhGLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVwQixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUMxRSxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUVuQixJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsMkJBQTJCLENBQUMsQ0FBQztZQUVsRSxPQUFPLEVBQUUsQ0FBQyxJQUFJLGNBQWMsRUFBUSxDQUFDLENBQUE7UUFDdkMsQ0FBQyxDQUFDLENBQUM7YUFDRixTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFFdkIsS0FBSyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFUyxXQUFXLENBQUMsUUFBZ0IsRUFBRSxPQUFlLENBQUMsRUFBRSxPQUFlLEVBQUUsRUFBRSxlQUF1QyxJQUFJLEVBQ2xHLGNBQXVDLElBQUksRUFBRSxPQUF5QixJQUFJO1FBQzlGLE9BQU8sRUFBRSxDQUFDLElBQUksY0FBYyxFQUFRLENBQUMsQ0FBQTtJQUN2QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09ic2VydmFibGUsIG9mfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHtjYXRjaEVycm9yfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7RGF0YVNvdXJjZUJhc2UsIE1lc3NhZ2VTZXJ2aWNlLCBQYWdlZFJlc3VsdER0b30gZnJvbSBcIkBtZXNobWFrZXJzL3NoYXJlZC1zZXJ2aWNlc1wiO1xuaW1wb3J0IHtGaWVsZEZpbHRlckR0bywgU2VhcmNoRmlsdGVyRHRvLCBTb3J0RHRvfSBmcm9tIFwiLi9nbG9iYWxUeXBlc1wiO1xuZXhwb3J0IGNsYXNzIEdyYXBoUUxEYXRhU291cmNlPFREdG8+IGV4dGVuZHMgRGF0YVNvdXJjZUJhc2U8VER0bz4ge1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIHB1YmxpYyBsb2FkRGF0YSh0ZW5hbnRJZDogc3RyaW5nLCBza2lwOiBudW1iZXIgPSAwLCB0YWtlOiBudW1iZXIgPSAxMCwgc2VhcmNoRmlsdGVyOiBTZWFyY2hGaWx0ZXJEdG8gfCBudWxsID0gbnVsbCxcbiAgICAgICAgICAgICAgICAgIGZpZWxkRmlsdGVyOiBGaWVsZEZpbHRlckR0b1tdIHwgbnVsbCA9IG51bGwsIHNvcnQ6IFNvcnREdG9bXSB8IG51bGwgPSBudWxsKSB7XG5cbiAgICBzdXBlci5vbkJlZ2luTG9hZCgpO1xuXG4gICAgdGhpcy5leGVjdXRlTG9hZCh0ZW5hbnRJZCwgc2tpcCwgdGFrZSwgc2VhcmNoRmlsdGVyLCBmaWVsZEZpbHRlciwgc29ydCkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG5cbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5zaG93RXJyb3IoZXJyb3IsIFwiRXJyb3IgZHVyaW5nIGxvYWQgb2YgZGF0YVwiKTtcblxuICAgICAgICByZXR1cm4gb2YobmV3IFBhZ2VkUmVzdWx0RHRvPFREdG8+KCkpXG4gICAgICB9KSlcbiAgICAgIC5zdWJzY3JpYmUocGFnZWRSZXN1bHQgPT4ge1xuXG4gICAgICAgIHN1cGVyLm9uQ29tcGxldGVMb2FkKHBhZ2VkUmVzdWx0KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGV4ZWN1dGVMb2FkKHRlbmFudElkOiBzdHJpbmcsIHNraXA6IG51bWJlciA9IDAsIHRha2U6IG51bWJlciA9IDEwLCBzZWFyY2hGaWx0ZXI6IFNlYXJjaEZpbHRlckR0byB8IG51bGwgPSBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRGaWx0ZXI6IEZpZWxkRmlsdGVyRHRvW10gfCBudWxsID0gbnVsbCwgc29ydDogU29ydER0b1tdIHwgbnVsbCA9IG51bGwpOiBPYnNlcnZhYmxlPFBhZ2VkUmVzdWx0RHRvPFREdG8+PiB7XG4gICAgcmV0dXJuIG9mKG5ldyBQYWdlZFJlc3VsdER0bzxURHRvPigpKVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ListElementModule {
|
|
5
|
+
}
|
|
6
|
+
ListElementModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
+
ListElementModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, imports: [CommonModule] });
|
|
8
|
+
ListElementModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, imports: [CommonModule] });
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, decorators: [{
|
|
10
|
+
type: NgModule,
|
|
11
|
+
args: [{
|
|
12
|
+
declarations: [],
|
|
13
|
+
imports: [
|
|
14
|
+
CommonModule
|
|
15
|
+
]
|
|
16
|
+
}]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1lbGVtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lc2htYWtlcnMvb2N0by11aS9zcmMvbGliL2xpc3QtZWxlbWVudC9saXN0LWVsZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDOztBQVM3QyxNQUFNLE9BQU8saUJBQWlCOzs4R0FBakIsaUJBQWlCOytHQUFqQixpQkFBaUIsWUFIMUIsWUFBWTsrR0FHSCxpQkFBaUIsWUFIMUIsWUFBWTsyRkFHSCxpQkFBaUI7a0JBTjdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3FCQUNiO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgTGlzdEVsZW1lbnRNb2R1bGUge1xufVxuIl19
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { EventEmitter } from "@angular/core";
|
|
2
|
+
import { fromEvent, merge } from "rxjs";
|
|
3
|
+
import { debounceTime, distinctUntilChanged, tap } from "rxjs/operators";
|
|
4
|
+
import { SortOrdersDto } from "./globalTypes";
|
|
5
|
+
export class OctoListNavigationDataInfo {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.skip = 0;
|
|
8
|
+
this.take = 10;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export class OctoListNavigationOptions {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.language = null;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export class OctoListNavigation {
|
|
17
|
+
constructor(paginator, sort, searchBox, octoOptions) {
|
|
18
|
+
this.paginator = paginator;
|
|
19
|
+
this.sort = sort;
|
|
20
|
+
this.searchBox = searchBox;
|
|
21
|
+
this.octoOptions = octoOptions;
|
|
22
|
+
this.loadDataRequest = new EventEmitter();
|
|
23
|
+
this.lastSortDirection = null;
|
|
24
|
+
this.lastSortField = null;
|
|
25
|
+
this.lastSearchText = null;
|
|
26
|
+
}
|
|
27
|
+
get loadDataInfo() {
|
|
28
|
+
const filterString = this.searchBox.nativeElement.value;
|
|
29
|
+
const sortField = this.sort.active;
|
|
30
|
+
const sortDirection = this.sort.direction;
|
|
31
|
+
let filter = null;
|
|
32
|
+
if (filterString) {
|
|
33
|
+
filter = {
|
|
34
|
+
language: this.octoOptions.language,
|
|
35
|
+
searchTerm: filterString,
|
|
36
|
+
type: this.octoOptions.searchFilterType,
|
|
37
|
+
attributeNames: this.octoOptions.searchFilterAttributeNames
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
let sort = [];
|
|
41
|
+
if (sortField && sortDirection) {
|
|
42
|
+
sort.push({
|
|
43
|
+
attributeName: sortField,
|
|
44
|
+
sortOrder: sortDirection === "asc" ? SortOrdersDto.AscendingDto : SortOrdersDto.DescendingDto
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
skip: this.paginator.pageIndex * this.paginator.pageSize,
|
|
49
|
+
take: this.paginator.pageSize,
|
|
50
|
+
searchFilter: filter,
|
|
51
|
+
sort: sort
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
init() {
|
|
55
|
+
// server-side search
|
|
56
|
+
fromEvent(this.searchBox.nativeElement, 'keyup')
|
|
57
|
+
.pipe(debounceTime(500), distinctUntilChanged(), tap(() => {
|
|
58
|
+
this.paginator.pageIndex = 0;
|
|
59
|
+
const searchText = this.searchBox.nativeElement.value;
|
|
60
|
+
if (!this.lastSearchText && searchText) {
|
|
61
|
+
this.lastSortDirection = this.sort.direction;
|
|
62
|
+
this.lastSortField = this.sort.active;
|
|
63
|
+
// Reset sorting to see the score rating (default sorting returned from server)
|
|
64
|
+
this.sort.sort({ id: '', start: 'asc', disableClear: false });
|
|
65
|
+
}
|
|
66
|
+
this.lastSearchText = searchText;
|
|
67
|
+
if (!searchText && this.lastSortField) {
|
|
68
|
+
if (this.lastSortDirection == "asc") {
|
|
69
|
+
this.sort.sort({ id: this.lastSortField, start: 'asc', disableClear: true });
|
|
70
|
+
}
|
|
71
|
+
else if (this.lastSortDirection == "desc") {
|
|
72
|
+
this.sort.sort({ id: this.lastSortField, start: 'desc', disableClear: true });
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
this.loadData();
|
|
76
|
+
}))
|
|
77
|
+
.subscribe();
|
|
78
|
+
// reset the paginator after sorting
|
|
79
|
+
this.sort.sortChange.subscribe(() => this.paginator.pageIndex = 0);
|
|
80
|
+
merge(this.sort.sortChange, this.paginator.page)
|
|
81
|
+
.pipe(tap(() => this.loadData()))
|
|
82
|
+
.subscribe();
|
|
83
|
+
}
|
|
84
|
+
loadData() {
|
|
85
|
+
this.loadDataRequest.emit(this.loadDataInfo);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2N0b0xpc3ROYXZpZ2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVzaG1ha2Vycy9vY3RvLXVpL3NyYy9saWIvbGlzdC1lbGVtZW50L29jdG9MaXN0TmF2aWdhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQWEsWUFBWSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBQyxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkUsT0FBTyxFQUFpRCxhQUFhLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHNUYsTUFBTSxPQUFPLDBCQUEwQjtJQU1yQztRQUNFLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLHlCQUF5QjtJQUtwQztRQUNFLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ3ZCLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxrQkFBa0I7SUFRN0IsWUFBb0IsU0FBdUIsRUFBVSxJQUFhLEVBQVUsU0FBcUIsRUFBVSxXQUFzQztRQUE3SCxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBUztRQUFVLGNBQVMsR0FBVCxTQUFTLENBQVk7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBMkI7UUFOMUksb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBOEIsQ0FBQztRQU90RSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1FBQzlCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFD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Q0FBQyxDQUFDO2lCQUM3RTthQUNGO1lBR0QsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUNIO2FBQ0EsU0FBUyxFQUFFLENBQUM7UUFFZixvQ0FBb0M7UUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRW5FLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQzthQUM3QyxJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUMzQjthQUNBLFNBQVMsRUFBRSxDQUFBO0lBQ2hCLENBQUM7SUFFTyxRQUFRO1FBRWQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TWF0UGFnaW5hdG9yfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yXCI7XG5pbXBvcnQge01hdFNvcnQsIFNvcnREaXJlY3Rpb259IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9zb3J0XCI7XG5pbXBvcnQge0VsZW1lbnRSZWYsIEV2ZW50RW1pdHRlcn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7ZnJvbUV2ZW50LCBtZXJnZX0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFwfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7U2VhcmNoRmlsdGVyRHRvLCBTZWFyY2hGaWx0ZXJUeXBlc0R0bywgU29ydER0bywgU29ydE9yZGVyc0R0b30gZnJvbSBcIi4vZ2xvYmFsVHlwZXNcIjtcblxuXG5leHBvcnQgY2xhc3MgT2N0b0xpc3ROYXZpZ2F0aW9uRGF0YUluZm8ge1xuICBza2lwOiBudW1iZXI7XG4gIHRha2U6IG51bWJlcjtcbiAgc2VhcmNoRmlsdGVyPzogU2VhcmNoRmlsdGVyRHRvO1xuICBzb3J0PzogU29ydER0b1tdO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuc2tpcCA9IDA7XG4gICAgdGhpcy50YWtlID0gMTA7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE9jdG9MaXN0TmF2aWdhdGlvbk9wdGlvbnMge1xuICBsYW5ndWFnZTogc3RyaW5nIHwgbnVsbDtcbiAgc2VhcmNoRmlsdGVyVHlwZT86IFNlYXJjaEZpbHRlclR5cGVzRHRvO1xuICBzZWFyY2hGaWx0ZXJBdHRyaWJ1dGVOYW1lcz86IHN0cmluZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMubGFuZ3VhZ2UgPSBudWxsO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBPY3RvTGlzdE5hdmlnYXRpb24ge1xuXG4gIHB1YmxpYyBsb2FkRGF0YVJlcXVlc3QgPSBuZXcgRXZlbnRFbWl0dGVyPE9jdG9MaXN0TmF2aWdhdGlvbkRhdGFJbmZvPigpO1xuXG4gIGxhc3RTb3J0RGlyZWN0aW9uOiBTb3J0RGlyZWN0aW9uIHwgbnVsbDtcbiAgbGFzdFNvcnRGaWVsZDogc3RyaW5nIHwgbnVsbDtcbiAgbGFzdFNlYXJjaFRleHQ6IHN0cmluZyB8IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwYWdpbmF0b3I6IE1hdFBhZ2luYXRvciwgcHJpdmF0ZSBzb3J0OiBNYXRTb3J0LCBwcml2YXRlIHNlYXJjaEJveDogRWxlbWVudFJlZiwgcHJpdmF0ZSBvY3RvT3B0aW9uczogT2N0b0xpc3ROYXZpZ2F0aW9uT3B0aW9ucykge1xuICAgIHRoaXMubGFzdFNvcnREaXJlY3Rpb24gPSBudWxsO1xuICAgIHRoaXMubGFzdFNvcnRGaWVsZCA9IG51bGw7XG4gICAgdGhpcy5sYXN0U2VhcmNoVGV4dCA9IG51bGw7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGxvYWREYXRhSW5mbygpIHtcbiAgICBjb25zdCBmaWx0ZXJTdHJpbmcgPSB0aGlzLnNlYXJjaEJveC5uYXRpdmVFbGVtZW50LnZhbHVlO1xuICAgIGNvbnN0IHNvcnRGaWVsZCA9IHRoaXMuc29ydC5hY3RpdmU7XG4gICAgY29uc3Qgc29ydERpcmVjdGlvbiA9IHRoaXMuc29ydC5kaXJlY3Rpb247XG5cbiAgICBsZXQgZmlsdGVyID0gbnVsbDtcbiAgICBpZiAoZmlsdGVyU3RyaW5nKSB7XG4gICAgICBmaWx0ZXIgPSA8U2VhcmNoRmlsdGVyRHRvPntcbiAgICAgICAgbGFuZ3VhZ2U6IHRoaXMub2N0b09wdGlvbnMubGFuZ3VhZ2UsXG4gICAgICAgIHNlYXJjaFRlcm06IGZpbHRlclN0cmluZyxcbiAgICAgICAgdHlwZTogdGhpcy5vY3RvT3B0aW9ucy5zZWFyY2hGaWx0ZXJUeXBlLFxuICAgICAgICBhdHRyaWJ1dGVOYW1lczogdGhpcy5vY3RvT3B0aW9ucy5zZWFyY2hGaWx0ZXJBdHRyaWJ1dGVOYW1lc1xuICAgICAgfTtcbiAgICB9XG5cbiAgICBsZXQgc29ydCA9IFtdO1xuICAgIGlmIChzb3J0RmllbGQgJiYgc29ydERpcmVjdGlvbikge1xuICAgICAgc29ydC5wdXNoKDxTb3J0RHRvPntcbiAgICAgICAgYXR0cmlidXRlTmFtZTogc29ydEZpZWxkLFxuICAgICAgICBzb3J0T3JkZXI6IHNvcnREaXJlY3Rpb24gPT09IFwiYXNjXCIgPyBTb3J0T3JkZXJzRHRvLkFzY2VuZGluZ0R0byA6IFNvcnRPcmRlcnNEdG8uRGVzY2VuZGluZ0R0b1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIDxPY3RvTGlzdE5hdmlnYXRpb25EYXRhSW5mbz57XG4gICAgICBza2lwOiB0aGlzLnBhZ2luYXRvci5wYWdlSW5kZXggKiB0aGlzLnBhZ2luYXRvci5wYWdlU2l6ZSxcbiAgICAgIHRha2U6IHRoaXMucGFnaW5hdG9yLnBhZ2VTaXplLFxuICAgICAgc2VhcmNoRmlsdGVyOiBmaWx0ZXIsXG4gICAgICBzb3J0OiBzb3J0XG4gICAgfTtcbiAgfVxuXG4gIGluaXQoKSB7XG4gICAgLy8gc2VydmVyLXNpZGUgc2VhcmNoXG4gICAgZnJvbUV2ZW50KHRoaXMuc2VhcmNoQm94Lm5hdGl2ZUVsZW1lbnQsICdrZXl1cCcpXG4gICAgICAucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDUwMCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIHRhcCgoKSA9PiB7XG5cbiAgICAgICAgICB0aGlzLnBhZ2luYXRvci5wYWdlSW5kZXggPSAwO1xuXG4gICAgICAgICAgY29uc3Qgc2VhcmNoVGV4dCA9IHRoaXMuc2VhcmNoQm94Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XG5cbiAgICAgICAgICBpZiAoIXRoaXMubGFzdFNlYXJjaFRleHQgJiYgc2VhcmNoVGV4dCkge1xuICAgICAgICAgICAgdGhpcy5sYXN0U29ydERpcmVjdGlvbiA9IHRoaXMuc29ydC5kaXJlY3Rpb247XG4gICAgICAgICAgICB0aGlzLmxhc3RTb3J0RmllbGQgPSB0aGlzLnNvcnQuYWN0aXZlO1xuXG4gICAgICAgICAgICAvLyBSZXNldCBzb3J0aW5nIHRvIHNlZSB0aGUgc2NvcmUgcmF0aW5nIChkZWZhdWx0IHNvcnRpbmcgcmV0dXJuZWQgZnJvbSBzZXJ2ZXIpXG4gICAgICAgICAgICB0aGlzLnNvcnQuc29ydCh7aWQ6ICcnLCBzdGFydDogJ2FzYycsIGRpc2FibGVDbGVhcjogZmFsc2V9KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLmxhc3RTZWFyY2hUZXh0ID0gc2VhcmNoVGV4dDtcblxuICAgICAgICAgIGlmICghc2VhcmNoVGV4dCAmJiB0aGlzLmxhc3RTb3J0RmllbGQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmxhc3RTb3J0RGlyZWN0aW9uID09IFwiYXNjXCIpIHtcbiAgICAgICAgICAgICAgdGhpcy5zb3J0LnNvcnQoe2lkOiB0aGlzLmxhc3RTb3J0RmllbGQsIHN0YXJ0OiAnYXNjJywgZGlzYWJsZUNsZWFyOiB0cnVlfSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMubGFzdFNvcnREaXJlY3Rpb24gPT0gXCJkZXNjXCIpIHtcbiAgICAgICAgICAgICAgdGhpcy5zb3J0LnNvcnQoe2lkOiB0aGlzLmxhc3RTb3J0RmllbGQsIHN0YXJ0OiAnZGVzYycsIGRpc2FibGVDbGVhcjogdHJ1ZX0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuXG4gICAgICAgICAgdGhpcy5sb2FkRGF0YSgpO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgLy8gcmVzZXQgdGhlIHBhZ2luYXRvciBhZnRlciBzb3J0aW5nXG4gICAgdGhpcy5zb3J0LnNvcnRDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+IHRoaXMucGFnaW5hdG9yLnBhZ2VJbmRleCA9IDApO1xuXG4gICAgbWVyZ2UodGhpcy5zb3J0LnNvcnRDaGFuZ2UsIHRoaXMucGFnaW5hdG9yLnBhZ2UpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHRoaXMubG9hZERhdGEoKSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKVxuICB9XG5cbiAgcHJpdmF0ZSBsb2FkRGF0YSgpIHtcblxuICAgIHRoaXMubG9hZERhdGFSZXF1ZXN0LmVtaXQodGhpcy5sb2FkRGF0YUluZm8pO1xuICB9XG59XG4iXX0=
|
package/esm2020/public-api.mjs
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* Public API Surface of octo-ui
|
|
3
3
|
*/
|
|
4
|
-
export * from './lib/
|
|
5
|
-
export * from './lib/
|
|
6
|
-
export * from './lib/
|
|
7
|
-
|
|
4
|
+
export * from './lib/list-element/list-element.module';
|
|
5
|
+
export * from './lib/list-element/octoListNavigation';
|
|
6
|
+
export * from './lib/list-element/graphQLDataSource';
|
|
7
|
+
export * from './lib/list-element/globalTypes';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21lc2htYWtlcnMvb2N0by11aS9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsd0NBQXdDLENBQUE7QUFDdEQsY0FBYyx1Q0FBdUMsQ0FBQTtBQUNyRCxjQUFjLHNDQUFzQyxDQUFBO0FBQ3BELGNBQWMsZ0NBQWdDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG9jdG8tdWlcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saXN0LWVsZW1lbnQvbGlzdC1lbGVtZW50Lm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpc3QtZWxlbWVudC9vY3RvTGlzdE5hdmlnYXRpb24nXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saXN0LWVsZW1lbnQvZ3JhcGhRTERhdGFTb3VyY2UnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saXN0LWVsZW1lbnQvZ2xvYmFsVHlwZXMnIl19
|
|
@@ -1,52 +1,173 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { NgModule, EventEmitter } from '@angular/core';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { fromEvent, merge, of } from 'rxjs';
|
|
5
|
+
import { debounceTime, distinctUntilChanged, tap, catchError } from 'rxjs/operators';
|
|
6
|
+
import { DataSourceBase, PagedResultDto } from '@meshmakers/shared-services';
|
|
3
7
|
|
|
4
|
-
class
|
|
5
|
-
constructor() { }
|
|
8
|
+
class ListElementModule {
|
|
6
9
|
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
i0.ɵɵ
|
|
10
|
-
|
|
10
|
+
ListElementModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
ListElementModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, imports: [CommonModule] });
|
|
12
|
+
ListElementModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, imports: [CommonModule] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, decorators: [{
|
|
14
|
+
type: NgModule,
|
|
11
15
|
args: [{
|
|
12
|
-
|
|
16
|
+
declarations: [],
|
|
17
|
+
imports: [
|
|
18
|
+
CommonModule
|
|
19
|
+
]
|
|
13
20
|
}]
|
|
14
|
-
}]
|
|
21
|
+
}] });
|
|
15
22
|
|
|
16
|
-
|
|
23
|
+
/* tslint:disable */
|
|
24
|
+
/* eslint-disable */
|
|
25
|
+
// @generated
|
|
26
|
+
// This file was automatically generated and should not be edited.
|
|
27
|
+
/** Defines the operator of field compare */
|
|
28
|
+
var FieldFilterOperatorsDto;
|
|
29
|
+
(function (FieldFilterOperatorsDto) {
|
|
30
|
+
FieldFilterOperatorsDto["EqualsDto"] = "EQUALS";
|
|
31
|
+
FieldFilterOperatorsDto["GreaterEqualThanDto"] = "GREATER_EQUAL_THAN";
|
|
32
|
+
FieldFilterOperatorsDto["GreaterThanDto"] = "GREATER_THAN";
|
|
33
|
+
FieldFilterOperatorsDto["InDto"] = "IN";
|
|
34
|
+
FieldFilterOperatorsDto["LessEqualThanDto"] = "LESS_EQUAL_THAN";
|
|
35
|
+
FieldFilterOperatorsDto["LessThanDto"] = "LESS_THAN";
|
|
36
|
+
FieldFilterOperatorsDto["LikeDto"] = "LIKE";
|
|
37
|
+
FieldFilterOperatorsDto["MatchRegExDto"] = "MATCH_REG_EX";
|
|
38
|
+
FieldFilterOperatorsDto["NotEqualsDto"] = "NOT_EQUALS";
|
|
39
|
+
FieldFilterOperatorsDto["NotInDto"] = "NOT_IN";
|
|
40
|
+
FieldFilterOperatorsDto["NotMatchRegExDto"] = "NOT_MATCH_REG_EX";
|
|
41
|
+
})(FieldFilterOperatorsDto || (FieldFilterOperatorsDto = {}));
|
|
42
|
+
/** The scope of the construction kit model */
|
|
43
|
+
var ScopesDto;
|
|
44
|
+
(function (ScopesDto) {
|
|
45
|
+
ScopesDto["ApplicationDto"] = "APPLICATION";
|
|
46
|
+
ScopesDto["Layer_2Dto"] = "LAYER_2";
|
|
47
|
+
ScopesDto["Layer_3Dto"] = "LAYER_3";
|
|
48
|
+
ScopesDto["Layer_4Dto"] = "LAYER_4";
|
|
49
|
+
ScopesDto["SystemDto"] = "SYSTEM";
|
|
50
|
+
})(ScopesDto || (ScopesDto = {}));
|
|
51
|
+
/** The type of search that is used (a text based search using text analysis (high performance, scoring, maybe more false positives) or filtering of attributes (lower performance, more exact results) */
|
|
52
|
+
var SearchFilterTypesDto;
|
|
53
|
+
(function (SearchFilterTypesDto) {
|
|
54
|
+
SearchFilterTypesDto["AttributeFilterDto"] = "ATTRIBUTE_FILTER";
|
|
55
|
+
SearchFilterTypesDto["TextSearchDto"] = "TEXT_SEARCH";
|
|
56
|
+
})(SearchFilterTypesDto || (SearchFilterTypesDto = {}));
|
|
57
|
+
/** Defines the sort order */
|
|
58
|
+
var SortOrdersDto;
|
|
59
|
+
(function (SortOrdersDto) {
|
|
60
|
+
SortOrdersDto["AscendingDto"] = "ASCENDING";
|
|
61
|
+
SortOrdersDto["DefaultDto"] = "DEFAULT";
|
|
62
|
+
SortOrdersDto["DescendingDto"] = "DESCENDING";
|
|
63
|
+
})(SortOrdersDto || (SortOrdersDto = {}));
|
|
64
|
+
//==============================================================
|
|
65
|
+
// END Enums and Input Objects
|
|
66
|
+
//==============================================================
|
|
67
|
+
|
|
68
|
+
class OctoListNavigationDataInfo {
|
|
69
|
+
constructor() {
|
|
70
|
+
this.skip = 0;
|
|
71
|
+
this.take = 10;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
class OctoListNavigationOptions {
|
|
75
|
+
constructor() {
|
|
76
|
+
this.language = null;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
class OctoListNavigation {
|
|
80
|
+
constructor(paginator, sort, searchBox, octoOptions) {
|
|
81
|
+
this.paginator = paginator;
|
|
82
|
+
this.sort = sort;
|
|
83
|
+
this.searchBox = searchBox;
|
|
84
|
+
this.octoOptions = octoOptions;
|
|
85
|
+
this.loadDataRequest = new EventEmitter();
|
|
86
|
+
this.lastSortDirection = null;
|
|
87
|
+
this.lastSortField = null;
|
|
88
|
+
this.lastSearchText = null;
|
|
89
|
+
}
|
|
90
|
+
get loadDataInfo() {
|
|
91
|
+
const filterString = this.searchBox.nativeElement.value;
|
|
92
|
+
const sortField = this.sort.active;
|
|
93
|
+
const sortDirection = this.sort.direction;
|
|
94
|
+
let filter = null;
|
|
95
|
+
if (filterString) {
|
|
96
|
+
filter = {
|
|
97
|
+
language: this.octoOptions.language,
|
|
98
|
+
searchTerm: filterString,
|
|
99
|
+
type: this.octoOptions.searchFilterType,
|
|
100
|
+
attributeNames: this.octoOptions.searchFilterAttributeNames
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
let sort = [];
|
|
104
|
+
if (sortField && sortDirection) {
|
|
105
|
+
sort.push({
|
|
106
|
+
attributeName: sortField,
|
|
107
|
+
sortOrder: sortDirection === "asc" ? SortOrdersDto.AscendingDto : SortOrdersDto.DescendingDto
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
return {
|
|
111
|
+
skip: this.paginator.pageIndex * this.paginator.pageSize,
|
|
112
|
+
take: this.paginator.pageSize,
|
|
113
|
+
searchFilter: filter,
|
|
114
|
+
sort: sort
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
init() {
|
|
118
|
+
// server-side search
|
|
119
|
+
fromEvent(this.searchBox.nativeElement, 'keyup')
|
|
120
|
+
.pipe(debounceTime(500), distinctUntilChanged(), tap(() => {
|
|
121
|
+
this.paginator.pageIndex = 0;
|
|
122
|
+
const searchText = this.searchBox.nativeElement.value;
|
|
123
|
+
if (!this.lastSearchText && searchText) {
|
|
124
|
+
this.lastSortDirection = this.sort.direction;
|
|
125
|
+
this.lastSortField = this.sort.active;
|
|
126
|
+
// Reset sorting to see the score rating (default sorting returned from server)
|
|
127
|
+
this.sort.sort({ id: '', start: 'asc', disableClear: false });
|
|
128
|
+
}
|
|
129
|
+
this.lastSearchText = searchText;
|
|
130
|
+
if (!searchText && this.lastSortField) {
|
|
131
|
+
if (this.lastSortDirection == "asc") {
|
|
132
|
+
this.sort.sort({ id: this.lastSortField, start: 'asc', disableClear: true });
|
|
133
|
+
}
|
|
134
|
+
else if (this.lastSortDirection == "desc") {
|
|
135
|
+
this.sort.sort({ id: this.lastSortField, start: 'desc', disableClear: true });
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
this.loadData();
|
|
139
|
+
}))
|
|
140
|
+
.subscribe();
|
|
141
|
+
// reset the paginator after sorting
|
|
142
|
+
this.sort.sortChange.subscribe(() => this.paginator.pageIndex = 0);
|
|
143
|
+
merge(this.sort.sortChange, this.paginator.page)
|
|
144
|
+
.pipe(tap(() => this.loadData()))
|
|
145
|
+
.subscribe();
|
|
146
|
+
}
|
|
147
|
+
loadData() {
|
|
148
|
+
this.loadDataRequest.emit(this.loadDataInfo);
|
|
149
|
+
}
|
|
17
150
|
}
|
|
18
|
-
OctoUiComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
-
OctoUiComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: OctoUiComponent, selector: "lib-octo-ui", ngImport: i0, template: `
|
|
20
|
-
<p>
|
|
21
|
-
octo-ui works!
|
|
22
|
-
</p>
|
|
23
|
-
`, isInline: true });
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiComponent, decorators: [{
|
|
25
|
-
type: Component,
|
|
26
|
-
args: [{ selector: 'lib-octo-ui', template: `
|
|
27
|
-
<p>
|
|
28
|
-
octo-ui works!
|
|
29
|
-
</p>
|
|
30
|
-
` }]
|
|
31
|
-
}] });
|
|
32
151
|
|
|
33
|
-
class
|
|
152
|
+
class GraphQLDataSource extends DataSourceBase {
|
|
153
|
+
constructor(messageService) {
|
|
154
|
+
super();
|
|
155
|
+
this.messageService = messageService;
|
|
156
|
+
}
|
|
157
|
+
loadData(tenantId, skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
|
|
158
|
+
super.onBeginLoad();
|
|
159
|
+
this.executeLoad(tenantId, skip, take, searchFilter, fieldFilter, sort).pipe(catchError((error) => {
|
|
160
|
+
this.messageService.showError(error, "Error during load of data");
|
|
161
|
+
return of(new PagedResultDto());
|
|
162
|
+
}))
|
|
163
|
+
.subscribe(pagedResult => {
|
|
164
|
+
super.onCompleteLoad(pagedResult);
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
executeLoad(tenantId, skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
|
|
168
|
+
return of(new PagedResultDto());
|
|
169
|
+
}
|
|
34
170
|
}
|
|
35
|
-
OctoUiModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
36
|
-
OctoUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule, declarations: [OctoUiComponent], exports: [OctoUiComponent] });
|
|
37
|
-
OctoUiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule });
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule, decorators: [{
|
|
39
|
-
type: NgModule,
|
|
40
|
-
args: [{
|
|
41
|
-
declarations: [
|
|
42
|
-
OctoUiComponent
|
|
43
|
-
],
|
|
44
|
-
imports: [],
|
|
45
|
-
exports: [
|
|
46
|
-
OctoUiComponent
|
|
47
|
-
]
|
|
48
|
-
}]
|
|
49
|
-
}] });
|
|
50
171
|
|
|
51
172
|
/*
|
|
52
173
|
* Public API Surface of octo-ui
|
|
@@ -56,5 +177,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
|
|
|
56
177
|
* Generated bundle index. Do not edit.
|
|
57
178
|
*/
|
|
58
179
|
|
|
59
|
-
export {
|
|
180
|
+
export { FieldFilterOperatorsDto, GraphQLDataSource, ListElementModule, OctoListNavigation, OctoListNavigationDataInfo, OctoListNavigationOptions, ScopesDto, SearchFilterTypesDto, SortOrdersDto };
|
|
60
181
|
//# sourceMappingURL=meshmakers-octo-ui.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meshmakers-octo-ui.mjs","sources":["../../../../projects/meshmakers/octo-ui/src/lib/octo-ui.service.ts","../../../../projects/meshmakers/octo-ui/src/lib/octo-ui.component.ts","../../../../projects/meshmakers/octo-ui/src/lib/octo-ui.module.ts","../../../../projects/meshmakers/octo-ui/src/public-api.ts","../../../../projects/meshmakers/octo-ui/src/meshmakers-octo-ui.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OctoUiService {\n\n constructor() { }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'lib-octo-ui',\n template: `\n <p>\n octo-ui works!\n </p>\n `,\n styles: [\n ]\n})\nexport class OctoUiComponent {\n\n}\n","import { NgModule } from '@angular/core';\nimport { OctoUiComponent } from './octo-ui.component';\n\n\n\n@NgModule({\n declarations: [\n OctoUiComponent\n ],\n imports: [\n ],\n exports: [\n OctoUiComponent\n ]\n})\nexport class OctoUiModule { }\n","/*\n * Public API Surface of octo-ui\n */\n\nexport * from './lib/octo-ui.service';\nexport * from './lib/octo-ui.component';\nexport * from './lib/octo-ui.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAKa,aAAa,CAAA;AAExB,IAAA,WAAA,GAAA,GAAiB;;0GAFN,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,cAFZ,MAAM,EAAA,CAAA,CAAA;2FAEP,aAAa,EAAA,UAAA,EAAA,CAAA;kBAHzB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;iBACnB,CAAA;;;MCQY,eAAe,CAAA;;4GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EARhB,QAAA,EAAA,aAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAIU,eAAe,EAAA,UAAA,EAAA,CAAA;kBAV3B,SAAS;YACE,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,EACb,QAAA,EAAA,CAAA;;;;AAIT,EAAA,CAAA,EAAA,CAAA;;;MCOU,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;0GAAZ,YAAY,EAAA,YAAA,EAAA,CARrB,eAAe,CAAA,EAAA,OAAA,EAAA,CAKf,eAAe,CAAA,EAAA,CAAA,CAAA;0GAGN,YAAY,EAAA,CAAA,CAAA;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAVxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,eAAe;AAChB,qBAAA;AACD,oBAAA,OAAO,EAAE,EACR;AACD,oBAAA,OAAO,EAAE;wBACP,eAAe;AAChB,qBAAA;iBACF,CAAA;;;ACdD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"meshmakers-octo-ui.mjs","sources":["../../../../projects/meshmakers/octo-ui/src/lib/list-element/list-element.module.ts","../../../../projects/meshmakers/octo-ui/src/lib/list-element/globalTypes.ts","../../../../projects/meshmakers/octo-ui/src/lib/list-element/octoListNavigation.ts","../../../../projects/meshmakers/octo-ui/src/lib/list-element/graphQLDataSource.ts","../../../../projects/meshmakers/octo-ui/src/public-api.ts","../../../../projects/meshmakers/octo-ui/src/meshmakers-octo-ui.ts"],"sourcesContent":["import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\n\n\n@NgModule({\n declarations: [],\n imports: [\n CommonModule\n ]\n})\nexport class ListElementModule {\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @generated\n// This file was automatically generated and should not be edited.\n\n//==============================================================\n// START Enums and Input Objects\n//==============================================================\nexport type Maybe<T> = T | null;\nexport type InputMaybe<T> = Maybe<T>;\n\n/** All built-in and custom scalars, mapped to their actual values */\nexport type Scalars = {\n ID: string;\n String: string;\n Boolean: boolean;\n Int: number;\n Float: number;\n /** The `DateTime` scalar type represents a date and time. `DateTime` expects timestamps to be formatted in accordance with the [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) standard. */\n DateTime: any;\n Decimal: any;\n OspObjectIdType: any;\n SimpleScalarType: any;\n};\n\nexport type FieldFilterDto = {\n attributeName: Scalars['String'];\n comparisonValue?: InputMaybe<Scalars['SimpleScalarType']>;\n operator?: InputMaybe<FieldFilterOperatorsDto>;\n};\n\n/** Defines the operator of field compare */\nexport enum FieldFilterOperatorsDto {\n EqualsDto = 'EQUALS',\n GreaterEqualThanDto = 'GREATER_EQUAL_THAN',\n GreaterThanDto = 'GREATER_THAN',\n InDto = 'IN',\n LessEqualThanDto = 'LESS_EQUAL_THAN',\n LessThanDto = 'LESS_THAN',\n LikeDto = 'LIKE',\n MatchRegExDto = 'MATCH_REG_EX',\n NotEqualsDto = 'NOT_EQUALS',\n NotInDto = 'NOT_IN',\n NotMatchRegExDto = 'NOT_MATCH_REG_EX'\n}\n\n/** The scope of the construction kit model */\nexport enum ScopesDto {\n ApplicationDto = 'APPLICATION',\n Layer_2Dto = 'LAYER_2',\n Layer_3Dto = 'LAYER_3',\n Layer_4Dto = 'LAYER_4',\n SystemDto = 'SYSTEM'\n}\n\nexport type SearchFilterDto = {\n attributeNames?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;\n language?: InputMaybe<Scalars['String']>;\n searchTerm: Scalars['String'];\n type?: InputMaybe<SearchFilterTypesDto>;\n};\n\n/** The type of search that is used (a text based search using text analysis (high performance, scoring, maybe more false positives) or filtering of attributes (lower performance, more exact results) */\nexport enum SearchFilterTypesDto {\n AttributeFilterDto = 'ATTRIBUTE_FILTER',\n TextSearchDto = 'TEXT_SEARCH'\n}\n\nexport type SortDto = {\n attributeName: Scalars['String'];\n sortOrder?: InputMaybe<SortOrdersDto>;\n};\n\n/** Defines the sort order */\nexport enum SortOrdersDto {\n AscendingDto = 'ASCENDING',\n DefaultDto = 'DEFAULT',\n DescendingDto = 'DESCENDING'\n}\n\n//==============================================================\n// END Enums and Input Objects\n//==============================================================\n","import {MatPaginator} from \"@angular/material/paginator\";\nimport {MatSort, SortDirection} from \"@angular/material/sort\";\nimport {ElementRef, EventEmitter} from \"@angular/core\";\nimport {fromEvent, merge} from \"rxjs\";\nimport {debounceTime, distinctUntilChanged, tap} from \"rxjs/operators\";\nimport {SearchFilterDto, SearchFilterTypesDto, SortDto, SortOrdersDto} from \"./globalTypes\";\n\n\nexport class OctoListNavigationDataInfo {\n skip: number;\n take: number;\n searchFilter?: SearchFilterDto;\n sort?: SortDto[];\n\n constructor() {\n this.skip = 0;\n this.take = 10;\n }\n}\n\nexport class OctoListNavigationOptions {\n language: string | null;\n searchFilterType?: SearchFilterTypesDto;\n searchFilterAttributeNames?: string[];\n\n constructor() {\n this.language = null;\n }\n}\n\nexport class OctoListNavigation {\n\n public loadDataRequest = new EventEmitter<OctoListNavigationDataInfo>();\n\n lastSortDirection: SortDirection | null;\n lastSortField: string | null;\n lastSearchText: string | null;\n\n constructor(private paginator: MatPaginator, private sort: MatSort, private searchBox: ElementRef, private octoOptions: OctoListNavigationOptions) {\n this.lastSortDirection = null;\n this.lastSortField = null;\n this.lastSearchText = null;\n }\n\n public get loadDataInfo() {\n const filterString = this.searchBox.nativeElement.value;\n const sortField = this.sort.active;\n const sortDirection = this.sort.direction;\n\n let filter = null;\n if (filterString) {\n filter = <SearchFilterDto>{\n language: this.octoOptions.language,\n searchTerm: filterString,\n type: this.octoOptions.searchFilterType,\n attributeNames: this.octoOptions.searchFilterAttributeNames\n };\n }\n\n let sort = [];\n if (sortField && sortDirection) {\n sort.push(<SortDto>{\n attributeName: sortField,\n sortOrder: sortDirection === \"asc\" ? SortOrdersDto.AscendingDto : SortOrdersDto.DescendingDto\n });\n }\n\n return <OctoListNavigationDataInfo>{\n skip: this.paginator.pageIndex * this.paginator.pageSize,\n take: this.paginator.pageSize,\n searchFilter: filter,\n sort: sort\n };\n }\n\n init() {\n // server-side search\n fromEvent(this.searchBox.nativeElement, 'keyup')\n .pipe(\n debounceTime(500),\n distinctUntilChanged(),\n tap(() => {\n\n this.paginator.pageIndex = 0;\n\n const searchText = this.searchBox.nativeElement.value;\n\n if (!this.lastSearchText && searchText) {\n this.lastSortDirection = this.sort.direction;\n this.lastSortField = this.sort.active;\n\n // Reset sorting to see the score rating (default sorting returned from server)\n this.sort.sort({id: '', start: 'asc', disableClear: false});\n }\n\n this.lastSearchText = searchText;\n\n if (!searchText && this.lastSortField) {\n if (this.lastSortDirection == \"asc\") {\n this.sort.sort({id: this.lastSortField, start: 'asc', disableClear: true});\n } else if (this.lastSortDirection == \"desc\") {\n this.sort.sort({id: this.lastSortField, start: 'desc', disableClear: true});\n }\n }\n\n\n this.loadData();\n })\n )\n .subscribe();\n\n // reset the paginator after sorting\n this.sort.sortChange.subscribe(() => this.paginator.pageIndex = 0);\n\n merge(this.sort.sortChange, this.paginator.page)\n .pipe(\n tap(() => this.loadData())\n )\n .subscribe()\n }\n\n private loadData() {\n\n this.loadDataRequest.emit(this.loadDataInfo);\n }\n}\n","import {Observable, of} from \"rxjs\";\nimport {catchError} from \"rxjs/operators\";\nimport {DataSourceBase, MessageService, PagedResultDto} from \"@meshmakers/shared-services\";\nimport {FieldFilterDto, SearchFilterDto, SortDto} from \"./globalTypes\";\nexport class GraphQLDataSource<TDto> extends DataSourceBase<TDto> {\n\n constructor(protected messageService: MessageService) {\n super();\n }\n public loadData(tenantId: string, skip: number = 0, take: number = 10, searchFilter: SearchFilterDto | null = null,\n fieldFilter: FieldFilterDto[] | null = null, sort: SortDto[] | null = null) {\n\n super.onBeginLoad();\n\n this.executeLoad(tenantId, skip, take, searchFilter, fieldFilter, sort).pipe(\n catchError((error) => {\n\n this.messageService.showError(error, \"Error during load of data\");\n\n return of(new PagedResultDto<TDto>())\n }))\n .subscribe(pagedResult => {\n\n super.onCompleteLoad(pagedResult);\n });\n }\n\n protected executeLoad(tenantId: string, skip: number = 0, take: number = 10, searchFilter: SearchFilterDto | null = null,\n fieldFilter: FieldFilterDto[] | null = null, sort: SortDto[] | null = null): Observable<PagedResultDto<TDto>> {\n return of(new PagedResultDto<TDto>())\n }\n}\n","/*\n * Public API Surface of octo-ui\n */\n\nexport * from './lib/list-element/list-element.module'\nexport * from './lib/list-element/octoListNavigation'\nexport * from './lib/list-element/graphQLDataSource'\nexport * from './lib/list-element/globalTypes'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,52 +1,173 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { NgModule, EventEmitter } from '@angular/core';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { fromEvent, merge, of } from 'rxjs';
|
|
5
|
+
import { debounceTime, distinctUntilChanged, tap, catchError } from 'rxjs/operators';
|
|
6
|
+
import { DataSourceBase, PagedResultDto } from '@meshmakers/shared-services';
|
|
3
7
|
|
|
4
|
-
class
|
|
5
|
-
constructor() { }
|
|
8
|
+
class ListElementModule {
|
|
6
9
|
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
i0.ɵɵ
|
|
10
|
-
|
|
10
|
+
ListElementModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
ListElementModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, imports: [CommonModule] });
|
|
12
|
+
ListElementModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, imports: [CommonModule] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ListElementModule, decorators: [{
|
|
14
|
+
type: NgModule,
|
|
11
15
|
args: [{
|
|
12
|
-
|
|
16
|
+
declarations: [],
|
|
17
|
+
imports: [
|
|
18
|
+
CommonModule
|
|
19
|
+
]
|
|
13
20
|
}]
|
|
14
|
-
}]
|
|
21
|
+
}] });
|
|
15
22
|
|
|
16
|
-
|
|
23
|
+
/* tslint:disable */
|
|
24
|
+
/* eslint-disable */
|
|
25
|
+
// @generated
|
|
26
|
+
// This file was automatically generated and should not be edited.
|
|
27
|
+
/** Defines the operator of field compare */
|
|
28
|
+
var FieldFilterOperatorsDto;
|
|
29
|
+
(function (FieldFilterOperatorsDto) {
|
|
30
|
+
FieldFilterOperatorsDto["EqualsDto"] = "EQUALS";
|
|
31
|
+
FieldFilterOperatorsDto["GreaterEqualThanDto"] = "GREATER_EQUAL_THAN";
|
|
32
|
+
FieldFilterOperatorsDto["GreaterThanDto"] = "GREATER_THAN";
|
|
33
|
+
FieldFilterOperatorsDto["InDto"] = "IN";
|
|
34
|
+
FieldFilterOperatorsDto["LessEqualThanDto"] = "LESS_EQUAL_THAN";
|
|
35
|
+
FieldFilterOperatorsDto["LessThanDto"] = "LESS_THAN";
|
|
36
|
+
FieldFilterOperatorsDto["LikeDto"] = "LIKE";
|
|
37
|
+
FieldFilterOperatorsDto["MatchRegExDto"] = "MATCH_REG_EX";
|
|
38
|
+
FieldFilterOperatorsDto["NotEqualsDto"] = "NOT_EQUALS";
|
|
39
|
+
FieldFilterOperatorsDto["NotInDto"] = "NOT_IN";
|
|
40
|
+
FieldFilterOperatorsDto["NotMatchRegExDto"] = "NOT_MATCH_REG_EX";
|
|
41
|
+
})(FieldFilterOperatorsDto || (FieldFilterOperatorsDto = {}));
|
|
42
|
+
/** The scope of the construction kit model */
|
|
43
|
+
var ScopesDto;
|
|
44
|
+
(function (ScopesDto) {
|
|
45
|
+
ScopesDto["ApplicationDto"] = "APPLICATION";
|
|
46
|
+
ScopesDto["Layer_2Dto"] = "LAYER_2";
|
|
47
|
+
ScopesDto["Layer_3Dto"] = "LAYER_3";
|
|
48
|
+
ScopesDto["Layer_4Dto"] = "LAYER_4";
|
|
49
|
+
ScopesDto["SystemDto"] = "SYSTEM";
|
|
50
|
+
})(ScopesDto || (ScopesDto = {}));
|
|
51
|
+
/** The type of search that is used (a text based search using text analysis (high performance, scoring, maybe more false positives) or filtering of attributes (lower performance, more exact results) */
|
|
52
|
+
var SearchFilterTypesDto;
|
|
53
|
+
(function (SearchFilterTypesDto) {
|
|
54
|
+
SearchFilterTypesDto["AttributeFilterDto"] = "ATTRIBUTE_FILTER";
|
|
55
|
+
SearchFilterTypesDto["TextSearchDto"] = "TEXT_SEARCH";
|
|
56
|
+
})(SearchFilterTypesDto || (SearchFilterTypesDto = {}));
|
|
57
|
+
/** Defines the sort order */
|
|
58
|
+
var SortOrdersDto;
|
|
59
|
+
(function (SortOrdersDto) {
|
|
60
|
+
SortOrdersDto["AscendingDto"] = "ASCENDING";
|
|
61
|
+
SortOrdersDto["DefaultDto"] = "DEFAULT";
|
|
62
|
+
SortOrdersDto["DescendingDto"] = "DESCENDING";
|
|
63
|
+
})(SortOrdersDto || (SortOrdersDto = {}));
|
|
64
|
+
//==============================================================
|
|
65
|
+
// END Enums and Input Objects
|
|
66
|
+
//==============================================================
|
|
67
|
+
|
|
68
|
+
class OctoListNavigationDataInfo {
|
|
69
|
+
constructor() {
|
|
70
|
+
this.skip = 0;
|
|
71
|
+
this.take = 10;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
class OctoListNavigationOptions {
|
|
75
|
+
constructor() {
|
|
76
|
+
this.language = null;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
class OctoListNavigation {
|
|
80
|
+
constructor(paginator, sort, searchBox, octoOptions) {
|
|
81
|
+
this.paginator = paginator;
|
|
82
|
+
this.sort = sort;
|
|
83
|
+
this.searchBox = searchBox;
|
|
84
|
+
this.octoOptions = octoOptions;
|
|
85
|
+
this.loadDataRequest = new EventEmitter();
|
|
86
|
+
this.lastSortDirection = null;
|
|
87
|
+
this.lastSortField = null;
|
|
88
|
+
this.lastSearchText = null;
|
|
89
|
+
}
|
|
90
|
+
get loadDataInfo() {
|
|
91
|
+
const filterString = this.searchBox.nativeElement.value;
|
|
92
|
+
const sortField = this.sort.active;
|
|
93
|
+
const sortDirection = this.sort.direction;
|
|
94
|
+
let filter = null;
|
|
95
|
+
if (filterString) {
|
|
96
|
+
filter = {
|
|
97
|
+
language: this.octoOptions.language,
|
|
98
|
+
searchTerm: filterString,
|
|
99
|
+
type: this.octoOptions.searchFilterType,
|
|
100
|
+
attributeNames: this.octoOptions.searchFilterAttributeNames
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
let sort = [];
|
|
104
|
+
if (sortField && sortDirection) {
|
|
105
|
+
sort.push({
|
|
106
|
+
attributeName: sortField,
|
|
107
|
+
sortOrder: sortDirection === "asc" ? SortOrdersDto.AscendingDto : SortOrdersDto.DescendingDto
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
return {
|
|
111
|
+
skip: this.paginator.pageIndex * this.paginator.pageSize,
|
|
112
|
+
take: this.paginator.pageSize,
|
|
113
|
+
searchFilter: filter,
|
|
114
|
+
sort: sort
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
init() {
|
|
118
|
+
// server-side search
|
|
119
|
+
fromEvent(this.searchBox.nativeElement, 'keyup')
|
|
120
|
+
.pipe(debounceTime(500), distinctUntilChanged(), tap(() => {
|
|
121
|
+
this.paginator.pageIndex = 0;
|
|
122
|
+
const searchText = this.searchBox.nativeElement.value;
|
|
123
|
+
if (!this.lastSearchText && searchText) {
|
|
124
|
+
this.lastSortDirection = this.sort.direction;
|
|
125
|
+
this.lastSortField = this.sort.active;
|
|
126
|
+
// Reset sorting to see the score rating (default sorting returned from server)
|
|
127
|
+
this.sort.sort({ id: '', start: 'asc', disableClear: false });
|
|
128
|
+
}
|
|
129
|
+
this.lastSearchText = searchText;
|
|
130
|
+
if (!searchText && this.lastSortField) {
|
|
131
|
+
if (this.lastSortDirection == "asc") {
|
|
132
|
+
this.sort.sort({ id: this.lastSortField, start: 'asc', disableClear: true });
|
|
133
|
+
}
|
|
134
|
+
else if (this.lastSortDirection == "desc") {
|
|
135
|
+
this.sort.sort({ id: this.lastSortField, start: 'desc', disableClear: true });
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
this.loadData();
|
|
139
|
+
}))
|
|
140
|
+
.subscribe();
|
|
141
|
+
// reset the paginator after sorting
|
|
142
|
+
this.sort.sortChange.subscribe(() => this.paginator.pageIndex = 0);
|
|
143
|
+
merge(this.sort.sortChange, this.paginator.page)
|
|
144
|
+
.pipe(tap(() => this.loadData()))
|
|
145
|
+
.subscribe();
|
|
146
|
+
}
|
|
147
|
+
loadData() {
|
|
148
|
+
this.loadDataRequest.emit(this.loadDataInfo);
|
|
149
|
+
}
|
|
17
150
|
}
|
|
18
|
-
OctoUiComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
-
OctoUiComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: OctoUiComponent, selector: "lib-octo-ui", ngImport: i0, template: `
|
|
20
|
-
<p>
|
|
21
|
-
octo-ui works!
|
|
22
|
-
</p>
|
|
23
|
-
`, isInline: true });
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiComponent, decorators: [{
|
|
25
|
-
type: Component,
|
|
26
|
-
args: [{ selector: 'lib-octo-ui', template: `
|
|
27
|
-
<p>
|
|
28
|
-
octo-ui works!
|
|
29
|
-
</p>
|
|
30
|
-
` }]
|
|
31
|
-
}] });
|
|
32
151
|
|
|
33
|
-
class
|
|
152
|
+
class GraphQLDataSource extends DataSourceBase {
|
|
153
|
+
constructor(messageService) {
|
|
154
|
+
super();
|
|
155
|
+
this.messageService = messageService;
|
|
156
|
+
}
|
|
157
|
+
loadData(tenantId, skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
|
|
158
|
+
super.onBeginLoad();
|
|
159
|
+
this.executeLoad(tenantId, skip, take, searchFilter, fieldFilter, sort).pipe(catchError((error) => {
|
|
160
|
+
this.messageService.showError(error, "Error during load of data");
|
|
161
|
+
return of(new PagedResultDto());
|
|
162
|
+
}))
|
|
163
|
+
.subscribe(pagedResult => {
|
|
164
|
+
super.onCompleteLoad(pagedResult);
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
executeLoad(tenantId, skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
|
|
168
|
+
return of(new PagedResultDto());
|
|
169
|
+
}
|
|
34
170
|
}
|
|
35
|
-
OctoUiModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
36
|
-
OctoUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule, declarations: [OctoUiComponent], exports: [OctoUiComponent] });
|
|
37
|
-
OctoUiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule });
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule, decorators: [{
|
|
39
|
-
type: NgModule,
|
|
40
|
-
args: [{
|
|
41
|
-
declarations: [
|
|
42
|
-
OctoUiComponent
|
|
43
|
-
],
|
|
44
|
-
imports: [],
|
|
45
|
-
exports: [
|
|
46
|
-
OctoUiComponent
|
|
47
|
-
]
|
|
48
|
-
}]
|
|
49
|
-
}] });
|
|
50
171
|
|
|
51
172
|
/*
|
|
52
173
|
* Public API Surface of octo-ui
|
|
@@ -56,5 +177,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
|
|
|
56
177
|
* Generated bundle index. Do not edit.
|
|
57
178
|
*/
|
|
58
179
|
|
|
59
|
-
export {
|
|
180
|
+
export { FieldFilterOperatorsDto, GraphQLDataSource, ListElementModule, OctoListNavigation, OctoListNavigationDataInfo, OctoListNavigationOptions, ScopesDto, SearchFilterTypesDto, SortOrdersDto };
|
|
60
181
|
//# sourceMappingURL=meshmakers-octo-ui.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meshmakers-octo-ui.mjs","sources":["../../../../projects/meshmakers/octo-ui/src/lib/octo-ui.service.ts","../../../../projects/meshmakers/octo-ui/src/lib/octo-ui.component.ts","../../../../projects/meshmakers/octo-ui/src/lib/octo-ui.module.ts","../../../../projects/meshmakers/octo-ui/src/public-api.ts","../../../../projects/meshmakers/octo-ui/src/meshmakers-octo-ui.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OctoUiService {\n\n constructor() { }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'lib-octo-ui',\n template: `\n <p>\n octo-ui works!\n </p>\n `,\n styles: [\n ]\n})\nexport class OctoUiComponent {\n\n}\n","import { NgModule } from '@angular/core';\nimport { OctoUiComponent } from './octo-ui.component';\n\n\n\n@NgModule({\n declarations: [\n OctoUiComponent\n ],\n imports: [\n ],\n exports: [\n OctoUiComponent\n ]\n})\nexport class OctoUiModule { }\n","/*\n * Public API Surface of octo-ui\n */\n\nexport * from './lib/octo-ui.service';\nexport * from './lib/octo-ui.component';\nexport * from './lib/octo-ui.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAKa,aAAa,CAAA;AAExB,IAAA,WAAA,GAAA,GAAiB;;0GAFN,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,cAFZ,MAAM,EAAA,CAAA,CAAA;2FAEP,aAAa,EAAA,UAAA,EAAA,CAAA;kBAHzB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCQY,eAAe,CAAA;;4GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EARhB,QAAA,EAAA,aAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAIU,eAAe,EAAA,UAAA,EAAA,CAAA;kBAV3B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,EACb,QAAA,EAAA,CAAA;;;;AAIT,EAAA,CAAA,EAAA,CAAA;;;MCOU,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;0GAAZ,YAAY,EAAA,YAAA,EAAA,CARrB,eAAe,CAAA,EAAA,OAAA,EAAA,CAKf,eAAe,CAAA,EAAA,CAAA,CAAA;0GAGN,YAAY,EAAA,CAAA,CAAA;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAVxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,eAAe;AAChB,qBAAA;AACD,oBAAA,OAAO,EAAE,EACR;AACD,oBAAA,OAAO,EAAE;wBACP,eAAe;AAChB,qBAAA;AACF,iBAAA,CAAA;;;ACdD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"meshmakers-octo-ui.mjs","sources":["../../../../projects/meshmakers/octo-ui/src/lib/list-element/list-element.module.ts","../../../../projects/meshmakers/octo-ui/src/lib/list-element/globalTypes.ts","../../../../projects/meshmakers/octo-ui/src/lib/list-element/octoListNavigation.ts","../../../../projects/meshmakers/octo-ui/src/lib/list-element/graphQLDataSource.ts","../../../../projects/meshmakers/octo-ui/src/public-api.ts","../../../../projects/meshmakers/octo-ui/src/meshmakers-octo-ui.ts"],"sourcesContent":["import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\n\n\n@NgModule({\n declarations: [],\n imports: [\n CommonModule\n ]\n})\nexport class ListElementModule {\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @generated\n// This file was automatically generated and should not be edited.\n\n//==============================================================\n// START Enums and Input Objects\n//==============================================================\nexport type Maybe<T> = T | null;\nexport type InputMaybe<T> = Maybe<T>;\n\n/** All built-in and custom scalars, mapped to their actual values */\nexport type Scalars = {\n ID: string;\n String: string;\n Boolean: boolean;\n Int: number;\n Float: number;\n /** The `DateTime` scalar type represents a date and time. `DateTime` expects timestamps to be formatted in accordance with the [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) standard. */\n DateTime: any;\n Decimal: any;\n OspObjectIdType: any;\n SimpleScalarType: any;\n};\n\nexport type FieldFilterDto = {\n attributeName: Scalars['String'];\n comparisonValue?: InputMaybe<Scalars['SimpleScalarType']>;\n operator?: InputMaybe<FieldFilterOperatorsDto>;\n};\n\n/** Defines the operator of field compare */\nexport enum FieldFilterOperatorsDto {\n EqualsDto = 'EQUALS',\n GreaterEqualThanDto = 'GREATER_EQUAL_THAN',\n GreaterThanDto = 'GREATER_THAN',\n InDto = 'IN',\n LessEqualThanDto = 'LESS_EQUAL_THAN',\n LessThanDto = 'LESS_THAN',\n LikeDto = 'LIKE',\n MatchRegExDto = 'MATCH_REG_EX',\n NotEqualsDto = 'NOT_EQUALS',\n NotInDto = 'NOT_IN',\n NotMatchRegExDto = 'NOT_MATCH_REG_EX'\n}\n\n/** The scope of the construction kit model */\nexport enum ScopesDto {\n ApplicationDto = 'APPLICATION',\n Layer_2Dto = 'LAYER_2',\n Layer_3Dto = 'LAYER_3',\n Layer_4Dto = 'LAYER_4',\n SystemDto = 'SYSTEM'\n}\n\nexport type SearchFilterDto = {\n attributeNames?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;\n language?: InputMaybe<Scalars['String']>;\n searchTerm: Scalars['String'];\n type?: InputMaybe<SearchFilterTypesDto>;\n};\n\n/** The type of search that is used (a text based search using text analysis (high performance, scoring, maybe more false positives) or filtering of attributes (lower performance, more exact results) */\nexport enum SearchFilterTypesDto {\n AttributeFilterDto = 'ATTRIBUTE_FILTER',\n TextSearchDto = 'TEXT_SEARCH'\n}\n\nexport type SortDto = {\n attributeName: Scalars['String'];\n sortOrder?: InputMaybe<SortOrdersDto>;\n};\n\n/** Defines the sort order */\nexport enum SortOrdersDto {\n AscendingDto = 'ASCENDING',\n DefaultDto = 'DEFAULT',\n DescendingDto = 'DESCENDING'\n}\n\n//==============================================================\n// END Enums and Input Objects\n//==============================================================\n","import {MatPaginator} from \"@angular/material/paginator\";\nimport {MatSort, SortDirection} from \"@angular/material/sort\";\nimport {ElementRef, EventEmitter} from \"@angular/core\";\nimport {fromEvent, merge} from \"rxjs\";\nimport {debounceTime, distinctUntilChanged, tap} from \"rxjs/operators\";\nimport {SearchFilterDto, SearchFilterTypesDto, SortDto, SortOrdersDto} from \"./globalTypes\";\n\n\nexport class OctoListNavigationDataInfo {\n skip: number;\n take: number;\n searchFilter?: SearchFilterDto;\n sort?: SortDto[];\n\n constructor() {\n this.skip = 0;\n this.take = 10;\n }\n}\n\nexport class OctoListNavigationOptions {\n language: string | null;\n searchFilterType?: SearchFilterTypesDto;\n searchFilterAttributeNames?: string[];\n\n constructor() {\n this.language = null;\n }\n}\n\nexport class OctoListNavigation {\n\n public loadDataRequest = new EventEmitter<OctoListNavigationDataInfo>();\n\n lastSortDirection: SortDirection | null;\n lastSortField: string | null;\n lastSearchText: string | null;\n\n constructor(private paginator: MatPaginator, private sort: MatSort, private searchBox: ElementRef, private octoOptions: OctoListNavigationOptions) {\n this.lastSortDirection = null;\n this.lastSortField = null;\n this.lastSearchText = null;\n }\n\n public get loadDataInfo() {\n const filterString = this.searchBox.nativeElement.value;\n const sortField = this.sort.active;\n const sortDirection = this.sort.direction;\n\n let filter = null;\n if (filterString) {\n filter = <SearchFilterDto>{\n language: this.octoOptions.language,\n searchTerm: filterString,\n type: this.octoOptions.searchFilterType,\n attributeNames: this.octoOptions.searchFilterAttributeNames\n };\n }\n\n let sort = [];\n if (sortField && sortDirection) {\n sort.push(<SortDto>{\n attributeName: sortField,\n sortOrder: sortDirection === \"asc\" ? SortOrdersDto.AscendingDto : SortOrdersDto.DescendingDto\n });\n }\n\n return <OctoListNavigationDataInfo>{\n skip: this.paginator.pageIndex * this.paginator.pageSize,\n take: this.paginator.pageSize,\n searchFilter: filter,\n sort: sort\n };\n }\n\n init() {\n // server-side search\n fromEvent(this.searchBox.nativeElement, 'keyup')\n .pipe(\n debounceTime(500),\n distinctUntilChanged(),\n tap(() => {\n\n this.paginator.pageIndex = 0;\n\n const searchText = this.searchBox.nativeElement.value;\n\n if (!this.lastSearchText && searchText) {\n this.lastSortDirection = this.sort.direction;\n this.lastSortField = this.sort.active;\n\n // Reset sorting to see the score rating (default sorting returned from server)\n this.sort.sort({id: '', start: 'asc', disableClear: false});\n }\n\n this.lastSearchText = searchText;\n\n if (!searchText && this.lastSortField) {\n if (this.lastSortDirection == \"asc\") {\n this.sort.sort({id: this.lastSortField, start: 'asc', disableClear: true});\n } else if (this.lastSortDirection == \"desc\") {\n this.sort.sort({id: this.lastSortField, start: 'desc', disableClear: true});\n }\n }\n\n\n this.loadData();\n })\n )\n .subscribe();\n\n // reset the paginator after sorting\n this.sort.sortChange.subscribe(() => this.paginator.pageIndex = 0);\n\n merge(this.sort.sortChange, this.paginator.page)\n .pipe(\n tap(() => this.loadData())\n )\n .subscribe()\n }\n\n private loadData() {\n\n this.loadDataRequest.emit(this.loadDataInfo);\n }\n}\n","import {Observable, of} from \"rxjs\";\nimport {catchError} from \"rxjs/operators\";\nimport {DataSourceBase, MessageService, PagedResultDto} from \"@meshmakers/shared-services\";\nimport {FieldFilterDto, SearchFilterDto, SortDto} from \"./globalTypes\";\nexport class GraphQLDataSource<TDto> extends DataSourceBase<TDto> {\n\n constructor(protected messageService: MessageService) {\n super();\n }\n public loadData(tenantId: string, skip: number = 0, take: number = 10, searchFilter: SearchFilterDto | null = null,\n fieldFilter: FieldFilterDto[] | null = null, sort: SortDto[] | null = null) {\n\n super.onBeginLoad();\n\n this.executeLoad(tenantId, skip, take, searchFilter, fieldFilter, sort).pipe(\n catchError((error) => {\n\n this.messageService.showError(error, \"Error during load of data\");\n\n return of(new PagedResultDto<TDto>())\n }))\n .subscribe(pagedResult => {\n\n super.onCompleteLoad(pagedResult);\n });\n }\n\n protected executeLoad(tenantId: string, skip: number = 0, take: number = 10, searchFilter: SearchFilterDto | null = null,\n fieldFilter: FieldFilterDto[] | null = null, sort: SortDto[] | null = null): Observable<PagedResultDto<TDto>> {\n return of(new PagedResultDto<TDto>())\n }\n}\n","/*\n * Public API Surface of octo-ui\n */\n\nexport * from './lib/list-element/list-element.module'\nexport * from './lib/list-element/octoListNavigation'\nexport * from './lib/list-element/graphQLDataSource'\nexport * from './lib/list-element/globalTypes'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export type Maybe<T> = T | null;
|
|
2
|
+
export type InputMaybe<T> = Maybe<T>;
|
|
3
|
+
/** All built-in and custom scalars, mapped to their actual values */
|
|
4
|
+
export type Scalars = {
|
|
5
|
+
ID: string;
|
|
6
|
+
String: string;
|
|
7
|
+
Boolean: boolean;
|
|
8
|
+
Int: number;
|
|
9
|
+
Float: number;
|
|
10
|
+
/** The `DateTime` scalar type represents a date and time. `DateTime` expects timestamps to be formatted in accordance with the [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) standard. */
|
|
11
|
+
DateTime: any;
|
|
12
|
+
Decimal: any;
|
|
13
|
+
OspObjectIdType: any;
|
|
14
|
+
SimpleScalarType: any;
|
|
15
|
+
};
|
|
16
|
+
export type FieldFilterDto = {
|
|
17
|
+
attributeName: Scalars['String'];
|
|
18
|
+
comparisonValue?: InputMaybe<Scalars['SimpleScalarType']>;
|
|
19
|
+
operator?: InputMaybe<FieldFilterOperatorsDto>;
|
|
20
|
+
};
|
|
21
|
+
/** Defines the operator of field compare */
|
|
22
|
+
export declare enum FieldFilterOperatorsDto {
|
|
23
|
+
EqualsDto = "EQUALS",
|
|
24
|
+
GreaterEqualThanDto = "GREATER_EQUAL_THAN",
|
|
25
|
+
GreaterThanDto = "GREATER_THAN",
|
|
26
|
+
InDto = "IN",
|
|
27
|
+
LessEqualThanDto = "LESS_EQUAL_THAN",
|
|
28
|
+
LessThanDto = "LESS_THAN",
|
|
29
|
+
LikeDto = "LIKE",
|
|
30
|
+
MatchRegExDto = "MATCH_REG_EX",
|
|
31
|
+
NotEqualsDto = "NOT_EQUALS",
|
|
32
|
+
NotInDto = "NOT_IN",
|
|
33
|
+
NotMatchRegExDto = "NOT_MATCH_REG_EX"
|
|
34
|
+
}
|
|
35
|
+
/** The scope of the construction kit model */
|
|
36
|
+
export declare enum ScopesDto {
|
|
37
|
+
ApplicationDto = "APPLICATION",
|
|
38
|
+
Layer_2Dto = "LAYER_2",
|
|
39
|
+
Layer_3Dto = "LAYER_3",
|
|
40
|
+
Layer_4Dto = "LAYER_4",
|
|
41
|
+
SystemDto = "SYSTEM"
|
|
42
|
+
}
|
|
43
|
+
export type SearchFilterDto = {
|
|
44
|
+
attributeNames?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
|
|
45
|
+
language?: InputMaybe<Scalars['String']>;
|
|
46
|
+
searchTerm: Scalars['String'];
|
|
47
|
+
type?: InputMaybe<SearchFilterTypesDto>;
|
|
48
|
+
};
|
|
49
|
+
/** The type of search that is used (a text based search using text analysis (high performance, scoring, maybe more false positives) or filtering of attributes (lower performance, more exact results) */
|
|
50
|
+
export declare enum SearchFilterTypesDto {
|
|
51
|
+
AttributeFilterDto = "ATTRIBUTE_FILTER",
|
|
52
|
+
TextSearchDto = "TEXT_SEARCH"
|
|
53
|
+
}
|
|
54
|
+
export type SortDto = {
|
|
55
|
+
attributeName: Scalars['String'];
|
|
56
|
+
sortOrder?: InputMaybe<SortOrdersDto>;
|
|
57
|
+
};
|
|
58
|
+
/** Defines the sort order */
|
|
59
|
+
export declare enum SortOrdersDto {
|
|
60
|
+
AscendingDto = "ASCENDING",
|
|
61
|
+
DefaultDto = "DEFAULT",
|
|
62
|
+
DescendingDto = "DESCENDING"
|
|
63
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Observable } from "rxjs";
|
|
2
|
+
import { DataSourceBase, MessageService, PagedResultDto } from "@meshmakers/shared-services";
|
|
3
|
+
import { FieldFilterDto, SearchFilterDto, SortDto } from "./globalTypes";
|
|
4
|
+
export declare class GraphQLDataSource<TDto> extends DataSourceBase<TDto> {
|
|
5
|
+
protected messageService: MessageService;
|
|
6
|
+
constructor(messageService: MessageService);
|
|
7
|
+
loadData(tenantId: string, skip?: number, take?: number, searchFilter?: SearchFilterDto | null, fieldFilter?: FieldFilterDto[] | null, sort?: SortDto[] | null): void;
|
|
8
|
+
protected executeLoad(tenantId: string, skip?: number, take?: number, searchFilter?: SearchFilterDto | null, fieldFilter?: FieldFilterDto[] | null, sort?: SortDto[] | null): Observable<PagedResultDto<TDto>>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "@angular/common";
|
|
3
|
+
export declare class ListElementModule {
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ListElementModule, never>;
|
|
5
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<ListElementModule, never, [typeof i1.CommonModule], never>;
|
|
6
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<ListElementModule>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { MatPaginator } from "@angular/material/paginator";
|
|
2
|
+
import { MatSort, SortDirection } from "@angular/material/sort";
|
|
3
|
+
import { ElementRef, EventEmitter } from "@angular/core";
|
|
4
|
+
import { SearchFilterDto, SearchFilterTypesDto, SortDto } from "./globalTypes";
|
|
5
|
+
export declare class OctoListNavigationDataInfo {
|
|
6
|
+
skip: number;
|
|
7
|
+
take: number;
|
|
8
|
+
searchFilter?: SearchFilterDto;
|
|
9
|
+
sort?: SortDto[];
|
|
10
|
+
constructor();
|
|
11
|
+
}
|
|
12
|
+
export declare class OctoListNavigationOptions {
|
|
13
|
+
language: string | null;
|
|
14
|
+
searchFilterType?: SearchFilterTypesDto;
|
|
15
|
+
searchFilterAttributeNames?: string[];
|
|
16
|
+
constructor();
|
|
17
|
+
}
|
|
18
|
+
export declare class OctoListNavigation {
|
|
19
|
+
private paginator;
|
|
20
|
+
private sort;
|
|
21
|
+
private searchBox;
|
|
22
|
+
private octoOptions;
|
|
23
|
+
loadDataRequest: EventEmitter<OctoListNavigationDataInfo>;
|
|
24
|
+
lastSortDirection: SortDirection | null;
|
|
25
|
+
lastSortField: string | null;
|
|
26
|
+
lastSearchText: string | null;
|
|
27
|
+
constructor(paginator: MatPaginator, sort: MatSort, searchBox: ElementRef, octoOptions: OctoListNavigationOptions);
|
|
28
|
+
get loadDataInfo(): OctoListNavigationDataInfo;
|
|
29
|
+
init(): void;
|
|
30
|
+
private loadData;
|
|
31
|
+
}
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export * from './lib/
|
|
2
|
-
export * from './lib/
|
|
3
|
-
export * from './lib/
|
|
1
|
+
export * from './lib/list-element/list-element.module';
|
|
2
|
+
export * from './lib/list-element/octoListNavigation';
|
|
3
|
+
export * from './lib/list-element/graphQLDataSource';
|
|
4
|
+
export * from './lib/list-element/globalTypes';
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class OctoUiComponent {
|
|
4
|
-
}
|
|
5
|
-
OctoUiComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6
|
-
OctoUiComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: OctoUiComponent, selector: "lib-octo-ui", ngImport: i0, template: `
|
|
7
|
-
<p>
|
|
8
|
-
octo-ui works!
|
|
9
|
-
</p>
|
|
10
|
-
`, isInline: true });
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiComponent, decorators: [{
|
|
12
|
-
type: Component,
|
|
13
|
-
args: [{ selector: 'lib-octo-ui', template: `
|
|
14
|
-
<p>
|
|
15
|
-
octo-ui works!
|
|
16
|
-
</p>
|
|
17
|
-
` }]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2N0by11aS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL29jdG8tdWkvc3JjL2xpYi9vY3RvLXVpLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVkxQyxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTtnR0FBZixlQUFlLG1EQVJoQjs7OztHQUlUOzJGQUlVLGVBQWU7a0JBVjNCLFNBQVM7K0JBQ0UsYUFBYSxZQUNiOzs7O0dBSVQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLW9jdG8tdWknLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxwPlxuICAgICAgb2N0by11aSB3b3JrcyFcbiAgICA8L3A+XG4gIGAsXG4gIHN0eWxlczogW1xuICBdXG59KVxuZXhwb3J0IGNsYXNzIE9jdG9VaUNvbXBvbmVudCB7XG5cbn1cbiJdfQ==
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { OctoUiComponent } from './octo-ui.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class OctoUiModule {
|
|
5
|
-
}
|
|
6
|
-
OctoUiModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
-
OctoUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule, declarations: [OctoUiComponent], exports: [OctoUiComponent] });
|
|
8
|
-
OctoUiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule });
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiModule, decorators: [{
|
|
10
|
-
type: NgModule,
|
|
11
|
-
args: [{
|
|
12
|
-
declarations: [
|
|
13
|
-
OctoUiComponent
|
|
14
|
-
],
|
|
15
|
-
imports: [],
|
|
16
|
-
exports: [
|
|
17
|
-
OctoUiComponent
|
|
18
|
-
]
|
|
19
|
-
}]
|
|
20
|
-
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2N0by11aS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL29jdG8tdWkvc3JjL2xpYi9vY3RvLXVpLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFjdEQsTUFBTSxPQUFPLFlBQVk7O3lHQUFaLFlBQVk7MEdBQVosWUFBWSxpQkFSckIsZUFBZSxhQUtmLGVBQWU7MEdBR04sWUFBWTsyRkFBWixZQUFZO2tCQVZ4QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUUsRUFDUjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZUFBZTtxQkFDaEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2N0b1VpQ29tcG9uZW50IH0gZnJvbSAnLi9vY3RvLXVpLmNvbXBvbmVudCc7XG5cblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBPY3RvVWlDb21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICBdLFxuICBleHBvcnRzOiBbXG4gICAgT2N0b1VpQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgT2N0b1VpTW9kdWxlIHsgfVxuIl19
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class OctoUiService {
|
|
4
|
-
constructor() { }
|
|
5
|
-
}
|
|
6
|
-
OctoUiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7
|
-
OctoUiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiService, providedIn: 'root' });
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoUiService, decorators: [{
|
|
9
|
-
type: Injectable,
|
|
10
|
-
args: [{
|
|
11
|
-
providedIn: 'root'
|
|
12
|
-
}]
|
|
13
|
-
}], ctorParameters: function () { return []; } });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2N0by11aS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVzaG1ha2Vycy9vY3RvLXVpL3NyYy9saWIvb2N0by11aS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxhQUFhO0lBRXhCLGdCQUFnQixDQUFDOzswR0FGTixhQUFhOzhHQUFiLGFBQWEsY0FGWixNQUFNOzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBPY3RvVWlTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxufVxuIl19
|
package/lib/octo-ui.module.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./octo-ui.component";
|
|
3
|
-
export declare class OctoUiModule {
|
|
4
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<OctoUiModule, never>;
|
|
5
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<OctoUiModule, [typeof i1.OctoUiComponent], never, [typeof i1.OctoUiComponent]>;
|
|
6
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<OctoUiModule>;
|
|
7
|
-
}
|