@yuuvis/client-framework 2.1.0 → 2.1.1

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.
Files changed (25) hide show
  1. package/fesm2022/yuuvis-client-framework-forms.mjs +18 -35
  2. package/fesm2022/yuuvis-client-framework-forms.mjs.map +1 -1
  3. package/fesm2022/yuuvis-client-framework-object-details.mjs +235 -163
  4. package/fesm2022/yuuvis-client-framework-object-details.mjs.map +1 -1
  5. package/fesm2022/yuuvis-client-framework-tile-list.mjs +39 -19
  6. package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -1
  7. package/fesm2022/yuuvis-client-framework-upload-progress.mjs +18 -2
  8. package/fesm2022/yuuvis-client-framework-upload-progress.mjs.map +1 -1
  9. package/fesm2022/yuuvis-client-framework-widget-grid.mjs +2 -2
  10. package/fesm2022/yuuvis-client-framework-widget-grid.mjs.map +1 -1
  11. package/forms/lib/elements/datetime-range/datetime-range.component.d.ts +4 -4
  12. package/forms/lib/elements/range-select-date/date-range-picker/date-range-picker.component.d.ts +3 -3
  13. package/lib/assets/i18n/de.json +2 -2
  14. package/lib/assets/i18n/en.json +2 -2
  15. package/master-details/index.d.ts +1 -0
  16. package/object-details/index.d.ts +2 -0
  17. package/object-details/lib/object-details-header/object-details-header.component.d.ts +26 -0
  18. package/object-details/lib/object-details-shell/object-details-shell.component.d.ts +26 -38
  19. package/object-details/lib/object-details.component.d.ts +13 -5
  20. package/object-details/lib/object-details.module.d.ts +12 -0
  21. package/package.json +4 -4
  22. package/tile-list/lib/tile-config/tile-config-tile/tile-config-tile.component.d.ts +3 -3
  23. package/tile-list/lib/tile-config/tile-config.component.d.ts +3 -2
  24. package/upload-progress/index.d.ts +1 -0
  25. package/upload-progress/lib/upload-progress/upload-progress.module.d.ts +7 -0
@@ -1,51 +1,39 @@
1
- import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
2
- import { DmsObject } from '@yuuvis/client-core';
1
+ import { DmsObject, RetentionState, VirtualObjectType } from '@yuuvis/client-core';
3
2
  import * as i0 from "@angular/core";
