@dereekb/dbx-firebase 12.6.6 → 12.6.8

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.
@@ -1,32 +1,44 @@
1
- import { Directive, inject } from '@angular/core';
1
+ import { Directive, inject, input } from '@angular/core';
2
2
  import { DbxFirebaseStorageFileUploadStore, StorageFileDocumentStore } from '../store';
3
- import { AbstractSubscriptionDirective } from '@dereekb/dbx-core';
3
+ import { AbstractSubscriptionDirective, DbxActionContextStoreSourceInstance, DbxActionHandlerInstance } from '@dereekb/dbx-core';
4
4
  import * as i0 from "@angular/core";
5
5
  /**
6
6
  * Directive that passes the upload result to a StorageFileDocumentStore to initialize the document immediately.
7
+ *
8
+ * Use with a DbxAction instance.
7
9
  */
8
10
  export class DbxFirebaseStorageFileUploadInitializeDocumentDirective extends AbstractSubscriptionDirective {
9
11
  uploadStore = inject(DbxFirebaseStorageFileUploadStore);
10
12
  storageFileDocumentStore = inject(StorageFileDocumentStore);
13
+ initializeWithExpediteProcessing = input();
14
+ source = inject((DbxActionContextStoreSourceInstance), { host: true });
15
+ _dbxActionHandlerInstance = new DbxActionHandlerInstance(this.source);
11
16
  constructor() {
12
17
  super();
18
+ // set the trigger
13
19
  this.sub = this.uploadStore.uploadResult$.subscribe(async (result) => {
14
20
  const successFileResult = result.successFileResults.find((x) => x.fileRef != null);
15
- if (successFileResult) {
16
- const fileRef = successFileResult.fileRef;
17
- if (fileRef) {
18
- this.storageFileDocumentStore
19
- .initializeStorageFileFromUpload({
20
- pathString: fileRef.storagePath.pathString,
21
- bucketId: fileRef.storagePath.bucketId
22
- })
23
- .subscribe();
24
- }
21
+ const fileRef = successFileResult?.fileRef;
22
+ if (fileRef) {
23
+ this.source.triggerWithValue(fileRef);
25
24
  }
26
25
  });
26
+ // set the handler function
27
+ this._dbxActionHandlerInstance.setHandlerFunction((fileRef, context) => {
28
+ context.startWorkingWithLoadingStateObservable(this.storageFileDocumentStore.initializeStorageFileFromUpload({
29
+ pathString: fileRef.storagePath.pathString,
30
+ bucketId: fileRef.storagePath.bucketId,
31
+ expediteProcessing: this.initializeWithExpediteProcessing() ?? undefined
32
+ }));
33
+ });
34
+ this._dbxActionHandlerInstance.init();
35
+ }
36
+ ngOnDestroy() {
37
+ super.ngOnDestroy();
38
+ this._dbxActionHandlerInstance.destroy();
27
39
  }
28
40
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
29
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, isStandalone: true, selector: "[dbxFirebaseStorageFileUploadInitializeDocument]", exportAs: ["dbxFirebaseStorageFileUploadInitializeDocument"], usesInheritance: true, ngImport: i0 });
41
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, isStandalone: true, selector: "[dbxFirebaseStorageFileUploadInitializeDocument]", inputs: { initializeWithExpediteProcessing: { classPropertyName: "initializeWithExpediteProcessing", publicName: "initializeWithExpediteProcessing", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["dbxFirebaseStorageFileUploadInitializeDocument"], usesInheritance: true, ngImport: i0 });
30
42
  }
31
43
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, decorators: [{
32
44
  type: Directive,
@@ -36,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
36
48
  standalone: true
37
49
  }]
