@jvs-milkdown/components 1.2.0 → 1.2.2
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/lib/code-block/index.js +37 -2
- package/lib/code-block/index.js.map +1 -1
- package/lib/image-block/index.js +722 -137
- package/lib/image-block/index.js.map +1 -1
- package/lib/table-block/index.js +67 -44
- package/lib/table-block/index.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/code-block/config.ts +4 -0
- package/src/code-block/view/components/code-block.tsx +24 -0
- package/src/code-block/view/node-view.ts +15 -0
- package/src/image-block/config.ts +10 -0
- package/src/image-block/schema.ts +16 -0
- package/src/image-block/view/components/__tests__/image-viewer.onImageLoadError.spec.tsx +14 -0
- package/src/image-block/view/components/image-block.tsx +40 -0
- package/src/image-block/view/components/image-viewer.tsx +667 -98
- package/src/image-block/view/index.ts +42 -0
- package/src/table-block/view/component.tsx +31 -14
- package/src/table-block/view/operation.ts +49 -30
- package/lib/__internal__/components/icon.d.ts +0 -24
- package/lib/__internal__/components/icon.d.ts.map +0 -1
- package/lib/__internal__/components/image-input.d.ts +0 -17
- package/lib/__internal__/components/image-input.d.ts.map +0 -1
- package/lib/__internal__/keep-alive.d.ts +0 -2
- package/lib/__internal__/keep-alive.d.ts.map +0 -1
- package/lib/__internal__/meta.d.ts +0 -3
- package/lib/__internal__/meta.d.ts.map +0 -1
- package/lib/__tests__/setup.d.ts +0 -2
- package/lib/__tests__/setup.d.ts.map +0 -1
- package/lib/code-block/config.d.ts +0 -23
- package/lib/code-block/config.d.ts.map +0 -1
- package/lib/code-block/index.d.ts +0 -5
- package/lib/code-block/index.d.ts.map +0 -1
- package/lib/code-block/view/components/code-block.d.ts +0 -16
- package/lib/code-block/view/components/code-block.d.ts.map +0 -1
- package/lib/code-block/view/components/copy-button.d.ts +0 -9
- package/lib/code-block/view/components/copy-button.d.ts.map +0 -1
- package/lib/code-block/view/components/language-picker.d.ts +0 -5
- package/lib/code-block/view/components/language-picker.d.ts.map +0 -1
- package/lib/code-block/view/components/preview-panel.d.ts +0 -9
- package/lib/code-block/view/components/preview-panel.d.ts.map +0 -1
- package/lib/code-block/view/index.d.ts +0 -3
- package/lib/code-block/view/index.d.ts.map +0 -1
- package/lib/code-block/view/loader.d.ts +0 -13
- package/lib/code-block/view/loader.d.ts.map +0 -1
- package/lib/code-block/view/node-view.d.ts +0 -40
- package/lib/code-block/view/node-view.d.ts.map +0 -1
- package/lib/image-block/config.d.ts +0 -16
- package/lib/image-block/config.d.ts.map +0 -1
- package/lib/image-block/convert-plugin.d.ts +0 -2
- package/lib/image-block/convert-plugin.d.ts.map +0 -1
- package/lib/image-block/index.d.ts +0 -9
- package/lib/image-block/index.d.ts.map +0 -1
- package/lib/image-block/paste-rule.d.ts +0 -2
- package/lib/image-block/paste-rule.d.ts.map +0 -1
- package/lib/image-block/remark-plugin.d.ts +0 -2
- package/lib/image-block/remark-plugin.d.ts.map +0 -1
- package/lib/image-block/schema.d.ts +0 -3
- package/lib/image-block/schema.d.ts.map +0 -1
- package/lib/image-block/view/components/__tests__/image-viewer.onImageLoadError.spec.d.ts +0 -2
- package/lib/image-block/view/components/__tests__/image-viewer.onImageLoadError.spec.d.ts.map +0 -1
- package/lib/image-block/view/components/image-block.d.ts +0 -19
- package/lib/image-block/view/components/image-block.d.ts.map +0 -1
- package/lib/image-block/view/components/image-viewer.d.ts +0 -3
- package/lib/image-block/view/components/image-viewer.d.ts.map +0 -1
- package/lib/image-block/view/index.d.ts +0 -3
- package/lib/image-block/view/index.d.ts.map +0 -1
- package/lib/image-inline/components/image-inline.d.ts +0 -18
- package/lib/image-inline/components/image-inline.d.ts.map +0 -1
- package/lib/image-inline/config.d.ts +0 -11
- package/lib/image-inline/config.d.ts.map +0 -1
- package/lib/image-inline/index.d.ts +0 -5
- package/lib/image-inline/index.d.ts.map +0 -1
- package/lib/image-inline/view.d.ts +0 -3
- package/lib/image-inline/view.d.ts.map +0 -1
- package/lib/index.d.ts +0 -2
- package/lib/index.d.ts.map +0 -1
- package/lib/link-tooltip/command.d.ts +0 -2
- package/lib/link-tooltip/command.d.ts.map +0 -1
- package/lib/link-tooltip/configure.d.ts +0 -3
- package/lib/link-tooltip/configure.d.ts.map +0 -1
- package/lib/link-tooltip/edit/component.d.ts +0 -11
- package/lib/link-tooltip/edit/component.d.ts.map +0 -1
- package/lib/link-tooltip/edit/edit-configure.d.ts +0 -3
- package/lib/link-tooltip/edit/edit-configure.d.ts.map +0 -1
- package/lib/link-tooltip/edit/edit-view.d.ts +0 -15
- package/lib/link-tooltip/edit/edit-view.d.ts.map +0 -1
- package/lib/link-tooltip/index.d.ts +0 -7
- package/lib/link-tooltip/index.d.ts.map +0 -1
- package/lib/link-tooltip/preview/component.d.ts +0 -11
- package/lib/link-tooltip/preview/component.d.ts.map +0 -1
- package/lib/link-tooltip/preview/preview-configure.d.ts +0 -3
- package/lib/link-tooltip/preview/preview-configure.d.ts.map +0 -1
- package/lib/link-tooltip/preview/preview-view.d.ts +0 -14
- package/lib/link-tooltip/preview/preview-view.d.ts.map +0 -1
- package/lib/link-tooltip/slices.d.ts +0 -34
- package/lib/link-tooltip/slices.d.ts.map +0 -1
- package/lib/link-tooltip/tooltips.d.ts +0 -3
- package/lib/link-tooltip/tooltips.d.ts.map +0 -1
- package/lib/link-tooltip/utils.d.ts +0 -14
- package/lib/link-tooltip/utils.d.ts.map +0 -1
- package/lib/list-item-block/component.d.ts +0 -19
- package/lib/list-item-block/component.d.ts.map +0 -1
- package/lib/list-item-block/config.d.ts +0 -13
- package/lib/list-item-block/config.d.ts.map +0 -1
- package/lib/list-item-block/index.d.ts +0 -6
- package/lib/list-item-block/index.d.ts.map +0 -1
- package/lib/list-item-block/view.d.ts +0 -3
- package/lib/list-item-block/view.d.ts.map +0 -1
- package/lib/table-block/config.d.ts +0 -8
- package/lib/table-block/config.d.ts.map +0 -1
- package/lib/table-block/dnd/calc-drag-over.d.ts +0 -3
- package/lib/table-block/dnd/calc-drag-over.d.ts.map +0 -1
- package/lib/table-block/dnd/create-drag-handler.d.ts +0 -5
- package/lib/table-block/dnd/create-drag-handler.d.ts.map +0 -1
- package/lib/table-block/dnd/drag-over-handler.d.ts +0 -3
- package/lib/table-block/dnd/drag-over-handler.d.ts.map +0 -1
- package/lib/table-block/dnd/prepare-dnd-context.d.ts +0 -3
- package/lib/table-block/dnd/prepare-dnd-context.d.ts.map +0 -1
- package/lib/table-block/dnd/preview.d.ts +0 -3
- package/lib/table-block/dnd/preview.d.ts.map +0 -1
- package/lib/table-block/index.d.ts +0 -5
- package/lib/table-block/index.d.ts.map +0 -1
- package/lib/table-block/view/component.d.ts +0 -16
- package/lib/table-block/view/component.d.ts.map +0 -1
- package/lib/table-block/view/drag.d.ts +0 -10
- package/lib/table-block/view/drag.d.ts.map +0 -1
- package/lib/table-block/view/index.d.ts +0 -2
- package/lib/table-block/view/index.d.ts.map +0 -1
- package/lib/table-block/view/operation.d.ts +0 -13
- package/lib/table-block/view/operation.d.ts.map +0 -1
- package/lib/table-block/view/pointer.d.ts +0 -7
- package/lib/table-block/view/pointer.d.ts.map +0 -1
- package/lib/table-block/view/types.d.ts +0 -28
- package/lib/table-block/view/types.d.ts.map +0 -1
- package/lib/table-block/view/utils.d.ts +0 -12
- package/lib/table-block/view/utils.d.ts.map +0 -1
- package/lib/table-block/view/view.d.ts +0 -22
- package/lib/table-block/view/view.d.ts.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jvs-milkdown/components",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.2",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"milkdown",
|
|
6
6
|
"milkdown plugin"
|
|
@@ -50,15 +50,15 @@
|
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
52
|
"@floating-ui/dom": "^1.5.1",
|
|
53
|
-
"@jvs-milkdown/core": "^1.2.
|
|
54
|
-
"@jvs-milkdown/ctx": "^1.2.
|
|
55
|
-
"@jvs-milkdown/exception": "^1.2.
|
|
56
|
-
"@jvs-milkdown/plugin-tooltip": "^1.2.
|
|
57
|
-
"@jvs-milkdown/preset-commonmark": "^1.2.
|
|
58
|
-
"@jvs-milkdown/preset-gfm": "^1.2.
|
|
59
|
-
"@jvs-milkdown/prose": "^1.2.
|
|
60
|
-
"@jvs-milkdown/transformer": "^1.2.
|
|
61
|
-
"@jvs-milkdown/utils": "^1.2.
|
|
53
|
+
"@jvs-milkdown/core": "^1.2.2",
|
|
54
|
+
"@jvs-milkdown/ctx": "^1.2.2",
|
|
55
|
+
"@jvs-milkdown/exception": "^1.2.2",
|
|
56
|
+
"@jvs-milkdown/plugin-tooltip": "^1.2.2",
|
|
57
|
+
"@jvs-milkdown/preset-commonmark": "^1.2.2",
|
|
58
|
+
"@jvs-milkdown/preset-gfm": "^1.2.2",
|
|
59
|
+
"@jvs-milkdown/prose": "^1.2.2",
|
|
60
|
+
"@jvs-milkdown/transformer": "^1.2.2",
|
|
61
|
+
"@jvs-milkdown/utils": "^1.2.2",
|
|
62
62
|
"@types/lodash-es": "^4.17.12",
|
|
63
63
|
"clsx": "^2.0.0",
|
|
64
64
|
"dompurify": "^3.2.5",
|
package/src/code-block/config.ts
CHANGED
|
@@ -26,6 +26,8 @@ export interface CodeBlockConfig {
|
|
|
26
26
|
previewLabel: string
|
|
27
27
|
previewOnlyByDefault?: boolean
|
|
28
28
|
previewLoading: string | HTMLElement
|
|
29
|
+
wrapText: string
|
|
30
|
+
wrapIcon: string
|
|
29
31
|
}
|
|
30
32
|
|
|
31
33
|
export const defaultConfig: CodeBlockConfig = {
|
|
@@ -44,6 +46,8 @@ export const defaultConfig: CodeBlockConfig = {
|
|
|
44
46
|
previewToggleButton: (previewOnlyMode) => (previewOnlyMode ? 'Edit' : 'Hide'),
|
|
45
47
|
previewLabel: 'Preview',
|
|
46
48
|
previewLoading: 'Loading...',
|
|
49
|
+
wrapText: 'Wrap',
|
|
50
|
+
wrapIcon: '',
|
|
47
51
|
}
|
|
48
52
|
|
|
49
53
|
export const codeBlockConfig = $ctx(defaultConfig, 'codeBlockConfigCtx')
|
|
@@ -32,6 +32,8 @@ export type CodeBlockProps = {
|
|
|
32
32
|
getAllLanguages: () => Array<LanguageInfo>
|
|
33
33
|
setLanguage: (language: string) => void
|
|
34
34
|
config: Omit<CodeBlockConfig, 'languages' | 'extensions'>
|
|
35
|
+
wordWrap: Ref<boolean>
|
|
36
|
+
toggleWordWrap: () => void
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
export const CodeBlock = defineComponent<CodeBlockProps>({
|
|
@@ -68,6 +70,14 @@ export const CodeBlock = defineComponent<CodeBlockProps>({
|
|
|
68
70
|
type: Object,
|
|
69
71
|
required: true,
|
|
70
72
|
},
|
|
73
|
+
wordWrap: {
|
|
74
|
+
type: Object,
|
|
75
|
+
required: true,
|
|
76
|
+
},
|
|
77
|
+
toggleWordWrap: {
|
|
78
|
+
type: Function,
|
|
79
|
+
required: true,
|
|
80
|
+
},
|
|
71
81
|
},
|
|
72
82
|
setup(props) {
|
|
73
83
|
const previewOnlyByDefault =
|
|
@@ -133,6 +143,20 @@ export const CodeBlock = defineComponent<CodeBlockProps>({
|
|
|
133
143
|
text={props.text.value}
|
|
134
144
|
/>
|
|
135
145
|
|
|
146
|
+
<button
|
|
147
|
+
class={props.wordWrap.value ? 'word-wrap-active' : ''}
|
|
148
|
+
onClick={(e) => {
|
|
149
|
+
e.preventDefault()
|
|
150
|
+
e.stopPropagation()
|
|
151
|
+
props.toggleWordWrap()
|
|
152
|
+
}}
|
|
153
|
+
>
|
|
154
|
+
{props.config.wrapIcon ? (
|
|
155
|
+
<Icon icon={props.config.wrapIcon} />
|
|
156
|
+
) : null}
|
|
157
|
+
{props.config.wrapText || 'Wrap'}
|
|
158
|
+
</button>
|
|
159
|
+
|
|
136
160
|
{preview.value ? (
|
|
137
161
|
<button
|
|
138
162
|
class="preview-toggle-button"
|
|
@@ -28,6 +28,7 @@ export class CodeMirrorBlock implements NodeView {
|
|
|
28
28
|
selected = ref(false)
|
|
29
29
|
language = ref('')
|
|
30
30
|
text = ref('')
|
|
31
|
+
wordWrap = ref(false)
|
|
31
32
|
|
|
32
33
|
private updating = false
|
|
33
34
|
private languageName: string = ''
|
|
@@ -35,6 +36,7 @@ export class CodeMirrorBlock implements NodeView {
|
|
|
35
36
|
|
|
36
37
|
private readonly languageConf: Compartment
|
|
37
38
|
private readonly readOnlyConf: Compartment
|
|
39
|
+
private readonly lineWrappingConf: Compartment
|
|
38
40
|
|
|
39
41
|
constructor(
|
|
40
42
|
public node: Node,
|
|
@@ -45,12 +47,14 @@ export class CodeMirrorBlock implements NodeView {
|
|
|
45
47
|
) {
|
|
46
48
|
this.languageConf = new Compartment()
|
|
47
49
|
this.readOnlyConf = new Compartment()
|
|
50
|
+
this.lineWrappingConf = new Compartment()
|
|
48
51
|
|
|
49
52
|
this.cm = new CodeMirror({
|
|
50
53
|
doc: this.node.textContent,
|
|
51
54
|
root: this.view.root,
|
|
52
55
|
extensions: [
|
|
53
56
|
this.readOnlyConf.of(EditorState.readOnly.of(!this.view.editable)),
|
|
57
|
+
this.lineWrappingConf.of([]),
|
|
54
58
|
drawSelection(),
|
|
55
59
|
cmKeymap.of(this.codeMirrorKeymap()),
|
|
56
60
|
this.languageConf.of([]),
|
|
@@ -110,6 +114,8 @@ export class CodeMirrorBlock implements NodeView {
|
|
|
110
114
|
getReadOnly: () => !this.view.editable,
|
|
111
115
|
setLanguage: this.setLanguage,
|
|
112
116
|
config: this.config,
|
|
117
|
+
wordWrap: this.wordWrap,
|
|
118
|
+
toggleWordWrap: this.toggleWordWrap,
|
|
113
119
|
})
|
|
114
120
|
}
|
|
115
121
|
|
|
@@ -276,6 +282,15 @@ export class CodeMirrorBlock implements NodeView {
|
|
|
276
282
|
)
|
|
277
283
|
}
|
|
278
284
|
|
|
285
|
+
toggleWordWrap = () => {
|
|
286
|
+
this.wordWrap.value = !this.wordWrap.value
|
|
287
|
+
this.cm.dispatch({
|
|
288
|
+
effects: this.lineWrappingConf.reconfigure(
|
|
289
|
+
this.wordWrap.value ? [CodeMirror.lineWrapping] : []
|
|
290
|
+
),
|
|
291
|
+
})
|
|
292
|
+
}
|
|
293
|
+
|
|
279
294
|
getAllLanguages = () => {
|
|
280
295
|
return this.loader.getAll()
|
|
281
296
|
}
|
|
@@ -5,6 +5,11 @@ import { withMeta } from '../__internal__/meta'
|
|
|
5
5
|
export interface ImageBlockConfig {
|
|
6
6
|
imageIcon: string | undefined
|
|
7
7
|
captionIcon: string | undefined
|
|
8
|
+
cropIcon: string | undefined
|
|
9
|
+
borderIcon: string | undefined
|
|
10
|
+
confirmIcon: string | undefined
|
|
11
|
+
cancelIcon: string | undefined
|
|
12
|
+
resetCropIcon: string | undefined
|
|
8
13
|
uploadButton: string | undefined
|
|
9
14
|
confirmButton: string | undefined
|
|
10
15
|
uploadPlaceholderText: string
|
|
@@ -19,6 +24,11 @@ export interface ImageBlockConfig {
|
|
|
19
24
|
export const defaultImageBlockConfig: ImageBlockConfig = {
|
|
20
25
|
imageIcon: '🌌',
|
|
21
26
|
captionIcon: '💬',
|
|
27
|
+
cropIcon: '✂️',
|
|
28
|
+
borderIcon: '🔲',
|
|
29
|
+
confirmIcon: '✓',
|
|
30
|
+
cancelIcon: '✕',
|
|
31
|
+
resetCropIcon: '↩',
|
|
22
32
|
uploadButton: 'Upload file',
|
|
23
33
|
confirmButton: 'Confirm ⏎',
|
|
24
34
|
uploadPlaceholderText: 'or paste the image link ...',
|
|
@@ -20,6 +20,14 @@ export const imageBlockSchema = $nodeSchema('image-block', () => {
|
|
|
20
20
|
caption: { default: '', validate: 'string' },
|
|
21
21
|
ratio: { default: 1, validate: 'number' },
|
|
22
22
|
align: { default: null },
|
|
23
|
+
cropRatio: { default: 'free', validate: 'string' },
|
|
24
|
+
cropTop: { default: 0, validate: 'number' },
|
|
25
|
+
cropLeft: { default: 0, validate: 'number' },
|
|
26
|
+
cropWidth: { default: 1, validate: 'number' },
|
|
27
|
+
cropHeight: { default: 1, validate: 'number' },
|
|
28
|
+
borderWidth: { default: 0, validate: 'number' },
|
|
29
|
+
borderColor: { default: '#000000', validate: 'string' },
|
|
30
|
+
borderStyle: { default: 'none', validate: 'string' },
|
|
23
31
|
},
|
|
24
32
|
parseDOM: [
|
|
25
33
|
{
|
|
@@ -32,6 +40,14 @@ export const imageBlockSchema = $nodeSchema('image-block', () => {
|
|
|
32
40
|
caption: dom.getAttribute('caption') || '',
|
|
33
41
|
ratio: Number(dom.getAttribute('ratio') ?? 1),
|
|
34
42
|
align: dom.getAttribute('align') || null,
|
|
43
|
+
cropRatio: dom.getAttribute('cropRatio') || 'free',
|
|
44
|
+
cropTop: Number(dom.getAttribute('cropTop') ?? 0),
|
|
45
|
+
cropLeft: Number(dom.getAttribute('cropLeft') ?? 0),
|
|
46
|
+
cropWidth: Number(dom.getAttribute('cropWidth') ?? 1),
|
|
47
|
+
cropHeight: Number(dom.getAttribute('cropHeight') ?? 1),
|
|
48
|
+
borderWidth: Number(dom.getAttribute('borderWidth') ?? 0),
|
|
49
|
+
borderColor: dom.getAttribute('borderColor') || '#000000',
|
|
50
|
+
borderStyle: dom.getAttribute('borderStyle') || 'none',
|
|
35
51
|
}
|
|
36
52
|
},
|
|
37
53
|
},
|
|
@@ -15,6 +15,11 @@ test('calls onImageLoadError when img fires error', async () => {
|
|
|
15
15
|
confirmButton: 'Confirm',
|
|
16
16
|
uploadPlaceholderText: 'or paste an image URL',
|
|
17
17
|
onUpload: async () => 'https://example.com/photo.png',
|
|
18
|
+
cropIcon: '✂️',
|
|
19
|
+
borderIcon: '🔲',
|
|
20
|
+
confirmIcon: '✓',
|
|
21
|
+
cancelIcon: '✕',
|
|
22
|
+
resetCropIcon: '↩',
|
|
18
23
|
}
|
|
19
24
|
|
|
20
25
|
// render the ImageViewer component
|
|
@@ -23,6 +28,15 @@ test('calls onImageLoadError when img fires error', async () => {
|
|
|
23
28
|
src: ref('https://example.com/photo.png'),
|
|
24
29
|
caption: ref(''),
|
|
25
30
|
ratio: ref(1),
|
|
31
|
+
align: ref(null),
|
|
32
|
+
cropRatio: ref('free'),
|
|
33
|
+
cropTop: ref(0),
|
|
34
|
+
cropLeft: ref(0),
|
|
35
|
+
cropWidth: ref(1),
|
|
36
|
+
cropHeight: ref(1),
|
|
37
|
+
borderWidth: ref(0),
|
|
38
|
+
borderColor: ref('#000000'),
|
|
39
|
+
borderStyle: ref('none'),
|
|
26
40
|
selected: ref(false),
|
|
27
41
|
readonly: ref(false),
|
|
28
42
|
setAttr: () => {},
|
|
@@ -13,6 +13,14 @@ type Attrs = {
|
|
|
13
13
|
caption: string
|
|
14
14
|
ratio: number
|
|
15
15
|
align: string | null
|
|
16
|
+
cropRatio: string
|
|
17
|
+
cropTop: number
|
|
18
|
+
cropLeft: number
|
|
19
|
+
cropWidth: number
|
|
20
|
+
cropHeight: number
|
|
21
|
+
borderWidth: number
|
|
22
|
+
borderColor: string
|
|
23
|
+
borderStyle: string
|
|
16
24
|
}
|
|
17
25
|
|
|
18
26
|
export type MilkdownImageBlockProps = {
|
|
@@ -42,6 +50,38 @@ export const MilkdownImageBlock = defineComponent<MilkdownImageBlockProps>({
|
|
|
42
50
|
type: Object,
|
|
43
51
|
required: true,
|
|
44
52
|
},
|
|
53
|
+
cropRatio: {
|
|
54
|
+
type: Object,
|
|
55
|
+
required: true,
|
|
56
|
+
},
|
|
57
|
+
cropTop: {
|
|
58
|
+
type: Object,
|
|
59
|
+
required: true,
|
|
60
|
+
},
|
|
61
|
+
cropLeft: {
|
|
62
|
+
type: Object,
|
|
63
|
+
required: true,
|
|
64
|
+
},
|
|
65
|
+
cropWidth: {
|
|
66
|
+
type: Object,
|
|
67
|
+
required: true,
|
|
68
|
+
},
|
|
69
|
+
cropHeight: {
|
|
70
|
+
type: Object,
|
|
71
|
+
required: true,
|
|
72
|
+
},
|
|
73
|
+
borderWidth: {
|
|
74
|
+
type: Object,
|
|
75
|
+
required: true,
|
|
76
|
+
},
|
|
77
|
+
borderColor: {
|
|
78
|
+
type: Object,
|
|
79
|
+
required: true,
|
|
80
|
+
},
|
|
81
|
+
borderStyle: {
|
|
82
|
+
type: Object,
|
|
83
|
+
required: true,
|
|
84
|
+
},
|
|
45
85
|
selected: {
|
|
46
86
|
type: Object,
|
|
47
87
|
required: true,
|