@bildvitta/quasar-ui-asteroid 2.14.0 → 3.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/dist/api/QasBox.json +16 -0
  2. package/dist/api/QasBreakline.json +32 -0
  3. package/dist/api/QasBtn.json +15 -0
  4. package/dist/api/QasDebugger.json +13 -0
  5. package/dist/asteroid.cjs.css +1 -1
  6. package/dist/asteroid.cjs.js +6762 -1400
  7. package/dist/asteroid.cjs.min.js +2 -2
  8. package/dist/asteroid.esm.css +1 -1
  9. package/dist/asteroid.esm.js +6764 -1405
  10. package/dist/asteroid.esm.min.js +2 -2
  11. package/dist/asteroid.umd.css +1 -1
  12. package/dist/asteroid.umd.js +6760 -1405
  13. package/dist/asteroid.umd.min.js +2 -2
  14. package/dist/vetur/asteroid-attributes.json +16 -0
  15. package/dist/vetur/asteroid-tags.json +19 -0
  16. package/package.json +41 -56
  17. package/src/assets/logo-modular.svg +1 -1
  18. package/src/asteroid.js +1 -0
  19. package/src/components/actions/QasActions.vue +45 -0
  20. package/src/components/actions-menu/QasActionsMenu.vue +8 -19
  21. package/src/components/alert/QasAlert.vue +90 -0
  22. package/src/components/app-bar/QasAppBar.vue +16 -13
  23. package/src/components/app-menu/QasAppMenu.vue +10 -7
  24. package/src/components/avatar/QasAvatar.vue +7 -3
  25. package/src/components/box/QasBox.vue +12 -4
  26. package/src/components/box/QasBox.yml +13 -0
  27. package/src/components/breakline/QasBreakline.vue +37 -0
  28. package/src/components/breakline/QasBreakline.yml +25 -0
  29. package/src/components/btn/QasBtn.vue +27 -24
  30. package/src/components/btn/QasBtn.yml +12 -0
  31. package/src/components/card/QasCard.vue +29 -21
  32. package/src/components/checkbox-group/QasCheckboxGroup.vue +31 -17
  33. package/src/components/copy/QasCopy.vue +22 -11
  34. package/src/components/date-time-input/QasDateTimeInput.vue +16 -26
  35. package/src/components/debugger/QasDebugger.vue +2 -0
  36. package/src/components/debugger/QasDebugger.yml +10 -0
  37. package/src/components/delete/QasDelete.vue +28 -15
  38. package/src/components/dialog/QasDialog.vue +71 -67
  39. package/src/components/dialog-router/QasDialogRouter.vue +12 -4
  40. package/src/components/field/QasField.vue +16 -19
  41. package/src/components/filters/QasFilters.vue +31 -24
  42. package/src/components/form-generator/QasFormGenerator.vue +13 -15
  43. package/src/components/form-view/QasFormView.vue +117 -66
  44. package/src/components/gallery/QasGallery.vue +39 -26
  45. package/src/components/grid-generator/QasGridGenerator.vue +12 -6
  46. package/src/components/index.js +0 -0
  47. package/src/components/input/QasInput.vue +38 -36
  48. package/src/components/label/QasLabel.vue +14 -15
  49. package/src/components/layout/QasLayout.vue +13 -21
  50. package/src/components/list-items/QasListItems.vue +16 -8
  51. package/src/components/list-view/QasListView.vue +31 -28
  52. package/src/components/map/QasMap.vue +15 -25
  53. package/src/components/nested-fields/QasNestedFields.vue +39 -36
  54. package/src/components/numeric-input/QasNumericInput.vue +24 -21
  55. package/src/components/page-header/QasPageHeader.vue +19 -10
  56. package/src/components/password-input/QasPasswordInput.vue +20 -18
  57. package/src/components/password-strength-checker/QasPasswordStrengthChecker.vue +52 -31
  58. package/src/components/profile/QasProfile.vue +14 -12
  59. package/src/components/resizer/QasResizer.vue +1 -1
  60. package/src/components/search-box/QasSearchBox.vue +36 -20
  61. package/src/components/select/QasSelect.vue +41 -44
  62. package/src/components/select-list/QasSelectList.vue +64 -51
  63. package/src/components/signature-pad/QasSignaturePad.vue +57 -41
  64. package/src/components/signature-uploader/QasSignatureUploader.vue +15 -13
  65. package/src/components/single-view/QasSingleView.vue +31 -17
  66. package/src/components/sortable/QasSortable.vue +45 -27
  67. package/src/components/table-generator/QasTableGenerator.vue +95 -22
  68. package/src/components/tabs-generator/QasTabsGenerator.vue +36 -24
  69. package/src/components/text-truncate/QasTextTruncate.vue +25 -17
  70. package/src/components/transfer/QasTransfer.vue +57 -53
  71. package/src/components/uploader/QasUploader.vue +169 -48
  72. package/src/css/background.scss +1 -1
  73. package/src/css/border.scss +7 -6
  74. package/src/css/design-system.scss +0 -43
  75. package/src/css/fonts.scss +2 -28
  76. package/src/css/opacity.scss +0 -4
  77. package/src/css/set-brand.scss +15 -0
  78. package/src/css/transitions.scss +1 -1
  79. package/src/helpers/add-counter-suffix.js +3 -0
  80. package/src/helpers/{base64ToBlob.js → base-64-to-blob.js} +0 -0
  81. package/src/helpers/{constructObject.js → construct-object.js} +0 -0
  82. package/src/helpers/filter-object.js +8 -6
  83. package/src/helpers/filters.js +2 -3
  84. package/src/helpers/get-slot-children-text.js +15 -0
  85. package/src/helpers/{greatestCommonDivisor.js → greatest-common-divisor.js} +0 -0
  86. package/src/helpers/images.js +28 -0
  87. package/src/helpers/index.js +11 -59
  88. package/src/helpers/{isLocalDevelopment.js → is-local-development.js} +0 -0
  89. package/src/helpers/scroll-on-grap.js +61 -0
  90. package/src/index.cjs.js +1 -0
  91. package/src/index.esm.js +4 -0
  92. package/src/index.scss +19 -21
  93. package/src/index.umd.js +2 -0
  94. package/src/mixins/context.js +1 -1
  95. package/src/mixins/dialog-router.js +17 -0
  96. package/src/mixins/form.js +4 -12
  97. package/src/mixins/generator.js +14 -14
  98. package/src/mixins/index.js +2 -8
  99. package/src/mixins/password.js +73 -11
  100. package/src/mixins/screen.js +8 -6
  101. package/src/mixins/view.js +57 -20
  102. package/src/plugins/Dialog.js +14 -0
  103. package/src/plugins/NotifySuccess.js +3 -3
  104. package/src/plugins/index.js +4 -2
  105. package/src/store/history.js +43 -0
  106. package/src/store/index.js +1 -0
  107. package/src/vue-plugin.js +185 -0
  108. package/.babelrc +0 -12
  109. package/.storybook/main.js +0 -35
  110. package/.storybook/preview.js +0 -26
  111. package/debug.log +0 -1
  112. package/index.js +0 -4
  113. package/jest-setup.js +0 -1
  114. package/jest.config.json +0 -22
  115. package/postcss.config.js +0 -5
  116. package/src/components/Introduction.stories.mdx +0 -12
  117. package/src/components/actions-menu/QasActionsMenu.stories.js +0 -73
  118. package/src/components/app-bar/QasAppBar.stories.js +0 -84
  119. package/src/components/app-menu/QasAppMenu.stories.js +0 -66
  120. package/src/components/apps-menu/QasAppsMenu.spec.js +0 -58
  121. package/src/components/apps-menu/QasAppsMenu.stories.js +0 -54
  122. package/src/components/apps-menu/QasAppsMenu.vue +0 -48
  123. package/src/components/avatar/QasAvatar.spec.js +0 -14
  124. package/src/components/avatar/QasAvatar.stories.js +0 -52
  125. package/src/components/box/QasBox.spec.js +0 -18
  126. package/src/components/box/QasBox.stories.js +0 -35
  127. package/src/components/break-line/QasBreakLine.stories.js +0 -57
  128. package/src/components/break-line/QasBreakLine.vue +0 -52
  129. package/src/components/btn/QasBtn.stories.js +0 -45
  130. package/src/components/btn-actions/QasBtnActions.stories.js +0 -77
  131. package/src/components/btn-actions/QasBtnActions.vue +0 -54
  132. package/src/components/card/QasCard.stories.js +0 -126
  133. package/src/components/checkbox-group/QasCheckboxGroup.stories.js +0 -59
  134. package/src/components/copy/QasCopy.stories.js +0 -41
  135. package/src/components/date-time-input/QasDateTimeInput.stories.js +0 -67
  136. package/src/components/debugger/QasDebugger.stories.js +0 -33
  137. package/src/components/delete/QasDelete.stories.js +0 -80
  138. package/src/components/dialog/QasDialog.stories.js +0 -139
  139. package/src/components/dialog-router/QasDialogRouter.stories.js +0 -38
  140. package/src/components/field/QasField.stories.js +0 -181
  141. package/src/components/filters/QasFilters.stories.js +0 -121
  142. package/src/components/form-generator/QasFormGenerator.stories.js +0 -115
  143. package/src/components/form-view/QasFormView.stories.js +0 -236
  144. package/src/components/gallery/QasGallery.stories.js +0 -91
  145. package/src/components/grid-generator/QasGridGenerator.stories.js +0 -138
  146. package/src/components/input/QasInput.stories.js +0 -78
  147. package/src/components/label/QasLabel.stories.js +0 -60
  148. package/src/components/layout/QasLayout.stories.js +0 -104
  149. package/src/components/list-items/QasListItems.stories.js +0 -130
  150. package/src/components/list-view/QasListView.stories.js +0 -168
  151. package/src/components/map/QasMap.stories.js +0 -75
  152. package/src/components/nested-fields/QasNestedFields.stories.js +0 -255
  153. package/src/components/numeric-input/QasNumericInput.stories.js +0 -92
  154. package/src/components/page-header/QasPageHeader.stories.js +0 -61
  155. package/src/components/password-input/QasPasswordInput.stories.js +0 -76
  156. package/src/components/password-strength-checker/QasPasswordStrengthChecker.stories.js +0 -54
  157. package/src/components/profile/QasProfile.stories.js +0 -131
  158. package/src/components/resizer/QasResizer.stories.js +0 -43
  159. package/src/components/search-box/QasSearchBox.stories.js +0 -111
  160. package/src/components/select/QasSelect.stories.js +0 -113
  161. package/src/components/select-list/QasSelectList.stories.js +0 -153
  162. package/src/components/signature-pad/QasSignaturePad.stories.js +0 -51
  163. package/src/components/signature-uploader/QasSignatureUploader.stories.js +0 -69
  164. package/src/components/single-view/QasSingleView.stories.js +0 -130
  165. package/src/components/sortable/QasSortable.stories.js +0 -80
  166. package/src/components/table-generator/QasTableGenerator.stories.js +0 -116
  167. package/src/components/tabs-generator/QasTabsGenerator.stories.js +0 -145
  168. package/src/components/text-truncate/QasTextTruncate.stories.js +0 -55
  169. package/src/components/tip/QasTip.stories.js +0 -57
  170. package/src/components/tip/QasTip.vue +0 -68
  171. package/src/components/tooltip/QasTooltip.stories.js +0 -63
  172. package/src/components/tooltip/QasTooltip.vue +0 -81
  173. package/src/components/transfer/QasTransfer.stories.js +0 -118
  174. package/src/components/uploader/QasCustomUploader.vue +0 -121
  175. package/src/components/uploader/QasUploader.stories.js +0 -139
  176. package/src/directives/Test.js +0 -13
  177. package/src/helpers/historyHandler.js +0 -52
  178. package/src/helpers/label.js +0 -3
  179. package/src/index.js +0 -249
  180. package/src/mixins/map-markers.js +0 -26
  181. package/src/mixins/unsaved-changes.js +0 -24
  182. package/src/mixins/uploader.js +0 -30
  183. package/src/mocks/json/user.json +0 -27
  184. package/src/mocks/json/users-new.json +0 -23
  185. package/src/mocks/json/users.json +0 -97
  186. package/src/mocks/storeModule.js +0 -71
  187. package/src/pages/Forbidden.vue +0 -6
  188. package/src/pages/NotFound.vue +0 -6
