mesdan 1.0.3 → 1.0.4
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
CHANGED
|
@@ -4,6 +4,8 @@ type MesdanHususları = {
|
|
|
4
4
|
tekSatırMı: boolean;
|
|
5
5
|
latiniMi?: boolean;
|
|
6
6
|
aramaTalepEdilince?: () => void;
|
|
7
|
+
metin?: string;
|
|
8
|
+
tayinMetin?: (yeniMetin: string) => void;
|
|
7
9
|
};
|
|
8
10
|
type MesdanCevabı<T> = [
|
|
9
11
|
metin: string,
|
|
@@ -11,6 +13,6 @@ type MesdanCevabı<T> = [
|
|
|
11
13
|
tebdilMetin: (yeniMetin: string) => void,
|
|
12
14
|
tebdilLatiniMi: (latiniMi: boolean) => void
|
|
13
15
|
];
|
|
14
|
-
export declare const useMesdan: <T extends HTMLInputElement | HTMLTextAreaElement>({ ibtidaiMetin, tekSatırMı, latiniMi: ibtidaiLatiniMi, aramaTalepEdilince, }: MesdanHususları) => MesdanCevabı<T>;
|
|
16
|
+
export declare const useMesdan: <T extends HTMLInputElement | HTMLTextAreaElement>({ ibtidaiMetin, tekSatırMı, latiniMi: ibtidaiLatiniMi, aramaTalepEdilince, metin: metinHarici, tayinMetin: tayinMetinHarici, }: MesdanHususları) => MesdanCevabı<T>;
|
|
15
17
|
export {};
|
|
16
18
|
//# sourceMappingURL=use-mesdan.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-mesdan.d.ts","sourceRoot":"","sources":["../../memba/kanca/use-mesdan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA6D,MAAM,OAAO,CAAC;AAU7F,KAAK,eAAe,GAAG;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"use-mesdan.d.ts","sourceRoot":"","sources":["../../memba/kanca/use-mesdan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA6D,MAAM,OAAO,CAAC;AAU7F,KAAK,eAAe,GAAG;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAEhC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C,CAAC;AAEF,KAAK,YAAY,CAAC,CAAC,IAAI;IACrB,KAAK,EAAE,MAAM;IACb,gBAAgB,EAAE,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC;IACrC,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI;IACxC,cAAc,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI;CAC5C,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,gBAAgB,GAAG,mBAAmB,kIAOvE,eAAe,KAAG,YAAY,CAAC,CAAC,CA4MlC,CAAC"}
|
|
@@ -3,9 +3,19 @@ import { harfBüyükMü } from '../aletler/harf-buyuk-mu';
|
|
|
3
3
|
import { hazırlaAlemMevkisini, hazırlaAlemMevkisiniMenzilli } from '../nev/alem-mevkisi';
|
|
4
4
|
import { TadiliMetinEmri } from '../nev/tadili-metin-emri';
|
|
5
5
|
import { Talimat_MetniTadilEt } from '../nuve/tadil-et-metni';
|
|
6
|
-
export const useMesdan = ({ ibtidaiMetin = '', tekSatırMı, latiniMi: ibtidaiLatiniMi = false, aramaTalepEdilince, }) => {
|
|
7
|
-
const [
|
|
8
|
-
const [
|
|
6
|
+
export const useMesdan = ({ ibtidaiMetin = '', tekSatırMı, latiniMi: ibtidaiLatiniMi = false, aramaTalepEdilince, metin: metinHarici, tayinMetin: tayinMetinHarici, }) => {
|
|
7
|
+
const [metinDahili, tayinMetinDahili] = useState(ibtidaiMetin);
|
|
8
|
+
const [latiniMi, tayinLatiniMi] = useState(ibtidaiLatiniMi);
|
|
9
|
+
const kontrollüMü = metinHarici !== undefined && tayinMetinHarici !== undefined;
|
|
10
|
+
const metin = kontrollüMü ? metinHarici : metinDahili;
|
|
11
|
+
const tayinMetin = useCallback((yeniMetin) => {
|
|
12
|
+
if (kontrollüMü) {
|
|
13
|
+
tayinMetinHarici(yeniMetin);
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
tayinMetinDahili(yeniMetin);
|
|
17
|
+
}
|
|
18
|
+
}, [kontrollüMü, tayinMetinHarici]);
|
|
9
19
|
const metinSahasıİması = useRef(null);
|
|
10
20
|
const alemMevkisiİması = useRef(hazırlaAlemMevkisini(ibtidaiMetin.length));
|
|
11
21
|
const aramaTalepEdilinceRef = useRef(aramaTalepEdilince);
|
|
@@ -64,7 +74,7 @@ export const useMesdan = ({ ibtidaiMetin = '', tekSatırMı, latiniMi: ibtidaiLa
|
|
|
64
74
|
}
|
|
65
75
|
const netice = await Talimat_MetniTadilEt(metinSahası, currentMetin, alemMevkisi, tadiliMetinEmri, mesHadisesi, true);
|
|
66
76
|
alemMevkisiİması.current = netice.alemMevkisiTadilSonrası;
|
|
67
|
-
|
|
77
|
+
tayinMetin(netice.metinTadilSonrası);
|
|
68
78
|
}, [tekSatırMı]);
|
|
69
79
|
const handlePaste = useCallback(async (hadise) => {
|
|
70
80
|
const metinSahası = metinSahasıİması.current;
|
|
@@ -75,7 +85,7 @@ export const useMesdan = ({ ibtidaiMetin = '', tekSatırMı, latiniMi: ibtidaiLa
|
|
|
75
85
|
const alemMevkisi = hazırlaAlemMevkisiniMenzilli(metinSahası.selectionStart || 0, metinSahası.selectionEnd || 0);
|
|
76
86
|
const netice = await Talimat_MetniTadilEt(metinSahası, currentMetin, alemMevkisi, TadiliMetinEmri.YERLE, { latiniHarf: '', shiftBasılıMı: false, altBasılıMı: false, capsLockBasılıMı: false }, true);
|
|
77
87
|
alemMevkisiİması.current = netice.alemMevkisiTadilSonrası;
|
|
78
|
-
|
|
88
|
+
tayinMetin(netice.metinTadilSonrası);
|
|
79
89
|
}, []);
|
|
80
90
|
const handleBeforeInput = useCallback((hadise) => {
|
|
81
91
|
const metinSahası = metinSahasıİması.current;
|
|
@@ -112,11 +122,11 @@ export const useMesdan = ({ ibtidaiMetin = '', tekSatırMı, latiniMi: ibtidaiLa
|
|
|
112
122
|
const alemMevkisi = hazırlaAlemMevkisiniMenzilli(alemMevkisiEvveli.current.baş, alemMevkisiEvveli.current.son);
|
|
113
123
|
const netice = await Talimat_MetniTadilEt(metinSahası, currentMetin, alemMevkisi, tadiliMetinEmri, mesHadisesi, false);
|
|
114
124
|
alemMevkisiİması.current = netice.alemMevkisiTadilSonrası;
|
|
115
|
-
|
|
125
|
+
tayinMetin(netice.metinTadilSonrası);
|
|
116
126
|
}, [tekSatırMı]);
|
|
117
127
|
useEffect(() => {
|
|
118
128
|
const metinSahası = metinSahasıİması.current;
|
|
119
|
-
if (!metinSahası ||
|
|
129
|
+
if (!metinSahası || latiniMi) {
|
|
120
130
|
if (metinSahası) {
|
|
121
131
|
metinSahası.setAttribute('spellcheck', 'true');
|
|
122
132
|
}
|
|
@@ -155,19 +165,19 @@ export const useMesdan = ({ ibtidaiMetin = '', tekSatırMı, latiniMi: ibtidaiLa
|
|
|
155
165
|
metinSahası.removeEventListener('keydown', keydownListener);
|
|
156
166
|
metinSahası.removeEventListener('paste', pasteListener);
|
|
157
167
|
};
|
|
158
|
-
}, [
|
|
168
|
+
}, [latiniMi, tekSatırMı]);
|
|
159
169
|
useLayoutEffect(() => {
|
|
160
170
|
const metinSahası = metinSahasıİması.current;
|
|
161
|
-
if (metinSahası && !
|
|
171
|
+
if (metinSahası && !latiniMi) {
|
|
162
172
|
const { başMevki, sonMevki } = alemMevkisiİması.current;
|
|
163
173
|
if (başMevki <= metinSahası.value.length && sonMevki <= metinSahası.value.length) {
|
|
164
174
|
metinSahası.setSelectionRange(başMevki, sonMevki);
|
|
165
175
|
}
|
|
166
176
|
}
|
|
167
|
-
}, [metin,
|
|
177
|
+
}, [metin, latiniMi]);
|
|
168
178
|
const DışarıdanMetniTebdilEt = useCallback((yeniMetin) => {
|
|
169
|
-
|
|
179
|
+
tayinMetin(yeniMetin);
|
|
170
180
|
alemMevkisiİması.current = hazırlaAlemMevkisini(yeniMetin.length);
|
|
171
181
|
}, []);
|
|
172
|
-
return [metin, metinSahasıİması, DışarıdanMetniTebdilEt,
|
|
182
|
+
return [metin, metinSahasıİması, DışarıdanMetniTebdilEt, tayinLatiniMi];
|
|
173
183
|
};
|