From f01de95de625e50815ab84eb9c6bea7add58f427 Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Thu, 31 Aug 2023 16:17:36 +0200 Subject: [PATCH 01/13] fix regression --- src/shapes/Textbox.ts | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/src/shapes/Textbox.ts b/src/shapes/Textbox.ts index 6ad7a168b20..9b407e4942d 100644 --- a/src/shapes/Textbox.ts +++ b/src/shapes/Textbox.ts @@ -22,7 +22,7 @@ export const textboxDefaultValues: Partial> = { export type GraphemeData = { wordsData: { - word: string[]; + word: string[] | string; width: number; }[][]; largestWordWidth: number; @@ -327,6 +327,12 @@ export class Textbox< * */ getGraphemeDataForRender(lines: string[]): GraphemeData { + // this method has issues. + // it has been typed after some small refactors and is unclear how is working + // graphemeArray is either a string or a string[]. + // the data returned is also inconsistent for empty lines. + // check issue https://github.com/fabricjs/fabric.js/issues/9190 for details + // and linked prs. const splitByGrapheme = this.splitByGrapheme, infix = splitByGrapheme ? '' : ' '; @@ -339,17 +345,16 @@ export class Textbox< : this.wordSplit(line); if (wordsOrGraphemes.length === 0) { - return []; + // @ts-expect-error + wordsOrGraphemes.push([]); } return wordsOrGraphemes.map((word: string) => { // if using splitByGrapheme words are already in graphemes. - const graphemeArray = splitByGrapheme - ? [word] - : this.graphemeSplit(word); + const graphemeArray = splitByGrapheme ? word : this.graphemeSplit(word); const width = this._measureWord(graphemeArray, lineIndex, offset); largestWordWidth = Math.max(width, largestWordWidth); - offset += word.length + infix.length; + offset += graphemeArray.length + infix.length; return { word: graphemeArray, width }; }); }); @@ -372,7 +377,11 @@ export class Textbox< * @param {number} charOffset * @returns {number} */ - _measureWord(word: string[], lineIndex: number, charOffset = 0): number { + _measureWord( + word: string | string[], + lineIndex: number, + charOffset = 0 + ): number { let width = 0, prevGrapheme; const skipLeft = true; From 0e195b513cf2c163bd3f0fb98aea420b67ec3f83 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 31 Aug 2023 14:20:55 +0000 Subject: [PATCH 02/13] update CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b558fb957cc..30ff7d92cd3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ## [next] +- fix() Textbox inputs with new lines [#9192](https://github.com/fabricjs/fabric.js/pull/9192) - docs(): add link to contributing guide [#8393](https://github.com/fabricjs/fabric.js/pull/8393) - test(e2e): Drag&Drop tests [#9112](https://github.com/fabricjs/fabric.js/pull/9112) - fix(CanvasEvents): regression of `getPointer` usages + BREAKING: drop event data [#9186](https://github.com/fabricjs/fabric.js/pull/9186) From acf8d46f221087182651a24c74213c834b27de97 Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Fri, 1 Sep 2023 09:04:04 +0200 Subject: [PATCH 03/13] a test --- .codesandbox/templates/vanilla/src/index.ts | 2 +- e2e/tests/text/adding-text/index.spec.ts | 69 ++++++++++++++++++ .../1-initial-splitByGrapheme-true.png | Bin 0 -> 11784 bytes .../2-before-pasting-splitByGrapheme-true.png | Bin 0 -> 14113 bytes .../3-after-pasting-splitByGrapheme-true.png | Bin 0 -> 20971 bytes ...adding-more-lines-splitByGrapheme-true.png | Bin 0 -> 21091 bytes e2e/tests/text/adding-text/index.ts | 32 ++++++++ e2e/utils/CanvasUtil.ts | 17 +++++ 8 files changed, 119 insertions(+), 1 deletion(-) create mode 100644 e2e/tests/text/adding-text/index.spec.ts create mode 100644 e2e/tests/text/adding-text/index.spec.ts-snapshots/1-initial-splitByGrapheme-true.png create mode 100644 e2e/tests/text/adding-text/index.spec.ts-snapshots/2-before-pasting-splitByGrapheme-true.png create mode 100644 e2e/tests/text/adding-text/index.spec.ts-snapshots/3-after-pasting-splitByGrapheme-true.png create mode 100644 e2e/tests/text/adding-text/index.spec.ts-snapshots/4-after-adding-more-lines-splitByGrapheme-true.png create mode 100644 e2e/tests/text/adding-text/index.ts diff --git a/.codesandbox/templates/vanilla/src/index.ts b/.codesandbox/templates/vanilla/src/index.ts index 547838a0bae..9edf52e0c3f 100644 --- a/.codesandbox/templates/vanilla/src/index.ts +++ b/.codesandbox/templates/vanilla/src/index.ts @@ -12,7 +12,7 @@ canvas.setDimensions({ const textValue = 'fabric.js sandbox'; const text = new fabric.Textbox(textValue, { originX: 'center', - splitByGrapheme: true, + // splitByGrapheme: true, width: 200, top: 20, styles: fabric.util.stylesFromArray( diff --git a/e2e/tests/text/adding-text/index.spec.ts b/e2e/tests/text/adding-text/index.spec.ts new file mode 100644 index 00000000000..bcfe57acf31 --- /dev/null +++ b/e2e/tests/text/adding-text/index.spec.ts @@ -0,0 +1,69 @@ +import { CanvasUtil } from '../../../utils/CanvasUtil'; +import { expect, test } from '@playwright/test'; +import '../../../setup'; + +const splitByGrapheme = true; + +test(`adding new lines and copy paste - splitByGrapheme: ${splitByGrapheme}`, async ({ + page, + context, +}) => { + await context.grantPermissions(['clipboard-read', 'clipboard-write']); + const canvasUtil = new CanvasUtil(page); + + await expect(await canvasUtil.screenshot()).toMatchSnapshot({ + name: `1-initial-splitByGrapheme-${splitByGrapheme}.png`, + }); + await canvasUtil.click({ + position: { + x: 156, + y: 65, + }, + delay: 200, + }); + await canvasUtil.click({ + position: { + x: 176, + y: 152, + }, + delay: 200, + }); + await page.mouse.down(); + await page.mouse.move(60, 66, { steps: 40 }); + await page.mouse.up(); + await canvasUtil.ctrlC(); + await canvasUtil.click({ + position: { + x: 176, + y: 152, + }, + delay: 200, + }); + await canvasUtil.press('Enter'); + await canvasUtil.press('Enter'); + await canvasUtil.press('a'); + await canvasUtil.press('b'); + await canvasUtil.press('c'); + await canvasUtil.press('Enter'); + await canvasUtil.press('Enter'); + await expect(await canvasUtil.screenshot()).toMatchSnapshot({ + name: `2-before-pasting-splitByGrapheme-${splitByGrapheme}.png`, + }); + await canvasUtil.ctrlV(); + await expect(await canvasUtil.screenshot()).toMatchSnapshot({ + name: `3-after-pasting-splitByGrapheme-${splitByGrapheme}.png`, + }); + // NOTE: Here is clear that there style bug of #9028 is visible + await canvasUtil.click({ + position: { + x: 176, + y: 152, + }, + delay: 200, + }); + await canvasUtil.press('Enter'); + await canvasUtil.press('Enter'); + await expect(await canvasUtil.screenshot()).toMatchSnapshot({ + name: `4-after-adding-more-lines-splitByGrapheme-${splitByGrapheme}.png`, + }); +}); diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/1-initial-splitByGrapheme-true.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/1-initial-splitByGrapheme-true.png new file mode 100644 index 0000000000000000000000000000000000000000..d0fdb3b1b02ccd13631cd82e72567c837f20c1c6 GIT binary patch literal 11784 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 YwexK6(%oKowVO>-Lr=ZrpZnqe2Y8<4LI3~& literal 0 HcmV?d00001 diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/2-before-pasting-splitByGrapheme-true.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/2-before-pasting-splitByGrapheme-true.png new file mode 100644 index 0000000000000000000000000000000000000000..f82da715153b01cc49e44e54abe8788ae2b6667a GIT binary patch literal 14113 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 literal 0 HcmV?d00001 diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/3-after-pasting-splitByGrapheme-true.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/3-after-pasting-splitByGrapheme-true.png new file mode 100644 index 0000000000000000000000000000000000000000..84c4d8c6438b52385670a1412ce111cf0a664b55 GIT binary patch literal 20971 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 literal 0 HcmV?d00001 diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/4-after-adding-more-lines-splitByGrapheme-true.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/4-after-adding-more-lines-splitByGrapheme-true.png new file mode 100644 index 0000000000000000000000000000000000000000..719bde33f2b910be3617ae810dbc0cc06188a0a4 GIT binary patch literal 21091 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 { + const textValue = 'fabric.js sandbox'; + const text = new Textbox(textValue, { + originX: 'center', + objectCaching: false, + splitByGrapheme: true, + width: 200, + top: 20, + styles: util.stylesFromArray( + [ + { + style: { + fontWeight: 'bold', + fontSize: 64, + }, + start: 0, + end: 9, + }, + ], + textValue + ), + }); + canvas.add(text); + canvas.centerObjectH(text); + return { text }; + }, + { width: 300, height: 700 } +); diff --git a/e2e/utils/CanvasUtil.ts b/e2e/utils/CanvasUtil.ts index 691c84637ff..d5a67672d05 100644 --- a/e2e/utils/CanvasUtil.ts +++ b/e2e/utils/CanvasUtil.ts @@ -1,5 +1,6 @@ import { type LocatorScreenshotOptions, type Page } from '@playwright/test'; import type { Canvas } from 'fabric'; +import os from 'node:os'; export class CanvasUtil { constructor(readonly page: Page, readonly selector = '#canvas') {} @@ -8,6 +9,22 @@ export class CanvasUtil { return this.page.click(`canvas_top=${this.selector}`, clickProperties); } + press(keyPressed: Parameters[1]) { + return this.page.keyboard.press(keyPressed, { delay: 200 }); + } + + ctrlC(): Promise { + const isMac = os.platform() === 'darwin'; + const modifier = isMac ? 'Meta' : 'Control'; + return this.page.keyboard.press(`${modifier}+KeyC`); + } + + ctrlV(): Promise { + const isMac = os.platform() === 'darwin'; + const modifier = isMac ? 'Meta' : 'Control'; + return this.page.keyboard.press(`${modifier}+KeyV`); + } + screenshot(options: LocatorScreenshotOptions = {}) { return this.page .locator(`canvas_wrapper=${this.selector}`) From f95c613c58b00889413b663c81e3856e55db0bae Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Fri, 1 Sep 2023 09:19:41 +0200 Subject: [PATCH 04/13] cover both cases --- e2e/tests/text/adding-text/index.spec.ts | 136 ++++++++++-------- .../1-initial-splitByGrapheme-false.png | Bin 0 -> 11590 bytes ...2-before-pasting-splitByGrapheme-false.png | Bin 0 -> 14955 bytes .../2-before-pasting-splitByGrapheme-true.png | Bin 14113 -> 15010 bytes .../3-after-pasting-splitByGrapheme-false.png | Bin 0 -> 20633 bytes .../3-after-pasting-splitByGrapheme-true.png | Bin 20971 -> 19070 bytes ...dding-more-lines-splitByGrapheme-false.png | Bin 0 -> 20576 bytes ...adding-more-lines-splitByGrapheme-true.png | Bin 21091 -> 19068 bytes 8 files changed, 75 insertions(+), 61 deletions(-) create mode 100644 e2e/tests/text/adding-text/index.spec.ts-snapshots/1-initial-splitByGrapheme-false.png create mode 100644 e2e/tests/text/adding-text/index.spec.ts-snapshots/2-before-pasting-splitByGrapheme-false.png create mode 100644 e2e/tests/text/adding-text/index.spec.ts-snapshots/3-after-pasting-splitByGrapheme-false.png create mode 100644 e2e/tests/text/adding-text/index.spec.ts-snapshots/4-after-adding-more-lines-splitByGrapheme-false.png diff --git a/e2e/tests/text/adding-text/index.spec.ts b/e2e/tests/text/adding-text/index.spec.ts index bcfe57acf31..7dc13869dd7 100644 --- a/e2e/tests/text/adding-text/index.spec.ts +++ b/e2e/tests/text/adding-text/index.spec.ts @@ -1,69 +1,83 @@ import { CanvasUtil } from '../../../utils/CanvasUtil'; import { expect, test } from '@playwright/test'; +import { ObjectUtil } from '../../../utils/ObjectUtil'; +import type { Textbox } from 'fabric'; import '../../../setup'; -const splitByGrapheme = true; +[false, true].forEach((splitByGrapheme) => { + test(`adding new lines and copy paste - splitByGrapheme: ${splitByGrapheme}`, async ({ + page, + context, + }) => { + await context.grantPermissions(['clipboard-read', 'clipboard-write']); + const canvasUtil = new CanvasUtil(page); + const textBoxutil = new ObjectUtil(page, 'text'); -test(`adding new lines and copy paste - splitByGrapheme: ${splitByGrapheme}`, async ({ - page, - context, -}) => { - await context.grantPermissions(['clipboard-read', 'clipboard-write']); - const canvasUtil = new CanvasUtil(page); + await textBoxutil.executeInBrowser( + (textbox: Textbox, context) => { + textbox.splitByGrapheme = context.splitByGrapheme; + textbox.set('dirty', true); + textbox.initDimensions(); + textbox.canvas.renderAll(); + }, + { splitByGrapheme } + ); - await expect(await canvasUtil.screenshot()).toMatchSnapshot({ - name: `1-initial-splitByGrapheme-${splitByGrapheme}.png`, - }); - await canvasUtil.click({ - position: { - x: 156, - y: 65, - }, - delay: 200, - }); - await canvasUtil.click({ - position: { - x: 176, - y: 152, - }, - delay: 200, - }); - await page.mouse.down(); - await page.mouse.move(60, 66, { steps: 40 }); - await page.mouse.up(); - await canvasUtil.ctrlC(); - await canvasUtil.click({ - position: { - x: 176, - y: 152, - }, - delay: 200, - }); - await canvasUtil.press('Enter'); - await canvasUtil.press('Enter'); - await canvasUtil.press('a'); - await canvasUtil.press('b'); - await canvasUtil.press('c'); - await canvasUtil.press('Enter'); - await canvasUtil.press('Enter'); - await expect(await canvasUtil.screenshot()).toMatchSnapshot({ - name: `2-before-pasting-splitByGrapheme-${splitByGrapheme}.png`, - }); - await canvasUtil.ctrlV(); - await expect(await canvasUtil.screenshot()).toMatchSnapshot({ - name: `3-after-pasting-splitByGrapheme-${splitByGrapheme}.png`, - }); - // NOTE: Here is clear that there style bug of #9028 is visible - await canvasUtil.click({ - position: { - x: 176, - y: 152, - }, - delay: 200, - }); - await canvasUtil.press('Enter'); - await canvasUtil.press('Enter'); - await expect(await canvasUtil.screenshot()).toMatchSnapshot({ - name: `4-after-adding-more-lines-splitByGrapheme-${splitByGrapheme}.png`, + await expect(await canvasUtil.screenshot()).toMatchSnapshot({ + name: `1-initial-splitByGrapheme-${splitByGrapheme}.png`, + }); + await canvasUtil.click({ + position: { + x: 50, + y: 65, + }, + delay: 200, + }); + await canvasUtil.click({ + position: { + x: 50, + y: 65, + }, + delay: 200, + }); + await page.mouse.down(); + await page.mouse.move(65, 120, { steps: 15 }); + await page.mouse.up(); + await canvasUtil.ctrlC(); + await canvasUtil.click({ + position: { + x: 176, + y: 65, + }, + delay: 200, + }); + await canvasUtil.press('Enter'); + await canvasUtil.press('Enter'); + await canvasUtil.press('a'); + await canvasUtil.press('b'); + await canvasUtil.press('c'); + await canvasUtil.press('Enter'); + await canvasUtil.press('Enter'); + await expect(await canvasUtil.screenshot()).toMatchSnapshot({ + name: `2-before-pasting-splitByGrapheme-${splitByGrapheme}.png`, + }); + await canvasUtil.ctrlV(); + await expect(await canvasUtil.screenshot()).toMatchSnapshot({ + name: `3-after-pasting-splitByGrapheme-${splitByGrapheme}.png`, + }); + // NOTE: Here is clear that there style bug of #9028 is visible splitbygrapheme true only + // to be triggered the copy paste has to happen across lines + await canvasUtil.click({ + position: { + x: 176, + y: 152, + }, + delay: 200, + }); + await canvasUtil.press('Enter'); + await canvasUtil.press('Enter'); + await expect(await canvasUtil.screenshot()).toMatchSnapshot({ + name: `4-after-adding-more-lines-splitByGrapheme-${splitByGrapheme}.png`, + }); }); }); diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/1-initial-splitByGrapheme-false.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/1-initial-splitByGrapheme-false.png new file mode 100644 index 0000000000000000000000000000000000000000..77797ff4e7bed589a1d4a4e85e770c30f9b0463d GIT binary patch literal 11590 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 To_h!{Msw)v8tar@c8vaisW$mD literal 0 HcmV?d00001 diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/2-before-pasting-splitByGrapheme-false.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/2-before-pasting-splitByGrapheme-false.png new file mode 100644 index 0000000000000000000000000000000000000000..da44f464151d9b7dc9e8cbf4c28c36ff6e058289 GIT binary patch literal 14955 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%0AQr=}TlKXaqEivZGz{{xM4@LD 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 literal 0 HcmV?d00001 diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/2-before-pasting-splitByGrapheme-true.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/2-before-pasting-splitByGrapheme-true.png index f82da715153b01cc49e44e54abe8788ae2b6667a..9b1b6e6bf96dfaee862b7163305432d91dff7fe7 100644 GIT binary patch literal 15010 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 literal 14113 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 diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/3-after-pasting-splitByGrapheme-false.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/3-after-pasting-splitByGrapheme-false.png new file mode 100644 index 0000000000000000000000000000000000000000..f1025356dc07de07f8eb744f950aae0577d1a8c3 GIT binary patch literal 20633 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 J?Uc#w{{f$8RD}Ql literal 0 HcmV?d00001 diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/3-after-pasting-splitByGrapheme-true.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/3-after-pasting-splitByGrapheme-true.png index 84c4d8c6438b52385670a1412ce111cf0a664b55..978d4c00afb5036da29027dedb546cbc432d6232 100644 GIT binary patch literal 19070 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 diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/4-after-adding-more-lines-splitByGrapheme-false.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/4-after-adding-more-lines-splitByGrapheme-false.png new file mode 100644 index 0000000000000000000000000000000000000000..be86f06332300b03eef690d30be1fadb139e757e GIT binary patch literal 20576 zcmeIacT`l}mM@B+h>}HuL{H3{H+}2d1KF)fagoK3p z#&u;K5|Tp#BqXG@6y)%V-pZ3a_@6^=I%?NQ&~5B9BqXOvZYW>X^-BCh@bzNQ+b3US zK5z8vw>&pf&`F~LL#CqMa{arW(FG0#jZcJ_Ev@yg=-$44h0f;C)y0zI6r_(Xggtru z*f_uHcH<8X`s1qshvp(kj~GqYNjE6&iYJJP#@$GekY3%B(@M^YlNMb`D)W|&OO)=q zMRDee^4Xxtd7;Ol*M-TM=x;m?Qc>=-u%M3?V=+`dOZ}gEsi~E4#E}2uk!9hkn&aHL z9qYUwH26IYmJ~S|4I3APH3t#~O^?ufkA5OkJaOVb_Jxa8;VHz6=guAB(@eZ#WW=hY zqw^{;@#PyntyH}{{i>y}Y$FQ`QLkRnDJv`gp08Q(@T^`vxOwyDVw>#3XaGB);f zdfFzzoBZh^dV2cYRv}Z&$#(e-_Fy_{(@bh-XXnk$O{wyq6Rojq*{mCE@;+iZckbv- zDX#n!y{@iq|0V3(ShcK3!HoRp-0W<+j~_pV9lZ1R^ZNpCct&@vcC}NTCd%xdl@*&; z)Z24>e3WS&*+dHag`qm9oZ^oenVGZw2a-cxO@s`IyKjTGVZhhSN+*I`21_ z+V!B5nkoXfTFp&#?wFbc?yWfuRPg=U(Qw?DC$LqWc>O{*=v{Pl(4RjJA&$9ud4h@! z+p~F>Sg6A0cyGOb+`{SmGhT z!d1IHOwY``H`AFRC-2Do}PYMSeSNZW~OQ)#u&c2XI$~}o69--7mdnn zM&?gs2MxNma8!*&$_|>6drReLVpbZ2w7YoqNDV#j+Sv5<_4PIcDhBMW86?X4GCgch zR=IKG*nHI(%^<4B)MmI|9^)~0JTUM;HSZWnTas+Z`}ZvHmA@;81C&-Ku^k!e%$r+V zBSA+w8%;e4xa_rV*tE@(!+uYLgAb=?Wx@B(U$L<{pX|4ML(CrkQ&7AEmla1B;deEO zOeN#WjlKgXy@M&mgTBnM4?||{@;<9YyM70I8&-WK)|eRCfL$s5e8V8;`YrOfxHwGA zFMt$^D6N9B_$<`U)h{3#=b_-3`DVtAAiHE(aDh>rMNHE zmMEQ;C%Cw?76>OGaiY4<;cHe(Kp0#j!;vFLJmz4bUkW$uo**gmUU>j_Ky9Of z!sn;73e(+}$62?SALECvBsHi-jTmcwe*R|oPsL-mwuyzv zaoQO2)m&)#8o`$2qwyUjw`BC0m&;H+R!Gl8==A9;0)|Cb@{KDsZzaq1ja)h}9<{jW z;yUqzk+74O6~M)nBD1hF{{79fJ_ip&C2#L)xSb6YR8;O4i+;4WHh;MK)Ll?CVArd4 z{n4XGUzR6YQAf{_wfeIdvf3ThzkWTGf`Xz*Zna*!AodiLm)UiN&EI6r6U;&;HXEvi zxw)Nd+DzQgvh1PHVPamdYVwyVs{rl{yTeh}2=nvn%efy>NRP?I2^N?IZS|uE3 z5wArH(^lSd=Vo%%+O_fNH{N{7)JRCo_3tgR^cc9QsrkUdTS|*cAO|B})!AEYr8gzN zG3b_^n_H4FKQ|WATU)z`H+Hr~^9TuP_MqMm4GqORRyg!M86CYxawSE< zpN@gyDK+FDgAMCQkHeoOQ*Zz68qO@NpNO8)n7bu;NN|JTnbNcs zrLdjdRFu86)?;p8;hJgX1ofiWf5#*E*|U#<2m4Zfn?<7?LvRBbql$Wuy`N3JL9P$$ z`5@uv&s)vJ6KjX{tsM3G3xL;8=O) z(xqR#B=C!hEIyI??Jl)A<>N(&^E8oF+(lI6WPbks#5&GYj7>?9-dK#W(T-7z8%0DpB(|eYo9y^Mznb)aZ7ztzKFG3OZ2fe3~oU+?Q z>iD)ywPne|2Xnp$o<01Sflt%oODKKrm?Q4xjftGMLOeRD8{@S+l7lWve?L%TpTd4^ z7FV@UzoXl9Q9=Tr)^z+=;8A;n!%QtWK2N*OpmLuzyWN$P1Kp&CM-w+IhaB{T>*R^1 z^oGjw-S^3evE~7;Ec!t~K`bKolzH^iZ)v5V`%~h1+E^}4+yA#kTB8|A~~xe7s`6=%`RnRc({^>M@5rF^77IREeqQ@N)jqo zv2TnMbk%xqsPf?wHA^G<>BM~6n5&mN+2wiE6Qx`~kN7DnD!MNWnYzg*dnKKX7SADV z)pO47?KQ+ols>?g9DDNP$4%G=_l9b{<6CF<@S0I8Q|+>e=CF=jfx8`+3C}2*XZ!W7 zo);(6-#)ZwDv@pb>SEC zql|YXB_(xtcKiPNoFT?N2fd;!9u^)h;8jWHT8yt zHA0eP1=Z0ujy|zm0Qp9jjXVoqL`2~B`XAoEKb_kQK<{mAEYYkmevQ~e>^HNqv8k(6 zL5;oe#71)$EiW%C-@g57UUCyDnt;yqD&Hh0&$~~rE)1KSRJmLQcqCOmXzW~U+$>W&*jnxwEzMxoqSy&-;ULSz26KP9KbR=;`P_`0#YV_Y#dlqN1XDF{nIj37dq& zukt_ncT1H~sPfr;ypyvSYx5*FLFL-DCvb~ULl5gVR8Ed=B;fFCYt&R!Cq+a=FqP#2 zdp?$8ti;+nfKG&g)NLyZ+iVU)ALobj)AT1!q+;r-s-$oh6f`tU{03;8=qUxgm(Y~Yt_iL@qEG<92m-8;Uv$F-YLDv7QP72AP)A&O3LSJLpRjzdvjC6Fr zyX&?0yzW_uGhCb6XpQ)gee(PTvi_lNuYr6tT2)`4>Ghj8u2}J&MgVX1_4SzN_j2;{ zm2ciWu9>0`!6az(!Fy#AeoL67&F$r1O0*wSQ%Or7w(HkDSQ@N$lk!k}&8vZS=fU{@+&z?Y?B>-NO*m&`-J)5pfYG9uPQ;80}h@gzo$pq); zpDcb6>Z__)INiy(Q}a%csW;0m)IJ4DfIzW%p=Y7{Tx6|553ungFZhxh0dNhP9;Xiq z%1{SHU!#7S`%;m+ZC7T*KmY72$@u4=Ly5u+(R{yUqyN{M@;tVNGF!N`?`3-WS#||K z7H@BFDbIQKwq$wAGl%{B{C<5@I$GvD%z5?d)k~}q5k|(Ke$?;G%ig!PJ_7{QvA--R zC53BucbATpwf{8X9Ecu8z8g-+Kg-IpRaaNrbfg{u7}f!F*?qSA7$A7s8oO7C!AGlg zxs}a6deqF$+R?MI@js_J#Z5*2l;i_Z#A#3}8fj;yz|p$P_W>=O38q7s60yKol@7dJN2`J#o2>bEA@My95+ zWYgbrLMJG`gPNhvhedr6&7&rx7yikDZfAWiZ^d3;Tl);GtzK5oCmXRaAfK6S1DSbj zWa>}T8ZYwmGXUq&_Zvg#&^h&(P;q;FD4=aKmIzg>B=JvQDXJ$!vZyRFmt7tx!RRUx zffg7nbhRa{l|dpP~y02#8tHjFe(C9H?|=*3;9AnQ(jbNcqZ@ z$CHnE-`sc`6Eo{m@SK`06O)`0u>C#L(a8xtS3RcK$+?S839?EDdZXs=B?ZvnCA zqP5ziu|Z@<#fY73hN@}W(ClGxq2@Ar>94?O-%A-0_O*-rMwnDjMi!<$=IS5`T6tO%5i`_qJVl_Xsg*<9}scu z7sH|e;gK1jO-_U4@j37DwwKSsK1l6F&3qG4`j65m4&(uv*wwN;lPGT zkG$O6vT&Y9JW;gyB_)@!5*IF92VwWCJ}~INK?v(wqoTZX_wJ0l25JI0T4UoCtVc&j zN0^#y!|pOAC}|u*zQAHGXa@ccI(q5;H#*!z*^^h_7`*%}0Qb>?0!M>rN7r02eGYh& zK&#<+^>%M@lCY^aG+YY#)q_BJvt^vOmM6US)_UeLg+VeBu3LSL#)J-jA0x}NZjI@! z^%i|j%jG25ZgI(?={fZ@E-x0l3U~P!89CJz6O+WrZ55v3_|}#dHG`TbPe^NQPn|jy z-zt6lH@?8wYJYbN`1UnbRdTpV&)}riuJ_x+iGGHB!;P@;6z94%{e06JCRmT_H*bF4 zTAAvAg5gfYV<)+XHaERMSUD=|@yErgJhI%0U}PYh(WoP9@NfK_IypJ=5E=RJXf@7a$~-t^XQZThHQwcP`6^Kg3lAKegUxlrZr)4~<#j^X9L zd!5kSy}fCCiMPk4GZ~$ z-4(+!o9NkHLXBq{koE{eZGuU?-`&!PPZmWxQn0;62}*LZ826Ct4|ERWORQUqfDYoe z##*A(u3Wi-@V)k}oYYiqtOVIn8r{U9(uZ26sGli{<_5CdeXy@MWId>$l6mw_#yw27 zO}At3>athh<5Mfe-qDiJklKTl?9gke_uuhaPD0=0@Dj!jYVp?}y&$Iivs`40%&$SC?QHsJNlX=xqEEh6&TxjS*D_NmT^5L$oyNUS&3Fy(~niW#sjFs^Jv3)NX+LPA3F z=8f;(jcXE_R8mq>0osJ_nE_cVyDI>;OGla-ZL@bcli;K64HW}PE%q)#8ksu98B#Jb z;_Bp|p28FsNvFg+tt?dJaQZ9_Vnsc%cN+rgM(ZQE6wOel-h4lMSyVL1ryx@+Wxk{_ zGBorTN6f!eb37FL!~n9kcyV=IJ-rve0AStsr%8oBM#dXqexKcBhEBdCJ!gGo zAmQy)?7Meo#Kjq*d!6U!R|4Y!(Y6QO-~1rO6NN5bv$MNcQd-)9LD_rx`Zl$<(}G@) zGm!u#5e$~;?i_|8{|(d4ogMxPxWdm%V=b<`o33Zio<%gO#r1X7f3QEwH{XL5{I|t= z#iIZb0bS+?_8nYXE4RBo;7mdi7#Ij@`lsPxE-i(vbaYSn`2*5l{cJXA&L3W>p3$?Q z*B)E?(zrYwV5qE&|Ihnn{~lcaFS6tQ`{V!NXwJaBZ5S~>*k%T+3y}Z-*NnU~F#80k zWYE+o?Hgt53zLoPubgks-E$PnlF{M6(kJ$KLCD^wWo`g@3@WZo)Z!*$>9p8y4SUZ`VY8T=b9pA(#xIaOPe z36_^w+$)8Jgr3u-9^!wL0!s8fP;<`<3F#-A-@g6$jMDQD`T6`&>!qA1hVC% zel3SeiYr3XGc$)kPmWGHYJkN`f0>L+ z9%wz_@0BO}2?+~(+REn2lE=^h*KqYb=7a*wHfz^YZr_8v8QQUe>D+3)rmiQI0Ebb9 z!_54N!P(*#&Mw?Mv@+Y@HwV)ID#tq_Tn0+7YIdfrmBq}jTJNraxOqT-Ka=GLEEB-R z{Ro{nLRWhX146V&;J#moBZx;)`UOVf@EZ)e0{C7#0Vm*1O-q}@_yFqv^5u)g__t`M z+;=b-N0uFhLtx2Ha)>U>D2vhjUW!(WV={&hxf zv5_o(4oJnw!~~9lu{x^HLG{4{-bZe32z>hM!Qu1cYFh1dp)g6gO;X9AX5IBthJQAY zl&zEZd;JO;!|ly;$J!6oO3Qf8zl72ayuH$PphB>}!jU+CIsWWlE_*#N*jgeX`t94` zrVv^l;A>Ein)*s@Yx)QNnFV-wCirnw6s?T=^kXR3Jm=4Uo8MJZQdd`R@*MUL$p{oW@FAFC8MYkB{F^l=D7;IO_oc3jO8w zA%HbUMnbq$!6?s|0~1*UEF;j9IocHuYT5EUxGs=E;~3k4?}-<;F9Nd!+sbSAl1-8Z zHe5(yq4QIGC786g5~YxCpzmmPiRF@Q=h<4Yh>?>Z-V+CI1AxX4(BC{cU=KF|YIF7u znCUzRIEf1`xWaTGJNvwVSuG26ts^A2l4KY`M#fa4KpH#^lKc!^8~ieW1&cFTDcs=R zm+pZAeF-)w`GIO@-<~rrmk}`JGkbKks=-cf?nML!!#cV5qSc}}S;Xy5LK9#5!C&|r z3_%K7TIZ6Wa|9deVZW6KSY|i7v(NgYKyvQQ!O(EZW!u-q3Yne&=gQsZZ3t8fTl}k6 zuYRuvI1SemO8kH}f;|&5c^UEn*C@_>ZfZ&zG6Vj0r;rHNqMq90Up_yRWP5TPrSpV# z0>MBuCAR(idGgGeGpPL?z}cQp=Y6TQ*bA=4|4)*;d*u1QL2}Kv|4DKY=Vw=~3WyL^ z27I$GF@na4H2H~%?1VE7V5S0Dhcd-2D5y~j!3ZH*fzrPG?V8n<6@~-}#}fc(PADiS z&{V=PTbSABkjX14(K&nW+zYtTHDX2ZdAbJ*M*$+h=@SOY_3ZY>LLnvzAcRB}C{Sz<_3JcHh)FI(2Zww#W|cfCX(;LSdP zWj)b$zTk*>z4)#nSv}eL6a(RNX6V z*p~rWDo?8LPL}58a;vaoru2&A67I_w;;q`+1Ln$m?1YFv*v><}=@{ANOYzg` z@j>(|gSS>9);~@P+$}l$>C>n8m#vTAyLaz5-0`ljHe#bI?TQAwMrI2JYmp}z8Kr9< z_hK5N#pQWU13Jc43&{tEqs<1uVV|w-?$$kg^eB(C^j+5gLqirQhl1@;EKPOZILIj! zt-fSPe*HRCY7fFLT_*a@TtWuZ_<{tq>u4otLM4vzw|K$$>c2%vNvQ;`0th7$jQsi* z06VX1YT{9K_e}*&G2J8f1s*xAP?QR{;t3!ltmPJn=o%Q<(}*U;#l7&IuRdz-xAbgu zSK4jTFaR%`J&OAZWFI0C@s8d57XKH?A;agarJ#&VzqJ}Q>|dSQ(=}keP7`V*RU=rR zL82hm|IZyAGc&ZbTtvSf1^8LeT$5)XA;p}6BHO?};-gA9lZRTl-QNfgf(C#!-xrk^ z6FUh27`CE@$9XmoOak_{``C~3pAxwjJnAm*DPsG_?T}Af-l0ZN1WZfnfKFoW%dY`X z`RIMtmsn7l+r|b}5SpvCXS%pu_jz2`q2zCI>M8n#W)W~&M}Y+u#qEQUGX|y8VC_78 zBv99KhrScw_kTt5F_WOVIP?}Bs`FVZiQDheQnYM*d?++Lyvw8^uT5(@W1}G--*Qy` zrE1#zV~6WL^}R0c%6-7hUb0J{fV9T9@87Qiwuh`l@xA6Sa{0^d;_@j>`PL5~^1x4n z>!c1y)?@FpN3tV9yABWeP;BvFe&Q*puXSTbwc)tvIWP@{c0GGfH-7>ST0$RaC(o^*A&G|II@CeM$nCusgo>oY5tbsqZ(vGWov62?+B=a z?c<3JHdzmcq>!cWKYt?L;%w!pM$p?J)X3)}NFz1HxEJqCPeH&8L>*-nm6`ob-22s` zwn4_GEUzD19P(2|Q0ICm-c=2Q^cIfv(6*0yCMGYD)d9&=2z`sD^9UX^B?REq?#$PC ztlZ*dKxoiWF27&Y?`G0A#%Ja#hs_ooy?;pFfXY+%AOQe_L|oe|$n1y$g?DIckl_&( zy|c8?aN!ki5um4~PIcjt?|dn`yJ3SiVu+&0smPs?99cwSQo@z|$oF#H2+^joDNh6B z^CeIR@zP$CZAsyj%tBRF7u%;!1$M~D{ab>|bahhACyT{zQKhJf?5KC;@87=%tXT?4 zCMsC+i|Y%+v~RwTuPzS<9{7{#PV}WyU~_3qKDDwmdF2l5vUo>w8usb1 zM{>`ThxSM=1@7;XOWV<1`we0(Y(Q7yIYA_dRcsYPP#cC|+b$HfT#gU8>8;CSc4JFH zs6V|TFFED=EfXFlduK-Hy57<%+=4cXmC%x3d&~c0iKQ*^&hGddEt3kuKP>gp=WI?_ zK<-46fDoACgwydERBn?Bjyi?iMJ2iY&9TitrR{$v%Wb>J^9%~VLioeIP)qBeA}^xl zXiTSYWyQZE^ccJwr(dO_zhectDoqY+Xz&*TqP6edeWAEFqlMV-1nG9bm}w9tLy)k$ za|@##rmPlJ++6c|Dh`>Gu+=czzr24)|M)t-*?SFkKGi^A?m=nIokJip zDF51}#HUnK4yM>NGJZ)(0|Vh1$V&80{#XYO7hyw~deox{8)_qFfxIJm<&b1lDvcO= zg~F{p^ywMPM#m3?%oN-A2+4s0MALpO6Y_8$LpZNpyG9Ca$-b*YpCaf8C6kR)7C1P> zp28ke1OL0`F{03QLJn>_S5Gi0tEtJFm@5sV+ZepvEoS7eLOkmKL5I3lCo616Em39J zL>{sdD`=ca9JQ${R0o)W_ApxY(DwU(RKQOWt6gT8L3Px|eV#p~ zx}x6-1ImcBJg@gZWGiF$e?zuf`uVT26+jTo?AB_RR?>*?=3`hK31!|)nKmXo&i-ZY3`^8=!H8$>Q&zWitQ(Ii?L7TjP^Qq8ka zB<>bB6p0ODna7-wX*qJUH0$>5y64Xr?tGjgX9YDnyKCXj3>=X(udy&7!n0;AaB9Wv zBVqg8uxS4B<-8Cx6B9465bK@*fGfEJH`Ud<@@wkEJf4ynN@LL;{jL%Jnsd z6dmiw>a3_wkT^l)=g?#B%-0^oLWqP)xR$Lgf&#CchOJB)DEbfBFgY13S_akR`M z{O88b4<6>9Et{UtY(G6lP0a}ZEYUhE|D&Y7z}N9+5Dw%+S12H$Y<`t#n1ObczOz0F zO#$OXlgD%xK+q@@S=?TY7htAYKQ?d3gg{zj%4HAa*TR);L`d^KP?bN(-(Hp0C(A0d4;misyqTQ0&lm8D~BU*i+@!t(T+KkAd#dGcsmi{`~&*ROQ~i z)FzDGQT&r5ln#+bu<8DW6AwD5PhD09!?8D~hgV#@d?@hGO)lAPDo(j7vw_YP?Z3db zOA-J+nK$tU}lgh%enFdcpU=K$Wur>4^K^Ql0_Qvp`xPMxNss~Zfj-+%Zp4WJQd zcF$8%Qf3K8`59SRJlx!*kc0dTrcs{EV2UrLa*Uum*b(F7N8kMBoqVnMS4Hv zk)9P63Mc!_UH~rNLdc+>`D%=lJjBSzh}cxcRxLEmTL69`o$144ppqO}nafxCUeY<) z&hStpq{*IvTp)Q*MH$u9i1~5sOp(jTHLM4h|Ee}*<8>9O^7974AHEIlZr?nhnuy!f z+IyFZ(2wBbG5r8$ii7yiOHjr>Rr@Ynz9|o}lOUT&9&q1B)rohqR zXlum94k2n4Y>;rcfz4Z%mX@3Cf%{Lvq8EQ;J^sD7AZTzD;<(K(82AwDw8k64g`WXo zp3*;igws-71itpVmR1XbN1>K~^mf~C=eADv3Z9slC(U*>b;F7S$8qsIrHuLTQQv{!@EG_2u$nR;YfXLqaYLUf-v{y2%IB7l7rm{NI)^VnRp%(9P%ye%4)fPGL5?ybz6Cl(^i=uhiO zCVc;hNsLJ6%WMKd{#9;o;Lu<8-DwC;6cSvp*jyaRZRL`3A@Sc{MWk!i^m}~b+Wl&{hCAJJmik4dv z&^^=*$H+417(+zJetrVTd~#}Uv57Xf70IJ}T=ksz@y@45NrQn*JqzH33_FE0Bz!%( zVB6$Z4}q$T%R_&CotT&}BMdq@k^xUr1o;GH1mk4lsg&^R$KZ|db7cI|K<(|*um?*V zbOjD{B`ESk<>Jp_%t$6t5mGS-VSG^9=VS&m7$Ohb*jwG8tYYq2%)ps@3HK(qO_DWY zaam`+lZl>w#DxHJ71;)k5fd=B(dEE!>eP#dy*Xzo-}QV#EyTr7LiYST32Y$_GW8H# zo`I|!W_f8zJ4w>xk73A)eM8cLLQv$(`!@<=lxo)s=n+E~{hQ#3`N2=4mKA-$483DEe1tn!ut8l~1&Q6`y zRp2`ywOIamdx2V;Tl|oYN&K6Xlqe8_khJ;r8#k^(dHq%A>v@=*JQdc^3xefEP6Qd8 zWFVYTeYD972rS)y@BlfZkko{z|J6dXIy!*B2~Ij(U8-{lpICvU&`j-YZX)^$xO+{| zpIu=}K!!?MYkXm0Vf8YUE_xVMcnb3N%r@zh>u+jgpWMAOD}@1R6ATl9BpMCgH}_hw zz(e~B+QF;@Rk%ho5>F&M4Z^~=pFef;zdK0Sdtj(2C~QJwo2)sZ7RI`>Cqey85^mW7 zBE)K`_5EG1YxfP{Khwhvib$yV!A}+l+VSx4kb$H63Cae0G8^gRIMIjwgB?;55=_Y1 z($=Q0-yEfEU4`1WyH*(344LRZ_~?|B!n;|?44no~Z@l4^t{wjx4T|2vdzjS-=TGHr zA-u3HSf|IoI-?|@b_IvSdCWzzOQ-q->+M{A4dVbmNIG1axe zL#&~Bkww9Dqd*$bJqr@5Vz3Q$RJ! z>_sgaNfM?2ReCr=DA^si4NA<69bXN^o*))d(bfthG8~Y#LRqSGzx8skfLj8&uz_Vi z$gG6Tb)$RihwJOGZW)CW_9>e}7cLarcY)W6H9BO`o-B{)H>HN`N+c}*XNybSwp*Yd ziuGP+bVsf9Hp17Hcq<{=1OfpG-kHhrzW0D&cpO3@gGBHbzz;9TYcDmD(e^r~c?@67 zFq?|3moKYuo6GVlJa!j)4sYpA9>&s*2n0#Nb|Bx6z!NAsEg2>_6@UtsEU~ z4oCHW1t9hX$~cT2WfL%bx87UyD1ZvMu@wjG5s&I&d&}Q$i9<4EnVLzntJMOa5RBHH zH5ii?;KRZU>>o8!6ifkhO|W?I*lCAKS=K; z>ptwV9=D)04LDi>?$`9^p9$m1|NQw{E3rUg+5$!d;1GBDzsg(!G=cWucAt1Qj5}Pc~2IgtZ6r^;HG6|a@naCRFEI6{o&{bMj z;0X3pS<6A^k{LG2gQ67Q#9<6lZWGLrrOGs5Fsw+zBSE@*Uh{9Bgo;AnS%iW?5tW}@_b%a$Q8*Hwwt{%<^9Bpj} z<0&SEjEqcNc^4hY(Z+;1mv-prMPzt5?M@-ht;kY z)%#IAZYs(X80+GP}!QZ7tMYmng{_H2i>gnp9->2H;6oAg-mb(sm8c4n!QgJR# z)RG7-kWhO9LYq>aet|=bTjre!(0-G0a}=CvmsAs`keNKlVa%2ZJ#^~7soOM0*4p7U z(qrn0=%V+$%|vT&A#Z#l0I^Xp0&=h=5cwchGGO z0z1!}u(t_SJ7?p|`}qh3T5>I4zVw#2|NL1d{leIAv*Fo03^!ic0cbA zgy5vTz{QIvfTU?A1snJvS;IBdukGhWlSsgnh{AQ@u4uJrtMM&>GSUo_KwrSK6c`;F zQ)vj;)3vYn+bTh0zSqeurPqiB9l3%;`~D18-`U+=Y3GKL0OPralQ_NK7 zxM3@1kbMdnegX>Yjbi5dWF!TEV3JK42*%(fYuA+Q<;B7E18xrJaP9aEIAui(@03BT zC?i!D^a|LX;cH&QaqbpQE`c#)T(48f`MWUlPA1-9T^uCiV4%Bb$-EAmlYiqh$KA(4 zai@{Zmyx-ar=j(0`dB_l40j`6D{PH3hyYtk2xN`qL`v@Y3rj@}0gt{hkmbeEIo0CR zV*X)r?;P~7aY2$8f@WU|Du==#!IhqofrM-z#ra9Fau7zyNml>#by<2o1DhX7%0QJ1 zf;lzNq2}gY+~9U2v!=juD{4;VazcQo1yDU=VgswDMp`DdCYpg;(3ODa&bw|3&5P%QpzT;6m(mb1Ug-iMp`_By**q$vJz|6bPHX^!ky-;&a+ zu*|mqblPDcQf_PfjYQMvpbxPizE!m7Iyo?^MktbW^z@eA`~CKXmbhHK81-0Wa1o0_ zQUcWaT+w-pJRipqSmDrnsb&W1XH3f4VJ6??H&iT!uOS(Jo4wBxl<}DG>hk$>He#%E zU%&7zD^m%4e-{&z+h%|IzL*CI2^}f&TmS%`B)=hu?oky9q{^uOg!g6gm~p5q3OH|Z zPZk}_aB8`Bnrd|!Z|d{UjjsnmuXj3?ky-&+jMVJxZzC4I;P7_Jk@75`{4*242qT|Y zAPb9%(6PgACn%@(_jV<*1_J>_Fc*kAvvyoCSqC9Uk^Jj2a-T6jc0s6wCdl=7E?L2! z6)+=WoIpO$@^akb@29jEX;`o8CP3Q}fianAK60l2@I?Rri?GwV7a-ihPLy(Z19B?- zp_&_-y#y)dUTAm4cDReMi5bAf7AB`+vFHIg_%JBys(?aWVB+{UL{Qw6GL$2brxU!Y zgHOsgEG7k)_jaAM9T3JCVe|PS>JHrVpot(ezanQ00cxBo{IK`OZf$aDGE9(w-ZoI|IGjbqkP0zDe~77>EW$tZZh+ z3HJ;1ul1Zi9rNrL;E*>wn47Xj`PFs`6N4m2dLqu@{-A^|WI0?RoDdI8`y;0|g~ zDUn}bx}$GqhHMUmQ@|`W*CJ2{!y3V4^3|AW%I zV2kyYiLy{h{7-sNW~=}{17d=FZfR-B^oL2f^Uyv3T2|zxO%}uL#O`6++nK>W^jOO& z5QVXCS9wroVe_|T0~NX*liFL9V-{gxscG8oYya>KENj-t%vBqH)Om< z5giwo)BgYvP&`Vf=^Ovry@<8B#PS7-q3(vbh)74~KA`1L zSWwWGngPn3>;Zgdw@}${1${Yp%^$QRi9#%_J2Fv-{9*`Cms8>)Cec?g_TwG@J-EuS z0}I%<4}0)F`ye%_n3*Np`FAh=9Z>(vUk;k{^77{TxuhQ{ixVHsxq zOKnSGY_PQ!Oj+a{A`6L=+=b%&civD_GZKv8QeP_}O<@0@kO$ zZUo?@Lyr@*2MI^jNcNnndYBy<>f{v@)18~3gQAT(4us(>bRWB}Nr1koo(n@BJ4+BR z>MyH#G!X`qArfivK=#lo!0>BCy2~h3(f3`!OrJyi9{mcA${>ztj%J;x_ zv+u$~?goTx2nl=77dEW{R2nQa<`4^$3A}>Xj0)yJo;Nf!Xbi;90ER|DVn(43JP89reoLV6@JLA+8gR6&o~_(JUJt`IPW!+w z1Qd6+wm?m6X&?n_k}!a`g5-fm59dCT<$Vmg{uv>mw#$3)1dLxM=I~GehvbJ3ALd0~ zMu39_0fUn0vg=1f27KNVTAA8WJix6vp?yIip|5ZbI_mv>p^l7zVSvHEi;WFIo>zf9 zBLpE0ko`IX8>XkE&HbnQNhd%;#onTxGo30MKBgI?i&4(pI>H!$P^7<4;t1}Fm9XfU+%;5!$m+{I0AkKh~0VU zw6e03U0GUcu$wQzwkK%>zask08$>S=H=Mf(rNuGXp2Jl9ZGYiIY_tV7S|2eyu&4{D zD_HQit9}AN{*ze;Gb8Z>+{@FAq)5~m5W58cfUp(H@+ zxts=`KnH3SD6!%;gqtvM;J6~k!;{uwPx4s8vApT2(Sl6bjz1%TJqcCZ{g2`FZg56II19AU`jLv?-sR39Wtbq6xDvaEi6 zxJvREW_uF6pM+LbC%pgv}qF)b|^o# zqJ(WWA)=%aBrKZ_w#9*O6SWH@G8np%;Kuv}JWBwy2PDQX7YKr`prWs@?||u*dYCl9 z#^)c1K!`?XO+5@S;wTbeq@qI3A4FNLEBC=B9t8~uSEtxr2DJ825?=Y@Kx?t!H671X`e%7BuFUza+UMXE%w~ztl!Ocq`{mu%*GYPtwSFo za>kl2NTx>S8>jVG;dw7!9+?IjVD#)|P)cvt#uRvDbpaR| z5ZGvDHt#JzMoGzVjbaIcg5iLA@AkuRcV8v}$g?i7c%CJvdr4;oBa_x)<9Q*1?wSLn zG0_D&?QX=#G-%L3pfBR}O-vlRMCG9#pd&LFlFs7Ri70R=Z_w!fjK5d5xwKYdf@vt}jSzpRMWrvY331L7<{xYSD0T zb6auyo3ilG32e^-oGc8Hw`cK7qaCj@NBe2X$N%KlNm;a93NK;B5c^BT$w>(6C4z7f zHVqFsxe9Zg*q-H^Fk|xs9yfBDkMHRI{yrpSDr@{E;ldGK3r_5xW&4dXc*q3eWrNxO zoQ@R!tLeVdtc;^ukeht+FCzley~Syh+fX5*-@SVVG-elEW|GH{(c=a#0Nu$g$?j)c z+gHSfhT30d(?R;zGV}NoikP?&`##!Z-~W+XFMH&9?qCe4vhw`ci=c@m0&8ff-T(G^ z2OkeSE=5e6MAz`2=GKBabd-j=r@<9v5|@ah0sG6@>TaQ->`RSQ=eTwLKYV^d>VbV0 z&2@OT9?9XoKtkjdwQtXh9#dN$V*5-g5q!jfg0h#6spyP=g_2?8|8M?*{(|}I-IDDz RFXU(4P|;LIU$c1fKLEm1WgP$j literal 0 HcmV?d00001 diff --git a/e2e/tests/text/adding-text/index.spec.ts-snapshots/4-after-adding-more-lines-splitByGrapheme-true.png b/e2e/tests/text/adding-text/index.spec.ts-snapshots/4-after-adding-more-lines-splitByGrapheme-true.png index 719bde33f2b910be3617ae810dbc0cc06188a0a4..21d686e612a79ee9d0615ec7390847f9d0ac1312 100644 GIT binary patch literal 19068 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 literal 21091 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 Date: Fri, 1 Sep 2023 09:20:23 +0200 Subject: [PATCH 05/13] no changes to sandbox --- .codesandbox/templates/vanilla/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.codesandbox/templates/vanilla/src/index.ts b/.codesandbox/templates/vanilla/src/index.ts index 9edf52e0c3f..547838a0bae 100644 --- a/.codesandbox/templates/vanilla/src/index.ts +++ b/.codesandbox/templates/vanilla/src/index.ts @@ -12,7 +12,7 @@ canvas.setDimensions({ const textValue = 'fabric.js sandbox'; const text = new fabric.Textbox(textValue, { originX: 'center', - // splitByGrapheme: true, + splitByGrapheme: true, width: 200, top: 20, styles: fabric.util.stylesFromArray( From a0d13b1118695ccaacd9cdfa5875c3dcf367a46c Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Fri, 1 Sep 2023 09:32:43 +0200 Subject: [PATCH 06/13] more tolerance --- e2e/tests/text/adding-text/index.spec.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/e2e/tests/text/adding-text/index.spec.ts b/e2e/tests/text/adding-text/index.spec.ts index 7dc13869dd7..3a3d52c0e05 100644 --- a/e2e/tests/text/adding-text/index.spec.ts +++ b/e2e/tests/text/adding-text/index.spec.ts @@ -64,6 +64,7 @@ import '../../../setup'; await canvasUtil.ctrlV(); await expect(await canvasUtil.screenshot()).toMatchSnapshot({ name: `3-after-pasting-splitByGrapheme-${splitByGrapheme}.png`, + maxDiffPixelRatio: 0.03, }); // NOTE: Here is clear that there style bug of #9028 is visible splitbygrapheme true only // to be triggered the copy paste has to happen across lines From dd8278ccf538fcfc88ff789b9bbf0b31ec6c25de Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Fri, 1 Sep 2023 09:48:31 +0200 Subject: [PATCH 07/13] more tolerance --- e2e/tests/text/adding-text/index.spec.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/e2e/tests/text/adding-text/index.spec.ts b/e2e/tests/text/adding-text/index.spec.ts index 3a3d52c0e05..c62670b7a8c 100644 --- a/e2e/tests/text/adding-text/index.spec.ts +++ b/e2e/tests/text/adding-text/index.spec.ts @@ -79,6 +79,7 @@ import '../../../setup'; await canvasUtil.press('Enter'); await expect(await canvasUtil.screenshot()).toMatchSnapshot({ name: `4-after-adding-more-lines-splitByGrapheme-${splitByGrapheme}.png`, + maxDiffPixelRatio: 0.03, }); }); }); From 4803a1951f2055a3df42f75601e324c6c750521f Mon Sep 17 00:00:00 2001 From: ShaMan123 Date: Sat, 9 Sep 2023 08:55:53 +0530 Subject: [PATCH 08/13] suggestion --- src/shapes/Textbox.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/shapes/Textbox.ts b/src/shapes/Textbox.ts index 9b407e4942d..1cd8e29ecc3 100644 --- a/src/shapes/Textbox.ts +++ b/src/shapes/Textbox.ts @@ -345,13 +345,14 @@ export class Textbox< : this.wordSplit(line); if (wordsOrGraphemes.length === 0) { - // @ts-expect-error - wordsOrGraphemes.push([]); + return [{ word: [], width: 0 }]; } return wordsOrGraphemes.map((word: string) => { // if using splitByGrapheme words are already in graphemes. - const graphemeArray = splitByGrapheme ? word : this.graphemeSplit(word); + const graphemeArray = splitByGrapheme + ? [word] + : this.graphemeSplit(word); const width = this._measureWord(graphemeArray, lineIndex, offset); largestWordWidth = Math.max(width, largestWordWidth); offset += graphemeArray.length + infix.length; From 95115c024146b1df8d51b9db55b9c56b69c50c47 Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Sat, 9 Sep 2023 12:19:58 +0200 Subject: [PATCH 09/13] Update e2e/tests/text/adding-text/index.spec.ts Co-authored-by: Shachar <34343793+ShaMan123@users.noreply.github.com> --- e2e/tests/text/adding-text/index.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/e2e/tests/text/adding-text/index.spec.ts b/e2e/tests/text/adding-text/index.spec.ts index c62670b7a8c..d611199adb7 100644 --- a/e2e/tests/text/adding-text/index.spec.ts +++ b/e2e/tests/text/adding-text/index.spec.ts @@ -24,7 +24,7 @@ import '../../../setup'; ); await expect(await canvasUtil.screenshot()).toMatchSnapshot({ - name: `1-initial-splitByGrapheme-${splitByGrapheme}.png`, + name: `1-initial-${splitByGrapheme ? 'splitByGrapheme': ''}.png`, }); await canvasUtil.click({ position: { From 0dbc933cac764444ebd7301d346a7f4babac3ebb Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Sat, 9 Sep 2023 12:21:55 +0200 Subject: [PATCH 10/13] Revert "Update e2e/tests/text/adding-text/index.spec.ts" This reverts commit 95115c024146b1df8d51b9db55b9c56b69c50c47. --- e2e/tests/text/adding-text/index.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/e2e/tests/text/adding-text/index.spec.ts b/e2e/tests/text/adding-text/index.spec.ts index d611199adb7..c62670b7a8c 100644 --- a/e2e/tests/text/adding-text/index.spec.ts +++ b/e2e/tests/text/adding-text/index.spec.ts @@ -24,7 +24,7 @@ import '../../../setup'; ); await expect(await canvasUtil.screenshot()).toMatchSnapshot({ - name: `1-initial-${splitByGrapheme ? 'splitByGrapheme': ''}.png`, + name: `1-initial-splitByGrapheme-${splitByGrapheme}.png`, }); await canvasUtil.click({ position: { From c416dbe58a7f48a6e1a467a064310aece58fa3ee Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Sat, 9 Sep 2023 12:36:59 +0200 Subject: [PATCH 11/13] remove the unnecessary double type --- src/shapes/Textbox.ts | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/shapes/Textbox.ts b/src/shapes/Textbox.ts index 1cd8e29ecc3..0358e33258f 100644 --- a/src/shapes/Textbox.ts +++ b/src/shapes/Textbox.ts @@ -378,11 +378,7 @@ export class Textbox< * @param {number} charOffset * @returns {number} */ - _measureWord( - word: string | string[], - lineIndex: number, - charOffset = 0 - ): number { + _measureWord(word: string[], lineIndex: number, charOffset = 0): number { let width = 0, prevGrapheme; const skipLeft = true; From 5f7eef8b449eb3075cd8b01f3acc299e94e026c6 Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Sat, 9 Sep 2023 13:37:37 +0200 Subject: [PATCH 12/13] more removals --- src/shapes/Textbox.ts | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/shapes/Textbox.ts b/src/shapes/Textbox.ts index 0358e33258f..3714bc570ec 100644 --- a/src/shapes/Textbox.ts +++ b/src/shapes/Textbox.ts @@ -22,7 +22,7 @@ export const textboxDefaultValues: Partial> = { export type GraphemeData = { wordsData: { - word: string[] | string; + word: string[]; width: number; }[][]; largestWordWidth: number; @@ -327,12 +327,6 @@ export class Textbox< * */ getGraphemeDataForRender(lines: string[]): GraphemeData { - // this method has issues. - // it has been typed after some small refactors and is unclear how is working - // graphemeArray is either a string or a string[]. - // the data returned is also inconsistent for empty lines. - // check issue https://github.com/fabricjs/fabric.js/issues/9190 for details - // and linked prs. const splitByGrapheme = this.splitByGrapheme, infix = splitByGrapheme ? '' : ' '; From 6e351f845826708c0ada04f47f8a4e0423888ac9 Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Sat, 9 Sep 2023 13:38:37 +0200 Subject: [PATCH 13/13] changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 30ff7d92cd3..8359f974884 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ## [next] -- fix() Textbox inputs with new lines [#9192](https://github.com/fabricjs/fabric.js/pull/9192) +- fix() Textbox inputs with new lines, regression from #9097 [#9192](https://github.com/fabricjs/fabric.js/pull/9192) - docs(): add link to contributing guide [#8393](https://github.com/fabricjs/fabric.js/pull/8393) - test(e2e): Drag&Drop tests [#9112](https://github.com/fabricjs/fabric.js/pull/9112) - fix(CanvasEvents): regression of `getPointer` usages + BREAKING: drop event data [#9186](https://github.com/fabricjs/fabric.js/pull/9186)