quasar-ui-danx 0.0.11 → 0.0.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. package/dist/index.css +5 -0
  2. package/dist/index.min.css +5 -0
  3. package/dist/index.rtl.css +5 -0
  4. package/dist/index.rtl.min.css +5 -0
  5. package/package.json +6 -1
  6. package/src/components/ActionTable/ActionTable.vue +49 -41
  7. package/src/components/ActionTable/BatchActionMenu.vue +20 -20
  8. package/src/components/ActionTable/EmptyTableState.vue +5 -5
  9. package/src/components/ActionTable/Filters/CollapsableFiltersSidebar.vue +11 -11
  10. package/src/components/ActionTable/Filters/FilterGroupItem.vue +7 -7
  11. package/src/components/ActionTable/Filters/FilterGroupList.vue +29 -29
  12. package/src/components/ActionTable/Filters/FilterListToggle.vue +15 -15
  13. package/src/components/ActionTable/Filters/FilterableField.vue +82 -80
  14. package/src/components/ActionTable/Filters/index.ts +5 -0
  15. package/src/components/ActionTable/Form/Fields/BooleanField.vue +13 -13
  16. package/src/components/ActionTable/Form/Fields/ConfirmPasswordField.vue +11 -11
  17. package/src/components/ActionTable/Form/Fields/DateField.vue +13 -13
  18. package/src/components/ActionTable/Form/Fields/DateRangeField.vue +25 -25
  19. package/src/components/ActionTable/Form/Fields/DateTimeField.vue +21 -21
  20. package/src/components/ActionTable/Form/Fields/DateTimePicker.vue +23 -23
  21. package/src/components/ActionTable/Form/Fields/FileUploadButton.vue +31 -31
  22. package/src/components/ActionTable/Form/Fields/InlineDateTimeField.vue +19 -19
  23. package/src/components/ActionTable/Form/Fields/IntegerField.vue +7 -7
  24. package/src/components/ActionTable/Form/Fields/LabelValueBlock.vue +22 -0
  25. package/src/components/ActionTable/Form/Fields/LabeledInput.vue +19 -19
  26. package/src/components/ActionTable/Form/Fields/MultiFileField.vue +40 -40
  27. package/src/components/ActionTable/Form/Fields/MultiKeywordField.vue +23 -23
  28. package/src/components/ActionTable/Form/Fields/NewPasswordField.vue +10 -10
  29. package/src/components/ActionTable/Form/Fields/NumberField.vue +29 -29
  30. package/src/components/ActionTable/Form/Fields/NumberRangeField.vue +33 -33
  31. package/src/components/ActionTable/Form/Fields/SelectDrawer.vue +36 -36
  32. package/src/components/ActionTable/Form/Fields/SelectField.vue +66 -66
  33. package/src/components/ActionTable/Form/Fields/SelectWithChildrenField.vue +23 -23
  34. package/src/components/ActionTable/Form/Fields/SingleFileField.vue +32 -32
  35. package/src/components/ActionTable/Form/Fields/TextField.vue +36 -36
  36. package/src/components/ActionTable/Form/Fields/WysiwygField.vue +16 -16
  37. package/src/components/ActionTable/Form/Fields/index.ts +23 -23
  38. package/src/components/ActionTable/Form/RenderedForm.vue +27 -25
  39. package/src/components/ActionTable/Form/index.ts +2 -0
  40. package/src/components/ActionTable/TableSummaryRow.vue +33 -33
  41. package/src/components/ActionTable/index.ts +8 -13
  42. package/src/components/ActionTable/listActions.ts +340 -339
  43. package/src/components/ActionTable/listHelpers.ts +74 -0
  44. package/src/components/ActionTable/tableColumns.ts +56 -56
  45. package/src/components/DragAndDrop/HandleDraggable.vue +29 -29
  46. package/src/components/DragAndDrop/ListItemDraggable.vue +10 -10
  47. package/src/components/DragAndDrop/index.ts +0 -1
  48. package/src/components/DragAndDrop/listDragAndDrop.ts +1 -1
  49. package/src/components/Utility/CollapsableSidebar.vue +35 -35
  50. package/src/components/Utility/ContentDrawer.vue +20 -20
  51. package/src/components/Utility/Dialogs/ConfirmDialog.vue +55 -55
  52. package/src/components/Utility/Dialogs/FullScreenDialog.vue +18 -18
  53. package/src/components/Utility/Dialogs/FullscreenCarouselDialog.vue +105 -0
  54. package/src/components/Utility/Dialogs/InfoDialog.vue +10 -10
  55. package/src/components/Utility/Dialogs/InputDialog.vue +13 -13
  56. package/src/components/Utility/ImagePreview.vue +192 -0
  57. package/src/components/Utility/Popover/PopoverMenu.vue +64 -0
  58. package/src/components/Utility/Transitions/StaggeredListTransition.vue +15 -15
  59. package/src/components/Utility/index.ts +11 -9
  60. package/src/components/index.ts +1 -1
  61. package/src/helpers/FileUpload.ts +274 -273
  62. package/src/helpers/compatibility.ts +45 -45
  63. package/src/helpers/date.ts +2 -2
  64. package/src/helpers/download.ts +166 -158
  65. package/src/helpers/downloadPdf.ts +48 -48
  66. package/src/helpers/files.ts +42 -42
  67. package/src/helpers/index.ts +2 -0
  68. package/src/helpers/multiFileUpload.ts +56 -56
  69. package/src/helpers/singleFileUpload.ts +49 -49
  70. package/src/index.esm.js +3 -4
  71. package/src/svg/FilterIcon.svg +7 -0
  72. package/src/svg/ImageIcon.svg +30 -0
  73. package/src/svg/PdfIcon.svg +21 -0
  74. package/src/svg/PercentIcon.svg +13 -0
  75. package/src/svg/TrashIcon.svg +15 -0
  76. package/src/svg/XIcon.svg +18 -0
  77. package/src/svg/index.ts +8 -0
  78. package/src/vendor/tinymce-config.ts +1 -0
  79. package/src/vue-plugin.js +7 -4
  80. package/tsconfig.json +18 -14
  81. package/src/components/ActionTable/tableHelpers.ts +0 -83
  82. package/src/components/DragAndDrop/Icons/index.ts +0 -2
  83. /package/src/{components/DragAndDrop/Icons → svg}/DragHandleDotsIcon.svg +0 -0
  84. /package/src/{components/DragAndDrop/Icons → svg}/DragHandleIcon.svg +0 -0
