@vc-shell/framework 1.0.57 → 1.0.59

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 (139) hide show
  1. package/core/plugins/validation/rules.ts +67 -24
  2. package/core/types/index.ts +19 -2
  3. package/dist/framework.mjs +1859 -4863
  4. package/dist/index.css +1 -1
  5. package/dist/types/core/plugins/validation/rules.d.ts +8 -30
  6. package/dist/types/core/plugins/validation/rules.d.ts.map +1 -1
  7. package/dist/types/core/types/index.d.ts +17 -2
  8. package/dist/types/core/types/index.d.ts.map +1 -1
  9. package/dist/types/index.d.ts.map +1 -1
  10. package/dist/types/shared/components/app-switcher/components/index.d.ts.map +1 -0
  11. package/dist/types/shared/{app-switcher → components/app-switcher}/components/vc-app-switcher/index.d.ts +5 -5
  12. package/dist/types/shared/components/app-switcher/components/vc-app-switcher/index.d.ts.map +1 -0
  13. package/dist/types/shared/{app-switcher → components/app-switcher}/components/vc-app-switcher/vc-app-switcher.vue.d.ts +1 -1
  14. package/dist/types/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue.d.ts.map +1 -0
  15. package/dist/types/shared/components/app-switcher/composables/index.d.ts.map +1 -0
  16. package/dist/types/shared/{app-switcher → components/app-switcher}/composables/useAppSwitcher/index.d.ts +1 -1
  17. package/dist/types/shared/components/app-switcher/composables/useAppSwitcher/index.d.ts.map +1 -0
  18. package/dist/types/shared/components/app-switcher/index.d.ts.map +1 -0
  19. package/dist/types/shared/components/blade-navigation/components/index.d.ts.map +1 -0
  20. package/dist/types/shared/components/blade-navigation/components/vc-blade-navigation/index.d.ts.map +1 -0
  21. package/dist/types/shared/{blade-navigation → components/blade-navigation}/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts +1 -1
  22. package/dist/types/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts.map +1 -0
  23. package/dist/types/shared/components/blade-navigation/composables/index.d.ts.map +1 -0
  24. package/dist/types/shared/{blade-navigation → components/blade-navigation}/composables/useBladeNavigation/index.d.ts +1 -1
  25. package/dist/types/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts.map +1 -0
  26. package/dist/types/shared/components/blade-navigation/index.d.ts.map +1 -0
  27. package/dist/types/shared/{blade-navigation → components/blade-navigation}/types/index.d.ts +1 -1
  28. package/dist/types/shared/components/blade-navigation/types/index.d.ts.map +1 -0
  29. package/dist/types/shared/index.d.ts +4 -3
  30. package/dist/types/shared/index.d.ts.map +1 -1
  31. package/dist/types/shared/{assets → modules/assets}/components/assets-details/assets-details.vue.d.ts +4 -13
  32. package/dist/types/shared/modules/assets/components/assets-details/assets-details.vue.d.ts.map +1 -0
  33. package/dist/types/shared/{assets → modules/assets}/components/assets-details/index.d.ts +6 -7
  34. package/dist/types/shared/modules/assets/components/assets-details/index.d.ts.map +1 -0
  35. package/dist/types/shared/modules/assets/components/index.d.ts.map +1 -0
  36. package/dist/types/shared/modules/assets/index.d.ts.map +1 -0
  37. package/dist/types/shared/modules/assets/locales/index.d.ts +3 -0
  38. package/dist/types/shared/modules/assets/locales/index.d.ts.map +1 -0
  39. package/dist/types/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts +58 -0
  40. package/dist/types/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts.map +1 -0
  41. package/dist/types/shared/modules/assets-manager/components/assets-manager/index.d.ts +59 -0
  42. package/dist/types/shared/modules/assets-manager/components/assets-manager/index.d.ts.map +1 -0
  43. package/dist/types/shared/modules/assets-manager/components/index.d.ts +2 -0
  44. package/dist/types/shared/modules/assets-manager/components/index.d.ts.map +1 -0
  45. package/dist/types/shared/modules/assets-manager/index.d.ts +12 -0
  46. package/dist/types/shared/modules/assets-manager/index.d.ts.map +1 -0
  47. package/dist/types/shared/modules/assets-manager/locales/index.d.ts.map +1 -0
  48. package/dist/types/shared/utilities/assets.d.ts +5 -0
  49. package/dist/types/shared/utilities/assets.d.ts.map +1 -0
  50. package/dist/types/ui/components/atoms/vc-checkbox/vc-checkbox.vue.d.ts.map +1 -1
  51. package/dist/types/ui/components/molecules/vc-file-upload/vc-file-upload.vue.d.ts.map +1 -1
  52. package/dist/types/ui/components/molecules/vc-input/index.d.ts +0 -4
  53. package/dist/types/ui/components/molecules/vc-input/index.d.ts.map +1 -1
  54. package/dist/types/ui/components/molecules/vc-input/vc-input.vue.d.ts +1 -1
  55. package/dist/types/ui/components/molecules/vc-input/vc-input.vue.d.ts.map +1 -1
  56. package/dist/types/ui/components/molecules/vc-select/vc-select.vue.d.ts.map +1 -1
  57. 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
  58. package/dist/types/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts +2 -19
  59. package/dist/types/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts.map +1 -1
  60. package/dist/types/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts +2 -20
  61. package/dist/types/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts.map +1 -1
  62. package/dist/types/ui/components/organisms/vc-gallery/index.d.ts +30 -33
  63. package/dist/types/ui/components/organisms/vc-gallery/index.d.ts.map +1 -1
  64. package/dist/types/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts +2 -6
  65. package/dist/types/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts.map +1 -1
  66. package/dist/types/ui/components/organisms/vc-table/index.d.ts +49 -37
  67. package/dist/types/ui/components/organisms/vc-table/index.d.ts.map +1 -1
  68. package/dist/types/ui/components/organisms/vc-table/vc-table.stories.d.ts +49 -37
  69. package/dist/types/ui/components/organisms/vc-table/vc-table.stories.d.ts.map +1 -1
  70. package/dist/types/ui/components/organisms/vc-table/vc-table.vue.d.ts +12 -7
  71. package/dist/types/ui/components/organisms/vc-table/vc-table.vue.d.ts.map +1 -1
  72. package/package.json +5 -6
  73. package/shared/{app-switcher → components/app-switcher}/components/vc-app-switcher/vc-app-switcher.vue +1 -1
  74. package/shared/{app-switcher → components/app-switcher}/composables/useAppSwitcher/index.ts +2 -2
  75. package/shared/{app-switcher → components/app-switcher}/index.ts +1 -1
  76. package/shared/{blade-navigation → components/blade-navigation}/components/vc-blade-navigation/vc-blade-navigation.vue +2 -2
  77. package/shared/{blade-navigation → components/blade-navigation}/composables/useBladeNavigation/index.ts +6 -5
  78. package/shared/{blade-navigation → components/blade-navigation}/index.ts +1 -1
  79. package/shared/{blade-navigation → components/blade-navigation}/types/index.ts +1 -1
  80. package/shared/index.ts +10 -7
  81. package/shared/modules/assets/components/assets-details/assets-details.vue +166 -0
  82. package/shared/{assets → modules/assets}/index.ts +1 -1
  83. package/shared/{assets → modules/assets}/locales/en.json +7 -5
  84. package/shared/modules/assets/locales/index.ts +2 -0
  85. package/shared/modules/assets-manager/components/assets-manager/assets-manager.vue +372 -0
  86. package/shared/modules/assets-manager/components/assets-manager/index.ts +3 -0
  87. package/shared/modules/assets-manager/components/index.ts +1 -0
  88. package/shared/modules/assets-manager/index.ts +14 -0
  89. package/shared/modules/assets-manager/locales/en.json +28 -0
  90. package/shared/utilities/assets.ts +40 -0
  91. package/ui/components/atoms/vc-checkbox/vc-checkbox.vue +1 -11
  92. package/ui/components/molecules/vc-file-upload/vc-file-upload.vue +1 -0
  93. package/ui/components/molecules/vc-input/vc-input.vue +1 -1
  94. package/ui/components/molecules/vc-select/vc-select.vue +2 -2
  95. package/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +3 -2
  96. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue +3 -6
  97. package/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue +2 -6
  98. package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue +6 -0
  99. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue +5 -11
  100. package/ui/components/organisms/vc-gallery/vc-gallery.vue +164 -49
  101. package/ui/components/organisms/vc-table/vc-table.vue +171 -100
  102. package/dist/types/shared/app-switcher/components/index.d.ts.map +0 -1
  103. package/dist/types/shared/app-switcher/components/vc-app-switcher/index.d.ts.map +0 -1
  104. package/dist/types/shared/app-switcher/components/vc-app-switcher/vc-app-switcher.vue.d.ts.map +0 -1
  105. package/dist/types/shared/app-switcher/composables/index.d.ts.map +0 -1
  106. package/dist/types/shared/app-switcher/composables/useAppSwitcher/index.d.ts.map +0 -1
  107. package/dist/types/shared/app-switcher/index.d.ts.map +0 -1
  108. package/dist/types/shared/assets/components/assets-details/assets-details.vue.d.ts.map +0 -1
  109. package/dist/types/shared/assets/components/assets-details/index.d.ts.map +0 -1
  110. package/dist/types/shared/assets/components/index.d.ts.map +0 -1
  111. package/dist/types/shared/assets/index.d.ts.map +0 -1
  112. package/dist/types/shared/assets/locales/index.d.ts.map +0 -1
  113. package/dist/types/shared/blade-navigation/components/index.d.ts.map +0 -1
  114. package/dist/types/shared/blade-navigation/components/vc-blade-navigation/index.d.ts.map +0 -1
  115. package/dist/types/shared/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts.map +0 -1
  116. package/dist/types/shared/blade-navigation/composables/index.d.ts.map +0 -1
  117. package/dist/types/shared/blade-navigation/composables/useBladeNavigation/index.d.ts.map +0 -1
  118. package/dist/types/shared/blade-navigation/index.d.ts.map +0 -1
  119. package/dist/types/shared/blade-navigation/types/index.d.ts.map +0 -1
  120. package/shared/assets/components/assets-details/assets-details.vue +0 -116
  121. /package/dist/types/shared/{app-switcher → components/app-switcher}/components/index.d.ts +0 -0
  122. /package/dist/types/shared/{app-switcher → components/app-switcher}/composables/index.d.ts +0 -0
  123. /package/dist/types/shared/{app-switcher → components/app-switcher}/index.d.ts +0 -0
  124. /package/dist/types/shared/{blade-navigation → components/blade-navigation}/components/index.d.ts +0 -0
  125. /package/dist/types/shared/{blade-navigation → components/blade-navigation}/components/vc-blade-navigation/index.d.ts +0 -0
  126. /package/dist/types/shared/{blade-navigation → components/blade-navigation}/composables/index.d.ts +0 -0
  127. /package/dist/types/shared/{blade-navigation → components/blade-navigation}/index.d.ts +0 -0
  128. /package/dist/types/shared/{assets → modules/assets}/components/index.d.ts +0 -0
  129. /package/dist/types/shared/{assets → modules/assets}/index.d.ts +0 -0
  130. /package/dist/types/shared/{assets → modules/assets-manager}/locales/index.d.ts +0 -0
  131. /package/shared/{app-switcher → components/app-switcher}/components/index.ts +0 -0
  132. /package/shared/{app-switcher → components/app-switcher}/components/vc-app-switcher/index.ts +0 -0
  133. /package/shared/{app-switcher → components/app-switcher}/composables/index.ts +0 -0
  134. /package/shared/{blade-navigation → components/blade-navigation}/components/index.ts +0 -0
  135. /package/shared/{blade-navigation → components/blade-navigation}/components/vc-blade-navigation/index.ts +0 -0
  136. /package/shared/{blade-navigation → components/blade-navigation}/composables/index.ts +0 -0
  137. /package/shared/{assets → modules/assets}/components/assets-details/index.ts +0 -0
  138. /package/shared/{assets → modules/assets}/components/index.ts +0 -0
  139. /package/shared/{assets → modules/assets-manager}/locales/index.ts +0 -0
@@ -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 {