@mythpe/quasar-ui-qui 0.2.42 → 0.2.44

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 (59) hide show
  1. package/package.json +3 -1
  2. package/src/boot/register.ts +1 -2
  3. package/src/components/form/MOtp.vue +2 -1
  4. package/src/components/form/MSelect.vue +7 -2
  5. package/src/components/index.ts +2 -1
  6. package/src/components/map/MMap.vue +69 -0
  7. package/src/components/map/index.ts +12 -0
  8. package/src/components/modal/MDialog.vue +2 -0
  9. package/src/components/sar/MSarString.vue +2 -1
  10. package/src/global.d.ts +16 -0
  11. package/src/plugin/defineAsyncComponents.ts +2 -0
  12. package/src/types/api/MAvatarViewer.d.ts +2 -1
  13. package/src/types/api/MBlock.d.ts +29 -0
  14. package/src/types/api/MBtn.d.ts +25 -0
  15. package/src/types/api/MCheckbox.d.ts +33 -0
  16. package/src/types/api/MCkeditor.d.ts +40 -0
  17. package/src/types/api/MCol.d.ts +55 -0
  18. package/src/types/api/MColumn.d.ts +16 -0
  19. package/src/types/api/MContainer.d.ts +19 -0
  20. package/src/types/api/MDate.d.ts +15 -0
  21. package/src/types/api/MDialog.d.ts +18 -0
  22. package/src/types/api/MEditor.d.ts +13 -0
  23. package/src/types/api/MField.d.ts +12 -0
  24. package/src/types/api/MFile.d.ts +21 -0
  25. package/src/types/api/MForm.d.ts +55 -0
  26. package/src/types/api/MHelpRow.d.ts +19 -0
  27. package/src/types/api/MHidden.d.ts +20 -0
  28. package/src/types/api/MHiddenInput.d.ts +26 -0
  29. package/src/types/api/MInput.d.ts +159 -0
  30. package/src/types/api/MInputFieldControl.d.ts +16 -0
  31. package/src/types/api/MInputLabel.d.ts +17 -0
  32. package/src/types/api/MMap.d.ts +24 -0
  33. package/src/types/api/MModalMenu.d.ts +17 -0
  34. package/src/types/api/MOptions.d.ts +62 -0
  35. package/src/types/api/MOtp.d.ts +52 -0
  36. package/src/types/api/MPassword.d.ts +20 -0
  37. package/src/types/api/MPicker.d.ts +41 -0
  38. package/src/types/api/MRadio.d.ts +13 -0
  39. package/src/types/api/MRow.d.ts +24 -0
  40. package/src/types/api/MSar.d.ts +25 -0
  41. package/src/types/api/MSelect.d.ts +1 -1
  42. package/src/types/api/MSignaturePad.d.ts +2 -1
  43. package/src/types/api/MTime.d.ts +12 -0
  44. package/src/types/api/MToggle.d.ts +39 -0
  45. package/src/types/api/MTooltip.d.ts +136 -0
  46. package/src/types/api/MTypingString.d.ts +24 -0
  47. package/src/types/api/MUploader.d.ts +163 -0
  48. package/src/types/components.d.ts +38 -984
  49. package/src/types/google.d.ts +19 -0
  50. package/src/types/index.d.ts +86 -2
  51. package/src/types/m-datatable.d.ts +3 -1
  52. package/src/types/{myth-api.ts → myth-api.d.ts} +9 -2
  53. package/src/types/plugin-props-option.d.ts +24 -26
  54. package/src/types/theme.d.ts +3 -1
  55. package/src/utils/createMyth.ts +13 -15
  56. package/src/utils/vue-plugin.ts +5 -3
  57. package/tsconfig.json +5 -1
  58. package/src/types/install-options.d.ts +0 -14
  59. package/src/types/m-geolocation.d.ts +0 -16
