@elice/material-quiz 1.240715.0-touch.4 → 1.240715.0
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/cjs/components/eb-sortable/EbDraggable.d.ts +12 -1
- package/cjs/components/eb-sortable/EbDraggable.js +91 -29
- package/cjs/components/eb-sortable/EbDroppable.d.ts +8 -3
- package/cjs/components/eb-sortable/EbDroppable.js +37 -18
- package/cjs/components/material-quiz/MaterialQuizSelectMultiple.js +1 -2
- package/cjs/components/material-quiz/MaterialQuizSelectMultipleOrder.js +135 -215
- package/cjs/components/material-quiz/MaterialQuizSelectOne.js +1 -2
- package/cjs/components/material-quiz/material-quiz-group/MaterialQuizGroupDesktop.js +11 -41
- package/cjs/components/shared/QuizDraggbleDroppedOption.d.ts +1 -1
- package/cjs/components/shared/QuizDraggbleDroppedOption.js +3 -23
- package/cjs/components/shared/QuizDraggbleDummyOption.d.ts +3 -1
- package/cjs/components/shared/QuizDraggbleDummyOption.js +3 -8
- package/cjs/components/shared/QuizDraggbleOption.d.ts +1 -0
- package/cjs/components/shared/QuizDraggbleOption.js +3 -10
- package/es/components/eb-sortable/EbDraggable.d.ts +12 -1
- package/es/components/eb-sortable/EbDraggable.js +91 -29
- package/es/components/eb-sortable/EbDroppable.d.ts +8 -3
- package/es/components/eb-sortable/EbDroppable.js +37 -18
- package/es/components/material-quiz/MaterialQuizSelectMultiple.js +1 -2
- package/es/components/material-quiz/MaterialQuizSelectMultipleOrder.js +135 -215
- package/es/components/material-quiz/MaterialQuizSelectOne.js +1 -2
- package/es/components/material-quiz/material-quiz-group/MaterialQuizGroupDesktop.js +11 -41
- package/es/components/shared/QuizDraggbleDroppedOption.d.ts +1 -1
- package/es/components/shared/QuizDraggbleDroppedOption.js +3 -23
- package/es/components/shared/QuizDraggbleDummyOption.d.ts +3 -1
- package/es/components/shared/QuizDraggbleDummyOption.js +3 -8
- package/es/components/shared/QuizDraggbleOption.d.ts +1 -0
- package/es/components/shared/QuizDraggbleOption.js +3 -10
- package/package.json +4 -6
|
@@ -1,8 +1,19 @@
|
|
|
1
|
+
/// <reference types="jquery" />
|
|
2
|
+
/// <reference types="jquery" />
|
|
3
|
+
/// <reference types="jqueryui" />
|
|
1
4
|
import React from 'react';
|
|
5
|
+
import 'jquery-ui/ui/widgets/draggable';
|
|
2
6
|
interface EbDraggableProps {
|
|
3
|
-
id
|
|
7
|
+
id?: string;
|
|
4
8
|
className?: string;
|
|
9
|
+
connectWith?: JQuery.Selector;
|
|
5
10
|
disabled?: boolean;
|
|
11
|
+
revert?: boolean;
|
|
12
|
+
clone?: boolean;
|
|
13
|
+
onStart?: (event: JQueryEventObject, ui: JQueryUI.DraggableEventUIParams) => void;
|
|
14
|
+
onStop?: (event: JQueryEventObject, ui: JQueryUI.DraggableEventUIParams) => void;
|
|
15
|
+
onDrag?: (event: JQueryEventObject, ui: JQueryUI.DraggableEventUIParams) => void;
|
|
16
|
+
onCreate?: (event: JQueryEventObject, ui: JQueryUI.DraggableEventUIParams) => void;
|
|
6
17
|
}
|
|
7
18
|
declare const EbDraggable: React.FC<EbDraggableProps>;
|
|
8
19
|
export default EbDraggable;
|
|
@@ -3,42 +3,104 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
|
-
var
|
|
7
|
-
|
|
6
|
+
var $ = require('jquery');
|
|
7
|
+
require('jquery-ui/ui/widgets/draggable');
|
|
8
8
|
|
|
9
|
-
//
|
|
10
|
-
//
|
|
11
|
-
//
|
|
12
9
|
const EbDraggable = ({
|
|
13
10
|
children,
|
|
14
11
|
id,
|
|
12
|
+
disabled = false,
|
|
13
|
+
revert = true,
|
|
14
|
+
clone = false,
|
|
15
15
|
className,
|
|
16
|
-
|
|
16
|
+
onStart,
|
|
17
|
+
onStop,
|
|
18
|
+
onDrag,
|
|
19
|
+
onCreate
|
|
17
20
|
}) => {
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
});
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
21
|
+
const rootEl = React.useRef(null);
|
|
22
|
+
const onStartCallback = React.useCallback((event, ui) => {
|
|
23
|
+
if (onStart) {
|
|
24
|
+
return onStart(event, ui);
|
|
25
|
+
} else {
|
|
26
|
+
return () => {
|
|
27
|
+
return;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
}, [onStart]);
|
|
31
|
+
const onStopCallback = React.useCallback((event, ui) => {
|
|
32
|
+
if (onStop) {
|
|
33
|
+
return onStop(event, ui);
|
|
34
|
+
} else {
|
|
35
|
+
return () => {
|
|
36
|
+
return;
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
}, [onStop]);
|
|
40
|
+
const onDragCallback = React.useCallback((event, ui) => {
|
|
41
|
+
if (onDrag) {
|
|
42
|
+
return onDrag(event, ui);
|
|
43
|
+
} else {
|
|
44
|
+
return () => {
|
|
45
|
+
return;
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
}, [onDrag]);
|
|
49
|
+
const onCreateCallback = React.useCallback((event, ui) => {
|
|
50
|
+
if (onCreate) {
|
|
51
|
+
return onCreate(event, ui);
|
|
52
|
+
} else {
|
|
53
|
+
return () => {
|
|
54
|
+
return;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
}, [onCreate]);
|
|
58
|
+
React.useEffect(() => {
|
|
59
|
+
if (!rootEl.current) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
const draggableEl = $(rootEl.current);
|
|
63
|
+
draggableEl.draggable(Object.assign(Object.assign(Object.assign(Object.assign({}, disabled ? {
|
|
64
|
+
disabled
|
|
65
|
+
} : null), revert ? {
|
|
66
|
+
revert
|
|
67
|
+
} : null), clone ? {
|
|
68
|
+
helper: 'clone'
|
|
69
|
+
} : null), {
|
|
70
|
+
zIndex: 200,
|
|
71
|
+
revertDuration: 0,
|
|
72
|
+
start: (event, ui) => {
|
|
73
|
+
if (!onStartCallback) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
onStartCallback(event, ui);
|
|
77
|
+
},
|
|
78
|
+
stop: (event, ui) => {
|
|
79
|
+
if (!onStopCallback) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
// draggableEl.draggable('cancel');
|
|
83
|
+
onStopCallback(event, ui);
|
|
84
|
+
},
|
|
85
|
+
drag: (event, ui) => {
|
|
86
|
+
onDragCallback(event, ui);
|
|
87
|
+
},
|
|
88
|
+
create: (event, ui) => {
|
|
89
|
+
onCreateCallback(event, ui);
|
|
90
|
+
}
|
|
91
|
+
}));
|
|
92
|
+
return () => {
|
|
93
|
+
draggableEl.draggable('destroy');
|
|
94
|
+
};
|
|
95
|
+
}, [clone, disabled, onCreateCallback, onDragCallback, onStartCallback, onStopCallback, revert]);
|
|
96
|
+
return React.createElement("div", {
|
|
97
|
+
ref: rootEl,
|
|
98
|
+
id: id,
|
|
37
99
|
className: className,
|
|
38
|
-
style:
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
},
|
|
100
|
+
style: {
|
|
101
|
+
cursor: disabled ? 'auto' : 'move'
|
|
102
|
+
}
|
|
103
|
+
}, children);
|
|
42
104
|
};
|
|
43
105
|
|
|
44
106
|
exports.default = EbDraggable;
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
+
/// <reference types="jquery" />
|
|
2
|
+
/// <reference types="jquery" />
|
|
3
|
+
/// <reference types="jqueryui" />
|
|
1
4
|
import React from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
5
|
+
import 'jquery-ui/ui/widgets/droppable';
|
|
6
|
+
export interface EbDroppableProps {
|
|
7
|
+
id?: string;
|
|
4
8
|
className?: string;
|
|
5
9
|
disabled?: boolean;
|
|
6
|
-
accept?:
|
|
10
|
+
accept?: JQuery.Selector;
|
|
11
|
+
onDrop?: (event: JQueryEventObject, ui: JQueryUI.DroppableEventUIParam) => void;
|
|
7
12
|
}
|
|
8
13
|
declare const EbDroppable: React.FC<EbDroppableProps>;
|
|
9
14
|
export default EbDroppable;
|
|
@@ -3,32 +3,51 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
|
-
var
|
|
6
|
+
var $ = require('jquery');
|
|
7
|
+
require('jquery-ui/ui/widgets/droppable');
|
|
7
8
|
|
|
8
|
-
//
|
|
9
|
-
//
|
|
10
|
-
//
|
|
11
9
|
const EbDroppable = ({
|
|
12
10
|
children,
|
|
13
11
|
id,
|
|
14
|
-
className,
|
|
15
12
|
disabled = false,
|
|
16
|
-
accept
|
|
13
|
+
accept,
|
|
14
|
+
className,
|
|
15
|
+
onDrop
|
|
17
16
|
}) => {
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
17
|
+
const rootEl = React.useRef(null);
|
|
18
|
+
const onDropCallback = React.useCallback((event, ui) => {
|
|
19
|
+
if (onDrop) {
|
|
20
|
+
return onDrop(event, ui);
|
|
21
|
+
} else {
|
|
22
|
+
return () => {
|
|
23
|
+
return;
|
|
24
|
+
};
|
|
25
25
|
}
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
}, [onDrop]);
|
|
27
|
+
React.useEffect(() => {
|
|
28
|
+
if (!rootEl.current) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
const draggableEl = $(rootEl.current);
|
|
32
|
+
draggableEl.droppable(Object.assign(Object.assign(Object.assign({}, disabled ? {
|
|
33
|
+
disabled
|
|
34
|
+
} : null), accept ? {
|
|
35
|
+
accept
|
|
36
|
+
} : null), {
|
|
37
|
+
drop: (event, ui) => {
|
|
38
|
+
if (!onDropCallback) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
onDropCallback(event, ui);
|
|
42
|
+
}
|
|
43
|
+
}));
|
|
44
|
+
return () => {
|
|
45
|
+
draggableEl.droppable('destroy');
|
|
46
|
+
};
|
|
47
|
+
}, [accept, disabled, onDropCallback]);
|
|
30
48
|
return React.createElement("div", {
|
|
31
|
-
ref:
|
|
49
|
+
ref: rootEl,
|
|
50
|
+
id: id,
|
|
32
51
|
className: className
|
|
33
52
|
}, children);
|
|
34
53
|
};
|
|
@@ -10,9 +10,8 @@ var material = require('@mui/material');
|
|
|
10
10
|
var element = require('../../constant/element.js');
|
|
11
11
|
var index = require('../../helpers/index.js');
|
|
12
12
|
var useCaculatePassage = require('../../hooks/useCaculatePassage.js');
|
|
13
|
-
require('../shared/QuizDraggbleDroppedOption.js');
|
|
14
|
-
require('../shared/QuizDraggbleDummyOption.js');
|
|
15
13
|
require('../shared/QuizDraggbleOption.js');
|
|
14
|
+
require('../shared/QuizDraggbleDummyOption.js');
|
|
16
15
|
require('../shared/question-radio/QuestionRadio.js');
|
|
17
16
|
require('../shared/question-radio/QuestionRadioOption.js');
|
|
18
17
|
var QuestionCheckbox = require('../shared/question-checkbox/QuestionCheckbox.js');
|