quasar-ui-danx 0.0.11 → 0.0.12

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 (80) hide show
  1. package/package.json +6 -1
  2. package/src/components/ActionTable/ActionTable.vue +49 -41
  3. package/src/components/ActionTable/BatchActionMenu.vue +20 -20
  4. package/src/components/ActionTable/EmptyTableState.vue +5 -5
  5. package/src/components/ActionTable/Filters/CollapsableFiltersSidebar.vue +11 -11
  6. package/src/components/ActionTable/Filters/FilterGroupItem.vue +7 -7
  7. package/src/components/ActionTable/Filters/FilterGroupList.vue +29 -29
  8. package/src/components/ActionTable/Filters/FilterListToggle.vue +15 -15
  9. package/src/components/ActionTable/Filters/FilterableField.vue +82 -80
  10. package/src/components/ActionTable/Filters/index.ts +5 -0
  11. package/src/components/ActionTable/Form/Fields/BooleanField.vue +13 -13
  12. package/src/components/ActionTable/Form/Fields/ConfirmPasswordField.vue +11 -11
  13. package/src/components/ActionTable/Form/Fields/DateField.vue +13 -13
  14. package/src/components/ActionTable/Form/Fields/DateRangeField.vue +25 -25
  15. package/src/components/ActionTable/Form/Fields/DateTimeField.vue +21 -21
  16. package/src/components/ActionTable/Form/Fields/DateTimePicker.vue +23 -23
  17. package/src/components/ActionTable/Form/Fields/FileUploadButton.vue +31 -31
  18. package/src/components/ActionTable/Form/Fields/InlineDateTimeField.vue +19 -19
  19. package/src/components/ActionTable/Form/Fields/IntegerField.vue +7 -7
  20. package/src/components/ActionTable/Form/Fields/LabelValueBlock.vue +22 -0
  21. package/src/components/ActionTable/Form/Fields/LabeledInput.vue +19 -19
  22. package/src/components/ActionTable/Form/Fields/MultiFileField.vue +40 -40
  23. package/src/components/ActionTable/Form/Fields/MultiKeywordField.vue +23 -23
  24. package/src/components/ActionTable/Form/Fields/NewPasswordField.vue +10 -10
  25. package/src/components/ActionTable/Form/Fields/NumberField.vue +29 -29
  26. package/src/components/ActionTable/Form/Fields/NumberRangeField.vue +33 -33
  27. package/src/components/ActionTable/Form/Fields/SelectDrawer.vue +36 -36
  28. package/src/components/ActionTable/Form/Fields/SelectField.vue +66 -66
  29. package/src/components/ActionTable/Form/Fields/SelectWithChildrenField.vue +23 -23
  30. package/src/components/ActionTable/Form/Fields/SingleFileField.vue +32 -32
  31. package/src/components/ActionTable/Form/Fields/TextField.vue +36 -36
  32. package/src/components/ActionTable/Form/Fields/WysiwygField.vue +16 -16
  33. package/src/components/ActionTable/Form/Fields/index.ts +23 -23
  34. package/src/components/ActionTable/Form/RenderedForm.vue +27 -25
  35. package/src/components/ActionTable/Form/index.ts +2 -0
  36. package/src/components/ActionTable/TableSummaryRow.vue +33 -33
  37. package/src/components/ActionTable/index.ts +8 -13
  38. package/src/components/ActionTable/listActions.ts +340 -339
  39. package/src/components/ActionTable/listHelpers.ts +74 -0
  40. package/src/components/ActionTable/tableColumns.ts +56 -56
  41. package/src/components/DragAndDrop/HandleDraggable.vue +29 -29
  42. package/src/components/DragAndDrop/ListItemDraggable.vue +10 -10
  43. package/src/components/DragAndDrop/index.ts +0 -1
  44. package/src/components/DragAndDrop/listDragAndDrop.ts +1 -1
  45. package/src/components/Utility/CollapsableSidebar.vue +35 -35
  46. package/src/components/Utility/ContentDrawer.vue +20 -20
  47. package/src/components/Utility/Dialogs/ConfirmDialog.vue +55 -55
  48. package/src/components/Utility/Dialogs/FullScreenDialog.vue +18 -18
  49. package/src/components/Utility/Dialogs/FullscreenCarouselDialog.vue +105 -0
  50. package/src/components/Utility/Dialogs/InfoDialog.vue +10 -10
  51. package/src/components/Utility/Dialogs/InputDialog.vue +13 -13
  52. package/src/components/Utility/ImagePreview.vue +192 -0
  53. package/src/components/Utility/Popover/PopoverMenu.vue +64 -0
  54. package/src/components/Utility/Transitions/StaggeredListTransition.vue +15 -15
  55. package/src/components/Utility/index.ts +11 -9
  56. package/src/components/index.ts +1 -1
  57. package/src/helpers/FileUpload.ts +274 -273
  58. package/src/helpers/compatibility.ts +45 -45
  59. package/src/helpers/date.ts +2 -2
  60. package/src/helpers/download.ts +166 -158
  61. package/src/helpers/downloadPdf.ts +48 -48
  62. package/src/helpers/files.ts +42 -42
  63. package/src/helpers/index.ts +2 -0
  64. package/src/helpers/multiFileUpload.ts +56 -56
  65. package/src/helpers/singleFileUpload.ts +49 -49
  66. package/src/index.esm.js +3 -4
  67. package/src/svg/FilterIcon.svg +7 -0
  68. package/src/svg/ImageIcon.svg +30 -0
  69. package/src/svg/PdfIcon.svg +21 -0
  70. package/src/svg/PercentIcon.svg +13 -0
  71. package/src/svg/TrashIcon.svg +15 -0
  72. package/src/svg/XIcon.svg +18 -0
  73. package/src/svg/index.ts +8 -0
  74. package/src/vendor/tinymce-config.ts +1 -0
  75. package/src/vue-plugin.js +7 -4
  76. package/tsconfig.json +14 -13
  77. package/src/components/ActionTable/tableHelpers.ts +0 -83
  78. package/src/components/DragAndDrop/Icons/index.ts +0 -2
  79. /package/src/{components/DragAndDrop/Icons → svg}/DragHandleDotsIcon.svg +0 -0
  80. /package/src/{components/DragAndDrop/Icons → svg}/DragHandleIcon.svg +0 -0
