Changeset 2890074
- Timestamp:
- 03/30/2023 10:09:54 AM (3 years ago)
- Location:
- jvm-rich-text-icons/trunk
- Files:
-
- 5 edited
-
dist/blocks.build.js (modified) (1 diff)
-
plugin.php (modified) (2 diffs)
-
readme.txt (modified) (2 diffs)
-
src/controls.js (modified) (5 diffs)
-
src/init.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
jvm-rich-text-icons/trunk/dist/blocks.build.js
r2889132 r2890074 1 !function(e){function t( o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=0)}([function(e,t,n){"use strict";function o(e,t){var n={};for(var o in e)t.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"icon",function(){return f});var r=n(1),__=wp.i18n.__,i=wp.richText.registerFormatType,a=wp.element.Fragment,c=wp.components,l=(c.Toolbar,c.Button,c.Popover,wp.blocks.registerBlockType),s=wp.blockEditor.InspectorControls,u=wp.components.PanelBody,p=wp.components.ComboboxControl,m="jvm/insert-icons",f={name:m,title:__("Insert Icon","jvm-richtext-icons"),tagName:"i",className:null,edit:function(e){var t=e.isOpen,n=e.value,o=e.onChange,i=e.activeAttributes;return wp.element.createElement(a,null,wp.element.createElement(r.a,{name:m,isOpen:t,value:n,onChange:o,activeAttributes:i}))}};wp.domReady(function(){[f].forEach(function(e){var t=e.name,n=o(e,["name"]);t&&i(t,n)})}),l("jvm/single-icon",{title:__("Single icon"),icon:"flag",category:"common",keywords:[__("Icon")],attributes:{icon:{type:"string"}},edit:function(e){var t=jvm_richtext_icon_settings.iconset,n=[],o="",r=jvm_richtext_icon_settings.base_class,i=!0,a=!1,c=void 0;try{for(var l,m=t[Symbol.iterator]();!(i=(l=m.next()).done);i=!0){var f=l.value;n.push({value:f,label:f})}}catch(e){a=!0,c=e}finally{try{!i&&m.return&&m.return()}finally{if(a)throw c}}void 0!==e.attributes.icon?o=e.attributes.icon:void 0!==t[0]&&(o=t[0]),e.setAttributes({icon:o});var v=r+" "+e.attributes.icon;return[wp.element.createElement(s,null,wp.element.createElement(u,{label:__("Icon")},wp.element.createElement(p,{label:__("Icon"),value:o,onChange:function(t){t&&e.setAttributes({icon:t})},options:n,__experimentalRenderItem:function(e){var t=r+" "+e.item.value;return wp.element.createElement("span",null,wp.element.createElement("i",{class:t,"aria-hidden":"true"}," ")," ",e.item.value)},isMulti:"false"}))),wp.element.createElement("div",{className:e.className},wp.element.createElement("i",{class:v,"aria-hidden":"true"}," "))]},save:function(e){var t=jvm_richtext_icon_settings.base_class,n=t+" "+e.attributes.icon;return wp.element.createElement("div",{className:e.className},wp.element.createElement("i",{class:n,"aria-hidden":"true"}," "))}})},function(e,t,n){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}function i(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=n(2),c=(n.n(a),function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}()),__=wp.i18n.__,l=wp.element,s=l.Component,u=l.Fragment,p=(wp.dom.getRectangleFromRange,wp.compose),m=p.compose,f=p.ifCondition,v=wp.data.withSelect,h=wp.blockEditor.BlockControls,w=wp.richText,d=w.toggleFormat,b=w.insert,g=w.create,y=wp.components,_=y.Toolbar,E=y.Popover,x=(y.Panel,y.ToolbarButton),j=y.Button,O=y.TextControl,k=y.Tooltip,C=jvm_richtext_icon_settings.iconset,I=jvm_richtext_icon_settings.base_class,T=function(e){function t(){o(this,t);var e=r(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments));return e.toggle=e.toggle.bind(e),e.state={icons:C,isOpen:!1,keyword:""},e}return i(t,e),c(t,[{key:"search",value:function(e){var t=[];Object(a.map)(C,function(n){-1!==n.toLowerCase().search(e.toLowerCase())&&t.push(n)}),this.setState({keyword:e,icons:t})}},{key:"toggle",value:function(){this.setState(function(e){return{isOpen:!e.isOpen}}),this.setState({keyword:"",icons:C});window.getSelection()}},{key:"render",value:function(){var e=this,t=this.state,n=t.isOpen,o=t.icons,r=t.keyword,i=this.props,c=i.name,l=i.value,s=i.onChange;return wp.element.createElement(u,null,wp.element.createElement(h,null,wp.element.createElement(_,{label:__("Insert Icon","jvm-richtext-icons")},wp.element.createElement(x,{icon:"flag","aria-haspopup":"true",tooltip:__("Insert Icon","jvm-richtext-icons"),onClick:this.toggle}),n&&wp.element.createElement(E,{className:"jvm-richtext-icons-popover",position:"bottom left",key:"icon-popover",onClick:function(){},expandOnMobile:!1,headerTitle:__("Insert Icon","jvm-richtext-icons"),onClose:function(){s(d(l,{type:c}))}},wp.element.createElement(O,{value:r,placeholder:__("Search","jvm-richtext-icons"),onChange:function(t){e.search(t)}}),wp.element.createElement("div",{className:"jvm-richtext-icons-panel"},o.length>0?wp.element.createElement("ul",{className:"jvm-richtext-icons-list"},Object(a.map)(o,function(t){return wp.element.createElement("li",{"data-key":t},wp.element.createElement(k,{text:t},wp.element.createElement(j,{isTertiary:!0,onClick:function(){var n=g({html:'<i class="'+I+" "+t+'" aria-hidden="true"> </i>'});s(b(l,n)),e.toggle()}},wp.element.createElement("i",{className:I+" "+t,"aria-hidden":"true"}))))})):wp.element.createElement("p",null,__("No characters found.","block-options")))))))}}]),t}(s);t.a=m(v(function(e){return{isDisabled:e("core/edit-post").isFeatureActive("disableJVMIconMap")}}),f(function(e){return!e.isDisabled}))(T)},function(e,t){e.exports=lodash}]);1 !function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=0)}([function(e,t,n){"use strict";function r(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"icon",function(){return f});var o=n(1),__=wp.i18n.__,i=wp.richText.registerFormatType,a=wp.element.Fragment,c=wp.components,l=(c.Toolbar,c.Button,c.Popover,wp.blocks.registerBlockType),s=wp.blockEditor.InspectorControls,u=wp.components.PanelBody,p=wp.components.ComboboxControl,m="jvm/insert-icons",f={name:m,title:__("Insert Icon","jvm-richtext-icons"),tagName:"i",className:null,edit:function(e){var t=e.isOpen,n=e.value,r=e.onChange,i=e.activeAttributes;return wp.element.createElement(a,null,wp.element.createElement(o.a,{name:m,isOpen:t,value:n,onChange:r,activeAttributes:i}))}};wp.domReady(function(){[f].forEach(function(e){var t=e.name,n=r(e,["name"]);t&&i(t,n)})}),l("jvm/single-icon",{title:__("Single icon"),icon:"flag",category:"common",keywords:[__("Icon")],attributes:{icon:{type:"string"}},edit:function(e){var t=jvm_richtext_icon_settings.iconset,n=[],r="",o=jvm_richtext_icon_settings.base_class,i=!0,a=!1,c=void 0;try{for(var l,m=t[Symbol.iterator]();!(i=(l=m.next()).done);i=!0){var f=l.value;n.push({value:f,label:f})}}catch(e){a=!0,c=e}finally{try{!i&&m.return&&m.return()}finally{if(a)throw c}}void 0!==e.attributes.icon?r=e.attributes.icon:void 0!==t[0]&&(r=t[0]),e.setAttributes({icon:r});var v=o+" "+e.attributes.icon;return[wp.element.createElement(s,null,wp.element.createElement(u,{label:__("Icon")},wp.element.createElement(p,{label:__("Icon"),value:r,onChange:function(t){t&&e.setAttributes({icon:t})},options:n,__experimentalRenderItem:function(e){var t=o+" "+e.item.value;return wp.element.createElement("span",null,wp.element.createElement("i",{class:t,"aria-hidden":"true"}," ")," ",e.item.value)},isMulti:"false"}))),wp.element.createElement("div",{className:e.className},wp.element.createElement("i",{class:v,"aria-hidden":"true"}," "))]},save:function(e){var t=jvm_richtext_icon_settings.base_class,n=t+" "+e.attributes.icon;return wp.element.createElement("div",{className:e.className},wp.element.createElement("i",{class:n,"aria-hidden":"true"}," "))}})},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}function i(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),__=wp.i18n.__,c=wp.element,l=c.Component,s=c.Fragment,u=(wp.dom.getRectangleFromRange,wp.compose),p=u.compose,m=(u.ifCondition,wp.data.withSelect,wp.blockEditor.BlockControls),f=wp.richText,v=f.toggleFormat,h=f.insert,w=f.create,d=wp.components,b=d.Toolbar,y=d.Popover,g=(d.Panel,d.ToolbarButton),_=d.Button,E=d.TextControl,x=d.Tooltip,j=jvm_richtext_icon_settings.iconset,O=jvm_richtext_icon_settings.base_class,k=function(e){function t(){r(this,t);var e=o(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments));return e.toggle=e.toggle.bind(e),e.state={icons:j,isOpen:!1,keyword:""},e}return i(t,e),a(t,[{key:"search",value:function(e){var t=[],n=!0,r=!1,o=void 0;try{for(var i,a=j[Symbol.iterator]();!(n=(i=a.next()).done);n=!0){var c=i.value;-1!==c.toLowerCase().search(e.toLowerCase())&&t.push(c)}}catch(e){r=!0,o=e}finally{try{!n&&a.return&&a.return()}finally{if(r)throw o}}this.setState({keyword:e,icons:t})}},{key:"toggle",value:function(){this.setState(function(e){return{isOpen:!e.isOpen}}),this.setState({keyword:"",icons:j})}},{key:"render",value:function(){var e=this,t=this.state,n=t.isOpen,r=t.icons,o=t.keyword,i=this.props,a=i.name,c=i.value,l=i.onChange;return wp.element.createElement(s,null,wp.element.createElement(m,null,wp.element.createElement(b,{label:__("Insert Icon","jvm-richtext-icons")},wp.element.createElement(g,{icon:"flag","aria-haspopup":"true",tooltip:__("Insert Icon","jvm-richtext-icons"),onClick:this.toggle}),n&&wp.element.createElement(y,{className:"jvm-richtext-icons-popover",position:"bottom left",key:"icon-popover",onClick:function(){},expandOnMobile:!1,headerTitle:__("Insert Icon","jvm-richtext-icons"),onClose:function(){l(v(c,{type:a}))}},wp.element.createElement(E,{value:o,placeholder:__("Search","jvm-richtext-icons"),onChange:function(t){e.search(t)}}),wp.element.createElement("div",{className:"jvm-richtext-icons-panel"},r.length>0?wp.element.createElement("ul",{className:"jvm-richtext-icons-list"},r.map(function(t){return wp.element.createElement("li",{"data-key":t},wp.element.createElement(x,{text:t},wp.element.createElement(_,{isTertiary:!0,onClick:function(){var n=w({html:'<i class="'+O+" "+t+'" aria-hidden="true"> </i>'});l(h(c,n)),e.toggle()}},wp.element.createElement("i",{className:O+" "+t,"aria-hidden":"true"}))))})):wp.element.createElement("p",null,__("No characters found.","block-options")))))))}}]),t}(l);t.a=p()(k)}]); -
jvm-rich-text-icons/trunk/plugin.php
r2889132 r2890074 2 2 /** 3 3 * Plugin Name: JVM rich text icons 4 * Description: Add Font Awesome icons, or icons from a custom icon set to rich text fields in the Gutenberg blockeditor.5 * Version: 1.2. 14 * Description: Add Font Awesome icons, or icons from a custom icon set to the Gutenberg editor. 5 * Version: 1.2.2 6 6 * Author: Joris van Montfort 7 7 * Author URI: https://jorisvm.nl … … 11 11 * @category Gutenberg 12 12 * @author Joris van Montfort 13 * @version 1.2. 113 * @version 1.2.2 14 14 * @package JVM rich text icons 15 15 */ -
jvm-rich-text-icons/trunk/readme.txt
r2889134 r2890074 4 4 Tags: gutenberg, editor, icons, icon set, font awesome, fontello, ACF, SVG icons 5 5 Requires at least: 5.4 6 Tested up to: 6. 1.16 Tested up to: 6.2 7 7 Stable tag: trunk 8 8 License: GPLv2 or later … … 88 88 == Changelog == 89 89 90 = 1.2.2 = 91 Bugfix WordPress 6.2 site editor rich text blocks not editable. 92 90 93 = 1.2.1 = 91 94 Bugfix for the single icon block using incomplete css classes. -
jvm-rich-text-icons/trunk/src/controls.js
r2889116 r2890074 1 /**2 * External dependencies3 */4 import { map } from 'lodash';5 6 1 /** 7 2 * WordPress dependencies … … 34 29 search( keyword ) { 35 30 let filtered = []; 36 37 map( Icons, ( icon ) => {31 32 for (let icon of Icons) { 38 33 if ( icon.toLowerCase().search( 39 34 keyword.toLowerCase() ) !== -1 ) { 40 35 filtered.push(icon); 41 36 } 42 } );37 } 43 38 44 39 this.setState( { keyword, icons: filtered } ); … … 52 47 this.setState( { keyword: '', icons: Icons } ); 53 48 54 const selection = window.getSelection();49 //const selection = window.getSelection(); 55 50 //anchorRange = selection.rangeCount > 0 ? selection.getRangeAt( 0 ) : null; 56 51 //onChange( toggleFormat( value, { type: name } ) ); … … 100 95 { icons.length > 0 ? ( 101 96 <ul className="jvm-richtext-icons-list"> 102 { map( icons, ( icon ) => { 97 { 98 //for (let icon of icons) { 99 icons.map(( icon ) => { 103 100 return ( 104 101 <li data-key={ icon }> … … 136 133 } 137 134 138 export default compose( 139 withSelect( ( select ) => { 140 return { 141 isDisabled: select( 'core/edit-post' ).isFeatureActive( 142 'disableJVMIconMap' 143 ), 144 }; 145 } ), 146 ifCondition( ( props ) => { 147 return ! props.isDisabled; 148 } ) 149 )( IconMap ); 135 export default compose()( IconMap ); -
jvm-rich-text-icons/trunk/src/init.php
r2889132 r2890074 130 130 array(), 131 131 //array( 'wp-i18n', 'wp-element', 'wp-editor' ), // Dependencies, defined above. 132 '1.2. 1',132 '1.2.2', 133 133 true // Enqueue the script in the footer. 134 134 );
Note: See TracChangeset
for help on using the changeset viewer.