@vc-shell/framework 1.0.57 → 1.0.60

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 (173) hide show
  1. package/core/composables/index.ts +0 -1
  2. package/core/composables/useNotifications/index.ts +2 -2
  3. package/core/composables/usePermissions/index.ts +1 -1
  4. package/core/composables/useSettings/index.ts +2 -2
  5. package/core/composables/useUser/index.ts +2 -2
  6. package/core/plugins/validation/rules.ts +67 -24
  7. package/core/types/index.ts +19 -2
  8. package/dist/framework.mjs +2816 -5023
  9. package/dist/index.css +1 -1
  10. package/dist/types/core/composables/index.d.ts +0 -1
  11. package/dist/types/core/composables/index.d.ts.map +1 -1
  12. package/dist/types/core/composables/useNotifications/index.d.ts +1 -1
  13. package/dist/types/core/composables/useNotifications/index.d.ts.map +1 -1
  14. package/dist/types/core/composables/useUser/index.d.ts +2 -2
  15. package/dist/types/core/composables/useUser/index.d.ts.map +1 -1
  16. package/dist/types/core/plugins/validation/rules.d.ts +8 -30
  17. package/dist/types/core/plugins/validation/rules.d.ts.map +1 -1
  18. package/dist/types/core/types/index.d.ts +17 -2
  19. package/dist/types/core/types/index.d.ts.map +1 -1
  20. package/dist/types/index.d.ts.map +1 -1
  21. package/dist/types/shared/components/app-switcher/components/index.d.ts.map +1 -0
  22. package/dist/types/shared/{app-switcher → components/app-switcher}/components/vc-app-switcher/index.d.ts +5 -5
  23. package/dist/types/shared/components/app-switcher/components/vc-app-switcher/index.d.ts.map +1 -0
  24. package/dist/types/shared/{app-switcher → components/app-switcher}/components/vc-app-switcher/vc-app-switcher.vue.d.ts +1 -1
  25. package/dist/types/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue.d.ts.map +1 -0
  26. package/dist/types/shared/components/app-switcher/composables/index.d.ts.map +1 -0
  27. package/dist/types/shared/{app-switcher → components/app-switcher}/composables/useAppSwitcher/index.d.ts +1 -1
  28. package/dist/types/shared/components/app-switcher/composables/useAppSwitcher/index.d.ts.map +1 -0
  29. package/dist/types/shared/components/app-switcher/index.d.ts.map +1 -0
  30. package/dist/types/shared/components/blade-navigation/components/index.d.ts.map +1 -0
  31. package/dist/types/shared/components/blade-navigation/components/vc-blade-navigation/index.d.ts.map +1 -0
  32. package/dist/types/shared/{blade-navigation → components/blade-navigation}/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts +1 -1
  33. package/dist/types/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts.map +1 -0
  34. package/dist/types/shared/components/blade-navigation/composables/index.d.ts.map +1 -0
  35. package/dist/types/shared/{blade-navigation → components/blade-navigation}/composables/useBladeNavigation/index.d.ts +1 -1
  36. package/dist/types/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts.map +1 -0
  37. package/dist/types/shared/components/blade-navigation/index.d.ts.map +1 -0
  38. package/dist/types/shared/{blade-navigation → components/blade-navigation}/types/index.d.ts +1 -1
  39. package/dist/types/shared/components/blade-navigation/types/index.d.ts.map +1 -0
  40. package/dist/types/shared/index.d.ts +4 -3
  41. package/dist/types/shared/index.d.ts.map +1 -1
  42. package/dist/types/shared/{assets → modules/assets}/components/assets-details/assets-details.vue.d.ts +5 -13
  43. package/dist/types/shared/modules/assets/components/assets-details/assets-details.vue.d.ts.map +1 -0
  44. package/dist/types/shared/{assets → modules/assets}/components/assets-details/index.d.ts +8 -7
  45. package/dist/types/shared/modules/assets/components/assets-details/index.d.ts.map +1 -0
  46. package/dist/types/shared/modules/assets/components/index.d.ts.map +1 -0
  47. package/dist/types/shared/modules/assets/index.d.ts.map +1 -0
  48. package/dist/types/shared/modules/assets/locales/index.d.ts +3 -0
  49. package/dist/types/shared/modules/assets/locales/index.d.ts.map +1 -0
  50. package/dist/types/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts +58 -0
  51. package/dist/types/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts.map +1 -0
  52. package/dist/types/shared/modules/assets-manager/components/assets-manager/index.d.ts +59 -0
  53. package/dist/types/shared/modules/assets-manager/components/assets-manager/index.d.ts.map +1 -0
  54. package/dist/types/shared/modules/assets-manager/components/index.d.ts +2 -0
  55. package/dist/types/shared/modules/assets-manager/components/index.d.ts.map +1 -0
  56. package/dist/types/shared/modules/assets-manager/index.d.ts +12 -0
  57. package/dist/types/shared/modules/assets-manager/index.d.ts.map +1 -0
  58. package/dist/types/shared/modules/assets-manager/locales/index.d.ts.map +1 -0
  59. package/dist/types/shared/utilities/assets.d.ts +5 -0
  60. package/dist/types/shared/utilities/assets.d.ts.map +1 -0
  61. package/dist/types/ui/components/atoms/vc-checkbox/vc-checkbox.vue.d.ts.map +1 -1
  62. package/dist/types/ui/components/molecules/vc-editor/vc-editor.vue.d.ts.map +1 -1
  63. package/dist/types/ui/components/molecules/vc-file-upload/index.d.ts +12 -12
  64. package/dist/types/ui/components/molecules/vc-file-upload/vc-file-upload.vue.d.ts.map +1 -1
  65. package/dist/types/ui/components/molecules/vc-input/index.d.ts +0 -4
  66. package/dist/types/ui/components/molecules/vc-input/index.d.ts.map +1 -1
  67. package/dist/types/ui/components/molecules/vc-input/vc-input.vue.d.ts +1 -1
  68. package/dist/types/ui/components/molecules/vc-input/vc-input.vue.d.ts.map +1 -1
  69. package/dist/types/ui/components/molecules/vc-select/index.d.ts +24 -0
  70. package/dist/types/ui/components/molecules/vc-select/index.d.ts.map +1 -1
  71. package/dist/types/ui/components/molecules/vc-select/vc-select.vue.d.ts +20 -0
  72. package/dist/types/ui/components/molecules/vc-select/vc-select.vue.d.ts.map +1 -1
  73. package/dist/types/ui/components/molecules/vc-textarea/index.d.ts +0 -4
  74. package/dist/types/ui/components/molecules/vc-textarea/index.d.ts.map +1 -1
  75. package/dist/types/ui/components/molecules/vc-textarea/vc-textarea.stories.d.ts +0 -4
  76. package/dist/types/ui/components/molecules/vc-textarea/vc-textarea.stories.d.ts.map +1 -1
  77. package/dist/types/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts +1 -1
  78. package/dist/types/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts.map +1 -1
  79. package/dist/types/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue.d.ts.map +1 -1
  80. package/dist/types/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts +2 -19
  81. package/dist/types/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts.map +1 -1
  82. package/dist/types/ui/components/organisms/vc-dynamic-property/index.d.ts +12 -0
  83. package/dist/types/ui/components/organisms/vc-dynamic-property/index.d.ts.map +1 -1
  84. package/dist/types/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts +7 -0
  85. package/dist/types/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts.map +1 -1
  86. package/dist/types/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts +2 -20
  87. package/dist/types/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts.map +1 -1
  88. package/dist/types/ui/components/organisms/vc-gallery/index.d.ts +28 -31
  89. package/dist/types/ui/components/organisms/vc-gallery/index.d.ts.map +1 -1
  90. package/dist/types/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts +2 -6
  91. package/dist/types/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts.map +1 -1
  92. package/dist/types/ui/components/organisms/vc-table/index.d.ts +49 -37
  93. package/dist/types/ui/components/organisms/vc-table/index.d.ts.map +1 -1
  94. package/dist/types/ui/components/organisms/vc-table/vc-table.stories.d.ts +49 -37
  95. package/dist/types/ui/components/organisms/vc-table/vc-table.stories.d.ts.map +1 -1
  96. package/dist/types/ui/components/organisms/vc-table/vc-table.vue.d.ts +12 -7
  97. package/dist/types/ui/components/organisms/vc-table/vc-table.vue.d.ts.map +1 -1
  98. package/package.json +5 -6
  99. package/shared/{app-switcher → components/app-switcher}/components/vc-app-switcher/vc-app-switcher.vue +1 -1
  100. package/shared/{app-switcher → components/app-switcher}/composables/useAppSwitcher/index.ts +2 -2
  101. package/shared/{app-switcher → components/app-switcher}/index.ts +1 -1
  102. package/shared/{blade-navigation → components/blade-navigation}/components/vc-blade-navigation/vc-blade-navigation.vue +2 -2
  103. package/shared/{blade-navigation → components/blade-navigation}/composables/useBladeNavigation/index.ts +6 -5
  104. package/shared/{blade-navigation → components/blade-navigation}/index.ts +1 -1
  105. package/shared/{blade-navigation → components/blade-navigation}/types/index.ts +1 -1
  106. package/shared/index.ts +10 -7
  107. package/shared/modules/assets/components/assets-details/assets-details.vue +204 -0
  108. package/shared/{assets → modules/assets}/index.ts +1 -1
  109. package/shared/{assets → modules/assets}/locales/en.json +7 -5
  110. package/shared/modules/assets/locales/index.ts +2 -0
  111. package/shared/modules/assets-manager/components/assets-manager/assets-manager.vue +389 -0
  112. package/shared/modules/assets-manager/components/assets-manager/index.ts +3 -0
  113. package/shared/modules/assets-manager/components/index.ts +1 -0
  114. package/shared/modules/assets-manager/index.ts +14 -0
  115. package/shared/modules/assets-manager/locales/en.json +28 -0
  116. package/shared/utilities/assets.ts +40 -0
  117. package/tailwind.config.js +0 -2
  118. package/ui/components/atoms/vc-button/vc-button.vue +0 -1
  119. package/ui/components/atoms/vc-checkbox/vc-checkbox.vue +1 -11
  120. package/ui/components/molecules/vc-editor/vc-editor.vue +21 -0
  121. package/ui/components/molecules/vc-file-upload/vc-file-upload.vue +1 -0
  122. package/ui/components/molecules/vc-input/vc-input.vue +1 -1
  123. package/ui/components/molecules/vc-select/vc-select.vue +40 -9
  124. package/ui/components/molecules/vc-textarea/vc-textarea.vue +1 -1
  125. package/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +3 -2
  126. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue +3 -6
  127. package/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue +2 -6
  128. package/ui/components/organisms/vc-dynamic-property/index.ts +0 -1
  129. package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue +18 -1
  130. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue +5 -11
  131. package/ui/components/organisms/vc-gallery/vc-gallery.vue +164 -49
  132. package/ui/components/organisms/vc-table/vc-table.vue +189 -144
  133. package/core/composables/useAutosave/index.ts +0 -55
  134. package/dist/types/core/composables/useAutosave/index.d.ts +0 -9
  135. package/dist/types/core/composables/useAutosave/index.d.ts.map +0 -1
  136. package/dist/types/shared/app-switcher/components/index.d.ts.map +0 -1
  137. package/dist/types/shared/app-switcher/components/vc-app-switcher/index.d.ts.map +0 -1
  138. package/dist/types/shared/app-switcher/components/vc-app-switcher/vc-app-switcher.vue.d.ts.map +0 -1
  139. package/dist/types/shared/app-switcher/composables/index.d.ts.map +0 -1
  140. package/dist/types/shared/app-switcher/composables/useAppSwitcher/index.d.ts.map +0 -1
  141. package/dist/types/shared/app-switcher/index.d.ts.map +0 -1
  142. package/dist/types/shared/assets/components/assets-details/assets-details.vue.d.ts.map +0 -1
  143. package/dist/types/shared/assets/components/assets-details/index.d.ts.map +0 -1
  144. package/dist/types/shared/assets/components/index.d.ts.map +0 -1
  145. package/dist/types/shared/assets/index.d.ts.map +0 -1
  146. package/dist/types/shared/assets/locales/index.d.ts.map +0 -1
  147. package/dist/types/shared/blade-navigation/components/index.d.ts.map +0 -1
  148. package/dist/types/shared/blade-navigation/components/vc-blade-navigation/index.d.ts.map +0 -1
  149. package/dist/types/shared/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts.map +0 -1
  150. package/dist/types/shared/blade-navigation/composables/index.d.ts.map +0 -1
  151. package/dist/types/shared/blade-navigation/composables/useBladeNavigation/index.d.ts.map +0 -1
  152. package/dist/types/shared/blade-navigation/index.d.ts.map +0 -1
  153. package/dist/types/shared/blade-navigation/types/index.d.ts.map +0 -1
  154. package/shared/assets/components/assets-details/assets-details.vue +0 -116
  155. /package/dist/types/shared/{app-switcher → components/app-switcher}/components/index.d.ts +0 -0
  156. /package/dist/types/shared/{app-switcher → components/app-switcher}/composables/index.d.ts +0 -0
  157. /package/dist/types/shared/{app-switcher → components/app-switcher}/index.d.ts +0 -0
  158. /package/dist/types/shared/{blade-navigation → components/blade-navigation}/components/index.d.ts +0 -0
  159. /package/dist/types/shared/{blade-navigation → components/blade-navigation}/components/vc-blade-navigation/index.d.ts +0 -0
  160. /package/dist/types/shared/{blade-navigation → components/blade-navigation}/composables/index.d.ts +0 -0
  161. /package/dist/types/shared/{blade-navigation → components/blade-navigation}/index.d.ts +0 -0
  162. /package/dist/types/shared/{assets → modules/assets}/components/index.d.ts +0 -0
  163. /package/dist/types/shared/{assets → modules/assets}/index.d.ts +0 -0
  164. /package/dist/types/shared/{assets → modules/assets-manager}/locales/index.d.ts +0 -0
  165. /package/shared/{app-switcher → components/app-switcher}/components/index.ts +0 -0
  166. /package/shared/{app-switcher → components/app-switcher}/components/vc-app-switcher/index.ts +0 -0
  167. /package/shared/{app-switcher → components/app-switcher}/composables/index.ts +0 -0
  168. /package/shared/{blade-navigation → components/blade-navigation}/components/index.ts +0 -0
  169. /package/shared/{blade-navigation → components/blade-navigation}/components/vc-blade-navigation/index.ts +0 -0
  170. /package/shared/{blade-navigation → components/blade-navigation}/composables/index.ts +0 -0
  171. /package/shared/{assets → modules/assets}/components/assets-details/index.ts +0 -0
  172. /package/shared/{assets → modules/assets}/components/index.ts +0 -0
  173. /package/shared/{assets → modules/assets-manager}/locales/index.ts +0 -0