@@ -0,0 +1,64 @@
1
+ <template>
2
+ <a
3
+ class="p-3 actionable"
4
+ :class="{'opacity-50 cursor-not-allowed': disabled}"
5
+ >
6
+ <Transition
7
+ mode="out-in"
8
+ :duration="150"
9
+ >
10
+ <q-spinner
11
+ v-if="loading"
12
+ class="w-4 h-4 text-black"
13
+ />
14
+ <MenuIcon
15
+ v-else
16
+ class="w-4 text-black"
17
+ />
18
+ </Transition>
19
+ <q-menu
20
+ v-if="!disabled"
21
+ auto-close
22
+ >
23
+ <q-list>
24
+ <template v-for="item in items">
25
+ <a
26
+ v-if="item.url"
27
+ :key="item.url"
28
+ class="q-item"
29
+ target="_blank"
30
+ :href="item.url"
31
+ :class="item.class"
32
+ >
33
+ {{ item.label }}
34
+ </a>
35
+ <q-item
36
+ v-else
37
+ :key="item.action"
38
+ clickable
39
+ :class="item.class"
40
+ @click="$emit('action', item.action)"
41
+ >
42
+ {{ item.label }}
43
+ </q-item>
44
+ </template>
45
+ </q-list>
46
+ </q-menu>
47
+ </a>
48
+ </template>
49
+ <script setup>
50
+ import { DotsVerticalIcon as MenuIcon } from '@heroicons/vue/outline';
51
+
52
+ defineEmits(['action']);
53
+ defineProps({
54
+ items: {
55
+ type: Array,
56
+ required: true,
57
+ validator(items) {
58
+ return items.every((item) => item.label && (item.url || item.action));
59
+ }
60
+ },
61
+ disabled: Boolean,
62
+ loading: Boolean
63
+ });
64
+ </script>
@@ -1,26 +1,25 @@
1
1
  <template>
2
2
  <TransitionGroup
