@anzusystems/common-admin 2.0.0-rc.8 → 2.0.0-rc.9

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 (70) hide show
  1. package/dist/AnzuSystemsCommonAdmin.d.ts +9 -0
  2. package/dist/AnzuSystemsCommonAdmin.js.map +1 -1
  3. package/dist/common-admin.css +1 -1
  4. package/dist/common-admin.js +170 -169
  5. package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.js.map +1 -1
  6. package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.vue.d.ts +5 -1
  7. package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.vue_vue_type_script_setup_true_lang.js +94 -67
  8. package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  9. package/dist/domains/dam/assetDetail/components/AssetImage.js.map +1 -1
  10. package/dist/domains/dam/assetDetail/components/AssetImage.vue.d.ts +7 -0
  11. package/dist/domains/dam/assetDetail/components/AssetImage.vue_vue_type_script_setup_true_lang.js +27 -13
  12. package/dist/domains/dam/assetDetail/components/AssetImage.vue_vue_type_script_setup_true_lang.js.map +1 -1
  13. package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.js.map +1 -1
  14. package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.vue.d.ts +7 -0
  15. package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.vue_vue_type_script_setup_true_lang.js +56 -28
  16. package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.vue_vue_type_script_setup_true_lang.js.map +1 -1
  17. package/dist/domains/dam/assetDetail/components/AssetMetadata.js.map +1 -1
  18. package/dist/domains/dam/assetDetail/components/AssetMetadata.vue_vue_type_script_setup_true_lang.js +107 -89
  19. package/dist/domains/dam/assetDetail/components/AssetMetadata.vue_vue_type_script_setup_true_lang.js.map +1 -1
  20. package/dist/domains/dam/assetDetail/composables/autoDeleteTimeLeft.d.ts +9 -0
  21. package/dist/domains/dam/assetDetail/composables/autoDeleteTimeLeft.js +18 -0
  22. package/dist/domains/dam/assetDetail/composables/autoDeleteTimeLeft.js.map +1 -0
  23. package/dist/domains/dam/assetDetail/store/assetDetailStore.d.ts +4 -2
  24. package/dist/domains/dam/assetSelect/components/AAssetListInner.vue.d.ts +4 -2
  25. package/dist/domains/dam/assetSelect/components/AAssetSelect.vue.d.ts +2 -1
  26. package/dist/domains/dam/assetSelect/components/AssetImagePreview.js.map +1 -1
  27. package/dist/domains/dam/assetSelect/components/AssetImagePreview.vue.d.ts +3 -0
  28. package/dist/domains/dam/assetSelect/components/AssetImagePreview.vue_vue_type_script_setup_true_lang.js +16 -5
  29. package/dist/domains/dam/assetSelect/components/AssetImagePreview.vue_vue_type_script_setup_true_lang.js.map +1 -1
  30. package/dist/domains/dam/assetSelect/components/AssetSelectTableRowItem.js.map +1 -1
  31. package/dist/domains/dam/assetSelect/components/AssetSelectTableRowItem.vue_vue_type_script_setup_true_lang.js +8 -3
  32. package/dist/domains/dam/assetSelect/components/AssetSelectTableRowItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  33. package/dist/domains/dam/assetSelect/components/AssetSelectTilesItem.js.map +1 -1
  34. package/dist/domains/dam/assetSelect/components/AssetSelectTilesItem.vue_vue_type_script_setup_true_lang.js +5 -3
  35. package/dist/domains/dam/assetSelect/components/AssetSelectTilesItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  36. package/dist/domains/dam/assetSelect/composables/assetSelectItemActions.d.ts +2 -0
  37. package/dist/domains/dam/assetSelect/composables/assetSelectItemActions.js +37 -31
  38. package/dist/domains/dam/assetSelect/composables/assetSelectItemActions.js.map +1 -1
  39. package/dist/domains/dam/assetSelect/composables/assetSelectListActions.d.ts +4 -2
  40. package/dist/domains/dam/assetSelect/store/assetSelectStore.d.ts +8 -4
  41. package/dist/domains/dam/composables/commonAdminCoreDamOptions.d.ts +3 -0
  42. package/dist/domains/dam/composables/commonAdminCoreDamOptions.js +3 -0
  43. package/dist/domains/dam/composables/commonAdminCoreDamOptions.js.map +1 -1
  44. package/dist/domains/dam/cropper/store/imageRoiStore.d.ts +2 -2
  45. package/dist/domains/dam/imageWidget/components/ImageWidgetInner.vue.d.ts +2 -1
  46. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleInner.vue.d.ts +2 -1
  47. package/dist/domains/dam/imageWidget/composables/imageDialogDamAuthors.d.ts +2 -1
  48. package/dist/domains/dam/types/Asset.d.ts +3 -1
  49. package/dist/domains/dam/types/Asset.js.map +1 -1
  50. package/dist/domains/dam/types/AssetFile.d.ts +1 -1
  51. package/dist/domains/dam/types/AssetFile.js.map +1 -1
  52. package/dist/domains/dam/types/AssetLicence.d.ts +7 -0
  53. package/dist/domains/dam/user/api/assetLicenceApi.d.ts +2 -1
  54. package/dist/domains/dam/user/api/assetLicenceApi.js +4 -4
  55. package/dist/domains/dam/user/api/assetLicenceApi.js.map +1 -1
  56. package/dist/domains/dam/user/composables/cachedAssetLicences.d.ts +17 -0
  57. package/dist/domains/dam/user/composables/cachedAssetLicences.js +35 -0
  58. package/dist/domains/dam/user/composables/cachedAssetLicences.js.map +1 -0
  59. package/dist/lib.d.ts +3 -2
  60. package/dist/locales/cs/common/damImage.js +29 -0
  61. package/dist/locales/cs/common/damImage.js.map +1 -1
  62. package/dist/locales/cs.d.ts +3 -0
  63. package/dist/locales/en/common/damImage.js +29 -0
  64. package/dist/locales/en/common/damImage.js.map +1 -1
  65. package/dist/locales/en.d.ts +3 -0
  66. package/dist/locales/sk/common/damImage.js +29 -0
  67. package/dist/locales/sk/common/damImage.js.map +1 -1
  68. package/dist/locales/sk.d.ts +3 -0
  69. package/dist/plugins/i18n.d.ts +3 -0
  70. package/package.json +2 -2
@@ -0,0 +1,18 @@
1
+ import { dateDiff as e, dateNow as t, dateTimeToDate as n } from "../../../../shared/utils/datetime.js";
2
+ import { computed as r, shallowRef as i, watch as a } from "vue";
3
+ import { useIntervalFn as o } from "@vueuse/core";
4
+ // src/domains/dam/assetDetail/composables/autoDeleteTimeLeft.ts
5
+ function s(s) {
6
+ let c = i(t()), l = o(() => {
7
+ c.value = t();
8
+ }, 6e4, { immediate: !1 });
9
+ return a(s, (e) => {
10
+ c.value = t(), e ? l.resume() : l.pause();
11
+ }, { immediate: !0 }), { secondsLeft: r(() => {
12
+ let t = s();
13
+ return t ? Math.max(0, e(n(t), c.value, "s")) : null;
14
+ }) };
15
+ }
16
+ export { s as useAutoDeleteTimeLeft };
17
+
18
+ //# sourceMappingURL=autoDeleteTimeLeft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autoDeleteTimeLeft.js","names":["useAutoDeleteTimeLeft","now","shallowRef","dateNow","clock","useIntervalFn","watch","autoDeleteAt","value","computed","dateDiff","dateTimeToDate"],"sources":["../../../../../src/domains/dam/assetDetail/composables/autoDeleteTimeLeft.ts"],"sourcesContent":["import { useIntervalFn } from '@vueuse/core'\nimport { computed, shallowRef, watch } from 'vue'\nimport type { DatetimeUTCNullable } from '@/shared/types/common'\nimport { dateDiff, dateNow, dateTimeToDate } from '@/shared/utils/datetime'\n\n/**\n * Seconds left until DAM deletes the asset (`autoDeleteAt`), never below zero; `null` when it is not deleted.\n * The time moves on while it is shown: a clock ticks every minute, and only while there is a date.\n * Call it in component setup, the clock stops with the component.\n */\nexport function useAutoDeleteTimeLeft(autoDeleteAt: () => DatetimeUTCNullable | undefined) {\n const now = shallowRef(dateNow())\n const clock = useIntervalFn(\n () => {\n now.value = dateNow()\n },\n 60_000,\n { immediate: false }\n )\n watch(\n autoDeleteAt,\n (value) => {\n now.value = dateNow()\n if (value) clock.resume()\n else clock.pause()\n },\n { immediate: true }\n )\n\n const secondsLeft = computed(() => {\n const value = autoDeleteAt()\n if (!value) return null\n return Math.max(0, dateDiff(dateTimeToDate(value), now.value, 's'))\n })\n\n return { secondsLeft }\n}\n"],"mappings":";;;;AAUA,SAAgBA,EAAsB,GAAqD;CACzF,IAAMC,IAAMC,EAAWC,EAAQ,CAAC,GAC1BC,IAAQC,QACN;EACJ,EAAI,QAAQF,EAAQ;CACtB,GACA,KACA,EAAE,WAAW,GAAM,CACrB;CAiBA,OAhBAG,EACEC,IACC,MAAU;EAET,AADA,EAAI,QAAQJ,EAAQ,GAChBK,IAAOJ,EAAM,OAAO,IACnBA,EAAM,MAAM;CACnB,GACA,EAAE,WAAW,GAAK,CACpB,GAQO,EAAE,aANWK,QAAe;EACjC,IAAMD,IAAQD,EAAa;EAE3B,OADKC,IACE,KAAK,IAAI,GAAGE,EAASC,EAAeH,CAAK,GAAGP,EAAI,OAAO,GAAG,CAAC,IAD/C;CAErB,CAES,EAAY;AACvB"}
@@ -93,7 +93,7 @@ export declare const useAssetDetailStore: import('pinia').SetupStoreDefinition<"
93
93
  };
94
94
  } | undefined;
95
95
  metadata: {
96
- exifData: [];
96
+ exifData: Record<string, string | number | boolean | null>;
97
97
  id: string;
98
98
  createdAt: string;
99
99
  modifiedAt: string;
@@ -391,6 +391,7 @@ export declare const useAssetDetailStore: import('pinia').SetupStoreDefinition<"
391
391
  mainFileSingleUse: Readonly<boolean | null>;
392
392
  mainFileInternal: Readonly<boolean | null>;
393
393
  mainFileOverrideInternal: Readonly<boolean | null>;
394
+ autoDeleteAt: Readonly<import('../../../../shared/types/common').DatetimeUTCNullable>;
394
395
  createdAt: import('../../../../shared/types/common').DatetimeUTC;
395
396
  modifiedAt: import('../../../../shared/types/common').DatetimeUTC;
396
397
  modifiedBy: import('../../../../shared/types/common').IntegerIdNullable;
@@ -480,7 +481,7 @@ export declare const useAssetDetailStore: import('pinia').SetupStoreDefinition<"
480
481
  };
481
482
  } | undefined;
482
483
  metadata: {
483
- exifData: [];
484
+ exifData: Record<string, string | number | boolean | null>;
484
485
  id: string;
485
486
  createdAt: string;
486
487
  modifiedAt: string;
@@ -778,6 +779,7 @@ export declare const useAssetDetailStore: import('pinia').SetupStoreDefinition<"
778
779
  mainFileSingleUse: Readonly<boolean | null>;
779
780
  mainFileInternal: Readonly<boolean | null>;
780
781
  mainFileOverrideInternal: Readonly<boolean | null>;
782
+ autoDeleteAt: Readonly<import('../../../../shared/types/common').DatetimeUTCNullable>;
781
783
  createdAt: import('../../../../shared/types/common').DatetimeUTC;
782
784
  modifiedAt: import('../../../../shared/types/common').DatetimeUTC;
783
785
  modifiedBy: import('../../../../shared/types/common').IntegerIdNullable;
@@ -110,7 +110,7 @@ declare const __VLS_template: () => {
110
110
  };
111
111
  } | undefined;
