{ "version": 3, "sources": ["../../../../../src/lib/shapes/text/toolStates/Pointing.ts"], "sourcesContent": ["import { StateNode, TLEventHandlers, TLTextShape, createShapeId } from '@tldraw/editor'\n\nexport class Pointing extends StateNode {\n\tstatic override id = 'pointing'\n\n\tshape?: TLTextShape\n\n\tmarkId = ''\n\n\toverride onExit = () => {\n\t\tthis.editor.setHintingShapes([])\n\t}\n\n\toverride onPointerMove: TLEventHandlers['onPointerMove'] = (info) => {\n\t\tif (this.editor.inputs.isDragging) {\n\t\t\tconst {\n\t\t\t\tinputs: { originPagePoint },\n\t\t\t} = this.editor\n\n\t\t\tconst id = createShapeId()\n\n\t\t\tthis.markId = `creating:${id}`\n\t\t\tthis.editor.mark(this.markId)\n\n\t\t\tthis.editor.createShapes([\n\t\t\t\t{\n\t\t\t\t\tid,\n\t\t\t\t\ttype: 'text',\n\t\t\t\t\tx: originPagePoint.x,\n\t\t\t\t\ty: originPagePoint.y,\n\t\t\t\t\tprops: {\n\t\t\t\t\t\ttext: '',\n\t\t\t\t\t\tautoSize: false,\n\t\t\t\t\t\tw: 20,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t])\n\n\t\t\tthis.editor.select(id)\n\n\t\t\tthis.shape = this.editor.getShape(id)\n\t\t\tif (!this.shape) return\n\n\t\t\tthis.editor.setCurrentTool('select.resizing', {\n\t\t\t\t...info,\n\t\t\t\ttarget: 'selection',\n\t\t\t\thandle: 'right',\n\t\t\t\tisCreating: true,\n\t\t\t\tcreationCursorOffset: { x: 1, y: 1 },\n\t\t\t\teditAfterComplete: true,\n\t\t\t\tonInteractionEnd: 'text',\n\t\t\t})\n\t\t}\n\t}\n\n\toverride onPointerUp = () => {\n\t\tthis.complete()\n\t}\n\n\toverride onComplete = () => {\n\t\tthis.cancel()\n\t}\n\n\toverride onCancel = () => {\n\t\tthis.cancel()\n\t}\n\n\toverride onInterrupt = () => {\n\t\tthis.cancel()\n\t}\n\n\tprivate complete() {\n\t\tthis.editor.mark('creating text shape')\n\t\tconst id = createShapeId()\n\t\tconst { x, y } = this.editor.inputs.currentPagePoint\n\t\tthis.editor\n\t\t\t.createShapes([\n\t\t\t\t{\n\t\t\t\t\tid,\n\t\t\t\t\ttype: 'text',\n\t\t\t\t\tx,\n\t\t\t\t\ty,\n\t\t\t\t\tprops: {\n\t\t\t\t\t\ttext: '',\n\t\t\t\t\t\tautoSize: true,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t])\n\t\t\t.select(id)\n\n\t\tthis.editor.setEditingShape(id)\n\t\tthis.editor.setCurrentTool('select')\n\t\tthis.editor.root.current.value?.transition('editing_shape', {})\n\t}\n\n\tprivate cancel() {\n\t\tthis.parent.transition('idle', {})\n\t\tthis.editor.bailToMark(this.markId)\n\t}\n}\n"], "mappings": "AAAA,SAAS,WAAyC,qBAAqB;AAEhE,MAAM,iBAAiB,UAAU;AAAA,EACvC,OAAgB,KAAK;AAAA,EAErB;AAAA,EAEA,SAAS;AAAA,EAEA,SAAS,MAAM;AACvB,SAAK,OAAO,iBAAiB,CAAC,CAAC;AAAA,EAChC;AAAA,EAES,gBAAkD,CAAC,SAAS;AACpE,QAAI,KAAK,OAAO,OAAO,YAAY;AAClC,YAAM;AAAA,QACL,QAAQ,EAAE,gBAAgB;AAAA,MAC3B,IAAI,KAAK;AAET,YAAM,KAAK,cAAc;AAEzB,WAAK,SAAS,YAAY,EAAE;AAC5B,WAAK,OAAO,KAAK,KAAK,MAAM;AAE5B,WAAK,OAAO,aAA0B;AAAA,QACrC;AAAA,UACC;AAAA,UACA,MAAM;AAAA,UACN,GAAG,gBAAgB;AAAA,UACnB,GAAG,gBAAgB;AAAA,UACnB,OAAO;AAAA,YACN,MAAM;AAAA,YACN,UAAU;AAAA,YACV,GAAG;AAAA,UACJ;AAAA,QACD;AAAA,MACD,CAAC;AAED,WAAK,OAAO,OAAO,EAAE;AAErB,WAAK,QAAQ,KAAK,OAAO,SAAS,EAAE;AACpC,UAAI,CAAC,KAAK;AAAO;AAEjB,WAAK,OAAO,eAAe,mBAAmB;AAAA,QAC7C,GAAG;AAAA,QACH,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,YAAY;AAAA,QACZ,sBAAsB,EAAE,GAAG,GAAG,GAAG,EAAE;AAAA,QACnC,mBAAmB;AAAA,QACnB,kBAAkB;AAAA,MACnB,CAAC;AAAA,IACF;AAAA,EACD;AAAA,EAES,cAAc,MAAM;AAC5B,SAAK,SAAS;AAAA,EACf;AAAA,EAES,aAAa,MAAM;AAC3B,SAAK,OAAO;AAAA,EACb;AAAA,EAES,WAAW,MAAM;AACzB,SAAK,OAAO;AAAA,EACb;AAAA,EAES,cAAc,MAAM;AAC5B,SAAK,OAAO;AAAA,EACb;AAAA,EAEQ,WAAW;AAClB,SAAK,OAAO,KAAK,qBAAqB;AACtC,UAAM,KAAK,cAAc;AACzB,UAAM,EAAE,GAAG,EAAE,IAAI,KAAK,OAAO,OAAO;AACpC,SAAK,OACH,aAAa;AAAA,MACb;AAAA,QACC;AAAA,QACA,MAAM;AAAA,QACN;AAAA,QACA;AAAA,QACA,OAAO;AAAA,UACN,MAAM;AAAA,UACN,UAAU;AAAA,QACX;AAAA,MACD;AAAA,IACD,CAAC,EACA,OAAO,EAAE;AAEX,SAAK,OAAO,gBAAgB,EAAE;AAC9B,SAAK,OAAO,eAAe,QAAQ;AACnC,SAAK,OAAO,KAAK,QAAQ,OAAO,WAAW,iBAAiB,CAAC,CAAC;AAAA,EAC/D;AAAA,EAEQ,SAAS;AAChB,SAAK,OAAO,WAAW,QAAQ,CAAC,CAAC;AACjC,SAAK,OAAO,WAAW,KAAK,MAAM;AAAA,EACnC;AACD;", "names": [] }