@@ -4,7 +4,6 @@ export { default as useUser } from "./useUser";
4
4
  export { default as useNotifications } from "./useNotifications";
5
5
  export { default as useSettings } from "./useSettings";
6
6
  export { default as usePermissions } from "./usePermissions";
7
- export { default as useAutosave } from "./useAutosave";
8
7
  export * from "./useAsync";
9
8
  export * from "./useApiClient";
10
9
  export * from "./useLoading";
@@ -1,5 +1,5 @@
1
- import { PushNotification, PushNotificationClient } from "./../../../core/api";
2
- import useUser from "../useUser";
1
+ import { PushNotification, PushNotificationClient } from "./../../api";
2
+ import { useUser } from "./../";
3
3
  import { computed, ComputedRef, readonly, ref } from "vue";
4
4
  import { orderBy, remove } from "lodash-es";
5
5
 
@@ -1,4 +1,4 @@
1
- import { useUser } from "./../../../core/composables";
1
+ import { useUser } from "./../";
2
2
  import { computed, ComputedRef } from "vue";
3
3
 
4
4
  interface IUsePermissions {
@@ -1,6 +1,6 @@
1
- import { useUser } from "./../../../core/composables";
1
+ import { useUser } from "./../";
2
2
  import { computed, Ref, ref } from "vue";
3
- import { SettingClient } from "./../../../core/api";
3
+ import { SettingClient } from "./../../api";
4
4
 
5
5
  interface IUISetting {
6
6
  contrast_logo?: string;
@@ -7,8 +7,8 @@ import {
7
7
  SecurityResult,
8
8
  ValidatePasswordResetTokenRequest,
9
9
  IdentityResult,
10
- } from "./../../../core/api";
11
- import { AuthData, RequestPasswordResult, SignInResults } from "./../../../core/types";
10
+ } from "./../../api";
11
+ import { AuthData, RequestPasswordResult, SignInResults } from "./../../types";
12
12
  //The Platform Manager uses the same key to store authorization data in the
13
13
  //local storage, so we can exchange authorization data between the Platform Manager
14
14
  //and the user application that is hosted in the same domain as the sub application.
@@ -1,44 +1,87 @@
1
1
  import { defineRule } from "vee-validate";
2
- import AllRules, * as veeValidate from "@vee-validate/rules";
2
+ import AllRules from "@vee-validate/rules";
3
3
 
4
4
  Object.keys(AllRules).forEach((rule) => {
5
5
  defineRule(rule, AllRules[rule]);
6
6
  });
7
7
 
8
- /** @deprecated use `required` from `@vee-validate/rules` */
9
- export const required = veeValidate.required;
8
+ /**
9
+ * Check if an image dimension larger than a given size.
10
+ */
11
+ export const mindimensions = (images: HTMLInputElement, [width, height]: [string | number, string | number]) => {
12
+ // The field is empty so it should pass
13
+ if (!images?.files || !images.files?.length) {
14
+ return true;
15
+ }
10
16
 
11
- /** @deprecated use `min` from `@vee-validate/rules` */
12
- export const min = veeValidate.min;
17
+ const validateImage = (file: File, width: string | number, height: string | number) => {
18
+ const URL = window.URL || window.webkitURL;
19
+ return new Promise((resolve) => {
20
+ const image = new Image();
21
+ image.onerror = () => resolve(false);
22
+ image.onload = () => {
23
+ const isValid = image.width >= Number(width) && image.height >= Number(height);
24
+ if (isValid) {
25
+ resolve(true);
26
+ } else {
27
+ resolve(`Image dimensions must be greater than ${height}*${width}`);
28
+ }
29
+ };
30
+
31
+ image.src = URL.createObjectURL(file);
32
+ });
33
+ };
34
+ const list = [];
35
+ const fileList = images.files;
36
+ for (let i = 0; i < fileList.length; i++) {
37
+ if (!/\.(jpg|svg|jpeg|png|bmp|gif)$/i.test(fileList[i].name)) {
38
+ return Promise.resolve("Not image file");
39
+ }
13
40
 
14
- /** @deprecated use `max` from `@vee-validate/rules` */
15
- export const max = veeValidate.required;
41
+ list.push(fileList[i]);
42
+ }
43
+ return Promise.all(list.map((file) => validateImage(file, width, height))).then((res) => {
44
+ const isInvalid = res.find((x) => x !== true);
45
+ if (isInvalid === false || typeof isInvalid === "string") {
46
+ return isInvalid;
47
+ } else {
48
+ return true;
49
+ }
50
+ });
51
+ };
16
52
 
17
- /** @deprecated use `numeric` from `@vee-validate/rules` */
18
- export const numeric = veeValidate.numeric;
53
+ defineRule("mindimensions", mindimensions);
19
54
 
20
- /** @deprecated use `email` from `@vee-validate/rules` */
21
- export const email = veeValidate.email;
55
+ /**
56
+ * Check if image not exceeding a given size in kilobytes
57
+ */
58
+ export const fileWeight = (file: HTMLInputElement, [size]: [number]) => {
59
+ if (!file?.files || !file.files?.length) {
60
+ return true;
61
+ }
22
62
 
23
- /** @deprecated use `regex` from `@vee-validate/rules` */
24
- export const regex = veeValidate.regex;
63
+ const maxSize = size * 1000;
25
64
 
26
- /** @deprecated use `min_value` from `@vee-validate/rules` */
27
- export const min_value = veeValidate.min_value;
65
+ const fileSizeChecker = (file: File) => {
66
+ return file.size > maxSize;
67
+ };
28
68
 
29
- /** @deprecated use `max_value` from `@vee-validate/rules` */
30
- export const max_value = veeValidate.max_value;
69
+ const list = [];
70
+ for (let i = 0; i < file.files.length; i++) {
71
+ list.push(file.files[i]);
72
+ }
31
73
 
32
- /** @deprecated use `size` from `@vee-validate/rules` */
33
- export const size = veeValidate.size;
74
+ const checker = list.map((x) => fileSizeChecker(x));
34
75
 
35
- /** @deprecated 'maxdimensions' validation rule is deprecated, use 'dimensions' validation rule instead */
36
- export const maxdimensions = (images: HTMLInputElement, [width, height]: [string | number, string | number]) => {
37
- console.warn("'maxdimensions' validation rule is deprecated, use 'dimensions' validation rule instead");
38
- return veeValidate.dimensions(images, [width, height]);
76
+ const isInvalid = checker.find((x) => x === true);
77
+ if (isInvalid) {
78
+ return `File size must be maximum ${size} kb`;
79
+ } else {
80
+ return true;
81
+ }
39
82
  };
40
83
 
41
- defineRule("maxdimensions", maxdimensions);
84
+ defineRule("fileWeight", fileWeight);
42
85
 
43
86
  const compare = (
44
87
  value: string,
@@ -53,10 +53,27 @@ export interface IActionBuilderResult {
53
53
  }
54
54
 
55
55
  export interface IImage {
56
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
57
+ [x: string]: any;
56
58
  sortOrder?: number;
57
- title?: string;
58
- name?: string;
59
+ title?: string | undefined;
60
+ name?: string | undefined;
61
+ url?: string | undefined;
62
+ }
63
+
64
+ export interface Asset {
65
+ readableSize?: string;
66
+ relativeUrl?: string;
59
67
  url?: string;
68
+ description?: string;
69
+ name?: string;
70
+ modifiedDate?: Date;
71
+ id?: string;
72
+ altText?: string;
73
+ typeId?: string;
74
+ sortOrder?: number;
75
+ size?: number;
76
+ createdDate?: Date;
60
77
  }
61
78
 
62
79
  export interface AuthData {