112
112
  metadata: {
113
- exifData: [];
113
+ exifData: Record<string, string | number | boolean | null>;
114
114
  id: string;
115
115
  createdAt: string;
116
116
  modifiedAt: string;
@@ -408,6 +408,7 @@ declare const __VLS_template: () => {
408
408
  mainFileSingleUse: Readonly<boolean | null>;
409
409
  mainFileInternal: Readonly<boolean | null>;
410
410
  mainFileOverrideInternal: Readonly<boolean | null>;
411
+ autoDeleteAt: Readonly<import('../../../../lib').DatetimeUTCNullable>;
411
412
  createdAt: import('../../../../lib').DatetimeUTC;
412
413
  modifiedAt: import('../../../../lib').DatetimeUTC;
413
414
  modifiedBy: import('../../../../lib').IntegerIdNullable;
@@ -501,7 +502,7 @@ declare const __VLS_template: () => {
501
502
  };
502
503
  } | undefined;
503
504
  metadata: {
504
- exifData: [];
505
+ exifData: Record<string, string | number | boolean | null>;
505
506
  id: string;
506
507
  createdAt: string;
507
508
  modifiedAt: string;
@@ -799,6 +800,7 @@ declare const __VLS_template: () => {
799
800
  mainFileSingleUse: Readonly<boolean | null>;
800
801
  mainFileInternal: Readonly<boolean | null>;
801
802
  mainFileOverrideInternal: Readonly<boolean | null>;
803
+ autoDeleteAt: Readonly<import('../../../../lib').DatetimeUTCNullable>;
802
804
  createdAt: import('../../../../lib').DatetimeUTC;
803
805
  modifiedAt: import('../../../../lib').DatetimeUTC;
804
806
  modifiedBy: import('../../../../lib').IntegerIdNullable;
@@ -114,7 +114,7 @@ declare const __VLS_template: () => {
114
114
  };
115
115
  } | undefined;
116
116
  metadata: {
117
- exifData: [];
117
+ exifData: Record<string, string | number | boolean | null>;
118
118
  id: string;
119
119
  createdAt: string;
120
120
  modifiedAt: string;
@@ -412,6 +412,7 @@ declare const __VLS_template: () => {
412
412
  mainFileSingleUse: Readonly<boolean | null>;
413
413
  mainFileInternal: Readonly<boolean | null>;
414
414
  mainFileOverrideInternal: Readonly<boolean | null>;
415
+ autoDeleteAt: Readonly<import('../../../../shared/types/common').DatetimeUTCNullable>;
415
416
  createdAt: import('../../../../shared/types/common').DatetimeUTC;
416
417
  modifiedAt: import('../../../../shared/types/common').DatetimeUTC;
417
418
  modifiedBy: import('../../../../shared/types/common').IntegerIdNullable;
@@ -1 +1 @@
1
- {"version":3,"file":"AssetImagePreview.js","names":["_sfc_main","AssetImagePreview_vue_vue_type_script_setup_true_lang_default","AssetImagePreview_default"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetImagePreview.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport {\n type AssetFileProperties,\n DamAssetStatus,\n type DamAssetStatusType,\n DamAssetType,\n type DamAssetTypeType,\n} from '@/domains/dam/types/Asset'\nimport placeholder16x9 from '@/assets/image/placeholder16x9.svg'\nimport { isUndefined } from '@/shared/utils/common'\nimport AssetImageMetaIcons from '@/domains/dam/assetDetail/components/AssetImageMetaIcons.vue'\n\nconst props = withDefaults(\n defineProps<{\n src?: string\n assetType?: DamAssetTypeType\n assetStatus?: DamAssetStatusType\n backgroundColor?: string\n width?: number\n height?: number\n fallbackHeight?: number\n iconSize?: number\n iconColor?: string\n showMetaIcons?: boolean\n assetFileProperties?: AssetFileProperties | undefined\n }>(),\n {\n assetType: DamAssetType.Image,\n assetStatus: DamAssetStatus.WithFile,\n src: undefined,\n backgroundColor: '#ccc',\n width: undefined,\n height: undefined,\n fallbackHeight: 200,\n iconSize: 80,\n iconColor: '#505050',\n showMetaIcons: false,\n assetFileProperties: undefined,\n }\n)\nconst emit = defineEmits<{\n (e: 'error'): void\n}>()\n\nconst onError = () => {\n emit('error')\n}\n\nconst icon = computed(() => {\n if (props.assetStatus === DamAssetStatus.Deleting) return 'mdi-trash-can'\n switch (props.assetType) {\n case DamAssetType.Audio:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-music' : 'mdi-music-off'\n case DamAssetType.Document:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-note' : 'mdi-note-off'\n case DamAssetType.Video:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-video' : 'mdi-video-off'\n case DamAssetType.Image:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-image' : 'mdi-image-off'\n default:\n return ''\n }\n})\n\nconst srcComputed = computed(() => {\n return isUndefined(props.src) ? placeholder16x9 : props.src\n})\n\nconst showIconComputed = computed(() => {\n if (props.assetType === DamAssetType.Image && props.src) return false\n return true\n})\n</script>\n\n<template>\n <div\n v-if=\"assetStatus === DamAssetStatus.WithFile && src\"\n class=\"anzu-common-asset-image anzu-common-asset-image--img position-relative\"\n :style=\"{ width: width + 'px' }\"\n >\n <img\n class=\"anzu-common-asset-image__img\"\n :src=\"srcComputed\"\n :width=\"width\"\n :height=\"height\"\n alt=\"\"\n loading=\"lazy\"\n :style=\"'background-color:' + backgroundColor\"\n @onerror=\"onError\"\n />\n <div\n v-if=\"showIconComputed\"\n class=\"anzu-common-asset-image__icon-wrapper\"\n >\n <div\n class=\"anzu-common-asset-image__icon-circle\"\n :style=\"{ padding: iconSize / 4 + 'px' }\"\n >\n <VIcon\n v-if=\"icon.length\"\n :size=\"iconSize\"\n :icon=\"icon\"\n :color=\"iconColor\"\n class=\"anzu-common-asset-image__icon\"\n />\n </div>\n </div>\n <AssetImageMetaIcons\n v-if=\"showMetaIcons && assetFileProperties\"\n :asset-file-properties=\"assetFileProperties\"\n :asset-type=\"assetType\"\n />\n </div>\n <div\n v-else\n :style=\"{ height: fallbackHeight + 'px', backgroundColor: backgroundColor }\"\n style=\"width: 100%\"\n class=\"asset-image asset-image--placeholder d-flex align-center justify-center\"\n >\n <div\n v-if=\"showIconComputed\"\n class=\"asset-image__icon-wrapper\"\n >\n <div\n class=\"asset-image__icon-circle\"\n :style=\"{ padding: iconSize / 4 + 'px' }\"\n >\n <VIcon\n v-if=\"icon.length\"\n :size=\"iconSize\"\n :icon=\"icon\"\n :color=\"iconColor\"\n class=\"asset-image__icon\"\n />\n </div>\n </div>\n <AssetImageMetaIcons\n v-if=\"showMetaIcons && assetFileProperties\"\n :asset-file-properties=\"assetFileProperties\"\n :asset-type=\"assetType\"\n />\n </div>\n</template>\n\n<style lang=\"scss\">\n.anzu-common-asset-image {\n position: relative;\n\n &__icon-wrapper {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n &__icon-circle {\n border-radius: 100%;\n background-color: rgb(204 204 204 / 50%);\n }\n}\n</style>\n"],"mappings":""}
1
+ {"version":3,"file":"AssetImagePreview.js","names":["_sfc_main","AssetImagePreview_vue_vue_type_script_setup_true_lang_default","AssetImagePreview_default"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetImagePreview.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport {\n type AssetFileProperties,\n DamAssetStatus,\n type DamAssetStatusType,\n DamAssetType,\n type DamAssetTypeType,\n} from '@/domains/dam/types/Asset'\nimport placeholder16x9 from '@/assets/image/placeholder16x9.svg'\nimport { isUndefined } from '@/shared/utils/common'\nimport AssetImageMetaIcons from '@/domains/dam/assetDetail/components/AssetImageMetaIcons.vue'\n\nconst props = withDefaults(\n defineProps<{\n src?: string\n assetType?: DamAssetTypeType\n assetStatus?: DamAssetStatusType\n backgroundColor?: string\n width?: number\n height?: number\n fallbackHeight?: number\n iconSize?: number\n iconColor?: string\n showMetaIcons?: boolean\n assetFileProperties?: AssetFileProperties | undefined\n /** Passed to the meta icons: the badge of the asset's licence. */\n licenceBadge?: string\n }>(),\n {\n assetType: DamAssetType.Image,\n assetStatus: DamAssetStatus.WithFile,\n src: undefined,\n backgroundColor: '#ccc',\n width: undefined,\n height: undefined,\n fallbackHeight: 200,\n iconSize: 80,\n iconColor: '#505050',\n showMetaIcons: false,\n assetFileProperties: undefined,\n licenceBadge: '',\n }\n)\nconst emit = defineEmits<{\n (e: 'error'): void\n}>()\n\nconst onError = () => {\n emit('error')\n}\n\nconst icon = computed(() => {\n if (props.assetStatus === DamAssetStatus.Deleting) return 'mdi-trash-can'\n switch (props.assetType) {\n case DamAssetType.Audio:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-music' : 'mdi-music-off'\n case DamAssetType.Document:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-note' : 'mdi-note-off'\n case DamAssetType.Video:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-video' : 'mdi-video-off'\n case DamAssetType.Image:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-image' : 'mdi-image-off'\n default:\n return ''\n }\n})\n\nconst srcComputed = computed(() => {\n return isUndefined(props.src) ? placeholder16x9 : props.src\n})\n\nconst showIconComputed = computed(() => {\n if (props.assetType === DamAssetType.Image && props.src) return false\n return true\n})\n</script>\n\n<template>\n <div\n v-if=\"assetStatus === DamAssetStatus.WithFile && src\"\n class=\"anzu-common-asset-image anzu-common-asset-image--img position-relative\"\n :style=\"{ width: width + 'px' }\"\n >\n <img\n class=\"anzu-common-asset-image__img\"\n :src=\"srcComputed\"\n :width=\"width\"\n :height=\"height\"\n alt=\"\"\n loading=\"lazy\"\n :style=\"'background-color:' + backgroundColor\"\n @onerror=\"onError\"\n />\n <div\n v-if=\"showIconComputed\"\n class=\"anzu-common-asset-image__icon-wrapper\"\n >\n <div\n class=\"anzu-common-asset-image__icon-circle\"\n :style=\"{ padding: iconSize / 4 + 'px' }\"\n >\n <VIcon\n v-if=\"icon.length\"\n :size=\"iconSize\"\n :icon=\"icon\"\n :color=\"iconColor\"\n class=\"anzu-common-asset-image__icon\"\n />\n </div>\n </div>\n <AssetImageMetaIcons\n v-if=\"showMetaIcons && assetFileProperties\"\n :asset-file-properties=\"assetFileProperties\"\n :asset-type=\"assetType\"\n :licence-badge=\"licenceBadge\"\n />\n </div>\n <div\n v-else\n :style=\"{ height: fallbackHeight + 'px', backgroundColor: backgroundColor }\"\n style=\"width: 100%\"\n class=\"asset-image asset-image--placeholder d-flex align-center justify-center\"\n >\n <div\n v-if=\"showIconComputed\"\n class=\"asset-image__icon-wrapper\"\n >\n <div\n class=\"asset-image__icon-circle\"\n :style=\"{ padding: iconSize / 4 + 'px' }\"\n >\n <VIcon\n v-if=\"icon.length\"\n :size=\"iconSize\"\n :icon=\"icon\"\n :color=\"iconColor\"\n class=\"asset-image__icon\"\n />\n </div>\n </div>\n <AssetImageMetaIcons\n v-if=\"showMetaIcons && assetFileProperties\"\n :asset-file-properties=\"assetFileProperties\"\n :asset-type=\"assetType\"\n :licence-badge=\"licenceBadge\"\n />\n </div>\n</template>\n\n<style lang=\"scss\">\n.anzu-common-asset-image {\n position: relative;\n\n &__icon-wrapper {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n &__icon-circle {\n border-radius: 100%;\n background-color: rgb(204 204 204 / 50%);\n }\n}\n</style>\n"],"mappings":""}
@@ -11,6 +11,8 @@ type __VLS_Props = {
11
11
  iconColor?: string;
12
12
  showMetaIcons?: boolean;
13
13
  assetFileProperties?: AssetFileProperties | undefined;
14
+ /** Passed to the meta icons: the badge of the asset's licence. */
15
+ licenceBadge?: string;
14
16
  };
15
17
  declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
16
18
  error: () => any;
@@ -25,6 +27,7 @@ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {
25
27
  src: string;
26
28
  assetFileProperties: AssetFileProperties;
27
29
  assetStatus: DamAssetStatusType;
30
+ licenceBadge: string;
28
31
  backgroundColor: string;
29
32
  fallbackHeight: number;
30
33
  showMetaIcons: boolean;
@@ -31,7 +31,8 @@ var h = [
31
31
  type: Boolean,
32
32
  default: !1
33
33
  },
34
- assetFileProperties: { default: void 0 }
34
+ assetFileProperties: { default: void 0 },
35
+ licenceBadge: { default: "" }
35
36
  },
36
37
  emits: ["error"],
37
38
  setup(u, { emit: v }) {
@@ -79,8 +80,13 @@ var h = [
79
80
  u.showMetaIcons && u.assetFileProperties ? (f(), o(i, {
80
81
  key: 1,
81
82
  "asset-file-properties": u.assetFileProperties,
82
- "asset-type": u.assetType
83
- }, null, 8, ["asset-file-properties", "asset-type"])) : s("", !0)
83
+ "asset-type": u.assetType,
84
+ "licence-badge": u.licenceBadge
85
+ }, null, 8, [
86
+ "asset-file-properties",
87
+ "asset-type",
88
+ "licence-badge"
89
+ ])) : s("", !0)
84
90
  ], 4)) : (f(), c("div", {
85
91
  key: 1,
86
92
  style: d([{
@@ -104,8 +110,13 @@ var h = [
104
110
  ])) : s("", !0)], 4)])) : s("", !0), u.showMetaIcons && u.assetFileProperties ? (f(), o(i, {
105
111
  key: 1,
106
112
  "asset-file-properties": u.assetFileProperties,
107
- "asset-type": u.assetType
108
- }, null, 8, ["asset-file-properties", "asset-type"])) : s("", !0)], 4));
113
+ "asset-type": u.assetType,
114
+ "licence-badge": u.licenceBadge
115
+ }, null, 8, [
116
+ "asset-file-properties",
117
+ "asset-type",
118
+ "licence-badge"
119
+ ])) : s("", !0)], 4));
109
120
  }