@@ -1,59 +1,59 @@
1
1
  <template>
2
2
  <div
3
- class="max-w-full relative overflow-auto"
4
- :class="{'p-4 border rounded border-gray-medium text-center': !readonly}"
5
- @dragover.prevent
6
- @drop.prevent="onDrop"
3
+ class="max-w-full relative overflow-auto"
4
+ :class="{'p-4 border rounded border-gray-medium text-center': !readonly}"
5
+ @dragover.prevent
6
+ @drop.prevent="onDrop"
7
7
  >
8
8
  <FieldLabel
9
- :field="field"
10
- :show-name="showName"
11
- class="text-sm font-semibold"
9
+ :field="field"
10
+ :show-name="showName"
11
+ class="text-sm font-semibold"
12
12
  />
13
13
  <div
14
- v-if="!disable && !readonly"
15
- class="text-sm mt-2"
14
+ v-if="!disable && !readonly"
15
+ class="text-sm mt-2"
16
16
  >
17
17
  <a
18
- class="text-blue-base"
19
- @click="$refs.file.click()"
18
+ class="text-blue-base"
19
+ @click="$refs.file.click()"
20
20
  >Upload</a>
21
21
  <a
22
- v-if="uploadedFile"
23
- class="ml-3 text-red-dark"
24
- @click="onClear"
22
+ v-if="uploadedFile"
23
+ class="ml-3 text-red-dark"
24
+ @click="onClear"
25
25
  >Clear</a>
26
26
  <input
