@dereekb/dbx-web 13.12.6 → 13.12.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.
|
@@ -17781,6 +17781,14 @@ function buildEncodeResult(input) {
|
|
|
17781
17781
|
return { file: nextFile, mimeType: target.mimeType, compression: status, originalDimensions, finalDimensions };
|
|
17782
17782
|
}
|
|
17783
17783
|
|
|
17784
|
+
/**
|
|
17785
|
+
* Default {@link DbxPdfMergeEncryptedHandling} when no consumer or token overrides it.
|
|
17786
|
+
*/
|
|
17787
|
+
const DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING = 'focus';
|
|
17788
|
+
/**
|
|
17789
|
+
* Error message used when an encrypted entry is projected to the `error` status under {@link DbxPdfMergeEncryptedHandling} `'error'` mode.
|
|
17790
|
+
*/
|
|
17791
|
+
const DBX_PDF_MERGE_ENCRYPTED_ERROR_MESSAGE = 'Password-protected PDFs cannot be merged.';
|
|
17784
17792
|
/**
|
|
17785
17793
|
* MIME types accepted by the PDF merge editor by default: PDF documents and PNG/JPEG images.
|
|
17786
17794
|
*/
|
|
@@ -17894,7 +17902,8 @@ function buildEntryFromFile(input) {
|
|
|
17894
17902
|
status: 'validating',
|
|
17895
17903
|
slotId,
|
|
17896
17904
|
original,
|
|
17897
|
-
compression
|
|
17905
|
+
compression,
|
|
17906
|
+
encrypted: false
|
|
17898
17907
|
};
|
|
17899
17908
|
nextEntry.validation = validatePdfMergeEntry(nextEntry);
|
|
17900
17909
|
return nextEntry;
|
|
@@ -17957,10 +17966,10 @@ async function buildPdfMergeEntry(file, config) {
|
|
|
17957
17966
|
return entry;
|
|
17958
17967
|
}
|
|
17959
17968
|
/**
|
|
17960
|
-
* Lightly inspects a file's bytes to confirm the entry can participate in a merge. PDFs are checked for the standard `%PDF-` header
|
|
17969
|
+
* Lightly inspects a file's bytes to confirm the entry can participate in a merge. PDFs are checked for the standard `%PDF-` header and the `%%EOF` marker. Encrypted PDFs (presence of `/Encrypt`) are still reported as `ok: true` with `encrypted: true` so the editor can decide whether to focus, ignore, or reject the entry — see {@link DbxPdfMergeEncryptedHandling}. Images are accepted as-is — the actual decode happens during merge.
|
|
17961
17970
|
*
|
|
17962
17971
|
* @param entry - Entry to validate.
|
|
17963
|
-
* @returns Result indicating whether the entry can be merged
|
|
17972
|
+
* @returns Result indicating whether the entry can be merged, optional error message when validation fails, and whether the entry is encrypted.
|
|
17964
17973
|
*/
|
|
17965
17974
|
async function validatePdfMergeEntry(entry) {
|
|
17966
17975
|
let result;
|
|
@@ -17980,7 +17989,7 @@ async function validatePdfMergeEntry(entry) {
|
|
|
17980
17989
|
result = { ok: false, errorMessage: 'File does not appear to be a valid PDF.' };
|
|
17981
17990
|
}
|
|
17982
17991
|
else if (text.includes(PDF_ENCRYPT_MARKER)) {
|
|
17983
|
-
result = { ok:
|
|
17992
|
+
result = { ok: true, encrypted: true };
|
|
17984
17993
|
}
|
|
17985
17994
|
else {
|
|
17986
17995
|
result = { ok: true };
|
|
@@ -18006,27 +18015,42 @@ async function appendImagePage(target, entry) {
|
|
|
18006
18015
|
page.drawImage(image, { x: 0, y: 0, width: image.width, height: image.height });
|
|
18007
18016
|
}
|
|
18008
18017
|
/**
|
|
18009
|
-
* Merges every `ready` entry in the provided array order into a single PDF and returns it as a `Blob`. PDF entries contribute their full set of pages in order; image entries contribute one page sized to the image.
|
|
18018
|
+
* Merges every `ready` entry in the provided array order into a single PDF and returns it as a `Blob`. PDF entries contribute their full set of pages in order; image entries contribute one page sized to the image.
|
|
18019
|
+
*
|
|
18020
|
+
* Special case: when the only `ready` entry is a single encrypted PDF, returns a passthrough `Blob` of its original bytes — `pdf-lib` cannot read encrypted PDFs even with `ignoreEncryption: true`, and downstream upload flows still need a usable blob.
|
|
18021
|
+
*
|
|
18022
|
+
* Throws if no `ready` entries are provided, or if multiple encrypted entries are passed in (the editor only routes here under focus mode where it has narrowed to one).
|
|
18010
18023
|
*
|
|
18011
18024
|
* @param entries - Ordered entries to merge.
|
|
18012
18025
|
* @returns A Blob with `application/pdf` MIME type.
|
|
18013
18026
|
*/
|
|
18014
18027
|
async function mergePdfMergeEntries(entries) {
|
|
18015
18028
|
const ready = entries.filter((entry) => entry.status === 'ready');
|
|
18029
|
+
let result;
|
|
18016
18030
|
if (ready.length === 0) {
|
|
18017
18031
|
throw new Error('No ready entries to merge.');
|
|
18018
18032
|
}
|
|
18019
|
-
|
|
18020
|
-
|
|
18021
|
-
|
|
18022
|
-
|
|
18023
|
-
|
|
18024
|
-
|
|
18025
|
-
|
|
18033
|
+
else if (ready.length === 1 && ready[0].encrypted) {
|
|
18034
|
+
const bytes = await ready[0].file.arrayBuffer();
|
|
18035
|
+
result = new Blob([bytes], { type: PDF_MERGE_RESULT_MIME_TYPE });
|
|
18036
|
+
}
|
|
18037
|
+
else if (ready.some((entry) => entry.encrypted)) {
|
|
18038
|
+
throw new Error('Encrypted PDFs cannot be merged with other files.');
|
|
18039
|
+
}
|
|
18040
|
+
else {
|
|
18041
|
+
const target = await PDFDocument.create();
|
|
18042
|
+
for (const entry of ready) {
|
|
18043
|
+
if (entry.kind === 'pdf') {
|
|
18044
|
+
await appendPdfPages(target, entry);
|
|
18045
|
+
}
|
|
18046
|
+
else {
|
|
18047
|
+
await appendImagePage(target, entry);
|
|
18048
|
+
}
|
|
18026
18049
|
}
|
|
18050
|
+
const bytes = await target.save();
|
|
18051
|
+
result = new Blob([bytes], { type: PDF_MERGE_RESULT_MIME_TYPE });
|
|
18027
18052
|
}
|
|
18028
|
-
|
|
18029
|
-
return new Blob([bytes], { type: PDF_MERGE_RESULT_MIME_TYPE });
|
|
18053
|
+
return result;
|
|
18030
18054
|
}
|
|
18031
18055
|
|
|
18032
18056
|
/**
|
|
@@ -18041,6 +18065,8 @@ const DBX_PDF_MERGE_EDITOR_INITIAL_STATE = {
|
|
|
18041
18065
|
class DbxPdfMergeEditorStore extends ComponentStore {
|
|
18042
18066
|
_validator$ = new BehaviorSubject(undefined);
|
|
18043
18067
|
_outputSizeLimit$ = new BehaviorSubject(undefined);
|
|
18068
|
+
_imageCompression$ = new BehaviorSubject(undefined);
|
|
18069
|
+
_encryptedHandling$ = new BehaviorSubject(undefined);
|
|
18044
18070
|
constructor() {
|
|
18045
18071
|
super(DBX_PDF_MERGE_EDITOR_INITIAL_STATE);
|
|
18046
18072
|
}
|
|
@@ -18059,9 +18085,15 @@ class DbxPdfMergeEditorStore extends ComponentStore {
|
|
|
18059
18085
|
else {
|
|
18060
18086
|
status = 'error';
|
|
18061
18087
|
}
|
|
18088
|
+
// Mutate the rawEntries entry so subsequent state re-emissions (e.g. when another
|
|
18089
|
+
// file is added) take the `of(entry)` branch below and skip re-validation.
|
|
18062
18090
|
entry.status = status;
|
|
18063
18091
|
entry.errorMessage = validationResult.errorMessage;
|
|
18064
|
-
|
|
18092
|
+
entry.encrypted = validationResult.encrypted ?? false;
|
|
18093
|
+
// Emit a new reference so consumer signal inputs notice the status transition —
|
|
18094
|
+
// returning `entry` would leave `DbxPdfMergeEntryComponent.entry` pointing at the
|
|
18095
|
+
// same object and its computeds wouldn't re-run, stranding the row at "Checking…".
|
|
18096
|
+
return { ...entry };
|
|
18065
18097
|
}), startWith(entry));
|
|
18066
18098
|
}
|
|
18067
18099
|
else {
|
|
@@ -18070,9 +18102,40 @@ class DbxPdfMergeEditorStore extends ComponentStore {
|
|
|
18070
18102
|
return entry$;
|
|
18071
18103
|
})).pipe(defaultIfEmpty([]))), shareReplay(1));
|
|
18072
18104
|
entryCount$ = this.entries$.pipe(map((entries) => entries.length), distinctUntilChanged(), shareReplay(1));
|
|
18073
|
-
hasReadyEntries$ = this.entries$.pipe(map((entries) => entries.some((entry) => entry.status === 'ready')), distinctUntilChanged(), shareReplay(1));
|
|
18074
18105
|
/**
|
|
18075
|
-
* Emits
|
|
18106
|
+
* Emits the active {@link DbxPdfMergeEncryptedHandling} mode (defaults to {@link DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING}). Pushed onto the store via {@link setEncryptedHandling} by the editor component or {@link DbxPdfMergeEditorStoreDirective}.
|
|
18107
|
+
*/
|
|
18108
|
+
encryptedHandling$ = this._encryptedHandling$.pipe(map((handling) => handling ?? DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING), distinctUntilChanged(), shareReplay(1));
|
|
18109
|
+
/**
|
|
18110
|
+
* Entries enriched with the `ignored` flag derived from {@link encryptedHandling$}. Under `focus` mode (the default) the *first* ready encrypted entry is the focus target — every other entry (encrypted or not) is marked `ignored`, so the merge stream always sees a single encrypted entry and routes through the passthrough branch in {@link mergePdfMergeEntries}. Under `error` mode, encrypted entries are demoted to `status: 'error'` with the standard "Password-protected" message. Under `allow` mode, entries pass through unchanged.
|
|
18111
|
+
*/
|
|
18112
|
+
displayEntries$ = combineLatest([this.entries$, this.encryptedHandling$]).pipe(map(([entries, handling]) => {
|
|
18113
|
+
const focusTarget = handling === 'focus' ? entries.find((entry) => entry.encrypted && entry.status === 'ready') : undefined;
|
|
18114
|
+
return entries.map((entry) => {
|
|
18115
|
+
let view;
|
|
18116
|
+
if (handling === 'error' && entry.encrypted && entry.status !== 'validating') {
|
|
18117
|
+
view = { ...entry, status: 'error', errorMessage: DBX_PDF_MERGE_ENCRYPTED_ERROR_MESSAGE, ignored: false };
|
|
18118
|
+
}
|
|
18119
|
+
else if (focusTarget != null && entry !== focusTarget) {
|
|
18120
|
+
view = { ...entry, ignored: true };
|
|
18121
|
+
}
|
|
18122
|
+
else {
|
|
18123
|
+
view = { ...entry, ignored: false };
|
|
18124
|
+
}
|
|
18125
|
+
return view;
|
|
18126
|
+
});
|
|
18127
|
+
}), shareReplay(1));
|
|
18128
|
+
/**
|
|
18129
|
+
* Emits `true` while {@link encryptedHandling$} is `'focus'` and at least one ready encrypted entry exists. Drives the editor's focus banner and is the same condition used to mark non-encrypted entries as `ignored` in {@link displayEntries$}.
|
|
18130
|
+
*/
|
|
18131
|
+
focusActive$ = combineLatest([this.entries$, this.encryptedHandling$]).pipe(map(([entries, handling]) => handling === 'focus' && entries.some((entry) => entry.encrypted && entry.status === 'ready')), distinctUntilChanged(), shareReplay(1));
|
|
18132
|
+
/**
|
|
18133
|
+
* Emits the encrypted, `ready` entries currently in the list. Useful for consumers that want to surface UI specifically for encrypted files.
|
|
18134
|
+
*/
|
|
18135
|
+
encryptedEntries$ = this.entries$.pipe(map((entries) => entries.filter((entry) => entry.encrypted && entry.status === 'ready')), shareReplay(1));
|
|
18136
|
+
hasReadyEntries$ = this.displayEntries$.pipe(map((entries) => entries.some((entry) => entry.status === 'ready' && !entry.ignored)), distinctUntilChanged(), shareReplay(1));
|
|
18137
|
+
/**
|
|
18138
|
+
* Emits `true` while any entry's validation promise has not yet resolved (i.e. one or more entries are still in `validating` status). Reads from {@link entries$} (not {@link displayEntries$}) so validation gating ignores the `ignored`/`error` projection done by encryption handling.
|
|
18076
18139
|
*/
|
|
18077
18140
|
isValidating$ = this.entries$.pipe(map((entries) => entries.some((entry) => entry.status === 'validating')), distinctUntilChanged(), shareReplay(1));
|
|
18078
18141
|
/**
|
|
@@ -18080,16 +18143,17 @@ class DbxPdfMergeEditorStore extends ComponentStore {
|
|
|
18080
18143
|
*/
|
|
18081
18144
|
validatorValid$ = this._validator$.pipe(switchMap((validator) => (validator ? validator(this.entries$) : of(true))), distinctUntilChanged(), shareReplay(1));
|
|
18082
18145
|
/**
|
|
18083
|
-
* Internal pre-validity merge stream produced without consulting {@link isValid$}. Drives both {@link outputSize$} and the eventual {@link currentMergeOutput$} so size-based gating can observe the would-be blob without creating a cycle.
|
|
18146
|
+
* Internal pre-validity merge stream produced without consulting {@link isValid$}. Drives both {@link outputSize$} and the eventual {@link currentMergeOutput$} so size-based gating can observe the would-be blob without creating a cycle. Consumes {@link displayEntries$} so the merge respects the active {@link DbxPdfMergeEncryptedHandling} (encrypted-focused entries pass through, ignored entries are dropped, `error` mode demotions are honored).
|
|
18084
18147
|
*/
|
|
18085
|
-
_candidateMergeOutput$ = combineLatest([this.
|
|
18086
|
-
const
|
|
18148
|
+
_candidateMergeOutput$ = combineLatest([this.displayEntries$, this.isValidating$, this.validatorValid$]).pipe(switchMap(([entries, isValidating, validatorValid]) => {
|
|
18149
|
+
const mergeable = entries.filter((entry) => !entry.ignored);
|
|
18150
|
+
const hasReady = mergeable.some((entry) => entry.status === 'ready');
|
|
18087
18151
|
let next$;
|
|
18088
18152
|
if (isValidating || !hasReady || !validatorValid) {
|
|
18089
18153
|
next$ = of(undefined);
|
|
18090
18154
|
}
|
|
18091
18155
|
else {
|
|
18092
|
-
next$ = from(mergePdfMergeEntries(
|
|
18156
|
+
next$ = from(mergePdfMergeEntries(mergeable)).pipe(catchError(() => of(undefined)));
|
|
18093
18157
|
}
|
|
18094
18158
|
return next$;
|
|
18095
18159
|
}), shareReplay(1));
|
|
@@ -18120,13 +18184,17 @@ class DbxPdfMergeEditorStore extends ComponentStore {
|
|
|
18120
18184
|
currentMergeOutput$ = combineLatest([this._candidateMergeOutput$, this.sizeLimitValid$]).pipe(map(([blob, sizeLimitValid]) => (sizeLimitValid ? blob : undefined)), shareReplay(1));
|
|
18121
18185
|
mergeOutput$ = this.currentMergeOutput$.pipe(filterMaybe());
|
|
18122
18186
|
/**
|
|
18123
|
-
*
|
|
18187
|
+
* Emits the active client-side image-compression config pushed via {@link setImageCompression}, or `undefined` when none is set. Consumed by the editor and its slot uploaders as the middle tier of compression resolution (own `[config]` input → store → {@link DBX_PDF_MERGE_EDITOR_CONFIG} token), letting {@link DbxPdfMergeEditorStoreDirective} supply a store-level default that flows through the upload dialog's bare editor.
|
|
18188
|
+
*/
|
|
18189
|
+
imageCompression$ = this._imageCompression$.asObservable();
|
|
18190
|
+
/**
|
|
18191
|
+
* Returns an observable of entries belonging to the given slot id. The result is filtered from {@link displayEntries$} so per-slot rows honor the active {@link DbxPdfMergeEncryptedHandling} (ignored / error projection).
|
|
18124
18192
|
*
|
|
18125
18193
|
* @param slotId - Slot identifier to filter for.
|
|
18126
|
-
* @returns Observable of entries whose `slotId` matches.
|
|
18194
|
+
* @returns Observable of entries whose `slotId` matches, enriched with the `ignored` flag.
|
|
18127
18195
|
*/
|
|
18128
18196
|
entriesForSlotId$(slotId) {
|
|
18129
|
-
return this.
|
|
18197
|
+
return this.displayEntries$.pipe(map((entries) => entries.filter((entry) => entry.slotId === slotId)), shareReplay(1));
|
|
18130
18198
|
}
|
|
18131
18199
|
// MARK: Validator
|
|
18132
18200
|
/**
|
|
@@ -18151,6 +18219,22 @@ class DbxPdfMergeEditorStore extends ComponentStore {
|
|
|
18151
18219
|
setOutputSizeLimit(maxBytes) {
|
|
18152
18220
|
this._outputSizeLimit$.next(maxBytes ?? undefined);
|
|
18153
18221
|
}
|
|
18222
|
+
/**
|
|
18223
|
+
* Sets the store-level client-side image-compression config exposed via {@link imageCompression$}. The editor and its slot uploaders apply it as the middle tier of compression resolution (own `[config]` input → store → {@link DBX_PDF_MERGE_EDITOR_CONFIG} token), so a value pushed here by {@link DbxPdfMergeEditorStoreDirective} reaches the upload dialog's bare editor while a per-input/per-slot override still wins. Pass `null`/`undefined` to clear the store-level default.
|
|
18224
|
+
*
|
|
18225
|
+
* @param config - Image-compression config, or a falsy value to clear the store-level default.
|
|
18226
|
+
*/
|
|
18227
|
+
setImageCompression(config) {
|
|
18228
|
+
this._imageCompression$.next(config ?? undefined);
|
|
18229
|
+
}
|
|
18230
|
+
/**
|
|
18231
|
+
* Sets the active {@link DbxPdfMergeEncryptedHandling} mode, exposed via {@link encryptedHandling$}. Pass `null`/`undefined` to clear the value and fall back to {@link DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING}.
|
|
18232
|
+
*
|
|
18233
|
+
* @param handling - Encryption handling mode, or a falsy value to clear.
|
|
18234
|
+
*/
|
|
18235
|
+
setEncryptedHandling(handling) {
|
|
18236
|
+
this._encryptedHandling$.next(handling ?? undefined);
|
|
18237
|
+
}
|
|
18154
18238
|
// MARK: Updaters
|
|
18155
18239
|
/**
|
|
18156
18240
|
* Appends entries (already constructed) or builds them from raw files and appends them to state. Each entry's validation promise starts when the entry is built; {@link entries$} reflects each result as it resolves. When `input` is an object with `files` and `slotId`, the resulting entries are tagged with that slot id. When `input` is `{ entries }`, the entries are appended as-is — use this shape for entries that went through async client-side compression upstream.
|
|
@@ -18260,6 +18344,19 @@ class DbxPdfMergeEditorStoreDirective {
|
|
|
18260
18344
|
this.store.setOutputSizeLimit(errorBytes);
|
|
18261
18345
|
}
|
|
18262
18346
|
});
|
|
18347
|
+
// Push the directive's image-compression config onto the store so it reaches the
|
|
18348
|
+
// upload dialog's bare <dbx-pdf-merge-editor> (which renders with no own [config]).
|
|
18349
|
+
// Only the store directive pushes — the editor reads the store as the middle tier of
|
|
18350
|
+
// its resolution chain (own [config] → store → token) — so the bare editor never
|
|
18351
|
+
// clobbers this value with an empty config.
|
|
18352
|
+
effect(() => {
|
|
18353
|
+
this.store.setImageCompression(this.config()?.imageCompression);
|
|
18354
|
+
});
|
|
18355
|
+
// Same channel for encryptedHandling — pushes the directive-level mode onto the store
|
|
18356
|
+
// so any descendant editor (including the upload dialog's bare editor) picks it up.
|
|
18357
|
+
effect(() => {
|
|
18358
|
+
this.store.setEncryptedHandling(this.config()?.encryptedHandling);
|
|
18359
|
+
});
|
|
18263
18360
|
}
|
|
18264
18361
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxPdfMergeEditorStoreDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
18265
18362
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.11", type: DbxPdfMergeEditorStoreDirective, isStandalone: true, selector: "[dbxPdfMergeEditorStore]", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null }, outputSizeLimit: { classPropertyName: "outputSizeLimit", publicName: "outputSizeLimit", isSignal: true, isRequired: false, transformFunction: null } }, providers: [DbxPdfMergeEditorStore], exportAs: ["dbxPdfMergeEditorStore"], ngImport: i0 });
|
|
@@ -18283,6 +18380,8 @@ const ERROR_ICON = 'error';
|
|
|
18283
18380
|
class DbxPdfMergeEntryComponent {
|
|
18284
18381
|
store = inject(DbxPdfMergeEditorStore);
|
|
18285
18382
|
entry = input.required(...(ngDevMode ? [{ debugName: "entry" }] : /* istanbul ignore next */ []));
|
|
18383
|
+
isIgnoredSignal = computed(() => this.entry().ignored === true, ...(ngDevMode ? [{ debugName: "isIgnoredSignal" }] : /* istanbul ignore next */ []));
|
|
18384
|
+
isEncryptedSignal = computed(() => this.entry().encrypted === true, ...(ngDevMode ? [{ debugName: "isEncryptedSignal" }] : /* istanbul ignore next */ []));
|
|
18286
18385
|
iconSignal = computed(() => {
|
|
18287
18386
|
const entry = this.entry();
|
|
18288
18387
|
let icon;
|
|
@@ -18341,7 +18440,7 @@ class DbxPdfMergeEntryComponent {
|
|
|
18341
18440
|
this.store.removeEntry(this.entry().id);
|
|
18342
18441
|
}
|
|
18343
18442
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxPdfMergeEntryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18344
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxPdfMergeEntryComponent, isStandalone: true, selector: "dbx-pdf-merge-entry", inputs: { entry: { classPropertyName: "entry", publicName: "entry", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "class.dbx-pdf-merge-entry--error": "isErrorSignal()", "class.dbx-pdf-merge-entry--validating": "isValidatingSignal()" }, classAttribute: "dbx-pdf-merge-entry d-block" }, ngImport: i0, template: `
|
|
18443
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxPdfMergeEntryComponent, isStandalone: true, selector: "dbx-pdf-merge-entry", inputs: { entry: { classPropertyName: "entry", publicName: "entry", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "class.dbx-pdf-merge-entry--error": "isErrorSignal()", "class.dbx-pdf-merge-entry--validating": "isValidatingSignal()", "class.dbx-pdf-merge-entry--ignored": "isIgnoredSignal()", "class.dbx-pdf-merge-entry--encrypted": "isEncryptedSignal()" }, classAttribute: "dbx-pdf-merge-entry d-block" }, ngImport: i0, template: `
|
|
18345
18444
|
<div class="dbx-pdf-merge-entry-row" cdkDrag cdkDragLockAxis="y">
|
|
18346
18445
|
<ng-template cdkDragPlaceholder>
|
|
18347
18446
|
<div class="dbx-pdf-merge-entry-placeholder"></div>
|
|
@@ -18354,6 +18453,12 @@ class DbxPdfMergeEntryComponent {
|
|
|
18354
18453
|
<div class="dbx-pdf-merge-entry-name dbx-text-truncate" [title]="entry().name">{{ entry().name }}</div>
|
|
18355
18454
|
<div class="dbx-pdf-merge-entry-meta dbx-hint dbx-small">
|
|
18356
18455
|
<span>{{ sizeSignal() }}</span>
|
|
18456
|
+
@if (isEncryptedSignal()) {
|
|
18457
|
+
<dbx-chip class="dbx-pdf-merge-entry-encrypted-chip" color="warn" [small]="true">
|
|
18458
|
+
<mat-icon class="dbx-pdf-merge-entry-encrypted-icon">lock</mat-icon>
|
|
18459
|
+
<span>Encrypted</span>
|
|
18460
|
+
</dbx-chip>
|
|
18461
|
+
}
|
|
18357
18462
|
@if (compressionLabelSignal(); as compressionLabel) {
|
|
18358
18463
|
<span class="dbx-pdf-merge-entry-compression">{{ compressionLabel }}</span>
|
|
18359
18464
|
}
|
|
@@ -18369,7 +18474,7 @@ class DbxPdfMergeEntryComponent {
|
|
|
18369
18474
|
<mat-icon>close</mat-icon>
|
|
18370
18475
|
</button>
|
|
18371
18476
|
</div>
|
|
18372
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "directive", type: CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i3.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
18477
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "directive", type: CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i3.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: DbxChipDirective, selector: "dbx-chip", inputs: ["small", "block", "color", "display", "tone"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
18373
18478
|
}
|
|
18374
18479
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxPdfMergeEntryComponent, decorators: [{
|
|
18375
18480
|
type: Component,
|
|
@@ -18388,6 +18493,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
18388
18493
|
<div class="dbx-pdf-merge-entry-name dbx-text-truncate" [title]="entry().name">{{ entry().name }}</div>
|
|
18389
18494
|
<div class="dbx-pdf-merge-entry-meta dbx-hint dbx-small">
|
|
18390
18495
|
<span>{{ sizeSignal() }}</span>
|
|
18496
|
+
@if (isEncryptedSignal()) {
|
|
18497
|
+
<dbx-chip class="dbx-pdf-merge-entry-encrypted-chip" color="warn" [small]="true">
|
|
18498
|
+
<mat-icon class="dbx-pdf-merge-entry-encrypted-icon">lock</mat-icon>
|
|
18499
|
+
<span>Encrypted</span>
|
|
18500
|
+
</dbx-chip>
|
|
18501
|
+
}
|
|
18391
18502
|
@if (compressionLabelSignal(); as compressionLabel) {
|
|
18392
18503
|
<span class="dbx-pdf-merge-entry-compression">{{ compressionLabel }}</span>
|
|
18393
18504
|
}
|
|
@@ -18407,9 +18518,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
18407
18518
|
host: {
|
|
18408
18519
|
class: 'dbx-pdf-merge-entry d-block',
|
|
18409
18520
|
'[class.dbx-pdf-merge-entry--error]': 'isErrorSignal()',
|
|
18410
|
-
'[class.dbx-pdf-merge-entry--validating]': 'isValidatingSignal()'
|
|
18521
|
+
'[class.dbx-pdf-merge-entry--validating]': 'isValidatingSignal()',
|
|
18522
|
+
'[class.dbx-pdf-merge-entry--ignored]': 'isIgnoredSignal()',
|
|
18523
|
+
'[class.dbx-pdf-merge-entry--encrypted]': 'isEncryptedSignal()'
|
|
18411
18524
|
},
|
|
18412
|
-
imports: [CdkDrag, CdkDragHandle, CdkDragPlaceholder, MatIconModule, MatButtonModule, MatProgressSpinnerModule],
|
|
18525
|
+
imports: [CdkDrag, CdkDragHandle, CdkDragPlaceholder, MatIconModule, MatButtonModule, MatProgressSpinnerModule, DbxChipDirective],
|
|
18413
18526
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
18414
18527
|
standalone: true
|
|
18415
18528
|
}]
|
|
@@ -18420,7 +18533,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
18420
18533
|
*/
|
|
18421
18534
|
class DbxPdfMergeListComponent {
|
|
18422
18535
|
store = inject(DbxPdfMergeEditorStore);
|
|
18423
|
-
entries$ = this.store.
|
|
18536
|
+
entries$ = this.store.displayEntries$;
|
|
18424
18537
|
onDrop(event) {
|
|
18425
18538
|
this.store.moveEntry({ previousIndex: event.previousIndex, currentIndex: event.currentIndex });
|
|
18426
18539
|
}
|
|
@@ -18509,7 +18622,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
18509
18622
|
function openPdfPreviewDialog(matDialog, config) {
|
|
18510
18623
|
return DbxInjectionDialogComponent.openDialog(matDialog, {
|
|
18511
18624
|
...config,
|
|
18512
|
-
showCloseButton: false,
|
|
18513
18625
|
componentConfig: {
|
|
18514
18626
|
componentClass: DbxPdfPreviewComponent,
|
|
18515
18627
|
init: (x) => {
|
|
@@ -18541,42 +18653,97 @@ class DbxPdfMergeEditorComponent {
|
|
|
18541
18653
|
* Single-slot subscription tracker for the deferred Preview path. Replacing the slot cancels any earlier in-flight wait so rapid clicks (or repeated programmatic calls) cannot stack pending dialogs.
|
|
18542
18654
|
*/
|
|
18543
18655
|
_pendingPreview = cleanSubscription();
|
|
18544
|
-
accept = input(DEFAULT_PDF_MERGE_ACCEPT, ...(ngDevMode ? [{ debugName: "accept" }] : /* istanbul ignore next */ []));
|
|
18545
|
-
multiple = input(true, ...(ngDevMode ? [{ debugName: "multiple" }] : /* istanbul ignore next */ []));
|
|
18546
|
-
fileName = input(DEFAULT_MERGED_FILE_NAME, ...(ngDevMode ? [{ debugName: "fileName" }] : /* istanbul ignore next */ []));
|
|
18547
|
-
showDownloadButton = input(false, ...(ngDevMode ? [{ debugName: "showDownloadButton" }] : /* istanbul ignore next */ []));
|
|
18548
|
-
showPreviewButton = input(true, ...(ngDevMode ? [{ debugName: "showPreviewButton" }] : /* istanbul ignore next */ []));
|
|
18549
|
-
downloadButton = input(DEFAULT_DOWNLOAD_BUTTON, ...(ngDevMode ? [{ debugName: "downloadButton" }] : /* istanbul ignore next */ []));
|
|
18550
|
-
/**
|
|
18551
|
-
* When `false`, hides the default "Add files" upload area. Use when projecting one or more {@link DbxPdfMergeEditorFileUploadComponent} slots through `<ng-content>` instead of relying on the unscoped uploader.
|
|
18552
|
-
*/
|
|
18553
|
-
showAddFiles = input(true, ...(ngDevMode ? [{ debugName: "showAddFiles" }] : /* istanbul ignore next */ []));
|
|
18554
18656
|
/**
|
|
18555
|
-
*
|
|
18657
|
+
* Individual inputs. Each takes precedence over the matching field on {@link config} (and the workspace-wide token), with defaults applied in the corresponding `*Signal` computed. See {@link DbxPdfMergeEditorConfig} for field docs.
|
|
18556
18658
|
*/
|
|
18557
|
-
|
|
18659
|
+
accept = input(...(ngDevMode ? [undefined, { debugName: "accept" }] : /* istanbul ignore next */ []));
|
|
18660
|
+
multiple = input(...(ngDevMode ? [undefined, { debugName: "multiple" }] : /* istanbul ignore next */ []));
|
|
18661
|
+
fileName = input(...(ngDevMode ? [undefined, { debugName: "fileName" }] : /* istanbul ignore next */ []));
|
|
18662
|
+
showDownloadButton = input(...(ngDevMode ? [undefined, { debugName: "showDownloadButton" }] : /* istanbul ignore next */ []));
|
|
18663
|
+
showPreviewButton = input(...(ngDevMode ? [undefined, { debugName: "showPreviewButton" }] : /* istanbul ignore next */ []));
|
|
18664
|
+
downloadButton = input(...(ngDevMode ? [undefined, { debugName: "downloadButton" }] : /* istanbul ignore next */ []));
|
|
18665
|
+
showAddFiles = input(...(ngDevMode ? [undefined, { debugName: "showAddFiles" }] : /* istanbul ignore next */ []));
|
|
18666
|
+
showFileList = input(...(ngDevMode ? [undefined, { debugName: "showFileList" }] : /* istanbul ignore next */ []));
|
|
18558
18667
|
/**
|
|
18559
|
-
*
|
|
18668
|
+
* Bundles every editor option into one object (see {@link DbxPdfMergeEditorConfig}). Individual inputs override the matching field here, which in turn overrides the workspace-wide {@link DBX_PDF_MERGE_EDITOR_CONFIG} token.
|
|
18560
18669
|
*/
|
|
18561
18670
|
config = input(...(ngDevMode ? [undefined, { debugName: "config" }] : /* istanbul ignore next */ []));
|
|
18562
18671
|
entriesChanged = output();
|
|
18563
18672
|
/**
|
|
18564
|
-
*
|
|
18673
|
+
* Store-level image-compression default pushed by {@link DbxPdfMergeEditorStoreDirective}. Resolved between the editor's own `config` input and the workspace-wide token so a store-level default flows through the upload dialog's bare editor.
|
|
18674
|
+
*/
|
|
18675
|
+
storeImageCompressionSignal = toSignal(this.store.imageCompression$, { initialValue: undefined });
|
|
18676
|
+
/**
|
|
18677
|
+
* Store-level encryption handling default pushed by {@link DbxPdfMergeEditorStoreDirective}. Resolved between the editor's own `config` input and the workspace-wide token in {@link effectiveConfigSignal}.
|
|
18678
|
+
*/
|
|
18679
|
+
storeEncryptedHandlingSignal = toSignal(this.store.encryptedHandling$, { initialValue: undefined });
|
|
18680
|
+
/**
|
|
18681
|
+
* Merged config — the editor's own `config` input wins over the store-level default (for `imageCompression`), which in turn wins over the workspace-wide token. The individual inputs are resolved on top of this object in the per-field `*Signal` computeds below.
|
|
18565
18682
|
*/
|
|
18566
18683
|
effectiveConfigSignal = computed(() => {
|
|
18567
18684
|
const fromInput = this.config();
|
|
18568
18685
|
const fromToken = this._injectedConfig;
|
|
18686
|
+
const storeImageCompression = this.storeImageCompressionSignal();
|
|
18687
|
+
const storeEncryptedHandling = this.storeEncryptedHandlingSignal();
|
|
18569
18688
|
return {
|
|
18570
|
-
imageCompression: fromInput?.imageCompression ?? fromToken?.imageCompression ?? null,
|
|
18571
|
-
outputSizeLimits: fromInput?.outputSizeLimits ?? fromToken?.outputSizeLimits ?? null
|
|
18689
|
+
imageCompression: fromInput?.imageCompression ?? storeImageCompression ?? fromToken?.imageCompression ?? null,
|
|
18690
|
+
outputSizeLimits: fromInput?.outputSizeLimits ?? fromToken?.outputSizeLimits ?? null,
|
|
18691
|
+
accept: fromInput?.accept ?? fromToken?.accept,
|
|
18692
|
+
multiple: fromInput?.multiple ?? fromToken?.multiple,
|
|
18693
|
+
fileName: fromInput?.fileName ?? fromToken?.fileName,
|
|
18694
|
+
showDownloadButton: fromInput?.showDownloadButton ?? fromToken?.showDownloadButton,
|
|
18695
|
+
showPreviewButton: fromInput?.showPreviewButton ?? fromToken?.showPreviewButton,
|
|
18696
|
+
downloadButton: fromInput?.downloadButton ?? fromToken?.downloadButton,
|
|
18697
|
+
showAddFiles: fromInput?.showAddFiles ?? fromToken?.showAddFiles,
|
|
18698
|
+
showFileList: fromInput?.showFileList ?? fromToken?.showFileList,
|
|
18699
|
+
encryptedHandling: fromInput?.encryptedHandling ?? storeEncryptedHandling ?? fromToken?.encryptedHandling ?? DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING
|
|
18572
18700
|
};
|
|
18573
18701
|
}, ...(ngDevMode ? [{ debugName: "effectiveConfigSignal" }] : /* istanbul ignore next */ []));
|
|
18702
|
+
encryptedHandlingSignal = computed(() => this.effectiveConfigSignal().encryptedHandling ?? DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING, ...(ngDevMode ? [{ debugName: "encryptedHandlingSignal" }] : /* istanbul ignore next */ []));
|
|
18574
18703
|
imageCompressionConfigSignal = computed(() => this.effectiveConfigSignal().imageCompression, ...(ngDevMode ? [{ debugName: "imageCompressionConfigSignal" }] : /* istanbul ignore next */ []));
|
|
18575
18704
|
outputSizeLimitsSignal = computed(() => this.effectiveConfigSignal().outputSizeLimits, ...(ngDevMode ? [{ debugName: "outputSizeLimitsSignal" }] : /* istanbul ignore next */ []));
|
|
18705
|
+
// Per-field resolution: dedicated input → config (input/token) → default. The config signal is
|
|
18706
|
+
// read unconditionally at the top of each computed so the computed tracks it on every run.
|
|
18707
|
+
acceptSignal = computed(() => {
|
|
18708
|
+
const config = this.effectiveConfigSignal();
|
|
18709
|
+
return this.accept() ?? config.accept ?? DEFAULT_PDF_MERGE_ACCEPT;
|
|
18710
|
+
}, ...(ngDevMode ? [{ debugName: "acceptSignal" }] : /* istanbul ignore next */ []));
|
|
18711
|
+
multipleSignal = computed(() => {
|
|
18712
|
+
const config = this.effectiveConfigSignal();
|
|
18713
|
+
return this.multiple() ?? config.multiple ?? true;
|
|
18714
|
+
}, ...(ngDevMode ? [{ debugName: "multipleSignal" }] : /* istanbul ignore next */ []));
|
|
18715
|
+
fileNameSignal = computed(() => {
|
|
18716
|
+
const config = this.effectiveConfigSignal();
|
|
18717
|
+
return this.fileName() ?? config.fileName ?? DEFAULT_MERGED_FILE_NAME;
|
|
18718
|
+
}, ...(ngDevMode ? [{ debugName: "fileNameSignal" }] : /* istanbul ignore next */ []));
|
|
18719
|
+
showDownloadButtonSignal = computed(() => {
|
|
18720
|
+
const config = this.effectiveConfigSignal();
|
|
18721
|
+
return this.showDownloadButton() ?? config.showDownloadButton ?? false;
|
|
18722
|
+
}, ...(ngDevMode ? [{ debugName: "showDownloadButtonSignal" }] : /* istanbul ignore next */ []));
|
|
18723
|
+
showPreviewButtonSignal = computed(() => {
|
|
18724
|
+
const config = this.effectiveConfigSignal();
|
|
18725
|
+
return this.showPreviewButton() ?? config.showPreviewButton ?? true;
|
|
18726
|
+
}, ...(ngDevMode ? [{ debugName: "showPreviewButtonSignal" }] : /* istanbul ignore next */ []));
|
|
18727
|
+
downloadButtonSignal = computed(() => {
|
|
18728
|
+
const config = this.effectiveConfigSignal();
|
|
18729
|
+
return this.downloadButton() ?? config.downloadButton ?? DEFAULT_DOWNLOAD_BUTTON;
|
|
18730
|
+
}, ...(ngDevMode ? [{ debugName: "downloadButtonSignal" }] : /* istanbul ignore next */ []));
|
|
18731
|
+
showAddFilesSignal = computed(() => {
|
|
18732
|
+
const config = this.effectiveConfigSignal();
|
|
18733
|
+
return this.showAddFiles() ?? config.showAddFiles ?? true;
|
|
18734
|
+
}, ...(ngDevMode ? [{ debugName: "showAddFilesSignal" }] : /* istanbul ignore next */ []));
|
|
18735
|
+
showFileListSignal = computed(() => {
|
|
18736
|
+
const config = this.effectiveConfigSignal();
|
|
18737
|
+
return this.showFileList() ?? config.showFileList ?? true;
|
|
18738
|
+
}, ...(ngDevMode ? [{ debugName: "showFileListSignal" }] : /* istanbul ignore next */ []));
|
|
18576
18739
|
warnBytesSignal = computed(() => this.outputSizeLimitsSignal()?.warnBytes, ...(ngDevMode ? [{ debugName: "warnBytesSignal" }] : /* istanbul ignore next */ []));
|
|
18577
18740
|
errorBytesSignal = computed(() => this.outputSizeLimitsSignal()?.errorBytes, ...(ngDevMode ? [{ debugName: "errorBytesSignal" }] : /* istanbul ignore next */ []));
|
|
18578
18741
|
hasReadyEntriesSignal = toSignal(this.store.hasReadyEntries$, { initialValue: false });
|
|
18579
18742
|
entryCountSignal = toSignal(this.store.entryCount$, { initialValue: 0 });
|
|
18743
|
+
/**
|
|
18744
|
+
* Mirrors {@link DbxPdfMergeEditorStore.focusActive$} — `true` while `encryptedHandling === 'focus'` and at least one ready encrypted entry exists. Drives the encrypted-PDF focus banner.
|
|
18745
|
+
*/
|
|
18746
|
+
focusActiveSignal = toSignal(this.store.focusActive$, { initialValue: false });
|
|
18580
18747
|
/**
|
|
18581
18748
|
* Mirrors {@link DbxPdfMergeEditorStore.isValid$}. Defaults to `true` when no validator delegate is registered, so the Preview/Download buttons are gated only by the registered validator's output (if any).
|
|
18582
18749
|
*/
|
|
@@ -18629,8 +18796,8 @@ class DbxPdfMergeEditorComponent {
|
|
|
18629
18796
|
}, ...(ngDevMode ? [{ debugName: "formattedErrorLimitSignal" }] : /* istanbul ignore next */ []));
|
|
18630
18797
|
downloadConfigSignal = computed(() => ({
|
|
18631
18798
|
blob: this.mergeBlobSignal(),
|
|
18632
|
-
fileName: this.
|
|
18633
|
-
buttonStylePair: this.
|
|
18799
|
+
fileName: this.fileNameSignal(),
|
|
18800
|
+
buttonStylePair: this.downloadButtonSignal()
|
|
18634
18801
|
}), ...(ngDevMode ? [{ debugName: "downloadConfigSignal" }] : /* istanbul ignore next */ []));
|
|
18635
18802
|
constructor() {
|
|
18636
18803
|
this.store.entries$.pipe(takeUntilDestroyed()).subscribe((entries) => this.entriesChanged.emit(entries));
|
|
@@ -18638,6 +18805,10 @@ class DbxPdfMergeEditorComponent {
|
|
|
18638
18805
|
const errorBytes = this.errorBytesSignal();
|
|
18639
18806
|
this.store.setOutputSizeLimit(errorBytes);
|
|
18640
18807
|
});
|
|
18808
|
+
effect(() => {
|
|
18809
|
+
const handling = this.encryptedHandlingSignal();
|
|
18810
|
+
this.store.setEncryptedHandling(handling);
|
|
18811
|
+
});
|
|
18641
18812
|
}
|
|
18642
18813
|
async onFiles(event) {
|
|
18643
18814
|
const accepted = event.matchResult.accepted;
|
|
@@ -18673,20 +18844,20 @@ class DbxPdfMergeEditorComponent {
|
|
|
18673
18844
|
openPreviewDialog(blob) {
|
|
18674
18845
|
openPdfPreviewDialog(this._matDialog, {
|
|
18675
18846
|
blob,
|
|
18676
|
-
downloadFileName: this.
|
|
18847
|
+
downloadFileName: this.fileNameSignal(),
|
|
18677
18848
|
width: '90vw',
|
|
18678
18849
|
maxWidth: '1200px',
|
|
18679
18850
|
height: '90vh'
|
|
18680
18851
|
});
|
|
18681
18852
|
}
|
|
18682
18853
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxPdfMergeEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18683
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxPdfMergeEditorComponent, isStandalone: true, selector: "dbx-pdf-merge-editor", inputs: { accept: { classPropertyName: "accept", publicName: "accept", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, fileName: { classPropertyName: "fileName", publicName: "fileName", isSignal: true, isRequired: false, transformFunction: null }, showDownloadButton: { classPropertyName: "showDownloadButton", publicName: "showDownloadButton", isSignal: true, isRequired: false, transformFunction: null }, showPreviewButton: { classPropertyName: "showPreviewButton", publicName: "showPreviewButton", isSignal: true, isRequired: false, transformFunction: null }, downloadButton: { classPropertyName: "downloadButton", publicName: "downloadButton", isSignal: true, isRequired: false, transformFunction: null }, showAddFiles: { classPropertyName: "showAddFiles", publicName: "showAddFiles", isSignal: true, isRequired: false, transformFunction: null }, showFileList: { classPropertyName: "showFileList", publicName: "showFileList", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { entriesChanged: "entriesChanged" }, host: { classAttribute: "dbx-pdf-merge-editor d-block" }, ngImport: i0, template: "@if (
|
|
18854
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxPdfMergeEditorComponent, isStandalone: true, selector: "dbx-pdf-merge-editor", inputs: { accept: { classPropertyName: "accept", publicName: "accept", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, fileName: { classPropertyName: "fileName", publicName: "fileName", isSignal: true, isRequired: false, transformFunction: null }, showDownloadButton: { classPropertyName: "showDownloadButton", publicName: "showDownloadButton", isSignal: true, isRequired: false, transformFunction: null }, showPreviewButton: { classPropertyName: "showPreviewButton", publicName: "showPreviewButton", isSignal: true, isRequired: false, transformFunction: null }, downloadButton: { classPropertyName: "downloadButton", publicName: "downloadButton", isSignal: true, isRequired: false, transformFunction: null }, showAddFiles: { classPropertyName: "showAddFiles", publicName: "showAddFiles", isSignal: true, isRequired: false, transformFunction: null }, showFileList: { classPropertyName: "showFileList", publicName: "showFileList", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { entriesChanged: "entriesChanged" }, host: { classAttribute: "dbx-pdf-merge-editor d-block" }, ngImport: i0, template: "@if (showAddFilesSignal()) {\n <div class=\"dbx-pdf-merge-editor-upload d-block dbx-mb3\">\n <dbx-file-upload [accept]=\"acceptSignal()\" [multiple]=\"multipleSignal()\" (filesChanged)=\"onFiles($event)\" [hint]=\"'Drop PDFs or images here, or click to browse'\" [text]=\"'Add files'\" icon=\"upload_file\"></dbx-file-upload>\n </div>\n}\n<ng-content></ng-content>\n@if (showFileListSignal()) {\n <dbx-pdf-merge-list></dbx-pdf-merge-list>\n}\n@if (focusActiveSignal()) {\n <div class=\"dbx-pdf-merge-editor-encrypted-banner\">\n <mat-icon>lock</mat-icon>\n <span>Encrypted PDF detected \u2014 only the encrypted file will be used; other files are ignored.</span>\n </div>\n}\n@switch (outputSizeStateSignal()) {\n @case ('warn') {\n <div class=\"dbx-pdf-merge-editor-size-warning\">\n <mat-icon>warning</mat-icon>\n <span>Merged file is {{ formattedOutputSizeSignal() }} \u2014 above the recommended {{ formattedWarnLimitSignal() }} limit.</span>\n </div>\n }\n @case ('error') {\n <div class=\"dbx-pdf-merge-editor-size-error\">\n <mat-icon>error</mat-icon>\n <span>Merged file is {{ formattedOutputSizeSignal() }}, exceeds the {{ formattedErrorLimitSignal() }} limit. Remove or compress files to continue.</span>\n </div>\n }\n}\n<div class=\"dbx-pdf-merge-editor-actions\">\n <span class=\"dbx-hint dbx-small\">{{ entryCountSignal() }} file(s)</span>\n <span class=\"dbx-spacer\"></span>\n <dbx-button text=\"Clear\" icon=\"delete\" [disabled]=\"entryCountSignal() === 0\" (buttonClick)=\"onClear()\"></dbx-button>\n @if (showPreviewButtonSignal()) {\n <dbx-button text=\"Preview\" icon=\"picture_as_pdf\" [disabled]=\"!canMergeSignal()\" (buttonClick)=\"onPreview()\"></dbx-button>\n }\n @if (showDownloadButtonSignal() && canMergeSignal()) {\n <dbx-download-blob-button [config]=\"downloadConfigSignal()\"></dbx-download-blob-button>\n }\n</div>\n", dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: DbxButtonComponent, selector: "dbx-button", inputs: ["bar", "type", "buttonStyle", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor", "basic", "tonal", "raised", "stroked", "flat", "iconOnly", "fab", "customContent", "allowClickPropagation", "mode"] }, { kind: "component", type: DbxFileUploadComponent, selector: "dbx-file-upload", inputs: ["config", "buttonStyle", "buttonDisplay", "mode", "text", "icon", "hint", "clickAreaToUpload"], outputs: ["filesChanged"] }, { kind: "component", type: DbxDownloadBlobButtonComponent, selector: "dbx-download-blob-button", inputs: ["config"] }, { kind: "component", type: DbxPdfMergeListComponent, selector: "dbx-pdf-merge-list" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
18684
18855
|
}
|
|
18685
18856
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxPdfMergeEditorComponent, decorators: [{
|
|
18686
18857
|
type: Component,
|
|
18687
18858
|
args: [{ selector: 'dbx-pdf-merge-editor', host: {
|
|
18688
18859
|
class: 'dbx-pdf-merge-editor d-block'
|
|
18689
|
-
}, imports: [MatIconModule, DbxButtonComponent, DbxFileUploadComponent, DbxDownloadBlobButtonComponent, DbxPdfMergeListComponent], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "@if (
|
|
18860
|
+
}, imports: [MatIconModule, DbxButtonComponent, DbxFileUploadComponent, DbxDownloadBlobButtonComponent, DbxPdfMergeListComponent], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "@if (showAddFilesSignal()) {\n <div class=\"dbx-pdf-merge-editor-upload d-block dbx-mb3\">\n <dbx-file-upload [accept]=\"acceptSignal()\" [multiple]=\"multipleSignal()\" (filesChanged)=\"onFiles($event)\" [hint]=\"'Drop PDFs or images here, or click to browse'\" [text]=\"'Add files'\" icon=\"upload_file\"></dbx-file-upload>\n </div>\n}\n<ng-content></ng-content>\n@if (showFileListSignal()) {\n <dbx-pdf-merge-list></dbx-pdf-merge-list>\n}\n@if (focusActiveSignal()) {\n <div class=\"dbx-pdf-merge-editor-encrypted-banner\">\n <mat-icon>lock</mat-icon>\n <span>Encrypted PDF detected \u2014 only the encrypted file will be used; other files are ignored.</span>\n </div>\n}\n@switch (outputSizeStateSignal()) {\n @case ('warn') {\n <div class=\"dbx-pdf-merge-editor-size-warning\">\n <mat-icon>warning</mat-icon>\n <span>Merged file is {{ formattedOutputSizeSignal() }} \u2014 above the recommended {{ formattedWarnLimitSignal() }} limit.</span>\n </div>\n }\n @case ('error') {\n <div class=\"dbx-pdf-merge-editor-size-error\">\n <mat-icon>error</mat-icon>\n <span>Merged file is {{ formattedOutputSizeSignal() }}, exceeds the {{ formattedErrorLimitSignal() }} limit. Remove or compress files to continue.</span>\n </div>\n }\n}\n<div class=\"dbx-pdf-merge-editor-actions\">\n <span class=\"dbx-hint dbx-small\">{{ entryCountSignal() }} file(s)</span>\n <span class=\"dbx-spacer\"></span>\n <dbx-button text=\"Clear\" icon=\"delete\" [disabled]=\"entryCountSignal() === 0\" (buttonClick)=\"onClear()\"></dbx-button>\n @if (showPreviewButtonSignal()) {\n <dbx-button text=\"Preview\" icon=\"picture_as_pdf\" [disabled]=\"!canMergeSignal()\" (buttonClick)=\"onPreview()\"></dbx-button>\n }\n @if (showDownloadButtonSignal() && canMergeSignal()) {\n <dbx-download-blob-button [config]=\"downloadConfigSignal()\"></dbx-download-blob-button>\n }\n</div>\n" }]
|
|
18690
18861
|
}], ctorParameters: () => [], propDecorators: { accept: [{ type: i0.Input, args: [{ isSignal: true, alias: "accept", required: false }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], fileName: [{ type: i0.Input, args: [{ isSignal: true, alias: "fileName", required: false }] }], showDownloadButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showDownloadButton", required: false }] }], showPreviewButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showPreviewButton", required: false }] }], downloadButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "downloadButton", required: false }] }], showAddFiles: [{ type: i0.Input, args: [{ isSignal: true, alias: "showAddFiles", required: false }] }], showFileList: [{ type: i0.Input, args: [{ isSignal: true, alias: "showFileList", required: false }] }], config: [{ type: i0.Input, args: [{ isSignal: true, alias: "config", required: false }] }], entriesChanged: [{ type: i0.Output, args: ["entriesChanged"] }] } });
|
|
18691
18862
|
|
|
18692
18863
|
/**
|
|
@@ -18808,7 +18979,7 @@ class DbxPdfMergeEditorFileUploadComponent {
|
|
|
18808
18979
|
return capacity;
|
|
18809
18980
|
}, ...(ngDevMode ? [{ debugName: "capacitySignal" }] : /* istanbul ignore next */ []));
|
|
18810
18981
|
/**
|
|
18811
|
-
* Live entries owned by this slot, derived from {@link DbxPdfMergeEditorStore.entriesForSlotId$}.
|
|
18982
|
+
* Live entries owned by this slot, derived from {@link DbxPdfMergeEditorStore.entriesForSlotId$}. Each entry carries the `ignored` flag set by the store under the active {@link DbxPdfMergeEncryptedHandling}.
|
|
18812
18983
|
*/
|
|
18813
18984
|
ownedEntries$ = toObservable(this.slotId).pipe(switchMap((slotId) => this.store.entriesForSlotId$(slotId)), shareReplay(1));
|
|
18814
18985
|
ownedEntriesSignal = toSignal(this.ownedEntries$, { initialValue: [] });
|
|
@@ -18884,9 +19055,16 @@ class DbxPdfMergeEditorFileUploadComponent {
|
|
|
18884
19055
|
});
|
|
18885
19056
|
}
|
|
18886
19057
|
/**
|
|
18887
|
-
*
|
|
19058
|
+
* Store-level image-compression default pushed by {@link DbxPdfMergeEditorStoreDirective}. Resolved between the slot's own override and the workspace-wide token.
|
|
19059
|
+
*/
|
|
19060
|
+
storeImageCompressionSignal = toSignal(this.store.imageCompression$, { initialValue: undefined });
|
|
19061
|
+
/**
|
|
19062
|
+
* Resolves the active image compression config: per-slot override → store-level default → workspace-wide DI token. The store tier lets a {@link DbxPdfMergeEditorStoreDirective} `[config]` supply a shared default (e.g. through the upload dialog) while a slot's own `imageCompression` still wins.
|
|
18888
19063
|
*/
|
|
18889
|
-
effectiveImageCompressionSignal = computed(() =>
|
|
19064
|
+
effectiveImageCompressionSignal = computed(() => {
|
|
19065
|
+
const storeImageCompression = this.storeImageCompressionSignal();
|
|
19066
|
+
return this.config()?.imageCompression ?? storeImageCompression ?? this._injectedConfig?.imageCompression ?? null;
|
|
19067
|
+
}, ...(ngDevMode ? [{ debugName: "effectiveImageCompressionSignal" }] : /* istanbul ignore next */ []));
|
|
18890
19068
|
async onFiles(event) {
|
|
18891
19069
|
const accepted = event.matchResult.accepted;
|
|
18892
19070
|
const ownedCount = this.ownedEntriesSignal().length;
|
|
@@ -19268,5 +19446,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
19268
19446
|
* Generated bundle index. Do not edit.
|
|
19269
19447
|
*/
|
|
19270
19448
|
|
|
19271
|
-
export { APP_POPUP_MINIMIZED_WIDTH, APP_POPUP_NORMAL_HEIGHT, APP_POPUP_NORMAL_WIDTH, AbstractDbxClipboardDirective, AbstractDbxErrorWidgetComponent, AbstractDbxFileUploadComponent, AbstractDbxHelpWidgetDirective, AbstractDbxListAccordionViewDirective, AbstractDbxListGridViewDirective, AbstractDbxListViewDirective, AbstractDbxListWrapperDirective, AbstractDbxPartialPresetFilterMenuDirective, AbstractDbxSegueAnchorDirective, AbstractDbxSelectionListViewDirective, AbstractDbxSelectionListWrapperDirective, AbstractDbxValueListItemModifierDirective, AbstractDbxValueListViewDirective, AbstractDbxValueListViewItemComponent, AbstractDbxWidgetComponent, AbstractDialogDirective, AbstractFilterPopoverButtonDirective, AbstractPopoverDirective, AbstractPopoverRefDirective, AbstractPopoverRefWithEventsDirective, AbstractPopupDirective, AbstractPromptConfirmDirective, CompactContextStore, CompactMode, DBX_ACTION_SNACKBAR_DEFAULTS, DBX_ACTION_SNACKBAR_SERVICE_CONFIG, DBX_AVATAR_CONTEXT_DATA_TOKEN, DBX_COLOR_CUSTOM_BG_CSS_CLASS, DBX_COLOR_CUSTOM_TEXT_CSS_CLASS, DBX_DARK_STYLE_CLASS_SUFFIX, DBX_HELP_WIDGET_ENTRY_DATA_TOKEN, DBX_LIST_ACCORDION_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_GRID_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY, DBX_LIST_ITEM_IS_SELECTED_ITEM_MODIFIER_KEY, DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN, DBX_PDF_MERGE_EDITOR_CONFIG, DBX_PDF_MERGE_EDITOR_INITIAL_STATE, DBX_PDF_MERGE_EDITOR_PRESERVE_ENTRIES_ON_SLOT_DESTROY, DBX_PROGRESS_BUTTON_GLOBAL_CONFIG, DBX_ROUTER_ANCHOR_COMPONENTS, DBX_ROUTER_VALUE_LIST_ITEM_MODIFIER_KEY, DBX_THEME_COLORS, DBX_THEME_COLORS_EXTRA, DBX_THEME_COLORS_EXTRA_SECONDARY, DBX_THEME_COLORS_MAIN, DBX_VALUE_LIST_VIEW_ITEM, DBX_WEB_FILE_PREVIEW_SERVICE_ENTRIES_TOKEN, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_COMPONENT_PRESET, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_PRESET_ENTRY, DBX_WEB_PAGE_TITLE_SERVICE_CONFIG, DEFAULT_DBX_CHIP_TONE, DEFAULT_DBX_DETACH_KEY, DEFAULT_DBX_ERROR_SNACKBAR_CONFIG, DEFAULT_DBX_HELP_VIEW_POPOVER_KEY, DEFAULT_DBX_LINKIFY_STRING_TYPE, DEFAULT_DBX_LIST_ACCORDION_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_GRID_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_ITEM_DISABLE_FUNCTION, DEFAULT_DBX_LIST_ITEM_IS_SELECTED_FUNCTION, DEFAULT_DBX_LIST_SCROLL_DISTANCE, DEFAULT_DBX_LIST_THROTTLE_SCROLL, DEFAULT_DBX_LIST_VIEW_META_ICON, DEFAULT_DBX_PROMPT_CONFIRM_DIALOG_CONFIG, DEFAULT_DBX_SELECTION_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_SIDENAV_MENU_ICON, DEFAULT_DBX_STYLE_CONFIG_TOKEN, DEFAULT_DBX_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_DIALOG_WITH_COMPONENT_FUNCTION, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_PREVIEW_COMPONENT_FUNCTION, DEFAULT_ERROR_POPOVER_KEY, DEFAULT_ERROR_WIDGET_CODE, DEFAULT_FILTER_POPOVER_KEY, DEFAULT_IMAGE_BITMAP_TO_BLOB_ENCODER, DEFAULT_IMAGE_JPEG_QUALITY, DEFAULT_LIST_GRID_SIZE_CONFIG, DEFAULT_LIST_WRAPPER_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_LOADING_PROGRESS_DIAMETER, DEFAULT_PDF_MERGE_ACCEPT, DEFAULT_SCREEN_MEDIA_SERVICE_CONFIG, DEFAULT_SNACKBAR_DIRECTIVE_DURATION, DEFAULT_TWO_COLUMNS_MIN_RIGHT_WIDTH, DEFAULT_VALUE_LIST_VIEW_CONTENT_COMPONENT_TRACK_BY_FUNCTION, DbxAccordionHeaderHeightDirective, DbxActionConfirmDirective, DbxActionDialogDirective, DbxActionErrorDirective, DbxActionKeyTriggerDirective, DbxActionLoadingContextDirective, DbxActionModule, DbxActionPopoverDirective, DbxActionSnackbarComponent, DbxActionSnackbarDirective, DbxActionSnackbarErrorDirective, DbxActionSnackbarModule, DbxActionSnackbarService, DbxActionTransitionSafetyDirective, DbxActionUIRouterTransitionSafetyDialogComponent, DbxAnchorComponent, DbxAnchorContentComponent, DbxAnchorIconComponent, DbxAnchorListComponent, DbxAngularRouterSegueAnchorComponent, DbxAvatarComponent, DbxAvatarViewService, DbxAvatarViewServiceConfig, DbxBarDirective, DbxBarHeaderComponent, DbxBarLayoutModule, DbxBasicLoadingComponent, DbxBodyDirective, DbxButtonComponent, DbxButtonModule, DbxButtonSpacerDirective, DbxCardBoxComponent, DbxCardBoxContainerDirective, DbxCardBoxLayoutModule, DbxChipDirective, DbxChipListComponent, DbxClickToCopyTextComponent, DbxClickToCopyTextDirective, DbxColorDirective, DbxColorService, DbxColorServiceConfig, DbxColumnLayoutModule, DbxCompactDirective, DbxCompactLayoutModule, DbxContentBorderDirective, DbxContentBoxDirective, DbxContentContainerDirective, DbxContentDirective, DbxContentElevateDirective, DbxContentLayoutModule, DbxContentPageDirective, DbxContentPitDirective, DbxDetachContentComponent, DbxDetachControlButtonsComponent, DbxDetachController, DbxDetachControlsComponent, DbxDetachInitDirective, DbxDetachInteractionModule, DbxDetachOutletComponent, DbxDetachOverlayComponent, DbxDetachService, DbxDetachWindowState, DbxDetailBlockComponent, DbxDetailBlockHeaderComponent, DbxDialogContentCloseComponent, DbxDialogContentDirective, DbxDialogContentFooterComponent, DbxDialogInteractionModule, DbxDialogModule, DbxDownloadBlobButtonComponent, DbxDownloadTextViewComponent, DbxEmbedComponent, DbxErrorComponent, DbxErrorDefaultErrorWidgetComponent, DbxErrorDetailsComponent, DbxErrorPopoverComponent, DbxErrorSnackbarComponent, DbxErrorSnackbarService, DbxErrorViewComponent, DbxErrorWidgetService, DbxErrorWidgetViewComponent, DbxFileUploadActionCompatable, DbxFileUploadActionSyncDirective, DbxFileUploadAreaComponent, DbxFileUploadButtonComponent, DbxFileUploadComponent, DbxFilterInteractionModule, DbxFilterPopoverButtonComponent, DbxFilterPopoverComponent, DbxFilterWrapperComponent, DbxFlagComponent, DbxFlagLayoutModule, DbxFlagPromptComponent, DbxFlexGroupDirective, DbxFlexLayoutModule, DbxFlexSizeDirective, DbxHelpContextDirective, DbxHelpContextService, DbxHelpViewListComponent, DbxHelpViewListEntryComponent, DbxHelpViewPopoverButtonComponent, DbxHelpViewPopoverComponent, DbxHelpWidgetService, DbxHelpWidgetServiceConfig, DbxIconButtonComponent, DbxIconButtonModule, DbxIconItemComponent, DbxIconSpacerDirective, DbxIconTileComponent, DbxIconTileDirective, DbxIfSidenavDisplayModeDirective, DbxIframeComponent, DbxInjectionDialogComponent, DbxInteractionModule, DbxIntroActionSectionComponent, DbxLabelBlockComponent, DbxLayoutModule, DbxLinkComponent, DbxLinkifyComponent, DbxLinkifyService, DbxLinkifyServiceConfig, DbxListAccordionViewComponentImportsModule, DbxListComponent, DbxListEmptyContentComponent, DbxListGridViewComponentImportsModule, DbxListInternalContentDirective, DbxListItemAnchorModifierDirective, DbxListItemDisableRippleModifierDirective, DbxListItemIsSelectedModifierDirective, DbxListModifierModule, DbxListModule, DbxListTitleGroupDirective, DbxListView, DbxListViewMetaIconComponent, DbxListViewWrapper, DbxListWrapperComponentImportsModule, DbxLoadingComponent, DbxLoadingErrorDirective, DbxLoadingModule, DbxLoadingProgressComponent, DbxModelObjectStateService, actions as DbxModelStateActions, model_actions as DbxModelStateModelActions, DbxModelTrackerService, DbxModelTypesService, DbxModelViewTrackerStorage, DbxNavbarComponent, DbxNumberWithLimitComponent, DbxOneColumnComponent, DbxOneColumnLayoutModule, DbxPagebarComponent, DbxPartialPresetFilterListComponent, DbxPartialPresetFilterMenuComponent, DbxPdfMergeEditorComponent, DbxPdfMergeEditorFileUploadComponent, DbxPdfMergeEditorFileUploadHasStateDirective, DbxPdfMergeEditorFileUploadValidatorDirective, DbxPdfMergeEditorStore, DbxPdfMergeEditorStoreDirective, DbxPdfMergeEntryComponent, DbxPdfMergeListComponent, DbxPdfMergeUploadActionDirective, DbxPdfMergeUploadButtonDirective, DbxPdfMergeUploadDialogComponent, DbxPdfPreviewComponent, DbxPopoverCloseButtonComponent, DbxPopoverComponent, DbxPopoverComponentController, DbxPopoverContentComponent, DbxPopoverController, DbxPopoverControlsDirective, DbxPopoverCoordinatorComponent, DbxPopoverCoordinatorService, DbxPopoverHeaderComponent, DbxPopoverInteractionContentModule, DbxPopoverInteractionModule, DbxPopoverScrollContentDirective, DbxPopoverService, DbxPopupComponent, DbxPopupComponentController, DbxPopupContentComponent, DbxPopupControlButtonsComponent, DbxPopupController, DbxPopupControlsComponent, DbxPopupCoordinatorComponent, DbxPopupCoordinatorService, DbxPopupInteractionModule, DbxPopupService, DbxPopupWindowState, DbxPresetFilterListComponent, DbxPresetFilterMenuComponent, DbxProgressBarButtonComponent, DbxProgressButtonsModule, DbxProgressSpinnerButtonComponent, DbxPromptBoxDirective, DbxPromptComponent, DbxPromptConfirm, DbxPromptConfirmButtonDirective, DbxPromptConfirmComponent, DbxPromptConfirmDialogComponent, DbxPromptConfirmDirective, DbxPromptModule, DbxPromptPageComponent, DbxReadableErrorModule, DbxResizedDirective, DbxRouterAnchorModule, DbxRouterLayoutModule, DbxRouterSidenavModule, DbxRouterWebProviderConfig, DbxScreenMediaService, DbxScreenMediaServiceConfig, DbxSectionComponent, DbxSectionHeaderComponent, DbxSectionLayoutModule, DbxSectionPageComponent, DbxSelectionValueListViewComponent, DbxSelectionValueListViewComponentImportsModule, DbxSelectionValueListViewContentComponent, DbxSetStyleDirective, DbxSidenavButtonComponent, DbxSidenavComponent, DbxSidenavPageComponent, DbxSidenavPagebarComponent, DbxSpacerDirective, DbxStepBlockComponent, DbxStructureDirective, DbxStructureModule, DbxStyleBodyDirective, DbxStyleDirective, DbxStyleLayoutModule, DbxStyleService, DbxSubSectionComponent, DbxTextChipsComponent, DbxTextColorDirective, DbxTextModule, DbxTwoBlockComponent, DbxTwoColumnBackDirective, DbxTwoColumnColumnHeadDirective, DbxTwoColumnComponent, DbxTwoColumnContextDirective, DbxTwoColumnFullLeftDirective, DbxTwoColumnLayoutModule, DbxTwoColumnRightComponent, DbxTwoColumnSrefDirective, DbxTwoColumnSrefShowRightDirective, DbxUIRouterSegueAnchorComponent, DbxUnitedStatesAddressComponent, DbxValueListAccordionViewComponent, DbxValueListAccordionViewContentComponent, DbxValueListAccordionViewContentGroupComponent, DbxValueListGridSizeDirective, DbxValueListGridViewComponent, DbxValueListGridViewContentComponent, DbxValueListGridViewContentGroupComponent, DbxValueListItemModifier, DbxValueListItemModifierDirective, DbxValueListView, DbxValueListViewComponent, DbxValueListViewComponentImportsModule, DbxValueListViewContentComponent, DbxValueListViewContentGroupComponent, DbxValueListViewGroupDelegate, DbxWebFilePreviewComponent, DbxWebFilePreviewService, DbxWebModule, DbxWebPageTitleInfoDirective, DbxWebPageTitleService, DbxWidgetListGridComponent, DbxWidgetListGridViewComponent, DbxWidgetListGridViewItemComponent, DbxWidgetService, DbxWidgetViewComponent, DbxWindowKeyDownListenerDirective, DbxZipBlobPreviewComponent, DbxZipPreviewComponent, PDF_MERGE_RESULT_MIME_TYPE, PopoverPositionStrategy, PopupGlobalPositionStrategy, SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP, SIDE_NAV_DISPLAY_MODE_ORDER, SideNavDisplayMode, TRACK_BY_MODEL_ID, TRACK_BY_MODEL_KEY, TwoColumnsContextStore, UNKNOWN_ERROR_WIDGET_CODE, addConfigToValueListItems, allDbxModelViewTrackerEventModelKeys, allDbxModelViewTrackerEventSetModelKeys, buildPdfMergeEntry, buildPdfMergeEntrySync, catchErrorServerParams, classifyPdfMergeFile, compactModeFromInput, compareScreenMediaWidthTypes, compressImageFile, convertServerErrorParams, convertToPOJOServerErrorResponse, convertToServerErrorResponse, copyToClipboardFunction, dbxColorBackground, dbxListAccordionViewComponentImportsAndExports, dbxListGridViewComponentImportsAndExports, dbxPresetFilterMenuButtonIconObservable, dbxPresetFilterMenuButtonTextObservable, dbxStyleClassCleanSuffix, dbxThemeColorCssToken, dbxThemeColorCssTokenVar, dbxThemeColorCssVariable, dbxThemeColorCssVariableVar, dbxValueListItemDecisionFunction, dbxValueListItemKeyForItemValue, dbxWebDefaultPageTitleDelegate, dbxZipBlobPreviewEntryTreeFromEntries, defaultDbxModelViewTrackerStorageAccessorFactory, defaultDbxValueListViewGroupDelegate, defaultDbxValueListViewGroupValuesFunction, disableRightClickInCdkBackdrop, fileAcceptFilterTypeStringArray, fileAcceptFunction, fileAcceptString, fileArrayAcceptMatchFunction, flattenAccordionGroups, formatPdfMergeEntrySize, index as fromDbxModel, injectCopyToClipboardFunction, injectCopyToClipboardFunctionWithSnackbarMessage, isDbxColorConfig, listItemModifier, makeDbxActionSnackbarDisplayConfigGeneratorFunction, mapCompactModeObs, mapValuesToValuesListItemConfigObs, mergePdfMergeEntries, index$1 as onDbxModel, openEmbedDialog, openIframeDialog, openPdfPreviewDialog, openZipPreviewDialog, overrideClickElementEffect, provideDbxDetachController, provideDbxFileUploadActionCompatable, provideDbxHelpServices, provideDbxLinkify, provideDbxListView, provideDbxListViewWrapper, provideDbxModelService, provideDbxPdfMergeEditorConfig, provideDbxPdfMergeEditorPreserveEntriesOnSlotDestroy, provideDbxProgressButtonGlobalConfig, provideDbxPromptConfirm, provideDbxRouterWebAngularRouterProviderConfig, provideDbxRouterWebUiRouterProviderConfig, provideDbxScreenMediaService, provideDbxStyleService, provideDbxValueListView, provideDbxValueListViewGroupDelegate, provideDbxValueListViewModifier, provideDbxWebFilePreviewServiceEntries, provideDbxWebPageTitleService, provideTwoColumnsContext, registerHelpContextKeysWithDbxHelpContextService, resizeSignal, resolveSideNavDisplayMode, sanitizeDbxDialogContentConfig, screenMediaWidthTypeIsActive, trackByModelKeyRef, trackByUniqueIdentifier, validatePdfMergeEntry };
|
|
19449
|
+
export { APP_POPUP_MINIMIZED_WIDTH, APP_POPUP_NORMAL_HEIGHT, APP_POPUP_NORMAL_WIDTH, AbstractDbxClipboardDirective, AbstractDbxErrorWidgetComponent, AbstractDbxFileUploadComponent, AbstractDbxHelpWidgetDirective, AbstractDbxListAccordionViewDirective, AbstractDbxListGridViewDirective, AbstractDbxListViewDirective, AbstractDbxListWrapperDirective, AbstractDbxPartialPresetFilterMenuDirective, AbstractDbxSegueAnchorDirective, AbstractDbxSelectionListViewDirective, AbstractDbxSelectionListWrapperDirective, AbstractDbxValueListItemModifierDirective, AbstractDbxValueListViewDirective, AbstractDbxValueListViewItemComponent, AbstractDbxWidgetComponent, AbstractDialogDirective, AbstractFilterPopoverButtonDirective, AbstractPopoverDirective, AbstractPopoverRefDirective, AbstractPopoverRefWithEventsDirective, AbstractPopupDirective, AbstractPromptConfirmDirective, CompactContextStore, CompactMode, DBX_ACTION_SNACKBAR_DEFAULTS, DBX_ACTION_SNACKBAR_SERVICE_CONFIG, DBX_AVATAR_CONTEXT_DATA_TOKEN, DBX_COLOR_CUSTOM_BG_CSS_CLASS, DBX_COLOR_CUSTOM_TEXT_CSS_CLASS, DBX_DARK_STYLE_CLASS_SUFFIX, DBX_HELP_WIDGET_ENTRY_DATA_TOKEN, DBX_LIST_ACCORDION_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_GRID_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY, DBX_LIST_ITEM_IS_SELECTED_ITEM_MODIFIER_KEY, DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN, DBX_PDF_MERGE_EDITOR_CONFIG, DBX_PDF_MERGE_EDITOR_INITIAL_STATE, DBX_PDF_MERGE_EDITOR_PRESERVE_ENTRIES_ON_SLOT_DESTROY, DBX_PDF_MERGE_ENCRYPTED_ERROR_MESSAGE, DBX_PROGRESS_BUTTON_GLOBAL_CONFIG, DBX_ROUTER_ANCHOR_COMPONENTS, DBX_ROUTER_VALUE_LIST_ITEM_MODIFIER_KEY, DBX_THEME_COLORS, DBX_THEME_COLORS_EXTRA, DBX_THEME_COLORS_EXTRA_SECONDARY, DBX_THEME_COLORS_MAIN, DBX_VALUE_LIST_VIEW_ITEM, DBX_WEB_FILE_PREVIEW_SERVICE_ENTRIES_TOKEN, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_COMPONENT_PRESET, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_PRESET_ENTRY, DBX_WEB_PAGE_TITLE_SERVICE_CONFIG, DEFAULT_DBX_CHIP_TONE, DEFAULT_DBX_DETACH_KEY, DEFAULT_DBX_ERROR_SNACKBAR_CONFIG, DEFAULT_DBX_HELP_VIEW_POPOVER_KEY, DEFAULT_DBX_LINKIFY_STRING_TYPE, DEFAULT_DBX_LIST_ACCORDION_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_GRID_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_ITEM_DISABLE_FUNCTION, DEFAULT_DBX_LIST_ITEM_IS_SELECTED_FUNCTION, DEFAULT_DBX_LIST_SCROLL_DISTANCE, DEFAULT_DBX_LIST_THROTTLE_SCROLL, DEFAULT_DBX_LIST_VIEW_META_ICON, DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING, DEFAULT_DBX_PROMPT_CONFIRM_DIALOG_CONFIG, DEFAULT_DBX_SELECTION_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_SIDENAV_MENU_ICON, DEFAULT_DBX_STYLE_CONFIG_TOKEN, DEFAULT_DBX_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_DIALOG_WITH_COMPONENT_FUNCTION, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_PREVIEW_COMPONENT_FUNCTION, DEFAULT_ERROR_POPOVER_KEY, DEFAULT_ERROR_WIDGET_CODE, DEFAULT_FILTER_POPOVER_KEY, DEFAULT_IMAGE_BITMAP_TO_BLOB_ENCODER, DEFAULT_IMAGE_JPEG_QUALITY, DEFAULT_LIST_GRID_SIZE_CONFIG, DEFAULT_LIST_WRAPPER_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_LOADING_PROGRESS_DIAMETER, DEFAULT_PDF_MERGE_ACCEPT, DEFAULT_SCREEN_MEDIA_SERVICE_CONFIG, DEFAULT_SNACKBAR_DIRECTIVE_DURATION, DEFAULT_TWO_COLUMNS_MIN_RIGHT_WIDTH, DEFAULT_VALUE_LIST_VIEW_CONTENT_COMPONENT_TRACK_BY_FUNCTION, DbxAccordionHeaderHeightDirective, DbxActionConfirmDirective, DbxActionDialogDirective, DbxActionErrorDirective, DbxActionKeyTriggerDirective, DbxActionLoadingContextDirective, DbxActionModule, DbxActionPopoverDirective, DbxActionSnackbarComponent, DbxActionSnackbarDirective, DbxActionSnackbarErrorDirective, DbxActionSnackbarModule, DbxActionSnackbarService, DbxActionTransitionSafetyDirective, DbxActionUIRouterTransitionSafetyDialogComponent, DbxAnchorComponent, DbxAnchorContentComponent, DbxAnchorIconComponent, DbxAnchorListComponent, DbxAngularRouterSegueAnchorComponent, DbxAvatarComponent, DbxAvatarViewService, DbxAvatarViewServiceConfig, DbxBarDirective, DbxBarHeaderComponent, DbxBarLayoutModule, DbxBasicLoadingComponent, DbxBodyDirective, DbxButtonComponent, DbxButtonModule, DbxButtonSpacerDirective, DbxCardBoxComponent, DbxCardBoxContainerDirective, DbxCardBoxLayoutModule, DbxChipDirective, DbxChipListComponent, DbxClickToCopyTextComponent, DbxClickToCopyTextDirective, DbxColorDirective, DbxColorService, DbxColorServiceConfig, DbxColumnLayoutModule, DbxCompactDirective, DbxCompactLayoutModule, DbxContentBorderDirective, DbxContentBoxDirective, DbxContentContainerDirective, DbxContentDirective, DbxContentElevateDirective, DbxContentLayoutModule, DbxContentPageDirective, DbxContentPitDirective, DbxDetachContentComponent, DbxDetachControlButtonsComponent, DbxDetachController, DbxDetachControlsComponent, DbxDetachInitDirective, DbxDetachInteractionModule, DbxDetachOutletComponent, DbxDetachOverlayComponent, DbxDetachService, DbxDetachWindowState, DbxDetailBlockComponent, DbxDetailBlockHeaderComponent, DbxDialogContentCloseComponent, DbxDialogContentDirective, DbxDialogContentFooterComponent, DbxDialogInteractionModule, DbxDialogModule, DbxDownloadBlobButtonComponent, DbxDownloadTextViewComponent, DbxEmbedComponent, DbxErrorComponent, DbxErrorDefaultErrorWidgetComponent, DbxErrorDetailsComponent, DbxErrorPopoverComponent, DbxErrorSnackbarComponent, DbxErrorSnackbarService, DbxErrorViewComponent, DbxErrorWidgetService, DbxErrorWidgetViewComponent, DbxFileUploadActionCompatable, DbxFileUploadActionSyncDirective, DbxFileUploadAreaComponent, DbxFileUploadButtonComponent, DbxFileUploadComponent, DbxFilterInteractionModule, DbxFilterPopoverButtonComponent, DbxFilterPopoverComponent, DbxFilterWrapperComponent, DbxFlagComponent, DbxFlagLayoutModule, DbxFlagPromptComponent, DbxFlexGroupDirective, DbxFlexLayoutModule, DbxFlexSizeDirective, DbxHelpContextDirective, DbxHelpContextService, DbxHelpViewListComponent, DbxHelpViewListEntryComponent, DbxHelpViewPopoverButtonComponent, DbxHelpViewPopoverComponent, DbxHelpWidgetService, DbxHelpWidgetServiceConfig, DbxIconButtonComponent, DbxIconButtonModule, DbxIconItemComponent, DbxIconSpacerDirective, DbxIconTileComponent, DbxIconTileDirective, DbxIfSidenavDisplayModeDirective, DbxIframeComponent, DbxInjectionDialogComponent, DbxInteractionModule, DbxIntroActionSectionComponent, DbxLabelBlockComponent, DbxLayoutModule, DbxLinkComponent, DbxLinkifyComponent, DbxLinkifyService, DbxLinkifyServiceConfig, DbxListAccordionViewComponentImportsModule, DbxListComponent, DbxListEmptyContentComponent, DbxListGridViewComponentImportsModule, DbxListInternalContentDirective, DbxListItemAnchorModifierDirective, DbxListItemDisableRippleModifierDirective, DbxListItemIsSelectedModifierDirective, DbxListModifierModule, DbxListModule, DbxListTitleGroupDirective, DbxListView, DbxListViewMetaIconComponent, DbxListViewWrapper, DbxListWrapperComponentImportsModule, DbxLoadingComponent, DbxLoadingErrorDirective, DbxLoadingModule, DbxLoadingProgressComponent, DbxModelObjectStateService, actions as DbxModelStateActions, model_actions as DbxModelStateModelActions, DbxModelTrackerService, DbxModelTypesService, DbxModelViewTrackerStorage, DbxNavbarComponent, DbxNumberWithLimitComponent, DbxOneColumnComponent, DbxOneColumnLayoutModule, DbxPagebarComponent, DbxPartialPresetFilterListComponent, DbxPartialPresetFilterMenuComponent, DbxPdfMergeEditorComponent, DbxPdfMergeEditorFileUploadComponent, DbxPdfMergeEditorFileUploadHasStateDirective, DbxPdfMergeEditorFileUploadValidatorDirective, DbxPdfMergeEditorStore, DbxPdfMergeEditorStoreDirective, DbxPdfMergeEntryComponent, DbxPdfMergeListComponent, DbxPdfMergeUploadActionDirective, DbxPdfMergeUploadButtonDirective, DbxPdfMergeUploadDialogComponent, DbxPdfPreviewComponent, DbxPopoverCloseButtonComponent, DbxPopoverComponent, DbxPopoverComponentController, DbxPopoverContentComponent, DbxPopoverController, DbxPopoverControlsDirective, DbxPopoverCoordinatorComponent, DbxPopoverCoordinatorService, DbxPopoverHeaderComponent, DbxPopoverInteractionContentModule, DbxPopoverInteractionModule, DbxPopoverScrollContentDirective, DbxPopoverService, DbxPopupComponent, DbxPopupComponentController, DbxPopupContentComponent, DbxPopupControlButtonsComponent, DbxPopupController, DbxPopupControlsComponent, DbxPopupCoordinatorComponent, DbxPopupCoordinatorService, DbxPopupInteractionModule, DbxPopupService, DbxPopupWindowState, DbxPresetFilterListComponent, DbxPresetFilterMenuComponent, DbxProgressBarButtonComponent, DbxProgressButtonsModule, DbxProgressSpinnerButtonComponent, DbxPromptBoxDirective, DbxPromptComponent, DbxPromptConfirm, DbxPromptConfirmButtonDirective, DbxPromptConfirmComponent, DbxPromptConfirmDialogComponent, DbxPromptConfirmDirective, DbxPromptModule, DbxPromptPageComponent, DbxReadableErrorModule, DbxResizedDirective, DbxRouterAnchorModule, DbxRouterLayoutModule, DbxRouterSidenavModule, DbxRouterWebProviderConfig, DbxScreenMediaService, DbxScreenMediaServiceConfig, DbxSectionComponent, DbxSectionHeaderComponent, DbxSectionLayoutModule, DbxSectionPageComponent, DbxSelectionValueListViewComponent, DbxSelectionValueListViewComponentImportsModule, DbxSelectionValueListViewContentComponent, DbxSetStyleDirective, DbxSidenavButtonComponent, DbxSidenavComponent, DbxSidenavPageComponent, DbxSidenavPagebarComponent, DbxSpacerDirective, DbxStepBlockComponent, DbxStructureDirective, DbxStructureModule, DbxStyleBodyDirective, DbxStyleDirective, DbxStyleLayoutModule, DbxStyleService, DbxSubSectionComponent, DbxTextChipsComponent, DbxTextColorDirective, DbxTextModule, DbxTwoBlockComponent, DbxTwoColumnBackDirective, DbxTwoColumnColumnHeadDirective, DbxTwoColumnComponent, DbxTwoColumnContextDirective, DbxTwoColumnFullLeftDirective, DbxTwoColumnLayoutModule, DbxTwoColumnRightComponent, DbxTwoColumnSrefDirective, DbxTwoColumnSrefShowRightDirective, DbxUIRouterSegueAnchorComponent, DbxUnitedStatesAddressComponent, DbxValueListAccordionViewComponent, DbxValueListAccordionViewContentComponent, DbxValueListAccordionViewContentGroupComponent, DbxValueListGridSizeDirective, DbxValueListGridViewComponent, DbxValueListGridViewContentComponent, DbxValueListGridViewContentGroupComponent, DbxValueListItemModifier, DbxValueListItemModifierDirective, DbxValueListView, DbxValueListViewComponent, DbxValueListViewComponentImportsModule, DbxValueListViewContentComponent, DbxValueListViewContentGroupComponent, DbxValueListViewGroupDelegate, DbxWebFilePreviewComponent, DbxWebFilePreviewService, DbxWebModule, DbxWebPageTitleInfoDirective, DbxWebPageTitleService, DbxWidgetListGridComponent, DbxWidgetListGridViewComponent, DbxWidgetListGridViewItemComponent, DbxWidgetService, DbxWidgetViewComponent, DbxWindowKeyDownListenerDirective, DbxZipBlobPreviewComponent, DbxZipPreviewComponent, PDF_MERGE_RESULT_MIME_TYPE, PopoverPositionStrategy, PopupGlobalPositionStrategy, SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP, SIDE_NAV_DISPLAY_MODE_ORDER, SideNavDisplayMode, TRACK_BY_MODEL_ID, TRACK_BY_MODEL_KEY, TwoColumnsContextStore, UNKNOWN_ERROR_WIDGET_CODE, addConfigToValueListItems, allDbxModelViewTrackerEventModelKeys, allDbxModelViewTrackerEventSetModelKeys, buildPdfMergeEntry, buildPdfMergeEntrySync, catchErrorServerParams, classifyPdfMergeFile, compactModeFromInput, compareScreenMediaWidthTypes, compressImageFile, convertServerErrorParams, convertToPOJOServerErrorResponse, convertToServerErrorResponse, copyToClipboardFunction, dbxColorBackground, dbxListAccordionViewComponentImportsAndExports, dbxListGridViewComponentImportsAndExports, dbxPresetFilterMenuButtonIconObservable, dbxPresetFilterMenuButtonTextObservable, dbxStyleClassCleanSuffix, dbxThemeColorCssToken, dbxThemeColorCssTokenVar, dbxThemeColorCssVariable, dbxThemeColorCssVariableVar, dbxValueListItemDecisionFunction, dbxValueListItemKeyForItemValue, dbxWebDefaultPageTitleDelegate, dbxZipBlobPreviewEntryTreeFromEntries, defaultDbxModelViewTrackerStorageAccessorFactory, defaultDbxValueListViewGroupDelegate, defaultDbxValueListViewGroupValuesFunction, disableRightClickInCdkBackdrop, fileAcceptFilterTypeStringArray, fileAcceptFunction, fileAcceptString, fileArrayAcceptMatchFunction, flattenAccordionGroups, formatPdfMergeEntrySize, index as fromDbxModel, injectCopyToClipboardFunction, injectCopyToClipboardFunctionWithSnackbarMessage, isDbxColorConfig, listItemModifier, makeDbxActionSnackbarDisplayConfigGeneratorFunction, mapCompactModeObs, mapValuesToValuesListItemConfigObs, mergePdfMergeEntries, index$1 as onDbxModel, openEmbedDialog, openIframeDialog, openPdfPreviewDialog, openZipPreviewDialog, overrideClickElementEffect, provideDbxDetachController, provideDbxFileUploadActionCompatable, provideDbxHelpServices, provideDbxLinkify, provideDbxListView, provideDbxListViewWrapper, provideDbxModelService, provideDbxPdfMergeEditorConfig, provideDbxPdfMergeEditorPreserveEntriesOnSlotDestroy, provideDbxProgressButtonGlobalConfig, provideDbxPromptConfirm, provideDbxRouterWebAngularRouterProviderConfig, provideDbxRouterWebUiRouterProviderConfig, provideDbxScreenMediaService, provideDbxStyleService, provideDbxValueListView, provideDbxValueListViewGroupDelegate, provideDbxValueListViewModifier, provideDbxWebFilePreviewServiceEntries, provideDbxWebPageTitleService, provideTwoColumnsContext, registerHelpContextKeysWithDbxHelpContextService, resizeSignal, resolveSideNavDisplayMode, sanitizeDbxDialogContentConfig, screenMediaWidthTypeIsActive, trackByModelKeyRef, trackByUniqueIdentifier, validatePdfMergeEntry };
|
|
19272
19450
|
//# sourceMappingURL=dereekb-dbx-web.mjs.map
|