38
50
  }], ctorParameters: () => [] });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZWZpbGUudXBsb2FkLmluaXRpYWxpemUuZG9jdW1lbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlcy9zdG9yYWdlZmlsZS9jb250YWluZXIvc3RvcmFnZWZpbGUudXBsb2FkLmluaXRpYWxpemUuZG9jdW1lbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2RixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFHbEU7O0dBRUc7QUFNSCxNQUFNLE9BQU8sdURBQXdELFNBQVEsNkJBQTZCO0lBQy9GLFdBQVcsR0FBRyxNQUFNLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUN4RCx3QkFBd0IsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUVyRTtRQUNFLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ25FLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQztZQUVuRixJQUFJLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3RCLE1BQU0sT0FBTyxHQUFHLGlCQUFpQixDQUFDLE9BQXNDLENBQUM7Z0JBRXpFLElBQUksT0FBTyxFQUFFLENBQUM7b0JBQ1osSUFBSSxDQUFDLHdCQUF3Qjt5QkFDMUIsK0JBQStCLENBQUM7d0JBQy9CLFVBQVUsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLFVBQVU7d0JBQzFDLFFBQVEsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLFFBQVE7cUJBQ3ZDLENBQUM7eUJBQ0QsU0FBUyxFQUFFLENBQUM7Z0JBQ2pCLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQXZCVSx1REFBdUQ7NEZBQXZELHVEQUF1RDs7NEZBQXZELHVEQUF1RDtrQkFMbkUsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0RBQWtEO29CQUM1RCxRQUFRLEVBQUUsZ0RBQWdEO29CQUMxRCxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGluamVjdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUsIFN0b3JhZ2VGaWxlRG9jdW1lbnRTdG9yZSB9IGZyb20gJy4uL3N0b3JlJztcbmltcG9ydCB7IEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRmlyZWJhc2VTdG9yYWdlQWNjZXNzb3JGaWxlIH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IHBhc3NlcyB0aGUgdXBsb2FkIHJlc3VsdCB0byBhIFN0b3JhZ2VGaWxlRG9jdW1lbnRTdG9yZSB0byBpbml0aWFsaXplIHRoZSBkb2N1bWVudCBpbW1lZGlhdGVseS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRJbml0aWFsaXplRG9jdW1lbnRdJyxcbiAgZXhwb3J0QXM6ICdkYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkSW5pdGlhbGl6ZURvY3VtZW50JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkSW5pdGlhbGl6ZURvY3VtZW50RGlyZWN0aXZlIGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICByZWFkb25seSB1cGxvYWRTdG9yZSA9IGluamVjdChEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUpO1xuICByZWFkb25seSBzdG9yYWdlRmlsZURvY3VtZW50U3RvcmUgPSBpbmplY3QoU3RvcmFnZUZpbGVEb2N1bWVudFN0b3JlKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5zdWIgPSB0aGlzLnVwbG9hZFN0b3JlLnVwbG9hZFJlc3VsdCQuc3Vic2NyaWJlKGFzeW5jIChyZXN1bHQpID0+IHtcbiAgICAgIGNvbnN0IHN1Y2Nlc3NGaWxlUmVzdWx0ID0gcmVzdWx0LnN1Y2Nlc3NGaWxlUmVzdWx0cy5maW5kKCh4KSA9PiB4LmZpbGVSZWYgIT0gbnVsbCk7XG5cbiAgICAgIGlmIChzdWNjZXNzRmlsZVJlc3VsdCkge1xuICAgICAgICBjb25zdCBmaWxlUmVmID0gc3VjY2Vzc0ZpbGVSZXN1bHQuZmlsZVJlZiBhcyBGaXJlYmFzZVN0b3JhZ2VBY2Nlc3NvckZpbGU7XG5cbiAgICAgICAgaWYgKGZpbGVSZWYpIHtcbiAgICAgICAgICB0aGlzLnN0b3JhZ2VGaWxlRG9jdW1lbnRTdG9yZVxuICAgICAgICAgICAgLmluaXRpYWxpemVTdG9yYWdlRmlsZUZyb21VcGxvYWQoe1xuICAgICAgICAgICAgICBwYXRoU3RyaW5nOiBmaWxlUmVmLnN0b3JhZ2VQYXRoLnBhdGhTdHJpbmcsXG4gICAgICAgICAgICAgIGJ1Y2tldElkOiBmaWxlUmVmLnN0b3JhZ2VQYXRoLmJ1Y2tldElkXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZWZpbGUudXBsb2FkLmluaXRpYWxpemUuZG9jdW1lbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlcy9zdG9yYWdlZmlsZS9jb250YWluZXIvc3RvcmFnZWZpbGUudXBsb2FkLmluaXRpYWxpemUuZG9jdW1lbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdkYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLG1DQUFtQyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBSWpJOzs7O0dBSUc7QUFNSCxNQUFNLE9BQU8sdURBQXdELFNBQVEsNkJBQTZCO0lBQy9GLFdBQVcsR0FBRyxNQUFNLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUN4RCx3QkFBd0IsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUU1RCxnQ0FBZ0MsR0FBRyxLQUFLLEVBQWtCLENBQUM7SUFFbkQsTUFBTSxHQUE4RixNQUFNLENBQUMsQ0FBQSxtQ0FBeUYsQ0FBQSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdE4seUJBQXlCLEdBQUcsSUFBSSx3QkFBd0IsQ0FBdUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRTdJO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFFUixrQkFBa0I7UUFDbEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ25FLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQztZQUNuRixNQUFNLE9BQU8sR0FBRyxpQkFBaUIsRUFBRSxPQUFPLENBQUM7WUFFM0MsSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDWixJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3hDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILDJCQUEyQjtRQUMzQixJQUFJLENBQUMseUJBQXlCLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFDckUsT0FBTyxDQUFDLHNDQUFzQyxDQUM1QyxJQUFJLENBQUMsd0JBQXdCLENBQUMsK0JBQStCLENBQUM7Z0JBQzVELFVBQVUsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLFVBQVU7Z0JBQzFDLFFBQVEsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLFFBQVE7Z0JBQ3RDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRSxJQUFJLFNBQVM7YUFDekUsQ0FBQyxDQUNILENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRVEsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzNDLENBQUM7d0dBdkNVLHVEQUF1RDs0RkFBdkQsdURBQXVEOzs0RkFBdkQsdURBQXVEO2tCQUxuRSxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrREFBa0Q7b0JBQzVELFFBQVEsRUFBRSxnREFBZ0Q7b0JBQzFELFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBpbnB1dCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUsIFN0b3JhZ2VGaWxlRG9jdW1lbnRTdG9yZSB9IGZyb20gJy4uL3N0b3JlJztcbmltcG9ydCB7IEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlLCBEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSwgRGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRmlyZWJhc2VTdG9yYWdlQWNjZXNzb3JGaWxlLCBPbkNhbGxDcmVhdGVNb2RlbFJlc3VsdCB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgcGFzc2VzIHRoZSB1cGxvYWQgcmVzdWx0IHRvIGEgU3RvcmFnZUZpbGVEb2N1bWVudFN0b3JlIHRvIGluaXRpYWxpemUgdGhlIGRvY3VtZW50IGltbWVkaWF0ZWx5LlxuICpcbiAqIFVzZSB3aXRoIGEgRGJ4QWN0aW9uIGluc3RhbmNlLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZEluaXRpYWxpemVEb2N1bWVudF0nLFxuICBleHBvcnRBczogJ2RieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRJbml0aWFsaXplRG9jdW1lbnQnLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRJbml0aWFsaXplRG9jdW1lbnREaXJlY3RpdmUgZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IHVwbG9hZFN0b3JlID0gaW5qZWN0KERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZSk7XG4gIHJlYWRvbmx5IHN0b3JhZ2VGaWxlRG9jdW1lbnRTdG9yZSA9IGluamVjdChTdG9yYWdlRmlsZURvY3VtZW50U3RvcmUpO1xuXG4gIHJlYWRvbmx5IGluaXRpYWxpemVXaXRoRXhwZWRpdGVQcm9jZXNzaW5nID0gaW5wdXQ8TWF5YmU8Ym9vbGVhbj4+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzb3VyY2U6IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPEZpcmViYXNlU3RvcmFnZUFjY2Vzc29yRmlsZSwgT25DYWxsQ3JlYXRlTW9kZWxSZXN1bHQ+ID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPEZpcmViYXNlU3RvcmFnZUFjY2Vzc29yRmlsZSwgT25DYWxsQ3JlYXRlTW9kZWxSZXN1bHQ+LCB7IGhvc3Q6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RieEFjdGlvbkhhbmRsZXJJbnN0YW5jZSA9IG5ldyBEYnhBY3Rpb25IYW5kbGVySW5zdGFuY2U8RmlyZWJhc2VTdG9yYWdlQWNjZXNzb3JGaWxlLCBPbkNhbGxDcmVhdGVNb2RlbFJlc3VsdD4odGhpcy5zb3VyY2UpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICAvLyBzZXQgdGhlIHRyaWdnZXJcbiAgICB0aGlzLnN1YiA9IHRoaXMudXBsb2FkU3RvcmUudXBsb2FkUmVzdWx0JC5zdWJzY3JpYmUoYXN5bmMgKHJlc3VsdCkgPT4ge1xuICAgICAgY29uc3Qgc3VjY2Vzc0ZpbGVSZXN1bHQgPSByZXN1bHQuc3VjY2Vzc0ZpbGVSZXN1bHRzLmZpbmQoKHgpID0+IHguZmlsZVJlZiAhPSBudWxsKTtcbiAgICAgIGNvbnN0IGZpbGVSZWYgPSBzdWNjZXNzRmlsZVJlc3VsdD8uZmlsZVJlZjtcblxuICAgICAgaWYgKGZpbGVSZWYpIHtcbiAgICAgICAgdGhpcy5zb3VyY2UudHJpZ2dlcldpdGhWYWx1ZShmaWxlUmVmKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIHNldCB0aGUgaGFuZGxlciBmdW5jdGlvblxuICAgIHRoaXMuX2RieEFjdGlvbkhhbmRsZXJJbnN0YW5jZS5zZXRIYW5kbGVyRnVuY3Rpb24oKGZpbGVSZWYsIGNvbnRleHQpID0+IHtcbiAgICAgIGNvbnRleHQuc3RhcnRXb3JraW5nV2l0aExvYWRpbmdTdGF0ZU9ic2VydmFibGUoXG4gICAgICAgIHRoaXMuc3RvcmFnZUZpbGVEb2N1bWVudFN0b3JlLmluaXRpYWxpemVTdG9yYWdlRmlsZUZyb21VcGxvYWQoe1xuICAgICAgICAgIHBhdGhTdHJpbmc6IGZpbGVSZWYuc3RvcmFnZVBhdGgucGF0aFN0cmluZyxcbiAgICAgICAgICBidWNrZXRJZDogZmlsZVJlZi5zdG9yYWdlUGF0aC5idWNrZXRJZCxcbiAgICAgICAgICBleHBlZGl0ZVByb2Nlc3Npbmc6IHRoaXMuaW5pdGlhbGl6ZVdpdGhFeHBlZGl0ZVByb2Nlc3NpbmcoKSA/PyB1bmRlZmluZWRcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9kYnhBY3Rpb25IYW5kbGVySW5zdGFuY2UuaW5pdCgpO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLl9kYnhBY3Rpb25IYW5kbGVySW5zdGFuY2UuZGVzdHJveSgpO1xuICB9XG59XG4iXX0=