27
- ref="file"
28
- class="hidden"
29
- type="file"
30
- @change="onFileSelected"
27
+ ref="file"
28
+ class="hidden"
29
+ type="file"
30
+ @change="onFileSelected"
31
31
  />
32
32
  </div>
33
33
 
34
34
  <ImagePreview
35
- v-if="!readonly || uploadedFile"
36
- class="w-32 cursor-pointer mt-2"
37
- :class="{'border border-dashed border-blue-base': !uploadedFile, 'mx-auto': !readonly}"
38
- :image="uploadedFile"
39
- downloadable
40
- @click="!disable && $refs.file.click()"
35
+ v-if="!readonly || uploadedFile"
36
+ class="w-32 cursor-pointer mt-2"
37
+ :class="{'border border-dashed border-blue-base': !uploadedFile, 'mx-auto': !readonly}"
38
+ :image="uploadedFile"
39
+ downloadable
40
+ @click="!disable && $refs.file.click()"
41
41
  />
42
42
  <div
43
- v-else-if="readonly"
44
- class="py-1"
43
+ v-else-if="readonly"
44
+ class="py-1"
45
45
  >--
46
46
  </div>
47
47
  </div>
48
48
  </template>
49
49
 
50
50
  <script setup>
51
- import ImagePreview from "components/Common/ImagePreview";
52
- import FieldLabel from "danx/src/components/ActionTable/Form/Fields/FieldLabel";
53
- import { useSingleFileUpload } from "src/helpers/singleFileUpload";
54
- import { onMounted } from "vue";
51
+ import { ImagePreview } from '@ui/components';
52
+ import { useSingleFileUpload } from '@ui/helpers/singleFileUpload';
53
+ import { onMounted } from 'vue';
54
+ import FieldLabel from './FieldLabel';
55
55
 
