Skip to content

Commit 10e8153

Browse files
committed
Merge branch 'master' of https://github.com/traPtitech/traQ_S-UI into optimize/effect-scope
2 parents 3486661 + ecb0d1d commit 10e8153

7 files changed

Lines changed: 23 additions & 57 deletions

File tree

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "traq_s-ui",
3-
"version": "3.31.0",
3+
"version": "3.31.2",
44
"private": true,
55
"type": "module",
66
"scripts": {
Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,30 @@
1-
import { type MaybeRefOrGetter, toValue } from 'vue'
1+
import type { Ref } from 'vue'
22

3-
import useResponsive from '/@/composables/useResponsive'
4-
import { insertText } from '/@/lib/dom/insertText'
3+
import { insert } from 'text-field-edit'
54

5+
/**
6+
* これを利用したときはCtrl+Zなどがきく
7+
*/
68
const useInsertText = (
7-
textareaRef: MaybeRefOrGetter<HTMLTextAreaElement | undefined>,
8-
targetRef?: MaybeRefOrGetter<{ begin: number; end: number }>
9+
textareaRef: Ref<HTMLTextAreaElement | undefined>,
10+
target?: Ref<{ begin: number; end: number }>
911
) => {
10-
const { isMobile } = useResponsive()
12+
const insertText = (text: string) => {
13+
if (!textareaRef.value) return
1114

12-
return {
13-
insertText: (text: string) => {
14-
const textarea = toValue(textareaRef)
15-
if (!textarea) return
16-
17-
insertText(textarea, text, toValue(targetRef), isMobile.value)
15+
if (target) {
16+
textareaRef.value.selectionStart = target.value.begin
17+
textareaRef.value.selectionEnd = target.value.end
1818
}
19+
20+
// Windowsでの\r\nを含む文字列を貼り付けた後に
21+
// Ctrl+Zでアンドゥすると、キャレットの位置がずれるので
22+
// ずれないように\nに統一しておく
23+
const normalizedText = text.replaceAll('\r\n', '\n')
24+
insert(textareaRef.value, normalizedText)
1925
}
26+
27+
return { insertText }
2028
}
2129

2230
export default useInsertText

src/lib/dom/insertText.ts

Lines changed: 0 additions & 28 deletions
This file was deleted.

tests/unit/mocks/index.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

tests/unit/mocks/matchMedia.ts

Lines changed: 0 additions & 11 deletions
This file was deleted.

tests/unit/setup.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import './mocks'
2-
31
window.traQConfig = {
42
firebase: {
53
apiKey: '',

0 commit comments

Comments
 (0)