@bildvitta/quasar-ui-asteroid 3.17.0-beta.21 → 3.17.0-beta.22
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.
- package/package.json +1 -1
- package/src/asteroid.js +4 -4
- package/src/components/actions/QasActions.vue +81 -81
- package/src/components/actions/QasActions.yml +34 -34
- package/src/components/actions-menu/QasActionsMenu.vue +251 -251
- package/src/components/actions-menu/QasActionsMenu.yml +89 -89
- package/src/components/actions-menu/composables/use-delete.js +30 -30
- package/src/components/actions-menu/composables/use-double-split-actions.js +42 -42
- package/src/components/actions-menu/composables/use-options-actions.js +27 -27
- package/src/components/actions-menu/composables/use-single-action.js +17 -17
- package/src/components/actions-menu/composables/use-single-split-actions.js +35 -35
- package/src/components/actions-menu/composables/use-tooltips.js +43 -43
- package/src/components/actions-menu/utils/get-label.js +3 -3
- package/src/components/actions-menu/utils/set-click-handler.js +6 -6
- package/src/components/alert/QasAlert.test.js +43 -43
- package/src/components/alert/QasAlert.vue +110 -110
- package/src/components/alert/QasAlert.yml +39 -39
- package/src/components/app-bar/QasAppBar.vue +119 -119
- package/src/components/app-bar/QasAppBar.yml +44 -44
- package/src/components/app-menu/QasAppMenu.vue +392 -392
- package/src/components/app-menu/QasAppMenu.yml +73 -73
- package/src/components/app-menu/composables/use-app-menu-dropdown.js +71 -71
- package/src/components/app-menu/composables/use-app-user.js +49 -49
- package/src/components/app-menu/composables/use-development-badge.js +23 -23
- package/src/components/app-menu/private/PvAppMenuDropdown.vue +71 -71
- package/src/components/app-menu/private/PvAppMenuHelpChat.vue +222 -222
- package/src/components/app-user/QasAppUser.vue +281 -281
- package/src/components/app-user/QasAppUser.yml +56 -56
- package/src/components/avatar/QasAvatar.vue +95 -95
- package/src/components/avatar/QasAvatar.yml +38 -38
- package/src/components/avatar/enums/AvatarColors.js +10 -10
- package/src/components/badge/QasBadge.vue +87 -87
- package/src/components/badge/QasBadge.yml +55 -55
- package/src/components/board-generator/QasBoardGenerator.vue +712 -712
- package/src/components/board-generator/QasBoardGenerator.yml +167 -167
- package/src/components/box/QasBox.vue +51 -51
- package/src/components/box/QasBox.yml +29 -29
- package/src/components/breakline/QasBreakline.vue +38 -38
- package/src/components/breakline/QasBreakline.yml +25 -25
- package/src/components/btn/QasBtn.vue +148 -148
- package/src/components/btn/QasBtn.yml +48 -48
- package/src/components/btn-dropdown/QasBtnDropdown.vue +146 -146
- package/src/components/btn-dropdown/QasBtnDropdown.yml +59 -59
- package/src/components/card/QasCard.vue +132 -132
- package/src/components/card/QasCard.yml +44 -44
- package/src/components/card-image/QasCardImage.vue +95 -95
- package/src/components/card-image/QasCardImage.yml +48 -48
- package/src/components/chart-view/QasChartView.vue +441 -441
- package/src/components/chart-view/QasChartView.yml +109 -109
- package/src/components/chart-view/config/charts/bar.js +45 -45
- package/src/components/chart-view/config/charts/doughnut.js +43 -43
- package/src/components/chart-view/config/charts/index.js +9 -9
- package/src/components/chart-view/config/charts/line.js +57 -57
- package/src/components/chart-view/config/defaults/colors.js +19 -19
- package/src/components/chart-view/config/defaults/font.js +5 -5
- package/src/components/chart-view/config/defaults/index.js +2 -2
- package/src/components/chart-view/config/index.js +3 -3
- package/src/components/chart-view/config/plugins/index.js +3 -3
- package/src/components/chart-view/config/plugins/legend.js +9 -9
- package/src/components/chart-view/config/plugins/tooltip.js +15 -15
- package/src/components/chart-view/config/plugins/zoom.js +31 -31
- package/src/components/checkbox/QasCheckbox.vue +150 -150
- package/src/components/checkbox/QasCheckbox.yml +36 -36
- package/src/components/copy/QasCopy.vue +46 -46
- package/src/components/copy/QasCopy.yml +23 -23
- package/src/components/date/QasDate.vue +600 -600
- package/src/components/date/QasDate.yml +69 -69
- package/src/components/date/enums/DateMaskOptions.js +6 -6
- package/src/components/date-time-input/QasDateTimeInput.vue +269 -269
- package/src/components/date-time-input/QasDateTimeInput.yml +64 -64
- package/src/components/debugger/QasDebugger.vue +31 -31
- package/src/components/debugger/QasDebugger.yml +10 -10
- package/src/components/delete/QasDelete.vue +100 -100
- package/src/components/delete/QasDelete.yml +60 -60
- package/src/components/dialog/QasDialog.vue +217 -217
- package/src/components/dialog/QasDialog.yml +117 -117
- package/src/components/dialog/composables/use-cancel.js +40 -40
- package/src/components/dialog/composables/use-dynamic-components.js +86 -86
- package/src/components/dialog/composables/use-ok.js +45 -45
- package/src/components/dialog-router/QasDialogRouter.vue +86 -86
- package/src/components/dialog-router/QasDialogRouter.yml +23 -23
- package/src/components/drawer/QasDrawer.vue +118 -118
- package/src/components/drawer/QasDrawer.yml +58 -58
- package/src/components/empty-result-text/QasEmptyResultText.vue +18 -18
- package/src/components/empty-result-text/QasEmptyResultText.yml +14 -14
- package/src/components/expansion-item/QasExpansionItem.vue +291 -291
- package/src/components/expansion-item/QasExpansionItem.yml +76 -76
- package/src/components/field/QasField.vue +220 -220
- package/src/components/field/QasField.yml +36 -36
- package/src/components/filters/QasFilters.vue +472 -472
- package/src/components/filters/QasFilters.yml +171 -171
- package/src/components/filters/private/PvFiltersButton.vue +101 -101
- package/src/components/form-generator/QasFormGenerator.vue +274 -274
- package/src/components/form-generator/QasFormGenerator.yml +109 -109
- package/src/components/form-view/QasFormView.vue +484 -484
- package/src/components/form-view/QasFormView.yml +253 -253
- package/src/components/gallery/QasGallery.vue +243 -243
- package/src/components/gallery/QasGallery.yml +188 -188
- package/src/components/gallery/composables/use-delete.js +54 -54
- package/src/components/gallery/private/PvGalleryCarouselDialog.vue +92 -92
- package/src/components/gallery/private/PvGalleryDeleteDialog.vue +54 -54
- package/src/components/gallery-card/QasGalleryCard.vue +153 -153
- package/src/components/gallery-card/QasGalleryCard.yml +61 -61
- package/src/components/grabbable/QasGrabbable.vue +185 -185
- package/src/components/grabbable/QasGrabbable.yml +26 -26
- package/src/components/grid-generator/QasGridGenerator.vue +210 -210
- package/src/components/grid-generator/QasGridGenerator.yml +127 -127
- package/src/components/grid-item/QasGridItem.vue +89 -89
- package/src/components/grid-item/QasGridItem.yml +22 -22
- package/src/components/header/QasHeader.vue +152 -152
- package/src/components/header/QasHeader.yml +50 -50
- package/src/components/infinite-scroll/QasInfiniteScroll.vue +168 -168
- package/src/components/infinite-scroll/QasInfiniteScroll.yml +78 -78
- package/src/components/info/QasInfo.vue +155 -155
- package/src/components/info/QasInfo.yml +34 -34
- package/src/components/input/QasInput.vue +252 -252
- package/src/components/input/QasInput.yml +65 -65
- package/src/components/label/QasLabel.vue +61 -61
- package/src/components/label/QasLabel.yml +44 -44
- package/src/components/layout/QasLayout.vue +101 -101
- package/src/components/layout/QasLayout.yml +46 -46
- package/src/components/layout/private/PvLayoutNotificationCard.vue +86 -86
- package/src/components/layout/private/PvLayoutNotificationsDrawer.vue +140 -140
- package/src/components/list-items/QasListItems.vue +125 -125
- package/src/components/list-items/QasListItems.yml +71 -71
- package/src/components/list-view/QasListView.vue +302 -302
- package/src/components/list-view/QasListView.yml +169 -169
- package/src/components/map/QasMap.vue +75 -75
- package/src/components/map/QasMap.yml +33 -33
- package/src/components/nested-fields/QasNestedFields.vue +584 -584
- package/src/components/nested-fields/QasNestedFields.yml +296 -296
- package/src/components/numeric-input/QasNumericInput.vue +206 -206
- package/src/components/numeric-input/QasNumericInput.yml +85 -85
- package/src/components/option-group/QasOptionGroup.vue +54 -54
- package/src/components/option-group/QasOptionGroup.yml +30 -30
- package/src/components/page-header/QasPageHeader.vue +143 -143
- package/src/components/page-header/QasPageHeader.yml +42 -42
- package/src/components/pagination/QasPagination.vue +71 -71
- package/src/components/pagination/QasPagination.yml +4 -4
- package/src/components/password-input/QasPasswordInput.vue +110 -110
- package/src/components/password-input/QasPasswordInput.yml +111 -111
- package/src/components/password-strength-checker/QasPasswordStrengthChecker.vue +71 -71
- package/src/components/password-strength-checker/QasPasswordStrengthChecker.yml +103 -103
- package/src/components/profile/QasProfile.vue +98 -98
- package/src/components/profile/QasProfile.yml +60 -60
- package/src/components/radio/QasRadio.vue +62 -62
- package/src/components/radio/QasRadio.yml +11 -11
- package/src/components/resizer/QasResizer.vue +90 -90
- package/src/components/resizer/QasResizer.yml +24 -24
- package/src/components/search-box/QasSearchBox.vue +294 -294
- package/src/components/search-box/QasSearchBox.yml +154 -154
- package/src/components/search-input/QasSearchInput.vue +106 -106
- package/src/components/search-input/QasSearchInput.yml +48 -48
- package/src/components/select/QasSelect.vue +514 -514
- package/src/components/select/QasSelect.yml +157 -157
- package/src/components/select-list/QasSelectList.vue +238 -238
- package/src/components/select-list/QasSelectList.yml +108 -108
- package/src/components/select-list/private/PvSelectListCheckbox.vue +31 -31
- package/src/components/select-list-dialog/QasSelectListDialog.vue +395 -395
- package/src/components/select-list-dialog/QasSelectListDialog.yml +108 -108
- package/src/components/signature-pad/QasSignaturePad.vue +122 -122
- package/src/components/signature-pad/QasSignaturePad.yml +53 -53
- package/src/components/signature-uploader/QasSignatureUploader.vue +164 -164
- package/src/components/signature-uploader/QasSignatureUploader.yml +37 -37
- package/src/components/single-view/QasSingleView.vue +175 -175
- package/src/components/single-view/QasSingleView.yml +131 -131
- package/src/components/sortable/QasSortable.vue +151 -151
- package/src/components/sortable/QasSortable.yml +65 -65
- package/src/components/status/QasStatus.test.js +11 -11
- package/src/components/status/QasStatus.vue +29 -29
- package/src/components/status/QasStatus.yml +10 -10
- package/src/components/stepper/QasStepper.vue +199 -152
- package/src/components/stepper/QasStepper.yml +35 -35
- package/src/components/stepper-form-view/QasStepperFormView.vue +86 -84
- package/src/components/stepper-form-view/QasStepperFormView.yml +58 -58
- package/src/components/table-generator/QasTableGenerator.vue +416 -416
- package/src/components/table-generator/QasTableGenerator.yml +94 -94
- package/src/components/tabs-generator/QasTabsGenerator.vue +196 -196
- package/src/components/tabs-generator/QasTabsGenerator.yml +53 -53
- package/src/components/text-truncate/QasTextTruncate.vue +274 -274
- package/src/components/text-truncate/QasTextTruncate.yml +60 -60
- package/src/components/timeline/QasTimeline.vue +140 -140
- package/src/components/timeline/QasTimeline.yml +36 -36
- package/src/components/toggle/QasToggle.vue +14 -14
- package/src/components/toggle/QasToggle.yml +5 -5
- package/src/components/toggle-visibility/QasToggleVisibility.vue +79 -79
- package/src/components/toggle-visibility/QasToggleVisibility.yml +30 -30
- package/src/components/transfer/QasTransfer.vue +239 -239
- package/src/components/transfer/QasTransfer.yml +60 -60
- package/src/components/tree-generator/QasTreeForm.vue +62 -62
- package/src/components/tree-generator/QasTreeGenerator.vue +488 -488
- package/src/components/tree-generator/QasTreeGenerator.yml +81 -81
- package/src/components/uploader/QasUploader.vue +691 -645
- package/src/components/uploader/QasUploader.yml +206 -192
- package/src/components/uploader/private/PvUploaderGalleryCard.vue +357 -357
- package/src/components/welcome/QasWelcome.vue +125 -125
- package/src/components/welcome/QasWelcome.yml +23 -23
- package/src/components/welcome/private/PvWelcomeShortcutCard.vue +58 -58
- package/src/components/whatsapp-link/QasWhatsappLink.vue +34 -34
- package/src/components/whatsapp-link/QasWhatsappLink.yml +18 -18
- package/src/composables/index.js +8 -8
- package/src/composables/private/index.js +3 -3
- package/src/composables/private/use-generator.js +174 -174
- package/src/composables/private/use-toggle-visibility.js +48 -48
- package/src/composables/private/use-view.js +186 -186
- package/src/composables/use-context.js +15 -15
- package/src/composables/use-form.js +32 -32
- package/src/composables/use-history.js +46 -46
- package/src/composables/use-notifications.js +128 -128
- package/src/composables/use-query-cache.js +60 -60
- package/src/composables/use-screen.js +42 -42
- package/src/css/base/font-face.scss +28 -28
- package/src/css/base/index.scss +1 -1
- package/src/css/components/base.scss +12 -12
- package/src/css/components/button.scss +116 -116
- package/src/css/components/checkbox.scss +14 -14
- package/src/css/components/editor.scss +7 -7
- package/src/css/components/field.scss +88 -88
- package/src/css/components/index.scss +10 -10
- package/src/css/components/item.scss +52 -52
- package/src/css/components/radio.scss +18 -18
- package/src/css/components/scrollbar.scss +20 -20
- package/src/css/components/tabs.scss +3 -3
- package/src/css/components/toggle.scss +13 -13
- package/src/css/mixins/index.scss +3 -3
- package/src/css/mixins/set-brand.scss +15 -15
- package/src/css/mixins/set-button.scss +26 -26
- package/src/css/mixins/set-typography.scss +8 -8
- package/src/css/plugins/index.scss +2 -2
- package/src/css/plugins/loading.scss +5 -5
- package/src/css/plugins/notify.scss +100 -100
- package/src/css/utils/background.scss +34 -34
- package/src/css/utils/border-radius.scss +29 -29
- package/src/css/utils/border.scss +42 -42
- package/src/css/utils/container.scss +36 -36
- package/src/css/utils/fonts.scss +5 -5
- package/src/css/utils/index.scss +10 -10
- package/src/css/utils/line-height.scss +19 -19
- package/src/css/utils/opacity.scss +5 -5
- package/src/css/utils/scroll.scss +21 -21
- package/src/css/utils/text.scss +15 -15
- package/src/css/utils/unset.scss +8 -8
- package/src/css/variables/button.scss +4 -4
- package/src/css/variables/index.scss +6 -6
- package/src/css/variables/scrollbar.scss +11 -11
- package/src/css/variables/separator.scss +2 -2
- package/src/css/variables/shadow.scss +3 -3
- package/src/css/variables/spacing.scss +98 -98
- package/src/css/variables/typography.scss +149 -149
- package/src/directives/Test.js +13 -13
- package/src/enums/Align.js +7 -7
- package/src/enums/Spacing.js +98 -98
- package/src/enums/Status.js +33 -33
- package/src/helpers/add-counter-suffix.js +3 -3
- package/src/helpers/base-64-to-blob.js +21 -21
- package/src/helpers/camelize-fields-name.js +15 -15
- package/src/helpers/construct-object.js +29 -29
- package/src/helpers/copy-to-clipboard.js +15 -15
- package/src/helpers/destroy-nested-children-by-key.js +33 -33
- package/src/helpers/download-file.js +21 -21
- package/src/helpers/filter-list-by-handle.js +31 -31
- package/src/helpers/filter-object-to-array.js +29 -29
- package/src/helpers/filter-object.js +34 -34
- package/src/helpers/filters.js +163 -163
- package/src/helpers/find-children-by-key.js +14 -14
- package/src/helpers/get-greatest-common-divisor.js +16 -16
- package/src/helpers/get-normalized-options.js +20 -20
- package/src/helpers/get-placeholder.js +19 -19
- package/src/helpers/get-required-label.js +3 -3
- package/src/helpers/get-slot-children-text.js +15 -15
- package/src/helpers/handle-process.js +13 -13
- package/src/helpers/images.js +28 -28
- package/src/helpers/index.js +25 -25
- package/src/helpers/is-empty.js +3 -3
- package/src/helpers/is-local-development.js +3 -3
- package/src/helpers/private/gutter-validator.js +15 -15
- package/src/helpers/private/has-parent-by-class-name.js +15 -15
- package/src/helpers/promise-handler.js +40 -40
- package/src/helpers/rules.js +7 -7
- package/src/helpers/set-scroll-on-grab.js +128 -128
- package/src/index.cjs.js +1 -1
- package/src/index.esm.js +4 -4
- package/src/index.scss +38 -38
- package/src/index.umd.js +2 -2
- package/src/mixins/context.js +8 -8
- package/src/mixins/delete.js +48 -48
- package/src/mixins/dialog-router.js +17 -17
- package/src/mixins/form.js +11 -11
- package/src/mixins/generator.js +94 -94
- package/src/mixins/index.js +17 -17
- package/src/mixins/password.js +86 -86
- package/src/mixins/search-filter.js +354 -354
- package/src/mixins/view.js +156 -156
- package/src/pages/ErrorComponent.vue +74 -74
- package/src/pages/Forbidden.vue +29 -29
- package/src/pages/NotFound.vue +29 -29
- package/src/pages/ServerError.vue +29 -29
- package/src/pages/Unauthorized.vue +29 -29
- package/src/plugins/delete/Delete.js +107 -107
- package/src/plugins/delete/Delete.yml +75 -75
- package/src/plugins/dialog/Dialog.js +14 -14
- package/src/plugins/dialog/Dialog.yml +10 -10
- package/src/plugins/index.js +13 -13
- package/src/plugins/notify-error/NotifyError.js +13 -13
- package/src/plugins/notify-error/NotifyError.yml +11 -11
- package/src/plugins/notify-success/NotifySuccess.js +13 -13
- package/src/plugins/notify-success/NotifySuccess.yml +11 -11
- package/src/plugins/screen/Screen.js +35 -35
- package/src/plugins/screen/Screen.yml +16 -16
- package/src/shared/date-config.js +26 -26
- package/src/shared/fuse-config.js +4 -4
- package/src/shared/notify-config.js +7 -7
- package/src/vue-plugin/third-party-component-handler.js +29 -29
- package/src/vue-plugin.js +282 -282
|
@@ -1,171 +1,171 @@
|
|
|
1
|
-
type: component
|
|
2
|
-
|
|
3
|
-
meta:
|
|
4
|
-
desc: Componente para criação de filtros dinâmicos.
|
|
5
|
-
|
|
6
|
-
props:
|
|
7
|
-
current-filters:
|
|
8
|
-
model: true
|
|
9
|
-
desc: Utilizado para recuperar os filtros realizados internamente.
|
|
10
|
-
default: {}
|
|
11
|
-
type: Object
|
|
12
|
-
examples: [v-model:currentFilters="currentFilters"]
|
|
13
|
-
|
|
14
|
-
entity:
|
|
15
|
-
desc: Entidade da store, por exemplo se tiver que trabalhar com modulo de usuários, teremos o model "users" na store, que vai ser nossa "entity".
|
|
16
|
-
required: true
|
|
17
|
-
type: String
|
|
18
|
-
|
|
19
|
-
fields-props:
|
|
20
|
-
desc: Propriedade para repassar propriedades para cada campo individualmente.
|
|
21
|
-
default: {}
|
|
22
|
-
type: Object
|
|
23
|
-
examples: ["{ name: { dense: true, onClick: () => alert('Estou sendo clicado') } }"]
|
|
24
|
-
|
|
25
|
-
filters:
|
|
26
|
-
model: true
|
|
27
|
-
desc: Diferente do model "currentFilters" que controla os filtros realizado, este model controla os filtros que ainda não foram realizados.
|
|
28
|
-
default: {}
|
|
29
|
-
type: Object
|
|
30
|
-
examples: [v-model:filters="filters"]
|
|
31
|
-
|
|
32
|
-
search-placeholder:
|
|
33
|
-
desc: Placeholder do campo de busca.
|
|
34
|
-
default: Pesquisar...
|
|
35
|
-
type: String
|
|
36
|
-
|
|
37
|
-
url:
|
|
38
|
-
desc: Envia como parâmetro para a action "fetchFilters" do modulo correspondente a "entity".
|
|
39
|
-
type: String
|
|
40
|
-
|
|
41
|
-
use-chip:
|
|
42
|
-
desc: Habilita ou não os "chips" mostrando os filtros ativos.
|
|
43
|
-
default: true
|
|
44
|
-
type: Boolean
|
|
45
|
-
|
|
46
|
-
use-filter-button:
|
|
47
|
-
desc: Habilita ou não o botão com menu na lateral esquerda.
|
|
48
|
-
default: true
|
|
49
|
-
type: Boolean
|
|
50
|
-
|
|
51
|
-
use-force-refetch:
|
|
52
|
-
desc: Força refazer o "fetch" mesmo caso já exista dados na store de filters.
|
|
53
|
-
type: Boolean
|
|
54
|
-
|
|
55
|
-
use-update-route:
|
|
56
|
-
desc: Habilita ou não a atualização da rota com base nos filtros.
|
|
57
|
-
default: true
|
|
58
|
-
type: Boolean
|
|
59
|
-
|
|
60
|
-
use-search-on-type:
|
|
61
|
-
desc: Habilita ou não o filtro de busca sempre que o usuário digita.
|
|
62
|
-
default: true
|
|
63
|
-
type: Boolean
|
|
64
|
-
|
|
65
|
-
use-search:
|
|
66
|
-
desc: Habilita ou não o campo text de busca.
|
|
67
|
-
default: true
|
|
68
|
-
type: Boolean
|
|
69
|
-
|
|
70
|
-
use-spacing:
|
|
71
|
-
desc: Habilita ou não o espaçamento padrão do componente.
|
|
72
|
-
default: true
|
|
73
|
-
type: Boolean
|
|
74
|
-
|
|
75
|
-
slots:
|
|
76
|
-
default:
|
|
77
|
-
desc: Slot para acessar o final do componente.
|
|
78
|
-
scope:
|
|
79
|
-
filter:
|
|
80
|
-
desc: Função usada para realizar o filtro.
|
|
81
|
-
type: Function
|
|
82
|
-
|
|
83
|
-
filters:
|
|
84
|
-
desc: Objeto que retorna os filtros ativos.
|
|
85
|
-
default: {}
|
|
86
|
-
type: Object
|
|
87
|
-
|
|
88
|
-
remove-filter:
|
|
89
|
-
desc: Função usada para remover os filtro.
|
|
90
|
-
type: Function
|
|
91
|
-
examples: ["removeFilter({ name: '[nome-do-filtro]' })"]
|
|
92
|
-
|
|
93
|
-
context:
|
|
94
|
-
desc: Contexto referente a query da url.
|
|
95
|
-
default: { filters: {}, page: 1 }
|
|
96
|
-
type: Object
|
|
97
|
-
|
|
98
|
-
filter-button:
|
|
99
|
-
desc: Slot para seção do botão de filtro.
|
|
100
|
-
scope:
|
|
101
|
-
filter:
|
|
102
|
-
desc: Função usada para realizar o filtro.
|
|
103
|
-
type: Function
|
|
104
|
-
|
|
105
|
-
filters:
|
|
106
|
-
desc: Objeto que retorna os filtros ativos.
|
|
107
|
-
default: {}
|
|
108
|
-
type: Object
|
|
109
|
-
|
|
110
|
-
remove-filter:
|
|
111
|
-
desc: Função usada para remover os filtro.
|
|
112
|
-
type: Function
|
|
113
|
-
examples: ["removeFilter({ name: '[nome-do-filtro]' })"]
|
|
114
|
-
|
|
115
|
-
context:
|
|
116
|
-
desc: Contexto referente a query da url.
|
|
117
|
-
default: { filters: {}, page: 1 }
|
|
118
|
-
type: Object
|
|
119
|
-
|
|
120
|
-
right-side:
|
|
121
|
-
desc: Slot para a seção na lateral direita.
|
|
122
|
-
|
|
123
|
-
search:
|
|
124
|
-
desc: Slot para seção do campo de busca.
|
|
125
|
-
scope:
|
|
126
|
-
filter:
|
|
127
|
-
desc: função usada para realizar o filtro.
|
|
128
|
-
type: Function
|
|
129
|
-
|
|
130
|
-
events:
|
|
131
|
-
'@fetch-success -> function(value)':
|
|
132
|
-
desc: Dispara quando a action "fetchFilters" é executada com sucesso.
|
|
133
|
-
params:
|
|
134
|
-
value:
|
|
135
|
-
desc: Retorna todos os dados "cru" respondido pelo fetch.
|
|
136
|
-
type: Object
|
|
137
|
-
|
|
138
|
-
'@fetch-error -> function(value)':
|
|
139
|
-
desc: Dispara quando a action "fetchFilters" cai em uma exceção.
|
|
140
|
-
params:
|
|
141
|
-
value:
|
|
142
|
-
desc: Retorna todos os dados "cru" respondido na exceção do fetch.
|
|
143
|
-
type: Object
|
|
144
|
-
|
|
145
|
-
'@update:currentFilters -> function(value)':
|
|
146
|
-
desc: Dispara quando é realizado ou removido uma pesquisa no campo de busca e quando é clicado no botão "Filtrar" ou "Limpar" do filtro.
|
|
147
|
-
params:
|
|
148
|
-
value:
|
|
149
|
-
desc: Retorna todos os filtros realizados.
|
|
150
|
-
type: Object
|
|
151
|
-
|
|
152
|
-
selectors:
|
|
153
|
-
filters-btn:
|
|
154
|
-
desc: Seletor do botão de filtro.
|
|
155
|
-
examples: ['data-cy="filters-btn"']
|
|
156
|
-
|
|
157
|
-
filters-clear-btn:
|
|
158
|
-
desc: Seletor do botão de limpar do filtro.
|
|
159
|
-
examples: ['data-cy="filters-clear-btn"']
|
|
160
|
-
|
|
161
|
-
'filters-[optionText]-chip':
|
|
162
|
-
desc: Seletor do chip de acordo com o texto da opção selecionada.
|
|
163
|
-
examples: ['data-cy="filters-Ativo-chip"']
|
|
164
|
-
|
|
165
|
-
'filters-[fieldName]-field':
|
|
166
|
-
desc: Seletor criado a partir da propriedade "name" do campo.
|
|
167
|
-
examples: ['data-cy="filters-email-field"', 'data-cy="filters-phone-field"', 'data-cy="filters-password-field"']
|
|
168
|
-
|
|
169
|
-
filters-submit-btn:
|
|
170
|
-
desc: Seletor do botão de submit do filtro.
|
|
171
|
-
examples: ['data-cy="filters-submit-btn"']
|
|
1
|
+
type: component
|
|
2
|
+
|
|
3
|
+
meta:
|
|
4
|
+
desc: Componente para criação de filtros dinâmicos.
|
|
5
|
+
|
|
6
|
+
props:
|
|
7
|
+
current-filters:
|
|
8
|
+
model: true
|
|
9
|
+
desc: Utilizado para recuperar os filtros realizados internamente.
|
|
10
|
+
default: {}
|
|
11
|
+
type: Object
|
|
12
|
+
examples: [v-model:currentFilters="currentFilters"]
|
|
13
|
+
|
|
14
|
+
entity:
|
|
15
|
+
desc: Entidade da store, por exemplo se tiver que trabalhar com modulo de usuários, teremos o model "users" na store, que vai ser nossa "entity".
|
|
16
|
+
required: true
|
|
17
|
+
type: String
|
|
18
|
+
|
|
19
|
+
fields-props:
|
|
20
|
+
desc: Propriedade para repassar propriedades para cada campo individualmente.
|
|
21
|
+
default: {}
|
|
22
|
+
type: Object
|
|
23
|
+
examples: ["{ name: { dense: true, onClick: () => alert('Estou sendo clicado') } }"]
|
|
24
|
+
|
|
25
|
+
filters:
|
|
26
|
+
model: true
|
|
27
|
+
desc: Diferente do model "currentFilters" que controla os filtros realizado, este model controla os filtros que ainda não foram realizados.
|
|
28
|
+
default: {}
|
|
29
|
+
type: Object
|
|
30
|
+
examples: [v-model:filters="filters"]
|
|
31
|
+
|
|
32
|
+
search-placeholder:
|
|
33
|
+
desc: Placeholder do campo de busca.
|
|
34
|
+
default: Pesquisar...
|
|
35
|
+
type: String
|
|
36
|
+
|
|
37
|
+
url:
|
|
38
|
+
desc: Envia como parâmetro para a action "fetchFilters" do modulo correspondente a "entity".
|
|
39
|
+
type: String
|
|
40
|
+
|
|
41
|
+
use-chip:
|
|
42
|
+
desc: Habilita ou não os "chips" mostrando os filtros ativos.
|
|
43
|
+
default: true
|
|
44
|
+
type: Boolean
|
|
45
|
+
|
|
46
|
+
use-filter-button:
|
|
47
|
+
desc: Habilita ou não o botão com menu na lateral esquerda.
|
|
48
|
+
default: true
|
|
49
|
+
type: Boolean
|
|
50
|
+
|
|
51
|
+
use-force-refetch:
|
|
52
|
+
desc: Força refazer o "fetch" mesmo caso já exista dados na store de filters.
|
|
53
|
+
type: Boolean
|
|
54
|
+
|
|
55
|
+
use-update-route:
|
|
56
|
+
desc: Habilita ou não a atualização da rota com base nos filtros.
|
|
57
|
+
default: true
|
|
58
|
+
type: Boolean
|
|
59
|
+
|
|
60
|
+
use-search-on-type:
|
|
61
|
+
desc: Habilita ou não o filtro de busca sempre que o usuário digita.
|
|
62
|
+
default: true
|
|
63
|
+
type: Boolean
|
|
64
|
+
|
|
65
|
+
use-search:
|
|
66
|
+
desc: Habilita ou não o campo text de busca.
|
|
67
|
+
default: true
|
|
68
|
+
type: Boolean
|
|
69
|
+
|
|
70
|
+
use-spacing:
|
|
71
|
+
desc: Habilita ou não o espaçamento padrão do componente.
|
|
72
|
+
default: true
|
|
73
|
+
type: Boolean
|
|
74
|
+
|
|
75
|
+
slots:
|
|
76
|
+
default:
|
|
77
|
+
desc: Slot para acessar o final do componente.
|
|
78
|
+
scope:
|
|
79
|
+
filter:
|
|
80
|
+
desc: Função usada para realizar o filtro.
|
|
81
|
+
type: Function
|
|
82
|
+
|
|
83
|
+
filters:
|
|
84
|
+
desc: Objeto que retorna os filtros ativos.
|
|
85
|
+
default: {}
|
|
86
|
+
type: Object
|
|
87
|
+
|
|
88
|
+
remove-filter:
|
|
89
|
+
desc: Função usada para remover os filtro.
|
|
90
|
+
type: Function
|
|
91
|
+
examples: ["removeFilter({ name: '[nome-do-filtro]' })"]
|
|
92
|
+
|
|
93
|
+
context:
|
|
94
|
+
desc: Contexto referente a query da url.
|
|
95
|
+
default: { filters: {}, page: 1 }
|
|
96
|
+
type: Object
|
|
97
|
+
|
|
98
|
+
filter-button:
|
|
99
|
+
desc: Slot para seção do botão de filtro.
|
|
100
|
+
scope:
|
|
101
|
+
filter:
|
|
102
|
+
desc: Função usada para realizar o filtro.
|
|
103
|
+
type: Function
|
|
104
|
+
|
|
105
|
+
filters:
|
|
106
|
+
desc: Objeto que retorna os filtros ativos.
|
|
107
|
+
default: {}
|
|
108
|
+
type: Object
|
|
109
|
+
|
|
110
|
+
remove-filter:
|
|
111
|
+
desc: Função usada para remover os filtro.
|
|
112
|
+
type: Function
|
|
113
|
+
examples: ["removeFilter({ name: '[nome-do-filtro]' })"]
|
|
114
|
+
|
|
115
|
+
context:
|
|
116
|
+
desc: Contexto referente a query da url.
|
|
117
|
+
default: { filters: {}, page: 1 }
|
|
118
|
+
type: Object
|
|
119
|
+
|
|
120
|
+
right-side:
|
|
121
|
+
desc: Slot para a seção na lateral direita.
|
|
122
|
+
|
|
123
|
+
search:
|
|
124
|
+
desc: Slot para seção do campo de busca.
|
|
125
|
+
scope:
|
|
126
|
+
filter:
|
|
127
|
+
desc: função usada para realizar o filtro.
|
|
128
|
+
type: Function
|
|
129
|
+
|
|
130
|
+
events:
|
|
131
|
+
'@fetch-success -> function(value)':
|
|
132
|
+
desc: Dispara quando a action "fetchFilters" é executada com sucesso.
|
|
133
|
+
params:
|
|
134
|
+
value:
|
|
135
|
+
desc: Retorna todos os dados "cru" respondido pelo fetch.
|
|
136
|
+
type: Object
|
|
137
|
+
|
|
138
|
+
'@fetch-error -> function(value)':
|
|
139
|
+
desc: Dispara quando a action "fetchFilters" cai em uma exceção.
|
|
140
|
+
params:
|
|
141
|
+
value:
|
|
142
|
+
desc: Retorna todos os dados "cru" respondido na exceção do fetch.
|
|
143
|
+
type: Object
|
|
144
|
+
|
|
145
|
+
'@update:currentFilters -> function(value)':
|
|
146
|
+
desc: Dispara quando é realizado ou removido uma pesquisa no campo de busca e quando é clicado no botão "Filtrar" ou "Limpar" do filtro.
|
|
147
|
+
params:
|
|
148
|
+
value:
|
|
149
|
+
desc: Retorna todos os filtros realizados.
|
|
150
|
+
type: Object
|
|
151
|
+
|
|
152
|
+
selectors:
|
|
153
|
+
filters-btn:
|
|
154
|
+
desc: Seletor do botão de filtro.
|
|
155
|
+
examples: ['data-cy="filters-btn"']
|
|
156
|
+
|
|
157
|
+
filters-clear-btn:
|
|
158
|
+
desc: Seletor do botão de limpar do filtro.
|
|
159
|
+
examples: ['data-cy="filters-clear-btn"']
|
|
160
|
+
|
|
161
|
+
'filters-[optionText]-chip':
|
|
162
|
+
desc: Seletor do chip de acordo com o texto da opção selecionada.
|
|
163
|
+
examples: ['data-cy="filters-Ativo-chip"']
|
|
164
|
+
|
|
165
|
+
'filters-[fieldName]-field':
|
|
166
|
+
desc: Seletor criado a partir da propriedade "name" do campo.
|
|
167
|
+
examples: ['data-cy="filters-email-field"', 'data-cy="filters-phone-field"', 'data-cy="filters-password-field"']
|
|
168
|
+
|
|
169
|
+
filters-submit-btn:
|
|
170
|
+
desc: Seletor do botão de submit do filtro.
|
|
171
|
+
examples: ['data-cy="filters-submit-btn"']
|
|
@@ -1,101 +1,101 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<qas-btn data-cy="filters-btn" icon="sym_r_filter_alt" label="Filtrar" :use-label-on-small-screen="false" variant="tertiary">
|
|
3
|
-
<q-menu ref="menu" anchor="center right" class="full-width" max-width="270px" v-bind="menuProps" no-refocus self="top right">
|
|
4
|
-
<div v-if="loading" class="q-pa-xl text-center">
|
|
5
|
-
<q-spinner color="grey" size="2em" />
|
|
6
|
-
</div>
|
|
7
|
-
|
|
8
|
-
<div v-else-if="error" class="q-pa-xl text-center">
|
|
9
|
-
<q-icon color="negative" name="sym_r_warning" size="2em" />
|
|
10
|
-
</div>
|
|
11
|
-
|
|
12
|
-
<q-form v-else class="q-gutter-y-md q-pa-md" @submit.prevent="$emit('filter')">
|
|
13
|
-
<div v-for="(field, index) in fields" :key="index">
|
|
14
|
-
<qas-field v-model="filters[field.name]" :data-cy="`filters-${field.name}-field`" :field="field" v-bind="fieldsProps[field.name]" />
|
|
15
|
-
</div>
|
|
16
|
-
|
|
17
|
-
<qas-actions gutter="sm" use-equal-width>
|
|
18
|
-
<template #primary>
|
|
19
|
-
<qas-btn class="full-width" data-cy="filters-submit-btn" label="Filtrar" type="submit" variant="primary" />
|
|
20
|
-
</template>
|
|
21
|
-
|
|
22
|
-
<template #secondary>
|
|
23
|
-
<qas-btn class="full-width" data-cy="filters-clear-btn" label="Limpar" variant="secondary" @click="$emit('clear')" />
|
|
24
|
-
</template>
|
|
25
|
-
</qas-actions>
|
|
26
|
-
</q-form>
|
|
27
|
-
</q-menu>
|
|
28
|
-
</qas-btn>
|
|
29
|
-
</template>
|
|
30
|
-
|
|
31
|
-
<script>
|
|
32
|
-
import QasActions from '../../actions/QasActions.vue'
|
|
33
|
-
import QasBtn from '../../btn/QasBtn.vue'
|
|
34
|
-
import QasField from '../../field/QasField.vue'
|
|
35
|
-
|
|
36
|
-
export default {
|
|
37
|
-
name: 'PvFiltersButton',
|
|
38
|
-
|
|
39
|
-
components: {
|
|
40
|
-
QasActions,
|
|
41
|
-
QasBtn,
|
|
42
|
-
QasField
|
|
43
|
-
},
|
|
44
|
-
|
|
45
|
-
props: {
|
|
46
|
-
color: {
|
|
47
|
-
type: String,
|
|
48
|
-
default: 'grey-10',
|
|
49
|
-
validator: value => ['grey-10', 'primary', 'white'].includes(value)
|
|
50
|
-
},
|
|
51
|
-
|
|
52
|
-
error: {
|
|
53
|
-
type: Boolean
|
|
54
|
-
},
|
|
55
|
-
|
|
56
|
-
fields: {
|
|
57
|
-
default: () => ({}),
|
|
58
|
-
type: Object
|
|
59
|
-
},
|
|
60
|
-
|
|
61
|
-
fieldsProps: {
|
|
62
|
-
default: () => ({}),
|
|
63
|
-
type: Object
|
|
64
|
-
},
|
|
65
|
-
|
|
66
|
-
loading: {
|
|
67
|
-
type: Boolean
|
|
68
|
-
},
|
|
69
|
-
|
|
70
|
-
menuProps: {
|
|
71
|
-
default: () => ({}),
|
|
72
|
-
type: Object
|
|
73
|
-
},
|
|
74
|
-
|
|
75
|
-
modelValue: {
|
|
76
|
-
default: () => ({}),
|
|
77
|
-
type: Object
|
|
78
|
-
}
|
|
79
|
-
},
|
|
80
|
-
|
|
81
|
-
emits: ['clear', 'filter', 'update:modelValue'],
|
|
82
|
-
|
|
83
|
-
computed: {
|
|
84
|
-
filters: {
|
|
85
|
-
get () {
|
|
86
|
-
return this.modelValue
|
|
87
|
-
},
|
|
88
|
-
|
|
89
|
-
set (value) {
|
|
90
|
-
return this.$emit('update:modelValue', value)
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
},
|
|
94
|
-
|
|
95
|
-
methods: {
|
|
96
|
-
hideMenu () {
|
|
97
|
-
this.$refs.menu.hide()
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
</script>
|
|
1
|
+
<template>
|
|
2
|
+
<qas-btn data-cy="filters-btn" icon="sym_r_filter_alt" label="Filtrar" :use-label-on-small-screen="false" variant="tertiary">
|
|
3
|
+
<q-menu ref="menu" anchor="center right" class="full-width" max-width="270px" v-bind="menuProps" no-refocus self="top right">
|
|
4
|
+
<div v-if="loading" class="q-pa-xl text-center">
|
|
5
|
+
<q-spinner color="grey" size="2em" />
|
|
6
|
+
</div>
|
|
7
|
+
|
|
8
|
+
<div v-else-if="error" class="q-pa-xl text-center">
|
|
9
|
+
<q-icon color="negative" name="sym_r_warning" size="2em" />
|
|
10
|
+
</div>
|
|
11
|
+
|
|
12
|
+
<q-form v-else class="q-gutter-y-md q-pa-md" @submit.prevent="$emit('filter')">
|
|
13
|
+
<div v-for="(field, index) in fields" :key="index">
|
|
14
|
+
<qas-field v-model="filters[field.name]" :data-cy="`filters-${field.name}-field`" :field="field" v-bind="fieldsProps[field.name]" />
|
|
15
|
+
</div>
|
|
16
|
+
|
|
17
|
+
<qas-actions gutter="sm" use-equal-width>
|
|
18
|
+
<template #primary>
|
|
19
|
+
<qas-btn class="full-width" data-cy="filters-submit-btn" label="Filtrar" type="submit" variant="primary" />
|
|
20
|
+
</template>
|
|
21
|
+
|
|
22
|
+
<template #secondary>
|
|
23
|
+
<qas-btn class="full-width" data-cy="filters-clear-btn" label="Limpar" variant="secondary" @click="$emit('clear')" />
|
|
24
|
+
</template>
|
|
25
|
+
</qas-actions>
|
|
26
|
+
</q-form>
|
|
27
|
+
</q-menu>
|
|
28
|
+
</qas-btn>
|
|
29
|
+
</template>
|
|
30
|
+
|
|
31
|
+
<script>
|
|
32
|
+
import QasActions from '../../actions/QasActions.vue'
|
|
33
|
+
import QasBtn from '../../btn/QasBtn.vue'
|
|
34
|
+
import QasField from '../../field/QasField.vue'
|
|
35
|
+
|
|
36
|
+
export default {
|
|
37
|
+
name: 'PvFiltersButton',
|
|
38
|
+
|
|
39
|
+
components: {
|
|
40
|
+
QasActions,
|
|
41
|
+
QasBtn,
|
|
42
|
+
QasField
|
|
43
|
+
},
|
|
44
|
+
|
|
45
|
+
props: {
|
|
46
|
+
color: {
|
|
47
|
+
type: String,
|
|
48
|
+
default: 'grey-10',
|
|
49
|
+
validator: value => ['grey-10', 'primary', 'white'].includes(value)
|
|
50
|
+
},
|
|
51
|
+
|
|
52
|
+
error: {
|
|
53
|
+
type: Boolean
|
|
54
|
+
},
|
|
55
|
+
|
|
56
|
+
fields: {
|
|
57
|
+
default: () => ({}),
|
|
58
|
+
type: Object
|
|
59
|
+
},
|
|
60
|
+
|
|
61
|
+
fieldsProps: {
|
|
62
|
+
default: () => ({}),
|
|
63
|
+
type: Object
|
|
64
|
+
},
|
|
65
|
+
|
|
66
|
+
loading: {
|
|
67
|
+
type: Boolean
|
|
68
|
+
},
|
|
69
|
+
|
|
70
|
+
menuProps: {
|
|
71
|
+
default: () => ({}),
|
|
72
|
+
type: Object
|
|
73
|
+
},
|
|
74
|
+
|
|
75
|
+
modelValue: {
|
|
76
|
+
default: () => ({}),
|
|
77
|
+
type: Object
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
|
|
81
|
+
emits: ['clear', 'filter', 'update:modelValue'],
|
|
82
|
+
|
|
83
|
+
computed: {
|
|
84
|
+
filters: {
|
|
85
|
+
get () {
|
|
86
|
+
return this.modelValue
|
|
87
|
+
},
|
|
88
|
+
|
|
89
|
+
set (value) {
|
|
90
|
+
return this.$emit('update:modelValue', value)
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
|
|
95
|
+
methods: {
|
|
96
|
+
hideMenu () {
|
|
97
|
+
this.$refs.menu.hide()
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
</script>
|