110
121
  });
111
122
  export { v as default };
@@ -1 +1 @@
1
- {"version":3,"file":"AssetImagePreview.vue_vue_type_script_setup_true_lang.js","names":["placeholder16x9","_unref","_openBlock","_createElementBlock","_normalizeStyle","_createElementVNode","_createBlock","_component_VIcon","_createCommentVNode","AssetImageMetaIcons","placeholder16x9_default","AssetImageMetaIcons_default","_hoisted_1","_hoisted_2","_hoisted_3","AssetImagePreview_vue_vue_type_script_setup_true_lang_default","DamAssetType","DamAssetStatus","__emit","props","__props","emit","onError","icon","computed","srcComputed","isUndefined","showIconComputed","unref","openBlock","createElementBlock","normalizeStyle","createElementVNode","createBlock","VIcon","createCommentVNode","\"width\""],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetImagePreview.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport {\n type AssetFileProperties,\n DamAssetStatus,\n type DamAssetStatusType,\n DamAssetType,\n type DamAssetTypeType,\n} from '@/domains/dam/types/Asset'\nimport placeholder16x9 from '@/assets/image/placeholder16x9.svg'\nimport { isUndefined } from '@/shared/utils/common'\nimport AssetImageMetaIcons from '@/domains/dam/assetDetail/components/AssetImageMetaIcons.vue'\n\nconst props = withDefaults(\n defineProps<{\n src?: string\n assetType?: DamAssetTypeType\n assetStatus?: DamAssetStatusType\n backgroundColor?: string\n width?: number\n height?: number\n fallbackHeight?: number\n iconSize?: number\n iconColor?: string\n showMetaIcons?: boolean\n assetFileProperties?: AssetFileProperties | undefined\n }>(),\n {\n assetType: DamAssetType.Image,\n assetStatus: DamAssetStatus.WithFile,\n src: undefined,\n backgroundColor: '#ccc',\n width: undefined,\n height: undefined,\n fallbackHeight: 200,\n iconSize: 80,\n iconColor: '#505050',\n showMetaIcons: false,\n assetFileProperties: undefined,\n }\n)\nconst emit = defineEmits<{\n (e: 'error'): void\n}>()\n\nconst onError = () => {\n emit('error')\n}\n\nconst icon = computed(() => {\n if (props.assetStatus === DamAssetStatus.Deleting) return 'mdi-trash-can'\n switch (props.assetType) {\n case DamAssetType.Audio:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-music' : 'mdi-music-off'\n case DamAssetType.Document:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-note' : 'mdi-note-off'\n case DamAssetType.Video:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-video' : 'mdi-video-off'\n case DamAssetType.Image:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-image' : 'mdi-image-off'\n default:\n return ''\n }\n})\n\nconst srcComputed = computed(() => {\n return isUndefined(props.src) ? placeholder16x9 : props.src\n})\n\nconst showIconComputed = computed(() => {\n if (props.assetType === DamAssetType.Image && props.src) return false\n return true\n})\n</script>\n\n<template>\n <div\n v-if=\"assetStatus === DamAssetStatus.WithFile && src\"\n class=\"anzu-common-asset-image anzu-common-asset-image--img position-relative\"\n :style=\"{ width: width + 'px' }\"\n >\n <img\n class=\"anzu-common-asset-image__img\"\n :src=\"srcComputed\"\n :width=\"width\"\n :height=\"height\"\n alt=\"\"\n loading=\"lazy\"\n :style=\"'background-color:' + backgroundColor\"\n @onerror=\"onError\"\n />\n <div\n v-if=\"showIconComputed\"\n class=\"anzu-common-asset-image__icon-wrapper\"\n >\n <div\n class=\"anzu-common-asset-image__icon-circle\"\n :style=\"{ padding: iconSize / 4 + 'px' }\"\n >\n <VIcon\n v-if=\"icon.length\"\n :size=\"iconSize\"\n :icon=\"icon\"\n :color=\"iconColor\"\n class=\"anzu-common-asset-image__icon\"\n />\n </div>\n </div>\n <AssetImageMetaIcons\n v-if=\"showMetaIcons && assetFileProperties\"\n :asset-file-properties=\"assetFileProperties\"\n :asset-type=\"assetType\"\n />\n </div>\n <div\n v-else\n :style=\"{ height: fallbackHeight + 'px', backgroundColor: backgroundColor }\"\n style=\"width: 100%\"\n class=\"asset-image asset-image--placeholder d-flex align-center justify-center\"\n >\n <div\n v-if=\"showIconComputed\"\n class=\"asset-image__icon-wrapper\"\n >\n <div\n class=\"asset-image__icon-circle\"\n :style=\"{ padding: iconSize / 4 + 'px' }\"\n >\n <VIcon\n v-if=\"icon.length\"\n :size=\"iconSize\"\n :icon=\"icon\"\n :color=\"iconColor\"\n class=\"asset-image__icon\"\n />\n </div>\n </div>\n <AssetImageMetaIcons\n v-if=\"showMetaIcons && assetFileProperties\"\n :asset-file-properties=\"assetFileProperties\"\n :asset-type=\"assetType\"\n />\n </div>\n</template>\n\n<style lang=\"scss\">\n.anzu-common-asset-image {\n position: relative;\n\n &__icon-wrapper {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n &__icon-circle {\n border-radius: 100%;\n background-color: rgb(204 204 204 / 50%);\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAaA,IAAMmB,IAAQC,GA4BRC,IAAOH,GAIPI,UAAgB;GACpB,EAAK,OAAO;EACd,GAEMC,IAAOC,QAAe;GAC1B,IAAIL,EAAM,gBAAgBF,EAAe,UAAU,OAAO;GAC1D,QAAQE,EAAM,WAAd;IACE,KAAKH,EAAa,OAChB,OAAOG,EAAM,gBAAgBF,EAAe,WAAW,cAAc;IACvE,KAAKD,EAAa,UAChB,OAAOG,EAAM,gBAAgBF,EAAe,WAAW,aAAa;IACtE,KAAKD,EAAa,OAChB,OAAOG,EAAM,gBAAgBF,EAAe,WAAW,cAAc;IACvE,KAAKD,EAAa,OAChB,OAAOG,EAAM,gBAAgBF,EAAe,WAAW,cAAc;IACvE,SACE,OAAO;GACX;EACF,CAAC,GAEKQ,IAAcD,QACXE,EAAYP,EAAM,GAAG,IAAInB,IAAkBmB,EAAM,GACzD,GAEKQ,IAAmBH,QACvB,EAAIL,EAAM,cAAcH,EAAa,SAASG,EAAM,IAErD;E,iBAKSC,EAAA,gBAAgBnB,EAAAgB,CAAA,CAAc,CAAC,YAAYG,EAAA,OADnDlB,EAAA,GAAAC,EAqCM,OAAA;;GAnCJ,OAAM;GACL,OAAKC,EAAA,EAAA,OAAWgB,EAAA,QAAK,KAAA,CAAA;;GAEtBf,EASE,OAAA;IARA,OAAM;IACL,KAAKoB,EAAA;IACL,OAAOL,EAAA;IACP,QAAQA,EAAA;IACT,KAAI;IACJ,SAAQ;IACP,OAAKhB,EAAA,sBAAwBgB,EAAA,eAAe;IAC5C,WAASE;;GAGJK,EAAA,SADRzB,EAAA,GAAAC,EAgBM,OAhBNU,GAgBM,CAZJR,EAWM,OAAA;IAVJ,OAAM;IACL,OAAKD,EAAA,EAAA,SAAagB,EAAA,WAAQ,IAAA,KAAA,CAAA;G,IAGnBG,EAAA,MAAK,UADbrB,EAAA,GAAAI,EAMEC,GAAA;;IAJC,MAAMa,EAAA;IACN,MAAMG,EAAA;IACN,OAAOH,EAAA;IACR,OAAM;;;;;;GAKJA,EAAA,iBAAiBA,EAAA,uBADzBlB,EAAA,GAAAI,EAIEG,GAAA;;IAFC,yBAAuBW,EAAA;IACvB,cAAYA,EAAA;;E,UAGjBlB,EAAA,GAAAC,EA4BM,OAAA;;GA1BH,OAAKC,EAAA,CAAA;IAAA,QAAYgB,EAAA,iBAAc;IAAA,iBAA0BA,EAAA;GAAe,GACzE,EAAAgB,OAAA,OAAA,CAAmB,CAAA;GACnB,OAAM;E,IAGET,EAAA,SADRzB,EAAA,GAAAC,EAgBM,OAhBNW,GAgBM,CAZJT,EAWM,OAAA;GAVJ,OAAM;GACL,OAAKD,EAAA,EAAA,SAAagB,EAAA,WAAQ,IAAA,KAAA,CAAA;E,IAGnBG,EAAA,MAAK,UADbrB,EAAA,GAAAI,EAMEC,GAAA;;GAJC,MAAMa,EAAA;GACN,MAAMG,EAAA;GACN,OAAOH,EAAA;GACR,OAAM;;;;;E,qCAKJA,EAAA,iBAAiBA,EAAA,uBADzBlB,EAAA,GAAAI,EAIEG,GAAA;;GAFC,yBAAuBW,EAAA;GACvB,cAAYA,EAAA"}
1
+ {"version":3,"file":"AssetImagePreview.vue_vue_type_script_setup_true_lang.js","names":["placeholder16x9","_unref","_openBlock","_createElementBlock","_normalizeStyle","_createElementVNode","_createBlock","_component_VIcon","_createCommentVNode","AssetImageMetaIcons","placeholder16x9_default","AssetImageMetaIcons_default","_hoisted_1","_hoisted_2","_hoisted_3","AssetImagePreview_vue_vue_type_script_setup_true_lang_default","DamAssetType","DamAssetStatus","__emit","props","__props","emit","onError","icon","computed","srcComputed","isUndefined","showIconComputed","unref","openBlock","createElementBlock","normalizeStyle","createElementVNode","createBlock","VIcon","createCommentVNode","\"width\""],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetImagePreview.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport {\n type AssetFileProperties,\n DamAssetStatus,\n type DamAssetStatusType,\n DamAssetType,\n type DamAssetTypeType,\n} from '@/domains/dam/types/Asset'\nimport placeholder16x9 from '@/assets/image/placeholder16x9.svg'\nimport { isUndefined } from '@/shared/utils/common'\nimport AssetImageMetaIcons from '@/domains/dam/assetDetail/components/AssetImageMetaIcons.vue'\n\nconst props = withDefaults(\n defineProps<{\n src?: string\n assetType?: DamAssetTypeType\n assetStatus?: DamAssetStatusType\n backgroundColor?: string\n width?: number\n height?: number\n fallbackHeight?: number\n iconSize?: number\n iconColor?: string\n showMetaIcons?: boolean\n assetFileProperties?: AssetFileProperties | undefined\n /** Passed to the meta icons: the badge of the asset's licence. */\n licenceBadge?: string\n }>(),\n {\n assetType: DamAssetType.Image,\n assetStatus: DamAssetStatus.WithFile,\n src: undefined,\n backgroundColor: '#ccc',\n width: undefined,\n height: undefined,\n fallbackHeight: 200,\n iconSize: 80,\n iconColor: '#505050',\n showMetaIcons: false,\n assetFileProperties: undefined,\n licenceBadge: '',\n }\n)\nconst emit = defineEmits<{\n (e: 'error'): void\n}>()\n\nconst onError = () => {\n emit('error')\n}\n\nconst icon = computed(() => {\n if (props.assetStatus === DamAssetStatus.Deleting) return 'mdi-trash-can'\n switch (props.assetType) {\n case DamAssetType.Audio:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-music' : 'mdi-music-off'\n case DamAssetType.Document:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-note' : 'mdi-note-off'\n case DamAssetType.Video:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-video' : 'mdi-video-off'\n case DamAssetType.Image:\n return props.assetStatus === DamAssetStatus.WithFile ? 'mdi-image' : 'mdi-image-off'\n default:\n return ''\n }\n})\n\nconst srcComputed = computed(() => {\n return isUndefined(props.src) ? placeholder16x9 : props.src\n})\n\nconst showIconComputed = computed(() => {\n if (props.assetType === DamAssetType.Image && props.src) return false\n return true\n})\n</script>\n\n<template>\n <div\n v-if=\"assetStatus === DamAssetStatus.WithFile && src\"\n class=\"anzu-common-asset-image anzu-common-asset-image--img position-relative\"\n :style=\"{ width: width + 'px' }\"\n >\n <img\n class=\"anzu-common-asset-image__img\"\n :src=\"srcComputed\"\n :width=\"width\"\n :height=\"height\"\n alt=\"\"\n loading=\"lazy\"\n :style=\"'background-color:' + backgroundColor\"\n @onerror=\"onError\"\n />\n <div\n v-if=\"showIconComputed\"\n class=\"anzu-common-asset-image__icon-wrapper\"\n >\n <div\n class=\"anzu-common-asset-image__icon-circle\"\n :style=\"{ padding: iconSize / 4 + 'px' }\"\n >\n <VIcon\n v-if=\"icon.length\"\n :size=\"iconSize\"\n :icon=\"icon\"\n :color=\"iconColor\"\n class=\"anzu-common-asset-image__icon\"\n />\n </div>\n </div>\n <AssetImageMetaIcons\n v-if=\"showMetaIcons && assetFileProperties\"\n :asset-file-properties=\"assetFileProperties\"\n :asset-type=\"assetType\"\n :licence-badge=\"licenceBadge\"\n />\n </div>\n <div\n v-else\n :style=\"{ height: fallbackHeight + 'px', backgroundColor: backgroundColor }\"\n style=\"width: 100%\"\n class=\"asset-image asset-image--placeholder d-flex align-center justify-center\"\n >\n <div\n v-if=\"showIconComputed\"\n class=\"asset-image__icon-wrapper\"\n >\n <div\n class=\"asset-image__icon-circle\"\n :style=\"{ padding: iconSize / 4 + 'px' }\"\n >\n <VIcon\n v-if=\"icon.length\"\n :size=\"iconSize\"\n :icon=\"icon\"\n :color=\"iconColor\"\n class=\"asset-image__icon\"\n />\n </div>\n </div>\n <AssetImageMetaIcons\n v-if=\"showMetaIcons && assetFileProperties\"\n :asset-file-properties=\"assetFileProperties\"\n :asset-type=\"assetType\"\n :licence-badge=\"licenceBadge\"\n />\n </div>\n</template>\n\n<style lang=\"scss\">\n.anzu-common-asset-image {\n position: relative;\n\n &__icon-wrapper {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n &__icon-circle {\n border-radius: 100%;\n background-color: rgb(204 204 204 / 50%);\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAaA,IAAMmB,IAAQC,GA+BRC,IAAOH,GAIPI,UAAgB;GACpB,EAAK,OAAO;EACd,GAEMC,IAAOC,QAAe;GAC1B,IAAIL,EAAM,gBAAgBF,EAAe,UAAU,OAAO;GAC1D,QAAQE,EAAM,WAAd;IACE,KAAKH,EAAa,OAChB,OAAOG,EAAM,gBAAgBF,EAAe,WAAW,cAAc;IACvE,KAAKD,EAAa,UAChB,OAAOG,EAAM,gBAAgBF,EAAe,WAAW,aAAa;IACtE,KAAKD,EAAa,OAChB,OAAOG,EAAM,gBAAgBF,EAAe,WAAW,cAAc;IACvE,KAAKD,EAAa,OAChB,OAAOG,EAAM,gBAAgBF,EAAe,WAAW,cAAc;IACvE,SACE,OAAO;GACX;EACF,CAAC,GAEKQ,IAAcD,QACXE,EAAYP,EAAM,GAAG,IAAInB,IAAkBmB,EAAM,GACzD,GAEKQ,IAAmBH,QACvB,EAAIL,EAAM,cAAcH,EAAa,SAASG,EAAM,IAErD;E,iBAKSC,EAAA,gBAAgBnB,EAAAgB,CAAA,CAAc,CAAC,YAAYG,EAAA,OADnDlB,EAAA,GAAAC,EAsCM,OAAA;;GApCJ,OAAM;GACL,OAAKC,EAAA,EAAA,OAAWgB,EAAA,QAAK,KAAA,CAAA;;GAEtBf,EASE,OAAA;IARA,OAAM;IACL,KAAKoB,EAAA;IACL,OAAOL,EAAA;IACP,QAAQA,EAAA;IACT,KAAI;IACJ,SAAQ;IACP,OAAKhB,EAAA,sBAAwBgB,EAAA,eAAe;IAC5C,WAASE;;GAGJK,EAAA,SADRzB,EAAA,GAAAC,EAgBM,OAhBNU,GAgBM,CAZJR,EAWM,OAAA;IAVJ,OAAM;IACL,OAAKD,EAAA,EAAA,SAAagB,EAAA,WAAQ,IAAA,KAAA,CAAA;G,IAGnBG,EAAA,MAAK,UADbrB,EAAA,GAAAI,EAMEC,GAAA;;IAJC,MAAMa,EAAA;IACN,MAAMG,EAAA;IACN,OAAOH,EAAA;IACR,OAAM;;;;;;GAKJA,EAAA,iBAAiBA,EAAA,uBADzBlB,EAAA,GAAAI,EAKEG,GAAA;;IAHC,yBAAuBW,EAAA;IACvB,cAAYA,EAAA;IACZ,iBAAeA,EAAA;;;;;;E,UAGpBlB,EAAA,GAAAC,EA6BM,OAAA;;GA3BH,OAAKC,EAAA,CAAA;IAAA,QAAYgB,EAAA,iBAAc;IAAA,iBAA0BA,EAAA;GAAe,GACzE,EAAAgB,OAAA,OAAA,CAAmB,CAAA;GACnB,OAAM;E,IAGET,EAAA,SADRzB,EAAA,GAAAC,EAgBM,OAhBNW,GAgBM,CAZJT,EAWM,OAAA;GAVJ,OAAM;GACL,OAAKD,EAAA,EAAA,SAAagB,EAAA,WAAQ,IAAA,KAAA,CAAA;E,IAGnBG,EAAA,MAAK,UADbrB,EAAA,GAAAI,EAMEC,GAAA;;GAJC,MAAMa,EAAA;GACN,MAAMG,EAAA;GACN,OAAOH,EAAA;GACR,OAAM;;;;;E,qCAKJA,EAAA,iBAAiBA,EAAA,uBADzBlB,EAAA,GAAAI,EAKEG,GAAA;;GAHC,yBAAuBW,EAAA;GACvB,cAAYA,EAAA;GACZ,iBAAeA,EAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"AssetSelectTableRowItem.js","names":["_sfc_main","AssetSelectTableRowItem_vue_vue_type_script_setup_true_lang_default","AssetSelectTableRowItem_default"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetSelectTableRowItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\nimport { useI18n } from 'vue-i18n'\nimport { useAssetItemActions } from '@/domains/dam/assetSelect/composables/assetSelectItemActions'\nimport AssetImagePreview from '@/domains/dam/assetSelect/components/AssetImagePreview.vue'\nimport type { DocId } from '@/shared/types/common'\nimport { prettyBytes } from '@/shared/utils/file'\nimport ADatetime from '@/domains/ui/datetime/components/ADatetime.vue'\nimport { toRef } from 'vue'\nimport AssetImageMetaIcons from '@/domains/dam/assetDetail/components/AssetImageMetaIcons.vue'\n\nconst props = withDefaults(\n defineProps<{\n index: number\n item: AssetSelectListItem\n showMetaIcons?: boolean\n }>(),\n {\n showMetaIcons: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'itemClick', data: { assetId: DocId; index: number }): void\n}>()\n\nconst { t } = useI18n()\n\nconst IMAGE_HEIGHT = 72\nconst IMAGE_WIDTH = 128\n\nconst item = toRef(props, 'item')\n\nconst { asset, tableImageProperties, assetType, assetStatus } = useAssetItemActions(item)\n\nconst onItemClick = () => {\n emit('itemClick', { assetId: asset.value.id, index: props.index })\n}\n</script>\n\n<template>\n <tr\n class=\"a-datatable__row\"\n :class=\"{\n 'a-datatable__row--selected': item.selected,\n 'asset-list-table__item--active': item.active,\n }\"\n @click.stop.exact=\"onItemClick\"\n >\n <td>\n <VIcon\n v-if=\"item.selected\"\n icon=\"mdi-checkbox-outline\"\n :size=\"20\"\n />\n <VIcon\n v-else\n icon=\"mdi-checkbox-blank-outline\"\n :size=\"20\"\n />\n </td>\n <td>\n <AssetImagePreview\n :asset-type=\"assetType\"\n :asset-status=\"assetStatus\"\n :src=\"tableImageProperties.url\"\n :background-color=\"tableImageProperties.bgColor\"\n :width=\"IMAGE_WIDTH\"\n :height=\"IMAGE_HEIGHT\"\n :icon-size=\"20\"\n :fallback-height=\"IMAGE_HEIGHT\"\n />\n </td>\n <td>\n {{ asset.texts.displayTitle || t('common.damImage.asset.list.noTitle') }}\n </td>\n <td>\n <ADatetime :date-time=\"asset.createdAt\" />\n </td>\n <td>\n <AssetImageMetaIcons\n :asset-file-properties=\"item.asset.assetFileProperties\"\n :asset-type=\"assetType\"\n disable-absolute\n />\n </td>\n <td>\n {{ asset.mainFile?.fileAttributes.mimeType }}\n </td>\n <td>\n {{ prettyBytes(asset.mainFile?.fileAttributes.size || 0) }}\n </td>\n </tr>\n</template>\n\n<style lang=\"scss\">\n// Row of the asset shown in the side panel, outlined like the active tile.\n.asset-list-table__item--active {\n outline: 1px solid blue;\n outline-offset: -1px;\n}\n</style>\n"],"mappings":""}
1
+ {"version":3,"file":"AssetSelectTableRowItem.js","names":["_sfc_main","AssetSelectTableRowItem_vue_vue_type_script_setup_true_lang_default","AssetSelectTableRowItem_default"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetSelectTableRowItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\nimport { useI18n } from 'vue-i18n'\nimport { useAssetItemActions } from '@/domains/dam/assetSelect/composables/assetSelectItemActions'\nimport AssetImagePreview from '@/domains/dam/assetSelect/components/AssetImagePreview.vue'\nimport type { DocId } from '@/shared/types/common'\nimport { prettyBytes } from '@/shared/utils/file'\nimport ADatetime from '@/domains/ui/datetime/components/ADatetime.vue'\nimport { toRef } from 'vue'\nimport AssetImageMetaIcons from '@/domains/dam/assetDetail/components/AssetImageMetaIcons.vue'\n\nconst props = withDefaults(\n defineProps<{\n index: number\n item: AssetSelectListItem\n showMetaIcons?: boolean\n }>(),\n {\n showMetaIcons: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'itemClick', data: { assetId: DocId; index: number }): void\n}>()\n\nconst { t } = useI18n()\n\nconst IMAGE_HEIGHT = 72\nconst IMAGE_WIDTH = 128\n\nconst item = toRef(props, 'item')\n\nconst { asset, tableImageProperties, assetType, assetStatus, licenceBadge } = useAssetItemActions(item)\n\nconst onItemClick = () => {\n emit('itemClick', { assetId: asset.value.id, index: props.index })\n}\n</script>\n\n<template>\n <tr\n class=\"a-datatable__row\"\n :class=\"{\n 'a-datatable__row--selected': item.selected,\n 'asset-list-table__item--active': item.active,\n }\"\n @click.stop.exact=\"onItemClick\"\n >\n <td>\n <VIcon\n v-if=\"item.selected\"\n icon=\"mdi-checkbox-outline\"\n :size=\"20\"\n />\n <VIcon\n v-else\n icon=\"mdi-checkbox-blank-outline\"\n :size=\"20\"\n />\n </td>\n <td>\n <AssetImagePreview\n :asset-type=\"assetType\"\n :asset-status=\"assetStatus\"\n :src=\"tableImageProperties.url\"\n :background-color=\"tableImageProperties.bgColor\"\n :width=\"IMAGE_WIDTH\"\n :height=\"IMAGE_HEIGHT\"\n :icon-size=\"20\"\n :fallback-height=\"IMAGE_HEIGHT\"\n />\n </td>\n <td>\n {{ asset.texts.displayTitle || t('common.damImage.asset.list.noTitle') }}\n </td>\n <td>\n <ADatetime :date-time=\"asset.createdAt\" />\n </td>\n <td>\n <AssetImageMetaIcons\n :asset-file-properties=\"item.asset.assetFileProperties\"\n :asset-type=\"assetType\"\n :licence-badge=\"licenceBadge\"\n disable-absolute\n />\n </td>\n <td>\n {{ asset.mainFile?.fileAttributes.mimeType }}\n </td>\n <td>\n {{ prettyBytes(asset.mainFile?.fileAttributes.size || 0) }}\n </td>\n </tr>\n</template>\n\n<style lang=\"scss\">\n// Row of the asset shown in the side panel, outlined like the active tile.\n.asset-list-table__item--active {\n outline: 1px solid blue;\n outline-offset: -1px;\n}\n</style>\n"],"mappings":""}
@@ -19,7 +19,7 @@ var v = 72, y = 128, b = /*@__PURE__*/ l({
19
19
  },
20
20
  emits: ["itemClick"],
21
21
  setup(l, { emit: b }) {
22
- let x = l, S = b, { t: C } = g(), w = p(x, "item"), { asset: T, tableImageProperties: E, assetType: D, assetStatus: O } = t(w), k = () => {
22
+ let x = l, S = b, { t: C } = g(), w = p(x, "item"), { asset: T, tableImageProperties: E, assetType: D, assetStatus: O, licenceBadge: k } = t(w), A = () => {
23
23
  S("itemClick", {
24
24
  assetId: T.value.id,
25
25
  index: x.index
@@ -30,7 +30,7 @@ var v = 72, y = 128, b = /*@__PURE__*/ l({
30
30
  "a-datatable__row--selected": w.value.selected,
31
31
  "asset-list-table__item--active": w.value.active
32
32
  }]),
33
- onClick: h(k, ["stop", "exact"])
33
+ onClick: h(A, ["stop", "exact"])
34
34
  }, [
35
35
  s("td", null, [w.value.selected ? (d(), a(_, {
36
36
  key: 0,
@@ -61,8 +61,13 @@ var v = 72, y = 128, b = /*@__PURE__*/ l({
61
61
  s("td", null, [c(n, {
62
62
  "asset-file-properties": w.value.asset.assetFileProperties,
63
63
  "asset-type": m(D),
64
+ "licence-badge": m(k),
64
65
  "disable-absolute": ""
65
- }, null, 8, ["asset-file-properties", "asset-type"])]),
66
+ }, null, 8, [
67
+ "asset-file-properties",
68
+ "asset-type",
69
+ "licence-badge"
70
+ ])]),
66
71
  s("td", null, f(m(T).mainFile?.fileAttributes.mimeType), 1),
67
72
  s("td", null, f(m(i)(m(T).mainFile?.fileAttributes.size || 0)), 1)
68
73
  ], 2));
@@ -1 +1 @@
1
- {"version":3,"file":"AssetSelectTableRowItem.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createElementBlock","_normalizeClass","_withModifiers","_createElementVNode","_createBlock","_component_VIcon","_createVNode","AssetImagePreview","_unref","_toDisplayString","ADatetime","AssetImageMetaIcons","ADatetime_default","AssetImageMetaIcons_default","AssetImagePreview_default","IMAGE_HEIGHT","IMAGE_WIDTH","AssetSelectTableRowItem_vue_vue_type_script_setup_true_lang_default","__emit","props","__props","emit","useI18n","item","toRef","useAssetItemActions","onItemClick","asset","openBlock","createElementBlock","normalizeClass","withModifiers","createElementVNode","createBlock","VIcon","createVNode","unref","assetType","assetStatus","tableImageProperties","toDisplayString","t","prettyBytes"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetSelectTableRowItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\nimport { useI18n } from 'vue-i18n'\nimport { useAssetItemActions } from '@/domains/dam/assetSelect/composables/assetSelectItemActions'\nimport AssetImagePreview from '@/domains/dam/assetSelect/components/AssetImagePreview.vue'\nimport type { DocId } from '@/shared/types/common'\nimport { prettyBytes } from '@/shared/utils/file'\nimport ADatetime from '@/domains/ui/datetime/components/ADatetime.vue'\nimport { toRef } from 'vue'\nimport AssetImageMetaIcons from '@/domains/dam/assetDetail/components/AssetImageMetaIcons.vue'\n\nconst props = withDefaults(\n defineProps<{\n index: number\n item: AssetSelectListItem\n showMetaIcons?: boolean\n }>(),\n {\n showMetaIcons: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'itemClick', data: { assetId: DocId; index: number }): void\n}>()\n\nconst { t } = useI18n()\n\nconst IMAGE_HEIGHT = 72\nconst IMAGE_WIDTH = 128\n\nconst item = toRef(props, 'item')\n\nconst { asset, tableImageProperties, assetType, assetStatus } = useAssetItemActions(item)\n\nconst onItemClick = () => {\n emit('itemClick', { assetId: asset.value.id, index: props.index })\n}\n</script>\n\n<template>\n <tr\n class=\"a-datatable__row\"\n :class=\"{\n 'a-datatable__row--selected': item.selected,\n 'asset-list-table__item--active': item.active,\n }\"\n @click.stop.exact=\"onItemClick\"\n >\n <td>\n <VIcon\n v-if=\"item.selected\"\n icon=\"mdi-checkbox-outline\"\n :size=\"20\"\n />\n <VIcon\n v-else\n icon=\"mdi-checkbox-blank-outline\"\n :size=\"20\"\n />\n </td>\n <td>\n <AssetImagePreview\n :asset-type=\"assetType\"\n :asset-status=\"assetStatus\"\n :src=\"tableImageProperties.url\"\n :background-color=\"tableImageProperties.bgColor\"\n :width=\"IMAGE_WIDTH\"\n :height=\"IMAGE_HEIGHT\"\n :icon-size=\"20\"\n :fallback-height=\"IMAGE_HEIGHT\"\n />\n </td>\n <td>\n {{ asset.texts.displayTitle || t('common.damImage.asset.list.noTitle') }}\n </td>\n <td>\n <ADatetime :date-time=\"asset.createdAt\" />\n </td>\n <td>\n <AssetImageMetaIcons\n :asset-file-properties=\"item.asset.assetFileProperties\"\n :asset-type=\"assetType\"\n disable-absolute\n />\n </td>\n <td>\n {{ asset.mainFile?.fileAttributes.mimeType }}\n </td>\n <td>\n {{ prettyBytes(asset.mainFile?.fileAttributes.size || 0) }}\n </td>\n </tr>\n</template>\n\n<style lang=\"scss\">\n// Row of the asset shown in the side panel, outlined like the active tile.\n.asset-list-table__item--active {\n outline: 1px solid blue;\n outline-offset: -1px;\n}\n</style>\n"],"mappings":";;;;;;;;;AA4BA,IAAMgB,IAAe,IACfC,IAAc,K;;;;;;;;;;;;EAlBpB,IAAMG,IAAQC,GAWRC,IAAOH,GAIP,EAAE,SAAMI,EAAQ,GAKhBC,IAAOC,EAAML,GAAO,MAAM,GAE1B,EAAE,UAAO,yBAAsB,cAAW,mBAAgBM,EAAoBF,CAAI,GAElFG,UAAoB;GACxB,EAAK,aAAa;IAAE,SAASC,EAAM,MAAM;IAAI,OAAOR,EAAM;GAAM,CAAC;EACnE;E,kBAIEpB,EAAA,GAAAC,EAmDK,MAAA;GAlDH,OAAKC,EAAA,CAAC,oBAAkB;IACsB,8BAAAsB,EAAA,MAAK;IAAkD,kCAAAA,EAAA,MAAK;;GAIzG,SAAKrB,EAAawB,GAAW,CAAA,QAAA,OAAA,CAAA;;GAE9BvB,EAWK,MAAA,MAAA,CATKoB,EAAA,MAAK,YADbxB,EAAA,GAAAK,EAIEC,GAAA;;IAFA,MAAK;IACJ,MAAM;G,OAETN,EAAA,GAAAK,EAIEC,GAAA;;IAFA,MAAK;IACJ,MAAM;;GAGXF,EAWK,MAAA,MAAA,CAVHG,EASEC,GAAA;IARC,cAAYC,EAAA6B,CAAA;IACZ,gBAAc7B,EAAA8B,CAAA;IACd,KAAK9B,EAAA+B,CAAA,CAAoB,CAAC;IAC1B,oBAAkB/B,EAAA+B,CAAA,CAAoB,CAAC;IACvC,OAAOvB;IACP,QAAQD;IACR,aAAW;IACX,mBAAiBA;;;;;;;GAGtBZ,EAEK,MAAA,MAAAM,EADAD,EAAAmB,CAAA,CAAK,CAAC,MAAM,gBAAgBnB,EAAAiC,CAAA,CAAC,CAAA,oCAAA,CAAA,GAAA,CAAA;GAElCtC,EAEK,MAAA,MAAA,CADHG,EAA0CI,GAAA,EAA9B,aAAWF,EAAAmB,CAAA,CAAK,CAAC,U;GAE/BxB,EAMK,MAAA,MAAA,CALHG,EAIEK,GAAA;IAHC,yBAAuBY,EAAA,MAAK,MAAM;IAClC,cAAYf,EAAA6B,CAAA;IACb,oBAAA;;GAGJlC,EAEK,MAAA,MAAAM,EADAD,EAAAmB,CAAA,CAAK,CAAC,UAAU,eAAe,QAAQ,GAAA,CAAA;GAE5CxB,EAEK,MAAA,MAAAM,EADAD,EAAAkC,CAAA,CAAW,CAAClC,EAAAmB,CAAA,CAAK,CAAC,UAAU,eAAe,QAAI,CAAA,CAAA,GAAA,CAAA"}
1
+ {"version":3,"file":"AssetSelectTableRowItem.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createElementBlock","_normalizeClass","_withModifiers","_createElementVNode","_createBlock","_component_VIcon","_createVNode","AssetImagePreview","_unref","_toDisplayString","ADatetime","AssetImageMetaIcons","ADatetime_default","AssetImageMetaIcons_default","AssetImagePreview_default","IMAGE_HEIGHT","IMAGE_WIDTH","AssetSelectTableRowItem_vue_vue_type_script_setup_true_lang_default","__emit","props","__props","emit","useI18n","item","toRef","useAssetItemActions","onItemClick","asset","openBlock","createElementBlock","normalizeClass","withModifiers","createElementVNode","createBlock","VIcon","createVNode","unref","assetType","assetStatus","tableImageProperties","toDisplayString","t","licenceBadge","prettyBytes"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetSelectTableRowItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\nimport { useI18n } from 'vue-i18n'\nimport { useAssetItemActions } from '@/domains/dam/assetSelect/composables/assetSelectItemActions'\nimport AssetImagePreview from '@/domains/dam/assetSelect/components/AssetImagePreview.vue'\nimport type { DocId } from '@/shared/types/common'\nimport { prettyBytes } from '@/shared/utils/file'\nimport ADatetime from '@/domains/ui/datetime/components/ADatetime.vue'\nimport { toRef } from 'vue'\nimport AssetImageMetaIcons from '@/domains/dam/assetDetail/components/AssetImageMetaIcons.vue'\n\nconst props = withDefaults(\n defineProps<{\n index: number\n item: AssetSelectListItem\n showMetaIcons?: boolean\n }>(),\n {\n showMetaIcons: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'itemClick', data: { assetId: DocId; index: number }): void\n}>()\n\nconst { t } = useI18n()\n\nconst IMAGE_HEIGHT = 72\nconst IMAGE_WIDTH = 128\n\nconst item = toRef(props, 'item')\n\nconst { asset, tableImageProperties, assetType, assetStatus, licenceBadge } = useAssetItemActions(item)\n\nconst onItemClick = () => {\n emit('itemClick', { assetId: asset.value.id, index: props.index })\n}\n</script>\n\n<template>\n <tr\n class=\"a-datatable__row\"\n :class=\"{\n 'a-datatable__row--selected': item.selected,\n 'asset-list-table__item--active': item.active,\n }\"\n @click.stop.exact=\"onItemClick\"\n >\n <td>\n <VIcon\n v-if=\"item.selected\"\n icon=\"mdi-checkbox-outline\"\n :size=\"20\"\n />\n <VIcon\n v-else\n icon=\"mdi-checkbox-blank-outline\"\n :size=\"20\"\n />\n </td>\n <td>\n <AssetImagePreview\n :asset-type=\"assetType\"\n :asset-status=\"assetStatus\"\n :src=\"tableImageProperties.url\"\n :background-color=\"tableImageProperties.bgColor\"\n :width=\"IMAGE_WIDTH\"\n :height=\"IMAGE_HEIGHT\"\n :icon-size=\"20\"\n :fallback-height=\"IMAGE_HEIGHT\"\n />\n </td>\n <td>\n {{ asset.texts.displayTitle || t('common.damImage.asset.list.noTitle') }}\n </td>\n <td>\n <ADatetime :date-time=\"asset.createdAt\" />\n </td>\n <td>\n <AssetImageMetaIcons\n :asset-file-properties=\"item.asset.assetFileProperties\"\n :asset-type=\"assetType\"\n :licence-badge=\"licenceBadge\"\n disable-absolute\n />\n </td>\n <td>\n {{ asset.mainFile?.fileAttributes.mimeType }}\n </td>\n <td>\n {{ prettyBytes(asset.mainFile?.fileAttributes.size || 0) }}\n </td>\n </tr>\n</template>\n\n<style lang=\"scss\">\n// Row of the asset shown in the side panel, outlined like the active tile.\n.asset-list-table__item--active {\n outline: 1px solid blue;\n outline-offset: -1px;\n}\n</style>\n"],"mappings":";;;;;;;;;AA4BA,IAAMgB,IAAe,IACfC,IAAc,K;;;;;;;;;;;;EAlBpB,IAAMG,IAAQC,GAWRC,IAAOH,GAIP,EAAE,SAAMI,EAAQ,GAKhBC,IAAOC,EAAML,GAAO,MAAM,GAE1B,EAAE,UAAO,yBAAsB,cAAW,gBAAa,oBAAiBM,EAAoBF,CAAI,GAEhGG,UAAoB;GACxB,EAAK,aAAa;IAAE,SAASC,EAAM,MAAM;IAAI,OAAOR,EAAM;GAAM,CAAC;EACnE;E,kBAIEpB,EAAA,GAAAC,EAoDK,MAAA;GAnDH,OAAKC,EAAA,CAAC,oBAAkB;IACsB,8BAAAsB,EAAA,MAAK;IAAkD,kCAAAA,EAAA,MAAK;;GAIzG,SAAKrB,EAAawB,GAAW,CAAA,QAAA,OAAA,CAAA;;GAE9BvB,EAWK,MAAA,MAAA,CATKoB,EAAA,MAAK,YADbxB,EAAA,GAAAK,EAIEC,GAAA;;IAFA,MAAK;IACJ,MAAM;G,OAETN,EAAA,GAAAK,EAIEC,GAAA;;IAFA,MAAK;IACJ,MAAM;;GAGXF,EAWK,MAAA,MAAA,CAVHG,EASEC,GAAA;IARC,cAAYC,EAAA6B,CAAA;IACZ,gBAAc7B,EAAA8B,CAAA;IACd,KAAK9B,EAAA+B,CAAA,CAAoB,CAAC;IAC1B,oBAAkB/B,EAAA+B,CAAA,CAAoB,CAAC;IACvC,OAAOvB;IACP,QAAQD;IACR,aAAW;IACX,mBAAiBA;;;;;;;GAGtBZ,EAEK,MAAA,MAAAM,EADAD,EAAAmB,CAAA,CAAK,CAAC,MAAM,gBAAgBnB,EAAAiC,CAAA,CAAC,CAAA,oCAAA,CAAA,GAAA,CAAA;GAElCtC,EAEK,MAAA,MAAA,CADHG,EAA0CI,GAAA,EAA9B,aAAWF,EAAAmB,CAAA,CAAK,CAAC,U;GAE/BxB,EAOK,MAAA,MAAA,CANHG,EAKEK,GAAA;IAJC,yBAAuBY,EAAA,MAAK,MAAM;IAClC,cAAYf,EAAA6B,CAAA;IACZ,iBAAe7B,EAAAkC,CAAA;IAChB,oBAAA;;;;;;GAGJvC,EAEK,MAAA,MAAAM,EADAD,EAAAmB,CAAA,CAAK,CAAC,UAAU,eAAe,QAAQ,GAAA,CAAA;GAE5CxB,EAEK,MAAA,MAAAM,EADAD,EAAAmC,CAAA,CAAW,CAACnC,EAAAmB,CAAA,CAAK,CAAC,UAAU,eAAe,QAAI,CAAA,CAAA,GAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"AssetSelectTilesItem.js","names":["_sfc_main","AssetSelectTilesItem_vue_vue_type_script_setup_true_lang_default","AssetSelectTilesItem_default"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetSelectTilesItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useI18n } from 'vue-i18n'\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\nimport { useAssetItemActions } from '@/domains/dam/assetSelect/composables/assetSelectItemActions'\nimport AssetImagePreview from '@/domains/dam/assetSelect/components/AssetImagePreview.vue'\nimport type { DocId } from '@/shared/types/common'\nimport { toRef } from 'vue'\n\nconst props = withDefaults(\n defineProps<{\n index: number\n item: AssetSelectListItem\n showMetaIcons?: boolean\n }>(),\n {\n showMetaIcons: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'itemClick', data: { assetId: DocId; index: number }): void\n}>()\n\nconst { t } = useI18n()\n\nconst IMAGE_HEIGHT = 200\n\nconst onItemClick = () => {\n emit('itemClick', { assetId: asset.value.id, index: props.index })\n}\n\nconst item = toRef(props, 'item')\n\nconst { asset, assetType, assetStatus, imageProperties } = useAssetItemActions(item)\n</script>\n\n<template>\n <div\n class=\"asset-list-tiles__item asset-list-tiles__item--pointer\"\n :class=\"{\n 'asset-list-tiles__item--selected': item.selected,\n 'asset-list-tiles__item--active': item.active,\n }\"\n @click.stop.exact=\"onItemClick\"\n >\n <div class=\"asset-list-tiles__item-card\">\n <div\n v-if=\"item.selected\"\n class=\"asset-list-tiles__selected-triangle\"\n >\n <div class=\"asset-list-tiles__selected-triangle__bg\" />\n <VIcon\n class=\"asset-list-tiles__selected-triangle__icon\"\n icon=\"mdi-check\"\n color=\"white\"\n size=\"large\"\n />\n </div>\n <AssetImagePreview\n :asset-type=\"assetType\"\n :asset-status=\"assetStatus\"\n :src=\"imageProperties.url\"\n :background-color=\"imageProperties.bgColor\"\n :width=\"imageProperties.width\"\n :height=\"imageProperties.height\"\n :fallback-height=\"IMAGE_HEIGHT\"\n :asset-file-properties=\"item.asset.assetFileProperties\"\n :show-meta-icons=\"showMetaIcons\"\n />\n <div class=\"asset-list-tiles__item-text text-body-small px-2 py-1\">\n <div class=\"d-flex align-center justify-space-between position-relative\">\n <div\n class=\"text-truncate\"\n data-cy=\"asset-tile-title\"\n >\n {{ asset.texts.displayTitle || t('common.damImage.asset.list.noTitle') }}\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"AssetSelectTilesItem.js","names":["_sfc_main","AssetSelectTilesItem_vue_vue_type_script_setup_true_lang_default","AssetSelectTilesItem_default"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetSelectTilesItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useI18n } from 'vue-i18n'\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\nimport { useAssetItemActions } from '@/domains/dam/assetSelect/composables/assetSelectItemActions'\nimport AssetImagePreview from '@/domains/dam/assetSelect/components/AssetImagePreview.vue'\nimport type { DocId } from '@/shared/types/common'\nimport { toRef } from 'vue'\n\nconst props = withDefaults(\n defineProps<{\n index: number\n item: AssetSelectListItem\n showMetaIcons?: boolean\n }>(),\n {\n showMetaIcons: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'itemClick', data: { assetId: DocId; index: number }): void\n}>()\n\nconst { t } = useI18n()\n\nconst IMAGE_HEIGHT = 200\n\nconst onItemClick = () => {\n emit('itemClick', { assetId: asset.value.id, index: props.index })\n}\n\nconst item = toRef(props, 'item')\n\nconst { asset, assetType, assetStatus, imageProperties, licenceBadge } = useAssetItemActions(item)\n</script>\n\n<template>\n <div\n class=\"asset-list-tiles__item asset-list-tiles__item--pointer\"\n :class=\"{\n 'asset-list-tiles__item--selected': item.selected,\n 'asset-list-tiles__item--active': item.active,\n }\"\n @click.stop.exact=\"onItemClick\"\n >\n <div class=\"asset-list-tiles__item-card\">\n <div\n v-if=\"item.selected\"\n class=\"asset-list-tiles__selected-triangle\"\n >\n <div class=\"asset-list-tiles__selected-triangle__bg\" />\n <VIcon\n class=\"asset-list-tiles__selected-triangle__icon\"\n icon=\"mdi-check\"\n color=\"white\"\n size=\"large\"\n />\n </div>\n <AssetImagePreview\n :asset-type=\"assetType\"\n :asset-status=\"assetStatus\"\n :src=\"imageProperties.url\"\n :background-color=\"imageProperties.bgColor\"\n :width=\"imageProperties.width\"\n :height=\"imageProperties.height\"\n :fallback-height=\"IMAGE_HEIGHT\"\n :asset-file-properties=\"item.asset.assetFileProperties\"\n :show-meta-icons=\"showMetaIcons\"\n :licence-badge=\"licenceBadge\"\n />\n <div class=\"asset-list-tiles__item-text text-body-small px-2 py-1\">\n <div class=\"d-flex align-center justify-space-between position-relative\">\n <div\n class=\"text-truncate\"\n data-cy=\"asset-tile-title\"\n >\n {{ asset.texts.displayTitle || t('common.damImage.asset.list.noTitle') }}\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"mappings":""}
@@ -27,7 +27,7 @@ var h = { class: "asset-list-tiles__item-card" }, g = {
27
27
  assetId: D.value.id,
28
28
  index: S.index
29
29
  });
30
- }, E = u(S, "item"), { asset: D, assetType: O, assetStatus: k, imageProperties: A } = e(E);
30
+ }, E = u(S, "item"), { asset: D, assetType: O, assetStatus: k, imageProperties: A, licenceBadge: j } = e(E);
31
31
  return (e, u) => (c(), r("div", {
32
32
  class: s(["asset-list-tiles__item asset-list-tiles__item--pointer", {
33
33
  "asset-list-tiles__item--selected": E.value.selected,
@@ -50,7 +50,8 @@ var h = { class: "asset-list-tiles__item-card" }, g = {
50
50
  height: d(A).height,
51
51
  "fallback-height": b,
52
52
  "asset-file-properties": E.value.asset.assetFileProperties,
53
- "show-meta-icons": o.showMetaIcons
53
+ "show-meta-icons": o.showMetaIcons,
54
+ "licence-badge": d(j)
54
55
  }, null, 8, [
55
56
  "asset-type",
56
57
  "asset-status",
@@ -59,7 +60,8 @@ var h = { class: "asset-list-tiles__item-card" }, g = {
59
60
  "width",
60
61
  "height",
61
62
  "asset-file-properties",
62
- "show-meta-icons"
63
+ "show-meta-icons",
64
+ "licence-badge"
63
65
  ]),
64
66
  i("div", _, [i("div", v, [i("div", y, l(d(D).texts.displayTitle || d(w)("common.damImage.asset.list.noTitle")), 1)])])
65
67
  ])], 2));
@@ -1 +1 @@
1
- {"version":3,"file":"AssetSelectTilesItem.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createElementBlock","_normalizeClass","_withModifiers","_createElementVNode","_createVNode","_component_VIcon","_createCommentVNode","AssetImagePreview","_unref","_toDisplayString","AssetImagePreview_default","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","IMAGE_HEIGHT","AssetSelectTilesItem_vue_vue_type_script_setup_true_lang_default","__emit","props","__props","emit","useI18n","onItemClick","asset","item","toRef","useAssetItemActions","openBlock","createElementBlock","normalizeClass","withModifiers","createElementVNode","_cache","createVNode","VIcon","createCommentVNode","unref","assetType","assetStatus","imageProperties","toDisplayString","t"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetSelectTilesItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useI18n } from 'vue-i18n'\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\nimport { useAssetItemActions } from '@/domains/dam/assetSelect/composables/assetSelectItemActions'\nimport AssetImagePreview from '@/domains/dam/assetSelect/components/AssetImagePreview.vue'\nimport type { DocId } from '@/shared/types/common'\nimport { toRef } from 'vue'\n\nconst props = withDefaults(\n defineProps<{\n index: number\n item: AssetSelectListItem\n showMetaIcons?: boolean\n }>(),\n {\n showMetaIcons: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'itemClick', data: { assetId: DocId; index: number }): void\n}>()\n\nconst { t } = useI18n()\n\nconst IMAGE_HEIGHT = 200\n\nconst onItemClick = () => {\n emit('itemClick', { assetId: asset.value.id, index: props.index })\n}\n\nconst item = toRef(props, 'item')\n\nconst { asset, assetType, assetStatus, imageProperties } = useAssetItemActions(item)\n</script>\n\n<template>\n <div\n class=\"asset-list-tiles__item asset-list-tiles__item--pointer\"\n :class=\"{\n 'asset-list-tiles__item--selected': item.selected,\n 'asset-list-tiles__item--active': item.active,\n }\"\n @click.stop.exact=\"onItemClick\"\n >\n <div class=\"asset-list-tiles__item-card\">\n <div\n v-if=\"item.selected\"\n class=\"asset-list-tiles__selected-triangle\"\n >\n <div class=\"asset-list-tiles__selected-triangle__bg\" />\n <VIcon\n class=\"asset-list-tiles__selected-triangle__icon\"\n icon=\"mdi-check\"\n color=\"white\"\n size=\"large\"\n />\n </div>\n <AssetImagePreview\n :asset-type=\"assetType\"\n :asset-status=\"assetStatus\"\n :src=\"imageProperties.url\"\n :background-color=\"imageProperties.bgColor\"\n :width=\"imageProperties.width\"\n :height=\"imageProperties.height\"\n :fallback-height=\"IMAGE_HEIGHT\"\n :asset-file-properties=\"item.asset.assetFileProperties\"\n :show-meta-icons=\"showMetaIcons\"\n />\n <div class=\"asset-list-tiles__item-text text-body-small px-2 py-1\">\n <div class=\"d-flex align-center justify-space-between position-relative\">\n <div\n class=\"text-truncate\"\n data-cy=\"asset-tile-title\"\n >\n {{ asset.texts.displayTitle || t('common.damImage.asset.list.noTitle') }}\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;A,GAyBMiB,IAAe,K;;;;;;;;;;;;EAjBrB,IAAMG,IAAQC,GAWRC,IAAOH,GAIP,EAAE,SAAMI,EAAQ,GAIhBC,UAAoB;GACxB,EAAK,aAAa;IAAE,SAASC,EAAM,MAAM;IAAI,OAAOL,EAAM;GAAM,CAAC;EACnE,GAEMM,IAAOC,EAAMP,GAAO,MAAM,GAE1B,EAAE,UAAO,cAAW,gBAAa,uBAAoBQ,EAAoBF,CAAI;E,kBAIjF1B,EAAA,GAAAC,EA2CM,OAAA;GA1CJ,OAAKC,EAAA,CAAC,0DAAwD;IACV,oCAAAwB,EAAA,MAAK;IAAkD,kCAAAA,EAAA,MAAK;;GAI/G,SAAKvB,EAAaqB,GAAW,CAAA,QAAA,OAAA,CAAA;E,IAE9BpB,EAkCM,OAlCNQ,GAkCM;GAhCIc,EAAA,MAAK,YADb1B,EAAA,GAAAC,EAWM,OAXNY,GAWM,CAPJ,AAAAqB,EAAA,OAAA9B,EAAuD,OAAA,EAAlD,OAAM,0CAAyC,GAAA,MAAA,EAAA,GACpDC,EAKEC,GAAA;IAJA,OAAM;IACN,MAAK;IACL,OAAM;IACN,MAAK;;GAGTD,EAUEG,GAAA;IATC,cAAYC,EAAA8B,CAAA;IACZ,gBAAc9B,EAAA+B,CAAA;IACd,KAAK/B,EAAAgC,CAAA,CAAe,CAAC;IACrB,oBAAkBhC,EAAAgC,CAAA,CAAe,CAAC;IAClC,OAAOhC,EAAAgC,CAAA,CAAe,CAAC;IACvB,QAAQhC,EAAAgC,CAAA,CAAe,CAAC;IACxB,mBAAiBxB;IACjB,yBAAuBS,EAAA,MAAK,MAAM;IAClC,mBAAiBL,EAAA;;;;;;;;;;;GAEpBjB,EASM,OATNU,GASM,CARJV,EAOM,OAPNW,GAOM,CANJX,EAKM,OALNY,GAKMN,EADDD,EAAAgB,CAAA,CAAK,CAAC,MAAM,gBAAgBhB,EAAAkC,CAAA,CAAC,CAAA,oCAAA,CAAA,GAAA,CAAA,C"}
1
+ {"version":3,"file":"AssetSelectTilesItem.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createElementBlock","_normalizeClass","_withModifiers","_createElementVNode","_createVNode","_component_VIcon","_createCommentVNode","AssetImagePreview","_unref","_toDisplayString","AssetImagePreview_default","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","IMAGE_HEIGHT","AssetSelectTilesItem_vue_vue_type_script_setup_true_lang_default","__emit","props","__props","emit","useI18n","onItemClick","asset","item","toRef","useAssetItemActions","openBlock","createElementBlock","normalizeClass","withModifiers","createElementVNode","_cache","createVNode","VIcon","createCommentVNode","unref","assetType","assetStatus","imageProperties","licenceBadge","toDisplayString","t"],"sources":["../../../../../src/domains/dam/assetSelect/components/AssetSelectTilesItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useI18n } from 'vue-i18n'\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\nimport { useAssetItemActions } from '@/domains/dam/assetSelect/composables/assetSelectItemActions'\nimport AssetImagePreview from '@/domains/dam/assetSelect/components/AssetImagePreview.vue'\nimport type { DocId } from '@/shared/types/common'\nimport { toRef } from 'vue'\n\nconst props = withDefaults(\n defineProps<{\n index: number\n item: AssetSelectListItem\n showMetaIcons?: boolean\n }>(),\n {\n showMetaIcons: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'itemClick', data: { assetId: DocId; index: number }): void\n}>()\n\nconst { t } = useI18n()\n\nconst IMAGE_HEIGHT = 200\n\nconst onItemClick = () => {\n emit('itemClick', { assetId: asset.value.id, index: props.index })\n}\n\nconst item = toRef(props, 'item')\n\nconst { asset, assetType, assetStatus, imageProperties, licenceBadge } = useAssetItemActions(item)\n</script>\n\n<template>\n <div\n class=\"asset-list-tiles__item asset-list-tiles__item--pointer\"\n :class=\"{\n 'asset-list-tiles__item--selected': item.selected,\n 'asset-list-tiles__item--active': item.active,\n }\"\n @click.stop.exact=\"onItemClick\"\n >\n <div class=\"asset-list-tiles__item-card\">\n <div\n v-if=\"item.selected\"\n class=\"asset-list-tiles__selected-triangle\"\n >\n <div class=\"asset-list-tiles__selected-triangle__bg\" />\n <VIcon\n class=\"asset-list-tiles__selected-triangle__icon\"\n icon=\"mdi-check\"\n color=\"white\"\n size=\"large\"\n />\n </div>\n <AssetImagePreview\n :asset-type=\"assetType\"\n :asset-status=\"assetStatus\"\n :src=\"imageProperties.url\"\n :background-color=\"imageProperties.bgColor\"\n :width=\"imageProperties.width\"\n :height=\"imageProperties.height\"\n :fallback-height=\"IMAGE_HEIGHT\"\n :asset-file-properties=\"item.asset.assetFileProperties\"\n :show-meta-icons=\"showMetaIcons\"\n :licence-badge=\"licenceBadge\"\n />\n <div class=\"asset-list-tiles__item-text text-body-small px-2 py-1\">\n <div class=\"d-flex align-center justify-space-between position-relative\">\n <div\n class=\"text-truncate\"\n data-cy=\"asset-tile-title\"\n >\n {{ asset.texts.displayTitle || t('common.damImage.asset.list.noTitle') }}\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;A,GAyBMiB,IAAe,K;;;;;;;;;;;;EAjBrB,IAAMG,IAAQC,GAWRC,IAAOH,GAIP,EAAE,SAAMI,EAAQ,GAIhBC,UAAoB;GACxB,EAAK,aAAa;IAAE,SAASC,EAAM,MAAM;IAAI,OAAOL,EAAM;GAAM,CAAC;EACnE,GAEMM,IAAOC,EAAMP,GAAO,MAAM,GAE1B,EAAE,UAAO,cAAW,gBAAa,oBAAiB,oBAAiBQ,EAAoBF,CAAI;E,kBAI/F1B,EAAA,GAAAC,EA4CM,OAAA;GA3CJ,OAAKC,EAAA,CAAC,0DAAwD;IACV,oCAAAwB,EAAA,MAAK;IAAkD,kCAAAA,EAAA,MAAK;;GAI/G,SAAKvB,EAAaqB,GAAW,CAAA,QAAA,OAAA,CAAA;E,IAE9BpB,EAmCM,OAnCNQ,GAmCM;GAjCIc,EAAA,MAAK,YADb1B,EAAA,GAAAC,EAWM,OAXNY,GAWM,CAPJ,AAAAqB,EAAA,OAAA9B,EAAuD,OAAA,EAAlD,OAAM,0CAAyC,GAAA,MAAA,EAAA,GACpDC,EAKEC,GAAA;IAJA,OAAM;IACN,MAAK;IACL,OAAM;IACN,MAAK;;GAGTD,EAWEG,GAAA;IAVC,cAAYC,EAAA8B,CAAA;IACZ,gBAAc9B,EAAA+B,CAAA;IACd,KAAK/B,EAAAgC,CAAA,CAAe,CAAC;IACrB,oBAAkBhC,EAAAgC,CAAA,CAAe,CAAC;IAClC,OAAOhC,EAAAgC,CAAA,CAAe,CAAC;IACvB,QAAQhC,EAAAgC,CAAA,CAAe,CAAC;IACxB,mBAAiBxB;IACjB,yBAAuBS,EAAA,MAAK,MAAM;IAClC,mBAAiBL,EAAA;IACjB,iBAAeZ,EAAAiC,CAAA;;;;;;;;;;;;GAElBtC,EASM,OATNU,GASM,CARJV,EAOM,OAPNW,GAOM,CANJX,EAKM,OALNY,GAKMN,EADDD,EAAAgB,CAAA,CAAK,CAAC,MAAM,gBAAgBhB,EAAAmC,CAAA,CAAC,CAAA,oCAAA,CAAA,GAAA,CAAA,C"}
@@ -1,6 +1,7 @@
1
1
  import { Ref } from 'vue';
2
2
  import { AssetSearchListItemDto } from '../../types/Asset';
3
3
  import { AssetSelectListItem } from '../store/assetSelectStore';
4
+ /** Call it in the setup of a list item: the item inherits the DAM configuration of its asset select. */
4
5
  export declare function useAssetItemActions(item: Readonly<Ref<AssetSelectListItem>>): {
5
6
  asset: import('vue').ComputedRef<AssetSearchListItemDto>;
6
7
  assetType: import('vue').ComputedRef<import('../../types/Asset').DamAssetTypeType>;
@@ -27,4 +28,5 @@ export declare function useAssetItemActions(item: Readonly<Ref<AssetSelectListIt
27
28
  height: number;
28
29
  bgColor: string;
29
30
  }>;
31
+ licenceBadge: import('vue').ComputedRef<string>;
30
32
  };
@@ -1,36 +1,42 @@
1
- import { computed as e } from "vue";
1
+ import { useCommonAdminCoreDamOptions as e } from "../../composables/commonAdminCoreDamOptions.js";
2
+ import { inheritedDamConfigName as t } from "../../composables/damConfigName.js";
3
+ import { useDamCachedAssetLicences as n } from "../../user/composables/cachedAssetLicences.js";
4
+ import { computed as r, watch as i } from "vue";
2
5
  // src/domains/dam/assetSelect/composables/assetSelectItemActions.ts
3
- var t = 200, n = "#ccc";
4
- function r(r) {
5
- let i = e(() => r.value.asset);
6
- return {
7
- asset: i,
8
- assetType: e(() => i.value.attributes.assetType),
9
- assetStatus: e(() => i.value.attributes.assetStatus),
10
- imageProperties: e(() => i.value.mainFile && i.value.mainFile.links && i.value.mainFile.links.image_list ? {
11
- url: i.value.mainFile.links.image_list.url,
12
- width: i.value.mainFile.links.image_list.width,
13
- height: i.value.mainFile.links.image_list.height,
14
- bgColor: n
15
- } : {
16
- url: void 0,
17
- width: void 0,
18
- height: t,
19
- bgColor: n
20
- }),
21
- tableImageProperties: e(() => i.value.mainFile && i.value.mainFile.links && i.value.mainFile.links.image_table ? {
22
- url: i.value.mainFile.links.image_table.url,
23
- width: i.value.mainFile.links.image_table.width,
24
- height: i.value.mainFile.links.image_table.height,
25
- bgColor: n
26
- } : {
27
- url: void 0,
28
- width: void 0,
29
- height: t,
30
- bgColor: n
31
- })
6
+ var a = 200, o = "#ccc";
7
+ function s(s) {
8
+ let c = r(() => s.value.asset), l = r(() => c.value.attributes.assetType), u = r(() => c.value.attributes.assetStatus), d = r(() => c.value.mainFile && c.value.mainFile.links && c.value.mainFile.links.image_list ? {
9
+ url: c.value.mainFile.links.image_list.url,
10
+ width: c.value.mainFile.links.image_list.width,
11
+ height: c.value.mainFile.links.image_list.height,
12
+ bgColor: o
13
+ } : {
14
+ url: void 0,
15
+ width: void 0,
16
+ height: a,
17
+ bgColor: o
18
+ }), f = r(() => c.value.mainFile && c.value.mainFile.links && c.value.mainFile.links.image_table ? {
19
+ url: c.value.mainFile.links.image_table.url,
20
+ width: c.value.mainFile.links.image_table.width,
21
+ height: c.value.mainFile.links.image_table.height,
22
+ bgColor: o
23
+ } : {
24
+ url: void 0,
25
+ width: void 0,
26
+ height: a,
27
+ bgColor: o
28
+ }), p = t(), { showLicenceBadgeEnabled: m } = e(p), { addToCachedAssetLicences: h, fetchCachedAssetLicences: g, getCachedAssetLicence: _ } = n(p);
29
+ return m && i(() => c.value.licence, (e) => {
30
+ h(e), g();
31
+ }, { immediate: !0 }), {
32
+ asset: c,
33
+ assetType: l,
34
+ assetStatus: u,
35
+ imageProperties: d,
36
+ tableImageProperties: f,
37
+ licenceBadge: r(() => m ? _(c.value.licence)?.badge ?? "" : "")
32
38
  };
33
39
  }
34
- export { r as useAssetItemActions };
40
+ export { s as useAssetItemActions };
35
41
 
36
42
  //# sourceMappingURL=assetSelectItemActions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assetSelectItemActions.js","names":["IMAGE_HEIGHT","IMAGE_BG_COLOR_DEFAULT","useAssetItemActions","asset","computed","item"],"sources":["../../../../../src/domains/dam/assetSelect/composables/assetSelectItemActions.ts"],"sourcesContent":["import { computed, type Ref } from 'vue'\nimport type { AssetSearchListItemDto } from '@/domains/dam/types/Asset'\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\n\nconst IMAGE_HEIGHT = 200\nconst IMAGE_BG_COLOR_DEFAULT = '#ccc'\n\nexport function useAssetItemActions(item: Readonly<Ref<AssetSelectListItem>>) {\n const asset = computed<AssetSearchListItemDto>(() => {\n return item.value.asset\n })\n\n const assetType = computed(() => {\n return asset.value.attributes.assetType\n })\n\n const assetStatus = computed(() => {\n return asset.value.attributes.assetStatus\n })\n\n const imageProperties = computed(() => {\n if (asset.value.mainFile && asset.value.mainFile.links && asset.value.mainFile.links.image_list) {\n return {\n url: asset.value.mainFile.links.image_list.url,\n width: asset.value.mainFile.links.image_list.width,\n height: asset.value.mainFile.links.image_list.height,\n bgColor: IMAGE_BG_COLOR_DEFAULT,\n }\n }\n return {\n url: undefined,\n width: undefined,\n height: IMAGE_HEIGHT,\n bgColor: IMAGE_BG_COLOR_DEFAULT,\n }\n })\n\n const tableImageProperties = computed(() => {\n if (asset.value.mainFile && asset.value.mainFile.links && asset.value.mainFile.links.image_table) {\n return {\n url: asset.value.mainFile.links.image_table.url,\n width: asset.value.mainFile.links.image_table.width,\n height: asset.value.mainFile.links.image_table.height,\n bgColor: IMAGE_BG_COLOR_DEFAULT,\n }\n }\n return {\n url: undefined,\n width: undefined,\n height: IMAGE_HEIGHT,\n bgColor: IMAGE_BG_COLOR_DEFAULT,\n }\n })\n\n return {\n asset,\n assetType,\n assetStatus,\n imageProperties,\n tableImageProperties,\n }\n}\n"],"mappings":";;AAIA,IAAMA,IAAe,KACfC,IAAyB;AAE/B,SAAgBC,EAAoB,GAA0C;CAC5E,IAAMC,IAAQC,QACLC,EAAK,MAAM,KACnB;CA4CD,OAAO;EACL;EACA,WA5CgBD,QACTD,EAAM,MAAM,WAAW,SA2C9B;EACA,aAzCkBC,QACXD,EAAM,MAAM,WAAW,WAwC9B;EACA,iBAtCsBC,QAClBD,EAAM,MAAM,YAAYA,EAAM,MAAM,SAAS,SAASA,EAAM,MAAM,SAAS,MAAM,aAC5E;GACL,KAAKA,EAAM,MAAM,SAAS,MAAM,WAAW;GAC3C,OAAOA,EAAM,MAAM,SAAS,MAAM,WAAW;GAC7C,QAAQA,EAAM,MAAM,SAAS,MAAM,WAAW;GAC9C,SAASF;EACX,IAEK;GACL,KAAK,KAAA;GACL,OAAO,KAAA;GACP,QAAQD;GACR,SAASC;EACX,CAwBA;EACA,sBAtB2BG,QACvBD,EAAM,MAAM,YAAYA,EAAM,MAAM,SAAS,SAASA,EAAM,MAAM,SAAS,MAAM,cAC5E;GACL,KAAKA,EAAM,MAAM,SAAS,MAAM,YAAY;GAC5C,OAAOA,EAAM,MAAM,SAAS,MAAM,YAAY;GAC9C,QAAQA,EAAM,MAAM,SAAS,MAAM,YAAY;GAC/C,SAASF;EACX,IAEK;GACL,KAAK,KAAA;GACL,OAAO,KAAA;GACP,QAAQD;GACR,SAASC;EACX,CAQA;CACF;AACF"}
1
+ {"version":3,"file":"assetSelectItemActions.js","names":["IMAGE_HEIGHT","IMAGE_BG_COLOR_DEFAULT","useAssetItemActions","asset","computed","item","assetType","assetStatus","imageProperties","tableImageProperties","configName","inheritedDamConfigName","useCommonAdminCoreDamOptions","useDamCachedAssetLicences","showLicenceBadgeEnabled","watch","addToCachedAssetLicences","licence","fetchCachedAssetLicences","getCachedAssetLicence"],"sources":["../../../../../src/domains/dam/assetSelect/composables/assetSelectItemActions.ts"],"sourcesContent":["import { computed, type Ref, watch } from 'vue'\nimport type { AssetSearchListItemDto } from '@/domains/dam/types/Asset'\nimport type { AssetSelectListItem } from '@/domains/dam/assetSelect/store/assetSelectStore'\nimport { useCommonAdminCoreDamOptions } from '@/domains/dam/composables/commonAdminCoreDamOptions'\nimport { inheritedDamConfigName } from '@/domains/dam/composables/damConfigName'\nimport { useDamCachedAssetLicences } from '@/domains/dam/user/composables/cachedAssetLicences'\n\nconst IMAGE_HEIGHT = 200\nconst IMAGE_BG_COLOR_DEFAULT = '#ccc'\n\n/** Call it in the setup of a list item: the item inherits the DAM configuration of its asset select. */\nexport function useAssetItemActions(item: Readonly<Ref<AssetSelectListItem>>) {\n const asset = computed<AssetSearchListItemDto>(() => {\n return item.value.asset\n })\n\n const assetType = computed(() => {\n return asset.value.attributes.assetType\n })\n\n const assetStatus = computed(() => {\n return asset.value.attributes.assetStatus\n })\n\n const imageProperties = computed(() => {\n if (asset.value.mainFile && asset.value.mainFile.links && asset.value.mainFile.links.image_list) {\n return {\n url: asset.value.mainFile.links.image_list.url,\n width: asset.value.mainFile.links.image_list.width,\n height: asset.value.mainFile.links.image_list.height,\n bgColor: IMAGE_BG_COLOR_DEFAULT,\n }\n }\n return {\n url: undefined,\n width: undefined,\n height: IMAGE_HEIGHT,\n bgColor: IMAGE_BG_COLOR_DEFAULT,\n }\n })\n\n const tableImageProperties = computed(() => {\n if (asset.value.mainFile && asset.value.mainFile.links && asset.value.mainFile.links.image_table) {\n return {\n url: asset.value.mainFile.links.image_table.url,\n width: asset.value.mainFile.links.image_table.width,\n height: asset.value.mainFile.links.image_table.height,\n bgColor: IMAGE_BG_COLOR_DEFAULT,\n }\n }\n return {\n url: undefined,\n width: undefined,\n height: IMAGE_HEIGHT,\n bgColor: IMAGE_BG_COLOR_DEFAULT,\n }\n })\n\n // The badge of the asset's licence, only where the configuration turns it on (`showLicenceBadgeEnabled`).\n const configName = inheritedDamConfigName()\n const { showLicenceBadgeEnabled } = useCommonAdminCoreDamOptions(configName)\n const { addToCachedAssetLicences, fetchCachedAssetLicences, getCachedAssetLicence } =\n useDamCachedAssetLicences(configName)\n if (showLicenceBadgeEnabled) {\n // The cache's fetch is debounced: the items of one list load their licences in one request.\n watch(\n () => asset.value.licence,\n (licence) => {\n addToCachedAssetLicences(licence)\n fetchCachedAssetLicences()\n },\n { immediate: true }\n )\n }\n const licenceBadge = computed(() =>\n showLicenceBadgeEnabled ? (getCachedAssetLicence(asset.value.licence)?.badge ?? '') : ''\n )\n\n return {\n asset,\n assetType,\n assetStatus,\n imageProperties,\n tableImageProperties,\n licenceBadge,\n }\n}\n"],"mappings":";;;;;AAOA,IAAMA,IAAe,KACfC,IAAyB;AAG/B,SAAgBC,EAAoB,GAA0C;CAC5E,IAAMC,IAAQC,QACLC,EAAK,MAAM,KACnB,GAEKC,IAAYF,QACTD,EAAM,MAAM,WAAW,SAC/B,GAEKI,IAAcH,QACXD,EAAM,MAAM,WAAW,WAC/B,GAEKK,IAAkBJ,QAClBD,EAAM,MAAM,YAAYA,EAAM,MAAM,SAAS,SAASA,EAAM,MAAM,SAAS,MAAM,aAC5E;EACL,KAAKA,EAAM,MAAM,SAAS,MAAM,WAAW;EAC3C,OAAOA,EAAM,MAAM,SAAS,MAAM,WAAW;EAC7C,QAAQA,EAAM,MAAM,SAAS,MAAM,WAAW;EAC9C,SAASF;CACX,IAEK;EACL,KAAK,KAAA;EACL,OAAO,KAAA;EACP,QAAQD;EACR,SAASC;CACX,CACD,GAEKQ,IAAuBL,QACvBD,EAAM,MAAM,YAAYA,EAAM,MAAM,SAAS,SAASA,EAAM,MAAM,SAAS,MAAM,cAC5E;EACL,KAAKA,EAAM,MAAM,SAAS,MAAM,YAAY;EAC5C,OAAOA,EAAM,MAAM,SAAS,MAAM,YAAY;EAC9C,QAAQA,EAAM,MAAM,SAAS,MAAM,YAAY;EAC/C,SAASF;CACX,IAEK;EACL,KAAK,KAAA;EACL,OAAO,KAAA;EACP,QAAQD;EACR,SAASC;CACX,CACD,GAGKS,IAAaC,EAAuB,GACpC,EAAE,+BAA4BC,EAA6BF,CAAU,GACrE,EAAE,6BAA0B,6BAA0B,6BAC1DG,EAA0BH,CAAU;CAgBtC,OAfII,KAEFC,QACQZ,EAAM,MAAM,UACjB,MAAY;EAEX,AADAa,EAAyBC,CAAO,GAChCC,EAAyB;CAC3B,GACA,EAAE,WAAW,GAAK,CACpB,GAMK;EACL;EACA;EACA;EACA;EACA;EACA,cAVmBd,QACnBU,IAA2BK,EAAsBhB,EAAM,MAAM,OAAO,CAAC,EAAE,SAAS,KAAM,EAStF;CACF;AACF"}
@@ -870,7 +870,7 @@ export declare function useAssetSelectActions(configName: string): {
870
870
  };
871
871
  } | undefined;
872
872
  metadata: {
873
- exifData: [];
873
+ exifData: Record<string, string | number | boolean | null>;
874
874
  id: string;
875
875
  createdAt: string;
876
876
  modifiedAt: string;
@@ -1159,6 +1159,7 @@ export declare function useAssetSelectActions(configName: string): {
1159
1159
  mainFileSingleUse: Readonly<boolean | null>;
1160
1160
  mainFileInternal: Readonly<boolean | null>;
1161
1161
  mainFileOverrideInternal: Readonly<boolean | null>;
1162
+ autoDeleteAt: Readonly<import('../../../../shared/types/common').DatetimeUTCNullable>;
1162
1163
  createdAt: import('../../../../shared/types/common').DatetimeUTC;
1163
1164
  modifiedAt: import('../../../../shared/types/common').DatetimeUTC;
1164
1165
  modifiedBy: import('../../../../shared/types/common').IntegerIdNullable;
@@ -1252,7 +1253,7 @@ export declare function useAssetSelectActions(configName: string): {
1252
1253
  };
1253
1254
  } | undefined;
1254
1255
  metadata: {
1255
- exifData: [];
1256
+ exifData: Record<string, string | number | boolean | null>;
1256
1257
  id: string;
1257
1258
  createdAt: string;
1258
1259
  modifiedAt: string;
@@ -1541,6 +1542,7 @@ export declare function useAssetSelectActions(configName: string): {
1541
1542
  mainFileSingleUse: Readonly<boolean | null>;
1542
1543
  mainFileInternal: Readonly<boolean | null>;
1543
1544
  mainFileOverrideInternal: Readonly<boolean | null>;
1545
+ autoDeleteAt: Readonly<import('../../../../shared/types/common').DatetimeUTCNullable>;
1544
1546
  createdAt: import('../../../../shared/types/common').DatetimeUTC;
1545
1547
  modifiedAt: import('../../../../shared/types/common').DatetimeUTC;
1546
1548
  modifiedBy: import('../../../../shared/types/common').IntegerIdNullable;