@@ -0,0 +1,136 @@
1
+ /*
2
+ * MyTh Ahmed Faiz Copyright © 2016-2025 All rights reserved.
3
+ * Email: mythpe@gmail.com
4
+ * Mobile: +966590470092
5
+ * Website: https://www.4myth.com
6
+ * Github: https://github.com/mythpe
7
+ */
8
+
9
+ import type { QTooltipProps } from 'quasar'
10
+ import type { VNode } from 'vue'
11
+
12
+ export type MTooltipProps = Partial<QTooltipProps> & {
13
+ /**
14
+ * One of Quasar's embedded transitions
15
+ * Default value: jump-down
16
+ */
17
+ transitionShow?: string | undefined;
18
+ /**
19
+ * One of Quasar's embedded transitions
20
+ * Default value: jump-up
21
+ */
22
+ transitionHide?: string | undefined;
23
+ /**
24
+ * Transition duration (in milliseconds, without unit)
25
+ * Default value: 300
26
+ */
27
+ transitionDuration?: string | number | undefined;
28
+ /**
29
+ * Model of the component defining shown/hidden state; Either use this property (along with a listener for 'update:model-value' event) OR use v-model directive
30
+ */
31
+ modelValue?: boolean;
32
+ /**
33
+ * The maximum height of the Tooltip; Size in CSS units, including unit name
34
+ */
35
+ maxHeight?: string | undefined;
36
+ /**
37
+ * The maximum width of the Tooltip; Size in CSS units, including unit name
38
+ */
39
+ maxWidth?: string | undefined;
40
+ /**
41
+ * Two values setting the starting position or anchor point of the Tooltip relative to its target
42
+ * Default value: bottom middle
43
+ */
44
+ anchor?:
45
+ | 'top left'
46
+ | 'top middle'
47
+ | 'top right'
48
+ | 'top start'
49
+ | 'top end'
50
+ | 'center left'
51
+ | 'center middle'
52
+ | 'center right'
53
+ | 'center start'
54
+ | 'center end'
55
+ | 'bottom left'
56
+ | 'bottom middle'
57
+ | 'bottom right'
58
+ | 'bottom start'
59
+ | 'bottom end'
60
+ | undefined;
61
+ /**
62
+ * Two values setting the Tooltip's own position relative to its target
63
+ * Default value: top middle
64
+ */
65
+ self?:
66
+ | 'top left'
67
+ | 'top middle'
68
+ | 'top right'
69
+ | 'top start'
70
+ | 'top end'
71
+ | 'center left'
72
+ | 'center middle'
73
+ | 'center right'
74
+ | 'center start'
75
+ | 'center end'
76
+ | 'bottom left'
77
+ | 'bottom middle'
78
+ | 'bottom right'
79
+ | 'bottom start'
80
+ | 'bottom end'
81
+ | undefined;
82
+ /**
83
+ * An array of two numbers to offset the Tooltip horizontally and vertically in pixels
84
+ * Default value: [14, 14]
85
+ */
86
+ offset?: readonly any[] | undefined;
87
+ /**
88
+ * CSS selector or DOM element to be used as a custom scroll container instead of the auto detected one
89
+ */
90
+ scrollTarget?: Element | string | undefined;
91
+ /**
92
+ * Configure a target element to trigger Tooltip toggle; 'true' means it enables the parent DOM element, 'false' means it disables attaching events to any DOM elements; By using a String (CSS selector) it attaches the events to the specified DOM element (if it exists)
93
+ * Default value: true
94
+ */
95
+ target?: boolean | string | undefined;
96
+ /**
97
+ * Skips attaching events to the target DOM element (that trigger the element to get shown)
98
+ */
99
+ noParentEvent?: boolean | undefined;
100
+ /**
101
+ * Configure Tooltip to appear with delay
102
+ */
103
+ delay?: number | undefined;
104
+ /**
105
+ * Configure Tooltip to disappear with delay
106
+ */
107
+ hideDelay?: number | undefined;
108
+ /**
109
+ * Emitted when showing/hidden state changes; Is also used by v-model
110
+ * @param value New state (showing/hidden)
111
+ */
112
+ 'onUpdate:modelValue'?: (value: boolean) => void;
113
+ /**
114
+ * Emitted after component has triggered show()
115
+ * @param evt JS event object
116
+ */
117
+ onShow?: (evt: Event) => void;
118
+ /**
119
+ * Emitted when component triggers show() but before it finishes doing it
120
+ * @param evt JS event object
121
+ */
122
+ onBeforeShow?: (evt: Event) => void;
123
+ /**
124
+ * Emitted after component has triggered hide()
125
+ * @param evt JS event object
126
+ */
127
+ onHide?: (evt: Event) => void;
128
+ /**
129
+ * Emitted when component triggers hide() but before it finishes doing it
130
+ * @param evt JS event object
131
+ */
132
+ onBeforeHide?: (evt: Event) => void;
133
+ }
134
+ export type MTooltipSlots = {
135
+ default: () => VNode[];
136
+ }
@@ -0,0 +1,24 @@
1
+ /*
2
+ * MyTh Ahmed Faiz Copyright © 2016-2025 All rights reserved.
3
+ * Email: mythpe@gmail.com
4
+ * Mobile: +966590470092
5
+ * Website: https://www.4myth.com
6
+ * Github: https://github.com/mythpe
7
+ */
8
+
9
+ import type { TypedOptions } from 'typed.js'
10
+ import type { VNode } from 'vue'
11
+
12
+ export type MTypingStringProps = {
13
+ name: number | string;
14
+ tag?: string;
15
+ string: string | string[];
16
+ loop?: TypedOptions['loop'];
17
+ typeSpeed?: TypedOptions['typeSpeed'];
18
+ backDelay?: TypedOptions['backDelay'];
19
+ fadeOut?: TypedOptions['fadeOut'];
20
+ options?: Omit<TypedOptions, 'loop' | 'typeSpeed' | 'backDelay' | 'fadeOut'>;
21
+ }
22
+ export type MTypingStringSlots = {
23
+ default?: () => VNode[];
24
+ }
@@ -0,0 +1,163 @@
1
+ /*
2
+ * MyTh Ahmed Faiz Copyright © 2016-2025 All rights reserved.
3
+ * Email: mythpe@gmail.com
4
+ * Mobile: +966590470092
5
+ * Website: https://www.4myth.com
6
+ * Github: https://github.com/mythpe
7
+ */
8
+
9
+ import type { HelpersStubSchema } from '../api-helpers'
10
+ import type { QUploaderProps, QUploaderSlots } from 'quasar'
11
+ import type { VNode } from 'vue'
12
+ import type { MColProps } from './MCol'
13
+ import type { BaseInputsProps } from './MInput'
14
+
15
+ export type MUploaderMediaItem = {
16
+ id: number;
17
+ value: number;
18
+ name: string;
19
+ file_name: string;
20
+ type: string;
21
+ size: number;
22
+ size_to_string: string;
23
+ url: string;
24
+ download_url: string;
25
+ icon: string;
26
+ description: string;
27
+ attachment_type: string;
28
+ attachment_type_id: number;
29
+ attachment_type_id_to_string: string;
30
+ user_id: number | null;
31
+ user_id_to_string: string;
32
+ order_column: number;
33
+ [k: string]: any;
34
+ };
35
+ export type MUploaderServiceType = Pick<HelpersStubSchema, 'getUploadAttachmentsUrl' | 'updateAttachment' | 'uploadAttachments' | 'deleteAttachment'>
36
+ export type MUploaderProps = Omit<QUploaderProps, 'formFields' | 'headers' | 'url'> & MColProps & Pick<BaseInputsProps, 'fieldOptions'> & {
37
+ /**
38
+ * Name fo field input, Attachments key name.
39
+ * Default is: 'attachments'
40
+ */
41
+ name?: string;
42
+ /**
43
+ * Put component in disabled mode
44
+ */
45
+ disable?: boolean;
46
+ /**
47
+ * Put component in readonly mode
48
+ */
49
+ readonly?: boolean;
50
+ /**
51
+ * Comma separated list of unique file type specifiers. Maps to 'accept' attribute of native input type=file element
52
+ */
53
+ accept?: string;
54
+ /**
55
+ * Support for uploading images
56
+ */
57
+ images?: boolean;
58
+ /**
59
+ * Support for uploading svg
60
+ */
61
+ svg?: boolean;
62
+ /**
63
+ * Support for uploading videos
64
+ */
65
+ video?: boolean;
66
+ /**
67
+ * Support for uploading pdf
68
+ */
69
+ pdf?: boolean;
70
+ /**
71
+ * Support for uploading excel
72
+ */
73
+ excel?: boolean;
74
+ /**
75
+ * Upload files immediately when added
76
+ */
77
+ autoUpload?: boolean;
78
+ /**
79
+ * Field name for each file upload; This goes into the following header: 'Content-Disposition: form-data; name="__HERE__"; filename="somefile.png"; If using a function then for best performance, reference it from your scope and do not define it inline
80
+ * Default value: (file) => file.name
81
+ * @param files The current file being processed
82
+ * @returns Field name for the current file upload
83
+ */
84
+ fieldName?: string | ((files: File) => string);
85
+ /**
86
+ * Collection send to API
87
+ */
88
+ collection?: string | number | symbol;
89
+ /**
90
+ * Field Attachment Type
91
+ */
92
+ attachmentType?: any;
93
+ /**
94
+ * return attachments after upload;
95
+ * Default current collection name;
96
+ */
97
+ returnType?: 'all' | 'current' | undefined;
98
+ /**
99
+ * Object with additional fields definitions (used by Form to be uploaded);
100
+ */
101
+ formFields?: Record<string, any>;
102
+ /**
103
+ * Extra headers
104
+ */
105
+ headers?: Record<string, any>;
106
+ /**
107
+ * Label for the uploader
108
+ */
109
+ label?: string | null | undefined;
110
+ /**
111
+ * The Attachments list.
112
+ */
113
+ modelValue?: MUploaderMediaItem[];
114
+ /**
115
+ * Hide delete media items from uploader, no delete media For API
116
+ */
117
+ hideDeleteMedia?: boolean;
118
+ /**
119
+ * Show update button of media.
120
+ */
121
+ updateBtn?: boolean;
122
+ /**
123
+ * User APi service for upload & delete
124
+ */
125
+ service: string | MUploaderServiceType;
126
+ /**
127
+ * The ID of model will use in attachments
128
+ */
129
+ modelId?: string | number | undefined;
130
+ uploading?: boolean | undefined;
131
+ defaultFileIcon?: string | undefined;
132
+ deleteMediaIcon?: string | undefined;
133
+ uploadFilesIcon?: string | undefined;
134
+ pickFilesIcon?: string | undefined;
135
+ removeUploadedIcon?: string | undefined;
136
+ removeQueuedIcon?: string | undefined;
137
+ abortUploadIcon?: string | undefined;
138
+ downloadFileIcon?: string | undefined;
139
+ errorsIcon?: string | undefined;
140
+ iconsSize?: string | undefined;
141
+ displayMode?: 'list' | 'card' | undefined;
142
+ shadow?: string | undefined;
143
+ /**
144
+ * Media Item Label Field.
145
+ * Default is: name.
146
+ */
147
+ mediaLabel?: string | undefined;
148
+ }
149
+ export type MUploaderSlots = QUploaderSlots & {
150
+ /**
151
+ * Field main content
152
+ */
153
+ default: () => VNode[];
154
+ /**
155
+ * list of item will be display
156
+ */
157
+ // list: (scope: { item: MUploaderMediaItem, index: number }) => VNode[];
158
+ /**
159
+ * list of item will be display
160
+ */
161
+ 'item-list': (scope: { item: MUploaderMediaItem, index: number }) => VNode[];
162
+ }
163
+ export type MUploaderXhrInfo = { files: readonly any[]; xhr: any; }