3
- ref="list"
4
- tag="div"
5
- appear
6
- :css="false"
7
- @before-enter="onBeforeEnter"
8
- @enter="onEnter"
9
- @leave="onLeave"
3
+ ref="list"
4
+ tag="div"
5
+ appear
6
+ :css="false"
7
+ @before-enter="onBeforeEnter"
8
+ @enter="onEnter"
9
+ @leave="onLeave"
10
10
  >
11
11
  <slot />
12
12
  </TransitionGroup>
13
13
  </template>
14
14
 
15
15
  <script setup>
16
- import gsap from "gsap";
17
- import { isTestMode } from "src/helpers/testing";
18
- import { computed, ref } from "vue";
16
+ import gsap from 'gsap';
17
+ import { computed, ref } from 'vue';
19
18
 
20
19
  const props = defineProps({
21
20
  height: {
22
21
  type: [String, Number],
23
- default: "auto"
22
+ default: 'auto'
24
23
  },
25
24
  duration: {
26
25
  type: Number,
@@ -29,7 +28,8 @@ const props = defineProps({
29
28
  delayOffset: {
30
29
  type: Number,
31
30
  default: 0.5
32
- }
31
+ },
32
+ disabled: Boolean
33
33
  });
34
34
 
35
35
  const list = ref(null);
@@ -38,7 +38,7 @@ const indexDelay = computed(() => {
38
38
  });
39
39
 
40
40
  function onBeforeEnter(el) {
41
- if (isTestMode.value) {
41
+ if (props.disabled) {
42
42
  return;
43
43
  }
44
44
  el.style.opacity = 0;
@@ -46,7 +46,7 @@ function onBeforeEnter(el) {
46
46
  }
47
47
 
48
48
  function onEnter(el, onComplete) {
49
- if (isTestMode.value) {
49
+ if (props.disabled) {
50
50
  onComplete();
51
51
  return;
52
52
  }
@@ -61,7 +61,7 @@ function onEnter(el, onComplete) {
61
61
  }
62
62
 
63
63
  function onLeave(el, onComplete) {
64
- if (isTestMode.value) {
64
+ if (props.disabled) {
65
65
  onComplete();
66
66
  return;
67
67
  }
@@ -1,9 +1,11 @@
1
- export { default as CollapsableSidebar } from "./CollapsableSidebar";
2
- export { default as ConfirmDialog } from "./Dialogs/ConfirmDialog";
3
- export { default as ContentDrawer } from "./ContentDrawer";
4
- export { default as FullScreenDialog } from "./Dialogs/FullScreenDialog";
5
- export { default as InfoDialog } from "./Dialogs/InfoDialog";
6
- export { default as InputDialog } from "./Dialogs/InputDialog";
7
- export { default as ListTransition } from "./Transitions/ListTransition";
8
- export { default as SlideTransition } from "./Transitions/SlideTransition";
9
- export { default as StaggeredListTransition } from "./Transitions/StaggeredListTransition";
1
+ export { default as CollapsableSidebar } from "./CollapsableSidebar.vue";
2
+ export { default as ConfirmDialog } from "./Dialogs/ConfirmDialog.vue";
3
+ export { default as ContentDrawer } from "./ContentDrawer.vue";
4
+ export { default as FullScreenCarouselDialog } from "./Dialogs/FullscreenCarouselDialog.vue";
5
+ export { default as FullScreenDialog } from "./Dialogs/FullScreenDialog.vue";
6
+ export { default as ImagePreview } from "./ImagePreview.vue";
7
+ export { default as InfoDialog } from "./Dialogs/InfoDialog.vue";
8
+ export { default as InputDialog } from "./Dialogs/InputDialog.vue";
9
+ export { default as ListTransition } from "./Transitions/ListTransition.vue";
10
+ export { default as SlideTransition } from "./Transitions/SlideTransition.vue";
11
+ export { default as StaggeredListTransition } from "./Transitions/StaggeredListTransition.vue";
@@ -1,3 +1,3 @@
1
1
  export * from "./ActionTable";
2
2
  export * from "./Utility";
3
-
3
+ export * from "./DragAndDrop";