@wordpress/format-library 4.11.0 → 4.12.1
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/CHANGELOG.md +2 -0
- package/build/bold/index.js +6 -8
- package/build/bold/index.js.map +1 -1
- package/build/code/index.js +6 -8
- package/build/code/index.js.map +1 -1
- package/build/image/index.js +24 -28
- package/build/image/index.js.map +1 -1
- package/build/index.js +4 -7
- package/build/index.js.map +1 -1
- package/build/italic/index.js +6 -8
- package/build/italic/index.js.map +1 -1
- package/build/keyboard/index.js +6 -8
- package/build/keyboard/index.js.map +1 -1
- package/build/language/index.js +31 -20
- package/build/language/index.js.map +1 -1
- package/build/link/index.js +17 -17
- package/build/link/index.js.map +1 -1
- package/build/link/index.native.js +2 -6
- package/build/link/index.native.js.map +1 -1
- package/build/link/inline.js +11 -11
- package/build/link/inline.js.map +1 -1
- package/build/link/modal-screens/link-picker-screen.native.js +4 -6
- package/build/link/modal-screens/link-picker-screen.native.js.map +1 -1
- package/build/link/modal-screens/link-settings-screen.native.js +25 -33
- package/build/link/modal-screens/link-settings-screen.native.js.map +1 -1
- package/build/link/modal.native.js +8 -10
- package/build/link/modal.native.js.map +1 -1
- package/build/link/utils.js +18 -44
- package/build/link/utils.js.map +1 -1
- package/build/strikethrough/index.js +6 -8
- package/build/strikethrough/index.js.map +1 -1
- package/build/subscript/index.js +6 -8
- package/build/subscript/index.js.map +1 -1
- package/build/superscript/index.js +6 -8
- package/build/superscript/index.js.map +1 -1
- package/build/text-color/index.js +11 -14
- package/build/text-color/index.js.map +1 -1
- package/build/text-color/index.native.js +16 -23
- package/build/text-color/index.native.js.map +1 -1
- package/build/text-color/inline.js +15 -21
- package/build/text-color/inline.js.map +1 -1
- package/build/text-color/inline.native.js +16 -24
- package/build/text-color/inline.native.js.map +1 -1
- package/build/underline/index.js +4 -6
- package/build/underline/index.js.map +1 -1
- package/build/unknown/index.js +6 -8
- package/build/unknown/index.js.map +1 -1
- package/build-module/bold/index.js +6 -8
- package/build-module/bold/index.js.map +1 -1
- package/build-module/code/index.js +6 -8
- package/build-module/code/index.js.map +1 -1
- package/build-module/image/index.js +24 -28
- package/build-module/image/index.js.map +1 -1
- package/build-module/index.js +4 -7
- package/build-module/index.js.map +1 -1
- package/build-module/italic/index.js +6 -8
- package/build-module/italic/index.js.map +1 -1
- package/build-module/keyboard/index.js +6 -8
- package/build-module/keyboard/index.js.map +1 -1
- package/build-module/language/index.js +31 -20
- package/build-module/language/index.js.map +1 -1
- package/build-module/link/index.js +17 -17
- package/build-module/link/index.js.map +1 -1
- package/build-module/link/index.native.js +2 -6
- package/build-module/link/index.native.js.map +1 -1
- package/build-module/link/inline.js +11 -11
- package/build-module/link/inline.js.map +1 -1
- package/build-module/link/modal-screens/link-picker-screen.native.js +4 -5
- package/build-module/link/modal-screens/link-picker-screen.native.js.map +1 -1
- package/build-module/link/modal-screens/link-settings-screen.native.js +25 -33
- package/build-module/link/modal-screens/link-settings-screen.native.js.map +1 -1
- package/build-module/link/modal.native.js +8 -9
- package/build-module/link/modal.native.js.map +1 -1
- package/build-module/link/utils.js +18 -44
- package/build-module/link/utils.js.map +1 -1
- package/build-module/strikethrough/index.js +6 -8
- package/build-module/strikethrough/index.js.map +1 -1
- package/build-module/subscript/index.js +6 -8
- package/build-module/subscript/index.js.map +1 -1
- package/build-module/superscript/index.js +6 -8
- package/build-module/superscript/index.js.map +1 -1
- package/build-module/text-color/index.js +11 -14
- package/build-module/text-color/index.js.map +1 -1
- package/build-module/text-color/index.native.js +16 -23
- package/build-module/text-color/index.native.js.map +1 -1
- package/build-module/text-color/inline.js +15 -21
- package/build-module/text-color/inline.js.map +1 -1
- package/build-module/text-color/inline.native.js +16 -24
- package/build-module/text-color/inline.native.js.map +1 -1
- package/build-module/underline/index.js +4 -6
- package/build-module/underline/index.js.map +1 -1
- package/build-module/unknown/index.js +6 -8
- package/build-module/unknown/index.js.map +1 -1
- package/package.json +13 -13
- package/src/language/index.js +73 -66
- package/src/link/index.js +4 -2
- package/src/link/inline.js +1 -0
- package/src/link/test/__snapshots__/modal.native.js.snap +476 -0
- package/src/link/test/index.native.js +15 -15
- package/src/link/test/modal.native.js +5 -2
package/CHANGELOG.md
CHANGED
package/build/bold/index.js
CHANGED
|
@@ -26,14 +26,12 @@ const bold = {
|
|
|
26
26
|
tagName: 'strong',
|
|
27
27
|
className: null,
|
|
28
28
|
|
|
29
|
-
edit(
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
} = _ref;
|
|
36
|
-
|
|
29
|
+
edit({
|
|
30
|
+
isActive,
|
|
31
|
+
value,
|
|
32
|
+
onChange,
|
|
33
|
+
onFocus
|
|
34
|
+
}) {
|
|
37
35
|
function onToggle() {
|
|
38
36
|
onChange((0, _richText.toggleFormat)(value, {
|
|
39
37
|
type: name,
|
package/build/bold/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/format-library/src/bold/index.js"],"names":["name","title","bold","tagName","className","edit","isActive","value","onChange","onFocus","onToggle","type","onClick","formatBold"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;AAUA,MAAMA,IAAI,GAAG,WAAb;AACA,MAAMC,KAAK,GAAG,cAAI,MAAJ,CAAd;AAEO,MAAMC,IAAI,GAAG;AACnBF,EAAAA,IADmB;AAEnBC,EAAAA,KAFmB;AAGnBE,EAAAA,OAAO,EAAE,QAHU;AAInBC,EAAAA,SAAS,EAAE,IAJQ;;AAKnBC,EAAAA,IAAI,
|
|
1
|
+
{"version":3,"sources":["@wordpress/format-library/src/bold/index.js"],"names":["name","title","bold","tagName","className","edit","isActive","value","onChange","onFocus","onToggle","type","onClick","formatBold"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;AAUA,MAAMA,IAAI,GAAG,WAAb;AACA,MAAMC,KAAK,GAAG,cAAI,MAAJ,CAAd;AAEO,MAAMC,IAAI,GAAG;AACnBF,EAAAA,IADmB;AAEnBC,EAAAA,KAFmB;AAGnBE,EAAAA,OAAO,EAAE,QAHU;AAInBC,EAAAA,SAAS,EAAE,IAJQ;;AAKnBC,EAAAA,IAAI,CAAE;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,KAAZ;AAAmBC,IAAAA,QAAnB;AAA6BC,IAAAA;AAA7B,GAAF,EAA2C;AAC9C,aAASC,QAAT,GAAoB;AACnBF,MAAAA,QAAQ,CAAE,4BAAcD,KAAd,EAAqB;AAAEI,QAAAA,IAAI,EAAEX,IAAR;AAAcC,QAAAA;AAAd,OAArB,CAAF,CAAR;AACA;;AAED,aAASW,OAAT,GAAmB;AAClBJ,MAAAA,QAAQ,CAAE,4BAAcD,KAAd,EAAqB;AAAEI,QAAAA,IAAI,EAAEX;AAAR,OAArB,CAAF,CAAR;AACAS,MAAAA,OAAO;AACP;;AAED,WACC,qDACC,4BAAC,6BAAD;AACC,MAAA,IAAI,EAAC,SADN;AAEC,MAAA,SAAS,EAAC,GAFX;AAGC,MAAA,KAAK,EAAGC;AAHT,MADD,EAMC,4BAAC,kCAAD;AACC,MAAA,IAAI,EAAC,MADN;AAEC,MAAA,IAAI,EAAGG,iBAFR;AAGC,MAAA,KAAK,EAAGZ,KAHT;AAIC,MAAA,OAAO,EAAGW,OAJX;AAKC,MAAA,QAAQ,EAAGN,QALZ;AAMC,MAAA,YAAY,EAAC,SANd;AAOC,MAAA,iBAAiB,EAAC;AAPnB,MAND,EAeC,4BAAC,yCAAD;AACC,MAAA,SAAS,EAAC,YADX;AAEC,MAAA,OAAO,EAAGI;AAFX,MAfD,CADD;AAsBA;;AArCkB,CAAb","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { toggleFormat } from '@wordpress/rich-text';\nimport {\n\tRichTextToolbarButton,\n\tRichTextShortcut,\n\t__unstableRichTextInputEvent,\n} from '@wordpress/block-editor';\nimport { formatBold } from '@wordpress/icons';\n\nconst name = 'core/bold';\nconst title = __( 'Bold' );\n\nexport const bold = {\n\tname,\n\ttitle,\n\ttagName: 'strong',\n\tclassName: null,\n\tedit( { isActive, value, onChange, onFocus } ) {\n\t\tfunction onToggle() {\n\t\t\tonChange( toggleFormat( value, { type: name, title } ) );\n\t\t}\n\n\t\tfunction onClick() {\n\t\t\tonChange( toggleFormat( value, { type: name } ) );\n\t\t\tonFocus();\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<RichTextShortcut\n\t\t\t\t\ttype=\"primary\"\n\t\t\t\t\tcharacter=\"b\"\n\t\t\t\t\tonUse={ onToggle }\n\t\t\t\t/>\n\t\t\t\t<RichTextToolbarButton\n\t\t\t\t\tname=\"bold\"\n\t\t\t\t\ticon={ formatBold }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\tisActive={ isActive }\n\t\t\t\t\tshortcutType=\"primary\"\n\t\t\t\t\tshortcutCharacter=\"b\"\n\t\t\t\t/>\n\t\t\t\t<__unstableRichTextInputEvent\n\t\t\t\t\tinputType=\"formatBold\"\n\t\t\t\t\tonInput={ onToggle }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t},\n};\n"]}
|
package/build/code/index.js
CHANGED
|
@@ -63,14 +63,12 @@ const code = {
|
|
|
63
63
|
return value;
|
|
64
64
|
},
|
|
65
65
|
|
|
66
|
-
edit(
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
} = _ref;
|
|
73
|
-
|
|
66
|
+
edit({
|
|
67
|
+
value,
|
|
68
|
+
onChange,
|
|
69
|
+
onFocus,
|
|
70
|
+
isActive
|
|
71
|
+
}) {
|
|
74
72
|
function onClick() {
|
|
75
73
|
onChange((0, _richText.toggleFormat)(value, {
|
|
76
74
|
type: name,
|
package/build/code/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/format-library/src/code/index.js"],"names":["name","title","code","tagName","className","__unstableInputRule","value","BACKTICK","start","text","characterBefore","indexBefore","lastIndexOf","startIndex","endIndex","type","edit","onChange","onFocus","isActive","onClick","codeIcon"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAIA;;AATA;AACA;AACA;AASA,MAAMA,IAAI,GAAG,WAAb;AACA,MAAMC,KAAK,GAAG,cAAI,aAAJ,CAAd;AAEO,MAAMC,IAAI,GAAG;AACnBF,EAAAA,IADmB;AAEnBC,EAAAA,KAFmB;AAGnBE,EAAAA,OAAO,EAAE,MAHU;AAInBC,EAAAA,SAAS,EAAE,IAJQ;;AAKnBC,EAAAA,mBAAmB,CAAEC,KAAF,EAAU;AAC5B,UAAMC,QAAQ,GAAG,GAAjB;AACA,UAAM;AAAEC,MAAAA,KAAF;AAASC,MAAAA;AAAT,QAAkBH,KAAxB;AACA,UAAMI,eAAe,GAAGD,IAAI,CAAED,KAAK,GAAG,CAAV,CAA5B,CAH4B,CAK5B;;AACA,QAAKE,eAAe,KAAKH,QAAzB,EAAoC;AACnC,aAAOD,KAAP;AACA;;AAED,QAAKE,KAAK,GAAG,CAAR,GAAY,CAAjB,EAAqB;AACpB,aAAOF,KAAP;AACA;;AAED,UAAMK,WAAW,GAAGF,IAAI,CAACG,WAAL,CAAkBL,QAAlB,EAA4BC,KAAK,GAAG,CAApC,CAApB;;AACA,QAAKG,WAAW,KAAK,CAAC,CAAtB,EAA0B;AACzB,aAAOL,KAAP;AACA;;AAED,UAAMO,UAAU,GAAGF,WAAnB;AACA,UAAMG,QAAQ,GAAGN,KAAK,GAAG,CAAzB;;AAEA,QAAKK,UAAU,KAAKC,QAApB,EAA+B;AAC9B,aAAOR,KAAP;AACA;;AAEDA,IAAAA,KAAK,GAAG,sBAAQA,KAAR,EAAeO,UAAf,EAA2BA,UAAU,GAAG,CAAxC,CAAR;AACAP,IAAAA,KAAK,GAAG,sBAAQA,KAAR,EAAeQ,QAAf,EAAyBA,QAAQ,GAAG,CAApC,CAAR;AACAR,IAAAA,KAAK,GAAG,2BAAaA,KAAb,EAAoB;AAAES,MAAAA,IAAI,EAAEf;AAAR,KAApB,EAAoCa,UAApC,EAAgDC,QAAhD,CAAR;AAEA,WAAOR,KAAP;AACA,GApCkB;;AAqCnBU,EAAAA,IAAI,
|
|
1
|
+
{"version":3,"sources":["@wordpress/format-library/src/code/index.js"],"names":["name","title","code","tagName","className","__unstableInputRule","value","BACKTICK","start","text","characterBefore","indexBefore","lastIndexOf","startIndex","endIndex","type","edit","onChange","onFocus","isActive","onClick","codeIcon"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAIA;;AATA;AACA;AACA;AASA,MAAMA,IAAI,GAAG,WAAb;AACA,MAAMC,KAAK,GAAG,cAAI,aAAJ,CAAd;AAEO,MAAMC,IAAI,GAAG;AACnBF,EAAAA,IADmB;AAEnBC,EAAAA,KAFmB;AAGnBE,EAAAA,OAAO,EAAE,MAHU;AAInBC,EAAAA,SAAS,EAAE,IAJQ;;AAKnBC,EAAAA,mBAAmB,CAAEC,KAAF,EAAU;AAC5B,UAAMC,QAAQ,GAAG,GAAjB;AACA,UAAM;AAAEC,MAAAA,KAAF;AAASC,MAAAA;AAAT,QAAkBH,KAAxB;AACA,UAAMI,eAAe,GAAGD,IAAI,CAAED,KAAK,GAAG,CAAV,CAA5B,CAH4B,CAK5B;;AACA,QAAKE,eAAe,KAAKH,QAAzB,EAAoC;AACnC,aAAOD,KAAP;AACA;;AAED,QAAKE,KAAK,GAAG,CAAR,GAAY,CAAjB,EAAqB;AACpB,aAAOF,KAAP;AACA;;AAED,UAAMK,WAAW,GAAGF,IAAI,CAACG,WAAL,CAAkBL,QAAlB,EAA4BC,KAAK,GAAG,CAApC,CAApB;;AACA,QAAKG,WAAW,KAAK,CAAC,CAAtB,EAA0B;AACzB,aAAOL,KAAP;AACA;;AAED,UAAMO,UAAU,GAAGF,WAAnB;AACA,UAAMG,QAAQ,GAAGN,KAAK,GAAG,CAAzB;;AAEA,QAAKK,UAAU,KAAKC,QAApB,EAA+B;AAC9B,aAAOR,KAAP;AACA;;AAEDA,IAAAA,KAAK,GAAG,sBAAQA,KAAR,EAAeO,UAAf,EAA2BA,UAAU,GAAG,CAAxC,CAAR;AACAP,IAAAA,KAAK,GAAG,sBAAQA,KAAR,EAAeQ,QAAf,EAAyBA,QAAQ,GAAG,CAApC,CAAR;AACAR,IAAAA,KAAK,GAAG,2BAAaA,KAAb,EAAoB;AAAES,MAAAA,IAAI,EAAEf;AAAR,KAApB,EAAoCa,UAApC,EAAgDC,QAAhD,CAAR;AAEA,WAAOR,KAAP;AACA,GApCkB;;AAqCnBU,EAAAA,IAAI,CAAE;AAAEV,IAAAA,KAAF;AAASW,IAAAA,QAAT;AAAmBC,IAAAA,OAAnB;AAA4BC,IAAAA;AAA5B,GAAF,EAA2C;AAC9C,aAASC,OAAT,GAAmB;AAClBH,MAAAA,QAAQ,CAAE,4BAAcX,KAAd,EAAqB;AAAES,QAAAA,IAAI,EAAEf,IAAR;AAAcC,QAAAA;AAAd,OAArB,CAAF,CAAR;AACAiB,MAAAA,OAAO;AACP;;AAED,WACC,qDACC,4BAAC,6BAAD;AACC,MAAA,IAAI,EAAC,QADN;AAEC,MAAA,SAAS,EAAC,GAFX;AAGC,MAAA,KAAK,EAAGE;AAHT,MADD,EAMC,4BAAC,kCAAD;AACC,MAAA,IAAI,EAAGC,WADR;AAEC,MAAA,KAAK,EAAGpB,KAFT;AAGC,MAAA,OAAO,EAAGmB,OAHX;AAIC,MAAA,QAAQ,EAAGD,QAJZ;AAKC,MAAA,IAAI,EAAC;AALN,MAND,CADD;AAgBA;;AA3DkB,CAAb","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { toggleFormat, remove, applyFormat } from '@wordpress/rich-text';\nimport {\n\tRichTextToolbarButton,\n\tRichTextShortcut,\n} from '@wordpress/block-editor';\nimport { code as codeIcon } from '@wordpress/icons';\n\nconst name = 'core/code';\nconst title = __( 'Inline code' );\n\nexport const code = {\n\tname,\n\ttitle,\n\ttagName: 'code',\n\tclassName: null,\n\t__unstableInputRule( value ) {\n\t\tconst BACKTICK = '`';\n\t\tconst { start, text } = value;\n\t\tconst characterBefore = text[ start - 1 ];\n\n\t\t// Quick check the text for the necessary character.\n\t\tif ( characterBefore !== BACKTICK ) {\n\t\t\treturn value;\n\t\t}\n\n\t\tif ( start - 2 < 0 ) {\n\t\t\treturn value;\n\t\t}\n\n\t\tconst indexBefore = text.lastIndexOf( BACKTICK, start - 2 );\n\t\tif ( indexBefore === -1 ) {\n\t\t\treturn value;\n\t\t}\n\n\t\tconst startIndex = indexBefore;\n\t\tconst endIndex = start - 2;\n\n\t\tif ( startIndex === endIndex ) {\n\t\t\treturn value;\n\t\t}\n\n\t\tvalue = remove( value, startIndex, startIndex + 1 );\n\t\tvalue = remove( value, endIndex, endIndex + 1 );\n\t\tvalue = applyFormat( value, { type: name }, startIndex, endIndex );\n\n\t\treturn value;\n\t},\n\tedit( { value, onChange, onFocus, isActive } ) {\n\t\tfunction onClick() {\n\t\t\tonChange( toggleFormat( value, { type: name, title } ) );\n\t\t\tonFocus();\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<RichTextShortcut\n\t\t\t\t\ttype=\"access\"\n\t\t\t\t\tcharacter=\"x\"\n\t\t\t\t\tonUse={ onClick }\n\t\t\t\t/>\n\t\t\t\t<RichTextToolbarButton\n\t\t\t\t\ticon={ codeIcon }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\tisActive={ isActive }\n\t\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t},\n};\n"]}
|
package/build/image/index.js
CHANGED
|
@@ -40,17 +40,16 @@ const image = {
|
|
|
40
40
|
};
|
|
41
41
|
exports.image = image;
|
|
42
42
|
|
|
43
|
-
function InlineUI(
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
} = _ref;
|
|
43
|
+
function InlineUI({
|
|
44
|
+
value,
|
|
45
|
+
onChange,
|
|
46
|
+
activeObjectAttributes,
|
|
47
|
+
contentRef
|
|
48
|
+
}) {
|
|
50
49
|
const {
|
|
51
50
|
style
|
|
52
51
|
} = activeObjectAttributes;
|
|
53
|
-
const [width, setWidth] = (0, _element.useState)(style
|
|
52
|
+
const [width, setWidth] = (0, _element.useState)(style?.replace(/\D/g, ''));
|
|
54
53
|
const popoverAnchor = (0, _richText.useAnchor)({
|
|
55
54
|
editableContentElement: contentRef.current,
|
|
56
55
|
settings: image
|
|
@@ -92,15 +91,14 @@ function InlineUI(_ref) {
|
|
|
92
91
|
}))));
|
|
93
92
|
}
|
|
94
93
|
|
|
95
|
-
function Edit(
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
} = _ref2;
|
|
94
|
+
function Edit({
|
|
95
|
+
value,
|
|
96
|
+
onChange,
|
|
97
|
+
onFocus,
|
|
98
|
+
isObjectActive,
|
|
99
|
+
activeObjectAttributes,
|
|
100
|
+
contentRef
|
|
101
|
+
}) {
|
|
104
102
|
const [isModalOpen, setIsModalOpen] = (0, _element.useState)(false);
|
|
105
103
|
|
|
106
104
|
function openModal() {
|
|
@@ -123,13 +121,12 @@ function Edit(_ref2) {
|
|
|
123
121
|
isActive: isObjectActive
|
|
124
122
|
}), isModalOpen && (0, _element.createElement)(_blockEditor.MediaUpload, {
|
|
125
123
|
allowedTypes: ALLOWED_MEDIA_TYPES,
|
|
126
|
-
onSelect:
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
} = _ref3;
|
|
124
|
+
onSelect: ({
|
|
125
|
+
id,
|
|
126
|
+
url,
|
|
127
|
+
alt,
|
|
128
|
+
width: imgWidth
|
|
129
|
+
}) => {
|
|
133
130
|
closeModal();
|
|
134
131
|
onChange((0, _richText.insertObject)(value, {
|
|
135
132
|
type: name,
|
|
@@ -143,10 +140,9 @@ function Edit(_ref2) {
|
|
|
143
140
|
onFocus();
|
|
144
141
|
},
|
|
145
142
|
onClose: closeModal,
|
|
146
|
-
render:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
} = _ref4;
|
|
143
|
+
render: ({
|
|
144
|
+
open
|
|
145
|
+
}) => {
|
|
150
146
|
open();
|
|
151
147
|
return null;
|
|
152
148
|
}
|
package/build/image/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/format-library/src/image/index.js"],"names":["ALLOWED_MEDIA_TYPES","name","title","image","keywords","object","tagName","className","attributes","style","url","alt","edit","Edit","InlineUI","value","onChange","activeObjectAttributes","contentRef","width","setWidth","replace","popoverAnchor","editableContentElement","current","settings","event","newReplacements","replacements","slice","start","type","preventDefault","newWidth","keyboardReturn","onFocus","isObjectActive","isModalOpen","setIsModalOpen","openModal","closeModal","id","imgWidth","Math","min","open"],"mappings":";;;;;;;AAYA;;AATA;;AAQA;;AAEA;;AACA;;AAKA;;AAnBA;AACA;AACA;AAmBA,MAAMA,mBAAmB,GAAG,CAAE,OAAF,CAA5B;AAEA,MAAMC,IAAI,GAAG,YAAb;AACA,MAAMC,KAAK,GAAG,cAAI,cAAJ,CAAd;AAEO,MAAMC,KAAK,GAAG;AACpBF,EAAAA,IADoB;AAEpBC,EAAAA,KAFoB;AAGpBE,EAAAA,QAAQ,EAAE,CAAE,cAAI,OAAJ,CAAF,EAAiB,cAAI,OAAJ,CAAjB,CAHU;AAIpBC,EAAAA,MAAM,EAAE,IAJY;AAKpBC,EAAAA,OAAO,EAAE,KALW;AAMpBC,EAAAA,SAAS,EAAE,IANS;AAOpBC,EAAAA,UAAU,EAAE;AACXD,IAAAA,SAAS,EAAE,OADA;AAEXE,IAAAA,KAAK,EAAE,OAFI;AAGXC,IAAAA,GAAG,EAAE,KAHM;AAIXC,IAAAA,GAAG,EAAE;AAJM,GAPQ;AAapBC,EAAAA,IAAI,EAAEC;AAbc,CAAd;;;AAgBP,SAASC,QAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/format-library/src/image/index.js"],"names":["ALLOWED_MEDIA_TYPES","name","title","image","keywords","object","tagName","className","attributes","style","url","alt","edit","Edit","InlineUI","value","onChange","activeObjectAttributes","contentRef","width","setWidth","replace","popoverAnchor","editableContentElement","current","settings","event","newReplacements","replacements","slice","start","type","preventDefault","newWidth","keyboardReturn","onFocus","isObjectActive","isModalOpen","setIsModalOpen","openModal","closeModal","id","imgWidth","Math","min","open"],"mappings":";;;;;;;AAYA;;AATA;;AAQA;;AAEA;;AACA;;AAKA;;AAnBA;AACA;AACA;AAmBA,MAAMA,mBAAmB,GAAG,CAAE,OAAF,CAA5B;AAEA,MAAMC,IAAI,GAAG,YAAb;AACA,MAAMC,KAAK,GAAG,cAAI,cAAJ,CAAd;AAEO,MAAMC,KAAK,GAAG;AACpBF,EAAAA,IADoB;AAEpBC,EAAAA,KAFoB;AAGpBE,EAAAA,QAAQ,EAAE,CAAE,cAAI,OAAJ,CAAF,EAAiB,cAAI,OAAJ,CAAjB,CAHU;AAIpBC,EAAAA,MAAM,EAAE,IAJY;AAKpBC,EAAAA,OAAO,EAAE,KALW;AAMpBC,EAAAA,SAAS,EAAE,IANS;AAOpBC,EAAAA,UAAU,EAAE;AACXD,IAAAA,SAAS,EAAE,OADA;AAEXE,IAAAA,KAAK,EAAE,OAFI;AAGXC,IAAAA,GAAG,EAAE,KAHM;AAIXC,IAAAA,GAAG,EAAE;AAJM,GAPQ;AAapBC,EAAAA,IAAI,EAAEC;AAbc,CAAd;;;AAgBP,SAASC,QAAT,CAAmB;AAAEC,EAAAA,KAAF;AAASC,EAAAA,QAAT;AAAmBC,EAAAA,sBAAnB;AAA2CC,EAAAA;AAA3C,CAAnB,EAA6E;AAC5E,QAAM;AAAET,IAAAA;AAAF,MAAYQ,sBAAlB;AACA,QAAM,CAAEE,KAAF,EAASC,QAAT,IAAsB,uBAAUX,KAAK,EAAEY,OAAP,CAAgB,KAAhB,EAAuB,EAAvB,CAAV,CAA5B;AACA,QAAMC,aAAa,GAAG,yBAAW;AAChCC,IAAAA,sBAAsB,EAAEL,UAAU,CAACM,OADH;AAEhCC,IAAAA,QAAQ,EAAEtB;AAFsB,GAAX,CAAtB;AAKA,SACC,4BAAC,mBAAD;AACC,IAAA,SAAS,EAAC,QADX;AAEC,IAAA,YAAY,EAAG,KAFhB;AAGC,IAAA,MAAM,EAAGmB,aAHV;AAIC,IAAA,SAAS,EAAC;AAJX,KAMC;AACC,IAAA,SAAS,EAAC,sDADX;AAEC,IAAA,QAAQ,EAAKI,KAAF,IAAa;AACvB,YAAMC,eAAe,GAAGZ,KAAK,CAACa,YAAN,CAAmBC,KAAnB,EAAxB;AAEAF,MAAAA,eAAe,CAAEZ,KAAK,CAACe,KAAR,CAAf,GAAiC;AAChCC,QAAAA,IAAI,EAAE9B,IAD0B;AAEhCO,QAAAA,UAAU,EAAE,EACX,GAAGS,sBADQ;AAEXR,UAAAA,KAAK,EAAEU,KAAK,GAAI,UAAUA,KAAO,KAArB,GAA4B;AAF7B;AAFoB,OAAjC;AAQAH,MAAAA,QAAQ,CAAE,EACT,GAAGD,KADM;AAETa,QAAAA,YAAY,EAAED;AAFL,OAAF,CAAR;AAKAD,MAAAA,KAAK,CAACM,cAAN;AACA;AAnBF,KAqBC,4BAAC,gCAAD;AAAQ,IAAA,SAAS,EAAC,QAAlB;AAA2B,IAAA,OAAO,EAAC;AAAnC,KACC,4BAAC,uCAAD;AACC,IAAA,SAAS,EAAC,oDADX;AAEC,IAAA,KAAK,EAAG,cAAI,OAAJ,CAFT;AAGC,IAAA,KAAK,EAAGb,KAHT;AAIC,IAAA,GAAG,EAAG,CAJP;AAKC,IAAA,QAAQ,EAAKc,QAAF,IAAgBb,QAAQ,CAAEa,QAAF;AALpC,IADD,EAQC,4BAAC,kBAAD;AACC,IAAA,SAAS,EAAC,qDADX;AAEC,IAAA,IAAI,EAAGC,qBAFR;AAGC,IAAA,KAAK,EAAG,cAAI,OAAJ,CAHT;AAIC,IAAA,IAAI,EAAC;AAJN,IARD,CArBD,CAND,CADD;AA8CA;;AAED,SAASrB,IAAT,CAAe;AACdE,EAAAA,KADc;AAEdC,EAAAA,QAFc;AAGdmB,EAAAA,OAHc;AAIdC,EAAAA,cAJc;AAKdnB,EAAAA,sBALc;AAMdC,EAAAA;AANc,CAAf,EAOI;AACH,QAAM,CAAEmB,WAAF,EAAeC,cAAf,IAAkC,uBAAU,KAAV,CAAxC;;AAEA,WAASC,SAAT,GAAqB;AACpBD,IAAAA,cAAc,CAAE,IAAF,CAAd;AACA;;AAED,WAASE,UAAT,GAAsB;AACrBF,IAAAA,cAAc,CAAE,KAAF,CAAd;AACA;;AAED,SACC,4BAAC,6BAAD,QACC,4BAAC,kCAAD;AACC,IAAA,IAAI,EACH,4BAAC,eAAD;AAAK,MAAA,KAAK,EAAC,4BAAX;AAAwC,MAAA,OAAO,EAAC;AAAhD,OACC,4BAAC,gBAAD;AAAM,MAAA,CAAC,EAAC;AAAR,MADD,CAFF;AAMC,IAAA,KAAK,EAAGpC,KANT;AAOC,IAAA,OAAO,EAAGqC,SAPX;AAQC,IAAA,QAAQ,EAAGH;AARZ,IADD,EAWGC,WAAW,IACZ,4BAAC,wBAAD;AACC,IAAA,YAAY,EAAGrC,mBADhB;AAEC,IAAA,QAAQ,EAAG,CAAE;AAAEyC,MAAAA,EAAF;AAAM/B,MAAAA,GAAN;AAAWC,MAAAA,GAAX;AAAgBQ,MAAAA,KAAK,EAAEuB;AAAvB,KAAF,KAAyC;AACnDF,MAAAA,UAAU;AACVxB,MAAAA,QAAQ,CACP,4BAAcD,KAAd,EAAqB;AACpBgB,QAAAA,IAAI,EAAE9B,IADc;AAEpBO,QAAAA,UAAU,EAAE;AACXD,UAAAA,SAAS,EAAG,YAAYkC,EAAI,EADjB;AAEXhC,UAAAA,KAAK,EAAG,UAAUkC,IAAI,CAACC,GAAL,CACjBF,QADiB,EAEjB,GAFiB,CAGf,KALQ;AAMXhC,UAAAA,GANW;AAOXC,UAAAA;AAPW;AAFQ,OAArB,CADO,CAAR;AAcAwB,MAAAA,OAAO;AACP,KAnBF;AAoBC,IAAA,OAAO,EAAGK,UApBX;AAqBC,IAAA,MAAM,EAAG,CAAE;AAAEK,MAAAA;AAAF,KAAF,KAAgB;AACxBA,MAAAA,IAAI;AACJ,aAAO,IAAP;AACA;AAxBF,IAZF,EAuCGT,cAAc,IACf,4BAAC,QAAD;AACC,IAAA,KAAK,EAAGrB,KADT;AAEC,IAAA,QAAQ,EAAGC,QAFZ;AAGC,IAAA,sBAAsB,EAAGC,sBAH1B;AAIC,IAAA,UAAU,EAAGC;AAJd,IAxCF,CADD;AAkDA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPath,\n\tSVG,\n\tPopover,\n\tButton,\n\t__experimentalNumberControl as NumberControl,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { insertObject, useAnchor } from '@wordpress/rich-text';\nimport {\n\tMediaUpload,\n\tRichTextToolbarButton,\n\tMediaUploadCheck,\n} from '@wordpress/block-editor';\nimport { keyboardReturn } from '@wordpress/icons';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nconst name = 'core/image';\nconst title = __( 'Inline image' );\n\nexport const image = {\n\tname,\n\ttitle,\n\tkeywords: [ __( 'photo' ), __( 'media' ) ],\n\tobject: true,\n\ttagName: 'img',\n\tclassName: null,\n\tattributes: {\n\t\tclassName: 'class',\n\t\tstyle: 'style',\n\t\turl: 'src',\n\t\talt: 'alt',\n\t},\n\tedit: Edit,\n};\n\nfunction InlineUI( { value, onChange, activeObjectAttributes, contentRef } ) {\n\tconst { style } = activeObjectAttributes;\n\tconst [ width, setWidth ] = useState( style?.replace( /\\D/g, '' ) );\n\tconst popoverAnchor = useAnchor( {\n\t\teditableContentElement: contentRef.current,\n\t\tsettings: image,\n\t} );\n\n\treturn (\n\t\t<Popover\n\t\t\tplacement=\"bottom\"\n\t\t\tfocusOnMount={ false }\n\t\t\tanchor={ popoverAnchor }\n\t\t\tclassName=\"block-editor-format-toolbar__image-popover\"\n\t\t>\n\t\t\t<form\n\t\t\t\tclassName=\"block-editor-format-toolbar__image-container-content\"\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tconst newReplacements = value.replacements.slice();\n\n\t\t\t\t\tnewReplacements[ value.start ] = {\n\t\t\t\t\t\ttype: name,\n\t\t\t\t\t\tattributes: {\n\t\t\t\t\t\t\t...activeObjectAttributes,\n\t\t\t\t\t\t\tstyle: width ? `width: ${ width }px;` : '',\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\n\t\t\t\t\tonChange( {\n\t\t\t\t\t\t...value,\n\t\t\t\t\t\treplacements: newReplacements,\n\t\t\t\t\t} );\n\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<HStack alignment=\"bottom\" spacing=\"0\">\n\t\t\t\t\t<NumberControl\n\t\t\t\t\t\tclassName=\"block-editor-format-toolbar__image-container-value\"\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tvalue={ width }\n\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\tonChange={ ( newWidth ) => setWidth( newWidth ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"block-editor-format-toolbar__image-container-button\"\n\t\t\t\t\t\ticon={ keyboardReturn }\n\t\t\t\t\t\tlabel={ __( 'Apply' ) }\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t/>\n\t\t\t\t</HStack>\n\t\t\t</form>\n\t\t</Popover>\n\t);\n}\n\nfunction Edit( {\n\tvalue,\n\tonChange,\n\tonFocus,\n\tisObjectActive,\n\tactiveObjectAttributes,\n\tcontentRef,\n} ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\n\tfunction openModal() {\n\t\tsetIsModalOpen( true );\n\t}\n\n\tfunction closeModal() {\n\t\tsetIsModalOpen( false );\n\t}\n\n\treturn (\n\t\t<MediaUploadCheck>\n\t\t\t<RichTextToolbarButton\n\t\t\t\ticon={\n\t\t\t\t\t<SVG xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n\t\t\t\t\t\t<Path d=\"M4 18.5h16V17H4v1.5zM16 13v1.5h4V13h-4zM5.1 15h7.8c.6 0 1.1-.5 1.1-1.1V6.1c0-.6-.5-1.1-1.1-1.1H5.1C4.5 5 4 5.5 4 6.1v7.8c0 .6.5 1.1 1.1 1.1zm.4-8.5h7V10l-1-1c-.3-.3-.8-.3-1 0l-1.6 1.5-1.2-.7c-.3-.2-.6-.2-.9 0l-1.3 1V6.5zm0 6.1l1.8-1.3 1.3.8c.3.2.7.2.9-.1l1.5-1.4 1.5 1.4v1.5h-7v-.9z\" />\n\t\t\t\t\t</SVG>\n\t\t\t\t}\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ openModal }\n\t\t\t\tisActive={ isObjectActive }\n\t\t\t/>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<MediaUpload\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonSelect={ ( { id, url, alt, width: imgWidth } ) => {\n\t\t\t\t\t\tcloseModal();\n\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\tinsertObject( value, {\n\t\t\t\t\t\t\t\ttype: name,\n\t\t\t\t\t\t\t\tattributes: {\n\t\t\t\t\t\t\t\t\tclassName: `wp-image-${ id }`,\n\t\t\t\t\t\t\t\t\tstyle: `width: ${ Math.min(\n\t\t\t\t\t\t\t\t\t\timgWidth,\n\t\t\t\t\t\t\t\t\t\t150\n\t\t\t\t\t\t\t\t\t) }px;`,\n\t\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t\tonFocus();\n\t\t\t\t\t} }\n\t\t\t\t\tonClose={ closeModal }\n\t\t\t\t\trender={ ( { open } ) => {\n\t\t\t\t\t\topen();\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ isObjectActive && (\n\t\t\t\t<InlineUI\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tactiveObjectAttributes={ activeObjectAttributes }\n\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</MediaUploadCheck>\n\t);\n}\n"]}
|
package/build/index.js
CHANGED
|
@@ -13,11 +13,8 @@ var _defaultFormats = _interopRequireDefault(require("./default-formats"));
|
|
|
13
13
|
/**
|
|
14
14
|
* Internal dependencies
|
|
15
15
|
*/
|
|
16
|
-
_defaultFormats.default.forEach(
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
} = _ref;
|
|
21
|
-
return (0, _richText.registerFormatType)(name, settings);
|
|
22
|
-
});
|
|
16
|
+
_defaultFormats.default.forEach(({
|
|
17
|
+
name,
|
|
18
|
+
...settings
|
|
19
|
+
}) => (0, _richText.registerFormatType)(name, settings));
|
|
23
20
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/format-library/src/index.js"],"names":["formats","forEach","name","settings"],"mappings":";;;;AAGA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;AAGAA,wBAAQC,OAAR,CAAiB
|
|
1
|
+
{"version":3,"sources":["@wordpress/format-library/src/index.js"],"names":["formats","forEach","name","settings"],"mappings":";;;;AAGA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;AAGAA,wBAAQC,OAAR,CAAiB,CAAE;AAAEC,EAAAA,IAAF;AAAQ,KAAGC;AAAX,CAAF,KAChB,kCAAoBD,IAApB,EAA0BC,QAA1B,CADD","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { registerFormatType } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport formats from './default-formats';\n\nformats.forEach( ( { name, ...settings } ) =>\n\tregisterFormatType( name, settings )\n);\n"]}
|
package/build/italic/index.js
CHANGED
|
@@ -26,14 +26,12 @@ const italic = {
|
|
|
26
26
|
tagName: 'em',
|
|
27
27
|
className: null,
|
|
28
28
|
|
|
29
|
-
edit(
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
} = _ref;
|
|
36
|
-
|
|
29
|
+
edit({
|
|
30
|
+
isActive,
|
|
31
|
+
value,
|
|
32
|
+
onChange,
|
|
33
|
+
onFocus
|
|
34
|
+
}) {
|
|
37
35
|
function onToggle() {
|
|
38
36
|
onChange((0, _richText.toggleFormat)(value, {
|
|
39
37
|
type: name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/format-library/src/italic/index.js"],"names":["name","title","italic","tagName","className","edit","isActive","value","onChange","onFocus","onToggle","type","onClick","formatItalic"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;AAUA,MAAMA,IAAI,GAAG,aAAb;AACA,MAAMC,KAAK,GAAG,cAAI,QAAJ,CAAd;AAEO,MAAMC,MAAM,GAAG;AACrBF,EAAAA,IADqB;AAErBC,EAAAA,KAFqB;AAGrBE,EAAAA,OAAO,EAAE,IAHY;AAIrBC,EAAAA,SAAS,EAAE,IAJU;;AAKrBC,EAAAA,IAAI,
|
|
1
|
+
{"version":3,"sources":["@wordpress/format-library/src/italic/index.js"],"names":["name","title","italic","tagName","className","edit","isActive","value","onChange","onFocus","onToggle","type","onClick","formatItalic"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;AAUA,MAAMA,IAAI,GAAG,aAAb;AACA,MAAMC,KAAK,GAAG,cAAI,QAAJ,CAAd;AAEO,MAAMC,MAAM,GAAG;AACrBF,EAAAA,IADqB;AAErBC,EAAAA,KAFqB;AAGrBE,EAAAA,OAAO,EAAE,IAHY;AAIrBC,EAAAA,SAAS,EAAE,IAJU;;AAKrBC,EAAAA,IAAI,CAAE;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,KAAZ;AAAmBC,IAAAA,QAAnB;AAA6BC,IAAAA;AAA7B,GAAF,EAA2C;AAC9C,aAASC,QAAT,GAAoB;AACnBF,MAAAA,QAAQ,CAAE,4BAAcD,KAAd,EAAqB;AAAEI,QAAAA,IAAI,EAAEX,IAAR;AAAcC,QAAAA;AAAd,OAArB,CAAF,CAAR;AACA;;AAED,aAASW,OAAT,GAAmB;AAClBJ,MAAAA,QAAQ,CAAE,4BAAcD,KAAd,EAAqB;AAAEI,QAAAA,IAAI,EAAEX;AAAR,OAArB,CAAF,CAAR;AACAS,MAAAA,OAAO;AACP;;AAED,WACC,qDACC,4BAAC,6BAAD;AACC,MAAA,IAAI,EAAC,SADN;AAEC,MAAA,SAAS,EAAC,GAFX;AAGC,MAAA,KAAK,EAAGC;AAHT,MADD,EAMC,4BAAC,kCAAD;AACC,MAAA,IAAI,EAAC,QADN;AAEC,MAAA,IAAI,EAAGG,mBAFR;AAGC,MAAA,KAAK,EAAGZ,KAHT;AAIC,MAAA,OAAO,EAAGW,OAJX;AAKC,MAAA,QAAQ,EAAGN,QALZ;AAMC,MAAA,YAAY,EAAC,SANd;AAOC,MAAA,iBAAiB,EAAC;AAPnB,MAND,EAeC,4BAAC,yCAAD;AACC,MAAA,SAAS,EAAC,cADX;AAEC,MAAA,OAAO,EAAGI;AAFX,MAfD,CADD;AAsBA;;AArCoB,CAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { toggleFormat } from '@wordpress/rich-text';\nimport {\n\tRichTextToolbarButton,\n\tRichTextShortcut,\n\t__unstableRichTextInputEvent,\n} from '@wordpress/block-editor';\nimport { formatItalic } from '@wordpress/icons';\n\nconst name = 'core/italic';\nconst title = __( 'Italic' );\n\nexport const italic = {\n\tname,\n\ttitle,\n\ttagName: 'em',\n\tclassName: null,\n\tedit( { isActive, value, onChange, onFocus } ) {\n\t\tfunction onToggle() {\n\t\t\tonChange( toggleFormat( value, { type: name, title } ) );\n\t\t}\n\n\t\tfunction onClick() {\n\t\t\tonChange( toggleFormat( value, { type: name } ) );\n\t\t\tonFocus();\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<RichTextShortcut\n\t\t\t\t\ttype=\"primary\"\n\t\t\t\t\tcharacter=\"i\"\n\t\t\t\t\tonUse={ onToggle }\n\t\t\t\t/>\n\t\t\t\t<RichTextToolbarButton\n\t\t\t\t\tname=\"italic\"\n\t\t\t\t\ticon={ formatItalic }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\tisActive={ isActive }\n\t\t\t\t\tshortcutType=\"primary\"\n\t\t\t\t\tshortcutCharacter=\"i\"\n\t\t\t\t/>\n\t\t\t\t<__unstableRichTextInputEvent\n\t\t\t\t\tinputType=\"formatItalic\"\n\t\t\t\t\tonInput={ onToggle }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t},\n};\n"]}
|
package/build/keyboard/index.js
CHANGED
|
@@ -26,14 +26,12 @@ const keyboard = {
|
|
|
26
26
|
tagName: 'kbd',
|
|
27
27
|
className: null,
|
|
28
28
|
|
|
29
|
-
edit(
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
} = _ref;
|
|
36
|
-
|
|
29
|
+
edit({
|
|
30
|
+
isActive,
|
|
31
|
+
value,
|
|
32
|
+
onChange,
|
|
33
|
+
onFocus
|
|
34
|
+
}) {
|
|
37
35
|
function onToggle() {
|
|
38
36
|
onChange((0, _richText.toggleFormat)(value, {
|
|
39
37
|
type: name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/format-library/src/keyboard/index.js"],"names":["name","title","keyboard","tagName","className","edit","isActive","value","onChange","onFocus","onToggle","type","onClick","button"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AANA;AACA;AACA;AAMA,MAAMA,IAAI,GAAG,eAAb;AACA,MAAMC,KAAK,GAAG,cAAI,gBAAJ,CAAd;AAEO,MAAMC,QAAQ,GAAG;AACvBF,EAAAA,IADuB;AAEvBC,EAAAA,KAFuB;AAGvBE,EAAAA,OAAO,EAAE,KAHc;AAIvBC,EAAAA,SAAS,EAAE,IAJY;;AAKvBC,EAAAA,IAAI,
|
|
1
|
+
{"version":3,"sources":["@wordpress/format-library/src/keyboard/index.js"],"names":["name","title","keyboard","tagName","className","edit","isActive","value","onChange","onFocus","onToggle","type","onClick","button"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AANA;AACA;AACA;AAMA,MAAMA,IAAI,GAAG,eAAb;AACA,MAAMC,KAAK,GAAG,cAAI,gBAAJ,CAAd;AAEO,MAAMC,QAAQ,GAAG;AACvBF,EAAAA,IADuB;AAEvBC,EAAAA,KAFuB;AAGvBE,EAAAA,OAAO,EAAE,KAHc;AAIvBC,EAAAA,SAAS,EAAE,IAJY;;AAKvBC,EAAAA,IAAI,CAAE;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,KAAZ;AAAmBC,IAAAA,QAAnB;AAA6BC,IAAAA;AAA7B,GAAF,EAA2C;AAC9C,aAASC,QAAT,GAAoB;AACnBF,MAAAA,QAAQ,CAAE,4BAAcD,KAAd,EAAqB;AAAEI,QAAAA,IAAI,EAAEX,IAAR;AAAcC,QAAAA;AAAd,OAArB,CAAF,CAAR;AACA;;AAED,aAASW,OAAT,GAAmB;AAClBF,MAAAA,QAAQ;AACRD,MAAAA,OAAO;AACP;;AAED,WACC,4BAAC,kCAAD;AACC,MAAA,IAAI,EAAGI,aADR;AAEC,MAAA,KAAK,EAAGZ,KAFT;AAGC,MAAA,OAAO,EAAGW,OAHX;AAIC,MAAA,QAAQ,EAAGN,QAJZ;AAKC,MAAA,IAAI,EAAC;AALN,MADD;AASA;;AAxBsB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { toggleFormat } from '@wordpress/rich-text';\nimport { RichTextToolbarButton } from '@wordpress/block-editor';\nimport { button } from '@wordpress/icons';\n\nconst name = 'core/keyboard';\nconst title = __( 'Keyboard input' );\n\nexport const keyboard = {\n\tname,\n\ttitle,\n\ttagName: 'kbd',\n\tclassName: null,\n\tedit( { isActive, value, onChange, onFocus } ) {\n\t\tfunction onToggle() {\n\t\t\tonChange( toggleFormat( value, { type: name, title } ) );\n\t\t}\n\n\t\tfunction onClick() {\n\t\t\tonToggle();\n\t\t\tonFocus();\n\t\t}\n\n\t\treturn (\n\t\t\t<RichTextToolbarButton\n\t\t\t\ticon={ button }\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ onClick }\n\t\t\t\tisActive={ isActive }\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t/>\n\t\t);\n\t},\n};\n"]}
|
package/build/language/index.js
CHANGED
|
@@ -35,25 +35,16 @@ const language = {
|
|
|
35
35
|
};
|
|
36
36
|
exports.language = language;
|
|
37
37
|
|
|
38
|
-
function Edit(
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
} = props;
|
|
45
|
-
const popoverAnchor = (0, _richText.useAnchor)({
|
|
46
|
-
editableContentElement: contentRef.current,
|
|
47
|
-
settings: language
|
|
48
|
-
});
|
|
49
|
-
const [lang, setLang] = (0, _element.useState)('');
|
|
50
|
-
const [dir, setDir] = (0, _element.useState)('ltr');
|
|
38
|
+
function Edit({
|
|
39
|
+
isActive,
|
|
40
|
+
value,
|
|
41
|
+
onChange,
|
|
42
|
+
contentRef
|
|
43
|
+
}) {
|
|
51
44
|
const [isPopoverVisible, setIsPopoverVisible] = (0, _element.useState)(false);
|
|
52
45
|
|
|
53
46
|
const togglePopover = () => {
|
|
54
47
|
setIsPopoverVisible(state => !state);
|
|
55
|
-
setLang('');
|
|
56
|
-
setDir('ltr');
|
|
57
48
|
};
|
|
58
49
|
|
|
59
50
|
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.RichTextToolbarButton, {
|
|
@@ -69,14 +60,35 @@ function Edit(props) {
|
|
|
69
60
|
},
|
|
70
61
|
isActive: isActive,
|
|
71
62
|
role: "menuitemcheckbox"
|
|
72
|
-
}), isPopoverVisible && (0, _element.createElement)(
|
|
63
|
+
}), isPopoverVisible && (0, _element.createElement)(InlineLanguageUI, {
|
|
64
|
+
value: value,
|
|
65
|
+
onChange: onChange,
|
|
66
|
+
onClose: togglePopover,
|
|
67
|
+
contentRef: contentRef
|
|
68
|
+
}));
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
function InlineLanguageUI({
|
|
72
|
+
value,
|
|
73
|
+
contentRef,
|
|
74
|
+
onChange,
|
|
75
|
+
onClose
|
|
76
|
+
}) {
|
|
77
|
+
const popoverAnchor = (0, _richText.useAnchor)({
|
|
78
|
+
editableContentElement: contentRef.current,
|
|
79
|
+
settings: language
|
|
80
|
+
});
|
|
81
|
+
const [lang, setLang] = (0, _element.useState)('');
|
|
82
|
+
const [dir, setDir] = (0, _element.useState)('ltr');
|
|
83
|
+
return (0, _element.createElement)(_components.Popover, {
|
|
73
84
|
className: "block-editor-format-toolbar__language-popover",
|
|
74
85
|
anchor: popoverAnchor,
|
|
75
86
|
placement: "bottom",
|
|
76
|
-
onClose:
|
|
87
|
+
onClose: onClose
|
|
77
88
|
}, (0, _element.createElement)("form", {
|
|
78
89
|
className: "block-editor-format-toolbar__language-container-content",
|
|
79
90
|
onSubmit: event => {
|
|
91
|
+
event.preventDefault();
|
|
80
92
|
onChange((0, _richText.applyFormat)(value, {
|
|
81
93
|
type: name,
|
|
82
94
|
attributes: {
|
|
@@ -84,8 +96,7 @@ function Edit(props) {
|
|
|
84
96
|
dir
|
|
85
97
|
}
|
|
86
98
|
}));
|
|
87
|
-
|
|
88
|
-
event.preventDefault();
|
|
99
|
+
onClose();
|
|
89
100
|
}
|
|
90
101
|
}, (0, _element.createElement)(_components.TextControl, {
|
|
91
102
|
label: title,
|
|
@@ -109,6 +120,6 @@ function Edit(props) {
|
|
|
109
120
|
variant: "primary",
|
|
110
121
|
type: "submit",
|
|
111
122
|
text: (0, _i18n.__)('Apply')
|
|
112
|
-
}))))
|
|
123
|
+
}))));
|
|
113
124
|
}
|
|
114
125
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/format-library/src/language/index.js"],"names":["name","title","language","tagName","className","edit","Edit","
|
|
1
|
+
{"version":3,"sources":["@wordpress/format-library/src/language/index.js"],"names":["name","title","language","tagName","className","edit","Edit","isActive","value","onChange","contentRef","isPopoverVisible","setIsPopoverVisible","togglePopover","state","languageIcon","InlineLanguageUI","onClose","popoverAnchor","editableContentElement","current","settings","lang","setLang","dir","setDir","event","preventDefault","type","attributes","val","label"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * WordPress dependencies\n */\nimport { RichTextToolbarButton } from '@wordpress/block-editor';\nimport {\n\tTextControl,\n\tSelectControl,\n\tButton,\n\tPopover,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { applyFormat, removeFormat, useAnchor } from '@wordpress/rich-text';\nimport { language as languageIcon } from '@wordpress/icons';\n\nconst name = 'core/language';\nconst title = __( 'Language' );\n\nexport const language = {\n\tname,\n\ttagName: 'bdo',\n\tclassName: null,\n\tedit: Edit,\n\ttitle,\n};\n\nfunction Edit( { isActive, value, onChange, contentRef } ) {\n\tconst [ isPopoverVisible, setIsPopoverVisible ] = useState( false );\n\tconst togglePopover = () => {\n\t\tsetIsPopoverVisible( ( state ) => ! state );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<RichTextToolbarButton\n\t\t\t\ticon={ languageIcon }\n\t\t\t\tlabel={ title }\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tif ( isActive ) {\n\t\t\t\t\t\tonChange( removeFormat( value, name ) );\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttogglePopover();\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t\tisActive={ isActive }\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t/>\n\t\t\t{ isPopoverVisible && (\n\t\t\t\t<InlineLanguageUI\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tonClose={ togglePopover }\n\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction InlineLanguageUI( { value, contentRef, onChange, onClose } ) {\n\tconst popoverAnchor = useAnchor( {\n\t\teditableContentElement: contentRef.current,\n\t\tsettings: language,\n\t} );\n\n\tconst [ lang, setLang ] = useState( '' );\n\tconst [ dir, setDir ] = useState( 'ltr' );\n\n\treturn (\n\t\t<Popover\n\t\t\tclassName=\"block-editor-format-toolbar__language-popover\"\n\t\t\tanchor={ popoverAnchor }\n\t\t\tplacement=\"bottom\"\n\t\t\tonClose={ onClose }\n\t\t>\n\t\t\t<form\n\t\t\t\tclassName=\"block-editor-format-toolbar__language-container-content\"\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tonChange(\n\t\t\t\t\t\tapplyFormat( value, {\n\t\t\t\t\t\t\ttype: name,\n\t\t\t\t\t\t\tattributes: {\n\t\t\t\t\t\t\t\tlang,\n\t\t\t\t\t\t\t\tdir,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t} )\n\t\t\t\t\t);\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<TextControl\n\t\t\t\t\tlabel={ title }\n\t\t\t\t\tvalue={ lang }\n\t\t\t\t\tonChange={ ( val ) => setLang( val ) }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'A valid language attribute, like \"en\" or \"fr\".'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t\t<SelectControl\n\t\t\t\t\tlabel={ __( 'Text direction' ) }\n\t\t\t\t\tvalue={ dir }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Left to right' ),\n\t\t\t\t\t\t\tvalue: 'ltr',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Right to left' ),\n\t\t\t\t\t\t\tvalue: 'rtl',\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t\tonChange={ ( val ) => setDir( val ) }\n\t\t\t\t/>\n\t\t\t\t<HStack alignment=\"right\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\ttext={ __( 'Apply' ) }\n\t\t\t\t\t/>\n\t\t\t\t</HStack>\n\t\t\t</form>\n\t\t</Popover>\n\t);\n}\n"]}
|
package/build/link/index.js
CHANGED
|
@@ -37,15 +37,14 @@ var _utils = require("./utils");
|
|
|
37
37
|
const name = 'core/link';
|
|
38
38
|
const title = (0, _i18n.__)('Link');
|
|
39
39
|
|
|
40
|
-
function Edit(
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
} = _ref;
|
|
40
|
+
function Edit({
|
|
41
|
+
isActive,
|
|
42
|
+
activeAttributes,
|
|
43
|
+
value,
|
|
44
|
+
onChange,
|
|
45
|
+
onFocus,
|
|
46
|
+
contentRef
|
|
47
|
+
}) {
|
|
49
48
|
const [addingLink, setAddingLink] = (0, _element.useState)(false);
|
|
50
49
|
|
|
51
50
|
function addLink() {
|
|
@@ -70,9 +69,12 @@ function Edit(_ref) {
|
|
|
70
69
|
}
|
|
71
70
|
}
|
|
72
71
|
|
|
73
|
-
function stopAddingLink() {
|
|
72
|
+
function stopAddingLink(returnFocus = true) {
|
|
74
73
|
setAddingLink(false);
|
|
75
|
-
|
|
74
|
+
|
|
75
|
+
if (returnFocus) {
|
|
76
|
+
onFocus();
|
|
77
|
+
}
|
|
76
78
|
}
|
|
77
79
|
|
|
78
80
|
function onRemoveFormat() {
|
|
@@ -127,12 +129,10 @@ const link = {
|
|
|
127
129
|
target: 'target'
|
|
128
130
|
},
|
|
129
131
|
|
|
130
|
-
__unstablePasteRule(value,
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
} = _ref2;
|
|
135
|
-
|
|
132
|
+
__unstablePasteRule(value, {
|
|
133
|
+
html,
|
|
134
|
+
plainText
|
|
135
|
+
}) {
|
|
136
136
|
if ((0, _richText.isCollapsed)(value)) {
|
|
137
137
|
return value;
|
|
138
138
|
}
|
package/build/link/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/format-library/src/link/index.js"],"names":["name","title","Edit","isActive","activeAttributes","value","onChange","onFocus","contentRef","addingLink","setAddingLink","addLink","text","type","attributes","url","stopAddingLink","onRemoveFormat","linkOff","linkIcon","link","tagName","className","id","target","__unstablePasteRule","html","plainText","pastedText","replace","trim","window","console","log","edit"],"mappings":";;;;;;;;;AAIA;;AADA;;AAEA;;AAOA;;AACA;;AAIA;;AACA;;AACA;;AAKA;;AACA;;AAzBA;AACA;AACA;;AAmBA;AACA;AACA;AAIA,MAAMA,IAAI,GAAG,WAAb;AACA,MAAMC,KAAK,GAAG,cAAI,MAAJ,CAAd;;AAEA,SAASC,IAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/format-library/src/link/index.js"],"names":["name","title","Edit","isActive","activeAttributes","value","onChange","onFocus","contentRef","addingLink","setAddingLink","addLink","text","type","attributes","url","stopAddingLink","returnFocus","onRemoveFormat","linkOff","linkIcon","link","tagName","className","id","target","__unstablePasteRule","html","plainText","pastedText","replace","trim","window","console","log","edit"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport {\n\tgetTextContent,\n\tapplyFormat,\n\tremoveFormat,\n\tslice,\n\tisCollapsed,\n} from '@wordpress/rich-text';\nimport { isURL, isEmail } from '@wordpress/url';\nimport {\n\tRichTextToolbarButton,\n\tRichTextShortcut,\n} from '@wordpress/block-editor';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { link as linkIcon, linkOff } from '@wordpress/icons';\nimport { speak } from '@wordpress/a11y';\n\n/**\n * Internal dependencies\n */\nimport InlineLinkUI from './inline';\nimport { isValidHref } from './utils';\n\nconst name = 'core/link';\nconst title = __( 'Link' );\n\nfunction Edit( {\n\tisActive,\n\tactiveAttributes,\n\tvalue,\n\tonChange,\n\tonFocus,\n\tcontentRef,\n} ) {\n\tconst [ addingLink, setAddingLink ] = useState( false );\n\n\tfunction addLink() {\n\t\tconst text = getTextContent( slice( value ) );\n\n\t\tif ( text && isURL( text ) && isValidHref( text ) ) {\n\t\t\tonChange(\n\t\t\t\tapplyFormat( value, {\n\t\t\t\t\ttype: name,\n\t\t\t\t\tattributes: { url: text },\n\t\t\t\t} )\n\t\t\t);\n\t\t} else if ( text && isEmail( text ) ) {\n\t\t\tonChange(\n\t\t\t\tapplyFormat( value, {\n\t\t\t\t\ttype: name,\n\t\t\t\t\tattributes: { url: `mailto:${ text }` },\n\t\t\t\t} )\n\t\t\t);\n\t\t} else {\n\t\t\tsetAddingLink( true );\n\t\t}\n\t}\n\n\tfunction stopAddingLink( returnFocus = true ) {\n\t\tsetAddingLink( false );\n\t\tif ( returnFocus ) {\n\t\t\tonFocus();\n\t\t}\n\t}\n\n\tfunction onRemoveFormat() {\n\t\tonChange( removeFormat( value, name ) );\n\t\tspeak( __( 'Link removed.' ), 'assertive' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<RichTextShortcut type=\"primary\" character=\"k\" onUse={ addLink } />\n\t\t\t<RichTextShortcut\n\t\t\t\ttype=\"primaryShift\"\n\t\t\t\tcharacter=\"k\"\n\t\t\t\tonUse={ onRemoveFormat }\n\t\t\t/>\n\t\t\t{ isActive && (\n\t\t\t\t<RichTextToolbarButton\n\t\t\t\t\tname=\"link\"\n\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\tonClick={ onRemoveFormat }\n\t\t\t\t\tisActive={ isActive }\n\t\t\t\t\tshortcutType=\"primaryShift\"\n\t\t\t\t\tshortcutCharacter=\"k\"\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! isActive && (\n\t\t\t\t<RichTextToolbarButton\n\t\t\t\t\tname=\"link\"\n\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tonClick={ addLink }\n\t\t\t\t\tisActive={ isActive }\n\t\t\t\t\tshortcutType=\"primary\"\n\t\t\t\t\tshortcutCharacter=\"k\"\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ( addingLink || isActive ) && (\n\t\t\t\t<InlineLinkUI\n\t\t\t\t\taddingLink={ addingLink }\n\t\t\t\t\tstopAddingLink={ stopAddingLink }\n\t\t\t\t\tisActive={ isActive }\n\t\t\t\t\tactiveAttributes={ activeAttributes }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport const link = {\n\tname,\n\ttitle,\n\ttagName: 'a',\n\tclassName: null,\n\tattributes: {\n\t\turl: 'href',\n\t\ttype: 'data-type',\n\t\tid: 'data-id',\n\t\ttarget: 'target',\n\t},\n\t__unstablePasteRule( value, { html, plainText } ) {\n\t\tif ( isCollapsed( value ) ) {\n\t\t\treturn value;\n\t\t}\n\n\t\tconst pastedText = ( html || plainText )\n\t\t\t.replace( /<[^>]+>/g, '' )\n\t\t\t.trim();\n\n\t\t// A URL was pasted, turn the selection into a link.\n\t\tif ( ! isURL( pastedText ) ) {\n\t\t\treturn value;\n\t\t}\n\n\t\t// Allows us to ask for this information when we get a report.\n\t\twindow.console.log( 'Created link:\\n\\n', pastedText );\n\n\t\treturn applyFormat( value, {\n\t\t\ttype: name,\n\t\t\tattributes: {\n\t\t\t\turl: decodeEntities( pastedText ),\n\t\t\t},\n\t\t} );\n\t},\n\tedit: Edit,\n};\n"]}
|
|
@@ -107,17 +107,13 @@ const link = {
|
|
|
107
107
|
let startIndex = value.start;
|
|
108
108
|
let endIndex = value.end;
|
|
109
109
|
|
|
110
|
-
while (
|
|
111
|
-
var _value$formats$startI;
|
|
112
|
-
|
|
110
|
+
while (value.formats[startIndex]?.find(format => format?.type === startFormat.type)) {
|
|
113
111
|
startIndex--;
|
|
114
112
|
}
|
|
115
113
|
|
|
116
114
|
endIndex++;
|
|
117
115
|
|
|
118
|
-
while (
|
|
119
|
-
var _value$formats$endInd;
|
|
120
|
-
|
|
116
|
+
while (value.formats[endIndex]?.find(format => format?.type === startFormat.type)) {
|
|
121
117
|
endIndex++;
|
|
122
118
|
}
|
|
123
119
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/format-library/src/link/index.native.js"],"names":["name","link","title","tagName","className","attributes","url","target","rel","edit","LinkEdit","Component","constructor","arguments","addLink","bind","stopAddingLink","onRemoveFormat","getURLFromClipboard","state","addingLink","value","onChange","props","text","newValue","type","start","end","activeFormats","needsSelectionUpdate","setState","clipboardURL","undefined","getLinkSelection","isActive","startFormat","startIndex","endIndex","formats","find","format","speak","linkSelection","clipboardText","Clipboard","getString","render","activeAttributes","linkIcon"],"mappings":";;;;;;;;;AASA;;AANA;;AAKA;;AAEA;;AACA;;AACA;;AAQA;;AACA;;AAKA;;AACA;;AA3BA;AACA;AACA;;AAGA;AACA;AACA;;AAgBA;AACA;AACA;AAIA,MAAMA,IAAI,GAAG,WAAb;AAEO,MAAMC,IAAI,GAAG;AACnBD,EAAAA,IADmB;AAEnBE,EAAAA,KAAK,EAAE,cAAI,MAAJ,CAFY;AAGnBC,EAAAA,OAAO,EAAE,GAHU;AAInBC,EAAAA,SAAS,EAAE,IAJQ;AAKnBC,EAAAA,UAAU,EAAE;AACXC,IAAAA,GAAG,EAAE,MADM;AAEXC,IAAAA,MAAM,EAAE,QAFG;AAGXC,IAAAA,GAAG,EAAE;AAHM,GALO;AAUnBC,EAAAA,IAAI,EAAE,oCACL,MAAMC,QAAN,SAAuBC,kBAAvB,CAAiC;AAChCC,IAAAA,WAAW,GAAG;AACb,YAAO,GAAGC,SAAV;AAEA,WAAKC,OAAL,GAAe,KAAKA,OAAL,CAAaC,IAAb,CAAmB,IAAnB,CAAf;AACA,WAAKC,cAAL,GAAsB,KAAKA,cAAL,CAAoBD,IAApB,CAA0B,IAA1B,CAAtB;AACA,WAAKE,cAAL,GAAsB,KAAKA,cAAL,CAAoBF,IAApB,CAA0B,IAA1B,CAAtB;AACA,WAAKG,mBAAL,GACC,KAAKA,mBAAL,CAAyBH,IAAzB,CAA+B,IAA/B,CADD;AAEA,WAAKI,KAAL,GAAa;AACZC,QAAAA,UAAU,EAAE;AADA,OAAb;AAGA;;AAEDN,IAAAA,OAAO,GAAG;AACT,YAAM;AAAEO,QAAAA,KAAF;AAASC,QAAAA;AAAT,UAAsB,KAAKC,KAAjC;AACA,YAAMC,IAAI,GAAG,8BAAgB,qBAAOH,KAAP,CAAhB,CAAb;;AAEA,UAAKG,IAAI,IAAI,gBAAOA,IAAP,CAAR,IAAyB,wBAAaA,IAAb,CAA9B,EAAoD;AACnD,cAAMC,QAAQ,GAAG,2BAAaJ,KAAb,EAAoB;AACpCK,UAAAA,IAAI,EAAE1B,IAD8B;AAEpCK,UAAAA,UAAU,EAAE;AAAEC,YAAAA,GAAG,EAAEkB;AAAP;AAFwB,SAApB,CAAjB;AAIAC,QAAAA,QAAQ,CAACE,KAAT,GAAiBF,QAAQ,CAACG,GAA1B;AACAH,QAAAA,QAAQ,CAACI,aAAT,GAAyB,EAAzB;AACAP,QAAAA,QAAQ,CAAE,EAAE,GAAGG,QAAL;AAAeK,UAAAA,oBAAoB,EAAE;AAArC,SAAF,CAAR;AACA,OARD,MAQO;AACN,aAAKC,QAAL,CAAe;AAAEX,UAAAA,UAAU,EAAE;AAAd,SAAf;AACA,aAAKF,mBAAL;AACA;AACD;;AAEDF,IAAAA,cAAc,GAAG;AAChB,WAAKe,QAAL,CAAe;AAAEX,QAAAA,UAAU,EAAE,KAAd;AAAqBY,QAAAA,YAAY,EAAEC;AAAnC,OAAf;AACA;;AAEDC,IAAAA,gBAAgB,GAAG;AAClB,YAAM;AAAEb,QAAAA,KAAF;AAASc,QAAAA;AAAT,UAAsB,KAAKZ,KAAjC;AACA,YAAMa,WAAW,GAAG,+BAAiBf,KAAjB,EAAwB,WAAxB,CAApB,CAFkB,CAIlB;AACA;;AACA,UAAKe,WAAW,IAAI,2BAAaf,KAAb,CAAf,IAAuCc,QAA5C,EAAuD;AACtD,YAAIE,UAAU,GAAGhB,KAAK,CAACM,KAAvB;AACA,YAAIW,QAAQ,GAAGjB,KAAK,CAACO,GAArB;;AAEA,
|
|
1
|
+
{"version":3,"sources":["@wordpress/format-library/src/link/index.native.js"],"names":["name","link","title","tagName","className","attributes","url","target","rel","edit","LinkEdit","Component","constructor","arguments","addLink","bind","stopAddingLink","onRemoveFormat","getURLFromClipboard","state","addingLink","value","onChange","props","text","newValue","type","start","end","activeFormats","needsSelectionUpdate","setState","clipboardURL","undefined","getLinkSelection","isActive","startFormat","startIndex","endIndex","formats","find","format","speak","linkSelection","clipboardText","Clipboard","getString","render","activeAttributes","linkIcon"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport Clipboard from '@react-native-clipboard/clipboard';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Component } from '@wordpress/element';\nimport { withSpokenMessages } from '@wordpress/components';\nimport { RichTextToolbarButton } from '@wordpress/block-editor';\nimport {\n\tapplyFormat,\n\tgetActiveFormat,\n\tgetTextContent,\n\tisCollapsed,\n\tremoveFormat,\n\tslice,\n} from '@wordpress/rich-text';\nimport { isURL } from '@wordpress/url';\nimport { link as linkIcon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport ModalLinkUI from './modal';\nimport { isValidHref } from './utils';\n\nconst name = 'core/link';\n\nexport const link = {\n\tname,\n\ttitle: __( 'Link' ),\n\ttagName: 'a',\n\tclassName: null,\n\tattributes: {\n\t\turl: 'href',\n\t\ttarget: 'target',\n\t\trel: 'rel',\n\t},\n\tedit: withSpokenMessages(\n\t\tclass LinkEdit extends Component {\n\t\t\tconstructor() {\n\t\t\t\tsuper( ...arguments );\n\n\t\t\t\tthis.addLink = this.addLink.bind( this );\n\t\t\t\tthis.stopAddingLink = this.stopAddingLink.bind( this );\n\t\t\t\tthis.onRemoveFormat = this.onRemoveFormat.bind( this );\n\t\t\t\tthis.getURLFromClipboard =\n\t\t\t\t\tthis.getURLFromClipboard.bind( this );\n\t\t\t\tthis.state = {\n\t\t\t\t\taddingLink: false,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\taddLink() {\n\t\t\t\tconst { value, onChange } = this.props;\n\t\t\t\tconst text = getTextContent( slice( value ) );\n\n\t\t\t\tif ( text && isURL( text ) && isValidHref( text ) ) {\n\t\t\t\t\tconst newValue = applyFormat( value, {\n\t\t\t\t\t\ttype: name,\n\t\t\t\t\t\tattributes: { url: text },\n\t\t\t\t\t} );\n\t\t\t\t\tnewValue.start = newValue.end;\n\t\t\t\t\tnewValue.activeFormats = [];\n\t\t\t\t\tonChange( { ...newValue, needsSelectionUpdate: true } );\n\t\t\t\t} else {\n\t\t\t\t\tthis.setState( { addingLink: true } );\n\t\t\t\t\tthis.getURLFromClipboard();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tstopAddingLink() {\n\t\t\t\tthis.setState( { addingLink: false, clipboardURL: undefined } );\n\t\t\t}\n\n\t\t\tgetLinkSelection() {\n\t\t\t\tconst { value, isActive } = this.props;\n\t\t\t\tconst startFormat = getActiveFormat( value, 'core/link' );\n\n\t\t\t\t// If the link isn't selected, get the link manually by looking around the cursor\n\t\t\t\t// TODO: handle partly selected links.\n\t\t\t\tif ( startFormat && isCollapsed( value ) && isActive ) {\n\t\t\t\t\tlet startIndex = value.start;\n\t\t\t\t\tlet endIndex = value.end;\n\n\t\t\t\t\twhile (\n\t\t\t\t\t\tvalue.formats[ startIndex ]?.find(\n\t\t\t\t\t\t\t( format ) => format?.type === startFormat.type\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\tstartIndex--;\n\t\t\t\t\t}\n\n\t\t\t\t\tendIndex++;\n\n\t\t\t\t\twhile (\n\t\t\t\t\t\tvalue.formats[ endIndex ]?.find(\n\t\t\t\t\t\t\t( format ) => format?.type === startFormat.type\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\tendIndex++;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...value,\n\t\t\t\t\t\tstart: startIndex + 1,\n\t\t\t\t\t\tend: endIndex,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn value;\n\t\t\t}\n\n\t\t\tonRemoveFormat() {\n\t\t\t\tconst { onChange, speak, value } = this.props;\n\t\t\t\tconst startFormat = getActiveFormat( value, 'core/link' );\n\n\t\t\t\t// Before we try to remove anything we check if there is something at the caret position to remove.\n\t\t\t\tif ( isCollapsed( value ) && startFormat === undefined ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst linkSelection = this.getLinkSelection();\n\n\t\t\t\tonChange( removeFormat( linkSelection, name ) );\n\t\t\t\tspeak( __( 'Link removed.' ), 'assertive' );\n\t\t\t}\n\n\t\t\tasync getURLFromClipboard() {\n\t\t\t\tconst clipboardText = await Clipboard.getString();\n\t\t\t\tif ( ! clipboardText ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t// Check if pasted text is URL.\n\t\t\t\tif ( ! isURL( clipboardText ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.setState( { clipboardURL: clipboardText } );\n\t\t\t}\n\n\t\t\trender() {\n\t\t\t\tconst { isActive, activeAttributes, onChange } = this.props;\n\t\t\t\tconst linkSelection = this.getLinkSelection();\n\t\t\t\t// If no URL is set and we have a clipboard URL let's use it.\n\t\t\t\tif ( ! activeAttributes.url && this.state.clipboardURL ) {\n\t\t\t\t\tactiveAttributes.url = this.state.clipboardURL;\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ModalLinkUI\n\t\t\t\t\t\t\tisVisible={ this.state.addingLink }\n\t\t\t\t\t\t\tisActive={ isActive }\n\t\t\t\t\t\t\tactiveAttributes={ activeAttributes }\n\t\t\t\t\t\t\tonClose={ this.stopAddingLink }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\tonRemove={ this.onRemoveFormat }\n\t\t\t\t\t\t\tvalue={ linkSelection }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<RichTextToolbarButton\n\t\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\t\tonClick={ this.addLink }\n\t\t\t\t\t\t\tisActive={ isActive }\n\t\t\t\t\t\t\tshortcutType=\"primary\"\n\t\t\t\t\t\t\tshortcutCharacter=\"k\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t),\n};\n"]}
|