@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,217 +1,217 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<q-dialog ref="dialogRef" class="qas-dialog" :class="classes" data-cy="dialog" v-bind="dialogProps" :persistent="props.persistent" @update:model-value="updateModelValue">
|
|
3
|
-
<div class="bg-white q-pa-md" :style="style">
|
|
4
|
-
<header v-if="hasHeader" class="q-mb-md">
|
|
5
|
-
<slot name="header">
|
|
6
|
-
<div class="items-center justify-between row">
|
|
7
|
-
<qas-label data-cy="dialog-title" :label="props.card.title" margin="none" />
|
|
8
|
-
|
|
9
|
-
<qas-btn v-if="isInfoDialog" v-close-popup color="grey-10" data-cy="dialog-close-btn" icon="sym_r_close" variant="tertiary" />
|
|
10
|
-
</div>
|
|
11
|
-
</slot>
|
|
12
|
-
</header>
|
|
13
|
-
|
|
14
|
-
<section class="text-body1 text-grey-8">
|
|
15
|
-
<component :is="mainComponent.is" ref="form" v-bind="mainComponent.props">
|
|
16
|
-
<slot name="description">
|
|
17
|
-
<component :is="descriptionComponent" data-cy="dialog-description">{{ props.card.description }}</component>
|
|
18
|
-
</slot>
|
|
19
|
-
|
|
20
|
-
<div v-if="!isInfoDialog">
|
|
21
|
-
<slot name="actions">
|
|
22
|
-
<qas-actions v-bind="defaultActionsProps">
|
|
23
|
-
<template v-if="hasOk" #primary>
|
|
24
|
-
<qas-btn v-close-popup="!props.useForm" class="full-width" data-cy="dialog-ok-btn" variant="primary" v-bind="defaultOk" />
|
|
25
|
-
</template>
|
|
26
|
-
|
|
27
|
-
<template v-if="hasCancel" #secondary>
|
|
28
|
-
<qas-btn v-close-popup class="full-width" data-cy="dialog-cancel-btn" v-bind="defaultCancel" variant="secondary" />
|
|
29
|
-
</template>
|
|
30
|
-
</qas-actions>
|
|
31
|
-
</slot>
|
|
32
|
-
</div>
|
|
33
|
-
</component>
|
|
34
|
-
</section>
|
|
35
|
-
</div>
|
|
36
|
-
</q-dialog>
|
|
37
|
-
</template>
|
|
38
|
-
|
|
39
|
-
<script setup>
|
|
40
|
-
import QasActions from '../actions/QasActions.vue'
|
|
41
|
-
import QasBtn from '../btn/QasBtn.vue'
|
|
42
|
-
|
|
43
|
-
import useCancel from './composables/use-cancel'
|
|
44
|
-
import useDynamicComponents from './composables/use-dynamic-components'
|
|
45
|
-
import useOk from './composables/use-ok'
|
|
46
|
-
import { useScreen } from '../../composables'
|
|
47
|
-
|
|
48
|
-
import { computed, ref, useAttrs, useSlots, provide } from 'vue'
|
|
49
|
-
import { useDialogPluginComponent } from 'quasar'
|
|
50
|
-
|
|
51
|
-
defineOptions({ name: 'QasDialog' })
|
|
52
|
-
|
|
53
|
-
const props = defineProps({
|
|
54
|
-
actionsProps: {
|
|
55
|
-
default: () => ({}),
|
|
56
|
-
type: Object
|
|
57
|
-
},
|
|
58
|
-
|
|
59
|
-
cancel: {
|
|
60
|
-
default: () => ({}),
|
|
61
|
-
type: [Object, Boolean]
|
|
62
|
-
},
|
|
63
|
-
|
|
64
|
-
card: {
|
|
65
|
-
default: () => ({}),
|
|
66
|
-
type: Object
|
|
67
|
-
},
|
|
68
|
-
|
|
69
|
-
maxWidth: {
|
|
70
|
-
default: '',
|
|
71
|
-
type: String
|
|
72
|
-
},
|
|
73
|
-
|
|
74
|
-
minWidth: {
|
|
75
|
-
default: '',
|
|
76
|
-
type: String
|
|
77
|
-
},
|
|
78
|
-
|
|
79
|
-
ok: {
|
|
80
|
-
default: () => ({}),
|
|
81
|
-
type: [Object, Boolean]
|
|
82
|
-
},
|
|
83
|
-
|
|
84
|
-
persistent: {
|
|
85
|
-
default: true,
|
|
86
|
-
type: Boolean
|
|
87
|
-
},
|
|
88
|
-
|
|
89
|
-
useForm: {
|
|
90
|
-
type: Boolean
|
|
91
|
-
},
|
|
92
|
-
|
|
93
|
-
modelValue: {
|
|
94
|
-
type: Boolean
|
|
95
|
-
},
|
|
96
|
-
|
|
97
|
-
usePlugin: {
|
|
98
|
-
type: Boolean
|
|
99
|
-
},
|
|
100
|
-
|
|
101
|
-
useFullMaxWidth: {
|
|
102
|
-
type: Boolean
|
|
103
|
-
},
|
|
104
|
-
|
|
105
|
-
useValidationAllAtOnce: {
|
|
106
|
-
type: Boolean
|
|
107
|
-
}
|
|
108
|
-
})
|
|
109
|
-
|
|
110
|
-
const emit = defineEmits([
|
|
111
|
-
// model
|
|
112
|
-
'update:modelValue',
|
|
113
|
-
|
|
114
|
-
// actions
|
|
115
|
-
'cancel',
|
|
116
|
-
'ok',
|
|
117
|
-
'validate',
|
|
118
|
-
|
|
119
|
-
// eventos do plugin
|
|
120
|
-
...useDialogPluginComponent.emits
|
|
121
|
-
])
|
|
122
|
-
|
|
123
|
-
provide('isDialog', true)
|
|
124
|
-
|
|
125
|
-
const attrs = useAttrs()
|
|
126
|
-
const screen = useScreen()
|
|
127
|
-
const slots = useSlots()
|
|
128
|
-
|
|
129
|
-
// usado para o plugin
|
|
130
|
-
const { dialogRef, onDialogHide } = useDialogPluginComponent()
|
|
131
|
-
|
|
132
|
-
// QForm template
|
|
133
|
-
const form = ref(null)
|
|
134
|
-
|
|
135
|
-
const composablesParams = { emit, form, props, screen, slots }
|
|
136
|
-
|
|
137
|
-
const { defaultCancel, hasCancel } = useCancel(composablesParams)
|
|
138
|
-
const { defaultOk, hasOk, onOk } = useOk(composablesParams)
|
|
139
|
-
const { descriptionComponent, mainComponent } = useDynamicComponents({ ...composablesParams, onOk, hasOk })
|
|
140
|
-
|
|
141
|
-
/**
|
|
142
|
-
* Classes criadas para serem utilizadas quando usado com a prop "position", pois
|
|
143
|
-
* o comportamento do dialog muda, e não é possível usar em conjunto com a prop
|
|
144
|
-
* "useFullMaxWidth", então foi necessário uma trativa.
|
|
145
|
-
*/
|
|
146
|
-
const classes = computed(() => {
|
|
147
|
-
const isRightPosition = attrs.position === 'right'
|
|
148
|
-
const isLeftPosition = attrs.position === 'left'
|
|
149
|
-
|
|
150
|
-
return {
|
|
151
|
-
'qas-dialog--right': isRightPosition,
|
|
152
|
-
'qas-dialog--left': isLeftPosition
|
|
153
|
-
}
|
|
154
|
-
})
|
|
155
|
-
|
|
156
|
-
const dialogProps = computed(() => {
|
|
157
|
-
return {
|
|
158
|
-
...(!props.usePlugin && { modelValue: props.modelValue }),
|
|
159
|
-
...attrs,
|
|
160
|
-
|
|
161
|
-
onHide: onDialogHide
|
|
162
|
-
}
|
|
163
|
-
})
|
|
164
|
-
|
|
165
|
-
const style = computed(() => {
|
|
166
|
-
return {
|
|
167
|
-
...(props.useFullMaxWidth && { width: '100%' }),
|
|
168
|
-
|
|
169
|
-
maxWidth: props.maxWidth || '470px',
|
|
170
|
-
minWidth: props.minWidth || (screen.isSmall ? '' : '366px')
|
|
171
|
-
}
|
|
172
|
-
})
|
|
173
|
-
|
|
174
|
-
const hasHeader = computed(() => !!slots.header || props.card.title)
|
|
175
|
-
const isInfoDialog = computed(() => !hasOk.value && !hasCancel.value)
|
|
176
|
-
|
|
177
|
-
const defaultActionsProps = computed(() => {
|
|
178
|
-
const { useFullWidth, useEqualWidth } = props.actionsProps
|
|
179
|
-
|
|
180
|
-
if (useFullWidth || useEqualWidth) return props.actionsProps
|
|
181
|
-
|
|
182
|
-
const hasAllActions = hasOk.value && hasCancel.value
|
|
183
|
-
const hasSingleAction = (hasOk.value && !hasCancel.value) || (!hasOk.value && hasCancel.value)
|
|
184
|
-
|
|
185
|
-
return {
|
|
186
|
-
useFullWidth: hasSingleAction,
|
|
187
|
-
useEqualWidth: hasAllActions,
|
|
188
|
-
|
|
189
|
-
...props.actionsProps
|
|
190
|
-
}
|
|
191
|
-
})
|
|
192
|
-
|
|
193
|
-
function updateModelValue (value) {
|
|
194
|
-
emit('update:modelValue', value)
|
|
195
|
-
}
|
|
196
|
-
</script>
|
|
197
|
-
|
|
198
|
-
<style lang="scss">
|
|
199
|
-
.qas-dialog {
|
|
200
|
-
.q-dialog__inner > div {
|
|
201
|
-
box-shadow: $shadow-2;
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
&--right {
|
|
205
|
-
.q-dialog__inner {
|
|
206
|
-
width: 100%;
|
|
207
|
-
justify-content: end;
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
&--left {
|
|
212
|
-
.q-dialog__inner {
|
|
213
|
-
width: 100%;
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<q-dialog ref="dialogRef" class="qas-dialog" :class="classes" data-cy="dialog" v-bind="dialogProps" :persistent="props.persistent" @update:model-value="updateModelValue">
|
|
3
|
+
<div class="bg-white q-pa-md" :style="style">
|
|
4
|
+
<header v-if="hasHeader" class="q-mb-md">
|
|
5
|
+
<slot name="header">
|
|
6
|
+
<div class="items-center justify-between row">
|
|
7
|
+
<qas-label data-cy="dialog-title" :label="props.card.title" margin="none" />
|
|
8
|
+
|
|
9
|
+
<qas-btn v-if="isInfoDialog" v-close-popup color="grey-10" data-cy="dialog-close-btn" icon="sym_r_close" variant="tertiary" />
|
|
10
|
+
</div>
|
|
11
|
+
</slot>
|
|
12
|
+
</header>
|
|
13
|
+
|
|
14
|
+
<section class="text-body1 text-grey-8">
|
|
15
|
+
<component :is="mainComponent.is" ref="form" v-bind="mainComponent.props">
|
|
16
|
+
<slot name="description">
|
|
17
|
+
<component :is="descriptionComponent" data-cy="dialog-description">{{ props.card.description }}</component>
|
|
18
|
+
</slot>
|
|
19
|
+
|
|
20
|
+
<div v-if="!isInfoDialog">
|
|
21
|
+
<slot name="actions">
|
|
22
|
+
<qas-actions v-bind="defaultActionsProps">
|
|
23
|
+
<template v-if="hasOk" #primary>
|
|
24
|
+
<qas-btn v-close-popup="!props.useForm" class="full-width" data-cy="dialog-ok-btn" variant="primary" v-bind="defaultOk" />
|
|
25
|
+
</template>
|
|
26
|
+
|
|
27
|
+
<template v-if="hasCancel" #secondary>
|
|
28
|
+
<qas-btn v-close-popup class="full-width" data-cy="dialog-cancel-btn" v-bind="defaultCancel" variant="secondary" />
|
|
29
|
+
</template>
|
|
30
|
+
</qas-actions>
|
|
31
|
+
</slot>
|
|
32
|
+
</div>
|
|
33
|
+
</component>
|
|
34
|
+
</section>
|
|
35
|
+
</div>
|
|
36
|
+
</q-dialog>
|
|
37
|
+
</template>
|
|
38
|
+
|
|
39
|
+
<script setup>
|
|
40
|
+
import QasActions from '../actions/QasActions.vue'
|
|
41
|
+
import QasBtn from '../btn/QasBtn.vue'
|
|
42
|
+
|
|
43
|
+
import useCancel from './composables/use-cancel'
|
|
44
|
+
import useDynamicComponents from './composables/use-dynamic-components'
|
|
45
|
+
import useOk from './composables/use-ok'
|
|
46
|
+
import { useScreen } from '../../composables'
|
|
47
|
+
|
|
48
|
+
import { computed, ref, useAttrs, useSlots, provide } from 'vue'
|
|
49
|
+
import { useDialogPluginComponent } from 'quasar'
|
|
50
|
+
|
|
51
|
+
defineOptions({ name: 'QasDialog' })
|
|
52
|
+
|
|
53
|
+
const props = defineProps({
|
|
54
|
+
actionsProps: {
|
|
55
|
+
default: () => ({}),
|
|
56
|
+
type: Object
|
|
57
|
+
},
|
|
58
|
+
|
|
59
|
+
cancel: {
|
|
60
|
+
default: () => ({}),
|
|
61
|
+
type: [Object, Boolean]
|
|
62
|
+
},
|
|
63
|
+
|
|
64
|
+
card: {
|
|
65
|
+
default: () => ({}),
|
|
66
|
+
type: Object
|
|
67
|
+
},
|
|
68
|
+
|
|
69
|
+
maxWidth: {
|
|
70
|
+
default: '',
|
|
71
|
+
type: String
|
|
72
|
+
},
|
|
73
|
+
|
|
74
|
+
minWidth: {
|
|
75
|
+
default: '',
|
|
76
|
+
type: String
|
|
77
|
+
},
|
|
78
|
+
|
|
79
|
+
ok: {
|
|
80
|
+
default: () => ({}),
|
|
81
|
+
type: [Object, Boolean]
|
|
82
|
+
},
|
|
83
|
+
|
|
84
|
+
persistent: {
|
|
85
|
+
default: true,
|
|
86
|
+
type: Boolean
|
|
87
|
+
},
|
|
88
|
+
|
|
89
|
+
useForm: {
|
|
90
|
+
type: Boolean
|
|
91
|
+
},
|
|
92
|
+
|
|
93
|
+
modelValue: {
|
|
94
|
+
type: Boolean
|
|
95
|
+
},
|
|
96
|
+
|
|
97
|
+
usePlugin: {
|
|
98
|
+
type: Boolean
|
|
99
|
+
},
|
|
100
|
+
|
|
101
|
+
useFullMaxWidth: {
|
|
102
|
+
type: Boolean
|
|
103
|
+
},
|
|
104
|
+
|
|
105
|
+
useValidationAllAtOnce: {
|
|
106
|
+
type: Boolean
|
|
107
|
+
}
|
|
108
|
+
})
|
|
109
|
+
|
|
110
|
+
const emit = defineEmits([
|
|
111
|
+
// model
|
|
112
|
+
'update:modelValue',
|
|
113
|
+
|
|
114
|
+
// actions
|
|
115
|
+
'cancel',
|
|
116
|
+
'ok',
|
|
117
|
+
'validate',
|
|
118
|
+
|
|
119
|
+
// eventos do plugin
|
|
120
|
+
...useDialogPluginComponent.emits
|
|
121
|
+
])
|
|
122
|
+
|
|
123
|
+
provide('isDialog', true)
|
|
124
|
+
|
|
125
|
+
const attrs = useAttrs()
|
|
126
|
+
const screen = useScreen()
|
|
127
|
+
const slots = useSlots()
|
|
128
|
+
|
|
129
|
+
// usado para o plugin
|
|
130
|
+
const { dialogRef, onDialogHide } = useDialogPluginComponent()
|
|
131
|
+
|
|
132
|
+
// QForm template
|
|
133
|
+
const form = ref(null)
|
|
134
|
+
|
|
135
|
+
const composablesParams = { emit, form, props, screen, slots }
|
|
136
|
+
|
|
137
|
+
const { defaultCancel, hasCancel } = useCancel(composablesParams)
|
|
138
|
+
const { defaultOk, hasOk, onOk } = useOk(composablesParams)
|
|
139
|
+
const { descriptionComponent, mainComponent } = useDynamicComponents({ ...composablesParams, onOk, hasOk })
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* Classes criadas para serem utilizadas quando usado com a prop "position", pois
|
|
143
|
+
* o comportamento do dialog muda, e não é possível usar em conjunto com a prop
|
|
144
|
+
* "useFullMaxWidth", então foi necessário uma trativa.
|
|
145
|
+
*/
|
|
146
|
+
const classes = computed(() => {
|
|
147
|
+
const isRightPosition = attrs.position === 'right'
|
|
148
|
+
const isLeftPosition = attrs.position === 'left'
|
|
149
|
+
|
|
150
|
+
return {
|
|
151
|
+
'qas-dialog--right': isRightPosition,
|
|
152
|
+
'qas-dialog--left': isLeftPosition
|
|
153
|
+
}
|
|
154
|
+
})
|
|
155
|
+
|
|
156
|
+
const dialogProps = computed(() => {
|
|
157
|
+
return {
|
|
158
|
+
...(!props.usePlugin && { modelValue: props.modelValue }),
|
|
159
|
+
...attrs,
|
|
160
|
+
|
|
161
|
+
onHide: onDialogHide
|
|
162
|
+
}
|
|
163
|
+
})
|
|
164
|
+
|
|
165
|
+
const style = computed(() => {
|
|
166
|
+
return {
|
|
167
|
+
...(props.useFullMaxWidth && { width: '100%' }),
|
|
168
|
+
|
|
169
|
+
maxWidth: props.maxWidth || '470px',
|
|
170
|
+
minWidth: props.minWidth || (screen.isSmall ? '' : '366px')
|
|
171
|
+
}
|
|
172
|
+
})
|
|
173
|
+
|
|
174
|
+
const hasHeader = computed(() => !!slots.header || props.card.title)
|
|
175
|
+
const isInfoDialog = computed(() => !hasOk.value && !hasCancel.value)
|
|
176
|
+
|
|
177
|
+
const defaultActionsProps = computed(() => {
|
|
178
|
+
const { useFullWidth, useEqualWidth } = props.actionsProps
|
|
179
|
+
|
|
180
|
+
if (useFullWidth || useEqualWidth) return props.actionsProps
|
|
181
|
+
|
|
182
|
+
const hasAllActions = hasOk.value && hasCancel.value
|
|
183
|
+
const hasSingleAction = (hasOk.value && !hasCancel.value) || (!hasOk.value && hasCancel.value)
|
|
184
|
+
|
|
185
|
+
return {
|
|
186
|
+
useFullWidth: hasSingleAction,
|
|
187
|
+
useEqualWidth: hasAllActions,
|
|
188
|
+
|
|
189
|
+
...props.actionsProps
|
|
190
|
+
}
|
|
191
|
+
})
|
|
192
|
+
|
|
193
|
+
function updateModelValue (value) {
|
|
194
|
+
emit('update:modelValue', value)
|
|
195
|
+
}
|
|
196
|
+
</script>
|
|
197
|
+
|
|
198
|
+
<style lang="scss">
|
|
199
|
+
.qas-dialog {
|
|
200
|
+
.q-dialog__inner > div {
|
|
201
|
+
box-shadow: $shadow-2;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
&--right {
|
|
205
|
+
.q-dialog__inner {
|
|
206
|
+
width: 100%;
|
|
207
|
+
justify-content: end;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
&--left {
|
|
212
|
+
.q-dialog__inner {
|
|
213
|
+
width: 100%;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
</style>
|
|
@@ -1,117 +1,117 @@
|
|
|
1
|
-
type: component
|
|
2
|
-
|
|
3
|
-
meta:
|
|
4
|
-
desc: Componente de dialog.
|
|
5
|
-
|
|
6
|
-
props:
|
|
7
|
-
actions-props:
|
|
8
|
-
desc: Props repassadas para o "QasActions".
|
|
9
|
-
default: {}
|
|
10
|
-
type: Object
|
|
11
|
-
|
|
12
|
-
cancel:
|
|
13
|
-
desc: Props para o botão de cancelar, pode ser objeto com as propriedades ou um boolean, caso for "false", remove o botão de cancelar.
|
|
14
|
-
default: "{ label: 'Cancelar', outline: true }"
|
|
15
|
-
type: [Object, Boolean]
|
|
16
|
-
examples: ["{ label: 'Meu botão de cancelar', onClick: () => alert('fui clicado!') }"]
|
|
17
|
-
|
|
18
|
-
card:
|
|
19
|
-
desc: Objeto contendo as informações para serem exibidas dentro do dialog como "title" e "description".
|
|
20
|
-
default: {}
|
|
21
|
-
type: Object
|
|
22
|
-
examples: ["{ title: 'Meu título', description: 'Minha descrição' }"]
|
|
23
|
-
|
|
24
|
-
max-width:
|
|
25
|
-
desc: Tamanho máximo do dialog.
|
|
26
|
-
type: String
|
|
27
|
-
|
|
28
|
-
min-width:
|
|
29
|
-
desc: Tamanho mínimo do dialog.
|
|
30
|
-
type: String
|
|
31
|
-
|
|
32
|
-
model-value:
|
|
33
|
-
desc: Model do componente, abre ou fecha o dialog.
|
|
34
|
-
type: Boolean
|
|
35
|
-
examples: [v-model="value"]
|
|
36
|
-
model: true
|
|
37
|
-
|
|
38
|
-
ok:
|
|
39
|
-
desc: Props para o botão de confirmar (ok), pode ser objeto com as propriedades ou um boolean, caso for "false", remove o botão de confirmar.
|
|
40
|
-
default: "{ label: 'Ok', outline: type: this.ok?.type || this.useForm ? 'submit' : 'button' }"
|
|
41
|
-
debugger: true
|
|
42
|
-
type: [Object, Boolean]
|
|
43
|
-
examples: ["{ label: 'Meu botão de confirmar', onClick: () => alert('fui clicado!') }"]
|
|
44
|
-
|
|
45
|
-
persistent:
|
|
46
|
-
desc: Define se o dialog vai fechar ou não após clicar fora do dialog.
|
|
47
|
-
default: true
|
|
48
|
-
type: Boolean
|
|
49
|
-
|
|
50
|
-
use-form:
|
|
51
|
-
desc: Define se a tag onde fica a descrição no dialog vai ser um "<q-form />" ou "<div />".
|
|
52
|
-
type: Boolean
|
|
53
|
-
|
|
54
|
-
use-full-max-width:
|
|
55
|
-
desc: propriedade para utilizar `100% do maxWidth`.
|
|
56
|
-
type: Boolean
|
|
57
|
-
|
|
58
|
-
use-validation-all-at-once:
|
|
59
|
-
desc: Valida todos os campos de uma única vez, ao invés de ser um por vez (que é o padrão).
|
|
60
|
-
type: Boolean
|
|
61
|
-
|
|
62
|
-
slots:
|
|
63
|
-
actions:
|
|
64
|
-
desc: Slot para ações (botões por exemplo).
|
|
65
|
-
|
|
66
|
-
description:
|
|
67
|
-
desc: Slot para descrição.
|
|
68
|
-
|
|
69
|
-
header:
|
|
70
|
-
desc: Slot para o título.
|
|
71
|
-
|
|
72
|
-
events:
|
|
73
|
-
'@update:model-value -> function (value)':
|
|
74
|
-
desc: Dispara toda vez que o model é atualizado, também utilizado para v-model.
|
|
75
|
-
params:
|
|
76
|
-
value:
|
|
77
|
-
desc: Novo valor do v-model
|
|
78
|
-
type: Boolean
|
|
79
|
-
|
|
80
|
-
'@validate: -> function (value)':
|
|
81
|
-
desc: Dispara se a prop "useForm" for "true" e após um submit.
|
|
82
|
-
params:
|
|
83
|
-
value:
|
|
84
|
-
desc: Retorna se os campos passou ou não na validação
|
|
85
|
-
type: Boolean
|
|
86
|
-
|
|
87
|
-
'@cancel: -> function ()':
|
|
88
|
-
desc: Dispara toda vez que é clicado no botão "cancel".
|
|
89
|
-
|
|
90
|
-
'@ok: -> function ()':
|
|
91
|
-
desc: Dispara toda vez que é clicado no botão "ok" ou quando useForm for true e o for clicado "enter" estando com foco em algum input (evento de submit).
|
|
92
|
-
|
|
93
|
-
selectors:
|
|
94
|
-
dialog:
|
|
95
|
-
desc: Seletor do componente.
|
|
96
|
-
examples: ['data-cy="dialog"']
|
|
97
|
-
|
|
98
|
-
dialog-cancel-btn:
|
|
99
|
-
desc: Seletor do botão de cancelar do componente.
|
|
100
|
-
examples: ['data-cy="dialog-cancel-btn"']
|
|
101
|
-
|
|
102
|
-
dialog-close-btn:
|
|
103
|
-
desc: Seletor do botão de fechar do componente.
|
|
104
|
-
examples: ['data-cy="dialog-close-btn"']
|
|
105
|
-
|
|
106
|
-
dialog-description:
|
|
107
|
-
desc: Seletor da descrição do componente.
|
|
108
|
-
examples: ['data-cy="dialog-description"']
|
|
109
|
-
|
|
110
|
-
dialog-ok-btn:
|
|
111
|
-
desc: Seletor do botão de confirmar do componente.
|
|
112
|
-
examples: ['data-cy="dialog-ok-btn"']
|
|
113
|
-
|
|
114
|
-
dialog-title:
|
|
115
|
-
desc: Seletor do título do componente.
|
|
116
|
-
examples: ['data-cy="dialog-title"']
|
|
117
|
-
|
|
1
|
+
type: component
|
|
2
|
+
|
|
3
|
+
meta:
|
|
4
|
+
desc: Componente de dialog.
|
|
5
|
+
|
|
6
|
+
props:
|
|
7
|
+
actions-props:
|
|
8
|
+
desc: Props repassadas para o "QasActions".
|
|
9
|
+
default: {}
|
|
10
|
+
type: Object
|
|
11
|
+
|
|
12
|
+
cancel:
|
|
13
|
+
desc: Props para o botão de cancelar, pode ser objeto com as propriedades ou um boolean, caso for "false", remove o botão de cancelar.
|
|
14
|
+
default: "{ label: 'Cancelar', outline: true }"
|
|
15
|
+
type: [Object, Boolean]
|
|
16
|
+
examples: ["{ label: 'Meu botão de cancelar', onClick: () => alert('fui clicado!') }"]
|
|
17
|
+
|
|
18
|
+
card:
|
|
19
|
+
desc: Objeto contendo as informações para serem exibidas dentro do dialog como "title" e "description".
|
|
20
|
+
default: {}
|
|
21
|
+
type: Object
|
|
22
|
+
examples: ["{ title: 'Meu título', description: 'Minha descrição' }"]
|
|
23
|
+
|
|
24
|
+
max-width:
|
|
25
|
+
desc: Tamanho máximo do dialog.
|
|
26
|
+
type: String
|
|
27
|
+
|
|
28
|
+
min-width:
|
|
29
|
+
desc: Tamanho mínimo do dialog.
|
|
30
|
+
type: String
|
|
31
|
+
|
|
32
|
+
model-value:
|
|
33
|
+
desc: Model do componente, abre ou fecha o dialog.
|
|
34
|
+
type: Boolean
|
|
35
|
+
examples: [v-model="value"]
|
|
36
|
+
model: true
|
|
37
|
+
|
|
38
|
+
ok:
|
|
39
|
+
desc: Props para o botão de confirmar (ok), pode ser objeto com as propriedades ou um boolean, caso for "false", remove o botão de confirmar.
|
|
40
|
+
default: "{ label: 'Ok', outline: type: this.ok?.type || this.useForm ? 'submit' : 'button' }"
|
|
41
|
+
debugger: true
|
|
42
|
+
type: [Object, Boolean]
|
|
43
|
+
examples: ["{ label: 'Meu botão de confirmar', onClick: () => alert('fui clicado!') }"]
|
|
44
|
+
|
|
45
|
+
persistent:
|
|
46
|
+
desc: Define se o dialog vai fechar ou não após clicar fora do dialog.
|
|
47
|
+
default: true
|
|
48
|
+
type: Boolean
|
|
49
|
+
|
|
50
|
+
use-form:
|
|
51
|
+
desc: Define se a tag onde fica a descrição no dialog vai ser um "<q-form />" ou "<div />".
|
|
52
|
+
type: Boolean
|
|
53
|
+
|
|
54
|
+
use-full-max-width:
|
|
55
|
+
desc: propriedade para utilizar `100% do maxWidth`.
|
|
56
|
+
type: Boolean
|
|
57
|
+
|
|
58
|
+
use-validation-all-at-once:
|
|
59
|
+
desc: Valida todos os campos de uma única vez, ao invés de ser um por vez (que é o padrão).
|
|
60
|
+
type: Boolean
|
|
61
|
+
|
|
62
|
+
slots:
|
|
63
|
+
actions:
|
|
64
|
+
desc: Slot para ações (botões por exemplo).
|
|
65
|
+
|
|
66
|
+
description:
|
|
67
|
+
desc: Slot para descrição.
|
|
68
|
+
|
|
69
|
+
header:
|
|
70
|
+
desc: Slot para o título.
|
|
71
|
+
|
|
72
|
+
events:
|
|
73
|
+
'@update:model-value -> function (value)':
|
|
74
|
+
desc: Dispara toda vez que o model é atualizado, também utilizado para v-model.
|
|
75
|
+
params:
|
|
76
|
+
value:
|
|
77
|
+
desc: Novo valor do v-model
|
|
78
|
+
type: Boolean
|
|
79
|
+
|
|
80
|
+
'@validate: -> function (value)':
|
|
81
|
+
desc: Dispara se a prop "useForm" for "true" e após um submit.
|
|
82
|
+
params:
|
|
83
|
+
value:
|
|
84
|
+
desc: Retorna se os campos passou ou não na validação
|
|
85
|
+
type: Boolean
|
|
86
|
+
|
|
87
|
+
'@cancel: -> function ()':
|
|
88
|
+
desc: Dispara toda vez que é clicado no botão "cancel".
|
|
89
|
+
|
|
90
|
+
'@ok: -> function ()':
|
|
91
|
+
desc: Dispara toda vez que é clicado no botão "ok" ou quando useForm for true e o for clicado "enter" estando com foco em algum input (evento de submit).
|
|
92
|
+
|
|
93
|
+
selectors:
|
|
94
|
+
dialog:
|
|
95
|
+
desc: Seletor do componente.
|
|
96
|
+
examples: ['data-cy="dialog"']
|
|
97
|
+
|
|
98
|
+
dialog-cancel-btn:
|
|
99
|
+
desc: Seletor do botão de cancelar do componente.
|
|
100
|
+
examples: ['data-cy="dialog-cancel-btn"']
|
|
101
|
+
|
|
102
|
+
dialog-close-btn:
|
|
103
|
+
desc: Seletor do botão de fechar do componente.
|
|
104
|
+
examples: ['data-cy="dialog-close-btn"']
|
|
105
|
+
|
|
106
|
+
dialog-description:
|
|
107
|
+
desc: Seletor da descrição do componente.
|
|
108
|
+
examples: ['data-cy="dialog-description"']
|
|
109
|
+
|
|
110
|
+
dialog-ok-btn:
|
|
111
|
+
desc: Seletor do botão de confirmar do componente.
|
|
112
|
+
examples: ['data-cy="dialog-ok-btn"']
|
|
113
|
+
|
|
114
|
+
dialog-title:
|
|
115
|
+
desc: Seletor do título do componente.
|
|
116
|
+
examples: ['data-cy="dialog-title"']
|
|
117
|
+
|