56
- const emit = defineEmits(["update:model-value"]);
56
+ const emit = defineEmits(['update:model-value']);
57
57
  const props = defineProps({
58
58
  modelValue: {
59
59
  type: [Object, String],
@@ -68,7 +68,7 @@ const props = defineProps({
68
68
  readonly: Boolean
69
69
  });
70
70
  const { onComplete, onDrop, onFileSelected, uploadedFile, onClear } = useSingleFileUpload();
71
- onComplete(() => emit("update:model-value", uploadedFile.value));
71
+ onComplete(() => emit('update:model-value', uploadedFile.value));
72
72
 
73
73
  onMounted(() => {
74
74
  if (props.modelValue) {
@@ -1,50 +1,50 @@
1
1
  <template>
2
2
  <div>
3
- <QInput
4
- v-if="!readonly"
5
- :data-dusk="'text-field-' + field?.id"
6
- :data-testid="'text-field-' + field?.id"
7
- :placeholder="field?.placeholder"
8
- outlined
9
- dense
10
- :disable="disabled"
11
- :label-slot="!noLabel"
12
- :input-class="inputClass"
13
- :class="parentClass"
14
- stack-label
15
- :type="type"
16
- :model-value="modelValue"
17
- :debounce="debounce"
18
- @keydown.enter="$emit('submit')"
19
- @update:model-value="$emit('update:model-value', $event)"
3
+ <q-input
4
+ v-if="!readonly"
5
+ :data-dusk="'text-field-' + field?.id"
6
+ :data-testid="'text-field-' + field?.id"
7
+ :placeholder="field?.placeholder"
8
+ outlined
9
+ dense
10
+ :disable="disabled"
11
+ :label-slot="!noLabel"
12
+ :input-class="inputClass"
13
+ :class="parentClass"
14
+ stack-label
15
+ :type="type"
16
+ :model-value="modelValue"
17
+ :debounce="debounce"
18
+ @keydown.enter="$emit('submit')"
19
+ @update:model-value="$emit('update:model-value', $event)"
20
20
  >
21
21
  <template #label>
22
22
  <FieldLabel
23
- :field="field"
24
- :label="label"
25
- :show-name="showName"
26
- :class="labelClass"
23
+ :field="field"
24
+ :label="label"
25
+ :show-name="showName"
26
+ :class="labelClass"
27
27
  />
28
28
  </template>
29
- </QInput>
30
- <div v-if="readonly">
31
- <LabelValueBlock
32
- :label="label || field.label"
33
- :value="modelValue"
34
- />
35
- </div>
29
+ </q-input>
30
+ <div v-if="readonly">
31
+ <LabelValueBlock
32
+ :label="label || field.label"
33
+ :value="modelValue"
34
+ />
35
+ </div>
36
36
  </div>
37
37
  </template>
38
38
 
39
39
  <script setup>
40
- import LabelValueBlock from "components/Common/LabelValueBlock";
41
- import FieldLabel from "danx/src/components/ActionTable/Form/Fields/FieldLabel";
40
+ import FieldLabel from './FieldLabel';
41
+ import LabelValueBlock from './LabelValueBlock';
42
42
 
43
- defineEmits(["update:model-value", "submit"]);
43
+ defineEmits(['update:model-value', 'submit']);
44
44
  defineProps({
45
45
  modelValue: {
46
46
  type: [String, Number],
47
- default: ""
47
+ default: ''
48
48
  },
49
49
  field: {
50
50
  type: Object,
@@ -52,7 +52,7 @@ defineProps({
52
52
  },
53
53
  type: {
54
54
  type: String,
55
- default: "text"
55
+ default: 'text'
56
56
  },
57
57
  label: {
58
58
  type: String,
@@ -60,15 +60,15 @@ defineProps({
60
60
  },
61
61
  labelClass: {
62
62
  type: String,
63
- default: "text-sm text-gray-shadow"
63
+ default: 'text-sm text-gray-shadow'
64
64
  },
65
65
  parentClass: {
66
66
  type: String,
67
- default: ""
67
+ default: ''
68
68
  },
69
69
  inputClass: {
70
70
  type: String,
71
- default: ""
71
+ default: ''
72
72
  },
73
73
  noLabel: Boolean,
74
74
  showName: Boolean,
@@ -1,34 +1,34 @@
1
1
  <template>
2
2
  <div>
3
3
  <FieldLabel
4
- v-if="!noLabel"
5
- :field="field"
6
- :show-name="showName"
7
- class="text-sm font-semibold text-gray-shadow block mb-2"
4
+ v-if="!noLabel"
5
+ :field="field"
6
+ :show-name="showName"
7
+ class="text-sm font-semibold text-gray-shadow block mb-2"
8
8
  />
9
9
  <template v-if="readonly">
10
10
  <div
11
- class="border border-gray-300 rounded-md p-2 bg-gray-100"
12
- v-html="modelValue"
11
+ class="border border-gray-300 rounded-md p-2 bg-gray-100"
12
+ v-html="modelValue"
13
13
  />
14
14
  </template>
15
15
  <TinyMceEditor
16
- v-else
17
- class="mt-2"
18
- :api-key="apiKey"
19
- :disabled="disable"
20
- :model-value="modelValue"
21
- @update:model-value="$emit('update:model-value', $event)"
16
+ v-else
17
+ class="mt-2"
18
+ :api-key="apiKey"
19
+ :disabled="disable"
20
+ :model-value="modelValue"
21
+ @update:model-value="$emit('update:model-value', $event)"
22
22
  />
23
23
  </div>
24
24
  </template>
25
25
 
26
26
  <script setup>
27
- import { default as TinyMceEditor } from "@tinymce/tinymce-vue";
28
- import { apiKey } from "components/Cms/SlideshowEditor/ContentEditor/tinymce-config";
29
- import FieldLabel from "danx/src/components/ActionTable/Form/Fields/FieldLabel";
27
+ import { apiKey } from '@ui/vendor/tinymce-config';
28
+ import { default as TinyMceEditor } from '@tinymce/tinymce-vue';
29
+ import FieldLabel from './FieldLabel';
30
30
 
31
- defineEmits(["update:model-value"]);
31
+ defineEmits(['update:model-value']);
32
32
  defineProps({
33
33
  modelValue: {
34
34
  type: [String, Number],
@@ -1,23 +1,23 @@
1
- export { default as BooleanField } from "./BooleanField";
2
- export { default as ConfirmPasswordField } from "./ConfirmPasswordField";
3
- export { default as DateField } from "./DateField";
4
- export { default as DateRangeField } from "./DateRangeField";
5
- export { default as DateTimeField } from "./DateTimeField";
6
- export { default as DateTimePicker } from "./DateTimePicker";
7
- export { default as EditableDiv } from "./EditableDiv";
8
- export { default as FieldLabel } from "./FieldLabel";
9
- export { default as FileUploadButton } from "./FileUploadButton";
10
- export { default as InlineDateTimeField } from "./InlineDateTimeField";
11
- export { default as IntegerField } from "./IntegerField";
12
- export { default as LabeledInput } from "./LabeledInput";
13
- export { default as MultiFileField } from "./MultiFileField";
14
- export { default as MultiKeywordField } from "./MultiKeywordField";
15
- export { default as NewPasswordField } from "./NewPasswordField";
16
- export { default as NumberField } from "./NumberField";
17
- export { default as NumberRangeField } from "./NumberRangeField";
18
- export { default as SelectDrawer } from "./SelectDrawer";
19
- export { default as SelectField } from "./SelectField";
20
- export { default as SelectWithChildrenField } from "./SelectWithChildrenField";
21
- export { default as SingleFileField } from "./SingleFileField";
22
- export { default as TextField } from "./TextField";
23
- export { default as WysiwygField } from "./WysiwygField";
1
+ export { default as BooleanField } from "./BooleanField.vue";
2
+ export { default as ConfirmPasswordField } from "./ConfirmPasswordField.vue";
3
+ export { default as DateField } from "./DateField.vue";
4
+ export { default as DateRangeField } from "./DateRangeField.vue";
5
+ export { default as DateTimeField } from "./DateTimeField.vue";
6
+ export { default as DateTimePicker } from "./DateTimePicker.vue";
7
+ export { default as EditableDiv } from "./EditableDiv.vue";
8
+ export { default as FieldLabel } from "./FieldLabel.vue";
9
+ export { default as FileUploadButton } from "./FileUploadButton.vue";
10
+ export { default as InlineDateTimeField } from "./InlineDateTimeField.vue";
11
+ export { default as IntegerField } from "./IntegerField.vue";
12
+ export { default as LabeledInput } from "./LabeledInput.vue";
13
+ export { default as MultiFileField } from "./MultiFileField.vue";
14
+ export { default as MultiKeywordField } from "./MultiKeywordField.vue";
15
+ export { default as NewPasswordField } from "./NewPasswordField.vue";
16
+ export { default as NumberField } from "./NumberField.vue";
17
+ export { default as NumberRangeField } from "./NumberRangeField.vue";
18
+ export { default as SelectDrawer } from "./SelectDrawer.vue";
19
+ export { default as SelectField } from "./SelectField.vue";
20
+ export { default as SelectWithChildrenField } from "./SelectWithChildrenField.vue";
21
+ export { default as SingleFileField } from "./SingleFileField.vue";
22
+ export { default as TextField } from "./TextField.vue";
23
+ export { default as WysiwygField } from "./WysiwygField.vue";
@@ -1,37 +1,39 @@
1
1
  <template>
2
2
  <div class="rendered-form">
3
3
  <div
4
- v-for="(field, index) in mappedFields"
5
- :key="field.id"
6
- :class="{ 'mt-4': index > 0 }"
4
+ v-for="(field, index) in mappedFields"
5
+ :key="field.id"
6
+ :class="{ 'mt-4': index > 0 }"
7
7
  >
8
8
  <Component
9
- :is="field.component"
10
- v-model="fieldValues[field.name]"
11
- :field="field"
12
- :label="field.label || undefined"
13
- :no-label="noLabel"
14
- :show-name="showName"
15
- :disable="disable"
16
- :readonly="readonly"
17
- @update:model-value="onInput(field.name, $event)"
9
+ :is="field.component"
10
+ v-model="fieldValues[field.name]"
11
+ :field="field"
12
+ :label="field.label || undefined"
13
+ :no-label="noLabel"
14
+ :show-name="showName"
15
+ :disable="disable"
16
+ :readonly="readonly"
17
+ @update:model-value="onInput(field.name, $event)"
18
18
  />
19
19
  </div>
20
20
  </div>
21
21
  </template>
22
22
  <script setup>
23
- import BooleanField from "danx/src/components/ActionTable/Form/Fields/BooleanField";
24
- import DateField from "danx/src/components/ActionTable/Form/Fields/DateField";
25
- import DateRangeField from "danx/src/components/ActionTable/Form/Fields/DateRangeField";
26
- import IntegerField from "danx/src/components/ActionTable/Form/Fields/IntegerField";
27
- import MultiFileField from "danx/src/components/ActionTable/Form/Fields/MultiFileField";
28
- import NumberField from "danx/src/components/ActionTable/Form/Fields/NumberField";
29
- import SingleFileField from "danx/src/components/ActionTable/Form/Fields/SingleFileField";
30
- import TextField from "danx/src/components/ActionTable/Form/Fields/TextField";
31
- import WysiwygField from "danx/src/components/ActionTable/Form/Fields/WysiwygField";
32
- import { reactive } from "vue";
23
+ import { reactive } from 'vue';
24
+ import {
25
+ BooleanField,
26
+ DateField,
27
+ DateRangeField,
28
+ IntegerField,
29
+ MultiFileField,
30
+ NumberField,
31
+ SingleFileField,
32
+ TextField,
33
+ WysiwygField
34
+ } from './Fields';
33
35
 
34
- const emit = defineEmits(["update:values"]);
36
+ const emit = defineEmits(['update:values']);
35
37
  const props = defineProps({
36
38
  values: {
37
39
  type: Object,
@@ -63,12 +65,12 @@ const mappedFields = props.fields.map((field) => ({
63
65
  placeholder: `Enter ${field.label}`,
64
66
  ...field,
65
67
  component: FORM_FIELD_MAP[field.type],
66
- default: field.type === "BOOLEAN" ? false : ""
68
+ default: field.type === 'BOOLEAN' ? false : ''
67
69
  }));
68
70
 
69
71
  const fieldValues = reactive(props.values || {});
70
72
 
71
73
  function onInput(key, value) {
72
- emit("update:values", { ...fieldValues, [key]: value });
74
+ emit('update:values', { ...fieldValues, [key]: value });
73
75
  }
74
76
  </script>
@@ -0,0 +1,2 @@
1
+ export * from "./Fields";
2
+ export { default as RenderedForm } from "./RenderedForm.vue";
@@ -1,60 +1,60 @@
1
1
  <template>
2
- <QTr
3
- class="sticky-column-1 transition-all sticky-row"
4
- :class="{'!bg-neutral-plus-7': !selectedCount, '!bg-blue-base text-white selected': selectedCount, 'opacity-50': loading}"
2
+ <q-tr
3
+ class="sticky-column-1 transition-all sticky-row"
4
+ :class="{'!bg-neutral-plus-7': !selectedCount, '!bg-blue-base text-white selected': selectedCount, 'opacity-50': loading}"
5
5
  >
6
- <QTd
7
- :colspan="stickyColspan"
8
- class="font-bold transition-all"
9
- :class="{'!bg-neutral-plus-7 !pl-5': !selectedCount, '!bg-blue-base text-white !pl-4': selectedCount}"
6
+ <q-td
7
+ :colspan="stickyColspan"
8
+ class="font-bold transition-all"
9
+ :class="{'!bg-neutral-plus-7 !pl-5': !selectedCount, '!bg-blue-base text-white !pl-4': selectedCount}"
10
10
  >
11
11
  <div class="flex flex-nowrap items-center">
12
12
  <div
13
- v-if="selectedCount"
14
- class="flex items-center"
13
+ v-if="selectedCount"
14
+ class="flex items-center"
15
15
  >
16
16
  <ClearIcon
17
- class="w-6 mr-3"
18
- @click="$emit('clear')"
17
+ class="w-6 mr-3"
18
+ @click="$emit('clear')"
19
19
  />
20
20
  {{ fNumber(selectedCount) }} {{ selectedLabel }}
21
21
  </div>
22
22
  <div v-else-if="itemCount">
23
23
  {{ fNumber(itemCount) }} {{ label }}
24
24
  </div>
25
- <QSpinner
26
- v-if="loading"
27
- class="ml-3"
28
- size="18"
25
+ <q-spinner
26
+ v-if="loading"
27
+ class="ml-3"
28
+ size="18"
29
29
  />
30
30
  </div>
31
- </QTd>
32
- <QTd
33
- v-for="column in summaryColumns"
34
- :key="column.name"
35
- :align="column.align || 'left'"
36
- >
37
- <template v-if="summary">
38
- {{ formatValue(column) }}
39
- </template>
40
- </QTd>
41
- </QTr>
31
+ </q-td>
32
+ <q-td
33
+ v-for="column in summaryColumns"
34
+ :key="column.name"
35
+ :align="column.align || 'left'"
36
+ >
37
+ <template v-if="summary">
38
+ {{ formatValue(column) }}
39
+ </template>
40
+ </q-td>
41
+ </q-tr>
42
42
  </template>
43
43
  <script setup>
44
- import { XCircleIcon as ClearIcon } from "@heroicons/vue/solid";
45
- import { fNumber } from "danx/src/helpers/formats";
46
- import { computed } from "vue";
44
+ import { fNumber } from '@ui/helpers/formats';
45
+ import { XCircleIcon as ClearIcon } from '@heroicons/vue/solid';
46
+ import { computed } from 'vue';
47
47
 
48
- defineEmits(["clear"]);
48
+ defineEmits(['clear']);
49
49
  const props = defineProps({
50
50
  loading: Boolean,
51
51
  label: {
52
52
  type: String,
53
- default: "Rows"
53
+ default: 'Rows'
54
54
  },
55
55
  selectedLabel: {
56
56
  type: String,
57
- default: "Selected"
57
+ default: 'Selected'
58
58
  },
59
59
  selectedCount: {
60
60
  type: Number,
@@ -85,7 +85,7 @@ const summaryColumns = computed(() => {
85
85
 
86
86
  function formatValue(column) {
87
87
  const value = props.summary[column.name];
88
- if (value === undefined) return "";
88
+ if (value === undefined) return '';
89
89
 
90
90
  if (column.format) {
91
91
  return column.format(value);
@@ -1,15 +1,10 @@
1
- export * from "./Form/Fields";
2
- export * from "danx/src/components/ActionTable/tableHelpers";
1
+ export * from "./Filters";
2
+ export * from "./Form";
3
3
  export * from "./listActions";
4
+ export * from "./listHelpers";
4
5
  export * from "./tableColumns";
5
- export { default as ActionTable } from "./ActionTable";
6
- export { default as BatchActionMenu } from "./BatchActionMenu";
7
- export {
8
- default as CollapsableFiltersSidebar
9
- } from "danx/src/components/ActionTable/Filters/CollapsableFiltersSidebar";
10
- export { default as EmptyTableState } from "./EmptyTableState";
11
- export { default as FilterGroupList } from "./Filters/FilterGroupList";
12
- export { default as FilterListToggle } from "./Filters/FilterListToggle";
13
- export { default as RenderComponentColumn } from "./RenderComponentColumn";
14
- export { default as RenderedForm } from "./Form/RenderedForm";
15
- export { default as TableSummaryRow } from "./TableSummaryRow";
6
+ export { default as ActionTable } from "./ActionTable.vue";
7
+ export { default as BatchActionMenu } from "./BatchActionMenu.vue";
8
+ export { default as EmptyTableState } from "./EmptyTableState.vue";
9
+ export { default as RenderComponentColumn } from "./RenderComponentColumn.vue";
10
+ export { default as TableSummaryRow } from "./TableSummaryRow.vue";