@acorex-platform/module-document-management-client 0.0.30 → 0.0.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/{acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-LQjccofO.mjs → acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-Of1L93HC.mjs} +217 -93
- package/fesm2022/acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-Of1L93HC.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-document-management-client-attachment-view-skeleton.component-CEC9HdMa.mjs → acorex-platform-module-document-management-client-attachment-view-skeleton.component-BnPCZNr3.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-attachment-view-skeleton.component-CEC9HdMa.mjs.map → acorex-platform-module-document-management-client-attachment-view-skeleton.component-BnPCZNr3.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-attachment-widget.component-CBpWl_FH.mjs → acorex-platform-module-document-management-client-attachment-widget.component-B95uSss7.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-attachment-widget.component-CBpWl_FH.mjs.map → acorex-platform-module-document-management-client-attachment-widget.component-B95uSss7.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entities-document-shortcut.mjs +154 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entities-document-shortcut.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entities-document-type.mjs +321 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entities-document-type.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entities-document.mjs +244 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entities-document.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entities-folder.mjs +236 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entities-folder.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-acorex-platform-module-document-management-client-contracts-entity-catalog-Bl6_lO9-.mjs +86 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-acorex-platform-module-document-management-client-contracts-entity-catalog-Bl6_lO9-.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-document-shortcut.entity-BpGBX1CD.mjs +90 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-document-shortcut.entity-BpGBX1CD.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-document-type.entity-D0-wHSOd.mjs +257 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-document-type.entity-D0-wHSOd.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-document.entity-BB3250Gc.mjs +180 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-document.entity-BB3250Gc.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-folder.entity-BWplP1j6.mjs +172 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog-folder.entity-BWplP1j6.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog.mjs +2 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts-entity-catalog.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-contracts.mjs +5 -4
- package/fesm2022/acorex-platform-module-document-management-client-contracts.mjs.map +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-drive-choose.component-Deduhl99.mjs → acorex-platform-module-document-management-client-drive-choose.component-Bivzrex0.mjs} +4 -4
- package/fesm2022/{acorex-platform-module-document-management-client-drive-choose.component-Deduhl99.mjs.map → acorex-platform-module-document-management-client-drive-choose.component-Bivzrex0.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-large-icons-view-skeleton.component-wZG913_E.mjs → acorex-platform-module-document-management-client-large-icons-view-skeleton.component-3C4LEllG.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-large-icons-view-skeleton.component-wZG913_E.mjs.map → acorex-platform-module-document-management-client-large-icons-view-skeleton.component-3C4LEllG.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-large-icons-view.component-Bv5JFRtL.mjs → acorex-platform-module-document-management-client-large-icons-view.component-BEZhcmxY.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-large-icons-view.component-Bv5JFRtL.mjs.map → acorex-platform-module-document-management-client-large-icons-view.component-BEZhcmxY.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-large-tiles-view.component-DTEIhPcT.mjs → acorex-platform-module-document-management-client-large-tiles-view.component-TjkSRbCp.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-large-tiles-view.component-DTEIhPcT.mjs.map → acorex-platform-module-document-management-client-large-tiles-view.component-TjkSRbCp.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-document-management-client-link-dialog.component-BsXNSpO7.mjs +77 -0
- package/fesm2022/acorex-platform-module-document-management-client-link-dialog.component-BsXNSpO7.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-document-management-client-list-view-skeleton.component-C3-7rgTu.mjs → acorex-platform-module-document-management-client-list-view-skeleton.component-Bhispx1H.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-list-view-skeleton.component-C3-7rgTu.mjs.map → acorex-platform-module-document-management-client-list-view-skeleton.component-Bhispx1H.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-list-view.component-_r7VP4i8.mjs → acorex-platform-module-document-management-client-list-view.component-BW9FdY7r.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-list-view.component-_r7VP4i8.mjs.map → acorex-platform-module-document-management-client-list-view.component-BW9FdY7r.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-document-management-client-local-entities.mjs +32 -0
- package/fesm2022/acorex-platform-module-document-management-client-local-entities.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-document-management-client-open-document.command-BbMZf6zo.mjs → acorex-platform-module-document-management-client-open-document.command-BdXRh2Td.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-open-document.command-BbMZf6zo.mjs.map → acorex-platform-module-document-management-client-open-document.command-BdXRh2Td.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-share-dialog.component-D0D75M7u.mjs → acorex-platform-module-document-management-client-share-dialog.component-C1x8iBn3.mjs} +33 -28
- package/fesm2022/acorex-platform-module-document-management-client-share-dialog.component-C1x8iBn3.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-document-management-client-share-email-dialog.component-BxCoVC5Z.mjs +58 -0
- package/fesm2022/acorex-platform-module-document-management-client-share-email-dialog.component-BxCoVC5Z.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-document-management-client-small-icons-view-skeleton.component-Dskk_B96.mjs → acorex-platform-module-document-management-client-small-icons-view-skeleton.component-kf59BPe1.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-small-icons-view-skeleton.component-Dskk_B96.mjs.map → acorex-platform-module-document-management-client-small-icons-view-skeleton.component-kf59BPe1.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-small-icons-view.component-RMDX74O9.mjs → acorex-platform-module-document-management-client-small-icons-view.component-CyZZqSpn.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-small-icons-view.component-RMDX74O9.mjs.map → acorex-platform-module-document-management-client-small-icons-view.component-CyZZqSpn.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-small-tiles-view-skeleton.component-DQW2VZJH.mjs → acorex-platform-module-document-management-client-small-tiles-view-skeleton.component-nBejkXcV.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-small-tiles-view-skeleton.component-DQW2VZJH.mjs.map → acorex-platform-module-document-management-client-small-tiles-view-skeleton.component-nBejkXcV.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-small-tiles-view.component-BT6fRWVH.mjs → acorex-platform-module-document-management-client-small-tiles-view.component-CKgUbiLE.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-small-tiles-view.component-BT6fRWVH.mjs.map → acorex-platform-module-document-management-client-small-tiles-view.component-CKgUbiLE.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-document-management-client-upload-document.command-CFFOw4gM.mjs → acorex-platform-module-document-management-client-upload-document.command-gJuSuiz_.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-document-management-client-upload-document.command-CFFOw4gM.mjs.map → acorex-platform-module-document-management-client-upload-document.command-gJuSuiz_.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-document-management-client.mjs +1 -1
- package/package.json +26 -2
- package/types/acorex-platform-module-document-management-client-contracts-entities-document-shortcut.d.ts +8 -0
- package/types/acorex-platform-module-document-management-client-contracts-entities-document-type.d.ts +5 -0
- package/types/acorex-platform-module-document-management-client-contracts-entities-document.d.ts +9 -0
- package/types/acorex-platform-module-document-management-client-contracts-entities-folder.d.ts +9 -0
- package/types/acorex-platform-module-document-management-client-contracts-entity-catalog.d.ts +10 -0
- package/types/acorex-platform-module-document-management-client-contracts.d.ts +5 -4
- package/types/acorex-platform-module-document-management-client-local-entities.d.ts +12 -0
- package/types/acorex-platform-module-document-management-client.d.ts +63 -8
- package/fesm2022/acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-LQjccofO.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-document-management-client-link-dialog.component-DXwE55QU.mjs +0 -68
- package/fesm2022/acorex-platform-module-document-management-client-link-dialog.component-DXwE55QU.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-document-management-client-share-dialog.component-D0D75M7u.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-document-management-client-share-email-dialog.component-CTP-r-4w.mjs +0 -54
- package/fesm2022/acorex-platform-module-document-management-client-share-email-dialog.component-CTP-r-4w.mjs.map +0 -1
|
@@ -10,27 +10,26 @@ import { AXPCommonPermissionGroupKeys, AXPCommonMenuKeys, AXPCommonCommandKeys }
|
|
|
10
10
|
import { firstValueFrom, combineLatest } from 'rxjs';
|
|
11
11
|
import { AXPCommandEventsService, AXPCommandService, AXPQueryService, provideCommandSetups } from '@acorex-platform/framework-client/runtime';
|
|
12
12
|
import { AXPWidgetsList, AXPSystemStatusType, AXPStatusProvider, systemStatusToDefinition, AXPPlatformScope, AXPDataGenerator, AXP_QUERY_QUICK_SEARCH_FIELD, runtimeCommandPayloadData, runtimeQueryPayloadData, runtimeQueryCollectionData, AXPRegionalSetting, getSmart, AXP_PLATFORM_ERROR_CODES, resolvePlatformScopeKey, resolvePlatformScopeName } from '@acorex-platform/framework-shared/core';
|
|
13
|
-
import * as
|
|
13
|
+
import * as i6 from '@acorex-platform/framework-client/layout/widget-core';
|
|
14
14
|
import { AXPValueWidgetComponent, AXPWidgetCoreModule, AXP_WIDGETS_ADVANCE_CATEGORY, AXP_WIDGET_DEFINITION_PROVIDER } from '@acorex-platform/framework-client/layout/widget-core';
|
|
15
15
|
import * as i1$1 from '@acorex/core/file';
|
|
16
16
|
import { AX_FILE_TYPE_METADATA_PURPOSE, AX_DOCUMENT_FILE_TYPE, AX_FILE_FILE_TYPE, AX_IMAGE_FILE_TYPE, AX_VIDEO_FILE_TYPE, AX_AUDIO_FILE_TYPE, AXFileModule, AXFileService } from '@acorex/core/file';
|
|
17
17
|
import { AXDataSource } from '@acorex/cdk/common';
|
|
18
18
|
import * as i3$1 from '@acorex/components/decorators';
|
|
19
19
|
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
20
|
-
import * as
|
|
20
|
+
import * as i2 from '@acorex/components/form';
|
|
21
21
|
import { AXFormModule } from '@acorex/components/form';
|
|
22
|
-
import * as
|
|
22
|
+
import * as i3 from '@acorex/components/label';
|
|
23
23
|
import { AXLabelModule } from '@acorex/components/label';
|
|
24
|
-
import * as
|
|
24
|
+
import * as i5 from '@acorex/components/search-box';
|
|
25
25
|
import { AXSearchBoxModule } from '@acorex/components/search-box';
|
|
26
|
-
import
|
|
27
|
-
import
|
|
28
|
-
import * as i2 from '@angular/forms';
|
|
26
|
+
import { AXLookupComponent } from '@acorex/components/lookup';
|
|
27
|
+
import * as i1 from '@angular/forms';
|
|
29
28
|
import { FormsModule } from '@angular/forms';
|
|
30
29
|
import get from 'lodash-es/get';
|
|
31
30
|
import isEmpty from 'lodash-es/isEmpty';
|
|
32
31
|
import isString from 'lodash-es/isString';
|
|
33
|
-
import * as
|
|
32
|
+
import * as i7 from '@acorex/components/accordion';
|
|
34
33
|
import { AXAccordionModule } from '@acorex/components/accordion';
|
|
35
34
|
import { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex-platform/framework-client/layout/widgets';
|
|
36
35
|
import * as i3$2 from '@acorex/core/translation';
|
|
@@ -41,7 +40,7 @@ import { RouterModule, ActivatedRoute, ROUTES } from '@angular/router';
|
|
|
41
40
|
import { AXDialogService } from '@acorex/components/dialog';
|
|
42
41
|
import { AXPopupService } from '@acorex/components/popup';
|
|
43
42
|
import { AXPLayoutBuilderService } from '@acorex-platform/framework-client/layout/builder';
|
|
44
|
-
import { unset,
|
|
43
|
+
import { unset, castArray, isArray, defaultTo, isEmpty as isEmpty$1, set, get as get$1, isString as isString$1 } from 'lodash';
|
|
45
44
|
import { toDocumentExpirationDate, AXM_DOCUMENT_EXPIRATION_NEAR_DAYS, getDocumentExpirationRemainingDays, AXMDocumentManagementQueryKeys } from '@acorex-platform/module-document-management-client/contracts';
|
|
46
45
|
import { AXToastService } from '@acorex/components/toast';
|
|
47
46
|
import { AXPPageLayoutBaseComponent, AXPPageLayoutBase, AXPPageLayoutComponent } from '@acorex-platform/framework-client/layout/views';
|
|
@@ -708,8 +707,14 @@ class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent {
|
|
|
708
707
|
}
|
|
709
708
|
return value.trim().toLowerCase();
|
|
710
709
|
}
|
|
711
|
-
async
|
|
712
|
-
const selectItems = e.
|
|
710
|
+
async handleSelectionChanged(e) {
|
|
711
|
+
const selectItems = (e.items ?? []);
|
|
712
|
+
await this.applySelectedItems(selectItems);
|
|
713
|
+
}
|
|
714
|
+
async handleValueChange(_e) {
|
|
715
|
+
// Selection side-effects are handled in handleSelectionChanged.
|
|
716
|
+
}
|
|
717
|
+
async applySelectedItems(selectItems) {
|
|
713
718
|
this.setValue({ ...this.getValue(), selectedItems: selectItems });
|
|
714
719
|
const types = [];
|
|
715
720
|
for (const item of selectItems) {
|
|
@@ -747,14 +752,16 @@ class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent {
|
|
|
747
752
|
}
|
|
748
753
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMFileTypeExtensionWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
749
754
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXMFileTypeExtensionWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: ` <div>
|
|
750
|
-
<ax-
|
|
755
|
+
<ax-lookup
|
|
751
756
|
#dd
|
|
757
|
+
mode="multi-select"
|
|
752
758
|
[dataSource]="dataSource"
|
|
753
759
|
valueField="name"
|
|
754
760
|
textField="title"
|
|
755
|
-
[
|
|
761
|
+
[searchable]="true"
|
|
756
762
|
[ngModel]="$safeNavigationMigration(getValue()?.selectedItems)"
|
|
757
763
|
(onValueChanged)="handleValueChange($event)"
|
|
764
|
+
(onSelectionChanged)="handleSelectionChanged($event)"
|
|
758
765
|
>
|
|
759
766
|
<ax-search-box
|
|
760
767
|
[autoSearch]="false"
|
|
@@ -764,7 +771,7 @@ class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent {
|
|
|
764
771
|
>
|
|
765
772
|
<ax-clear-button></ax-clear-button>
|
|
766
773
|
</ax-search-box>
|
|
767
|
-
</ax-
|
|
774
|
+
</ax-lookup>
|
|
768
775
|
<div class="py-3"></div>
|
|
769
776
|
<axp-widgets-container (onContextChanged)="handleOnContextChange($event)" [context]="context()">
|
|
770
777
|
@if (selectedItemsNotEmpty().length > 0) {
|
|
@@ -817,20 +824,22 @@ class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent {
|
|
|
817
824
|
</ax-accordion-group>
|
|
818
825
|
}
|
|
819
826
|
</axp-widgets-container>
|
|
820
|
-
</div>`, isInline: true, dependencies: [{ kind: "
|
|
827
|
+
</div>`, isInline: true, dependencies: [{ kind: "component", type: AXLookupComponent, selector: "ax-lookup", inputs: ["name", "mode", "dataSource", "treeDataSource", "valueField", "textField", "disabledField", "columns", "treeParentField", "hasChildrenField", "searchable", "adaptivityEnabled", "caption", "alternate", "searchPlaceholder", "placeholder", "disabled", "readonly", "look", "itemHeight", "maxVisibleItems", "treeSelectionBehavior", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "value", "valueItems"], outputs: ["lookChange", "valueChange", "onValueChanged", "onSelectionChanged", "onFocus", "onBlur", "onItemClick", "onItemSelected", "onOpened", "onClosed"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i3.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3$1.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i3$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i5.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "component", type: i6.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i6.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged", "onLoad"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXAccordionModule }, { kind: "component", type: i7.AXAccordionItemComponent, selector: "ax-accordion-item", inputs: ["isCollapsed", "icon", "textdecoration", "caption", "isLoading", "headerTemplate", "look", "disabled"], outputs: ["isCollapsedChange", "isLoadingChange", "onClick"] }, { kind: "component", type: i7.AXAccordionGroupComponent, selector: "ax-accordion-group", inputs: ["accordion", "activeIndex", "look", "collapsedOnItemClick"], outputs: ["activeIndexChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
821
828
|
}
|
|
822
829
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMFileTypeExtensionWidgetEditComponent, decorators: [{
|
|
823
830
|
type: Component,
|
|
824
831
|
args: [{
|
|
825
832
|
template: ` <div>
|
|
826
|
-
<ax-
|
|
833
|
+
<ax-lookup
|
|
827
834
|
#dd
|
|
835
|
+
mode="multi-select"
|
|
828
836
|
[dataSource]="dataSource"
|
|
829
837
|
valueField="name"
|
|
830
838
|
textField="title"
|
|
831
|
-
[
|
|
839
|
+
[searchable]="true"
|
|
832
840
|
[ngModel]="$safeNavigationMigration(getValue()?.selectedItems)"
|
|
833
841
|
(onValueChanged)="handleValueChange($event)"
|
|
842
|
+
(onSelectionChanged)="handleSelectionChanged($event)"
|
|
834
843
|
>
|
|
835
844
|
<ax-search-box
|
|
836
845
|
[autoSearch]="false"
|
|
@@ -840,7 +849,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
840
849
|
>
|
|
841
850
|
<ax-clear-button></ax-clear-button>
|
|
842
851
|
</ax-search-box>
|
|
843
|
-
</ax-
|
|
852
|
+
</ax-lookup>
|
|
844
853
|
<div class="py-3"></div>
|
|
845
854
|
<axp-widgets-container (onContextChanged)="handleOnContextChange($event)" [context]="context()">
|
|
846
855
|
@if (selectedItemsNotEmpty().length > 0) {
|
|
@@ -896,7 +905,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
896
905
|
</div>`,
|
|
897
906
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
898
907
|
imports: [
|
|
899
|
-
|
|
908
|
+
AXLookupComponent,
|
|
900
909
|
FormsModule,
|
|
901
910
|
AXFormModule,
|
|
902
911
|
AXLabelModule,
|
|
@@ -1010,8 +1019,8 @@ const AXmDocumentFileTypeFilterWidget = {
|
|
|
1010
1019
|
class AXmDocumentFileTypeFilterWidgetEditComponent extends AXPValueWidgetComponent {
|
|
1011
1020
|
constructor() {
|
|
1012
1021
|
super(...arguments);
|
|
1013
|
-
this.
|
|
1014
|
-
...(ngDevMode ? [{ debugName: "
|
|
1022
|
+
this.lookup = viewChild('lookup', /* @ts-ignore */
|
|
1023
|
+
...(ngDevMode ? [{ debugName: "lookup" }] : /* istanbul ignore next */ []));
|
|
1015
1024
|
this.fileTypeService = inject(AXPFileTypeProviderService);
|
|
1016
1025
|
this.translateService = inject(AXTranslationService);
|
|
1017
1026
|
this.value = computed(() => this.getValue()?.value, /* @ts-ignore */
|
|
@@ -1059,16 +1068,18 @@ class AXmDocumentFileTypeFilterWidgetEditComponent extends AXPValueWidgetCompone
|
|
|
1059
1068
|
}
|
|
1060
1069
|
}
|
|
1061
1070
|
focus() {
|
|
1062
|
-
this.
|
|
1071
|
+
this.lookup()?.focus();
|
|
1063
1072
|
}
|
|
1064
1073
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXmDocumentFileTypeFilterWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
1065
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXmDocumentFileTypeFilterWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "
|
|
1074
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXmDocumentFileTypeFilterWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "lookup", first: true, predicate: ["lookup"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
|
|
1066
1075
|
<div class="flex items-center w-full">
|
|
1067
|
-
<ax-
|
|
1068
|
-
#
|
|
1076
|
+
<ax-lookup
|
|
1077
|
+
#lookup
|
|
1069
1078
|
class="w-full"
|
|
1079
|
+
mode="drop-down-list"
|
|
1070
1080
|
textField="title"
|
|
1071
1081
|
valueField="name"
|
|
1082
|
+
[searchable]="false"
|
|
1072
1083
|
[placeholder]="('@general:actions.select.title' | translate | async) ?? ''"
|
|
1073
1084
|
[dataSource]="dataSource"
|
|
1074
1085
|
[ngModel]="value()"
|
|
@@ -1076,9 +1087,8 @@ class AXmDocumentFileTypeFilterWidgetEditComponent extends AXPValueWidgetCompone
|
|
|
1076
1087
|
[itemTemplate]="itemTemplate"
|
|
1077
1088
|
>
|
|
1078
1089
|
<ax-clear-button></ax-clear-button>
|
|
1079
|
-
</ax-
|
|
1080
|
-
<ng-template #itemTemplate let-
|
|
1081
|
-
@let item = context.data ?? context;
|
|
1090
|
+
</ax-lookup>
|
|
1091
|
+
<ng-template #itemTemplate let-item>
|
|
1082
1092
|
<div class="flex items-center gap-2 w-full">
|
|
1083
1093
|
@if (item.icon) {
|
|
1084
1094
|
<i [class]="item.icon"></i>
|
|
@@ -1087,18 +1097,20 @@ class AXmDocumentFileTypeFilterWidgetEditComponent extends AXPValueWidgetCompone
|
|
|
1087
1097
|
</div>
|
|
1088
1098
|
</ng-template>
|
|
1089
1099
|
</div>
|
|
1090
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type:
|
|
1100
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3$1.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: AXLookupComponent, selector: "ax-lookup", inputs: ["name", "mode", "dataSource", "treeDataSource", "valueField", "textField", "disabledField", "columns", "treeParentField", "hasChildrenField", "searchable", "adaptivityEnabled", "caption", "alternate", "searchPlaceholder", "placeholder", "disabled", "readonly", "look", "itemHeight", "maxVisibleItems", "treeSelectionBehavior", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "value", "valueItems"], outputs: ["lookChange", "valueChange", "onValueChanged", "onSelectionChanged", "onFocus", "onBlur", "onItemClick", "onItemSelected", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3$2.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1091
1101
|
}
|
|
1092
1102
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXmDocumentFileTypeFilterWidgetEditComponent, decorators: [{
|
|
1093
1103
|
type: Component,
|
|
1094
1104
|
args: [{
|
|
1095
1105
|
template: `
|
|
1096
1106
|
<div class="flex items-center w-full">
|
|
1097
|
-
<ax-
|
|
1098
|
-
#
|
|
1107
|
+
<ax-lookup
|
|
1108
|
+
#lookup
|
|
1099
1109
|
class="w-full"
|
|
1110
|
+
mode="drop-down-list"
|
|
1100
1111
|
textField="title"
|
|
1101
1112
|
valueField="name"
|
|
1113
|
+
[searchable]="false"
|
|
1102
1114
|
[placeholder]="('@general:actions.select.title' | translate | async) ?? ''"
|
|
1103
1115
|
[dataSource]="dataSource"
|
|
1104
1116
|
[ngModel]="value()"
|
|
@@ -1106,9 +1118,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
1106
1118
|
[itemTemplate]="itemTemplate"
|
|
1107
1119
|
>
|
|
1108
1120
|
<ax-clear-button></ax-clear-button>
|
|
1109
|
-
</ax-
|
|
1110
|
-
<ng-template #itemTemplate let-
|
|
1111
|
-
@let item = context.data ?? context;
|
|
1121
|
+
</ax-lookup>
|
|
1122
|
+
<ng-template #itemTemplate let-item>
|
|
1112
1123
|
<div class="flex items-center gap-2 w-full">
|
|
1113
1124
|
@if (item.icon) {
|
|
1114
1125
|
<i [class]="item.icon"></i>
|
|
@@ -1120,9 +1131,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
1120
1131
|
`,
|
|
1121
1132
|
standalone: true,
|
|
1122
1133
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1123
|
-
imports: [CommonModule, FormsModule, AXDecoratorModule,
|
|
1134
|
+
imports: [CommonModule, FormsModule, AXDecoratorModule, AXLookupComponent, AXTranslationModule],
|
|
1124
1135
|
}]
|
|
1125
|
-
}], propDecorators: {
|
|
1136
|
+
}], propDecorators: { lookup: [{ type: i0.ViewChild, args: ['lookup', { isSignal: true }] }] } });
|
|
1126
1137
|
|
|
1127
1138
|
var documentFileTypeFilterWidgetEdit_component = /*#__PURE__*/Object.freeze({
|
|
1128
1139
|
__proto__: null,
|
|
@@ -2681,7 +2692,7 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
2681
2692
|
* Opens the drive picker popup with consistent layout (large dialog, optional embedded header).
|
|
2682
2693
|
*/
|
|
2683
2694
|
async openDriveFolderPicker(options) {
|
|
2684
|
-
const comp = (await import('./acorex-platform-module-document-management-client-drive-choose.component-
|
|
2695
|
+
const comp = (await import('./acorex-platform-module-document-management-client-drive-choose.component-Bivzrex0.mjs')).AXMDocumentDriveChooseComponent;
|
|
2685
2696
|
const popup = await this.popupService.open(comp, {
|
|
2686
2697
|
title: await this.translate.translateAsync(options.titleKey),
|
|
2687
2698
|
size: 'lg',
|
|
@@ -2916,7 +2927,7 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
2916
2927
|
* Shows share dialog for a node
|
|
2917
2928
|
*/
|
|
2918
2929
|
async showShareDialog(node) {
|
|
2919
|
-
const comp = (await import('./acorex-platform-module-document-management-client-share-dialog.component-
|
|
2930
|
+
const comp = (await import('./acorex-platform-module-document-management-client-share-dialog.component-C1x8iBn3.mjs')).AXMShareDialogComponent;
|
|
2920
2931
|
const popup = await this.popupService.open(comp, {
|
|
2921
2932
|
title: 'Share',
|
|
2922
2933
|
data: {
|
|
@@ -2931,7 +2942,7 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
2931
2942
|
* Shows share via email dialog for a node
|
|
2932
2943
|
*/
|
|
2933
2944
|
async showShareWithEmailDialog(node) {
|
|
2934
|
-
const comp = (await import('./acorex-platform-module-document-management-client-share-email-dialog.component-
|
|
2945
|
+
const comp = (await import('./acorex-platform-module-document-management-client-share-email-dialog.component-BxCoVC5Z.mjs')).AXMShareEmailDialogComponent;
|
|
2935
2946
|
const popup = await this.popupService.open(comp, {
|
|
2936
2947
|
title: 'Share via Email',
|
|
2937
2948
|
data: {
|
|
@@ -2946,7 +2957,7 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
2946
2957
|
* Shows link dialog for a node
|
|
2947
2958
|
*/
|
|
2948
2959
|
async showLinkDialog(node) {
|
|
2949
|
-
const comp = (await import('./acorex-platform-module-document-management-client-link-dialog.component-
|
|
2960
|
+
const comp = (await import('./acorex-platform-module-document-management-client-link-dialog.component-BsXNSpO7.mjs')).AXMLinkDialogComponent;
|
|
2950
2961
|
const popup = await this.popupService.open(comp, {
|
|
2951
2962
|
title: 'Share Link',
|
|
2952
2963
|
data: {
|
|
@@ -2978,49 +2989,139 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
2978
2989
|
return runtimeCommandPayloadData(result)?.unlocked === true;
|
|
2979
2990
|
}
|
|
2980
2991
|
/**
|
|
2981
|
-
*
|
|
2982
|
-
*
|
|
2992
|
+
* Builds the picker rows for the folder dialogs. Rows keep every backend field and add two
|
|
2993
|
+
* UI-only ones that are stripped again before saving:
|
|
2994
|
+
* - `pickerKey`: the select `valueField`. `name` alone is not reliable because backends may only
|
|
2995
|
+
* project `id` on a folder's assigned document types.
|
|
2996
|
+
* - `displayTitle`: the resolved select `textField` label.
|
|
2983
2997
|
*/
|
|
2984
|
-
initialFolderDialogDocumentTypes(items, existing) {
|
|
2985
|
-
if (Array.isArray(existing) && existing.length > 0) {
|
|
2986
|
-
return existing.map((entry) => {
|
|
2987
|
-
const name = typeof entry === 'object' && entry != null && 'name' in entry ? entry.name : String(entry);
|
|
2988
|
-
return items.find((it) => it?.name === name) ?? entry;
|
|
2989
|
-
});
|
|
2990
|
-
}
|
|
2991
|
-
const anyType = items.find((it) => it?.name === 'any');
|
|
2992
|
-
return anyType ? [anyType] : [];
|
|
2993
|
-
}
|
|
2994
2998
|
mapDocumentTypesForPicker(items) {
|
|
2995
|
-
return items.map((it) => (
|
|
2996
|
-
|
|
2997
|
-
|
|
2998
|
-
})
|
|
2999
|
+
return castArray(items ?? []).map((it) => this.toDocumentTypePickerRow(it));
|
|
3000
|
+
}
|
|
3001
|
+
toDocumentTypePickerRow(item) {
|
|
3002
|
+
const row = (item != null && typeof item === 'object' ? item : { name: item, id: item });
|
|
3003
|
+
return {
|
|
3004
|
+
...row,
|
|
3005
|
+
pickerKey: this.resolveDocumentTypeKey(row),
|
|
3006
|
+
displayTitle: this.resolveDocumentTypeLabel(row),
|
|
3007
|
+
};
|
|
3008
|
+
}
|
|
3009
|
+
/** Stable identity of a document type, preferring the programmatic name over the backend id. */
|
|
3010
|
+
resolveDocumentTypeKey(item) {
|
|
3011
|
+
const name = item['name'];
|
|
3012
|
+
if (typeof name === 'string' && name !== '') {
|
|
3013
|
+
return name;
|
|
3014
|
+
}
|
|
3015
|
+
const id = item['id'] ?? item['documentTypeId'];
|
|
3016
|
+
return id == null ? '' : String(id);
|
|
2999
3017
|
}
|
|
3018
|
+
/** Falls through title -> name -> id so a chip never renders blank when a title resolves empty. */
|
|
3000
3019
|
resolveDocumentTypeLabel(item) {
|
|
3001
|
-
const
|
|
3002
|
-
|
|
3003
|
-
|
|
3020
|
+
for (const candidate of [item['title'], item['name'], item['id']]) {
|
|
3021
|
+
if (candidate == null || candidate === '') {
|
|
3022
|
+
continue;
|
|
3023
|
+
}
|
|
3024
|
+
const resolved = typeof candidate === 'object'
|
|
3025
|
+
? this.translate.resolve(candidate)
|
|
3026
|
+
: this.translate.resolve(String(candidate));
|
|
3027
|
+
if (resolved != null && resolved !== '') {
|
|
3028
|
+
return resolved;
|
|
3029
|
+
}
|
|
3030
|
+
}
|
|
3031
|
+
return '';
|
|
3032
|
+
}
|
|
3033
|
+
/**
|
|
3034
|
+
* Resolves a folder's assigned document types against the picker catalog.
|
|
3035
|
+
*
|
|
3036
|
+
* Assignments are matched on key, then loosely on id, because a folder response and the document
|
|
3037
|
+
* type list are different backend projections (ids may be numeric in one and strings in the
|
|
3038
|
+
* other, and a folder's entry may carry no programmatic name at all). Assignments missing from
|
|
3039
|
+
* the catalog are appended to the data source so the select still shows them as selected instead
|
|
3040
|
+
* of silently dropping them.
|
|
3041
|
+
*
|
|
3042
|
+
* With no assignment (create dialog) the catalog entry named `any` is preselected when present.
|
|
3043
|
+
*/
|
|
3044
|
+
resolveFolderDialogDocumentTypes(catalog, assigned) {
|
|
3045
|
+
if (!isArray(assigned) || assigned.length === 0) {
|
|
3046
|
+
const anyType = catalog.find((it) => it['name'] === 'any');
|
|
3047
|
+
return { selected: anyType ? [anyType] : [], dataSource: catalog };
|
|
3048
|
+
}
|
|
3049
|
+
const dataSource = [...catalog];
|
|
3050
|
+
const selected = assigned.map((entry) => {
|
|
3051
|
+
const row = this.toDocumentTypePickerRow(entry);
|
|
3052
|
+
const id = row['id'] ?? row['documentTypeId'];
|
|
3053
|
+
const match = dataSource.find((it) => (row.pickerKey !== '' && it.pickerKey === row.pickerKey) ||
|
|
3054
|
+
(id != null && it['id'] != null && String(it['id']) === String(id)));
|
|
3055
|
+
if (match) {
|
|
3056
|
+
return match;
|
|
3057
|
+
}
|
|
3058
|
+
dataSource.push(row);
|
|
3059
|
+
return row;
|
|
3060
|
+
});
|
|
3061
|
+
return { selected, dataSource };
|
|
3062
|
+
}
|
|
3063
|
+
/** Removes the picker-only fields so only backend-owned properties are persisted. */
|
|
3064
|
+
toDocumentTypePayload(value) {
|
|
3065
|
+
if (value == null || typeof value !== 'object') {
|
|
3066
|
+
return value;
|
|
3067
|
+
}
|
|
3068
|
+
const row = { ...value };
|
|
3069
|
+
delete row['pickerKey'];
|
|
3070
|
+
delete row['displayTitle'];
|
|
3071
|
+
return row;
|
|
3072
|
+
}
|
|
3073
|
+
/** Maps a select value (row object, or `pickerKey` when the app stores primitives) to its row. */
|
|
3074
|
+
resolveSelectedDocumentType(value, dataSource) {
|
|
3075
|
+
if (value != null && typeof value === 'object') {
|
|
3076
|
+
return this.toDocumentTypePayload(value);
|
|
3077
|
+
}
|
|
3078
|
+
const match = dataSource.find((it) => it.pickerKey === String(value));
|
|
3079
|
+
return this.toDocumentTypePayload(match ?? { name: value, title: value, id: value });
|
|
3080
|
+
}
|
|
3081
|
+
/**
|
|
3082
|
+
* Loads persisted folder metadata for edit dialogs.
|
|
3083
|
+
* Explorer child nodes from a parent's embedded `folders[]` are often shallow and omit
|
|
3084
|
+
* `inherit` / `documentTypes`; `byKey` returns the full stored row.
|
|
3085
|
+
*/
|
|
3086
|
+
async resolveFolderNodeForEdit(node) {
|
|
3087
|
+
try {
|
|
3088
|
+
const folder = await this.folderData.byKey(node.id);
|
|
3089
|
+
if (folder) {
|
|
3090
|
+
return this.mapFolderDtoToFolderNode(folder);
|
|
3091
|
+
}
|
|
3092
|
+
}
|
|
3093
|
+
catch {
|
|
3094
|
+
// Fall back to the explorer node when storage is unavailable.
|
|
3004
3095
|
}
|
|
3005
|
-
return
|
|
3096
|
+
return node;
|
|
3097
|
+
}
|
|
3098
|
+
/** Coerces backend/explorer inherit values to a supported selection-list option. */
|
|
3099
|
+
normalizeFolderInherit(inherit) {
|
|
3100
|
+
if (inherit === 'None' || inherit === 'Inherited' || inherit === 'Extends') {
|
|
3101
|
+
return inherit;
|
|
3102
|
+
}
|
|
3103
|
+
return 'None';
|
|
3006
3104
|
}
|
|
3007
3105
|
/**
|
|
3008
3106
|
* Shows folder edit dialog
|
|
3009
3107
|
*/
|
|
3010
3108
|
async showFolderEditDialog(node) {
|
|
3109
|
+
const source = await this.resolveFolderNodeForEdit(node);
|
|
3011
3110
|
// Load document types for selection
|
|
3012
3111
|
const res = await this.documentTypeService.query({ skip: 0, take: 1000 });
|
|
3013
|
-
const
|
|
3112
|
+
const catalog = this.mapDocumentTypesForPicker(res?.items ?? []);
|
|
3113
|
+
const { selected: initialDocumentTypes, dataSource: items } = this.resolveFolderDialogDocumentTypes(catalog, source.documentTypes);
|
|
3014
3114
|
const result = await this.layoutBuilder
|
|
3015
3115
|
.create()
|
|
3016
3116
|
.dialog((dialog) => {
|
|
3017
3117
|
dialog
|
|
3018
3118
|
.setTitle('@document-management:actions.update-folder')
|
|
3019
3119
|
.setContext({
|
|
3020
|
-
name:
|
|
3021
|
-
description:
|
|
3022
|
-
|
|
3023
|
-
|
|
3120
|
+
name: source.name,
|
|
3121
|
+
description: source.description ?? '',
|
|
3122
|
+
inherit: this.normalizeFolderInherit(source.inherit),
|
|
3123
|
+
documentTypes: initialDocumentTypes,
|
|
3124
|
+
color: resolveFolderColor(source.color),
|
|
3024
3125
|
})
|
|
3025
3126
|
.content((flex) => {
|
|
3026
3127
|
flex
|
|
@@ -3032,11 +3133,23 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
3032
3133
|
.formField('@general:terms.common.description', (field) => {
|
|
3033
3134
|
field.path('description');
|
|
3034
3135
|
field.largeTextBox({});
|
|
3136
|
+
})
|
|
3137
|
+
.formField('@document-management:terms.common.inherited', (field) => {
|
|
3138
|
+
field.path('inherit');
|
|
3139
|
+
field.selectionList({
|
|
3140
|
+
valueField: 'value',
|
|
3141
|
+
textField: 'text',
|
|
3142
|
+
dataSource: [
|
|
3143
|
+
{ value: 'None', text: 'None' },
|
|
3144
|
+
{ value: 'Inherited', text: 'Inherited' },
|
|
3145
|
+
{ value: 'Extends', text: 'Extends' },
|
|
3146
|
+
],
|
|
3147
|
+
});
|
|
3035
3148
|
})
|
|
3036
3149
|
.formField('@document-management:entities.document-types.title-plural', (field) => {
|
|
3037
3150
|
field.path('documentTypes');
|
|
3038
3151
|
field.selectBox({
|
|
3039
|
-
valueField: '
|
|
3152
|
+
valueField: 'pickerKey',
|
|
3040
3153
|
textField: 'displayTitle',
|
|
3041
3154
|
dataSource: items,
|
|
3042
3155
|
multiple: true,
|
|
@@ -3063,12 +3176,11 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
3063
3176
|
if (selected.length === 0) {
|
|
3064
3177
|
return false;
|
|
3065
3178
|
}
|
|
3066
|
-
const selectedTypes = selected.map((v) =>
|
|
3179
|
+
const selectedTypes = selected.map((v) => this.resolveSelectedDocumentType(v, items));
|
|
3067
3180
|
await this.updateFolder(node.id, {
|
|
3068
3181
|
title: form.title ?? form.name,
|
|
3069
3182
|
description: form.description,
|
|
3070
|
-
|
|
3071
|
-
inherit: 'None',
|
|
3183
|
+
inherit: form.inherit,
|
|
3072
3184
|
documentTypes: selectedTypes,
|
|
3073
3185
|
color: resolveFolderColor(form.color),
|
|
3074
3186
|
});
|
|
@@ -3093,10 +3205,10 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
3093
3205
|
}
|
|
3094
3206
|
else {
|
|
3095
3207
|
const set = new Set(allowedNames);
|
|
3096
|
-
items = items.filter((it) => it
|
|
3208
|
+
items = items.filter((it) => it.pickerKey !== '' && set.has(it.pickerKey));
|
|
3097
3209
|
}
|
|
3098
3210
|
}
|
|
3099
|
-
const defaultDocumentTypes = this.
|
|
3211
|
+
const { selected: defaultDocumentTypes } = this.resolveFolderDialogDocumentTypes(items, []);
|
|
3100
3212
|
const result = await this.layoutBuilder
|
|
3101
3213
|
.create()
|
|
3102
3214
|
.dialog((dialog) => {
|
|
@@ -3105,6 +3217,7 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
3105
3217
|
.setContext({
|
|
3106
3218
|
title: '',
|
|
3107
3219
|
description: '',
|
|
3220
|
+
inherit: 'None',
|
|
3108
3221
|
documentTypes: defaultDocumentTypes,
|
|
3109
3222
|
color: AXM_DEFAULT_FOLDER_COLOR,
|
|
3110
3223
|
})
|
|
@@ -3118,11 +3231,23 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
3118
3231
|
.formField('@general:terms.common.description', (field) => {
|
|
3119
3232
|
field.path('description');
|
|
3120
3233
|
field.largeTextBox({});
|
|
3234
|
+
})
|
|
3235
|
+
.formField('@document-management:terms.common.inherited', (field) => {
|
|
3236
|
+
field.path('inherit');
|
|
3237
|
+
field.selectionList({
|
|
3238
|
+
valueField: 'value',
|
|
3239
|
+
textField: 'text',
|
|
3240
|
+
dataSource: [
|
|
3241
|
+
{ value: 'None', text: 'None' },
|
|
3242
|
+
{ value: 'Inherited', text: 'Inherited' },
|
|
3243
|
+
{ value: 'Extends', text: 'Extends' },
|
|
3244
|
+
],
|
|
3245
|
+
});
|
|
3121
3246
|
})
|
|
3122
3247
|
.formField('@document-management:entities.document-types.title-plural', (field) => {
|
|
3123
3248
|
field.path('documentTypes');
|
|
3124
3249
|
field.selectBox({
|
|
3125
|
-
valueField: '
|
|
3250
|
+
valueField: 'pickerKey',
|
|
3126
3251
|
textField: 'displayTitle',
|
|
3127
3252
|
dataSource: items,
|
|
3128
3253
|
multiple: true,
|
|
@@ -3149,7 +3274,7 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
3149
3274
|
if (selectedTypesRaw.length === 0) {
|
|
3150
3275
|
return null;
|
|
3151
3276
|
}
|
|
3152
|
-
const selectedTypes = selectedTypesRaw.map((v) =>
|
|
3277
|
+
const selectedTypes = selectedTypesRaw.map((v) => this.resolveSelectedDocumentType(v, items));
|
|
3153
3278
|
try {
|
|
3154
3279
|
const folder = await this.createFolder({
|
|
3155
3280
|
title: form.title,
|
|
@@ -3158,8 +3283,7 @@ class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
|
|
|
3158
3283
|
description: form.description,
|
|
3159
3284
|
documentTypes: selectedTypes,
|
|
3160
3285
|
size: 0,
|
|
3161
|
-
|
|
3162
|
-
inherit: 'None',
|
|
3286
|
+
inherit: form.inherit,
|
|
3163
3287
|
});
|
|
3164
3288
|
return folder;
|
|
3165
3289
|
}
|
|
@@ -3579,7 +3703,7 @@ const AXM_DRIVE_FILE_CHOOSER_PROVIDER = {
|
|
|
3579
3703
|
const scope = defaultTo(context.options['scope'], AXPPlatformScope.Tenant);
|
|
3580
3704
|
const multiple = Boolean(context.options['multiple']);
|
|
3581
3705
|
const browseMode = defaultTo(context.options['browseMode'], 'file');
|
|
3582
|
-
const component = (await import('./acorex-platform-module-document-management-client-drive-choose.component-
|
|
3706
|
+
const component = (await import('./acorex-platform-module-document-management-client-drive-choose.component-Bivzrex0.mjs')).AXMDocumentDriveChooseComponent;
|
|
3583
3707
|
const popup = await popupService.open(component, {
|
|
3584
3708
|
title: await translate.translateAsync('@document-management:actions.choose-from-drive'),
|
|
3585
3709
|
size: 'lg',
|
|
@@ -5714,28 +5838,28 @@ class AXMDocumentExplorerComponent {
|
|
|
5714
5838
|
/** Drops stale async open results when the user right-clicks again before items resolve. */
|
|
5715
5839
|
this.contextMenuOpenToken = 0;
|
|
5716
5840
|
this.viewMap = {
|
|
5717
|
-
list: async () => (await import('./acorex-platform-module-document-management-client-list-view.component-
|
|
5718
|
-
'small-tiles': async () => (await import('./acorex-platform-module-document-management-client-small-tiles-view.component-
|
|
5719
|
-
'large-tiles': async () => (await import('./acorex-platform-module-document-management-client-large-tiles-view.component-
|
|
5841
|
+
list: async () => (await import('./acorex-platform-module-document-management-client-list-view.component-BW9FdY7r.mjs')).AXMDocumentExplorerListViewComponent,
|
|
5842
|
+
'small-tiles': async () => (await import('./acorex-platform-module-document-management-client-small-tiles-view.component-CKgUbiLE.mjs')).AXMDocumentExplorerSmallTilesViewComponent,
|
|
5843
|
+
'large-tiles': async () => (await import('./acorex-platform-module-document-management-client-large-tiles-view.component-TjkSRbCp.mjs')).AXMDocumentExplorerLargeTilesViewComponent,
|
|
5720
5844
|
// details: async () =>
|
|
5721
5845
|
// (await import('./views/details/details-view.component')).AXMDocumentExplorerDetailsViewComponent,
|
|
5722
|
-
'large-icons': async () => (await import('./acorex-platform-module-document-management-client-large-icons-view.component-
|
|
5723
|
-
'small-icons': async () => (await import('./acorex-platform-module-document-management-client-small-icons-view.component-
|
|
5724
|
-
'attachment': async () => (await import('./acorex-platform-module-document-management-client-attachment-widget.component-
|
|
5846
|
+
'large-icons': async () => (await import('./acorex-platform-module-document-management-client-large-icons-view.component-BEZhcmxY.mjs')).AXMDocumentExplorerLargeIconsViewComponent,
|
|
5847
|
+
'small-icons': async () => (await import('./acorex-platform-module-document-management-client-small-icons-view.component-CyZZqSpn.mjs')).AXMDocumentExplorerSmallIconsViewComponent,
|
|
5848
|
+
'attachment': async () => (await import('./acorex-platform-module-document-management-client-attachment-widget.component-B95uSss7.mjs')).AXMDocumentExplorerAttachmentComponent,
|
|
5725
5849
|
};
|
|
5726
5850
|
this.skeletonViewMap = {
|
|
5727
|
-
list: async () => (await import('./acorex-platform-module-document-management-client-list-view-skeleton.component-
|
|
5728
|
-
'small-tiles': async () => (await import('./acorex-platform-module-document-management-client-small-tiles-view-skeleton.component-
|
|
5851
|
+
list: async () => (await import('./acorex-platform-module-document-management-client-list-view-skeleton.component-Bhispx1H.mjs')).AXMDocumentExplorerListViewSkeletonComponent,
|
|
5852
|
+
'small-tiles': async () => (await import('./acorex-platform-module-document-management-client-small-tiles-view-skeleton.component-nBejkXcV.mjs'))
|
|
5729
5853
|
.AXMDocumentExplorerSmallTilesViewSkeletonComponent,
|
|
5730
5854
|
'large-tiles': async () => (await Promise.resolve().then(function () { return largeTilesViewSkeleton_component; }))
|
|
5731
5855
|
.AXMDocumentExplorerLargeTilesViewSkeletonComponent,
|
|
5732
5856
|
// details: async () =>
|
|
5733
5857
|
// (await import('./views/details/details-view-skeleton.component')).AXMDocumentExplorerDetailsViewSkeletonComponent,
|
|
5734
|
-
'large-icons': async () => (await import('./acorex-platform-module-document-management-client-large-icons-view-skeleton.component-
|
|
5858
|
+
'large-icons': async () => (await import('./acorex-platform-module-document-management-client-large-icons-view-skeleton.component-3C4LEllG.mjs'))
|
|
5735
5859
|
.AXMDocumentExplorerLargeIconsViewSkeletonComponent,
|
|
5736
|
-
'small-icons': async () => (await import('./acorex-platform-module-document-management-client-small-icons-view-skeleton.component-
|
|
5860
|
+
'small-icons': async () => (await import('./acorex-platform-module-document-management-client-small-icons-view-skeleton.component-kf59BPe1.mjs'))
|
|
5737
5861
|
.AXMDocumentExplorerSmallIconsViewSkeletonComponent,
|
|
5738
|
-
attachment: async () => (await import('./acorex-platform-module-document-management-client-attachment-view-skeleton.component-
|
|
5862
|
+
attachment: async () => (await import('./acorex-platform-module-document-management-client-attachment-view-skeleton.component-BnPCZNr3.mjs'))
|
|
5739
5863
|
.AXMDocumentExplorerAttachmentViewSkeletonComponent,
|
|
5740
5864
|
};
|
|
5741
5865
|
this.#effect2 = effect(() => {
|
|
@@ -5984,7 +6108,7 @@ class AXMDocumentExplorerDetailPanelComponent {
|
|
|
5984
6108
|
this.multiSelectLabel.set(`${this.vm.selectedCount()} ${itemsSelected}`);
|
|
5985
6109
|
}
|
|
5986
6110
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMDocumentExplorerDetailPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5987
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXMDocumentExplorerDetailPanelComponent, isStandalone: true, selector: "axm-document-explorer-detail-panel", ngImport: i0, template: "@if (vm.hasMultipleSelectedItems() && multiSelectLabel(); as multiLabel) {\n <axp-layout-side-detail-panel [multiSelectLabel]=\"multiLabel\" (panelClose)=\"onPanelClose()\" />\n} @else {\n <axp-layout-side-detail-panel\n [header]=\"panelHeader()\"\n [sections]=\"panelSections()\"\n (panelClose)=\"onPanelClose()\"\n >\n @if (metadataWidgetNode(); as widgetNode) {\n <ng-template axpLayoutSideDetailPanelSection=\"metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n <ng-container axp-widget-renderer [node]=\"widgetNode\" [mode]=\"'view'\"></ng-container>\n </axp-widgets-container>\n </ng-template>\n }\n </axp-layout-side-detail-panel>\n}\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "component", type:
|
|
6111
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXMDocumentExplorerDetailPanelComponent, isStandalone: true, selector: "axm-document-explorer-detail-panel", ngImport: i0, template: "@if (vm.hasMultipleSelectedItems() && multiSelectLabel(); as multiLabel) {\n <axp-layout-side-detail-panel [multiSelectLabel]=\"multiLabel\" (panelClose)=\"onPanelClose()\" />\n} @else {\n <axp-layout-side-detail-panel\n [header]=\"panelHeader()\"\n [sections]=\"panelSections()\"\n (panelClose)=\"onPanelClose()\"\n >\n @if (metadataWidgetNode(); as widgetNode) {\n <ng-template axpLayoutSideDetailPanelSection=\"metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n <ng-container axp-widget-renderer [node]=\"widgetNode\" [mode]=\"'view'\"></ng-container>\n </axp-widgets-container>\n </ng-template>\n }\n </axp-layout-side-detail-panel>\n}\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "component", type: i6.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i6.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged", "onLoad"], exportAs: ["widgetRenderer"] }, { kind: "component", type: AXPLayoutSideDetailPanelComponent, selector: "axp-layout-side-detail-panel", inputs: ["multiSelectLabel", "header", "sections", "rows", "rowsSectionTitle", "noRowsMessage", "emptyState"], outputs: ["panelClose"] }, { kind: "directive", type: AXPLayoutSideDetailPanelSectionDirective, selector: "[axpLayoutSideDetailPanelSection]", inputs: ["axpLayoutSideDetailPanelSection"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
5988
6112
|
}
|
|
5989
6113
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMDocumentExplorerDetailPanelComponent, decorators: [{
|
|
5990
6114
|
type: Component,
|
|
@@ -6955,11 +7079,11 @@ class AXMDocumentManagementModule {
|
|
|
6955
7079
|
provideCommandSetups([
|
|
6956
7080
|
{
|
|
6957
7081
|
key: 'DocumentManagement.Document:Upload',
|
|
6958
|
-
command: () => import('./acorex-platform-module-document-management-client-upload-document.command-
|
|
7082
|
+
command: () => import('./acorex-platform-module-document-management-client-upload-document.command-gJuSuiz_.mjs').then((c) => c.AXMUploadDocumentCommand),
|
|
6959
7083
|
},
|
|
6960
7084
|
{
|
|
6961
7085
|
key: 'DocumentManagement.Document:Open',
|
|
6962
|
-
command: () => import('./acorex-platform-module-document-management-client-open-document.command-
|
|
7086
|
+
command: () => import('./acorex-platform-module-document-management-client-open-document.command-BdXRh2Td.mjs').then((c) => c.AXMOpenDocumentCommand),
|
|
6963
7087
|
},
|
|
6964
7088
|
]),
|
|
6965
7089
|
], imports: [AXMDriveChooseModule,
|
|
@@ -7052,11 +7176,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
7052
7176
|
provideCommandSetups([
|
|
7053
7177
|
{
|
|
7054
7178
|
key: 'DocumentManagement.Document:Upload',
|
|
7055
|
-
command: () => import('./acorex-platform-module-document-management-client-upload-document.command-
|
|
7179
|
+
command: () => import('./acorex-platform-module-document-management-client-upload-document.command-gJuSuiz_.mjs').then((c) => c.AXMUploadDocumentCommand),
|
|
7056
7180
|
},
|
|
7057
7181
|
{
|
|
7058
7182
|
key: 'DocumentManagement.Document:Open',
|
|
7059
|
-
command: () => import('./acorex-platform-module-document-management-client-open-document.command-
|
|
7183
|
+
command: () => import('./acorex-platform-module-document-management-client-open-document.command-BdXRh2Td.mjs').then((c) => c.AXMOpenDocumentCommand),
|
|
7060
7184
|
},
|
|
7061
7185
|
]),
|
|
7062
7186
|
],
|
|
@@ -7846,4 +7970,4 @@ var drive_component = /*#__PURE__*/Object.freeze({
|
|
|
7846
7970
|
*/
|
|
7847
7971
|
|
|
7848
7972
|
export { AXPDocumentExplorerViewModel as A, AXM_DOCUMENT_EXPIRATION_STATUS_DEFINITION_KEY as B, AXPDocumentManagementService as C, AXPDocumentManagementSettingProvider as D, AXmFileTypeExtensionWidget as E, DM_AUDIO_EXTENSION_ICONS as F, DM_DOCUMENT_EXTENSION_ICONS as G, DM_FILE_EXTENSION_ICONS as H, DM_FILE_TYPE_ICONS as I, DM_VIDEO_EXTENSION_ICONS as J, DOCUMENT_DRIVE_PAGE_COMPONENT_KEY as K, buildDocumentManagementFileTypeCatalog as L, documentPlugin as M, resolveDocumentExpirationBadge as N, resolveFolderExpirationCountBadges as O, ScopedDriveService as S, AXMDocumentExpirationBadgeComponent as a, AXMFolderExpirationBadgesComponent as b, AXMDocumentManagerService as c, AXMDocumentDialogService as d, buildFileChooserOptionsFromDocumentType as e, AXMDocumentExplorerComponent as f, AXMFolderPathBreadcrumbsComponent as g, AXMDocumentDriveComponent as h, AXMDocumentDrivePageComponent as i, AXMDocumentDrivePageComponentProvider as j, AXMDocumentExpirationStatusProvider as k, AXMDocumentManagementApiService as l, AXMDocumentManagementFileTypeProvider as m, AXMDocumentManagementModule as n, AXMDocumentManagerServiceImpl as o, AXMFileTypeExtensionWidgetColumnComponent as p, AXMFileTypeExtensionWidgetDesignerComponent as q, AXMFileTypeExtensionWidgetEditComponent as r, AXMFileTypeExtensionWidgetViewComponent as s, AXMFileTypeModule as t, AXMMenuProvider as u, AXMSearchCommandProvider as v, AXM_DOCUMENT_ATTACHMENT_DIALOG_ON_ACTION_HOOK_KEY as w, AXM_DOCUMENT_DIALOG_SURFACE_ATTACHMENT as x, AXM_DOCUMENT_DIALOG_SURFACE_ATTACHMENT_NO_SAVE as y, AXM_DOCUMENT_EXPIRATION_STATUS as z };
|
|
7849
|
-
//# sourceMappingURL=acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-
|
|
7973
|
+
//# sourceMappingURL=acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-Of1L93HC.mjs.map
|