@mythpe/quasar-ui-qui 0.2.43 → 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.
- package/package.json +3 -1
- package/src/boot/register.ts +1 -2
- package/src/components/index.ts +2 -1
- package/src/components/map/MMap.vue +69 -0
- package/src/components/map/index.ts +12 -0
- package/src/global.d.ts +16 -0
- package/src/plugin/defineAsyncComponents.ts +2 -0
- package/src/types/api/MAvatarViewer.d.ts +2 -1
- package/src/types/api/MBlock.d.ts +29 -0
- package/src/types/api/MBtn.d.ts +25 -0
- package/src/types/api/MCheckbox.d.ts +33 -0
- package/src/types/api/MCkeditor.d.ts +40 -0
- package/src/types/api/MCol.d.ts +55 -0
- package/src/types/api/MColumn.d.ts +16 -0
- package/src/types/api/MContainer.d.ts +19 -0
- package/src/types/api/MDate.d.ts +15 -0
- package/src/types/api/MDialog.d.ts +18 -0
- package/src/types/api/MEditor.d.ts +13 -0
- package/src/types/api/MField.d.ts +12 -0
- package/src/types/api/MFile.d.ts +21 -0
- package/src/types/api/MForm.d.ts +55 -0
- package/src/types/api/MHelpRow.d.ts +19 -0
- package/src/types/api/MHidden.d.ts +20 -0
- package/src/types/api/MHiddenInput.d.ts +26 -0
- package/src/types/api/MInput.d.ts +159 -0
- package/src/types/api/MInputFieldControl.d.ts +16 -0
- package/src/types/api/MInputLabel.d.ts +17 -0
- package/src/types/api/MMap.d.ts +24 -0
- package/src/types/api/MModalMenu.d.ts +17 -0
- package/src/types/api/MOptions.d.ts +62 -0
- package/src/types/api/MOtp.d.ts +52 -0
- package/src/types/api/MPassword.d.ts +20 -0
- package/src/types/api/MPicker.d.ts +41 -0
- package/src/types/api/MRadio.d.ts +13 -0
- package/src/types/api/MRow.d.ts +24 -0
- package/src/types/api/MSar.d.ts +25 -0
- package/src/types/api/MSelect.d.ts +1 -1
- package/src/types/api/MSignaturePad.d.ts +2 -1
- package/src/types/api/MTime.d.ts +12 -0
- package/src/types/api/MToggle.d.ts +39 -0
- package/src/types/api/MTooltip.d.ts +136 -0
- package/src/types/api/MTypingString.d.ts +24 -0
- package/src/types/api/MUploader.d.ts +163 -0
- package/src/types/components.d.ts +38 -984
- package/src/types/google.d.ts +19 -0
- package/src/types/index.d.ts +86 -2
- package/src/types/m-datatable.d.ts +3 -1
- package/src/types/{myth-api.ts → myth-api.d.ts} +9 -2
- package/src/types/plugin-props-option.d.ts +24 -26
- package/src/types/theme.d.ts +3 -1
- package/src/utils/createMyth.ts +13 -15
- package/src/utils/vue-plugin.ts +5 -3
- package/tsconfig.json +5 -1
- package/src/types/install-options.d.ts +0 -14
- package/src/types/m-geolocation.d.ts +0 -16
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mythpe/quasar-ui-qui",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.44",
|
|
4
4
|
"description": "MyTh Quasar UI Kit App Extension",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "MyTh Ahmed Faiz",
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
"typed.js": "^2.1.0",
|
|
39
39
|
"vee-validate": "^4.14.7",
|
|
40
40
|
"vue-i18n": "^11.1.2",
|
|
41
|
+
"vue3-google-map": "^0.22.0",
|
|
41
42
|
"vue3-signature": "^0.2.4"
|
|
42
43
|
},
|
|
43
44
|
"devDependencies": {
|
|
@@ -48,6 +49,7 @@
|
|
|
48
49
|
"@rollup/plugin-node-resolve": "^15.3.0",
|
|
49
50
|
"@rollup/plugin-replace": "^6.0.1",
|
|
50
51
|
"@types/express": "^5.0.0",
|
|
52
|
+
"@types/google.maps": "^3.58.1",
|
|
51
53
|
"@types/node": "^22.10.1",
|
|
52
54
|
"@types/pluralize": "^0.0.33",
|
|
53
55
|
"@typescript-eslint/eslint-plugin": "^7.16.0",
|
package/src/boot/register.ts
CHANGED
package/src/components/index.ts
CHANGED
|
@@ -9,10 +9,11 @@
|
|
|
9
9
|
export * from './datatable'
|
|
10
10
|
export * from './form'
|
|
11
11
|
export * from './grid'
|
|
12
|
+
export * from './map'
|
|
12
13
|
export * from './modal'
|
|
13
14
|
export * from './parials'
|
|
14
15
|
export * from './sar'
|
|
15
|
-
export * from './typography'
|
|
16
16
|
export * from './transition'
|
|
17
|
+
export * from './typography'
|
|
17
18
|
|
|
18
19
|
export default {}
|
|
@@ -0,0 +1,69 @@
|
|
|
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
|
+
<script lang="ts" setup>
|
|
10
|
+
|
|
11
|
+
import { computed } from 'vue'
|
|
12
|
+
import type { CoordsLatLng } from '../../types'
|
|
13
|
+
import type { MMapProps } from '../../types/api/MMap'
|
|
14
|
+
import { GoogleMap } from 'vue3-google-map'
|
|
15
|
+
import { useMyth } from '../../composable'
|
|
16
|
+
|
|
17
|
+
const props = defineProps<MMapProps>()
|
|
18
|
+
const { google: googleOptions } = useMyth()
|
|
19
|
+
const apiKey = computed(() => googleOptions.value.apiKey)
|
|
20
|
+
|
|
21
|
+
const defZoom = 17
|
|
22
|
+
const defWidth = '100%'
|
|
23
|
+
const defHeight = '250px'
|
|
24
|
+
const defLanguage = 'ar'
|
|
25
|
+
|
|
26
|
+
const getZoom = computed(() => {
|
|
27
|
+
return props.zoom ? parseInt(props.zoom.toString()) : defZoom
|
|
28
|
+
})
|
|
29
|
+
const width = computed<string>(() => {
|
|
30
|
+
const v = props.width || defWidth
|
|
31
|
+
return typeof v === 'number' ? `${v}px` : v
|
|
32
|
+
})
|
|
33
|
+
const height = computed<string>(() => {
|
|
34
|
+
const v = props.width || defHeight
|
|
35
|
+
return typeof v === 'number' ? `${v}px` : v
|
|
36
|
+
})
|
|
37
|
+
const getLanguage = computed(() => props.language || defLanguage)
|
|
38
|
+
const getCenter = computed<CoordsLatLng>(() => {
|
|
39
|
+
// if (props.center?.lat && props.center?.lng) {
|
|
40
|
+
// return props.center
|
|
41
|
+
// }
|
|
42
|
+
return {
|
|
43
|
+
lat: 24.603885,
|
|
44
|
+
lng: 46.7124333
|
|
45
|
+
}
|
|
46
|
+
})
|
|
47
|
+
const onClickMap = () => {
|
|
48
|
+
//
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
defineOptions({
|
|
52
|
+
name: 'MMap',
|
|
53
|
+
inheritAttrs: !1
|
|
54
|
+
})
|
|
55
|
+
</script>
|
|
56
|
+
|
|
57
|
+
<template>
|
|
58
|
+
<GoogleMap
|
|
59
|
+
:api-key="apiKey"
|
|
60
|
+
:center="getCenter"
|
|
61
|
+
:language="getLanguage"
|
|
62
|
+
:style="{width, height}"
|
|
63
|
+
:zoom="getZoom"
|
|
64
|
+
v-bind="$attrs"
|
|
65
|
+
@click="onClickMap"
|
|
66
|
+
>
|
|
67
|
+
<!-- -->
|
|
68
|
+
</GoogleMap>
|
|
69
|
+
</template>
|
|
@@ -0,0 +1,12 @@
|
|
|
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
|
+
import MMap from './MMap.vue'
|
|
9
|
+
|
|
10
|
+
export { MMap }
|
|
11
|
+
|
|
12
|
+
export default {}
|
package/src/global.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
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
|
+
/// <reference types="google.maps" />
|
|
10
|
+
/// <reference types="vue3-google-map/dist/types" />
|
|
11
|
+
|
|
12
|
+
import '@types/google.maps'
|
|
13
|
+
|
|
14
|
+
declare global {
|
|
15
|
+
const google: typeof import('google.maps')
|
|
16
|
+
}
|
|
@@ -60,4 +60,6 @@ export const defineAsyncComponents = function (app: App) {
|
|
|
60
60
|
// Utils.
|
|
61
61
|
app.component('MSarIcon', defineAsyncComponent(() => import('../components/sar/MSarIcon.vue')))
|
|
62
62
|
app.component('MSarString', defineAsyncComponent(() => import('../components/sar/MSarString.vue')))
|
|
63
|
+
// Map
|
|
64
|
+
app.component('MMap', defineAsyncComponent(() => import('../components/map/MMap.vue')))
|
|
63
65
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { NamedColor, QAvatarProps, QAvatarSlots, QImgProps } from 'quasar'
|
|
2
2
|
import type { VNode } from 'vue'
|
|
3
|
-
import type {
|
|
3
|
+
import type { MColProps } from './MCol'
|
|
4
|
+
import type { InputRulesContext } from './MInput'
|
|
4
5
|
|
|
5
6
|
export type MAvatarViewerModelValue = File | null | undefined;
|
|
6
7
|
|
|
@@ -0,0 +1,29 @@
|
|
|
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 { ThemeShadow, ThemeSize } from '../theme'
|
|
10
|
+
import type { VNode } from 'vue'
|
|
11
|
+
|
|
12
|
+
export type MBlockProps = {
|
|
13
|
+
/**
|
|
14
|
+
* Size of the padding block.
|
|
15
|
+
* Default: 'md'
|
|
16
|
+
*/
|
|
17
|
+
size?: ThemeSize | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* Rounded block
|
|
20
|
+
*/
|
|
21
|
+
rounded?: boolean | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* Shadow level
|
|
24
|
+
*/
|
|
25
|
+
shadow?: ThemeShadow | undefined;
|
|
26
|
+
}
|
|
27
|
+
export type MBlockSlots = {
|
|
28
|
+
default?: () => VNode[];
|
|
29
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
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 { QBtnProps, QBtnSlots } from 'quasar'
|
|
10
|
+
import type { VNode } from 'vue'
|
|
11
|
+
|
|
12
|
+
export type MBtnProps = QBtnProps & {
|
|
13
|
+
ariaLabel?: boolean | string | null | undefined;
|
|
14
|
+
nativeLabel?: boolean | undefined;
|
|
15
|
+
}
|
|
16
|
+
export type MBtnSlots = QBtnSlots & {
|
|
17
|
+
/**
|
|
18
|
+
* Use for custom content, instead of relying on 'icon' and 'label' props
|
|
19
|
+
*/
|
|
20
|
+
default?: () => VNode[];
|
|
21
|
+
/**
|
|
22
|
+
* Override the default QSpinner when in 'loading' state
|
|
23
|
+
*/
|
|
24
|
+
loading: () => VNode[];
|
|
25
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
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 { VNode } from 'vue'
|
|
10
|
+
import type { QCheckboxProps } from 'quasar'
|
|
11
|
+
import type { BaseInputsProps, BaseInputsSlots } from './MInput'
|
|
12
|
+
|
|
13
|
+
export type BaseCheckboxProps = Omit<BaseInputsProps, 'topLabel'> & {
|
|
14
|
+
/**
|
|
15
|
+
* Input row props.
|
|
16
|
+
*/
|
|
17
|
+
rowProps?: Record<string, any>;
|
|
18
|
+
/**
|
|
19
|
+
* Input column props.
|
|
20
|
+
*/
|
|
21
|
+
colProps?: Record<string, any>;
|
|
22
|
+
}
|
|
23
|
+
export type MCheckboxProps = BaseCheckboxProps & Omit<QCheckboxProps, 'name' | 'modelValue' | 'label'>
|
|
24
|
+
export type MCheckboxSlots = Omit<BaseInputsSlots & 'top-label'> & {
|
|
25
|
+
/**
|
|
26
|
+
* VNode before field main content.
|
|
27
|
+
*/
|
|
28
|
+
before: () => VNode[];
|
|
29
|
+
/**
|
|
30
|
+
* VNode after field main content.
|
|
31
|
+
*/
|
|
32
|
+
after: () => VNode[];
|
|
33
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
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 { EditorConfig } from 'https://cdn.ckeditor.com/typings/ckeditor5.d.ts'
|
|
10
|
+
import type { BaseInputsProps, BaseInputsSlots } from './MInput'
|
|
11
|
+
|
|
12
|
+
export type MCkeditorProps = Omit<BaseInputsProps, 'hint' | 'topLabel' | 'placeholder' | 'autocomplete'> & {
|
|
13
|
+
/**
|
|
14
|
+
* Editor language.
|
|
15
|
+
* Default value: ar.
|
|
16
|
+
*/
|
|
17
|
+
lang: 'ar' | 'en';
|
|
18
|
+
/**
|
|
19
|
+
* Specifies the configuration of the editor.
|
|
20
|
+
* https://ckeditor.com/docs/ckeditor5/latest/api/module_core_editor_editorconfig-EditorConfig.html
|
|
21
|
+
*/
|
|
22
|
+
config?: (config: EditorConfig) => EditorConfig;
|
|
23
|
+
/**
|
|
24
|
+
* By default, the editor component creates a <div> container which is used as an element passed to the editor (for example, ClassicEditor#element).
|
|
25
|
+
* The element can be configured, so for example to create a <textarea>, use the following directive:
|
|
26
|
+
* tag-name="textarea"
|
|
27
|
+
* Default value: div.
|
|
28
|
+
*/
|
|
29
|
+
tagName?: string;
|
|
30
|
+
/**
|
|
31
|
+
* This directive controls the isReadOnly property of the editor.
|
|
32
|
+
* Default value: false.
|
|
33
|
+
*/
|
|
34
|
+
disabled?: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Use HTML instead of Markdown.
|
|
37
|
+
*/
|
|
38
|
+
html?: boolean;
|
|
39
|
+
}
|
|
40
|
+
export type MCkeditorSlots = BaseInputsSlots
|
|
@@ -0,0 +1,55 @@
|
|
|
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 { VNode } from 'vue'
|
|
10
|
+
|
|
11
|
+
export type ColStyleType =
|
|
12
|
+
boolean
|
|
13
|
+
| undefined
|
|
14
|
+
| string
|
|
15
|
+
| number
|
|
16
|
+
| 'auto'
|
|
17
|
+
| 'grow'
|
|
18
|
+
| 'shrink'
|
|
19
|
+
| '1'
|
|
20
|
+
| '2'
|
|
21
|
+
| '3'
|
|
22
|
+
| '4'
|
|
23
|
+
| '5'
|
|
24
|
+
| '6'
|
|
25
|
+
| '7'
|
|
26
|
+
| '8'
|
|
27
|
+
| '9'
|
|
28
|
+
| '10'
|
|
29
|
+
| '11'
|
|
30
|
+
| '12'
|
|
31
|
+
| 1
|
|
32
|
+
| 2
|
|
33
|
+
| 3
|
|
34
|
+
| 4
|
|
35
|
+
| 5
|
|
36
|
+
| 6
|
|
37
|
+
| 7
|
|
38
|
+
| 8
|
|
39
|
+
| 9
|
|
40
|
+
| 10
|
|
41
|
+
| 11
|
|
42
|
+
| 12
|
|
43
|
+
export type MColProps = {
|
|
44
|
+
auto?: boolean;
|
|
45
|
+
col?: ColStyleType;
|
|
46
|
+
xs?: ColStyleType;
|
|
47
|
+
sm?: ColStyleType;
|
|
48
|
+
md?: ColStyleType;
|
|
49
|
+
lg?: ColStyleType;
|
|
50
|
+
xl?: ColStyleType;
|
|
51
|
+
name?: string;
|
|
52
|
+
}
|
|
53
|
+
export type MColSlots = {
|
|
54
|
+
default?: () => VNode[];
|
|
55
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
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 { VNode } from 'vue'
|
|
10
|
+
|
|
11
|
+
export type MColumnProps = {
|
|
12
|
+
[key: string]: any;
|
|
13
|
+
}
|
|
14
|
+
export type MColumnSlots = {
|
|
15
|
+
default?: () => VNode[];
|
|
16
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
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 { ThemeSize } from '../theme'
|
|
10
|
+
import type { VNode } from 'vue'
|
|
11
|
+
|
|
12
|
+
export type MContainerProps = {
|
|
13
|
+
size?: ThemeSize | string | undefined;
|
|
14
|
+
dense?: boolean | undefined;
|
|
15
|
+
fluid?: boolean | undefined;
|
|
16
|
+
}
|
|
17
|
+
export type MContainerSlots = {
|
|
18
|
+
default?: () => VNode[];
|
|
19
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
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 { MPickerProps, MPickerSlots } from './MPicker'
|
|
10
|
+
|
|
11
|
+
export interface MDateProps extends Omit<MPickerProps, 'type'> {
|
|
12
|
+
type?: 'date'
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export type MDateSlots = MPickerSlots
|
|
@@ -0,0 +1,18 @@
|
|
|
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 { VNode } from 'vue'
|
|
10
|
+
import type { QDialogProps } from 'quasar'
|
|
11
|
+
|
|
12
|
+
export type MDialogProps = Partial<QDialogProps> & {
|
|
13
|
+
slide?: boolean | undefined;
|
|
14
|
+
from?: 'up' | 'down' | 'left' | 'right';
|
|
15
|
+
}
|
|
16
|
+
export type MDialogSlots = {
|
|
17
|
+
default: () => VNode[];
|
|
18
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
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 { QEditorProps, QEditorSlots } from 'quasar'
|
|
10
|
+
import type { BaseInputsProps, BaseInputsSlots } from './MInput'
|
|
11
|
+
|
|
12
|
+
export type MEditorProps = Omit<QEditorProps, 'modelValue' | 'placeholder'> & BaseInputsProps
|
|
13
|
+
export type MEditorSlots = QEditorSlots & BaseInputsSlots
|
|
@@ -0,0 +1,12 @@
|
|
|
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 { MInputProps, MInputSlots } from './MInput'
|
|
10
|
+
|
|
11
|
+
export type MFieldProps = Omit<MInputProps, 'viewMode' | 'viewModeValue' | 'fieldOptions'>
|
|
12
|
+
export type MFieldSlots = MInputSlots
|
|
@@ -0,0 +1,21 @@
|
|
|
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 { QFileProps, QFileSlots } from 'quasar'
|
|
10
|
+
import type { BaseInputsProps, BaseInputsSlots } from './MInput'
|
|
11
|
+
|
|
12
|
+
export type MFileProps = Omit<QFileProps, 'modelValue' | 'rules' | 'name' | 'label' | 'hint'> & Omit<BaseInputsProps, 'autocomplete'> & {
|
|
13
|
+
accept?: string | undefined
|
|
14
|
+
images?: boolean | string
|
|
15
|
+
svg?: boolean | string
|
|
16
|
+
video?: boolean | string
|
|
17
|
+
pdf?: boolean | string
|
|
18
|
+
excel?: boolean | string
|
|
19
|
+
dragDrop?: boolean | undefined
|
|
20
|
+
}
|
|
21
|
+
export type MFileSlots = QFileSlots & BaseInputsSlots
|
|
@@ -0,0 +1,55 @@
|
|
|
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 { FormContext, FormOptions, FormState } from 'vee-validate'
|
|
10
|
+
import type { MaybeRefOrGetter, VNode } from 'vue'
|
|
11
|
+
|
|
12
|
+
export type MFormScope = FormContext;
|
|
13
|
+
export type MFormProps = {
|
|
14
|
+
/**
|
|
15
|
+
* Form HTML element attributes.
|
|
16
|
+
*/
|
|
17
|
+
formProps?: Record<string, any>;
|
|
18
|
+
/**
|
|
19
|
+
* Default options of useForm.
|
|
20
|
+
*/
|
|
21
|
+
opts?: FormOptions<Record<string, any>>;
|
|
22
|
+
/**
|
|
23
|
+
* The target to which the page will be scrolled.
|
|
24
|
+
* Default is: Window.
|
|
25
|
+
*/
|
|
26
|
+
target?: HTMLElement | string | undefined;
|
|
27
|
+
/**
|
|
28
|
+
* Emit values instead controlled values.
|
|
29
|
+
* Default is: false.
|
|
30
|
+
*/
|
|
31
|
+
emitValues?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Watch to reset form values.
|
|
34
|
+
*/
|
|
35
|
+
readonly state?: MaybeRefOrGetter<Partial<FormState<Record<string, any>>>>;
|
|
36
|
+
/**
|
|
37
|
+
* Watch to reset form values.
|
|
38
|
+
*/
|
|
39
|
+
readonly form?: MaybeRefOrGetter<Record<string, any>>;
|
|
40
|
+
/**
|
|
41
|
+
* Watch to set form values.
|
|
42
|
+
*/
|
|
43
|
+
readonly values?: MaybeRefOrGetter<Record<string, any>>;
|
|
44
|
+
/**
|
|
45
|
+
* Watch to set form errors.
|
|
46
|
+
*/
|
|
47
|
+
readonly errors?: MaybeRefOrGetter<Record<string, string | string[]>>;
|
|
48
|
+
/**
|
|
49
|
+
* Apply padding to form.
|
|
50
|
+
*/
|
|
51
|
+
readonly padding?: boolean;
|
|
52
|
+
}
|
|
53
|
+
export type MFormSlots = {
|
|
54
|
+
default: (scope: MFormScope) => VNode[];
|
|
55
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
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 { VNode } from 'vue'
|
|
10
|
+
import type { QItemProps } from 'quasar'
|
|
11
|
+
|
|
12
|
+
export type MHelpRowProps = Partial<QItemProps> & {
|
|
13
|
+
text?: string | undefined;
|
|
14
|
+
icon?: string | undefined;
|
|
15
|
+
tooltip?: boolean | undefined;
|
|
16
|
+
}
|
|
17
|
+
export type MHelpRowSlots = {
|
|
18
|
+
default?: () => VNode[];
|
|
19
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
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 { MColProps } from './MCol'
|
|
10
|
+
import type { VNode } from 'vue'
|
|
11
|
+
import type { MHiddenInputProps } from './MHiddenInput'
|
|
12
|
+
import type { ViewModeProps } from './MInput'
|
|
13
|
+
|
|
14
|
+
export type MHiddenProps = MHiddenInputProps & Pick<ViewModeProps, 'viewMode'> & Omit<MColProps, 'name'>
|
|
15
|
+
export type MHiddenSlots = {
|
|
16
|
+
/**
|
|
17
|
+
* Field main content
|
|
18
|
+
*/
|
|
19
|
+
default: () => VNode[];
|
|
20
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
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 { VNode } from 'vue'
|
|
10
|
+
import type { QInputProps } from 'quasar'
|
|
11
|
+
|
|
12
|
+
import type { BaseInputFormProps } from './MInput'
|
|
13
|
+
|
|
14
|
+
export type MHiddenInputSlots = {
|
|
15
|
+
[key: string]: () => VNode[]
|
|
16
|
+
}
|
|
17
|
+
export type MHiddenInputProps = Pick<BaseInputFormProps, 'rules' | 'required'> & Pick<QInputProps, 'type'> & {
|
|
18
|
+
/**
|
|
19
|
+
* Input name.
|
|
20
|
+
*/
|
|
21
|
+
name: string
|
|
22
|
+
/**
|
|
23
|
+
* Input model value.
|
|
24
|
+
*/
|
|
25
|
+
modelValue?: any
|
|
26
|
+
}
|