@@ -6308,29 +6308,41 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
6308
6308
 
6309
6309
  /**
6310
6310
  * Directive that passes the upload result to a StorageFileDocumentStore to initialize the document immediately.
6311
+ *
6312
+ * Use with a DbxAction instance.
6311
6313
  */
6312
6314
  class DbxFirebaseStorageFileUploadInitializeDocumentDirective extends AbstractSubscriptionDirective {
6313
6315
  uploadStore = inject(DbxFirebaseStorageFileUploadStore);
6314
6316
  storageFileDocumentStore = inject(StorageFileDocumentStore);
6317
+ initializeWithExpediteProcessing = input();
6318
+ source = inject((DbxActionContextStoreSourceInstance), { host: true });
6319
+ _dbxActionHandlerInstance = new DbxActionHandlerInstance(this.source);
6315
6320
  constructor() {
6316
6321
  super();
6322
+ // set the trigger
6317
6323
  this.sub = this.uploadStore.uploadResult$.subscribe(async (result) => {
6318
6324
  const successFileResult = result.successFileResults.find((x) => x.fileRef != null);
6319
- if (successFileResult) {
6320
- const fileRef = successFileResult.fileRef;
6321
- if (fileRef) {
6322
- this.storageFileDocumentStore
6323
- .initializeStorageFileFromUpload({
6324
- pathString: fileRef.storagePath.pathString,
6325
- bucketId: fileRef.storagePath.bucketId
6326
- })
6327
- .subscribe();
6328
- }
6325
+ const fileRef = successFileResult?.fileRef;
6326
+ if (fileRef) {
6327
+ this.source.triggerWithValue(fileRef);
6329
6328
  }
6330
6329
  });
6330
+ // set the handler function
6331
+ this._dbxActionHandlerInstance.setHandlerFunction((fileRef, context) => {
6332
+ context.startWorkingWithLoadingStateObservable(this.storageFileDocumentStore.initializeStorageFileFromUpload({
6333
+ pathString: fileRef.storagePath.pathString,
6334
+ bucketId: fileRef.storagePath.bucketId,
6335
+ expediteProcessing: this.initializeWithExpediteProcessing() ?? undefined
6336
+ }));
6337
+ });
6338
+ this._dbxActionHandlerInstance.init();
6339
+ }
6340
+ ngOnDestroy() {
6341
+ super.ngOnDestroy();
6342
+ this._dbxActionHandlerInstance.destroy();
6331
6343
  }
6332
6344
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6333
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, isStandalone: true, selector: "[dbxFirebaseStorageFileUploadInitializeDocument]", exportAs: ["dbxFirebaseStorageFileUploadInitializeDocument"], usesInheritance: true, ngImport: i0 });
6345
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, isStandalone: true, selector: "[dbxFirebaseStorageFileUploadInitializeDocument]", inputs: { initializeWithExpediteProcessing: { classPropertyName: "initializeWithExpediteProcessing", publicName: "initializeWithExpediteProcessing", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["dbxFirebaseStorageFileUploadInitializeDocument"], usesInheritance: true, ngImport: i0 });
6334
6346
  }
6335
6347
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, decorators: [{
6336
6348
  type: Directive,