4
- export declare class ObjectDetailsShellComponent implements OnInit, OnDestroy {
3
+ /**
4
+ * Wrapper component for details of a dms object. This component
5
+ * provides a header based on the object configuration for the given object.
6
+ * It will also take care of loading the object if you only provide the objects ID.
7
+ */
8
+ export declare class ObjectDetailsShellComponent {
9
+ #private;
5
10
  private translate;
6
- private objectConfigService;
7
- private eventService;
8
- private dmsService;
9
- private systemService;
10
- private userService;
11
- private _subs;
12
- _dmsObject?: DmsObject;
11
+ retentionState: import("@angular/core").WritableSignal<RetentionState | undefined>;
13
12
  contextError?: string;
14
- objectTypeId?: string;
15
- retentionEndDate?: Date;
16
- retentionEnded?: boolean;
17
- fileDropLabel?: string;
18
- busy: boolean;
19
- isAdvancedUser: boolean;
20
- private oc?;
21
- headerData?: {
22
- icon?: {
23
- src?: string;
24
- svg?: string;
25
- title?: string;
26
- };
27
- title?: string;
28
- description?: string;
29
- };
13
+ busy: import("@angular/core").WritableSignal<boolean>;
30
14
  /**
31
- * ID to store the components layout state (splitted tabs, gutter position)
15
+ * DmsObject to show the details for.
32
16
  */
33
- layoutSettingsID?: string;
17
+ dmsObject: import("@angular/core").InputSignal<DmsObject | undefined>;
18
+ _dmsObject: import("@angular/core").WritableSignal<DmsObject | undefined>;
34
19
  /**
35
- * DmsObject to show the details for.
20
+ * Virtual object type to use for retrieving header data
21
+ */
22
+ type: import("@angular/core").InputSignal<VirtualObjectType>;
23
+ /**
24
+ * Bucket of the object config to retrieve header data from
25
+ */
26
+ bucket: import("@angular/core").InputSignal<string | undefined>;
27
+ /**
28
+ * ID to store the components layout state (splitted tabs, gutter position)
36
29
  */
37
- set dmsObject(o: DmsObject | undefined);
38
- get dmsObject(): DmsObject | undefined;
39
- dmsObjectChange: EventEmitter<DmsObject>;
30
+ layoutSettingsID: import("@angular/core").InputSignal<string | undefined>;
40
31
  /**
41
32
  * ID of a DmsObject. The object will be fetched from the backend upfront.
42
33
  */
43
- set objectId(id: string | undefined);
34
+ objectId: import("@angular/core").InputSignal<string | undefined>;
35
+ dmsObjectChange: import("@angular/core").OutputEmitterRef<DmsObject>;
44
36
  constructor();
45
- private _getHeaderData;
46
- private _getDmsObject;
47
- ngOnInit(): void;
48
- ngOnDestroy(): void;
49
37
  static ɵfac: i0.ɵɵFactoryDeclaration<ObjectDetailsShellComponent, never>;
50
- static ɵcmp: i0.ɵɵComponentDeclaration<ObjectDetailsShellComponent, "yuv-object-details-shell", never, { "layoutSettingsID": { "alias": "layoutSettingsID"; "required": false; }; "dmsObject": { "alias": "dmsObject"; "required": false; }; "objectId": { "alias": "objectId"; "required": false; }; }, { "dmsObjectChange": "dmsObjectChange"; }, never, ["*"], true, never>;
38
+ static ɵcmp: i0.ɵɵComponentDeclaration<ObjectDetailsShellComponent, "yuv-object-details-shell", never, { "dmsObject": { "alias": "dmsObject"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": true; "isSignal": true; }; "bucket": { "alias": "bucket"; "required": false; "isSignal": true; }; "layoutSettingsID": { "alias": "layoutSettingsID"; "required": false; "isSignal": true; }; "objectId": { "alias": "objectId"; "required": false; "isSignal": true; }; }, { "dmsObjectChange": "dmsObjectChange"; }, never, ["*"], true, never>;
51
39
  }
@@ -1,9 +1,12 @@
1
- import { DmsObject } from '@yuuvis/client-core';
1
+ import { WritableSignal } from '@angular/core';
2
+ import { DmsObject, VirtualObjectType } from '@yuuvis/client-core';
3
+ import { ObjectDetailsShellComponent } from './object-details-shell/object-details-shell.component';
2
4
  import * as i0 from "@angular/core";
3
5
  export declare class ObjectDetailsComponent {
4
6
  #private;
7
+ detailsShell: import("@angular/core").Signal<ObjectDetailsShellComponent>;
5
8
  isAdvancedUser: boolean;
6
- currentUser: import("@angular/core").WritableSignal<import("@yuuvis/client-core").YuvUser>;
9
+ currentUser: WritableSignal<import("@yuuvis/client-core").YuvUser>;
7
10
  /**
8
11
  * If you want to set the order of the tabs within object details, you can use
9
12
  * this input property. The tab order will be defined by the index of the
@@ -18,11 +21,16 @@ export declare class ObjectDetailsComponent {
18
21
  /**
19
22
  * ID to store the components layout state (splitted tabs, gutter position)
20
23
  */
21
- layoutSettingsID?: string;
24
+ layoutSettingsID: WritableSignal<string | undefined>;
22
25
  /**
23
26
  * DmsObject to show the details for.
24
27
  */
25
- dmsObject?: DmsObject;
28
+ dmsObject: import("@angular/core").InputSignal<DmsObject | undefined>;
29
+ _dmsObject?: WritableSignal<DmsObject | undefined>;
30
+ /**
31
+ * Virtual object type to use for retrieving header data
32
+ */
33
+ type: import("@angular/core").InputSignal<VirtualObjectType>;
26
34
  /**
27
35
  * ID of a DmsObject. The object will be fetched from the backend upfront.
28
36
  */
@@ -30,5 +38,5 @@ export declare class ObjectDetailsComponent {
30
38
  constructor();
31
39
  onIndexdataSaved(updatedObject: DmsObject): void;
32
40
  static ɵfac: i0.ɵɵFactoryDeclaration<ObjectDetailsComponent, never>;
33
- static ɵcmp: i0.ɵɵComponentDeclaration<ObjectDetailsComponent, "yuv-object-details", never, { "panelOrder": { "alias": "panelOrder"; "required": false; }; "layoutSettingsID": { "alias": "layoutSettingsID"; "required": false; }; "dmsObject": { "alias": "dmsObject"; "required": false; }; "objectId": { "alias": "objectId"; "required": false; }; }, {}, never, never, true, never>;
41
+ static ɵcmp: i0.ɵɵComponentDeclaration<ObjectDetailsComponent, "yuv-object-details", never, { "panelOrder": { "alias": "panelOrder"; "required": false; }; "dmsObject": { "alias": "dmsObject"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": true; "isSignal": true; }; "objectId": { "alias": "objectId"; "required": false; }; }, {}, never, never, true, never>;
34
42
  }
@@ -0,0 +1,12 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./object-details.component";
3
+ import * as i2 from "./object-details-header/object-details-header.component";
4
+ import * as i3 from "./object-details-shell/object-details-shell.component";
5
+ import * as i4 from "./object-metadata/object-metadata.component";
6
+ import * as i5 from "./object-audit/object-audit.component";
7
+ import * as i6 from "./retention-badge/retention-badge.component";
8
+ export declare class YuvObjectDetailsModule {
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<YuvObjectDetailsModule, never>;
10
+ static ɵmod: i0.ɵɵNgModuleDeclaration<YuvObjectDetailsModule, never, [typeof i1.ObjectDetailsComponent, typeof i2.ObjectDetailsHeaderComponent, typeof i3.ObjectDetailsShellComponent, typeof i4.ObjectMetadataComponent, typeof i5.ObjectAuditComponent, typeof i6.RetentionBadgeComponent], [typeof i1.ObjectDetailsComponent, typeof i2.ObjectDetailsHeaderComponent, typeof i3.ObjectDetailsShellComponent, typeof i4.ObjectMetadataComponent, typeof i5.ObjectAuditComponent, typeof i6.RetentionBadgeComponent]>;
11
+ static ɵinj: i0.ɵɵInjectorDeclaration<YuvObjectDetailsModule>;
12
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yuuvis/client-framework",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "author": "OPTIMAL SYSTEMS GmbH <npm@optimal-systems.de>",
5
5
  "license": "MIT",
6
6
  "peerDependencies": {
@@ -8,15 +8,15 @@
8
8
  "@angular/common": "^19.2.1",
9
9
  "@angular/core": "^19.2.1",
10
10
  "angular-gridster2": "^19.0.0",
11
- "@yuuvis/client-core": "^2.1.0",
12
- "@yuuvis/client-shell-core": "^2.1.0",
11
+ "@yuuvis/client-core": "^2.1.1",
12
+ "@yuuvis/client-shell-core": "^2.1.1",
13
13
  "ng-dynamic-component": "^10.8.2",
14
14
  "modern-normalize": "^3.0.1"
15
15
  },
16
16
  "dependencies": {
17
17
  "@angular/material": "^19.2.15",
18
18
  "@ngrx/signals": "^19.2.0",
19
- "@yuuvis/material": "2.1.0",
19
+ "@yuuvis/material": "2.1.1",
20
20
  "@yuuvis/media-viewer": "^2.0.4",
21
21
  "angular-split": "^19.0.0",
22
22
  "tslib": "^2.3.0"
@@ -10,11 +10,11 @@ export declare class TileConfigTileComponent {
10
10
  private readonly elRef;
11
11
  disableIconSlot: import("@angular/core").InputSignal<boolean | undefined>;
12
12
  disableBadgesSlot: import("@angular/core").InputSignal<boolean | undefined>;
13
- objectConfigInput: import("@angular/core").InputSignal<ObjectConfig>;
14
- objectConfig: import("@angular/core").Signal<ObjectConfig>;
13
+ objectConfig: import("@angular/core").InputSignal<ObjectConfig>;
14
+ _objectConfig: import("@angular/core").Signal<ObjectConfig>;
15
15
  actions: import("@angular/core").Signal<Action[]>;
16
16
  slotSelect: import("@angular/core").OutputEmitterRef<string>;
17
17
  selectSlot(slot: string): void;
18
18
  static ɵfac: i0.ɵɵFactoryDeclaration<TileConfigTileComponent, never>;
19
- static ɵcmp: i0.ɵɵComponentDeclaration<TileConfigTileComponent, "yuv-tile-config-tile", never, { "disableIconSlot": { "alias": "disableIconSlot"; "required": false; "isSignal": true; }; "disableBadgesSlot": { "alias": "disableBadgesSlot"; "required": false; "isSignal": true; }; "objectConfigInput": { "alias": "objectConfig"; "required": true; "isSignal": true; }; }, { "slotSelect": "slotSelect"; }, never, never, true, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<TileConfigTileComponent, "yuv-tile-config-tile", never, { "disableIconSlot": { "alias": "disableIconSlot"; "required": false; "isSignal": true; }; "disableBadgesSlot": { "alias": "disableBadgesSlot"; "required": false; "isSignal": true; }; "objectConfig": { "alias": "objectConfig"; "required": true; "isSignal": true; }; }, { "slotSelect": "slotSelect"; }, never, never, true, never>;
20
20
  }
@@ -15,6 +15,7 @@ export declare class TileConfigComponent {
15
15
  bucketLabel: import("@angular/core").InputSignal<string | undefined>;
16
16
  configTypes: import("@angular/core").InputSignal<VirtualObjectType[] | undefined>;
17
17
  configFlavors: import("@angular/core").InputSignal<ObjectFlavor[]>;
18
+ get configChanged(): boolean;
18
19
  types: Signal<{
19
20
  id: string;
20
21
  icon?: string;
@@ -25,10 +26,10 @@ export declare class TileConfigComponent {
25
26
  cancel: import("@angular/core").OutputEmitterRef<void>;
26
27
  selectedType?: VirtualObjectType;
27
28
  selectedTypeProperties: ObjectTypeField[];
28
- private _emptyObjectConfig;
29
29
  objectConfig?: ObjectConfig;
30
30
  selectedSlot?: string;
31
31
  flavors: ObjectFlavor[];
32
+ changes: Record<string, ObjectConfig | undefined>;
32
33
  getConfigValue(p: string): ObjectConfigIcon | ObjectConfigProperty | ObjectConfigAction | ObjectConfigBadge | undefined;
33
34
  getConfigProperty(p: string): ObjectConfigProperty | undefined;
34
35
  getSelectedActions(): string[];
@@ -38,7 +39,7 @@ export declare class TileConfigComponent {
38
39
  propertySelected(tileSlot: string, field?: Partial<ObjectTypeField>): void;
39
40
  actionSelected(action: Action): void;
40
41
  saveConfig(): void;
41
- private _saveTileConfig;
42
+ resetConfig(): void;
42
43
  static ɵfac: i0.ɵɵFactoryDeclaration<TileConfigComponent, never>;
43
44
  static ɵcmp: i0.ɵɵComponentDeclaration<TileConfigComponent, "yuv-tile-config", never, { "bucket": { "alias": "bucket"; "required": false; "isSignal": true; }; "bucketLabel": { "alias": "bucketLabel"; "required": false; "isSignal": true; }; "configTypes": { "alias": "configTypes"; "required": false; "isSignal": true; }; "configFlavors": { "alias": "configFlavors"; "required": false; "isSignal": true; }; }, { "save": "save"; "cancel": "cancel"; }, never, never, true, never>;
44
45
  }
@@ -1 +1,2 @@
1
1
  export * from './lib/upload-progress/upload-progress.component';
2
+ export * from './lib/upload-progress/upload-progress.module';
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./upload-progress.component";
3
+ export declare class YuvUploadProgressModule {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<YuvUploadProgressModule, never>;
5
+ static ɵmod: i0.ɵɵNgModuleDeclaration<YuvUploadProgressModule, never, [typeof i1.UploadProgressComponent], [typeof i1.UploadProgressComponent]>;
6
+ static ɵinj: i0.ɵɵInjectorDeclaration<YuvUploadProgressModule>;
7
+ }