@elderbyte/ngx-starter 15.7.0 → 15.7.2
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/common/http/upload/file-upload-client.mjs +1 -1
- package/esm2020/lib/components/files/elder-file-drop-zone.directive.mjs +2 -2
- package/esm2020/lib/components/files/elder-file-select.directive.mjs +36 -13
- package/esm2020/lib/components/files/elder-file.module.mjs +1 -2
- package/esm2020/lib/components/files/file-select/file-select.component.mjs +2 -2
- package/esm2020/lib/components/files/file-upload/file-upload.component.mjs +8 -14
- package/esm2020/lib/components/files/listing/file-entry.mjs +58 -12
- package/esm2020/lib/components/files/listing/file-listing-rx.mjs +10 -2
- package/fesm2015/elderbyte-ngx-starter.mjs +127 -99
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +127 -99
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/http/upload/file-upload-client.d.ts +2 -2
- package/lib/components/files/elder-file-select.directive.d.ts +13 -4
- package/lib/components/files/elder-file.module.d.ts +0 -1
- package/lib/components/files/file-select/file-select.component.d.ts +5 -3
- package/lib/components/files/file-upload/file-upload.component.d.ts +3 -9
- package/lib/components/files/listing/file-entry.d.ts +37 -8
- package/lib/components/files/listing/file-listing-rx.d.ts +1 -0
- package/package.json +1 -1
- package/esm2020/lib/components/files/file-proxy.mjs +0 -41
- package/lib/components/files/file-proxy.d.ts +0 -21
|
@@ -31,7 +31,7 @@ export class FileListingRx {
|
|
|
31
31
|
observableFile(fileEntry, parent) {
|
|
32
32
|
return new Observable(observer => {
|
|
33
33
|
fileEntry.file(file => {
|
|
34
|
-
observer.next(
|
|
34
|
+
observer.next(FileEntry.relativeFile(file, this.trimStaringSlash(parent?.fullPath)));
|
|
35
35
|
observer.complete();
|
|
36
36
|
}, err => {
|
|
37
37
|
observer.error(err);
|
|
@@ -39,6 +39,14 @@ export class FileListingRx {
|
|
|
39
39
|
});
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
|
+
trimStaringSlash(path) {
|
|
43
|
+
if (path) {
|
|
44
|
+
if (path.startsWith('/')) {
|
|
45
|
+
path = path.substring(1);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return path;
|
|
49
|
+
}
|
|
42
50
|
readEntries(directoryEntry) {
|
|
43
51
|
return new Observable(observer => {
|
|
44
52
|
this.consumeReaderToCompletion(observer, directoryEntry.createReader());
|
|
@@ -60,4 +68,4 @@ export class FileListingRx {
|
|
|
60
68
|
}
|
|
61
69
|
}
|
|
62
70
|
FileListingRx.INSTANCE = new FileListingRx();
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1saXN0aW5nLXJ4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9saXN0aW5nL2ZpbGUtbGlzdGluZy1yeC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQWtCLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN0RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuQyxNQUFNLE9BQU8sYUFBYTtJQUl4Qjs7OztnRkFJNEU7SUFFckUsa0JBQWtCLENBQ3ZCLEtBQXNCO1FBRXRCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLHVCQUF1QixDQUM3QixLQUFzQixFQUN0QixNQUFnQztRQUVoQyxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUU7WUFDckIsTUFBTSxjQUFjLEdBQUcsS0FBaUMsQ0FBQztZQUN6RCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUMxQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQ3JCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQzFFLENBQUMsRUFDRixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FDM0IsQ0FBQztTQUNIO2FBQU0sSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3ZCLE1BQU0sU0FBUyxHQUFHLEtBQTRCLENBQUM7WUFDL0MsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQ2hELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDcEIsQ0FBQztTQUNIO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVPLGNBQWMsQ0FDcEIsU0FBOEIsRUFDOUIsTUFBdUM7UUFFdkMsT0FBTyxJQUFJLFVBQVUsQ0FDbkIsUUFBUSxDQUFDLEVBQUU7WUFDVCxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNwQixRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNyRixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO2dCQUNQLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3BCLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLGdCQUFnQixDQUFDLElBQW1CO1FBQzFDLElBQUksSUFBSSxFQUFFO1lBQ1IsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUN4QixJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMxQjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sV0FBVyxDQUNqQixjQUF3QztRQUV4QyxPQUFPLElBQUksVUFBVSxDQUNuQixRQUFRLENBQUMsRUFBRTtZQUNULElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDMUUsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRU8seUJBQXlCLENBQy9CLFFBQXVDLEVBQ3ZDLGVBQTBDO1FBRTFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDcEMsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2pDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUUsZUFBZSxDQUFDLENBQUM7YUFDM0Q7aUJBQU07Z0JBQ0wsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQ3JCO1FBQ0gsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQ1AsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwQixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTdGc0Isc0JBQVEsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFTVBUWSwgbWVyZ2VNYXAsIE9ic2VydmFibGUsIG9mLCBTdWJzY3JpYmVyLCB6aXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtGaWxlRW50cnl9IGZyb20gJy4vZmlsZS1lbnRyeSc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY2xhc3MgRmlsZUxpc3RpbmdSeCB7XG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBJTlNUQU5DRSA9IG5ldyBGaWxlTGlzdGluZ1J4KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGxpc3RGaWxlc1JlY3Vyc2l2ZShcbiAgICBlbnRyeTogRmlsZVN5c3RlbUVudHJ5XG4gICk6IE9ic2VydmFibGU8RmlsZUVudHJ5W10+IHtcbiAgICByZXR1cm4gdGhpcy5saXN0RmlsZXNSZWN1cnNpdmVBc3luYyhlbnRyeSwgbnVsbCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGxpc3RGaWxlc1JlY3Vyc2l2ZUFzeW5jKFxuICAgIGVudHJ5OiBGaWxlU3lzdGVtRW50cnksXG4gICAgcGFyZW50OiBGaWxlU3lzdGVtRGlyZWN0b3J5RW50cnlcbiAgKTogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT4ge1xuICAgIGlmIChlbnRyeS5pc0RpcmVjdG9yeSkge1xuICAgICAgY29uc3QgZGlyZWN0b3J5RW50cnkgPSBlbnRyeSBhcyBGaWxlU3lzdGVtRGlyZWN0b3J5RW50cnk7XG4gICAgICByZXR1cm4gdGhpcy5yZWFkRW50cmllcyhkaXJlY3RvcnlFbnRyeSkucGlwZShcbiAgICAgICAgbWVyZ2VNYXAoZW50cmllcyA9PiB6aXAoXG4gICAgICAgICAgZW50cmllcy5tYXAoZW50cnkgPT4gdGhpcy5saXN0RmlsZXNSZWN1cnNpdmVBc3luYyhlbnRyeSwgZGlyZWN0b3J5RW50cnkpKVxuICAgICAgICApKSxcbiAgICAgICAgbWFwKGZpbGVzID0+IGZpbGVzLmZsYXQoKSksXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoZW50cnkuaXNGaWxlKSB7XG4gICAgICBjb25zdCBmaWxlRW50cnkgPSBlbnRyeSBhcyBGaWxlU3lzdGVtRmlsZUVudHJ5O1xuICAgICAgcmV0dXJuIHRoaXMub2JzZXJ2YWJsZUZpbGUoZmlsZUVudHJ5LCBwYXJlbnQpLnBpcGUoXG4gICAgICAgIG1hcChmaWxlID0+IFtmaWxlXSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBFTVBUWTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmFibGVGaWxlKFxuICAgIGZpbGVFbnRyeTogRmlsZVN5c3RlbUZpbGVFbnRyeSxcbiAgICBwYXJlbnQ6IEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeSB8IG51bGxcbiAgKTogT2JzZXJ2YWJsZTxGaWxlRW50cnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8RmlsZUVudHJ5PihcbiAgICAgIG9ic2VydmVyID0+IHtcbiAgICAgICAgZmlsZUVudHJ5LmZpbGUoZmlsZSA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIubmV4dChGaWxlRW50cnkucmVsYXRpdmVGaWxlKGZpbGUsIHRoaXMudHJpbVN0YXJpbmdTbGFzaChwYXJlbnQ/LmZ1bGxQYXRoKSkpO1xuICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoZXJyKTtcbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSB0cmltU3RhcmluZ1NsYXNoKHBhdGg6IHN0cmluZyB8IG51bGwpOiBzdHJpbmcge1xuICAgIGlmIChwYXRoKSB7XG4gICAgICBpZiAocGF0aC5zdGFydHNXaXRoKCcvJykpIHtcbiAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKDEpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcGF0aDtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZEVudHJpZXMoXG4gICAgZGlyZWN0b3J5RW50cnk6IEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeVxuICApOiBPYnNlcnZhYmxlPEZpbGVTeXN0ZW1FbnRyeVtdPiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPEZpbGVTeXN0ZW1FbnRyeVtdPihcbiAgICAgIG9ic2VydmVyID0+IHtcbiAgICAgICAgdGhpcy5jb25zdW1lUmVhZGVyVG9Db21wbGV0aW9uKG9ic2VydmVyLCBkaXJlY3RvcnlFbnRyeS5jcmVhdGVSZWFkZXIoKSk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY29uc3VtZVJlYWRlclRvQ29tcGxldGlvbihcbiAgICBvYnNlcnZlcjogU3Vic2NyaWJlcjxGaWxlU3lzdGVtRW50cnlbXT4sXG4gICAgZGlyZWN0b3J5UmVhZGVyOiBGaWxlU3lzdGVtRGlyZWN0b3J5UmVhZGVyXG4gICk6IHZvaWQge1xuICAgIGRpcmVjdG9yeVJlYWRlci5yZWFkRW50cmllcyhlbnRyaWVzID0+IHtcbiAgICAgIGlmIChlbnRyaWVzICYmIGVudHJpZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBvYnNlcnZlci5uZXh0KGVudHJpZXMpO1xuICAgICAgICB0aGlzLmNvbnN1bWVSZWFkZXJUb0NvbXBsZXRpb24ob2JzZXJ2ZXIsIGRpcmVjdG9yeVJlYWRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgfVxuICAgIH0sIGVyciA9PiB7XG4gICAgICBvYnNlcnZlci5lcnJvcihlcnIpO1xuICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICB9KTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -9603,6 +9603,82 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
9603
9603
|
}]
|
|
9604
9604
|
}] });
|
|
9605
9605
|
|
|
9606
|
+
/**
|
|
9607
|
+
* Represents a file and the relative path where the user has selected it.
|
|
9608
|
+
* This is useful if the user has selected a folder and files
|
|
9609
|
+
* are listed recursively.
|
|
9610
|
+
*/
|
|
9611
|
+
class FileEntry {
|
|
9612
|
+
/***************************************************************************
|
|
9613
|
+
* *
|
|
9614
|
+
* Constructor *
|
|
9615
|
+
* *
|
|
9616
|
+
**************************************************************************/
|
|
9617
|
+
constructor(file,
|
|
9618
|
+
/**
|
|
9619
|
+
* Contains the relative path from the selected folder
|
|
9620
|
+
* to this file. Only relevant if the user has selected a folder.
|
|
9621
|
+
*/
|
|
9622
|
+
relativeParent) {
|
|
9623
|
+
this.file = file;
|
|
9624
|
+
this.relativeParent = relativeParent;
|
|
9625
|
+
this.relativePath = FileEntry.buildRelativePath(relativeParent, file);
|
|
9626
|
+
}
|
|
9627
|
+
/**
|
|
9628
|
+
* Creates a file Entry without an explicit relative parent.
|
|
9629
|
+
*
|
|
9630
|
+
* However, depending how the file was selected, some browsers
|
|
9631
|
+
* encode the relative parent path in the property 'webkitRelativePath'
|
|
9632
|
+
* which is also supported by this method.
|
|
9633
|
+
*/
|
|
9634
|
+
static ofFile(file) {
|
|
9635
|
+
let relativeParent = null;
|
|
9636
|
+
if (file.webkitRelativePath) {
|
|
9637
|
+
if (file.webkitRelativePath.endsWith(file.name)) {
|
|
9638
|
+
var nameStart = file.webkitRelativePath.length - file.name.length;
|
|
9639
|
+
relativeParent = file.webkitRelativePath.substring(0, nameStart);
|
|
9640
|
+
}
|
|
9641
|
+
else {
|
|
9642
|
+
relativeParent = file.webkitRelativePath;
|
|
9643
|
+
}
|
|
9644
|
+
}
|
|
9645
|
+
return FileEntry.relativeFile(file, relativeParent);
|
|
9646
|
+
}
|
|
9647
|
+
/**
|
|
9648
|
+
* Creates a file Entry with a relative parent path
|
|
9649
|
+
*/
|
|
9650
|
+
static relativeFile(file, relativeParent) {
|
|
9651
|
+
if (relativeParent && relativeParent.endsWith('/')) {
|
|
9652
|
+
relativeParent = relativeParent.substring(0, relativeParent.length - 1);
|
|
9653
|
+
}
|
|
9654
|
+
return new FileEntry(file, relativeParent);
|
|
9655
|
+
}
|
|
9656
|
+
static toFileMap(entries) {
|
|
9657
|
+
const map = new Map();
|
|
9658
|
+
entries.forEach(e => map.set(e.file, e));
|
|
9659
|
+
return map;
|
|
9660
|
+
}
|
|
9661
|
+
static toFileArray(entries) {
|
|
9662
|
+
return entries.map(e => e.file);
|
|
9663
|
+
}
|
|
9664
|
+
/***************************************************************************
|
|
9665
|
+
* *
|
|
9666
|
+
* Private methods *
|
|
9667
|
+
* *
|
|
9668
|
+
**************************************************************************/
|
|
9669
|
+
/**
|
|
9670
|
+
* Returns a string which specifies the file's path relative to the directory selected by the user.
|
|
9671
|
+
*/
|
|
9672
|
+
static buildRelativePath(relativeParent, file) {
|
|
9673
|
+
if (relativeParent != null) {
|
|
9674
|
+
return relativeParent + '/' + file.name;
|
|
9675
|
+
}
|
|
9676
|
+
else {
|
|
9677
|
+
return file.name;
|
|
9678
|
+
}
|
|
9679
|
+
}
|
|
9680
|
+
}
|
|
9681
|
+
|
|
9606
9682
|
class ElderFileSelectDirective {
|
|
9607
9683
|
/***************************************************************************
|
|
9608
9684
|
* *
|
|
@@ -9644,11 +9720,23 @@ class ElderFileSelectDirective {
|
|
|
9644
9720
|
}
|
|
9645
9721
|
}
|
|
9646
9722
|
set elderFileSelectMultiple(value) {
|
|
9647
|
-
this._multiple = value;
|
|
9723
|
+
this._multiple = coerceBooleanProperty(value);
|
|
9648
9724
|
if (this._fileInput) {
|
|
9649
9725
|
this.renderer.setProperty(this._fileInput, 'multiple', value);
|
|
9650
9726
|
}
|
|
9651
9727
|
}
|
|
9728
|
+
/**
|
|
9729
|
+
* Allow the user to select a directory. All files that are recursively contained are selected.
|
|
9730
|
+
* However, the user will no longer be able to select individual files if this is enabled.
|
|
9731
|
+
* @param value
|
|
9732
|
+
*/
|
|
9733
|
+
set elderFileSelectDirectory(value) {
|
|
9734
|
+
this._directory = coerceBooleanProperty(value);
|
|
9735
|
+
if (this._fileInput) {
|
|
9736
|
+
this.renderer.setAttribute(this._fileInput, 'webkitdirectory', 'true');
|
|
9737
|
+
this.renderer.setAttribute(this._fileInput, 'directory', 'true');
|
|
9738
|
+
}
|
|
9739
|
+
}
|
|
9652
9740
|
/***************************************************************************
|
|
9653
9741
|
* *
|
|
9654
9742
|
* Public API *
|
|
@@ -9684,6 +9772,10 @@ class ElderFileSelectDirective {
|
|
|
9684
9772
|
if (this._multiple) {
|
|
9685
9773
|
this.renderer.setProperty(this._fileInput, 'multiple', this._multiple);
|
|
9686
9774
|
}
|
|
9775
|
+
if (this._directory) {
|
|
9776
|
+
this.renderer.setAttribute(this._fileInput, 'webkitdirectory', 'true');
|
|
9777
|
+
this.renderer.setAttribute(this._fileInput, 'directory', 'true');
|
|
9778
|
+
}
|
|
9687
9779
|
this._unlisten = this.renderer.listen(this._fileInput, 'change', event => this.fileInputChanged(event));
|
|
9688
9780
|
}
|
|
9689
9781
|
removeFileSelect() {
|
|
@@ -9698,33 +9790,36 @@ class ElderFileSelectDirective {
|
|
|
9698
9790
|
}
|
|
9699
9791
|
fileInputChanged(event) {
|
|
9700
9792
|
const fileList = this._fileInput.files;
|
|
9701
|
-
this.
|
|
9793
|
+
const files = this.toFileEntries(fileList);
|
|
9794
|
+
this.logger.debug('fileInputChanged, files:', files);
|
|
9795
|
+
this.emitFileList(files);
|
|
9702
9796
|
this.clearFileList();
|
|
9703
9797
|
}
|
|
9704
9798
|
clearFileList() {
|
|
9705
9799
|
// not nice but works
|
|
9706
9800
|
this._fileInput.value = null;
|
|
9707
9801
|
}
|
|
9708
|
-
emitFileList(
|
|
9709
|
-
if (
|
|
9710
|
-
this.elderFileSelectChange.next(
|
|
9711
|
-
|
|
9712
|
-
|
|
9713
|
-
|
|
9802
|
+
emitFileList(files) {
|
|
9803
|
+
if (files.length > 0) {
|
|
9804
|
+
this.elderFileSelectChange.next(files);
|
|
9805
|
+
this.elderSingleFileSelectChange.emit(files[0].file);
|
|
9806
|
+
}
|
|
9807
|
+
else {
|
|
9808
|
+
this.logger.warn('User did not select any File or the Folder was empty.');
|
|
9714
9809
|
}
|
|
9715
9810
|
}
|
|
9716
|
-
|
|
9717
|
-
const files =
|
|
9811
|
+
toFileEntries(fileList) {
|
|
9812
|
+
const files = [];
|
|
9718
9813
|
for (const key in fileList) {
|
|
9719
9814
|
if (!isNaN(parseInt(key, 0))) {
|
|
9720
|
-
files.
|
|
9815
|
+
files.push(FileEntry.ofFile(fileList[key]));
|
|
9721
9816
|
}
|
|
9722
9817
|
}
|
|
9723
9818
|
return files;
|
|
9724
9819
|
}
|
|
9725
9820
|
}
|
|
9726
9821
|
ElderFileSelectDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileSelectDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
9727
|
-
ElderFileSelectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileSelectDirective, selector: "[elderFileSelect]", inputs: { elderFileSelect: "elderFileSelect", elderFileSelectMultiple: "elderFileSelectMultiple" }, outputs: { elderFileSelectChange: "elderFileSelectChange", elderSingleFileSelectChange: "elderSingleFileSelectChange" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 });
|
|
9822
|
+
ElderFileSelectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileSelectDirective, selector: "[elderFileSelect]", inputs: { elderFileSelect: "elderFileSelect", elderFileSelectMultiple: "elderFileSelectMultiple", elderFileSelectDirectory: "elderFileSelectDirectory" }, outputs: { elderFileSelectChange: "elderFileSelectChange", elderSingleFileSelectChange: "elderSingleFileSelectChange" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 });
|
|
9728
9823
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileSelectDirective, decorators: [{
|
|
9729
9824
|
type: Directive,
|
|
9730
9825
|
args: [{
|
|
@@ -9738,6 +9833,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
9738
9833
|
type: Input
|
|
9739
9834
|
}], elderFileSelectMultiple: [{
|
|
9740
9835
|
type: Input
|
|
9836
|
+
}], elderFileSelectDirectory: [{
|
|
9837
|
+
type: Input
|
|
9741
9838
|
}], onClick: [{
|
|
9742
9839
|
type: HostListener,
|
|
9743
9840
|
args: ['click', ['$event']]
|
|
@@ -9777,7 +9874,7 @@ class ElderFileSelectComponent {
|
|
|
9777
9874
|
}
|
|
9778
9875
|
}
|
|
9779
9876
|
ElderFileSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9780
|
-
ElderFileSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileSelectComponent, selector: "elder-file-select", inputs: { multiple: "multiple", accept: "accept", icon: "icon", color: "color" }, outputs: { filesChange: "filesChange" }, ngImport: i0, template: "\n\n<button mat-icon-button type=\"button\"\n [elderFileSelect]=\"accept\"\n [elderFileSelectMultiple]=\"multiple\"\n (elderFileSelectChange)=\"fileInputChanged($event)\"\n>\n <mat-icon [color]=\"color\">{{icon}}</mat-icon>\n</button>\n", styles: [""], dependencies: [{ kind: "component", type: i5$2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: ElderFileSelectDirective, selector: "[elderFileSelect]", inputs: ["elderFileSelect", "elderFileSelectMultiple"], outputs: ["elderFileSelectChange", "elderSingleFileSelectChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
9877
|
+
ElderFileSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileSelectComponent, selector: "elder-file-select", inputs: { multiple: "multiple", accept: "accept", icon: "icon", color: "color" }, outputs: { filesChange: "filesChange" }, ngImport: i0, template: "\n\n<button mat-icon-button type=\"button\"\n [elderFileSelect]=\"accept\"\n [elderFileSelectMultiple]=\"multiple\"\n (elderFileSelectChange)=\"fileInputChanged($event)\"\n>\n <mat-icon [color]=\"color\">{{icon}}</mat-icon>\n</button>\n", styles: [""], dependencies: [{ kind: "component", type: i5$2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: ElderFileSelectDirective, selector: "[elderFileSelect]", inputs: ["elderFileSelect", "elderFileSelectMultiple", "elderFileSelectDirectory"], outputs: ["elderFileSelectChange", "elderSingleFileSelectChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
9781
9878
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileSelectComponent, decorators: [{
|
|
9782
9879
|
type: Component,
|
|
9783
9880
|
args: [{ selector: 'elder-file-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n\n<button mat-icon-button type=\"button\"\n [elderFileSelect]=\"accept\"\n [elderFileSelectMultiple]=\"multiple\"\n (elderFileSelectChange)=\"fileInputChanged($event)\"\n>\n <mat-icon [color]=\"color\">{{icon}}</mat-icon>\n</button>\n" }]
|
|
@@ -9805,17 +9902,10 @@ class ElderFileUploadComponent {
|
|
|
9805
9902
|
* Fields *
|
|
9806
9903
|
* *
|
|
9807
9904
|
**************************************************************************/
|
|
9808
|
-
this.files =
|
|
9905
|
+
this.files = [];
|
|
9809
9906
|
this.multiple = false;
|
|
9810
9907
|
this.accept = undefined;
|
|
9811
9908
|
}
|
|
9812
|
-
/***************************************************************************
|
|
9813
|
-
* *
|
|
9814
|
-
* Life Cycle *
|
|
9815
|
-
* *
|
|
9816
|
-
**************************************************************************/
|
|
9817
|
-
ngOnInit() {
|
|
9818
|
-
}
|
|
9819
9909
|
/***************************************************************************
|
|
9820
9910
|
* *
|
|
9821
9911
|
* Public API *
|
|
@@ -9835,16 +9925,16 @@ class ElderFileUploadComponent {
|
|
|
9835
9925
|
* Private methods *
|
|
9836
9926
|
* *
|
|
9837
9927
|
**************************************************************************/
|
|
9838
|
-
uploadAllFiles(
|
|
9839
|
-
this.uploadProgress = this.uploadClient.uploadFiles(
|
|
9840
|
-
return forkJoin(this.uploadProgress.values());
|
|
9928
|
+
uploadAllFiles(entries) {
|
|
9929
|
+
this.uploadProgress = this.uploadClient.uploadFiles(FileEntry.toFileArray(entries));
|
|
9930
|
+
return forkJoin(Array.from(this.uploadProgress.values()));
|
|
9841
9931
|
}
|
|
9842
9932
|
}
|
|
9843
9933
|
ElderFileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9844
|
-
ElderFileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileUploadComponent, selector: "elder-file-upload", inputs: { files: "files", multiple: "multiple", accept: "accept", uploadClient: "uploadClient" }, ngImport: i0, template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.
|
|
9934
|
+
ElderFileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileUploadComponent, selector: "elder-file-upload", inputs: { files: "files", multiple: "multiple", accept: "accept", uploadClient: "uploadClient" }, ngImport: i0, template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.length === 0\">\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{files.length}})</h2>\n <mat-list-item *ngFor=\"let fileEntry of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{fileEntry.relativePath}}</h4>\n <p mat-line> {{fileEntry.file.size | bytes}} - {{fileEntry.file.lastModified | timeAgo}}</p>\n\n <mat-progress-bar *ngIf=\"(transferOf(fileEntry.file)?.state$ | async) as state\"\n [color]=\"(state.hasFailed ? 'warn' : undefined)\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\">\n </mat-progress-bar>\n\n </mat-list-item>\n </mat-list>\n\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$2.MatListSubheaderCssMatStyler, selector: "[mat-subheader], [matSubheader]" }, { kind: "component", type: i5$2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: ElderFileSelectComponent, selector: "elder-file-select", inputs: ["multiple", "accept", "icon", "color"], outputs: ["filesChange"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: BytesPipe, name: "bytes" }, { kind: "pipe", type: TimeAgoPipe, name: "timeAgo" }] });
|
|
9845
9935
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileUploadComponent, decorators: [{
|
|
9846
9936
|
type: Component,
|
|
9847
|
-
args: [{ selector: 'elder-file-upload', template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.
|
|
9937
|
+
args: [{ selector: 'elder-file-upload', template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.length === 0\">\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{files.length}})</h2>\n <mat-list-item *ngFor=\"let fileEntry of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{fileEntry.relativePath}}</h4>\n <p mat-line> {{fileEntry.file.size | bytes}} - {{fileEntry.file.lastModified | timeAgo}}</p>\n\n <mat-progress-bar *ngIf=\"(transferOf(fileEntry.file)?.state$ | async) as state\"\n [color]=\"(state.hasFailed ? 'warn' : undefined)\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\">\n </mat-progress-bar>\n\n </mat-list-item>\n </mat-list>\n\n</div>\n" }]
|
|
9848
9938
|
}], ctorParameters: function () { return []; }, propDecorators: { files: [{
|
|
9849
9939
|
type: Input
|
|
9850
9940
|
}], multiple: [{
|
|
@@ -9855,76 +9945,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
9855
9945
|
type: Input
|
|
9856
9946
|
}] } });
|
|
9857
9947
|
|
|
9858
|
-
/**
|
|
9859
|
-
* Proxy the File API to an inner file instance,
|
|
9860
|
-
* allowing subclasses of the file proxy
|
|
9861
|
-
* to easily override selected behaviour.
|
|
9862
|
-
*/
|
|
9863
|
-
class FileProxy {
|
|
9864
|
-
constructor(inner) {
|
|
9865
|
-
this.inner = inner;
|
|
9866
|
-
}
|
|
9867
|
-
get lastModified() {
|
|
9868
|
-
return this.inner.lastModified;
|
|
9869
|
-
}
|
|
9870
|
-
get name() {
|
|
9871
|
-
return this.inner.name;
|
|
9872
|
-
}
|
|
9873
|
-
get size() {
|
|
9874
|
-
return this.inner.size;
|
|
9875
|
-
}
|
|
9876
|
-
get type() {
|
|
9877
|
-
return this.inner.type;
|
|
9878
|
-
}
|
|
9879
|
-
/**
|
|
9880
|
-
* Returns a string which specifies the file's path relative to the directory selected by the user
|
|
9881
|
-
*/
|
|
9882
|
-
get webkitRelativePath() {
|
|
9883
|
-
return this.inner.webkitRelativePath;
|
|
9884
|
-
}
|
|
9885
|
-
arrayBuffer() {
|
|
9886
|
-
return this.inner.arrayBuffer();
|
|
9887
|
-
}
|
|
9888
|
-
slice(start, end, contentType) {
|
|
9889
|
-
return this.inner.slice(start, end, contentType);
|
|
9890
|
-
}
|
|
9891
|
-
stream() {
|
|
9892
|
-
return this.inner.stream();
|
|
9893
|
-
}
|
|
9894
|
-
text() {
|
|
9895
|
-
return this.inner.text();
|
|
9896
|
-
}
|
|
9897
|
-
}
|
|
9898
|
-
|
|
9899
|
-
class FileEntry extends FileProxy {
|
|
9900
|
-
constructor(file,
|
|
9901
|
-
/**
|
|
9902
|
-
* Contains the relative path from the selected folder
|
|
9903
|
-
* to this file. Only relevant if the user has selected a folder.
|
|
9904
|
-
*/
|
|
9905
|
-
relativeParent) {
|
|
9906
|
-
super(file);
|
|
9907
|
-
this.relativeParent = relativeParent;
|
|
9908
|
-
}
|
|
9909
|
-
/**
|
|
9910
|
-
* Returns a string which specifies the file's path relative to the directory selected by the user.
|
|
9911
|
-
*/
|
|
9912
|
-
get relativePath() {
|
|
9913
|
-
if (this.relativeParent != null) {
|
|
9914
|
-
return this.relativeParent + '/' + this.name;
|
|
9915
|
-
}
|
|
9916
|
-
else {
|
|
9917
|
-
return this.name;
|
|
9918
|
-
}
|
|
9919
|
-
}
|
|
9920
|
-
/**
|
|
9921
|
-
* Returns a string which specifies the file's path relative to the directory selected by the user.
|
|
9922
|
-
*/
|
|
9923
|
-
get webkitRelativePath() {
|
|
9924
|
-
return this.relativePath;
|
|
9925
|
-
}
|
|
9926
|
-
}
|
|
9927
|
-
|
|
9928
9948
|
class FileListingRx {
|
|
9929
9949
|
/***************************************************************************
|
|
9930
9950
|
* *
|
|
@@ -9955,7 +9975,7 @@ class FileListingRx {
|
|
|
9955
9975
|
observableFile(fileEntry, parent) {
|
|
9956
9976
|
return new Observable(observer => {
|
|
9957
9977
|
fileEntry.file(file => {
|
|
9958
|
-
observer.next(
|
|
9978
|
+
observer.next(FileEntry.relativeFile(file, this.trimStaringSlash(parent === null || parent === void 0 ? void 0 : parent.fullPath)));
|
|
9959
9979
|
observer.complete();
|
|
9960
9980
|
}, err => {
|
|
9961
9981
|
observer.error(err);
|
|
@@ -9963,6 +9983,14 @@ class FileListingRx {
|
|
|
9963
9983
|
});
|
|
9964
9984
|
});
|
|
9965
9985
|
}
|
|
9986
|
+
trimStaringSlash(path) {
|
|
9987
|
+
if (path) {
|
|
9988
|
+
if (path.startsWith('/')) {
|
|
9989
|
+
path = path.substring(1);
|
|
9990
|
+
}
|
|
9991
|
+
}
|
|
9992
|
+
return path;
|
|
9993
|
+
}
|
|
9966
9994
|
readEntries(directoryEntry) {
|
|
9967
9995
|
return new Observable(observer => {
|
|
9968
9996
|
this.consumeReaderToCompletion(observer, directoryEntry.createReader());
|
|
@@ -10057,7 +10085,7 @@ class ElderFileDropZoneDirective {
|
|
|
10057
10085
|
obs.push(FileListingRx.INSTANCE.listFilesRecursive(entry));
|
|
10058
10086
|
}
|
|
10059
10087
|
else {
|
|
10060
|
-
obs.push(of([
|
|
10088
|
+
obs.push(of([FileEntry.ofFile(transferItem.getAsFile())]));
|
|
10061
10089
|
}
|
|
10062
10090
|
}
|
|
10063
10091
|
return zip(obs).pipe(map(files => files.flat()));
|
|
@@ -29177,5 +29205,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
29177
29205
|
* Generated bundle index. Do not edit.
|
|
29178
29206
|
*/
|
|
29179
29207
|
|
|
29180
|
-
export { AuditedEntity, AutoStartSpec, BlobUrl, BytesFormat, BytesPerSecondFormat, BytesPipe, CardDropEvent, CardOrganizerData, CardStack, CollectionUtil, ComparatorBuilder, ConfirmDialogConfig, ContinuableListing, CsvColumnSpec, CsvSerializer, CsvSpec, CsvStreamExporter, CsvStreamExporterBuilder, CsvStreamExporterBuilderService, Currency, CurrencyCode, CurrencyUnit, CurrencyUnitRegistry, CustomDateAdapter, DataContextActivePage, DataContextAutoStarter, DataContextBase, DataContextBuilder, DataContextContinuableBase, DataContextContinuablePaged, DataContextContinuableToken, DataContextLifeCycleBinding, DataContextSelectionDirective, DataContextSimple, DataContextSnapshot, DataContextSourceEventBinding, DataContextStateIndicatorComponent, DataContextStatus, DataSourceAdapter, DataSourceBase, DataSourceChangeEvent, DataSourceChangeType, DataSourceProcessor, DataTransferFactory, DataTransferProgress, DataTransferProgressAggregate, DataTransferState, DataTransferStatus, DataViewIframeAdapterDirective, DataViewIframeComponent, DataViewMessage, DataViewOptionsProviderBinding, DataViewSelection, DataViewSelectionInit, DateUtil, DelegateContinuableDataSource, DelegateDataSource, DelegateListDataSource, DelegatePagedDataSource, Dimensions, DrawerOutletBinding, DurationBucket, DurationFormat, ELDER_DATA_VIEW, ELDER_SELECT_BASE, ElderAccessDeniedComponent, ElderAccessDeniedModule, ElderAppHeaderComponent, ElderAuditModule, ElderAuditedEntityComponent, ElderAutoSelectFirstDirective, ElderAutocompleteComponent, ElderAutocompleteDirective, ElderAutocompleteManyDirective, ElderAutocompleteModule, ElderBlobViewerComponent, ElderBreadCrumbsComponent, ElderBreadCrumbsModule, ElderButtonGroupComponent, ElderButtonGroupModule, ElderCardComponent, ElderCardContentDirective, ElderCardHeaderActionsDirective, ElderCardHeaderComponent, ElderCardModule, ElderCardOrganizerComponent, ElderCardOrganizerModule, ElderCardPanelComponent, ElderCardStackComponent, ElderCardSubtitleDirective, ElderCardTitleDirective, ElderCheckboxState, ElderChipLabelDirective, ElderChipListSelectComponent, ElderChipListSelectModule, ElderChipsModule, ElderClearSelectDirective, ElderClipboardPutDirective, ElderClipboardService, ElderConfirmDialogComponent, ElderConnectivityModule, ElderConnectivityService, ElderContainersModule, ElderCsvExportBtnComponent, ElderCsvModule, ElderCurrencyModule, ElderCurrencyPipe, ElderDataCommonModule, ElderDataToolbarComponent, ElderDataTransferModule, ElderDataTransferService, ElderDataViewBaseComponent, ElderDataViewOptions, ElderDataViewOptionsProvider, ElderDateSwitcherComponent, ElderDateTimeInputComponent, ElderDelayedFocusDirective, ElderDialogConfig, ElderDialogModule, ElderDialogPanelComponent, ElderDialogService, ElderDimensionsInputComponent, ElderDurationInputComponent, ElderEntityValueAccessorUtil, ElderEnumTranslationService, ElderErrorModule, ElderEventSourceService, ElderExceptionDetailComponent, ElderExpandToggleButtonComponent, ElderExpandToggleButtonModule, ElderFileDropZoneDirective, ElderFileModule, ElderFileSelectComponent, ElderFileSelectDirective, ElderFileUploadComponent, ElderFormFieldControlBase, ElderFormFieldDenseDirective, ElderFormFieldLabelDirective, ElderFormFieldNoHintDirective, ElderFormFieldNoSpinnerDirective, ElderFormsDirectivesModule, ElderFormsModule, ElderFromFieldBase, ElderFromFieldEntityBase, ElderFromFieldMultiEntityBase, ElderGlobalSearchComponent, ElderGlobalSearchModule, ElderGlobalSearchService, ElderGridComponent, ElderGridModule, ElderGridTileDirective, ElderGridToolbarDirective, ElderHeaderComponent, ElderHeaderModule, ElderHttpClient, ElderI18nEntitiesModule, ElderIFrameModule, ElderInfiniteAutocompleteDirective, ElderInfiniteScrollDirective, ElderInfiniteScrollLegacyDirective, ElderInfiniteScrollModule, ElderInputPatternDirective, ElderIntervalInputComponent, ElderKeyEventDirective, ElderLabelInputComponent, ElderLabelsModule, ElderLanguageConfig, ElderLanguageInterceptor, ElderLanguageModule, ElderLanguageService, ElderLanguageSwitcherComponent, ElderLocalDateInputComponent, ElderLocalTimeInputComponent, ElderLocalesDeChModule, ElderLocalizedInputComponent, ElderLocalizedInputDialogComponent, ElderLocalizedInputDialogService, ElderLocalizedInputTableComponent, ElderLocalizedTextColumnDirective, ElderLocalizedTextsDirective, ElderMaxValidator, ElderMeasuresModule, ElderMinValidator, ElderMultiEntityValueAccessorUtil, ElderMultiSelectBase, ElderMultiSelectChipsComponent, ElderMultiSelectFormField, ElderMultipleOfUtil, ElderMultipleOfValidator, ElderNavGroupComponent, ElderNavLinkComponent, ElderNavListComponent, ElderNavModule, ElderNextFocusableDirective, ElderNumberCellDirective, ElderOfflineIndicatorComponent, ElderOverlayComponent, ElderOverlayModule, ElderOverlayOriginDirective, ElderOverlayTriggerDirective, ElderPaddingDirective, ElderPanelComponent, ElderPanelModule, ElderPeriodInputComponent, ElderPipesModule, ElderPlugParentFormDirective, ElderProgressBarComponent, ElderProgressBarModule, ElderQuantityFormFieldComponent, ElderQuantityInputControlComponent, ElderQuantityModule, ElderQuantityPipe, ElderQuantityRangeValidator, ElderQuantityService, ElderQuantityTransformPipe, ElderQuestionDialogComponent, ElderRepeatPipe, ElderRepeatPipeLegacy, ElderRequiredDimensionsValidator, ElderRequiredIgnoreZeroValidator, ElderRequiredQuantityValidator, ElderRoundPipe, ElderRouteOutletDrawerService, ElderRouterOutletService, ElderRouterService, ElderSafeUrlPipe, ElderScrollContainerComponent, ElderScrollbarDirective, ElderScrollbarModule, ElderSearchBoxComponent, ElderSearchContextDirective, ElderSearchInputDirective, ElderSearchModule, ElderSearchPanelComponent, ElderSelectBase, ElderSelectChipAvatarDirective, ElderSelectChipDirective, ElderSelectComponent, ElderSelectComponentState, ElderSelectCustomInputDirective, ElderSelectFormField, ElderSelectModule, ElderSelectOnTabDirective, ElderSelectValueDirective, ElderSelectionDialogComponent, ElderSelectionDialogDirective, ElderSelectionMasterCheckboxComponent, ElderSelectionPopupTriggerAdapterDirective, ElderShellCenterDirective, ElderShellComponent, ElderShellModule, ElderShellNavigationToggleComponent, ElderShellService, ElderShellSideLeftDirective, ElderShellSideRightDirective, ElderShellSlotDirective, ElderSimpleSelectionViewComponent, ElderSimpleSelectionViewModule, ElderSingleSortComponent, ElderStackCardDirective, ElderStopEventPropagationDirective, ElderSvgViewerComponent, ElderTabDirective, ElderTabFocusTrapDirective, ElderTabGroupRoutingDirective, ElderTabModule, ElderTableActivationDirective, ElderTableComponent, ElderTableExtensionDirective, ElderTableGroup, ElderTableModel, ElderTableModelCdkTableBinding, ElderTableModelQueryGroup, ElderTableModule, ElderTableProviders, ElderTableRootDirective, ElderTableSortDirective, ElderTableToolbarDirective, ElderThemeApplierDirective, ElderThemeDirective, ElderThemeModule, ElderThemePreferenceService, ElderThemeService, ElderThemeToggleComponent, ElderTimeModule, ElderToastModule, ElderToastService, ElderTogglePanelComponent, ElderTogglePanelPrimaryDirective, ElderTogglePanelSecondaryDirective, ElderTogglePanelTriggerDirective, ElderToolbarColumnDirective, ElderToolbarComponent, ElderToolbarContentDirective, ElderToolbarModule, ElderToolbarService, ElderToolbarTitleComponent, ElderToolbarTitleService, ElderTouchedDirective, ElderTrimPipe, ElderTripleStateCheckboxDirective, ElderTruncatePipe, ElderUnitSelectDirective, ElderUnitService, ElderUrlFragment, ElderUrlFragmentModule, ElderUrlFragmentParamsService, ElderUrlFragmentSwitcherComponent, ElderValidationErrorDirective, ElderViewersModule, EntitySetPatch, ErrorUtil, ExceptionDetailCtx, FileEntry, FileListingRx, FileProxy, FileUploadClient, Filter, FilterContext, FilterUtil, FormFieldBaseComponent, HttpClientBuilder, HttpClientPristine, HttpDataTransfer, HttpDataTransferAggregateComponent, HttpDataTransferComponent, HttpDataTransferIndicatorComponent, HttpDataTransferOverviewComponent, HttpParamsBuilder, I18nBase, I18nPickAsyncPipe, I18nPickPipe, I18nText, IFrameState, IframeCloseDirective, IframeDialogComponent, IframeHostComponent, IframeService, IframeSideContentComponent, IndexedEntities, InternalRestClientConfig, Interval, IsoDurationPipe, IsoIntervalParsePipe, IsoIntervalPipe, JsonMapUtil, KafentConfig, KafentEvent, KafentEventService, KafentEventStream, KafentEventStreamDisabled, KafentEventStreamSse, KafentEventTransport, KafentModule, KafentSseEventChannel, KafentTokenProvider, KafentTokenProviderSessionStorage, KafentTopicSse, KnownElderThemes, KnownLocaleType, LocalListDataSource, LocalPagedDataSource, LocalisationPickerService, MasterSelectionState, MatTableDataContextBinding, MatTableDataContextBindingBuilder, MultiModelBaseComponent, NextNumberUtil, Objects, OnlineStatus, Page, PageRequest, Pageable, ParseUtil, Path, PathNode, PeriodBucket, PeriodDuration, PeriodFormat, ProcessIterationContext, ProcessState, PropertyPathUtil, Quantity, QueryListBinding, QuestionDialogConfig, ReactiveEventSource, ReactiveMap, RefreshingEntity, RestClient, RestClientConfig, RestClientContinuable, RestClientList, RestClientPaged, SearchQuery, SelectionModel, SelectionModelPopupDirective, Sets, SimpleLocalisationPicker, Sort, SortOption, SortUtil, SubBar, SuggestionProvider, TemplateCompositeControl, TemplatedSelectionDialogComponent, ThemeSpec, TimeAgoPipe, TimeDurationPipe, TimeUtil, ToIsoDateStringPipe, ToastType, TokenChunkRequest, ToolbarHeader, TranslatedEnumValue, TypedEventMessage, Unit, UnitDimension, UnitDimensionInfo, UnitInfo, UnitRegistry, UrlBuilder, UrlQueryParams, UuidUtil, ValueAccessorBase, ValueWrapper, ViewProviders, WeightPipe, alphaNumStringComparator, buildFormIntegrationProviders, createDataOptionsProvider, createSelectionModel, existingOrNewElderTableModel, isActivePagedDataContext, isContinuableDataContext, isContinuableDataSource, isDataContext, isDataSource, isElderEntityValueAccessor, isElderMultiEntityValueAccessor, isListDataSource, isPagedDataSource, naturalValueComparator, newElderTableModel, proxyControlContainer, registerLocale, runInZone, themeInit };
|
|
29208
|
+
export { AuditedEntity, AutoStartSpec, BlobUrl, BytesFormat, BytesPerSecondFormat, BytesPipe, CardDropEvent, CardOrganizerData, CardStack, CollectionUtil, ComparatorBuilder, ConfirmDialogConfig, ContinuableListing, CsvColumnSpec, CsvSerializer, CsvSpec, CsvStreamExporter, CsvStreamExporterBuilder, CsvStreamExporterBuilderService, Currency, CurrencyCode, CurrencyUnit, CurrencyUnitRegistry, CustomDateAdapter, DataContextActivePage, DataContextAutoStarter, DataContextBase, DataContextBuilder, DataContextContinuableBase, DataContextContinuablePaged, DataContextContinuableToken, DataContextLifeCycleBinding, DataContextSelectionDirective, DataContextSimple, DataContextSnapshot, DataContextSourceEventBinding, DataContextStateIndicatorComponent, DataContextStatus, DataSourceAdapter, DataSourceBase, DataSourceChangeEvent, DataSourceChangeType, DataSourceProcessor, DataTransferFactory, DataTransferProgress, DataTransferProgressAggregate, DataTransferState, DataTransferStatus, DataViewIframeAdapterDirective, DataViewIframeComponent, DataViewMessage, DataViewOptionsProviderBinding, DataViewSelection, DataViewSelectionInit, DateUtil, DelegateContinuableDataSource, DelegateDataSource, DelegateListDataSource, DelegatePagedDataSource, Dimensions, DrawerOutletBinding, DurationBucket, DurationFormat, ELDER_DATA_VIEW, ELDER_SELECT_BASE, ElderAccessDeniedComponent, ElderAccessDeniedModule, ElderAppHeaderComponent, ElderAuditModule, ElderAuditedEntityComponent, ElderAutoSelectFirstDirective, ElderAutocompleteComponent, ElderAutocompleteDirective, ElderAutocompleteManyDirective, ElderAutocompleteModule, ElderBlobViewerComponent, ElderBreadCrumbsComponent, ElderBreadCrumbsModule, ElderButtonGroupComponent, ElderButtonGroupModule, ElderCardComponent, ElderCardContentDirective, ElderCardHeaderActionsDirective, ElderCardHeaderComponent, ElderCardModule, ElderCardOrganizerComponent, ElderCardOrganizerModule, ElderCardPanelComponent, ElderCardStackComponent, ElderCardSubtitleDirective, ElderCardTitleDirective, ElderCheckboxState, ElderChipLabelDirective, ElderChipListSelectComponent, ElderChipListSelectModule, ElderChipsModule, ElderClearSelectDirective, ElderClipboardPutDirective, ElderClipboardService, ElderConfirmDialogComponent, ElderConnectivityModule, ElderConnectivityService, ElderContainersModule, ElderCsvExportBtnComponent, ElderCsvModule, ElderCurrencyModule, ElderCurrencyPipe, ElderDataCommonModule, ElderDataToolbarComponent, ElderDataTransferModule, ElderDataTransferService, ElderDataViewBaseComponent, ElderDataViewOptions, ElderDataViewOptionsProvider, ElderDateSwitcherComponent, ElderDateTimeInputComponent, ElderDelayedFocusDirective, ElderDialogConfig, ElderDialogModule, ElderDialogPanelComponent, ElderDialogService, ElderDimensionsInputComponent, ElderDurationInputComponent, ElderEntityValueAccessorUtil, ElderEnumTranslationService, ElderErrorModule, ElderEventSourceService, ElderExceptionDetailComponent, ElderExpandToggleButtonComponent, ElderExpandToggleButtonModule, ElderFileDropZoneDirective, ElderFileModule, ElderFileSelectComponent, ElderFileSelectDirective, ElderFileUploadComponent, ElderFormFieldControlBase, ElderFormFieldDenseDirective, ElderFormFieldLabelDirective, ElderFormFieldNoHintDirective, ElderFormFieldNoSpinnerDirective, ElderFormsDirectivesModule, ElderFormsModule, ElderFromFieldBase, ElderFromFieldEntityBase, ElderFromFieldMultiEntityBase, ElderGlobalSearchComponent, ElderGlobalSearchModule, ElderGlobalSearchService, ElderGridComponent, ElderGridModule, ElderGridTileDirective, ElderGridToolbarDirective, ElderHeaderComponent, ElderHeaderModule, ElderHttpClient, ElderI18nEntitiesModule, ElderIFrameModule, ElderInfiniteAutocompleteDirective, ElderInfiniteScrollDirective, ElderInfiniteScrollLegacyDirective, ElderInfiniteScrollModule, ElderInputPatternDirective, ElderIntervalInputComponent, ElderKeyEventDirective, ElderLabelInputComponent, ElderLabelsModule, ElderLanguageConfig, ElderLanguageInterceptor, ElderLanguageModule, ElderLanguageService, ElderLanguageSwitcherComponent, ElderLocalDateInputComponent, ElderLocalTimeInputComponent, ElderLocalesDeChModule, ElderLocalizedInputComponent, ElderLocalizedInputDialogComponent, ElderLocalizedInputDialogService, ElderLocalizedInputTableComponent, ElderLocalizedTextColumnDirective, ElderLocalizedTextsDirective, ElderMaxValidator, ElderMeasuresModule, ElderMinValidator, ElderMultiEntityValueAccessorUtil, ElderMultiSelectBase, ElderMultiSelectChipsComponent, ElderMultiSelectFormField, ElderMultipleOfUtil, ElderMultipleOfValidator, ElderNavGroupComponent, ElderNavLinkComponent, ElderNavListComponent, ElderNavModule, ElderNextFocusableDirective, ElderNumberCellDirective, ElderOfflineIndicatorComponent, ElderOverlayComponent, ElderOverlayModule, ElderOverlayOriginDirective, ElderOverlayTriggerDirective, ElderPaddingDirective, ElderPanelComponent, ElderPanelModule, ElderPeriodInputComponent, ElderPipesModule, ElderPlugParentFormDirective, ElderProgressBarComponent, ElderProgressBarModule, ElderQuantityFormFieldComponent, ElderQuantityInputControlComponent, ElderQuantityModule, ElderQuantityPipe, ElderQuantityRangeValidator, ElderQuantityService, ElderQuantityTransformPipe, ElderQuestionDialogComponent, ElderRepeatPipe, ElderRepeatPipeLegacy, ElderRequiredDimensionsValidator, ElderRequiredIgnoreZeroValidator, ElderRequiredQuantityValidator, ElderRoundPipe, ElderRouteOutletDrawerService, ElderRouterOutletService, ElderRouterService, ElderSafeUrlPipe, ElderScrollContainerComponent, ElderScrollbarDirective, ElderScrollbarModule, ElderSearchBoxComponent, ElderSearchContextDirective, ElderSearchInputDirective, ElderSearchModule, ElderSearchPanelComponent, ElderSelectBase, ElderSelectChipAvatarDirective, ElderSelectChipDirective, ElderSelectComponent, ElderSelectComponentState, ElderSelectCustomInputDirective, ElderSelectFormField, ElderSelectModule, ElderSelectOnTabDirective, ElderSelectValueDirective, ElderSelectionDialogComponent, ElderSelectionDialogDirective, ElderSelectionMasterCheckboxComponent, ElderSelectionPopupTriggerAdapterDirective, ElderShellCenterDirective, ElderShellComponent, ElderShellModule, ElderShellNavigationToggleComponent, ElderShellService, ElderShellSideLeftDirective, ElderShellSideRightDirective, ElderShellSlotDirective, ElderSimpleSelectionViewComponent, ElderSimpleSelectionViewModule, ElderSingleSortComponent, ElderStackCardDirective, ElderStopEventPropagationDirective, ElderSvgViewerComponent, ElderTabDirective, ElderTabFocusTrapDirective, ElderTabGroupRoutingDirective, ElderTabModule, ElderTableActivationDirective, ElderTableComponent, ElderTableExtensionDirective, ElderTableGroup, ElderTableModel, ElderTableModelCdkTableBinding, ElderTableModelQueryGroup, ElderTableModule, ElderTableProviders, ElderTableRootDirective, ElderTableSortDirective, ElderTableToolbarDirective, ElderThemeApplierDirective, ElderThemeDirective, ElderThemeModule, ElderThemePreferenceService, ElderThemeService, ElderThemeToggleComponent, ElderTimeModule, ElderToastModule, ElderToastService, ElderTogglePanelComponent, ElderTogglePanelPrimaryDirective, ElderTogglePanelSecondaryDirective, ElderTogglePanelTriggerDirective, ElderToolbarColumnDirective, ElderToolbarComponent, ElderToolbarContentDirective, ElderToolbarModule, ElderToolbarService, ElderToolbarTitleComponent, ElderToolbarTitleService, ElderTouchedDirective, ElderTrimPipe, ElderTripleStateCheckboxDirective, ElderTruncatePipe, ElderUnitSelectDirective, ElderUnitService, ElderUrlFragment, ElderUrlFragmentModule, ElderUrlFragmentParamsService, ElderUrlFragmentSwitcherComponent, ElderValidationErrorDirective, ElderViewersModule, EntitySetPatch, ErrorUtil, ExceptionDetailCtx, FileEntry, FileListingRx, FileUploadClient, Filter, FilterContext, FilterUtil, FormFieldBaseComponent, HttpClientBuilder, HttpClientPristine, HttpDataTransfer, HttpDataTransferAggregateComponent, HttpDataTransferComponent, HttpDataTransferIndicatorComponent, HttpDataTransferOverviewComponent, HttpParamsBuilder, I18nBase, I18nPickAsyncPipe, I18nPickPipe, I18nText, IFrameState, IframeCloseDirective, IframeDialogComponent, IframeHostComponent, IframeService, IframeSideContentComponent, IndexedEntities, InternalRestClientConfig, Interval, IsoDurationPipe, IsoIntervalParsePipe, IsoIntervalPipe, JsonMapUtil, KafentConfig, KafentEvent, KafentEventService, KafentEventStream, KafentEventStreamDisabled, KafentEventStreamSse, KafentEventTransport, KafentModule, KafentSseEventChannel, KafentTokenProvider, KafentTokenProviderSessionStorage, KafentTopicSse, KnownElderThemes, KnownLocaleType, LocalListDataSource, LocalPagedDataSource, LocalisationPickerService, MasterSelectionState, MatTableDataContextBinding, MatTableDataContextBindingBuilder, MultiModelBaseComponent, NextNumberUtil, Objects, OnlineStatus, Page, PageRequest, Pageable, ParseUtil, Path, PathNode, PeriodBucket, PeriodDuration, PeriodFormat, ProcessIterationContext, ProcessState, PropertyPathUtil, Quantity, QueryListBinding, QuestionDialogConfig, ReactiveEventSource, ReactiveMap, RefreshingEntity, RestClient, RestClientConfig, RestClientContinuable, RestClientList, RestClientPaged, SearchQuery, SelectionModel, SelectionModelPopupDirective, Sets, SimpleLocalisationPicker, Sort, SortOption, SortUtil, SubBar, SuggestionProvider, TemplateCompositeControl, TemplatedSelectionDialogComponent, ThemeSpec, TimeAgoPipe, TimeDurationPipe, TimeUtil, ToIsoDateStringPipe, ToastType, TokenChunkRequest, ToolbarHeader, TranslatedEnumValue, TypedEventMessage, Unit, UnitDimension, UnitDimensionInfo, UnitInfo, UnitRegistry, UrlBuilder, UrlQueryParams, UuidUtil, ValueAccessorBase, ValueWrapper, ViewProviders, WeightPipe, alphaNumStringComparator, buildFormIntegrationProviders, createDataOptionsProvider, createSelectionModel, existingOrNewElderTableModel, isActivePagedDataContext, isContinuableDataContext, isContinuableDataSource, isDataContext, isDataSource, isElderEntityValueAccessor, isElderMultiEntityValueAccessor, isListDataSource, isPagedDataSource, naturalValueComparator, newElderTableModel, proxyControlContainer, registerLocale, runInZone, themeInit };
|
|
29181
29209
|
//# sourceMappingURL=elderbyte-ngx-starter.mjs.map
|