@medway-ui/native 1.11.0 → 1.13.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/README.md +1 -0
- package/lib/commonjs/components/TextMarker.js +485 -0
- package/lib/commonjs/components/TextMarker.js.map +1 -0
- package/lib/commonjs/editor/NoteEditor.js +29 -152
- package/lib/commonjs/editor/NoteEditor.js.map +1 -1
- package/lib/commonjs/editor/editorHtml.generated.js +1 -1
- package/lib/commonjs/editor/editorHtml.generated.js.map +1 -1
- package/lib/commonjs/editor/protocol.js +2 -3
- package/lib/commonjs/editor/protocol.js.map +1 -1
- package/lib/commonjs/index.js +19 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/components/TextMarker.js +479 -0
- package/lib/module/components/TextMarker.js.map +1 -0
- package/lib/module/editor/NoteEditor.js +32 -155
- package/lib/module/editor/NoteEditor.js.map +1 -1
- package/lib/module/editor/editorHtml.generated.js +1 -1
- package/lib/module/editor/editorHtml.generated.js.map +1 -1
- package/lib/module/editor/protocol.js +2 -3
- package/lib/module/editor/protocol.js.map +1 -1
- package/lib/module/index.js +2 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/components/TextMarker.d.ts +94 -0
- package/lib/typescript/components/TextMarker.d.ts.map +1 -0
- package/lib/typescript/editor/NoteEditor.d.ts +1 -1
- package/lib/typescript/editor/NoteEditor.d.ts.map +1 -1
- package/lib/typescript/editor/editorHtml.generated.d.ts.map +1 -1
- package/lib/typescript/editor/protocol.d.ts +2 -10
- package/lib/typescript/editor/protocol.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +2 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/components/TextMarker.tsx +696 -0
- package/src/editor/NoteEditor.tsx +10 -192
- package/src/editor/editorHtml.generated.ts +1 -1
- package/src/editor/protocol.ts +2 -8
- package/src/index.ts +14 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["EDITOR_HTML","exports"],"sourceRoot":"../../../src","sources":["editor/editorHtml.generated.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,MAAMA,WAAmB,GAAAC,OAAA,CAAAD,WAAA,GAAG
|
|
1
|
+
{"version":3,"names":["EDITOR_HTML","exports"],"sourceRoot":"../../../src","sources":["editor/editorHtml.generated.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,MAAMA,WAAmB,GAAAC,OAAA,CAAAD,WAAA,GAAG,+gsYAA+gsY","ignoreList":[]}
|
|
@@ -24,7 +24,7 @@ exports.isEditorMessage = exports.EDITOR_RECEIVE_HANDLER = exports.EDITOR_PROTOC
|
|
|
24
24
|
* talk to a bundle that reports a different version, which turns a stale
|
|
25
25
|
* `editorHtml.generated.ts` into a clear error instead of silent breakage.
|
|
26
26
|
*/
|
|
27
|
-
const EDITOR_PROTOCOL_VERSION = exports.EDITOR_PROTOCOL_VERSION =
|
|
27
|
+
const EDITOR_PROTOCOL_VERSION = exports.EDITOR_PROTOCOL_VERSION = 5;
|
|
28
28
|
|
|
29
29
|
/** Name of the global the WebView bundle installs to receive native messages. */
|
|
30
30
|
const EDITOR_RECEIVE_HANDLER = exports.EDITOR_RECEIVE_HANDLER = '__medwayNoteEditorReceive';
|
|
@@ -45,7 +45,7 @@ const isFiniteNumber = value => typeof value === 'number' && Number.isFinite(val
|
|
|
45
45
|
* `doc`/`requestId`, or a `ready` without `protocol`, is rejected here instead
|
|
46
46
|
* of blowing up at the use site.
|
|
47
47
|
*
|
|
48
|
-
* `state
|
|
48
|
+
* `state` and `doc` are checked as objects rather than field by field:
|
|
49
49
|
* their shapes belong to `@medway-ui/notes-core` and are validated there — for
|
|
50
50
|
* `doc`, by the `normalizeDocument` pass the native side runs before handing a
|
|
51
51
|
* document to the host.
|
|
@@ -55,7 +55,6 @@ const EDITOR_MESSAGE_VALIDATORS = {
|
|
|
55
55
|
state: message => isRecord(message.state),
|
|
56
56
|
change: message => isFiniteNumber(message.revision),
|
|
57
57
|
document: message => isString(message.requestId) && isFiniteNumber(message.revision) && isRecord(message.doc),
|
|
58
|
-
slash: message => isRecord(message.slash),
|
|
59
58
|
resize: message => isFiniteNumber(message.height),
|
|
60
59
|
linkPress: message => isString(message.href),
|
|
61
60
|
backspaceAtDocStart: () => true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["EDITOR_PROTOCOL_VERSION","exports","EDITOR_RECEIVE_HANDLER","isRecord","value","Array","isArray","isString","isFiniteNumber","Number","isFinite","EDITOR_MESSAGE_VALIDATORS","ready","message","protocol","state","change","revision","document","requestId","doc","
|
|
1
|
+
{"version":3,"names":["EDITOR_PROTOCOL_VERSION","exports","EDITOR_RECEIVE_HANDLER","isRecord","value","Array","isArray","isString","isFiniteNumber","Number","isFinite","EDITOR_MESSAGE_VALIDATORS","ready","message","protocol","state","change","revision","document","requestId","doc","resize","height","linkPress","href","backspaceAtDocStart","error","isEditorMessage","type","Object","prototype","hasOwnProperty","call"],"sourceRoot":"../../../src","sources":["editor/protocol.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AASA;AACA;AACA;AACA;AACA;AACO,MAAMA,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA,GAAG,CAAC;;AAExC;AACO,MAAME,sBAAsB,GAAAD,OAAA,CAAAC,sBAAA,GAAG,2BAA2B;AAyEjE,MAAMC,QAAQ,GAAIC,KAAc,IAC9B,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC;AAEtE,MAAMG,QAAQ,GAAIH,KAAc,IAAsB,OAAOA,KAAK,KAAK,QAAQ;;AAE/E;AACA,MAAMI,cAAc,GAAIJ,KAAc,IACpC,OAAOA,KAAK,KAAK,QAAQ,IAAIK,MAAM,CAACC,QAAQ,CAACN,KAAK,CAAC;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMO,yBAGL,GAAG;EACFC,KAAK,EAAGC,OAAO,IAAKL,cAAc,CAACK,OAAO,CAACC,QAAQ,CAAC;EACpDC,KAAK,EAAGF,OAAO,IAAKV,QAAQ,CAACU,OAAO,CAACE,KAAK,CAAC;EAC3CC,MAAM,EAAGH,OAAO,IAAKL,cAAc,CAACK,OAAO,CAACI,QAAQ,CAAC;EACrDC,QAAQ,EAAGL,OAAO,IAChBN,QAAQ,CAACM,OAAO,CAACM,SAAS,CAAC,IAC3BX,cAAc,CAACK,OAAO,CAACI,QAAQ,CAAC,IAChCd,QAAQ,CAACU,OAAO,CAACO,GAAG,CAAC;EACvBC,MAAM,EAAGR,OAAO,IAAKL,cAAc,CAACK,OAAO,CAACS,MAAM,CAAC;EACnDC,SAAS,EAAGV,OAAO,IAAKN,QAAQ,CAACM,OAAO,CAACW,IAAI,CAAC;EAC9CC,mBAAmB,EAAEA,CAAA,KAAM,IAAI;EAC/BC,KAAK,EAAGb,OAAO,IAAKN,QAAQ,CAACM,OAAO,CAACA,OAAO;AAC9C,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACO,MAAMc,eAAe,GAC1BvB,KAAc,IACqB;EACnC,IAAI,CAACD,QAAQ,CAACC,KAAK,CAAC,EAAE,OAAO,KAAK;EAElC,MAAM;IAAEwB;EAAK,CAAC,GAAGxB,KAAK;EACtB,IAAI,OAAOwB,IAAI,KAAK,QAAQ,EAAE,OAAO,KAAK;;EAE1C;EACA;EACA;EACA,IAAI,CAACC,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACrB,yBAAyB,EAAEiB,IAAI,CAAC,EAAE;IAC1E,OAAO,KAAK;EACd;EAEA,OAAOjB,yBAAyB,CAACiB,IAAI,CAAkC,CACrExB,KACF,CAAC;AACH,CAAC;AAACH,OAAA,CAAA0B,eAAA,GAAAA,eAAA","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -927,6 +927,12 @@ Object.defineProperty(exports, "Switch", {
|
|
|
927
927
|
return _Switch.Switch;
|
|
928
928
|
}
|
|
929
929
|
});
|
|
930
|
+
Object.defineProperty(exports, "TEXT_MARKER_COLORS", {
|
|
931
|
+
enumerable: true,
|
|
932
|
+
get: function () {
|
|
933
|
+
return _TextMarker.TEXT_MARKER_COLORS;
|
|
934
|
+
}
|
|
935
|
+
});
|
|
930
936
|
Object.defineProperty(exports, "Tabs", {
|
|
931
937
|
enumerable: true,
|
|
932
938
|
get: function () {
|
|
@@ -963,6 +969,12 @@ Object.defineProperty(exports, "Text", {
|
|
|
963
969
|
return _Text.Text;
|
|
964
970
|
}
|
|
965
971
|
});
|
|
972
|
+
Object.defineProperty(exports, "TextMarker", {
|
|
973
|
+
enumerable: true,
|
|
974
|
+
get: function () {
|
|
975
|
+
return _TextMarker.TextMarker;
|
|
976
|
+
}
|
|
977
|
+
});
|
|
966
978
|
Object.defineProperty(exports, "ThemedIcon", {
|
|
967
979
|
enumerable: true,
|
|
968
980
|
get: function () {
|
|
@@ -1197,6 +1209,12 @@ Object.defineProperty(exports, "tagVariants", {
|
|
|
1197
1209
|
return _Tag.tagVariants;
|
|
1198
1210
|
}
|
|
1199
1211
|
});
|
|
1212
|
+
Object.defineProperty(exports, "textMarkerMarkVariants", {
|
|
1213
|
+
enumerable: true,
|
|
1214
|
+
get: function () {
|
|
1215
|
+
return _TextMarker.textMarkerMarkVariants;
|
|
1216
|
+
}
|
|
1217
|
+
});
|
|
1200
1218
|
Object.defineProperty(exports, "toast", {
|
|
1201
1219
|
enumerable: true,
|
|
1202
1220
|
get: function () {
|
|
@@ -1269,6 +1287,7 @@ var _SegmentControl = require("./components/SegmentControl.js");
|
|
|
1269
1287
|
var _Filter = require("./components/Filter.js");
|
|
1270
1288
|
var _Feedback = require("./components/Feedback.js");
|
|
1271
1289
|
var _Toast = require("./components/Toast.js");
|
|
1290
|
+
var _TextMarker = require("./components/TextMarker.js");
|
|
1272
1291
|
var _Tooltip = require("./components/Tooltip.js");
|
|
1273
1292
|
var _useToast = require("./hooks/use-toast.js");
|
|
1274
1293
|
var _useThemeColor = require("./hooks/useThemeColor.js");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Alert","require","_Badge","_Avatar","_FallbackImage","_CardNews","_EmptyState","_PageHeader","_Carousel","_DropdownMenu","_Feed","_FeedNotice","_InvitePopover","_LeaderboardCard","_MemberRow","_PostForm","_PrizeCollection","_Text","_SectionHeader","_Button","_Checkbox","_Input","_IndexLevel","_Label","_Loading","_LoadingOverlay","_Skeleton","_RadioGroup","_Select","_Separator","_Switch","_AlertDialog","_Dialog","_Popover","_Sheet","_Tag","_Chip","_Tabs","_Choice","_SegmentControl","_Filter","_Feedback","_Toast","_Tooltip","_useToast","_useThemeColor","_ThemedIcon"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_Alert","require","_Badge","_Avatar","_FallbackImage","_CardNews","_EmptyState","_PageHeader","_Carousel","_DropdownMenu","_Feed","_FeedNotice","_InvitePopover","_LeaderboardCard","_MemberRow","_PostForm","_PrizeCollection","_Text","_SectionHeader","_Button","_Checkbox","_Input","_IndexLevel","_Label","_Loading","_LoadingOverlay","_Skeleton","_RadioGroup","_Select","_Separator","_Switch","_AlertDialog","_Dialog","_Popover","_Sheet","_Tag","_Chip","_Tabs","_Choice","_SegmentControl","_Filter","_Feedback","_Toast","_TextMarker","_Tooltip","_useToast","_useThemeColor","_ThemedIcon"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAeA,IAAAC,MAAA,GAAAD,OAAA;AAQA,IAAAE,OAAA,GAAAF,OAAA;AAaA,IAAAG,cAAA,GAAAH,OAAA;AAIA,IAAAI,SAAA,GAAAJ,OAAA;AAyBA,IAAAK,WAAA,GAAAL,OAAA;AAIA,IAAAM,WAAA,GAAAN,OAAA;AAIA,IAAAO,SAAA,GAAAP,OAAA;AAYA,IAAAQ,aAAA,GAAAR,OAAA;AAgBA,IAAAS,KAAA,GAAAT,OAAA;AAQA,IAAAU,WAAA,GAAAV,OAAA;AAIA,IAAAW,cAAA,GAAAX,OAAA;AAqBA,IAAAY,gBAAA,GAAAZ,OAAA;AAWA,IAAAa,UAAA,GAAAb,OAAA;AAIA,IAAAc,SAAA,GAAAd,OAAA;AAkBA,IAAAe,gBAAA,GAAAf,OAAA;AAiBA,IAAAgB,KAAA,GAAAhB,OAAA;AAIA,IAAAiB,cAAA,GAAAjB,OAAA;AAIA,IAAAkB,OAAA,GAAAlB,OAAA;AAIA,IAAAmB,SAAA,GAAAnB,OAAA;AAIA,IAAAoB,MAAA,GAAApB,OAAA;AAwBA,IAAAqB,WAAA,GAAArB,OAAA;AAiBA,IAAAsB,MAAA,GAAAtB,OAAA;AAIA,IAAAuB,QAAA,GAAAvB,OAAA;AAIA,IAAAwB,eAAA,GAAAxB,OAAA;AAYA,IAAAyB,SAAA,GAAAzB,OAAA;AAIA,IAAA0B,WAAA,GAAA1B,OAAA;AAUA,IAAA2B,OAAA,GAAA3B,OAAA;AAmBA,IAAA4B,UAAA,GAAA5B,OAAA;AAIA,IAAA6B,OAAA,GAAA7B,OAAA;AAIA,IAAA8B,YAAA,GAAA9B,OAAA;AA0BA,IAAA+B,OAAA,GAAA/B,OAAA;AAqBA,IAAAgC,QAAA,GAAAhC,OAAA;AASA,IAAAiC,MAAA,GAAAjC,OAAA;AAmBA,IAAAkC,IAAA,GAAAlC,OAAA;AAIA,IAAAmC,KAAA,GAAAnC,OAAA;AASA,IAAAoC,KAAA,GAAApC,OAAA;AAgBA,IAAAqC,OAAA,GAAArC,OAAA;AAIA,IAAAsC,eAAA,GAAAtC,OAAA;AAgBA,IAAAuC,OAAA,GAAAvC,OAAA;AAIA,IAAAwC,SAAA,GAAAxC,OAAA;AASA,IAAAyC,MAAA,GAAAzC,OAAA;AAsBA,IAAA0C,WAAA,GAAA1C,OAAA;AAcA,IAAA2C,QAAA,GAAA3C,OAAA;AASA,IAAA4C,SAAA,GAAA5C,OAAA;AACA,IAAA6C,cAAA,GAAA7C,OAAA;AAIA,IAAA8C,WAAA,GAAA9C,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,479 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { CloseSm, MapPin, Note, Strikethrough, Underline } from "@medway-ui/icons/native";
|
|
4
|
+
import { cva } from "class-variance-authority";
|
|
5
|
+
import { useContext, useEffect, useId, useRef, useState, useSyncExternalStore } from "react";
|
|
6
|
+
import { BackHandler, Pressable, StyleSheet, View, useWindowDimensions } from "react-native";
|
|
7
|
+
import { SafeAreaInsetsContext } from "react-native-safe-area-context";
|
|
8
|
+
import Svg, { Path } from "react-native-svg";
|
|
9
|
+
import { Button } from "./Button";
|
|
10
|
+
import { Separator } from "./Separator";
|
|
11
|
+
import { ThemedIcon } from "./ThemedIcon";
|
|
12
|
+
import { useThemeColor } from "../hooks/useThemeColor";
|
|
13
|
+
import { useOverlayHost } from "../lib/overlay-host";
|
|
14
|
+
import { getMinTouchHitSlop } from "../lib/touch-target";
|
|
15
|
+
import { cn } from "../lib/utils";
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Retângulo do trecho em coordenadas da janela, como o `measureInWindow`
|
|
19
|
+
* devolve (`x` → `left`, `y` → `top`).
|
|
20
|
+
*/
|
|
21
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
22
|
+
const TEXT_MARKER_COLORS = Object.freeze(["cm", "go", "cir", "ped", "prev"]);
|
|
23
|
+
const COLOR_NAMES = {
|
|
24
|
+
cm: "Azul",
|
|
25
|
+
go: "Rosa",
|
|
26
|
+
cir: "Verde",
|
|
27
|
+
ped: "Amarelo",
|
|
28
|
+
prev: "Roxo"
|
|
29
|
+
};
|
|
30
|
+
const DEFAULT_LABELS = {
|
|
31
|
+
toolbar: "Marcação da seleção",
|
|
32
|
+
color: "Cor",
|
|
33
|
+
close: "Fechar marcação",
|
|
34
|
+
strikethrough: "Riscar",
|
|
35
|
+
strikethroughHint: "Riscar: passa um traço sobre o trecho para destacar o que não importa",
|
|
36
|
+
underline: "Sublinhar",
|
|
37
|
+
underlineHint: "Sublinhar: passa um traço sob o trecho para destacar o que importa",
|
|
38
|
+
annotate: "Anotar",
|
|
39
|
+
annotateHint: "Anotar: abre a nota com o trecho selecionado",
|
|
40
|
+
pin: "Fixar",
|
|
41
|
+
pinHint: "Fixar: escolha uma cor e as próximas seleções já saem marcadas com ela",
|
|
42
|
+
pinArmedHint: "Escolha a cor que vai ficar fixada",
|
|
43
|
+
unpinHint: "Desafixar: as próximas seleções voltam a abrir esta ferramenta",
|
|
44
|
+
remove: "Remover marcação",
|
|
45
|
+
removeHint: "Remover a marcação deste trecho",
|
|
46
|
+
colorName: color => COLOR_NAMES[color]
|
|
47
|
+
};
|
|
48
|
+
const SWATCH_CLASS = {
|
|
49
|
+
cm: "bg-cm-background-fill",
|
|
50
|
+
go: "bg-go-background-fill",
|
|
51
|
+
cir: "bg-cir-background-fill",
|
|
52
|
+
ped: "bg-ped-background-fill",
|
|
53
|
+
prev: "bg-prev-background-fill"
|
|
54
|
+
};
|
|
55
|
+
const SWATCH_SELECTED_CLASS = {
|
|
56
|
+
cm: "border-cm-background-fill",
|
|
57
|
+
go: "border-go-background-fill",
|
|
58
|
+
cir: "border-cir-background-fill",
|
|
59
|
+
ped: "border-ped-background-fill",
|
|
60
|
+
prev: "border-prev-background-fill"
|
|
61
|
+
};
|
|
62
|
+
const MARK_COLOR_CLASS = {
|
|
63
|
+
cm: "bg-cm-16 dark:bg-cm-48",
|
|
64
|
+
go: "bg-go-16 dark:bg-go-48",
|
|
65
|
+
cir: "bg-cir-16 dark:bg-cir-24",
|
|
66
|
+
ped: "bg-ped-24 dark:bg-ped-48",
|
|
67
|
+
prev: "bg-prev-16 dark:bg-prev-48"
|
|
68
|
+
};
|
|
69
|
+
const textMarkerMarkVariants = cva("", {
|
|
70
|
+
variants: {
|
|
71
|
+
color: {
|
|
72
|
+
...MARK_COLOR_CLASS,
|
|
73
|
+
none: "bg-transparent"
|
|
74
|
+
},
|
|
75
|
+
strikethrough: {
|
|
76
|
+
true: "text-gray-foreground-muted line-through",
|
|
77
|
+
false: ""
|
|
78
|
+
},
|
|
79
|
+
underline: {
|
|
80
|
+
true: "underline",
|
|
81
|
+
false: ""
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
defaultVariants: {
|
|
85
|
+
color: "none",
|
|
86
|
+
strikethrough: false,
|
|
87
|
+
underline: false
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
const EDGE_GAP = 16;
|
|
91
|
+
const SIDE_OFFSET = 4;
|
|
92
|
+
const ARROW_WIDTH = 16;
|
|
93
|
+
const ARROW_HEIGHT = 10;
|
|
94
|
+
const ARROW_INSET = 24;
|
|
95
|
+
const SWATCH_SIZE = 32;
|
|
96
|
+
const NO_INSETS = {
|
|
97
|
+
top: 0,
|
|
98
|
+
right: 0,
|
|
99
|
+
bottom: 0,
|
|
100
|
+
left: 0
|
|
101
|
+
};
|
|
102
|
+
function availableWidth(windowWidth, insets) {
|
|
103
|
+
return windowWidth - insets.left - insets.right - 2 * EDGE_GAP;
|
|
104
|
+
}
|
|
105
|
+
function computePlacement({
|
|
106
|
+
anchor,
|
|
107
|
+
hostOrigin,
|
|
108
|
+
window,
|
|
109
|
+
insets,
|
|
110
|
+
size
|
|
111
|
+
}) {
|
|
112
|
+
const gap = SIDE_OFFSET + ARROW_HEIGHT;
|
|
113
|
+
const anchorTop = anchor.top - hostOrigin.y;
|
|
114
|
+
const anchorBottom = anchorTop + anchor.height;
|
|
115
|
+
const anchorCenter = anchor.left + anchor.width / 2 - hostOrigin.x;
|
|
116
|
+
const minTop = Math.max(insets.top - hostOrigin.y, 0) + EDGE_GAP;
|
|
117
|
+
const maxBottom = Math.min(hostOrigin.height, window.height - insets.bottom - hostOrigin.y) - EDGE_GAP;
|
|
118
|
+
const above = anchorTop - gap - size.height;
|
|
119
|
+
const below = anchorBottom + gap;
|
|
120
|
+
const side = above >= minTop ? "top" : below + size.height <= maxBottom ? "bottom" : "over";
|
|
121
|
+
const top = side === "top" ? above : side === "bottom" ? below : Math.max(minTop, Math.min(below, maxBottom - size.height));
|
|
122
|
+
const minLeft = Math.max(insets.left - hostOrigin.x, 0) + EDGE_GAP;
|
|
123
|
+
const maxLeft = window.width - hostOrigin.x - insets.right - EDGE_GAP - size.width;
|
|
124
|
+
const left = Math.max(minLeft, Math.min(anchorCenter - size.width / 2, maxLeft));
|
|
125
|
+
const arrowLeft = Math.max(ARROW_INSET - ARROW_WIDTH / 2, Math.min(anchorCenter - left - ARROW_WIDTH / 2, size.width - ARROW_INSET - ARROW_WIDTH / 2));
|
|
126
|
+
return {
|
|
127
|
+
side,
|
|
128
|
+
top,
|
|
129
|
+
left,
|
|
130
|
+
arrowLeft
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
function createPropsStore(initial) {
|
|
134
|
+
let current = initial;
|
|
135
|
+
const listeners = new Set();
|
|
136
|
+
return {
|
|
137
|
+
get: () => current,
|
|
138
|
+
set: props => {
|
|
139
|
+
if (props === current) return;
|
|
140
|
+
current = props;
|
|
141
|
+
listeners.forEach(listener => listener());
|
|
142
|
+
},
|
|
143
|
+
subscribe: listener => {
|
|
144
|
+
listeners.add(listener);
|
|
145
|
+
return () => {
|
|
146
|
+
listeners.delete(listener);
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
function Arrow({
|
|
152
|
+
side,
|
|
153
|
+
left
|
|
154
|
+
}) {
|
|
155
|
+
const fill = useThemeColor("surface-elevated");
|
|
156
|
+
const stroke = useThemeColor("gray-stroke-muted");
|
|
157
|
+
const pointsDown = side === "top";
|
|
158
|
+
return /*#__PURE__*/_jsx(View, {
|
|
159
|
+
pointerEvents: "none",
|
|
160
|
+
style: [styles.arrow, {
|
|
161
|
+
left
|
|
162
|
+
}, pointsDown ? {
|
|
163
|
+
bottom: -ARROW_HEIGHT + 1
|
|
164
|
+
} : {
|
|
165
|
+
top: -ARROW_HEIGHT + 1,
|
|
166
|
+
transform: [{
|
|
167
|
+
rotate: "180deg"
|
|
168
|
+
}]
|
|
169
|
+
}],
|
|
170
|
+
children: /*#__PURE__*/_jsxs(Svg, {
|
|
171
|
+
width: ARROW_WIDTH,
|
|
172
|
+
height: ARROW_HEIGHT,
|
|
173
|
+
children: [/*#__PURE__*/_jsx(Path, {
|
|
174
|
+
d: `M0 0 L${ARROW_WIDTH / 2} ${ARROW_HEIGHT} L${ARROW_WIDTH} 0 Z`,
|
|
175
|
+
fill: fill
|
|
176
|
+
}), /*#__PURE__*/_jsx(Path, {
|
|
177
|
+
d: `M0 0 L${ARROW_WIDTH / 2} ${ARROW_HEIGHT} L${ARROW_WIDTH} 0`,
|
|
178
|
+
fill: "none",
|
|
179
|
+
stroke: stroke,
|
|
180
|
+
strokeWidth: 1
|
|
181
|
+
})]
|
|
182
|
+
})
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
function ColorSwatch({
|
|
186
|
+
color,
|
|
187
|
+
selected,
|
|
188
|
+
name,
|
|
189
|
+
hint,
|
|
190
|
+
disabled,
|
|
191
|
+
onSelect
|
|
192
|
+
}) {
|
|
193
|
+
return /*#__PURE__*/_jsx(Pressable, {
|
|
194
|
+
accessibilityRole: "button",
|
|
195
|
+
accessibilityLabel: name,
|
|
196
|
+
accessibilityHint: hint,
|
|
197
|
+
accessibilityState: {
|
|
198
|
+
selected,
|
|
199
|
+
disabled
|
|
200
|
+
},
|
|
201
|
+
disabled: disabled,
|
|
202
|
+
hitSlop: getMinTouchHitSlop(SWATCH_SIZE),
|
|
203
|
+
onPress: () => onSelect(color),
|
|
204
|
+
className: cn("size-8 shrink-0 items-center justify-center rounded-circular border border-transparent p-1", selected && SWATCH_SELECTED_CLASS[color], disabled && "opacity-50"),
|
|
205
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
206
|
+
pointerEvents: "none",
|
|
207
|
+
className: cn("size-6 shrink-0 rounded-circular", SWATCH_CLASS[color])
|
|
208
|
+
})
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
function ActionButton({
|
|
212
|
+
icon,
|
|
213
|
+
label,
|
|
214
|
+
hint,
|
|
215
|
+
selected,
|
|
216
|
+
selectedClassName,
|
|
217
|
+
selectedIconToken,
|
|
218
|
+
iconToken = "primary-foreground",
|
|
219
|
+
variant = "regular-basic",
|
|
220
|
+
disabled,
|
|
221
|
+
onPress
|
|
222
|
+
}) {
|
|
223
|
+
const token = disabled ? "gray-foreground-muted" : selected && selectedIconToken ? selectedIconToken : iconToken;
|
|
224
|
+
return /*#__PURE__*/_jsx(Button, {
|
|
225
|
+
variant: variant,
|
|
226
|
+
size: "sm",
|
|
227
|
+
accessibilityLabel: label,
|
|
228
|
+
accessibilityHint: hint,
|
|
229
|
+
accessibilityState: selected === undefined ? {
|
|
230
|
+
disabled
|
|
231
|
+
} : {
|
|
232
|
+
selected,
|
|
233
|
+
disabled
|
|
234
|
+
},
|
|
235
|
+
disabled: disabled,
|
|
236
|
+
hitSlop: getMinTouchHitSlop(SWATCH_SIZE),
|
|
237
|
+
className: cn(selected && selectedClassName),
|
|
238
|
+
iconLeft: /*#__PURE__*/_jsx(ThemedIcon, {
|
|
239
|
+
icon: icon,
|
|
240
|
+
size: 16,
|
|
241
|
+
colorToken: token
|
|
242
|
+
}),
|
|
243
|
+
onPress: onPress
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
function ChromeSeparator() {
|
|
247
|
+
return /*#__PURE__*/_jsx(Separator, {
|
|
248
|
+
orientation: "vertical",
|
|
249
|
+
className: "h-7 self-center"
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
function TextMarkerLayer({
|
|
253
|
+
store
|
|
254
|
+
}) {
|
|
255
|
+
const {
|
|
256
|
+
anchor = null,
|
|
257
|
+
mode = "create",
|
|
258
|
+
selectedText,
|
|
259
|
+
color,
|
|
260
|
+
colors = TEXT_MARKER_COLORS,
|
|
261
|
+
strikethrough = false,
|
|
262
|
+
underline = false,
|
|
263
|
+
pinnedColor = null,
|
|
264
|
+
disabled = false,
|
|
265
|
+
className,
|
|
266
|
+
labels: labelsProp,
|
|
267
|
+
onHighlight,
|
|
268
|
+
onStrikethrough,
|
|
269
|
+
onUnderline,
|
|
270
|
+
onPinnedColorChange,
|
|
271
|
+
onNote,
|
|
272
|
+
onRemove,
|
|
273
|
+
onClose
|
|
274
|
+
} = useSyncExternalStore(store.subscribe, store.get, store.get);
|
|
275
|
+
const overlay = useOverlayHost();
|
|
276
|
+
const window = useWindowDimensions();
|
|
277
|
+
const insets = useContext(SafeAreaInsetsContext) ?? NO_INSETS;
|
|
278
|
+
const layerA = useThemeColor("drop-shadow-layer-a");
|
|
279
|
+
const layerB = useThemeColor("drop-shadow-layer-b");
|
|
280
|
+
const labels = {
|
|
281
|
+
...DEFAULT_LABELS,
|
|
282
|
+
...labelsProp
|
|
283
|
+
};
|
|
284
|
+
const [hostOrigin, setHostOrigin] = useState(null);
|
|
285
|
+
const [size, setSize] = useState(null);
|
|
286
|
+
const [rowCheck, setRowCheck] = useState(null);
|
|
287
|
+
const rowY = useRef({});
|
|
288
|
+
const [pinArmed, setPinArmed] = useState(false);
|
|
289
|
+
const maxWidth = availableWidth(window.width, insets);
|
|
290
|
+
const compact = rowCheck?.width === maxWidth ? rowCheck.compact : null;
|
|
291
|
+
const pinSelected = Boolean(pinnedColor) || pinArmed;
|
|
292
|
+
const pinHint = pinnedColor ? labels.unpinHint : pinArmed ? labels.pinArmedHint : labels.pinHint;
|
|
293
|
+
const placement = anchor && hostOrigin && size && compact !== null ? computePlacement({
|
|
294
|
+
anchor,
|
|
295
|
+
hostOrigin,
|
|
296
|
+
window,
|
|
297
|
+
insets,
|
|
298
|
+
size
|
|
299
|
+
}) : null;
|
|
300
|
+
const selectColor = next => {
|
|
301
|
+
if (next === color && !pinArmed) {
|
|
302
|
+
onRemove?.();
|
|
303
|
+
return;
|
|
304
|
+
}
|
|
305
|
+
if (pinArmed) {
|
|
306
|
+
setPinArmed(false);
|
|
307
|
+
onPinnedColorChange?.(next);
|
|
308
|
+
}
|
|
309
|
+
onHighlight?.(next);
|
|
310
|
+
};
|
|
311
|
+
const togglePin = () => {
|
|
312
|
+
if (pinnedColor) {
|
|
313
|
+
onPinnedColorChange?.(null);
|
|
314
|
+
return;
|
|
315
|
+
}
|
|
316
|
+
setPinArmed(!pinArmed);
|
|
317
|
+
};
|
|
318
|
+
const measureRow = key => event => {
|
|
319
|
+
if (compact !== null) return;
|
|
320
|
+
if (rowY.current.width !== maxWidth) rowY.current = {
|
|
321
|
+
width: maxWidth
|
|
322
|
+
};
|
|
323
|
+
const {
|
|
324
|
+
y,
|
|
325
|
+
height
|
|
326
|
+
} = event.nativeEvent.layout;
|
|
327
|
+
rowY.current[key] = key === "colors" ? y + height : y;
|
|
328
|
+
const {
|
|
329
|
+
colors: colorsBottom,
|
|
330
|
+
actions: actionsTop
|
|
331
|
+
} = rowY.current;
|
|
332
|
+
if (colorsBottom === undefined || actionsTop === undefined) return;
|
|
333
|
+
setRowCheck({
|
|
334
|
+
width: maxWidth,
|
|
335
|
+
compact: actionsTop >= colorsBottom
|
|
336
|
+
});
|
|
337
|
+
};
|
|
338
|
+
const colorGroup = /*#__PURE__*/_jsx(View, {
|
|
339
|
+
className: "flex-row items-center gap-2",
|
|
340
|
+
onLayout: measureRow("colors"),
|
|
341
|
+
children: colors.map(item => /*#__PURE__*/_jsx(ColorSwatch, {
|
|
342
|
+
color: item,
|
|
343
|
+
name: `${labels.color} ${labels.colorName(item)}`,
|
|
344
|
+
hint: pinArmed ? labels.pinArmedHint : undefined,
|
|
345
|
+
selected: color === item,
|
|
346
|
+
disabled: disabled,
|
|
347
|
+
onSelect: selectColor
|
|
348
|
+
}, item))
|
|
349
|
+
});
|
|
350
|
+
const actionGroup = /*#__PURE__*/_jsxs(View, {
|
|
351
|
+
className: "flex-row items-center gap-2",
|
|
352
|
+
onLayout: measureRow("actions"),
|
|
353
|
+
children: [/*#__PURE__*/_jsx(ActionButton, {
|
|
354
|
+
icon: Strikethrough,
|
|
355
|
+
label: labels.strikethrough,
|
|
356
|
+
hint: labels.strikethroughHint,
|
|
357
|
+
selected: strikethrough,
|
|
358
|
+
selectedClassName: "bg-primary-background-soft-emphasis",
|
|
359
|
+
selectedIconToken: "primary-foreground-emphasis",
|
|
360
|
+
disabled: disabled,
|
|
361
|
+
onPress: () => strikethrough ? onRemove?.() : onStrikethrough?.()
|
|
362
|
+
}), /*#__PURE__*/_jsx(ActionButton, {
|
|
363
|
+
icon: Underline,
|
|
364
|
+
label: labels.underline,
|
|
365
|
+
hint: labels.underlineHint,
|
|
366
|
+
selected: underline,
|
|
367
|
+
selectedClassName: "bg-primary-background-soft-emphasis",
|
|
368
|
+
selectedIconToken: "primary-foreground-emphasis",
|
|
369
|
+
disabled: disabled,
|
|
370
|
+
onPress: () => underline ? onRemove?.() : onUnderline?.()
|
|
371
|
+
}), /*#__PURE__*/_jsx(ActionButton, {
|
|
372
|
+
icon: Note,
|
|
373
|
+
label: labels.annotate,
|
|
374
|
+
hint: labels.annotateHint,
|
|
375
|
+
disabled: disabled,
|
|
376
|
+
onPress: () => onNote?.(selectedText ?? "")
|
|
377
|
+
}), /*#__PURE__*/_jsx(ChromeSeparator, {}), /*#__PURE__*/_jsx(ActionButton, {
|
|
378
|
+
icon: MapPin,
|
|
379
|
+
label: labels.pin,
|
|
380
|
+
hint: pinHint,
|
|
381
|
+
selected: pinSelected,
|
|
382
|
+
selectedClassName: "bg-primary-background-fill active:bg-primary-background-fill-emphasis",
|
|
383
|
+
selectedIconToken: "primary-foreground-onfill",
|
|
384
|
+
disabled: disabled,
|
|
385
|
+
onPress: togglePin
|
|
386
|
+
}), mode === "edit" ? /*#__PURE__*/_jsx(ActionButton, {
|
|
387
|
+
icon: CloseSm,
|
|
388
|
+
label: labels.remove,
|
|
389
|
+
hint: labels.removeHint,
|
|
390
|
+
variant: "error-soft",
|
|
391
|
+
iconToken: "feedback-error-foreground",
|
|
392
|
+
disabled: disabled,
|
|
393
|
+
onPress: () => onRemove?.()
|
|
394
|
+
}) : null]
|
|
395
|
+
});
|
|
396
|
+
useEffect(() => {
|
|
397
|
+
let cancelled = false;
|
|
398
|
+
overlay.measureHostOrigin(origin => {
|
|
399
|
+
if (!cancelled) setHostOrigin(origin);
|
|
400
|
+
});
|
|
401
|
+
return () => {
|
|
402
|
+
cancelled = true;
|
|
403
|
+
};
|
|
404
|
+
}, [overlay, window.width, window.height]);
|
|
405
|
+
useEffect(() => {
|
|
406
|
+
const subscription = BackHandler.addEventListener("hardwareBackPress", () => {
|
|
407
|
+
const close = store.get().onClose;
|
|
408
|
+
close?.();
|
|
409
|
+
return Boolean(close);
|
|
410
|
+
});
|
|
411
|
+
return () => subscription.remove();
|
|
412
|
+
}, [store]);
|
|
413
|
+
if (!anchor || !hostOrigin) return null;
|
|
414
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
415
|
+
style: StyleSheet.absoluteFill,
|
|
416
|
+
pointerEvents: "box-none",
|
|
417
|
+
children: [/*#__PURE__*/_jsx(Pressable, {
|
|
418
|
+
accessibilityLabel: labels.close,
|
|
419
|
+
style: StyleSheet.absoluteFill,
|
|
420
|
+
onPress: () => onClose?.()
|
|
421
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
422
|
+
accessibilityRole: "toolbar",
|
|
423
|
+
accessibilityLabel: labels.toolbar,
|
|
424
|
+
pointerEvents: placement ? "auto" : "none",
|
|
425
|
+
className: cn("border border-gray-stroke-muted bg-surface-elevated", compact ? "items-center gap-2 rounded-lg p-2" : "flex-row flex-wrap items-center gap-2 rounded-pill py-2 pl-3 pr-2", className),
|
|
426
|
+
style: [styles.toolbar, {
|
|
427
|
+
maxWidth,
|
|
428
|
+
top: placement?.top ?? 0,
|
|
429
|
+
left: placement?.left ?? 0,
|
|
430
|
+
opacity: placement ? 1 : 0,
|
|
431
|
+
boxShadow: `0 0 2px 0 ${layerA}, 0 2px 4px 0 ${layerB}`
|
|
432
|
+
}],
|
|
433
|
+
onLayout: event => {
|
|
434
|
+
const {
|
|
435
|
+
width,
|
|
436
|
+
height
|
|
437
|
+
} = event.nativeEvent.layout;
|
|
438
|
+
setSize(current => current?.width === width && current.height === height ? current : {
|
|
439
|
+
width,
|
|
440
|
+
height
|
|
441
|
+
});
|
|
442
|
+
},
|
|
443
|
+
children: [colorGroup, compact ? null : /*#__PURE__*/_jsx(ChromeSeparator, {}), actionGroup, placement && placement.side !== "over" ? /*#__PURE__*/_jsx(Arrow, {
|
|
444
|
+
side: placement.side,
|
|
445
|
+
left: placement.arrowLeft
|
|
446
|
+
}) : null]
|
|
447
|
+
}, maxWidth)]
|
|
448
|
+
});
|
|
449
|
+
}
|
|
450
|
+
function TextMarker(props) {
|
|
451
|
+
const id = useId();
|
|
452
|
+
const overlay = useOverlayHost();
|
|
453
|
+
const [store] = useState(() => createPropsStore(props));
|
|
454
|
+
const visible = Boolean(props.open && props.anchor);
|
|
455
|
+
useEffect(() => {
|
|
456
|
+
store.set(props);
|
|
457
|
+
});
|
|
458
|
+
useEffect(() => {
|
|
459
|
+
if (!visible) return;
|
|
460
|
+
overlay.mount(id, /*#__PURE__*/_jsx(TextMarkerLayer, {
|
|
461
|
+
store: store
|
|
462
|
+
}));
|
|
463
|
+
return () => overlay.unmount(id);
|
|
464
|
+
}, [id, overlay, store, visible]);
|
|
465
|
+
return null;
|
|
466
|
+
}
|
|
467
|
+
const styles = StyleSheet.create({
|
|
468
|
+
toolbar: {
|
|
469
|
+
position: "absolute",
|
|
470
|
+
zIndex: 2
|
|
471
|
+
},
|
|
472
|
+
arrow: {
|
|
473
|
+
position: "absolute",
|
|
474
|
+
width: ARROW_WIDTH,
|
|
475
|
+
height: ARROW_HEIGHT
|
|
476
|
+
}
|
|
477
|
+
});
|
|
478
|
+
export { TEXT_MARKER_COLORS, TextMarker, textMarkerMarkVariants };
|
|
479
|
+
//# sourceMappingURL=TextMarker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CloseSm","MapPin","Note","Strikethrough","Underline","cva","useContext","useEffect","useId","useRef","useState","useSyncExternalStore","BackHandler","Pressable","StyleSheet","View","useWindowDimensions","SafeAreaInsetsContext","Svg","Path","Button","Separator","ThemedIcon","useThemeColor","useOverlayHost","getMinTouchHitSlop","cn","jsx","_jsx","jsxs","_jsxs","TEXT_MARKER_COLORS","Object","freeze","COLOR_NAMES","cm","go","cir","ped","prev","DEFAULT_LABELS","toolbar","color","close","strikethrough","strikethroughHint","underline","underlineHint","annotate","annotateHint","pin","pinHint","pinArmedHint","unpinHint","remove","removeHint","colorName","SWATCH_CLASS","SWATCH_SELECTED_CLASS","MARK_COLOR_CLASS","textMarkerMarkVariants","variants","none","true","false","defaultVariants","EDGE_GAP","SIDE_OFFSET","ARROW_WIDTH","ARROW_HEIGHT","ARROW_INSET","SWATCH_SIZE","NO_INSETS","top","right","bottom","left","availableWidth","windowWidth","insets","computePlacement","anchor","hostOrigin","window","size","gap","anchorTop","y","anchorBottom","height","anchorCenter","width","x","minTop","Math","max","maxBottom","min","above","below","side","minLeft","maxLeft","arrowLeft","createPropsStore","initial","current","listeners","Set","get","set","props","forEach","listener","subscribe","add","delete","Arrow","fill","stroke","pointsDown","pointerEvents","style","styles","arrow","transform","rotate","children","d","strokeWidth","ColorSwatch","selected","name","hint","disabled","onSelect","accessibilityRole","accessibilityLabel","accessibilityHint","accessibilityState","hitSlop","onPress","className","ActionButton","icon","label","selectedClassName","selectedIconToken","iconToken","variant","token","undefined","iconLeft","colorToken","ChromeSeparator","orientation","TextMarkerLayer","store","mode","selectedText","colors","pinnedColor","labels","labelsProp","onHighlight","onStrikethrough","onUnderline","onPinnedColorChange","onNote","onRemove","onClose","overlay","layerA","layerB","setHostOrigin","setSize","rowCheck","setRowCheck","rowY","pinArmed","setPinArmed","maxWidth","compact","pinSelected","Boolean","placement","selectColor","next","togglePin","measureRow","key","event","nativeEvent","layout","colorsBottom","actions","actionsTop","colorGroup","onLayout","map","item","actionGroup","cancelled","measureHostOrigin","origin","subscription","addEventListener","absoluteFill","opacity","boxShadow","TextMarker","id","visible","open","mount","unmount","create","position","zIndex"],"sourceRoot":"../../../src","sources":["components/TextMarker.tsx"],"mappings":"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","ignoreList":[]}
|