@@ -1,91 +0,0 @@
1
- import QasGallery from './QasGallery.vue'
2
-
3
- const noSummary = {
4
- type: { summary: null }
5
- }
6
-
7
- export default {
8
- component: QasGallery,
9
- title: 'Components/Gallery',
10
-
11
- parameters: {
12
- docs: {
13
- description: {
14
- component: 'Gallery component, with list of images and carousel.'
15
- }
16
- }
17
- },
18
-
19
- argTypes: {
20
- // Props
21
- carouselNextIcon: {
22
- description: 'Define the next image icon for carousel.'
23
- },
24
-
25
- carouselPreviousIcon: {
26
- description: 'Define the previous image icon for carousel.'
27
- },
28
-
29
- height: {
30
- description: 'Define the height of item.'
31
- },
32
-
33
- initialLength: {
34
- description: 'Define the initial quantity of items.'
35
- },
36
-
37
- items: {
38
- description: 'List of items.'
39
- },
40
-
41
- loadLength: {
42
- description: 'Define the quantity of items to load.'
43
- },
44
-
45
- showMoreLabel: {
46
- description: 'Text that will show for load more items.'
47
- },
48
-
49
- // Slots
50
- default: {
51
- description: 'Main content.',
52
- table: noSummary
53
- }
54
- }
55
- }
56
-
57
- const Template = (args, { argTypes }) => ({
58
- components: { QasGallery },
59
- props: Object.keys(argTypes),
60
- template:
61
- `<qas-box class="q-pa-lg">
62
- <qas-gallery :items="images" />
63
- </qas-box>`
64
- })
65
-
66
- const images = [
67
- 'https://cdn.pixabay.com/photo/2016/10/10/12/54/space-1728314_960_720.jpg',
68
- 'https://cdn.pixabay.com/photo/2011/12/14/12/21/orion-nebula-11107_960_720.jpg',
69
- 'https://cdn.pixabay.com/photo/2016/10/10/12/54/space-1728314_960_720.jpg',
70
- 'https://cdn.pixabay.com/photo/2011/12/14/12/21/orion-nebula-11107_960_720.jpg',
71
- 'https://cdn.pixabay.com/photo/2016/10/10/12/54/space-1728314_960_720.jpg',
72
- 'https://cdn.pixabay.com/photo/2011/12/14/12/21/orion-nebula-11107_960_720.jpg',
73
- 'https://cdn.pixabay.com/photo/2016/10/10/12/54/space-1728314_960_720.jpg',
74
- 'https://cdn.pixabay.com/photo/2011/12/14/12/21/orion-nebula-11107_960_720.jpg',
75
- 'https://cdn.pixabay.com/photo/2016/10/10/12/54/space-1728314_960_720.jpg',
76
- 'https://cdn.pixabay.com/photo/2011/12/14/12/21/orion-nebula-11107_960_720.jpg',
77
- 'https://cdn.pixabay.com/photo/2016/10/10/12/54/space-1728314_960_720.jpg',
78
- 'https://cdn.pixabay.com/photo/2011/12/14/12/21/orion-nebula-11107_960_720.jpg'
79
- ]
80
-
81
- export const Default = Template.bind({})
82
- Default.args = { images }
83
-
84
- Default.parameters = {
85
- docs: {
86
- source: {
87
- code:
88
- '<qas-gallery :photos="images" />'
89
- }
90
- }
91
- }
@@ -1,138 +0,0 @@
1
- import QasGridGenerator from './QasGridGenerator.vue'
2
-
3
- const slotDefaults = {
4
- table: {
5
- category: 'slots',
6
- defaultValue: {
7
- detail: JSON.stringify({ field: 'object' }),
8
- summary: '{}'
9
- }
10
- }
11
- }
12
-
13
- export default {
14
- component: QasGridGenerator,
15
- title: 'Components/GridGenerator',
16
-
17
- parameters: {
18
- docs: {
19
- description: {
20
- component: 'Generates a grid with header (as `fields`) and content (as `results`).'
21
- }
22
- }
23
- },
24
-
25
- argTypes: {
26
- // Props
27
- columns: {
28
- description: 'Define size of each column.',
29
- table: {
30
- defaultValue: { summary: '[]' }
31
- }
32
- },
33
-
34
- contentClass: {
35
- description: 'CSS classes for each result value.'
36
- },
37
-
38
- fields: {
39
- description: 'Define header value for each `field`.'
40
- },
41
-
42
- gutter: {
43
- description: 'Gutter space by Quasar convention. `q-col-gutter-{$gutter}`.'
44
- },
45
-
46
- headerClass: {
47
- description: 'CSS classes for each header value.'
48
- },
49
-
50
- hideEmptyResult: {
51
- description: 'Omits cell when result value is empty.'
52
- },
53
-
54
- result: {
55
- description: 'Define result value for each `field`.'
56
- },
57
-
58
- // Slots
59
- default: {
60
- table: { disable: true }
61
- },
62
-
63
- content: {
64
- description: 'Content value defaults.',
65
- ...slotDefaults
66
- },
67
-
68
- 'field-[field.name]': {
69
- description: 'Each cell inside `fields` is a slot.',
70
- ...slotDefaults
71
- },
72
-
73
- header: {
74
- description: 'Header value defaults.',
75
- ...slotDefaults
76
- }
77
- }
78
- }
79
-
80
- const Template = (args, { argTypes }) => ({
81
- components: { QasGridGenerator },
82
- props: Object.keys(argTypes),
83
- template:
84
- '<qas-grid-generator v-bind="$props" />'
85
- })
86
-
87
- const fields = {
88
- name: { name: 'name', label: 'Full name', type: 'text' },
89
- email: { name: 'email', label: 'E-mail', type: 'email' },
90
- phone: { name: 'phone', label: 'Phone', type: 'text', mask: 'phone' },
91
- gender: { name: 'gender', label: 'Gender', type: 'text' },
92
- document: { name: 'document', label: 'Document', type: 'text', mask: 'document' },
93
- address: { name: 'address', label: 'Address', type: 'text' }
94
- }
95
-
96
- const result = {
97
- name: 'John Appleseed',
98
- email: 'john.appleseed@example.com',
99
- phone: '99999999999',
100
- gender: 'Male',
101
- document: '99999999999',
102
- address: '747 Austen View'
103
- }
104
-
105
- const columns = {
106
- name: { col: 12, sm: 6 },
107
- email: { col: 12, sm: 6 },
108
- phone: { col: 12, sm: 6 },
109
- gender: { col: 12, sm: 6 },
110
- document: { col: 12 },
111
- address: { col: 12 }
112
- }
113
-
114
- export const Default = Template.bind({})
115
- Default.args = {
116
- columns: [],
117
- fields,
118
- result
119
- }
120
-
121
- Default.parameters = {
122
- docs: {
123
- source: { code: '<qas-grid-generator :field="fields" :result="result" />' }
124
- }
125
- }
126
-
127
- export const CustomColumns = Template.bind({})
128
- CustomColumns.args = {
129
- columns,
130
- fields,
131
- result
132
- }
133
-
134
- CustomColumns.parameters = {
135
- docs: {
136
- source: { code: `<qas-grid-generator :field="fields" :result="result" :columns="${JSON.stringify(columns)}" />` }
137
- }
138
- }
@@ -1,78 +0,0 @@
1
- import QasInput from './QasInput.vue'
2
-
3
- export default {
4
- component: QasInput,
5
- title: 'Components/Input',
6
-
7
- parameters: {
8
- docs: {
9
- description: {
10
- component: 'Extends [QInput](https://quasar.dev/vue-components/input). Can mask raw values by default.'
11
- }
12
- }
13
- },
14
-
15
- argTypes: {
16
- // Props
17
- value: {
18
- description: 'Input text value.',
19
- control: { type: null }
20
- },
21
-
22
- // Slots
23
- default: {
24
- description: 'Field main content',
25
- table: {
26
- type: { summary: null }
27
- }
28
- }
29
- }
30
- }
31
-
32
- const Template = (args, { argTypes }) => ({
33
- components: { QasInput },
34
- props: Object.keys(argTypes),
35
-
36
- data () {
37
- return {
38
- text: ''
39
- }
40
- },
41
-
42
- template:
43
- `<div>
44
- <qas-input v-bind="$props" v-model="text" />
45
- <pre v-if="text">{{ text }}</pre>
46
- </div>`
47
- })
48
-
49
- function setTemplate (mask) {
50
- const code = mask
51
- ? `<qas-input v-model="text" mask="${mask}" />`
52
- : '<qas-input v-model="text" />'
53
-
54
- return { docs: { source: { code } } }
55
- }
56
-
57
- export const Default = Template.bind({})
58
- Default.parameters = setTemplate()
59
-
60
- export const PhoneMask = Template.bind({})
61
- PhoneMask.args = { mask: 'phone' }
62
- PhoneMask.parameters = setTemplate('phone')
63
-
64
- export const DocumentMask = Template.bind({})
65
- DocumentMask.args = { mask: 'document' }
66
- DocumentMask.parameters = setTemplate('document')
67
-
68
- export const PersonalDocumentMask = Template.bind({})
69
- PersonalDocumentMask.args = { mask: 'personal-document' }
70
- PersonalDocumentMask.parameters = setTemplate('personal-document')
71
-
72
- export const CompanyDocumentMask = Template.bind({})
73
- CompanyDocumentMask.args = { mask: 'company-document' }
74
- CompanyDocumentMask.parameters = setTemplate('company-document')
75
-
76
- export const PostalCodeMask = Template.bind({})
77
- PostalCodeMask.args = { mask: 'postal-code' }
78
- PostalCodeMask.parameters = setTemplate('postal-code')
@@ -1,60 +0,0 @@
1
- import QasLabel from './QasLabel.vue'
2
-
3
- export default {
4
- component: QasLabel,
5
- title: 'Components/Label',
6
-
7
- parameters: {
8
- docs: {
9
- description: {
10
- component: 'Standardizes the display of labels for a form\'s field.'
11
- }
12
- }
13
- },
14
-
15
- argTypes: {
16
- // Events
17
- label: {
18
- description: 'Text to be displayed.'
19
- },
20
-
21
- margin: {
22
- description: 'Margin spaces.'
23
- },
24
-
25
- quantity: {
26
- description: 'Number to be displayed after label, inside parentheses. E.g. Groups (9).'
27
- },
28
-
29
- // Slots
30
- default: {
31
- description: 'Main content, will be replace label prop.',
32
- table: {
33
- defaultValue: {
34
- detail: JSON.stringify({ formattedLabel: 'string' }),
35
- summary: '{}'
36
- },
37
- type: { summary: null }
38
- }
39
- }
40
- }
41
- }
42
-
43
- const Template = (args, { argTypes }) => ({
44
- components: { QasLabel },
45
- props: Object.keys(argTypes),
46
-
47
- template:
48
- '<qas-label v-bind="$props" />'
49
- })
50
-
51
- export const Default = Template.bind({})
52
- Default.args = {
53
- label: 'My label!'
54
- }
55
-
56
- export const Quantity = Template.bind({})
57
- Quantity.args = {
58
- label: 'My label, but with quantity!',
59
- quantity: 10
60
- }
@@ -1,104 +0,0 @@
1
- import QasLayout from './QasLayout.vue'
2
-
3
- export default {
4
- component: QasLayout,
5
- title: 'Components/Layout',
6
-
7
- parameters: {
8
- docs: {
9
- description: {
10
- component: 'Implementation of [QLayout](https://quasar.dev/layout/layout#introduction) with [QasAppMenu](http://localhost:6006/?path=/docs/components-appmenu--default) and [QasAppBar](http://localhost:6006/?path=/docs/components-appbar--default).'
11
- }
12
- }
13
- },
14
-
15
- argTypes: {
16
- // Props
17
- appMenuProps: {
18
- description: '[QasAppMenu props](http://localhost:6006/?path=/docs/components-appmenu--default).'
19
- },
20
-
21
- appBarProps: {
22
- description: '[QasAppBar props](http://localhost:6006/?path=/docs/components-appbar--default).'
23
- },
24
-
25
- appMenuEvents: {
26
- description: '[QasAppMenu events](http://localhost:6006/?path=/docs/components-appmenu--default).'
27
- },
28
-
29
- appBarEvents: {
30
- description: '[QasAppBar events](http://localhost:6006/?path=/docs/components-appbar--default).'
31
- },
32
-
33
- value: {
34
- description: 'Model value for toggle drawer.'
35
- },
36
-
37
- // Slots
38
- 'app-bar': {
39
- description: 'header slot.'
40
- },
41
-
42
- 'app-menu': {
43
- description: 'left side menu.'
44
- },
45
-
46
- default: {
47
- description: 'page container with router-view.'
48
- },
49
-
50
- // events
51
- input: {
52
- description: 'input model event for toggle drawer.'
53
- }
54
- }
55
- }
56
-
57
- const Template = (args, { argTypes }) => ({
58
- components: { QasLayout },
59
- props: Object.keys(argTypes),
60
-
61
- template: '<qas-layout v-bind="$props" />'
62
- })
63
-
64
- export const Default = Template.bind({})
65
-
66
- Default.args = {
67
- appMenuProps: {
68
- items: [
69
- {
70
- label: 'Dialog',
71
- icon: 'o_home',
72
- to: { path: '/dialog-form' }
73
- },
74
-
75
- {
76
- label: 'Teste expansivo',
77
- icon: 'o_edit'
78
- }
79
- ],
80
-
81
- modules: [
82
- {
83
- label: 'Modulo de teste',
84
- value: 'test',
85
- path: 'http://localhost:8080'
86
- },
87
- {
88
- label: 'Segundo modulo de teste',
89
- value: 'test-2',
90
- path: 'https://google.com'
91
- }
92
- ]
93
- },
94
-
95
- appBarProps: {
96
- isAuth: true,
97
- title: 'Some title',
98
- user: {
99
- photo: 'https://www.abc.net.au/cm/lb/6367016/data/alan2c-see-the-person-data.jpg',
100
- name: 'Eduardo Lima',
101
- email: 'eduardolima@gmail.com'
102
- }
103
- }
104
- }
@@ -1,130 +0,0 @@
1
- import QasListItems from './QasListItems.vue'
2
-
3
- const slotDefaults = {
4
- defaultValue: {
5
- detail: JSON.stringify({
6
- item: 'object',
7
- index: 'number'
8
- }),
9
- summary: '{}'
10
- },
11
-
12
- type: {
13
- summary: null
14
- }
15
- }
16
-
17
- export default {
18
- component: QasListItems,
19
- title: 'Components/ListItems',
20
-
21
- parameters: {
22
- docs: {
23
- description: {
24
- component: 'Extends [QList and QItem](https://v1.quasar.dev/vue-components/list-and-list-items#qlist-api) from quasar for creating a list of items.'
25
- }
26
- }
27
- },
28
-
29
- argTypes: {
30
- // Props
31
- iconProps: {
32
- description: 'Icon props.'
33
- },
34
-
35
- list: {
36
- description: 'Array of object.'
37
- },
38
-
39
- redirectKey: {
40
- control: null,
41
- description: 'Key to define the id redirect.'
42
- },
43
-
44
- useIconRedirect: {
45
- description: 'Only redirect when clicked on icon.'
46
- },
47
-
48
- to: {
49
- description: 'Router config like `name`.'
50
- },
51
-
52
- // Slots
53
-
54
- item: {
55
- description: 'Main item slot.',
56
- table: {
57
- ...slotDefaults
58
- }
59
- },
60
-
61
- 'item-section-left': {
62
- description: 'Left section slot.',
63
- table: {
64
- ...slotDefaults
65
- }
66
- },
67
-
68
- 'item-section-side': {
69
- description: 'Side section slot (used for actions).',
70
- table: {
71
- ...slotDefaults
72
- }
73
- }
74
- }
75
- }
76
-
77
- function Generate (template) {
78
- return (args, { argTypes }) => ({
79
- components: { QasListItems },
80
- props: Object.keys(argTypes),
81
- template
82
- })
83
- }
84
-
85
- const args = {
86
- list: [
87
- {
88
- name: 'item 1',
89
- email: 'email1@example.com',
90
- uuid: 'uuid1'
91
- },
92
- {
93
- name: 'item 2',
94
- email: 'email2@example.com',
95
- uuid: 'uuid2'
96
- },
97
- {
98
- name: 'item 3',
99
- email: 'email3@example.com',
100
- uuid: 'uuid3'
101
- }
102
- ],
103
-
104
- useIconRedirect: true
105
- }
106
-
107
- const itemTemplate = (
108
- `
109
- <qas-list-items v-bind="$props">
110
- <template #item-section-left="{ item, index }">
111
- <div>
112
- name: {{ item.name }}
113
- index: {{ index }}
114
- </div>
115
- </template>
116
- </qas-list-items>
117
- `
118
- )
119
-
120
- export const Item = Generate(itemTemplate).bind({})
121
-
122
- Item.args = args
123
-
124
- Item.parameters = {
125
- docs: {
126
- source: {
127
- code: itemTemplate
128
- }
129
- }
130
- }