TinyMCE Advanced - Version 5.0.0

Version Description

  • Added several new buttons to the rich-text toolbar in the Block Editor.
  • Added functionality to add, remove and arrange most buttons on the rich-text toolbar in the Block Editor.
  • Added alternative location for buttons for the rich-text component. That lets users move buttons that are not used frequently out of the way.
  • Added settings for selected text color and background color.
  • Improved fixes and enhancements for the Classic Block.
  • Improved the Classic Paragraph Block and added support for converting from most blocks to classic paragraphs, and converting a classic paragraph into separate blocks.
Download this release

Release Info

Developer azaozz
Plugin Icon 128x128 TinyMCE Advanced
Version 5.0.0
Comparing to
See all releases

Code changes from version 4.8.2 to 5.0.0

block-editor/block-register.js DELETED
@@ -1,397 +0,0 @@
1
- /**
2
- * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
- * For more information please see tinymce-advanced.php.
4
- *
5
- * Copyright (c) 2007-2018 Andrew Ozz. All rights reserved.
6
- */
7
-
8
- ( function( wp, _ ) {
9
- if ( ! wp ) {
10
- return;
11
- }
12
-
13
- /**
14
- * WordPress dependencies
15
- */
16
- const { RawHTML, Component, createElement } = wp.element;
17
- const { __, _x } = wp.i18n;
18
- const { Path, Rect, SVG } = wp.components;
19
- const { BACKSPACE, DELETE, F10 } = wp.keycodes;
20
- const { addFilter } = wp.hooks;
21
-
22
- const { PluginBlockSettingsMenuItem } = wp.editPost;
23
- const { registerPlugin } = wp.plugins;
24
- const { join, split, create, toHTMLString } = wp.richText;
25
- const { get, assign } = _;
26
-
27
- const {
28
- registerBlockType,
29
- setDefaultBlockName,
30
- setFreeformContentHandlerName,
31
- createBlock,
32
- getBlockContent,
33
- rawHandler,
34
- } = wp.blocks;
35
-
36
- const tadvSettings = window.tadvBlockRegister || {};
37
- const addClassicParagraph = tadvSettings && tadvSettings.classicParagraph;
38
- const defaultBlock = addClassicParagraph ? 'tadv/classic-paragraph' : 'core/freeform';
39
-
40
- addFilter( 'blocks.registerBlockType', 'tadv-reregister-blocks', function ( settings, name ) {
41
- if ( name === 'core/freeform' ) {
42
- settings = settingsClassic;
43
-
44
- // Ughhhhh :-(
45
- setTimeout( function() {
46
- setDefaultBlockName( defaultBlock );
47
- }, 0 );
48
- }
49
-
50
- return settings;
51
- } );
52
-
53
- function isTmceEmpty( editor ) {
54
- const body = editor.getBody();
55
-
56
- if ( body.childNodes.length > 1 ) {
57
- return false;
58
- } else if ( body.childNodes.length === 0 ) {
59
- return true;
60
- }
61
-
62
- if ( body.childNodes[ 0 ].childNodes.length > 1 ) {
63
- return false;
64
- }
65
-
66
- return /^\n?$/.test( body.innerText || body.textContent );
67
- }
68
-
69
- function getTitle( blockName ) {
70
- if ( blockName === 'core/freeform' ) {
71
- return _x( 'Classic', 'block title' );
72
- } else {
73
- if ( tadvSettings && tadvSettings.classicParagraphTitle ) {
74
- return tadvSettings.classicParagraphTitle;
75
- }
76
-
77
- return __( 'Classic Paragraph' );
78
- }
79
- }
80
-
81
- class ClassicEdit extends Component {
82
- constructor( props ) {
83
- super( props );
84
- this.initialize = this.initialize.bind( this );
85
- this.onSetup = this.onSetup.bind( this );
86
- this.focus = this.focus.bind( this );
87
- }
88
-
89
- componentDidMount() {
90
- const { baseURL, suffix } = window.wpEditorL10n.tinymce;
91
-
92
- window.tinymce.EditorManager.overrideDefaults( {
93
- base_url: baseURL,
94
- suffix,
95
- } );
96
-
97
- if ( document.readyState === 'complete' ) {
98
- this.initialize();
99
- } else {
100
- window.addEventListener( 'DOMContentLoaded', this.initialize );
101
- }
102
- }
103
-
104
- componentWillUnmount() {
105
- window.addEventListener( 'DOMContentLoaded', this.initialize );
106
- wp.oldEditor.remove( `editor-${ this.props.clientId }` );
107
- }
108
-
109
- componentDidUpdate( prevProps ) {
110
- const { clientId, attributes: { content } } = this.props;
111
-
112
- const editor = window.tinymce.get( `editor-${ clientId }` );
113
-
114
- if ( prevProps.attributes.content !== content && this.content !== content ) {
115
- editor.setContent( content || '' );
116
- }
117
- }
118
-
119
- initialize() {
120
- const { clientId, setAttributes } = this.props;
121
- const { settings } = window.wpEditorL10n.tinymce;
122
- wp.oldEditor.initialize( `editor-${ clientId }`, {
123
- tinymce: {
124
- ...settings,
125
- inline: true,
126
- content_css: false,
127
- fixed_toolbar_container: `#toolbar-${ clientId }`,
128
- setup: this.onSetup,
129
- },
130
- } );
131
- }
132
-
133
- onSetup( editor ) {
134
- const { attributes: { content }, setAttributes } = this.props;
135
- const { ref } = this;
136
- let bookmark;
137
-
138
- this.editor = editor;
139
-
140
- if ( content ) {
141
- editor.on( 'loadContent', () => editor.setContent( content ) );
142
- }
143
-
144
- editor.on( 'blur', () => {
145
- bookmark = editor.selection.getBookmark( 2, true );
146
- this.content = editor.getContent();
147
-
148
- setAttributes( {
149
- content: this.content,
150
- } );
151
-
152
- editor.once( 'focus', () => {
153
- if ( bookmark ) {
154
- editor.selection.moveToBookmark( bookmark );
155
- }
156
- } );
157
-
158
- return false;
159
- } );
160
-
161
- editor.on( 'mousedown touchstart', () => {
162
- bookmark = null;
163
- } );
164
-
165
- editor.on( 'keydown', ( event ) => {
166
- if ( ( event.keyCode === BACKSPACE || event.keyCode === DELETE ) && isTmceEmpty( editor ) ) {
167
- // delete the block
168
- this.props.onReplace( [] );
169
- event.preventDefault();
170
- event.stopImmediatePropagation();
171
- }
172
-
173
- const { altKey } = event;
174
- /*
175
- * Prevent Mousetrap from kicking in: TinyMCE already uses its own
176
- * `alt+f10` shortcut to focus its toolbar.
177
- */
178
- if ( altKey && event.keyCode === F10 ) {
179
- event.stopPropagation();
180
- }
181
- } );
182
-
183
- editor.on( 'init', () => {
184
- const rootNode = this.editor.getBody();
185
-
186
- // Create the toolbar by refocussing the editor.
187
- if ( document.activeElement === rootNode ) {
188
- rootNode.blur();
189
- this.editor.focus();
190
- }
191
- } );
192
- }
193
-
194
- focus() {
195
- if ( this.editor ) {
196
- this.editor.focus();
197
- }
198
- }
199
-
200
- onToolbarKeyDown( event ) {
201
- // Prevent WritingFlow from kicking in and allow arrows navigation on the toolbar.
202
- event.stopPropagation();
203
- // Prevent Mousetrap from moving focus to the top toolbar when pressing `alt+f10` on this block toolbar.
204
- event.nativeEvent.stopImmediatePropagation();
205
- }
206
-
207
- render() {
208
- const { clientId } = this.props;
209
-
210
- return [
211
- createElement( 'div', {
212
- key: "toolbar",
213
- id: `toolbar-${ clientId }`,
214
- ref: ( ref ) => this.ref = ref,
215
- className: "block-library-classic__toolbar",
216
- onClick: this.focus,
217
- 'data-placeholder': getTitle( this.props.name ),
218
- onKeyDown: this.onToolbarKeyDown,
219
- } ),
220
- createElement( 'div', {
221
- key: "editor",
222
- id: `editor-${ clientId }`,
223
- className: "wp-block-freeform block-library-rich-text__tinymce",
224
- } ),
225
- ];
226
- }
227
- }
228
-
229
- const settings = {
230
- keywords: [ __( 'text' ) ],
231
- category: 'common',
232
-
233
- icon: 'welcome-widgets-menus',
234
-
235
- /*
236
- icon: {
237
- background: '#f8f9f9',
238
- foreground: '#006289',
239
- src: 'welcome-widgets-menus',
240
- },
241
- */
242
-
243
- attributes: {
244
- content: {
245
- type: 'string',
246
- source: 'html',
247
- },
248
- },
249
-
250
- merge( attributes, attributesToMerge ) {
251
- return {
252
- content: attributes.content + attributesToMerge.content,
253
- };
254
- },
255
-
256
- edit: ClassicEdit,
257
-
258
- save( { attributes } ) {
259
- const { content } = attributes;
260
-
261
- return createElement( RawHTML, null, content );
262
- },
263
- };
264
-
265
- const settingsClassic = assign( {}, settings, {
266
- title: getTitle( 'core/freeform' ),
267
- name: 'core/freeform',
268
-
269
- description: __( 'Use the classic WordPress editor.' ),
270
-
271
- supports: {
272
- className: false,
273
- customClassName: false,
274
- reusable: false,
275
- },
276
-
277
- icon: createElement( SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" },
278
- createElement( Path, { d: "M0,0h24v24H0V0z M0,0h24v24H0V0z", fill: "none" } ),
279
- createElement( Path, { d: "m20 7v10h-16v-10h16m0-2h-16c-1.1 0-1.99 0.9-1.99 2l-0.01 10c0 1.1 0.9 2 2 2h16c1.1 0 2-0.9 2-2v-10c0-1.1-0.9-2-2-2z" } ),
280
- createElement( Rect, { x: "11", y: "8", width: "2", height: "2" } ),
281
- createElement( Rect, { x: "11", y: "11", width: "2", height: "2" } ),
282
- createElement( Rect, { x: "8", y: "8", width: "2", height: "2" } ),
283
- createElement( Rect, { x: "8", y: "11", width: "2", height: "2" } ),
284
- createElement( Rect, { x: "5", y: "11", width: "2", height: "2" } ),
285
- createElement( Rect, { x: "5", y: "8", width: "2", height: "2" } ),
286
- createElement( Rect, { x: "8", y: "14", width: "8", height: "2" } ),
287
- createElement( Rect, { x: "14", y: "11", width: "2", height: "2" } ),
288
- createElement( Rect, { x: "14", y: "8", width: "2", height: "2" } ),
289
- createElement( Rect, { x: "17", y: "11", width: "2", height: "2" } ),
290
- createElement( Rect, { x: "17", y: "8", width: "2", height: "2" } )
291
- ),
292
- } );
293
-
294
- const settingsParagraph = assign( {}, settings, {
295
- title: getTitle( 'tadv/classic-paragraph' ),
296
- name: 'tadv/classic-paragraph',
297
-
298
- description: tadvSettings ? tadvSettings.description : __( 'Paragraph block with TinyMCE, the classic WordPress editor.' ),
299
-
300
- supports: {
301
- className: false,
302
- customClassName: false,
303
- reusable: true,
304
- },
305
-
306
- transforms: {
307
- from: ( () => {
308
- const out = [];
309
- [
310
- 'core/freeform',
311
- 'core/code',
312
- 'core/cover',
313
- 'core/embed',
314
- 'core/gallery',
315
- 'core/heading',
316
- 'core/html',
317
- 'core/image',
318
- 'core/list',
319
- 'core/media-text',
320
- 'core/preformatted',
321
- 'core/nextpage',
322
- 'core/more',
323
- 'core/quote',
324
- 'core/pullquote',
325
- 'core/separator',
326
- // 'core/shortcode',
327
- 'core/subhead',
328
- 'core/table',
329
- 'core/verse',
330
- 'core/video',
331
- 'core/audio',
332
- ].forEach( ( blockName ) => {
333
- out.push( {
334
- type: 'block',
335
- blocks: [ blockName ],
336
- transform: ( attributes ) => {
337
- const html = getBlockContent( createBlock( blockName, attributes ) );
338
- return createBlock( 'tadv/classic-paragraph', { content: html } );
339
- },
340
- } );
341
- } );
342
-
343
- out.push(
344
- {
345
- type: 'raw',
346
- priority: 21,
347
- isMatch: () => true,
348
- },
349
- {
350
- type: 'block',
351
- isMultiBlock: true,
352
- blocks: [ 'core/paragraph' ],
353
- transform: ( attributes ) => {
354
- const html = toHTMLString( {
355
- value: join( attributes.map( ( { content } ) =>
356
- create( { html: content } )
357
- ), '\u2028' ),
358
- multilineTag: 'p',
359
- } );
360
-
361
- return createBlock( 'tadv/classic-paragraph', { content: html } );
362
- },
363
- },
364
- );
365
-
366
- return out;
367
- } )(),
368
- to: [
369
- {
370
- type: 'block',
371
- blocks: [ 'core/freeform' ],
372
- transform: ( attributes ) => createBlock( 'core/freeform', attributes ),
373
- },
374
- {
375
- type: 'block',
376
- blocks: [ 'core/paragraph' ],
377
- transform: ( attributes ) => {
378
- let html = attributes.content;
379
-
380
- if ( ! html ) {
381
- html = '­';
382
- } else if ( html.indexOf( '</p>' ) === -1 ) {
383
- html += '&shy;';
384
- }
385
-
386
- return rawHandler( { HTML: html } );
387
- },
388
- }
389
- ],
390
- },
391
- } );
392
-
393
- if ( addClassicParagraph ) {
394
- registerBlockType( 'tadv/classic-paragraph', settingsParagraph );
395
- }
396
-
397
- } )( window.wp, window.lodash );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
block-editor/classic-paragraph.css DELETED
@@ -1,82 +0,0 @@
1
- /**
2
- * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
- * For more information please see tinymce-advanced.php.
4
- *
5
- * Copyright (c) 2007-2018 Andrew Ozz. All rights reserved.
6
- */
7
-
8
- /* Tweaks for "Classic Paragraph" */
9
-
10
- /* Toolbar
11
- .editor-block-list__block[data-type="tadv/classic-paragraph"] .editor-block-contextual-toolbar .editor-block-switcher {
12
- display: none;
13
- }
14
- */
15
-
16
- div.mce-toolbar .mce-btn-group {
17
- padding: 3px 4px;
18
- }
19
-
20
- div.mce-toolbar-grp.mce-container > div {
21
- padding: 0;
22
- }
23
-
24
- @media (min-width: 600px) {
25
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="tadv/classic-paragraph"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar,
26
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="core/freeform"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar {
27
- float: right;
28
- margin-right: 71px;
29
- transform: translateY(-13px);
30
- top: 14px;
31
- }
32
-
33
- .editor-writing-flow > div > div > .editor-block-list__layout > div.wp-block[data-type="tadv/classic-paragraph"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar .components-toolbar,
34
- .editor-writing-flow > div > div > .editor-block-list__layout > div.wp-block[data-type="core/freeform"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar .components-toolbar {
35
- background: transparent;
36
- border: none;
37
- }
38
-
39
- .editor-writing-flow > div > div > .editor-block-list__layout > div.wp-block[data-type="tadv/classic-paragraph"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar .components-toolbar button:hover,
40
- .editor-writing-flow > div > div > .editor-block-list__layout > div.wp-block[data-type="core/freeform"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar .components-toolbar button:hover {
41
- background: transparent;
42
- }
43
-
44
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="tadv/classic-paragraph"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar .editor-block-toolbar,
45
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="core/freeform"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar .editor-block-toolbar {
46
- margin-top: 0;
47
- border: none;
48
- }
49
-
50
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="tadv/classic-paragraph"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar .editor-block-toolbar::before,
51
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="core/freeform"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar .editor-block-toolbar::before {
52
- content: "";
53
- display: block;
54
- margin-top: 4px;
55
- margin-bottom: 4px;
56
- border: none;
57
- }
58
-
59
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="tadv/classic-paragraph"] > .editor-block-list__block-edit > div[data-block] > .block-library-classic__toolbar .mce-toolbar.mce-stack-layout-item,
60
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="core/freeform"] > .editor-block-list__block-edit > div[data-block] > .block-library-classic__toolbar .mce-toolbar.mce-stack-layout-item {
61
- padding-right: 71px;
62
- }
63
-
64
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="tadv/classic-paragraph"] > .editor-block-list__block-edit > div[data-block] > .block-library-classic__toolbar .mce-menubar + .mce-toolbar-grp .mce-toolbar.mce-stack-layout-item,
65
- .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="core/freeform"] > .editor-block-list__block-edit > div[data-block] > .block-library-classic__toolbar .mce-menubar + .mce-toolbar-grp .mce-toolbar.mce-stack-layout-item {
66
- padding: 0;
67
- }
68
-
69
- /* RTL */
70
- .rtl .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="tadv/classic-paragraph"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar,
71
- .rtl .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="core/freeform"] > .editor-block-list__block-edit > .editor-block-contextual-toolbar {
72
- float: left;
73
- margin-left: 23px;
74
- margin-right: 0;
75
- }
76
-
77
- .rtl .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="tadv/classic-paragraph"] > .editor-block-list__block-edit > div[data-block] > .block-library-classic__toolbar .mce-toolbar.mce-stack-layout-item,
78
- .rtl .editor-writing-flow > div > div > .editor-block-list__layout > .wp-block[data-type="core/freeform"] > .editor-block-list__block-edit > div[data-block] > .block-library-classic__toolbar .mce-toolbar.mce-stack-layout-item {
79
- padding-right: 0;
80
- padding-left: 71px;
81
- }
82
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
{block-editor → css}/block-editor.css RENAMED
@@ -2,10 +2,33 @@
2
  * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
  * For more information please see tinymce-advanced.php.
4
  *
5
- * Copyright (c) 2007-2018 Andrew Ozz. All rights reserved.
6
  */
7
 
8
  /* Fixes for the Block Editor */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
 
10
  .block-library-classic__toolbar .mce-menubar {
11
  min-height: 38px;
@@ -19,10 +42,18 @@
19
  font-size: 14px;
20
  }
21
 
22
- .block-library-classic__toolbar .mce-menubar > .mce-container-body {
23
- padding-top: 0.5em;
24
- white-space: normal;
25
- width: calc(100% - 36px) !important;
 
 
 
 
 
 
 
 
26
  }
27
 
28
  .block-library-classic__toolbar .mce-menubar i.mce-caret {
@@ -164,6 +195,10 @@ div.mce-widget.mce-tooltip .mce-tooltip-inner {
164
  opacity: 1;
165
  }
166
 
 
 
 
 
167
  /* Menu */
168
  div.mce-menu .mce-menu-item:hover,
169
  div.mce-menu .mce-menu-item.mce-selected,
2
  * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
  * For more information please see tinymce-advanced.php.
4
  *
5
+ * Copyright (c) 2007-2019 Andrew Ozz. All rights reserved.
6
  */
7
 
8
  /* Fixes for the Block Editor */
9
+ .block-library-classic__toolbar:empty {
10
+ height: 40px;
11
+ }
12
+
13
+ .block-library-classic__toolbar:empty::before {
14
+ padding: 0 14px;
15
+ vertical-align: text-bottom;
16
+ }
17
+
18
+ .editor-block-list__layout .editor-block-list__block[data-type="core/freeform"] .editor-block-list__block-edit::before {
19
+ outline: none;
20
+ }
21
+
22
+ .editor-block-list__block[data-type="core/freeform"] > .editor-block-list__insertion-point {
23
+ z-index: 11;
24
+ }
25
+
26
+ .editor-block-list__block[data-type="core/freeform"] .editor-block-list__insertion-point-inserter .editor-inserter__toggle {
27
+ width: 20px;
28
+ height: 20px;
29
+ padding: 0;
30
+ margin-top: 5px;
31
+ }
32
 
33
  .block-library-classic__toolbar .mce-menubar {
34
  min-height: 38px;
42
  font-size: 14px;
43
  }
44
 
45
+ @media (min-width: 600px) {
46
+ .block-library-classic__toolbar .mce-menubar > .mce-container-body {
47
+ padding-top: 6px;
48
+ padding-right: 36px;
49
+ white-space: normal;
50
+ width: auto !important;
51
+ }
52
+
53
+ .rtl .block-library-classic__toolbar .mce-menubar > .mce-container-body {
54
+ padding-right: 0;
55
+ padding-left: 36px;
56
+ }
57
  }
58
 
59
  .block-library-classic__toolbar .mce-menubar i.mce-caret {
195
  opacity: 1;
196
  }
197
 
198
+ .block-library-classic__toolbar .mce-menubar .mce-flow-layout-item {
199
+ margin: 2px 0;
200
+ }
201
+
202
  /* Menu */
203
  div.mce-menu .mce-menu-item:hover,
204
  div.mce-menu .mce-menu-item.mce-selected,
css/tadv-styles.css CHANGED
@@ -2,37 +2,276 @@
2
  * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
  * For more information please see tinymce-advanced.php.
4
  *
5
- * Copyright (c) 2007-2016 Andrew Ozz. All rights reserved.
6
  */
7
 
8
- .wrap.tinymce-advanced {
9
- max-width: 900px;
10
- margin: 10px 20px 0 10px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  }
12
 
 
 
 
 
 
13
  #block-editor {
14
- margin-bottom: 45px;
15
- max-width: 672px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
  }
17
 
18
  #classic-editor,
19
- .tadv-submit-top {
20
  margin-bottom: 45px;
21
- width: 92%;
 
 
 
 
22
  }
23
 
24
- .rtl #classic-editor,
25
- .rtl .tadv-submit-top {
26
- margin: 0 0 35px 280px;
27
  }
28
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  .tadv-more-plugins label {
30
  font-weight: bold;
31
  padding: 0 10px;
32
  }
33
 
34
  .advanced-options label {
35
- font-weight: bold;
36
  }
37
 
38
  .tinymce-advanced label {
@@ -72,6 +311,10 @@
72
  float: right;
73
  }
74
 
 
 
 
 
75
  #tadv-import-error {
76
  height: 22px;
77
  }
@@ -162,7 +405,7 @@ ul.container,
162
  cursor: default;
163
  }
164
 
165
- #tadvzones,
166
  .unused {
167
  -webkit-user-select: none;
168
  -moz-user-select: none;
@@ -238,13 +481,11 @@ ul.container,
238
  }
239
 
240
  .unuseddiv {
241
- padding: 10px;
242
- border: 1px solid #ccc;
243
  }
244
 
245
- .unuseddiv h4 {
246
- margin: 5px 5px 12px;
247
- font-size: 1.2em;
248
  }
249
 
250
  .unused li,
@@ -332,6 +573,22 @@ div.tadv-error {
332
  color: #d54e21;
333
  }
334
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
335
  .tadv-block-editor .mce-menubtn {
336
  margin: 6px 0;
337
  }
@@ -343,3 +600,49 @@ div.tadv-error {
343
  #toolbar_classic_block {
344
  height: 60px;
345
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
  * For more information please see tinymce-advanced.php.
4
  *
5
+ * Copyright (c) 2007-2019 Andrew Ozz. All rights reserved.
6
  */
7
 
8
+ body.settings_page_tinymce-advanced {
9
+ background: #ededed;
10
+ color: #000;
11
+ }
12
+
13
+ .tinymce-advanced h4 {
14
+ font-size: 1.1em;
15
+ }
16
+
17
+ .settings-toggle {
18
+ display: inline-block;
19
+ padding: 12px 16px 12px 6px;
20
+ margin: 0 6px -1px 0;
21
+ border: 1px solid #ccc;
22
+ border-top-left-radius: 5px;
23
+ border-top-right-radius: 5px;
24
+ cursor: pointer;
25
+ }
26
+
27
+ .rtl .settings-toggle {
28
+ padding: 12px 6px 12px 16px;
29
+ margin: 0 0 -1px 6px;
30
  }
31
 
32
+ .settings-toggle:focus {
33
+ outline: none;
34
+ }
35
+
36
+ #classic-editor,
37
  #block-editor {
38
+ padding: 0 18px 18px;
39
+ border: 1px solid #ccc;
40
+ }
41
+
42
+ .classic-active .settings-toggle.classic,
43
+ .block-active .settings-toggle.block {
44
+ border-bottom-color: #f8f9f9;
45
+ background-color: #f8f9f9;
46
+ }
47
+
48
+ .classic-active #block-editor,
49
+ .classic-active .block .arrow-open,
50
+ .classic-active .classic .dashicons-arrow-down,
51
+ .block-active #classic-editor,
52
+ .block-active .classic .arrow-open,
53
+ .block-active .block .dashicons-arrow-down {
54
+ display: none;
55
+ }
56
+
57
+ .wrap.tinymce-advanced {
58
+ max-width: 760px;
59
+ margin: 16px 24px 0 16px;
60
+ }
61
+
62
+ .rtl .wrap.tinymce-advanced {
63
+ margin: 16px 16px 0 24px;
64
  }
65
 
66
  #classic-editor,
67
+ #block-editor {
68
  margin-bottom: 45px;
69
+ background-color: #f8f9f9;
70
+ }
71
+
72
+ .toolbar-block-wrap {
73
+ display: inline-block;
74
  }
75
 
76
+ .toolbar-block-wrap img {
77
+ height: 36px;
78
+ width: auto;
79
  }
80
+
81
+ /* Block editor buttons */
82
+ .toolbar-block-left,
83
+ .toolbar-block-right,
84
+ #toolbar_block {
85
+ display: inline-block;
86
+ vertical-align: text-top;
87
+ }
88
+
89
+ .toolbar-wrap {
90
+ margin: 8px 0;
91
+ }
92
+
93
+ .toolbar-wrap.highlighted ul,
94
+ .toolbar-block-wrap.highlighted {
95
+ background-color: #e4f2fd;
96
+ }
97
+
98
+ .toolbar-block-wrap {
99
+ background-color: #fff;
100
+ border-top: 1px solid #ddd;
101
+ border-bottom: 1px solid #ddd;
102
+ }
103
+
104
+ #toolbar_block {
105
+ border: 0;
106
+ }
107
+
108
+ .components-toolbar * {
109
+ box-sizing: border-box;
110
+ }
111
+
112
+ .components-toolbar {
113
+ border: 1px solid #e2e4e7;
114
+ margin: 0;
115
+ background-color: #fff;
116
+ line-height: 1px;
117
+ min-height: 36px;
118
+ font-size: 0pt;
119
+ }
120
+
121
+ .components-toolbar > li {
122
+ display: inline-block;
123
+ margin: 0;
124
+ width: 36px;
125
+ height: 36px;
126
+ cursor: move;
127
+ }
128
+
129
+ .components-icon-button {
130
+ display: inline-block;
131
+ margin: 0;
132
+ padding: 3px;
133
+ outline: none;
134
+ position: relative;
135
+ width: 36px;
136
+ height: 36px;
137
+ font-size: 10px;
138
+ border: none;
139
+ background: none;
140
+ color: #555d66;
141
+ overflow: hidden;
142
+ border-radius: 4px;
143
+ -webkit-appearance: none;
144
+ }
145
+
146
+ .components-icon-button .dashicons,
147
+ .components-icon-button .mce-ico {
148
+ display: inline-block;
149
+ padding: 5px;
150
+ border-radius: 4px;
151
+ height: 30px;
152
+ width: 30px;
153
+ outline: none;
154
+ overflow: hidden;
155
+ }
156
+
157
+ .components-icon-button .mce-ico:before {
158
+ font-size: 18px;
159
+ margin: 2px;
160
+ display: block;
161
+ }
162
+
163
+ .components-icon-button:hover > span {
164
+ color: #555d66;
165
+ box-shadow: inset 0 0 0 1px #555d66, inset 0 0 0 2px #fff;
166
+ }
167
+
168
+ .toolbar-side-wrap,
169
+ .panel-block-colors {
170
+ width: 260px;
171
+ border: 1px solid #ddd;
172
+ background-color: #fff;
173
+ }
174
+
175
+ .panel-title {
176
+ padding: 15px;
177
+ font-weight: 600;
178
+ background-color: #f8f9f9;
179
+ margin-bottom: 5px;
180
+ }
181
+
182
+ .panel-title span {
183
+ color: #191e23;
184
+ float: right;
185
+ }
186
+
187
+ .rtl .panel-title span {
188
+ float: left;
189
+ }
190
+
191
+ .toolbar-unused-wrap {
192
+ width: 350px;
193
+ }
194
+
195
+ .block-toolbar-unused {
196
+ min-height: 72px;
197
+ }
198
+
199
+ .toolbar-block-title {
200
+ margin: 1.2em 0 0;
201
+ }
202
+
203
+ .block-toolbar-side {
204
+ border-color: transparent;
205
+ margin: 0 12px 10px;
206
+ min-height: 37px;
207
+ }
208
+
209
+ .highlighted .block-toolbar-side {
210
+ border-color: #e2e4e7;
211
+ }
212
+
213
+ .panel-block-colors-wrap {
214
+ margin-top: 40px;
215
+ }
216
+
217
+ .panel-block-colors {
218
+ float: left;
219
+ }
220
+
221
+ .rtl .panel-block-colors {
222
+ float: right;
223
+ }
224
+
225
+ .panel-block-colors-settings {
226
+ margin-left: 280px;
227
+ width: auto;
228
+ clear: none;
229
+ }
230
+
231
+ .rtl .panel-block-colors-settings {
232
+ margin-left: 0;
233
+ margin-right: 280px;
234
+ }
235
+
236
+ .panel-block-colors-settings__text {
237
+ border-top: 40px solid transparent;
238
+ }
239
+
240
+ .panel-block-colors-settings__background {
241
+ border-top: 60px solid transparent;
242
+ }
243
+
244
+ .panel-block-text-color p,
245
+ .panel-block-background-color p {
246
+ margin: 10px 16px 5px;
247
+ color: #555d66;
248
+ }
249
+
250
+ .panel-block-text-color.disabled,
251
+ .panel-block-background-color.disabled {
252
+ opacity: 0.3;
253
+ }
254
+ /* Block editor buttons end */
255
+
256
+ .classic-blocks-title-h4 {
257
+ margin: 40px 0 1.1em;
258
+ }
259
+ /*
260
+ .tadv-submit-top {
261
+ margin: 0 -36px;
262
+ }
263
+ */
264
+ form#tadvadmin {
265
+ margin-top: 24px;
266
+ }
267
+
268
  .tadv-more-plugins label {
269
  font-weight: bold;
270
  padding: 0 10px;
271
  }
272
 
273
  .advanced-options label {
274
+ font-weight: 600;
275
  }
276
 
277
  .tinymce-advanced label {
311
  float: right;
312
  }
313
 
314
+ .rtl .tadv-submit .button-large {
315
+ float: left;
316
+ }
317
+
318
  #tadv-import-error {
319
  height: 22px;
320
  }
405
  cursor: default;
406
  }
407
 
408
+ .tadvzones,
409
  .unused {
410
  -webkit-user-select: none;
411
  -moz-user-select: none;
481
  }
482
 
483
  .unuseddiv {
484
+ margin: 0 -5px;
 
485
  }
486
 
487
+ .unuseddiv > p {
488
+ margin: 16px 5px 6px;
 
489
  }
490
 
491
  .unused li,
573
  color: #d54e21;
574
  }
575
 
576
+ .tadv-block-editor-toolbars-wrap {
577
+ max-width: 650px;
578
+ }
579
+
580
+ .tadv-mce-menu.tadv-block-editor.mce-menubar {
581
+ background-image: url(../images/toolbar-actions.png);
582
+ background-position: right;
583
+ background-repeat: no-repeat;
584
+ background-size: 84px 37px;
585
+ }
586
+
587
+ .rtl .tadv-mce-menu.tadv-block-editor.mce-menubar {
588
+ background-image: url(../images/toolbar-actions-rtl.png);
589
+ background-position: left;
590
+ }
591
+
592
  .tadv-block-editor .mce-menubtn {
593
  margin: 6px 0;
594
  }
600
  #toolbar_classic_block {
601
  height: 60px;
602
  }
603
+
604
+ .tadv-popout-help {
605
+ padding: 1px 18px;
606
+ background-color: #fff;
607
+ margin: 8px;
608
+ border: 1px solid #e8e8e8;
609
+ }
610
+
611
+ .tadv-popout-help ul {
612
+ list-style-type: disc;
613
+ padding: 0 1.8em;
614
+ }
615
+
616
+ .tadv-popout-help-close {
617
+ float: right;
618
+ margin: -10px -14px;
619
+ }
620
+
621
+ .rtl .tadv-popout-help-close {
622
+ float: left;
623
+ }
624
+
625
+ .tadv-popout-help-toggle,
626
+ .tadv-popout-help-close {
627
+ cursor: pointer;
628
+ }
629
+
630
+ .tadv-mark .dashicons-editor-textcolor {
631
+ background-color: #fff9c0;
632
+ background-clip: content-box;
633
+ }
634
+
635
+ .tadv-block-editor > div.mce-container-body {
636
+ margin-right: 80px;
637
+ }
638
+
639
+ .rtl .tadv-block-editor > div.mce-container-body {
640
+ margin-right: 0;
641
+ margin-left: 80px;
642
+ }
643
+
644
+
645
+ .rtl .the-button {
646
+ direction: rtl;
647
+ text-align: right;
648
+ }
dist/classic-paragraph.css ADDED
@@ -0,0 +1 @@
 
1
+ .editor-block-list__block[data-type="tadv/classic-paragraph"] .mce-tinymce{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.editor-block-list__block[data-type="tadv/classic-paragraph"] div.mce-toolbar-grp{background:#f8f9f9;border-bottom-color:#eceded}.editor-block-list__block[data-type="tadv/classic-paragraph"] div.mce-toolbar .mce-btn-group{padding:4px;margin:0}.editor-block-list__block[data-type="tadv/classic-paragraph"] div.mce-toolbar-grp.mce-container>div{padding:0}.editor-block-list__block[data-type="tadv/classic-paragraph"]>.editor-block-list__insertion-point{z-index:11}@media (min-width:600px){.block-library-classic__toolbar .mce-menubar>div.mce-container-body{padding-right:80px}.rtl .block-library-classic__toolbar .mce-menubar>div.mce-container-body{padding-left:80px}.editor-inner-blocks .block-library-classic__toolbar .mce-menubar>div.mce-container-body{padding:0}.block-library-classic__toolbar .mce-rtl .mce-flow-layout-item,.block-library-classic__toolbar .mce-rtl .mce-flow-layout-item.mce-last{margin:0;padding:3px}.block-library-classic__toolbar .mce-rtl .mce-flow-layout .mce-flow-layout-item>div{direction:rtl;text-align:right}.editor-block-list__layout .editor-block-list__block[data-type="core/freeform"] .mce-toolbar-grp>div{padding:0}.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="core/freeform"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar,.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="tadv/classic-paragraph"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar{float:right;margin-right:71px;transform:translateY(-13px);top:14px}.editor-writing-flow>div>div>.editor-block-list__layout>div.wp-block[data-type="core/freeform"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar .components-toolbar,.editor-writing-flow>div>div>.editor-block-list__layout>div.wp-block[data-type="tadv/classic-paragraph"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar .components-toolbar{background:transparent;border:none}.editor-writing-flow>div>div>.editor-block-list__layout>div.wp-block[data-type="core/freeform"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar .components-toolbar button:hover,.editor-writing-flow>div>div>.editor-block-list__layout>div.wp-block[data-type="tadv/classic-paragraph"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar .components-toolbar button:hover{background:transparent}.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="core/freeform"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar .editor-block-toolbar,.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="tadv/classic-paragraph"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar .editor-block-toolbar{margin-top:0;border:none}.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="core/freeform"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar .editor-block-toolbar:before,.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="tadv/classic-paragraph"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar .editor-block-toolbar:before{content:"";display:block;margin-top:4px;margin-bottom:4px;border:none}.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="core/freeform"]>.editor-block-list__block-edit>div[data-block]>.block-library-classic__toolbar .mce-toolbar.mce-stack-layout-item,.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="tadv/classic-paragraph"]>.editor-block-list__block-edit>div[data-block]>.block-library-classic__toolbar .mce-toolbar.mce-stack-layout-item{padding-right:76px}.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="core/freeform"]>.editor-block-list__block-edit>div[data-block]>.block-library-classic__toolbar .mce-menubar+.mce-toolbar-grp .mce-toolbar.mce-stack-layout-item,.editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="tadv/classic-paragraph"]>.editor-block-list__block-edit>div[data-block]>.block-library-classic__toolbar .mce-menubar+.mce-toolbar-grp .mce-toolbar.mce-stack-layout-item{padding:0}.rtl .editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="core/freeform"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar,.rtl .editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="tadv/classic-paragraph"]>.editor-block-list__block-edit>.editor-block-contextual-toolbar{float:left;margin-left:70px;margin-right:0}.rtl .editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="core/freeform"]>.editor-block-list__block-edit>div[data-block]>.block-library-classic__toolbar .mce-toolbar.mce-stack-layout-item,.rtl .editor-writing-flow>div>div>.editor-block-list__layout>.wp-block[data-type="tadv/classic-paragraph"]>.editor-block-list__block-edit>div[data-block]>.block-library-classic__toolbar .mce-toolbar.mce-stack-layout-item{padding-right:0;padding-left:78px}}
dist/classic-paragraph.js ADDED
@@ -0,0 +1 @@
 
1
+ !function(t){var n={};function e(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,e),o.l=!0,o.exports}e.m=t,e.c=n,e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:r})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,n){if(1&n&&(t=e(t)),8&n)return t;if(4&n&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(e.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&n&&"string"!=typeof t)for(var o in t)e.d(r,o,function(n){return t[n]}.bind(null,o));return r},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},e.p="",e(e.s=122)}([function(t,n,e){var r=e(45)("wks"),o=e(29),i=e(3).Symbol,c="function"==typeof i;(t.exports=function(t){return r[t]||(r[t]=c&&i[t]||(c?i:o)("Symbol."+t))}).store=r},function(t,n){var e=t.exports={version:"2.6.1"};"number"==typeof __e&&(__e=e)},function(t,n){var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},function(t,n){var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},function(t,n,e){var r=e(17),o=e(48);t.exports=e(11)?function(t,n,e){return r.f(t,n,o(1,e))}:function(t,n,e){return t[n]=e,t}},function(t,n,e){var r=e(15),o=e(54),i=e(35),c=Object.defineProperty;n.f=e(6)?Object.defineProperty:function(t,n,e){if(r(t),n=i(n,!0),r(e),o)try{return c(t,n,e)}catch(t){}if("get"in e||"set"in e)throw TypeError("Accessors not supported!");return"value"in e&&(t[n]=e.value),t}},function(t,n,e){t.exports=!e(12)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,n,e){var r=e(18);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,n){var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},function(t,n,e){var r=e(96),o=e(42);t.exports=function(t){return r(o(t))}},function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,n,e){t.exports=!e(30)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,n,e){var r=e(2),o=e(1),i=e(65),c=e(14),u=e(8),a=function(t,n,e){var s,f,l,p=t&a.F,v=t&a.G,h=t&a.S,y=t&a.P,d=t&a.B,g=t&a.W,b=v?o:o[n]||(o[n]={}),m=b.prototype,x=v?r:h?r[n]:(r[n]||{}).prototype;for(s in v&&(e=n),e)(f=!p&&x&&void 0!==x[s])&&u(b,s)||(l=f?x[s]:e[s],b[s]=v&&"function"!=typeof x[s]?e[s]:d&&f?i(l,r):g&&x[s]==l?function(t){var n=function(n,e,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(n);case 2:return new t(n,e)}return new t(n,e,r)}return t.apply(this,arguments)};return n.prototype=t.prototype,n}(l):y&&"function"==typeof l?i(Function.call,l):l,y&&((b.virtual||(b.virtual={}))[s]=l,t&a.R&&m&&!m[s]&&c(m,s,l)))};a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,t.exports=a},function(t,n,e){var r=e(5),o=e(24);t.exports=e(6)?function(t,n,e){return r.f(t,n,o(1,e))}:function(t,n,e){return t[n]=e,t}},function(t,n,e){var r=e(10);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,n,e){var r=e(36)("wks"),o=e(22),i=e(2).Symbol,c="function"==typeof i;(t.exports=function(t){return r[t]||(r[t]=c&&i[t]||(c?i:o)("Symbol."+t))}).store=r},function(t,n,e){var r=e(7),o=e(75),i=e(76),c=Object.defineProperty;n.f=e(11)?Object.defineProperty:function(t,n,e){if(r(t),n=i(n,!0),r(e),o)try{return c(t,n,e)}catch(t){}if("get"in e||"set"in e)throw TypeError("Accessors not supported!");return"value"in e&&(t[n]=e.value),t}},function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,n){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,n,e){var r=e(3),o=e(4),i=e(21),c=e(29)("src"),u=Function.toString,a=(""+u).split("toString");e(28).inspectSource=function(t){return u.call(t)},(t.exports=function(t,n,e,u){var s="function"==typeof e;s&&(i(e,"name")||o(e,"name",n)),t[n]!==e&&(s&&(i(e,c)||o(e,c,t[n]?""+t[n]:a.join(String(n)))),t===r?t[n]=e:u?t[n]?t[n]=e:o(t,n,e):(delete t[n],o(t,n,e)))})(Function.prototype,"toString",function(){return"function"==typeof this&&this[c]||u.call(this)})},function(t,n){var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},function(t,n){var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},function(t,n){var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n){t.exports=!0},function(t,n,e){var r=e(57),o=e(37);t.exports=Object.keys||function(t){return r(t,o)}},function(t,n){t.exports=function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}},function(t,n){var e=t.exports={version:"2.6.1"};"number"==typeof __e&&(__e=e)},function(t,n){var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,n){t.exports={}},function(t,n,e){var r=e(78),o=e(19);t.exports=function(t){return r(o(t))}},function(t,n){var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},function(t,n,e){var r=e(45)("keys"),o=e(29);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,n,e){var r=e(10);t.exports=function(t,n){if(!r(t))return t;var e,o;if(n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;if("function"==typeof(e=t.valueOf)&&!r(o=e.call(t)))return o;if(!n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,n,e){var r=e(1),o=e(2),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,n){return i[t]||(i[t]=void 0!==n?n:{})})("versions",[]).push({version:r.version,mode:e(25)?"pure":"global",copyright:"© 2018 Denis Pushkarev (zloirock.ru)"})},function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,n){n.f={}.propertyIsEnumerable},function(t,n,e){"use strict";var r,o,i=e(111),c=RegExp.prototype.exec,u=String.prototype.replace,a=c,s=(r=/a/,o=/b*/g,c.call(r,"a"),c.call(o,"a"),0!==r.lastIndex||0!==o.lastIndex),f=void 0!==/()??/.exec("")[1];(s||f)&&(a=function(t){var n,e,r,o,a=this;return f&&(e=new RegExp("^"+a.source+"$(?!\\s)",i.call(a))),s&&(n=a.lastIndex),r=c.call(a,t),s&&r&&(a.lastIndex=a.global?r.index+r[0].length:n),f&&r&&r.length>1&&u.call(r[0],e,function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)}),r}),t.exports=a},function(t,n,e){var r=e(23),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,n){var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},function(t,n){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,n,e){var r=e(36)("keys"),o=e(22);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,n,e){n.f=e(16)},function(t,n,e){var r=e(28),o=e(3),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,n){return i[t]||(i[t]=void 0!==n?n:{})})("versions",[]).push({version:r.version,mode:e(46)?"pure":"global",copyright:"© 2018 Denis Pushkarev (zloirock.ru)"})},function(t,n){t.exports=!1},function(t,n,e){var r=e(18),o=e(3).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n,e){var r=e(3),o=e(28),i=e(4),c=e(20),u=e(80),a=function(t,n,e){var s,f,l,p,v=t&a.F,h=t&a.G,y=t&a.S,d=t&a.P,g=t&a.B,b=h?r:y?r[n]||(r[n]={}):(r[n]||{}).prototype,m=h?o:o[n]||(o[n]={}),x=m.prototype||(m.prototype={});for(s in h&&(e=n),e)l=((f=!v&&b&&void 0!==b[s])?b:e)[s],p=g&&f?u(l,r):d&&"function"==typeof l?u(Function.call,l):l,b&&c(b,s,l,t&a.U),m[s]!=l&&i(m,s,p),d&&x[s]!=l&&(x[s]=l)};r.core=o,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,t.exports=a},function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,n,e){var r=e(84),o=e(52);t.exports=Object.keys||function(t){return r(t,o)}},function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,n,e){var r=e(17).f,o=e(21),i=e(0)("toStringTag");t.exports=function(t,n,e){t&&!o(t=e?t:t.prototype,i)&&r(t,i,{configurable:!0,value:n})}},function(t,n,e){t.exports=!e(6)&&!e(12)(function(){return 7!=Object.defineProperty(e(55)("div"),"a",{get:function(){return 7}}).a})},function(t,n,e){var r=e(10),o=e(2).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,n,e){var r=e(15),o=e(95),i=e(37),c=e(43)("IE_PROTO"),u=function(){},a=function(){var t,n=e(55)("iframe"),r=i.length;for(n.style.display="none",e(100).appendChild(n),n.src="javascript:",(t=n.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),a=t.F;r--;)delete a.prototype[i[r]];return a()};t.exports=Object.create||function(t,n){var e;return null!==t?(u.prototype=r(t),e=new u,u.prototype=null,e[c]=t):e=a(),void 0===n?e:o(e,n)}},function(t,n,e){var r=e(8),o=e(9),i=e(97)(!1),c=e(43)("IE_PROTO");t.exports=function(t,n){var e,u=o(t),a=0,s=[];for(e in u)e!=c&&r(u,e)&&s.push(e);for(;n.length>a;)r(u,e=n[a++])&&(~i(s,e)||s.push(e));return s}},function(t,n){var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},function(t,n,e){var r=e(5).f,o=e(8),i=e(16)("toStringTag");t.exports=function(t,n,e){t&&!o(t=e?t:t.prototype,i)&&r(t,i,{configurable:!0,value:n})}},function(t,n,e){var r=e(2),o=e(1),i=e(25),c=e(44),u=e(5).f;t.exports=function(t){var n=o.Symbol||(o.Symbol=i?{}:r.Symbol||{});"_"==t.charAt(0)||t in n||u(n,t,{value:c.f(t)})}},function(t,n){n.f=Object.getOwnPropertySymbols},function(t,n,e){var r=e(57),o=e(37).concat("length","prototype");n.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},function(t,n,e){var r=e(38),o=e(24),i=e(9),c=e(35),u=e(8),a=e(54),s=Object.getOwnPropertyDescriptor;n.f=e(6)?s:function(t,n){if(t=i(t),n=c(n,!0),a)try{return s(t,n)}catch(t){}if(u(t,n))return o(!r.f.call(t,n),t[n])}},function(t,n,e){var r=e(19);t.exports=function(t){return Object(r(t))}},function(t,n,e){var r=e(93);t.exports=function(t,n,e){if(r(t),void 0===n)return t;switch(e){case 1:return function(e){return t.call(n,e)};case 2:return function(e,r){return t.call(n,e,r)};case 3:return function(e,r,o){return t.call(n,e,r,o)}}return function(){return t.apply(n,arguments)}}},function(t,n,e){t.exports=e(14)},function(t,n,e){var r=e(42);t.exports=function(t){return Object(r(t))}},function(t,n,e){var r=e(13),o=e(1),i=e(12);t.exports=function(t,n){var e=(o.Object||{})[t]||Object[t],c={};c[t]=n(e),r(r.S+r.F*i(function(){e(1)}),"Object",c)}},function(t,n,e){"use strict";var r=e(109)(!0);t.exports=function(t,n,e){return n+(e?r(t,n).length:1)}},function(t,n,e){"use strict";var r=e(110),o=RegExp.prototype.exec;t.exports=function(t,n){var e=t.exec;if("function"==typeof e){var i=e.call(t,n);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(t,n)}},function(t,n,e){"use strict";e(112);var r=e(20),o=e(4),i=e(30),c=e(19),u=e(0),a=e(39),s=u("species"),f=!i(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")}),l=function(){var t=/(?:)/,n=t.exec;t.exec=function(){return n.apply(this,arguments)};var e="ab".split(t);return 2===e.length&&"a"===e[0]&&"b"===e[1]}();t.exports=function(t,n,e){var p=u(t),v=!i(function(){var n={};return n[p]=function(){return 7},7!=""[t](n)}),h=v?!i(function(){var n=!1,e=/a/;return e.exec=function(){return n=!0,null},"split"===t&&(e.constructor={},e.constructor[s]=function(){return e}),e[p](""),!n}):void 0;if(!v||!h||"replace"===t&&!f||"split"===t&&!l){var y=/./[p],d=e(c,p,""[t],function(t,n,e,r,o){return n.exec===a?v&&!o?{done:!0,value:y.call(n,e,r)}:{done:!0,value:t.call(e,n,r)}:{done:!1}}),g=d[0],b=d[1];r(String.prototype,t,g),o(RegExp.prototype,p,2==n?function(t,n){return b.call(t,this,n)}:function(t){return b.call(t,this)})}}},function(t,n,e){for(var r=e(73),o=e(51),i=e(20),c=e(3),u=e(4),a=e(31),s=e(0),f=s("iterator"),l=s("toStringTag"),p=a.Array,v={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},h=o(v),y=0;y<h.length;y++){var d,g=h[y],b=v[g],m=c[g],x=m&&m.prototype;if(x&&(x[f]||u(x,f,p),x[l]||u(x,l,g),a[g]=p,b))for(d in r)x[d]||i(x,d,r[d],!0)}},function(t,n,e){"use strict";var r=e(74),o=e(77),i=e(31),c=e(32);t.exports=e(79)(Array,"Array",function(t,n){this._t=c(t),this._i=0,this._k=n},function(){var t=this._t,n=this._k,e=this._i++;return!t||e>=t.length?(this._t=void 0,o(1)):o(0,"keys"==n?e:"values"==n?t[e]:[e,t[e]])},"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},function(t,n,e){var r=e(0)("unscopables"),o=Array.prototype;null==o[r]&&e(4)(o,r,{}),t.exports=function(t){o[r][t]=!0}},function(t,n,e){t.exports=!e(11)&&!e(30)(function(){return 7!=Object.defineProperty(e(47)("div"),"a",{get:function(){return 7}}).a})},function(t,n,e){var r=e(18);t.exports=function(t,n){if(!r(t))return t;var e,o;if(n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;if("function"==typeof(e=t.valueOf)&&!r(o=e.call(t)))return o;if(!n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,n){t.exports=function(t,n){return{value:n,done:!!t}}},function(t,n,e){var r=e(33);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},function(t,n,e){"use strict";var r=e(46),o=e(49),i=e(20),c=e(4),u=e(31),a=e(81),s=e(53),f=e(88),l=e(0)("iterator"),p=!([].keys&&"next"in[].keys()),v=function(){return this};t.exports=function(t,n,e,h,y,d,g){a(e,n,h);var b,m,x,w=function(t){if(!p&&t in j)return j[t];switch(t){case"keys":case"values":return function(){return new e(this,t)}}return function(){return new e(this,t)}},S=n+" Iterator",O="values"==y,_=!1,j=t.prototype,P=j[l]||j["@@iterator"]||y&&j[y],k=P||w(y),E=y?O?w("entries"):k:void 0,T="Array"==n&&j.entries||P;if(T&&(x=f(T.call(new t)))!==Object.prototype&&x.next&&(s(x,S,!0),r||"function"==typeof x[l]||c(x,l,v)),O&&P&&"values"!==P.name&&(_=!0,k=function(){return P.call(this)}),r&&!g||!p&&!_&&j[l]||c(j,l,k),u[n]=k,u[S]=v,y)if(b={values:O?k:w("values"),keys:d?k:w("keys"),entries:E},g)for(m in b)m in j||i(j,m,b[m]);else o(o.P+o.F*(p||_),n,b);return b}},function(t,n,e){var r=e(50);t.exports=function(t,n,e){if(r(t),void 0===n)return t;switch(e){case 1:return function(e){return t.call(n,e)};case 2:return function(e,r){return t.call(n,e,r)};case 3:return function(e,r,o){return t.call(n,e,r,o)}}return function(){return t.apply(n,arguments)}}},function(t,n,e){"use strict";var r=e(82),o=e(48),i=e(53),c={};e(4)(c,e(0)("iterator"),function(){return this}),t.exports=function(t,n,e){t.prototype=r(c,{next:o(1,e)}),i(t,n+" Iterator")}},function(t,n,e){var r=e(7),o=e(83),i=e(52),c=e(34)("IE_PROTO"),u=function(){},a=function(){var t,n=e(47)("iframe"),r=i.length;for(n.style.display="none",e(87).appendChild(n),n.src="javascript:",(t=n.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),a=t.F;r--;)delete a.prototype[i[r]];return a()};t.exports=Object.create||function(t,n){var e;return null!==t?(u.prototype=r(t),e=new u,u.prototype=null,e[c]=t):e=a(),void 0===n?e:o(e,n)}},function(t,n,e){var r=e(17),o=e(7),i=e(51);t.exports=e(11)?Object.defineProperties:function(t,n){o(t);for(var e,c=i(n),u=c.length,a=0;u>a;)r.f(t,e=c[a++],n[e]);return t}},function(t,n,e){var r=e(21),o=e(32),i=e(85)(!1),c=e(34)("IE_PROTO");t.exports=function(t,n){var e,u=o(t),a=0,s=[];for(e in u)e!=c&&r(u,e)&&s.push(e);for(;n.length>a;)r(u,e=n[a++])&&(~i(s,e)||s.push(e));return s}},function(t,n,e){var r=e(32),o=e(40),i=e(86);t.exports=function(t){return function(n,e,c){var u,a=r(n),s=o(a.length),f=i(c,s);if(t&&e!=e){for(;s>f;)if((u=a[f++])!=u)return!0}else for(;s>f;f++)if((t||f in a)&&a[f]===e)return t||f||0;return!t&&-1}}},function(t,n,e){var r=e(23),o=Math.max,i=Math.min;t.exports=function(t,n){return(t=r(t))<0?o(t+n,0):i(t,n)}},function(t,n,e){var r=e(3).document;t.exports=r&&r.documentElement},function(t,n,e){var r=e(21),o=e(64),i=e(34)("IE_PROTO"),c=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?c:null}},function(t,n,e){var r=e(17).f,o=Function.prototype,i=/^\s*function ([^ (]*)/;"name"in o||e(11)&&r(o,"name",{configurable:!0,get:function(){try{return(""+this).match(i)[1]}catch(t){return""}}})},function(t,n,e){t.exports=e(91)},function(t,n,e){e(92);var r=e(1).Object;t.exports=function(t,n,e){return r.defineProperty(t,n,e)}},function(t,n,e){var r=e(13);r(r.S+r.F*!e(6),"Object",{defineProperty:e(5).f})},function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,n){t.exports={}},function(t,n,e){var r=e(5),o=e(15),i=e(26);t.exports=e(6)?Object.defineProperties:function(t,n){o(t);for(var e,c=i(n),u=c.length,a=0;u>a;)r.f(t,e=c[a++],n[e]);return t}},function(t,n,e){var r=e(58);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},function(t,n,e){var r=e(9),o=e(98),i=e(99);t.exports=function(t){return function(n,e,c){var u,a=r(n),s=o(a.length),f=i(c,s);if(t&&e!=e){for(;s>f;)if((u=a[f++])!=u)return!0}else for(;s>f;f++)if((t||f in a)&&a[f]===e)return t||f||0;return!t&&-1}}},function(t,n,e){var r=e(41),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,n,e){var r=e(41),o=Math.max,i=Math.min;t.exports=function(t,n){return(t=r(t))<0?o(t+n,0):i(t,n)}},function(t,n,e){var r=e(2).document;t.exports=r&&r.documentElement},function(t,n,e){"use strict";var r=e(2),o=e(8),i=e(6),c=e(13),u=e(66),a=e(102).KEY,s=e(12),f=e(36),l=e(59),p=e(22),v=e(16),h=e(44),y=e(60),d=e(103),g=e(104),b=e(15),m=e(10),x=e(9),w=e(35),S=e(24),O=e(56),_=e(105),j=e(63),P=e(5),k=e(26),E=j.f,T=P.f,L=_.f,M=r.Symbol,C=r.JSON,A=C&&C.stringify,I=v("_hidden"),N=v("toPrimitive"),R={}.propertyIsEnumerable,F=f("symbol-registry"),D=f("symbols"),B=f("op-symbols"),G=Object.prototype,V="function"==typeof M,z=r.QObject,H=!z||!z.prototype||!z.prototype.findChild,U=i&&s(function(){return 7!=O(T({},"a",{get:function(){return T(this,"a",{value:7}).a}})).a})?function(t,n,e){var r=E(G,n);r&&delete G[n],T(t,n,e),r&&t!==G&&T(G,n,r)}:T,W=function(t){var n=D[t]=O(M.prototype);return n._k=t,n},K=V&&"symbol"==typeof M.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof M},J=function(t,n,e){return t===G&&J(B,n,e),b(t),n=w(n,!0),b(e),o(D,n)?(e.enumerable?(o(t,I)&&t[I][n]&&(t[I][n]=!1),e=O(e,{enumerable:S(0,!1)})):(o(t,I)||T(t,I,S(1,{})),t[I][n]=!0),U(t,n,e)):T(t,n,e)},$=function(t,n){b(t);for(var e,r=d(n=x(n)),o=0,i=r.length;i>o;)J(t,e=r[o++],n[e]);return t},Y=function(t){var n=R.call(this,t=w(t,!0));return!(this===G&&o(D,t)&&!o(B,t))&&(!(n||!o(this,t)||!o(D,t)||o(this,I)&&this[I][t])||n)},Q=function(t,n){if(t=x(t),n=w(n,!0),t!==G||!o(D,n)||o(B,n)){var e=E(t,n);return!e||!o(D,n)||o(t,I)&&t[I][n]||(e.enumerable=!0),e}},q=function(t){for(var n,e=L(x(t)),r=[],i=0;e.length>i;)o(D,n=e[i++])||n==I||n==a||r.push(n);return r},X=function(t){for(var n,e=t===G,r=L(e?B:x(t)),i=[],c=0;r.length>c;)!o(D,n=r[c++])||e&&!o(G,n)||i.push(D[n]);return i};V||(u((M=function(){if(this instanceof M)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),n=function(e){this===G&&n.call(B,e),o(this,I)&&o(this[I],t)&&(this[I][t]=!1),U(this,t,S(1,e))};return i&&H&&U(G,t,{configurable:!0,set:n}),W(t)}).prototype,"toString",function(){return this._k}),j.f=Q,P.f=J,e(62).f=_.f=q,e(38).f=Y,e(61).f=X,i&&!e(25)&&u(G,"propertyIsEnumerable",Y,!0),h.f=function(t){return W(v(t))}),c(c.G+c.W+c.F*!V,{Symbol:M});for(var Z="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),tt=0;Z.length>tt;)v(Z[tt++]);for(var nt=k(v.store),et=0;nt.length>et;)y(nt[et++]);c(c.S+c.F*!V,"Symbol",{for:function(t){return o(F,t+="")?F[t]:F[t]=M(t)},keyFor:function(t){if(!K(t))throw TypeError(t+" is not a symbol!");for(var n in F)if(F[n]===t)return n},useSetter:function(){H=!0},useSimple:function(){H=!1}}),c(c.S+c.F*!V,"Object",{create:function(t,n){return void 0===n?O(t):$(O(t),n)},defineProperty:J,defineProperties:$,getOwnPropertyDescriptor:Q,getOwnPropertyNames:q,getOwnPropertySymbols:X}),C&&c(c.S+c.F*(!V||s(function(){var t=M();return"[null]"!=A([t])||"{}"!=A({a:t})||"{}"!=A(Object(t))})),"JSON",{stringify:function(t){for(var n,e,r=[t],o=1;arguments.length>o;)r.push(arguments[o++]);if(e=n=r[1],(m(n)||void 0!==t)&&!K(t))return g(n)||(n=function(t,n){if("function"==typeof e&&(n=e.call(this,t,n)),!K(n))return n}),r[1]=n,A.apply(C,r)}}),M.prototype[N]||e(14)(M.prototype,N,M.prototype.valueOf),l(M,"Symbol"),l(Math,"Math",!0),l(r.JSON,"JSON",!0)},function(t,n,e){var r=e(22)("meta"),o=e(10),i=e(8),c=e(5).f,u=0,a=Object.isExtensible||function(){return!0},s=!e(12)(function(){return a(Object.preventExtensions({}))}),f=function(t){c(t,r,{value:{i:"O"+ ++u,w:{}}})},l=t.exports={KEY:r,NEED:!1,fastKey:function(t,n){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,r)){if(!a(t))return"F";if(!n)return"E";f(t)}return t[r].i},getWeak:function(t,n){if(!i(t,r)){if(!a(t))return!0;if(!n)return!1;f(t)}return t[r].w},onFreeze:function(t){return s&&l.NEED&&a(t)&&!i(t,r)&&f(t),t}}},function(t,n,e){var r=e(26),o=e(61),i=e(38);t.exports=function(t){var n=r(t),e=o.f;if(e)for(var c,u=e(t),a=i.f,s=0;u.length>s;)a.call(t,c=u[s++])&&n.push(c);return n}},function(t,n,e){var r=e(58);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,n,e){var r=e(9),o=e(62).f,i={}.toString,c="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return c&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return c.slice()}}(t):o(r(t))}},function(t,n,e){"use strict";var r=e(107),o=e(7),i=e(108),c=e(69),u=e(40),a=e(70),s=e(39),f=Math.min,l=[].push,p=!!function(){try{return new RegExp("x","y")}catch(t){}}();e(71)("split",2,function(t,n,e,v){var h;return h="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var o=String(this);if(void 0===t&&0===n)return[];if(!r(t))return e.call(o,t,n);for(var i,c,u,a=[],f=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),p=0,v=void 0===n?4294967295:n>>>0,h=new RegExp(t.source,f+"g");(i=s.call(h,o))&&!((c=h.lastIndex)>p&&(a.push(o.slice(p,i.index)),i.length>1&&i.index<o.length&&l.apply(a,i.slice(1)),u=i[0].length,p=c,a.length>=v));)h.lastIndex===i.index&&h.lastIndex++;return p===o.length?!u&&h.test("")||a.push(""):a.push(o.slice(p)),a.length>v?a.slice(0,v):a}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,r){var o=t(this),i=null==e?void 0:e[n];return void 0!==i?i.call(e,o,r):h.call(String(o),e,r)},function(t,n){var r=v(h,t,this,n,h!==e);if(r.done)return r.value;var s=o(t),l=String(this),y=i(s,RegExp),d=s.unicode,g=(s.ignoreCase?"i":"")+(s.multiline?"m":"")+(s.unicode?"u":"")+(p?"y":"g"),b=new y(p?s:"^(?:"+s.source+")",g),m=void 0===n?4294967295:n>>>0;if(0===m)return[];if(0===l.length)return null===a(b,l)?[l]:[];for(var x=0,w=0,S=[];w<l.length;){b.lastIndex=p?w:0;var O,_=a(b,p?l:l.slice(w));if(null===_||(O=f(u(b.lastIndex+(p?0:w)),l.length))===x)w=c(l,w,d);else{if(S.push(l.slice(x,w)),S.length===m)return S;for(var j=1;j<=_.length-1;j++)if(S.push(_[j]),S.length===m)return S;w=x=O}}return S.push(l.slice(x)),S}]})},function(t,n,e){var r=e(18),o=e(33),i=e(0)("match");t.exports=function(t){var n;return r(t)&&(void 0!==(n=t[i])?!!n:"RegExp"==o(t))}},function(t,n,e){var r=e(7),o=e(50),i=e(0)("species");t.exports=function(t,n){var e,c=r(t).constructor;return void 0===c||null==(e=r(c)[i])?n:o(e)}},function(t,n,e){var r=e(23),o=e(19);t.exports=function(t){return function(n,e){var i,c,u=String(o(n)),a=r(e),s=u.length;return a<0||a>=s?t?"":void 0:(i=u.charCodeAt(a))<55296||i>56319||a+1===s||(c=u.charCodeAt(a+1))<56320||c>57343?t?u.charAt(a):i:t?u.slice(a,a+2):c-56320+(i-55296<<10)+65536}}},function(t,n,e){var r=e(33),o=e(0)("toStringTag"),i="Arguments"==r(function(){return arguments}());t.exports=function(t){var n,e,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(e=function(t,n){try{return t[n]}catch(t){}}(n=Object(t),o))?e:i?r(n):"Object"==(c=r(n))&&"function"==typeof n.callee?"Arguments":c}},function(t,n,e){"use strict";var r=e(7);t.exports=function(){var t=r(this),n="";return t.global&&(n+="g"),t.ignoreCase&&(n+="i"),t.multiline&&(n+="m"),t.unicode&&(n+="u"),t.sticky&&(n+="y"),n}},function(t,n,e){"use strict";var r=e(39);e(49)({target:"RegExp",proto:!0,forced:r!==/./.exec},{exec:r})},,function(t,n,e){"use strict";var r=e(25),o=e(13),i=e(66),c=e(14),u=e(94),a=e(128),s=e(59),f=e(115),l=e(16)("iterator"),p=!([].keys&&"next"in[].keys()),v=function(){return this};t.exports=function(t,n,e,h,y,d,g){a(e,n,h);var b,m,x,w=function(t){if(!p&&t in j)return j[t];switch(t){case"keys":case"values":return function(){return new e(this,t)}}return function(){return new e(this,t)}},S=n+" Iterator",O="values"==y,_=!1,j=t.prototype,P=j[l]||j["@@iterator"]||y&&j[y],k=P||w(y),E=y?O?w("entries"):k:void 0,T="Array"==n&&j.entries||P;if(T&&(x=f(T.call(new t)))!==Object.prototype&&x.next&&(s(x,S,!0),r||"function"==typeof x[l]||c(x,l,v)),O&&P&&"values"!==P.name&&(_=!0,k=function(){return P.call(this)}),r&&!g||!p&&!_&&j[l]||c(j,l,k),u[n]=k,u[S]=v,y)if(b={values:O?k:w("values"),keys:d?k:w("keys"),entries:E},g)for(m in b)m in j||i(j,m,b[m]);else o(o.P+o.F*(p||_),n,b);return b}},function(t,n,e){var r=e(8),o=e(67),i=e(43)("IE_PROTO"),c=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?c:null}},function(t,n,e){t.exports=e(141)},function(t,n){t.exports=function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}},function(t,n,e){var r=e(90);function o(t,n){for(var e=0;e<n.length;e++){var o=n[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),r(t,o.key,o)}}t.exports=function(t,n,e){return n&&o(t.prototype,n),e&&o(t,e),t}},function(t,n,e){var r=e(123),o=e(27);t.exports=function(t,n){return!n||"object"!==r(n)&&"function"!=typeof n?o(t):n}},function(t,n,e){var r=e(138),o=e(116);function i(n){return t.exports=i=o?r:function(t){return t.__proto__||r(t)},i(n)}t.exports=i},function(t,n,e){var r=e(144),o=e(147);t.exports=function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=r(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&o(t,n)}},function(t,n,e){"use strict";e.r(n);e(72),e(89);var r=e(117),o=e.n(r),i=e(118),c=e.n(i),u=e(119),a=e.n(u),s=e(120),f=e.n(s),l=e(121),p=e.n(l),v=e(27),h=e.n(v);e(106);!function(t,n,e){if(t){var r=t.element,i=r.RawHTML,u=r.Component,s=r.createElement,l=t.i18n,v=l.__,y=l._x,d=t.components,g=d.Path,b=d.Rect,m=d.SVG,x=t.keycodes,w=x.BACKSPACE,S=x.DELETE,O=x.F10,_=t.hooks.addFilter,j=t.data,P=j.dispatch,k=j.select,E=t.editPost.PluginBlockSettingsMenuItem,T=t.plugins.registerPlugin,L=t.richText,M=L.join,C=(L.split,L.create),A=L.toHTMLString,I=(n.get,n.assign),N=t.blocks,R=N.registerBlockType,F=N.setDefaultBlockName,D=(N.setFreeformContentHandlerName,N.createBlock),B=N.getBlockContent,G=N.rawHandler;if(e.hybridMode){var V="core/freeform";e.classicParagraph&&(V="tadv/classic-paragraph"),_("blocks.registerBlockType","tadv-reregister-blocks",function(t,n){return"core/freeform"===n&&(t=W,setTimeout(function(){F(V)},0)),t})}var z,H=function(n){function e(t){var n;return o()(this,e),(n=a()(this,f()(e).call(this,t))).initialize=n.initialize.bind(h()(h()(n))),n.onSetup=n.onSetup.bind(h()(h()(n))),n.focus=n.focus.bind(h()(h()(n))),n}return p()(e,n),c()(e,[{key:"componentDidMount",value:function(){var t=window.wpEditorL10n.tinymce,n=t.baseURL,e=t.suffix;window.tinymce.EditorManager.overrideDefaults({base_url:n,suffix:e}),"complete"===document.readyState?this.initialize():window.addEventListener("DOMContentLoaded",this.initialize)}},{key:"componentWillUnmount",value:function(){window.addEventListener("DOMContentLoaded",this.initialize),t.oldEditor.remove("editor-".concat(this.props.clientId))}},{key:"componentDidUpdate",value:function(t){var n=this.props,e=n.clientId,r=n.isSelected,o=n.attributes.content,i=window.tinymce.get("editor-".concat(e));t.attributes.content!==o&&this.content!==o&&i.setContent(o||""),!r&&i.initialized&&i.fire("blur",{wpBlockDidUpdate:!0})}},{key:"initialize",value:function(){var n=this.props,e=n.clientId,r=n.setAttributes,o=window.wpEditorL10n.tinymce.settings;t.oldEditor.initialize("editor-".concat(e),{tinymce:I({},o,{inline:!0,content_css:!1,fixed_toolbar_container:"#toolbar-".concat(e),setup:this.onSetup})}),r({id:e})}},{key:"onSetup",value:function(t){var n,e=this,r=this.props,o=r.attributes.content,i=r.setAttributes;this.ref;this.editor=t,o&&t.on("loadContent",function(){return t.setContent(o)}),t.on("blur",function(r){if(!r.wpBlockDidUpdate){n=t.selection.getBookmark(2,!0),e.content=t.getContent();var o=e.props.isSelected;return i({content:e.content}),t.once("focus",function(){n&&t.selection.moveToBookmark(n)}),!o&&void 0}}),t.on("mousedown touchstart",function(){n=null}),t.on("keydown",function(n){n.keyCode!==w&&n.keyCode!==S||!function(t){var n=t.getBody();return!(n.childNodes.length>1)&&(0===n.childNodes.length||!(n.childNodes[0].childNodes.length>1)&&/^\n?$/.test(n.innerText||n.textContent))}(t)||(e.props.onReplace([]),n.preventDefault(),n.stopImmediatePropagation()),n.altKey&&n.keyCode===O&&n.stopPropagation()}),t.on("init",function(){var t=e.editor.getBody();document.activeElement===t&&(t.blur(),e.editor.focus())})}},{key:"focus",value:function(){this.editor&&this.editor.focus()}},{key:"onToolbarKeyDown",value:function(t){t.stopPropagation(),t.nativeEvent.stopImmediatePropagation()}},{key:"render",value:function(){var t=this,n=this.props,e=n.clientId,r=n.name;return[s("div",{key:"toolbar",id:"toolbar-".concat(e),ref:function(n){return t.ref=n},className:"block-library-classic__toolbar",onClick:this.focus,"data-placeholder":J(r),onKeyDown:this.onToolbarKeyDown}),s("div",{key:"editor",id:"editor-".concat(e),className:"wp-block-freeform block-library-rich-text__tinymce"})]}}]),e}(u),U={keywords:[v("text")],category:"common",icon:"welcome-widgets-menus",attributes:{content:{type:"string",source:"html"}},merge:function(t,n){return{content:t.content+n.content}},edit:H,save:function(t){var n=t.attributes;return s(i,null,n.content)}},W=I({},U,{title:J("core/freeform"),name:"core/freeform",description:v("Use the classic WordPress editor."),supports:{className:!1,customClassName:!1,reusable:!1},icon:s(m,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},s(g,{d:"M0,0h24v24H0V0z M0,0h24v24H0V0z",fill:"none"}),s(g,{d:"m20 7v10h-16v-10h16m0-2h-16c-1.1 0-1.99 0.9-1.99 2l-0.01 10c0 1.1 0.9 2 2 2h16c1.1 0 2-0.9 2-2v-10c0-1.1-0.9-2-2-2z"}),s(b,{x:"11",y:"8",width:"2",height:"2"}),s(b,{x:"11",y:"11",width:"2",height:"2"}),s(b,{x:"8",y:"8",width:"2",height:"2"}),s(b,{x:"8",y:"11",width:"2",height:"2"}),s(b,{x:"5",y:"11",width:"2",height:"2"}),s(b,{x:"5",y:"8",width:"2",height:"2"}),s(b,{x:"8",y:"14",width:"8",height:"2"}),s(b,{x:"14",y:"11",width:"2",height:"2"}),s(b,{x:"14",y:"8",width:"2",height:"2"}),s(b,{x:"17",y:"11",width:"2",height:"2"}),s(b,{x:"17",y:"8",width:"2",height:"2"}))}),K=I({},U,{title:J("tadv/classic-paragraph"),name:"tadv/classic-paragraph",description:e.description,supports:{className:!1,customClassName:!1,reusable:!0},transforms:{from:(z=[],["core/freeform","core/code","core/cover","core/embed","core/gallery","core/heading","core/html","core/image","core/list","core/media-text","core/preformatted","core/nextpage","core/more","core/quote","core/pullquote","core/separator","core/subhead","core/table","core/verse","core/video","core/audio"].forEach(function(t){z.push({type:"block",blocks:[t],transform:function(n){var e=B(D(t,n));return e&&!/<\/div>\s*/.test(e)||(e+='<p><br data-mce-bogus="1"></p>'),D("tadv/classic-paragraph",{content:e})}})}),z.push({type:"raw",priority:21,isMatch:function(){return!0}},{type:"block",isMultiBlock:!0,blocks:["core/paragraph"],transform:function(t){var n=A({value:M(t.map(function(t){var n=t.content;return C({html:n})}),"\u2028"),multilineTag:"p"});return D("tadv/classic-paragraph",{content:n})}}),z),to:[{type:"block",blocks:["core/freeform"],transform:function(t){return D("core/freeform",t)}},{type:"block",blocks:["core/html"],transform:function(t){return D("core/html",t)}}]}});e.classicParagraph&&(R("tadv/classic-paragraph",K),T("tadv-add-submenu",{render:function(){return s(E,{allowedBlocks:["tadv/classic-paragraph"],icon:"screenoptions",label:v("Convert to Blocks"),onClick:function(){var t=k("core/editor").getSelectedBlock();t&&P("core/editor").replaceBlocks(t.clientId,G({HTML:t.attributes.content}))},small:null,role:"menuitem"})}}))}function J(t){return"core/freeform"===t?y("Classic","block title"):e.classicParagraphTitle}}(window.wp,window.lodash,window.tadvBlockRegister)},function(t,n,e){var r=e(124),o=e(133);function i(t){return(i="function"==typeof o&&"symbol"==typeof r?function(t){return typeof t}:function(t){return t&&"function"==typeof o&&t.constructor===o&&t!==o.prototype?"symbol":typeof t})(t)}function c(n){return"function"==typeof o&&"symbol"===i(r)?t.exports=c=function(t){return i(t)}:t.exports=c=function(t){return t&&"function"==typeof o&&t.constructor===o&&t!==o.prototype?"symbol":i(t)},c(n)}t.exports=c},function(t,n,e){t.exports=e(125)},function(t,n,e){e(126),e(129),t.exports=e(44).f("iterator")},function(t,n,e){"use strict";var r=e(127)(!0);e(114)(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,n=this._t,e=this._i;return e>=n.length?{value:void 0,done:!0}:(t=r(n,e),this._i+=t.length,{value:t,done:!1})})},function(t,n,e){var r=e(41),o=e(42);t.exports=function(t){return function(n,e){var i,c,u=String(o(n)),a=r(e),s=u.length;return a<0||a>=s?t?"":void 0:(i=u.charCodeAt(a))<55296||i>56319||a+1===s||(c=u.charCodeAt(a+1))<56320||c>57343?t?u.charAt(a):i:t?u.slice(a,a+2):c-56320+(i-55296<<10)+65536}}},function(t,n,e){"use strict";var r=e(56),o=e(24),i=e(59),c={};e(14)(c,e(16)("iterator"),function(){return this}),t.exports=function(t,n,e){t.prototype=r(c,{next:o(1,e)}),i(t,n+" Iterator")}},function(t,n,e){e(130);for(var r=e(2),o=e(14),i=e(94),c=e(16)("toStringTag"),u="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),a=0;a<u.length;a++){var s=u[a],f=r[s],l=f&&f.prototype;l&&!l[c]&&o(l,c,s),i[s]=i.Array}},function(t,n,e){"use strict";var r=e(131),o=e(132),i=e(94),c=e(9);t.exports=e(114)(Array,"Array",function(t,n){this._t=c(t),this._i=0,this._k=n},function(){var t=this._t,n=this._k,e=this._i++;return!t||e>=t.length?(this._t=void 0,o(1)):o(0,"keys"==n?e:"values"==n?t[e]:[e,t[e]])},"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},function(t,n){t.exports=function(){}},function(t,n){t.exports=function(t,n){return{value:n,done:!!t}}},function(t,n,e){t.exports=e(134)},function(t,n,e){e(101),e(135),e(136),e(137),t.exports=e(1).Symbol},function(t,n){},function(t,n,e){e(60)("asyncIterator")},function(t,n,e){e(60)("observable")},function(t,n,e){t.exports=e(139)},function(t,n,e){e(140),t.exports=e(1).Object.getPrototypeOf},function(t,n,e){var r=e(67),o=e(115);e(68)("getPrototypeOf",function(){return function(t){return o(r(t))}})},function(t,n,e){e(142),t.exports=e(1).Object.setPrototypeOf},function(t,n,e){var r=e(13);r(r.S,"Object",{setPrototypeOf:e(143).set})},function(t,n,e){var r=e(10),o=e(15),i=function(t,n){if(o(t),!r(n)&&null!==n)throw TypeError(n+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,n,r){try{(r=e(65)(Function.call,e(63).f(Object.prototype,"__proto__").set,2))(t,[]),n=!(t instanceof Array)}catch(t){n=!0}return function(t,e){return i(t,e),n?t.__proto__=e:r(t,e),t}}({},!1):void 0),check:i}},function(t,n,e){t.exports=e(145)},function(t,n,e){e(146);var r=e(1).Object;t.exports=function(t,n){return r.create(t,n)}},function(t,n,e){var r=e(13);r(r.S,"Object",{create:e(56)})},function(t,n,e){var r=e(116);function o(n,e){return t.exports=o=r||function(t,n){return t.__proto__=n,t},o(n,e)}t.exports=o}]);
dist/richtext-buttons.css ADDED
@@ -0,0 +1 @@
 
1
+ .tadv-buttons-panel .components-toolbar__control.tadv-icon-button{width:38px;height:38px}.tadv-buttons-panel .components-toolbar__control.tadv-icon-button>svg{height:32px;width:32px}.tadv-buttons-panel .components-toolbar{border:none;display:block}.tadv-buttons-panel div.components-toolbar>div{display:inline-block;margin:0}.tadv-icon-button-mark svg{background-color:#fff9c0;background-clip:content-box}
dist/richtext-buttons.js ADDED
@@ -0,0 +1 @@
 
1
+ !function(t){var n={};function r(e){if(n[e])return n[e].exports;var o=n[e]={i:e,l:!1,exports:{}};return t[e].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=t,r.c=n,r.d=function(t,n,e){r.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:e})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,n){if(1&n&&(t=r(t)),8&n)return t;if(4&n&&"object"==typeof t&&t&&t.__esModule)return t;var e=Object.create(null);if(r.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:t}),2&n&&"string"!=typeof t)for(var o in t)r.d(e,o,function(n){return t[n]}.bind(null,o));return e},r.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(n,"a",n),n},r.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},r.p="",r(r.s=158)}([function(t,n,r){var e=r(45)("wks"),o=r(29),i=r(3).Symbol,c="function"==typeof i;(t.exports=function(t){return e[t]||(e[t]=c&&i[t]||(c?i:o)("Symbol."+t))}).store=e},function(t,n){var r=t.exports={version:"2.6.1"};"number"==typeof __e&&(__e=r)},function(t,n){var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},function(t,n){var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},function(t,n,r){var e=r(17),o=r(48);t.exports=r(11)?function(t,n,r){return e.f(t,n,o(1,r))}:function(t,n,r){return t[n]=r,t}},function(t,n,r){var e=r(15),o=r(54),i=r(35),c=Object.defineProperty;n.f=r(6)?Object.defineProperty:function(t,n,r){if(e(t),n=i(n,!0),e(r),o)try{return c(t,n,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[n]=r.value),t}},function(t,n,r){t.exports=!r(12)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,n,r){var e=r(18);t.exports=function(t){if(!e(t))throw TypeError(t+" is not an object!");return t}},function(t,n){var r={}.hasOwnProperty;t.exports=function(t,n){return r.call(t,n)}},function(t,n,r){var e=r(96),o=r(42);t.exports=function(t){return e(o(t))}},function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,n,r){t.exports=!r(30)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,n,r){var e=r(2),o=r(1),i=r(65),c=r(14),u=r(8),a=function(t,n,r){var l,s,f,p=t&a.F,v=t&a.G,d=t&a.S,h=t&a.P,y=t&a.B,g=t&a.W,m=v?o:o[n]||(o[n]={}),b=m.prototype,x=v?e:d?e[n]:(e[n]||{}).prototype;for(l in v&&(r=n),r)(s=!p&&x&&void 0!==x[l])&&u(m,l)||(f=s?x[l]:r[l],m[l]=v&&"function"!=typeof x[l]?r[l]:y&&s?i(f,e):g&&x[l]==f?function(t){var n=function(n,r,e){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(n);case 2:return new t(n,r)}return new t(n,r,e)}return t.apply(this,arguments)};return n.prototype=t.prototype,n}(f):h&&"function"==typeof f?i(Function.call,f):f,h&&((m.virtual||(m.virtual={}))[l]=f,t&a.R&&b&&!b[l]&&c(b,l,f)))};a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,t.exports=a},function(t,n,r){var e=r(5),o=r(24);t.exports=r(6)?function(t,n,r){return e.f(t,n,o(1,r))}:function(t,n,r){return t[n]=r,t}},function(t,n,r){var e=r(10);t.exports=function(t){if(!e(t))throw TypeError(t+" is not an object!");return t}},function(t,n,r){var e=r(36)("wks"),o=r(22),i=r(2).Symbol,c="function"==typeof i;(t.exports=function(t){return e[t]||(e[t]=c&&i[t]||(c?i:o)("Symbol."+t))}).store=e},function(t,n,r){var e=r(7),o=r(75),i=r(76),c=Object.defineProperty;n.f=r(11)?Object.defineProperty:function(t,n,r){if(e(t),n=i(n,!0),e(r),o)try{return c(t,n,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[n]=r.value),t}},function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,n){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,n,r){var e=r(3),o=r(4),i=r(21),c=r(29)("src"),u=Function.toString,a=(""+u).split("toString");r(28).inspectSource=function(t){return u.call(t)},(t.exports=function(t,n,r,u){var l="function"==typeof r;l&&(i(r,"name")||o(r,"name",n)),t[n]!==r&&(l&&(i(r,c)||o(r,c,t[n]?""+t[n]:a.join(String(n)))),t===e?t[n]=r:u?t[n]?t[n]=r:o(t,n,r):(delete t[n],o(t,n,r)))})(Function.prototype,"toString",function(){return"function"==typeof this&&this[c]||u.call(this)})},function(t,n){var r={}.hasOwnProperty;t.exports=function(t,n){return r.call(t,n)}},function(t,n){var r=0,e=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+e).toString(36))}},function(t,n){var r=Math.ceil,e=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?e:r)(t)}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n){t.exports=!0},function(t,n,r){var e=r(57),o=r(37);t.exports=Object.keys||function(t){return e(t,o)}},,function(t,n){var r=t.exports={version:"2.6.1"};"number"==typeof __e&&(__e=r)},function(t,n){var r=0,e=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+e).toString(36))}},function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,n){t.exports={}},function(t,n,r){var e=r(78),o=r(19);t.exports=function(t){return e(o(t))}},function(t,n){var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},function(t,n,r){var e=r(45)("keys"),o=r(29);t.exports=function(t){return e[t]||(e[t]=o(t))}},function(t,n,r){var e=r(10);t.exports=function(t,n){if(!e(t))return t;var r,o;if(n&&"function"==typeof(r=t.toString)&&!e(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!e(o=r.call(t)))return o;if(!n&&"function"==typeof(r=t.toString)&&!e(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,n,r){var e=r(1),o=r(2),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,n){return i[t]||(i[t]=void 0!==n?n:{})})("versions",[]).push({version:e.version,mode:r(25)?"pure":"global",copyright:"© 2018 Denis Pushkarev (zloirock.ru)"})},function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,n){n.f={}.propertyIsEnumerable},function(t,n,r){"use strict";var e,o,i=r(111),c=RegExp.prototype.exec,u=String.prototype.replace,a=c,l=(e=/a/,o=/b*/g,c.call(e,"a"),c.call(o,"a"),0!==e.lastIndex||0!==o.lastIndex),s=void 0!==/()??/.exec("")[1];(l||s)&&(a=function(t){var n,r,e,o,a=this;return s&&(r=new RegExp("^"+a.source+"$(?!\\s)",i.call(a))),l&&(n=a.lastIndex),e=c.call(a,t),l&&e&&(a.lastIndex=a.global?e.index+e[0].length:n),s&&e&&e.length>1&&u.call(e[0],r,function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(e[o]=void 0)}),e}),t.exports=a},function(t,n,r){var e=r(23),o=Math.min;t.exports=function(t){return t>0?o(e(t),9007199254740991):0}},function(t,n){var r=Math.ceil,e=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?e:r)(t)}},function(t,n){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,n,r){var e=r(36)("keys"),o=r(22);t.exports=function(t){return e[t]||(e[t]=o(t))}},function(t,n,r){n.f=r(16)},function(t,n,r){var e=r(28),o=r(3),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,n){return i[t]||(i[t]=void 0!==n?n:{})})("versions",[]).push({version:e.version,mode:r(46)?"pure":"global",copyright:"© 2018 Denis Pushkarev (zloirock.ru)"})},function(t,n){t.exports=!1},function(t,n,r){var e=r(18),o=r(3).document,i=e(o)&&e(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n,r){var e=r(3),o=r(28),i=r(4),c=r(20),u=r(80),a=function(t,n,r){var l,s,f,p,v=t&a.F,d=t&a.G,h=t&a.S,y=t&a.P,g=t&a.B,m=d?e:h?e[n]||(e[n]={}):(e[n]||{}).prototype,b=d?o:o[n]||(o[n]={}),x=b.prototype||(b.prototype={});for(l in d&&(r=n),r)f=((s=!v&&m&&void 0!==m[l])?m:r)[l],p=g&&s?u(f,e):y&&"function"==typeof f?u(Function.call,f):f,m&&c(m,l,f,t&a.U),b[l]!=f&&i(b,l,p),y&&x[l]!=f&&(x[l]=f)};e.core=o,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,t.exports=a},function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,n,r){var e=r(84),o=r(52);t.exports=Object.keys||function(t){return e(t,o)}},function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,n,r){var e=r(17).f,o=r(21),i=r(0)("toStringTag");t.exports=function(t,n,r){t&&!o(t=r?t:t.prototype,i)&&e(t,i,{configurable:!0,value:n})}},function(t,n,r){t.exports=!r(6)&&!r(12)(function(){return 7!=Object.defineProperty(r(55)("div"),"a",{get:function(){return 7}}).a})},function(t,n,r){var e=r(10),o=r(2).document,i=e(o)&&e(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,n,r){var e=r(15),o=r(95),i=r(37),c=r(43)("IE_PROTO"),u=function(){},a=function(){var t,n=r(55)("iframe"),e=i.length;for(n.style.display="none",r(100).appendChild(n),n.src="javascript:",(t=n.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),a=t.F;e--;)delete a.prototype[i[e]];return a()};t.exports=Object.create||function(t,n){var r;return null!==t?(u.prototype=e(t),r=new u,u.prototype=null,r[c]=t):r=a(),void 0===n?r:o(r,n)}},function(t,n,r){var e=r(8),o=r(9),i=r(97)(!1),c=r(43)("IE_PROTO");t.exports=function(t,n){var r,u=o(t),a=0,l=[];for(r in u)r!=c&&e(u,r)&&l.push(r);for(;n.length>a;)e(u,r=n[a++])&&(~i(l,r)||l.push(r));return l}},function(t,n){var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},function(t,n,r){var e=r(5).f,o=r(8),i=r(16)("toStringTag");t.exports=function(t,n,r){t&&!o(t=r?t:t.prototype,i)&&e(t,i,{configurable:!0,value:n})}},function(t,n,r){var e=r(2),o=r(1),i=r(25),c=r(44),u=r(5).f;t.exports=function(t){var n=o.Symbol||(o.Symbol=i?{}:e.Symbol||{});"_"==t.charAt(0)||t in n||u(n,t,{value:c.f(t)})}},function(t,n){n.f=Object.getOwnPropertySymbols},function(t,n,r){var e=r(57),o=r(37).concat("length","prototype");n.f=Object.getOwnPropertyNames||function(t){return e(t,o)}},function(t,n,r){var e=r(38),o=r(24),i=r(9),c=r(35),u=r(8),a=r(54),l=Object.getOwnPropertyDescriptor;n.f=r(6)?l:function(t,n){if(t=i(t),n=c(n,!0),a)try{return l(t,n)}catch(t){}if(u(t,n))return o(!e.f.call(t,n),t[n])}},function(t,n,r){var e=r(19);t.exports=function(t){return Object(e(t))}},function(t,n,r){var e=r(93);t.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,o){return t.call(n,r,e,o)}}return function(){return t.apply(n,arguments)}}},function(t,n,r){t.exports=r(14)},function(t,n,r){var e=r(42);t.exports=function(t){return Object(e(t))}},function(t,n,r){var e=r(13),o=r(1),i=r(12);t.exports=function(t,n){var r=(o.Object||{})[t]||Object[t],c={};c[t]=n(r),e(e.S+e.F*i(function(){r(1)}),"Object",c)}},function(t,n,r){"use strict";var e=r(109)(!0);t.exports=function(t,n,r){return n+(r?e(t,n).length:1)}},function(t,n,r){"use strict";var e=r(110),o=RegExp.prototype.exec;t.exports=function(t,n){var r=t.exec;if("function"==typeof r){var i=r.call(t,n);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==e(t))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(t,n)}},function(t,n,r){"use strict";r(112);var e=r(20),o=r(4),i=r(30),c=r(19),u=r(0),a=r(39),l=u("species"),s=!i(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")}),f=function(){var t=/(?:)/,n=t.exec;t.exec=function(){return n.apply(this,arguments)};var r="ab".split(t);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();t.exports=function(t,n,r){var p=u(t),v=!i(function(){var n={};return n[p]=function(){return 7},7!=""[t](n)}),d=v?!i(function(){var n=!1,r=/a/;return r.exec=function(){return n=!0,null},"split"===t&&(r.constructor={},r.constructor[l]=function(){return r}),r[p](""),!n}):void 0;if(!v||!d||"replace"===t&&!s||"split"===t&&!f){var h=/./[p],y=r(c,p,""[t],function(t,n,r,e,o){return n.exec===a?v&&!o?{done:!0,value:h.call(n,r,e)}:{done:!0,value:t.call(r,n,e)}:{done:!1}}),g=y[0],m=y[1];e(String.prototype,t,g),o(RegExp.prototype,p,2==n?function(t,n){return m.call(t,this,n)}:function(t){return m.call(t,this)})}}},function(t,n,r){for(var e=r(73),o=r(51),i=r(20),c=r(3),u=r(4),a=r(31),l=r(0),s=l("iterator"),f=l("toStringTag"),p=a.Array,v={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},d=o(v),h=0;h<d.length;h++){var y,g=d[h],m=v[g],b=c[g],x=b&&b.prototype;if(x&&(x[s]||u(x,s,p),x[f]||u(x,f,g),a[g]=p,m))for(y in e)x[y]||i(x,y,e[y],!0)}},function(t,n,r){"use strict";var e=r(74),o=r(77),i=r(31),c=r(32);t.exports=r(79)(Array,"Array",function(t,n){this._t=c(t),this._i=0,this._k=n},function(){var t=this._t,n=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,o(1)):o(0,"keys"==n?r:"values"==n?t[r]:[r,t[r]])},"values"),i.Arguments=i.Array,e("keys"),e("values"),e("entries")},function(t,n,r){var e=r(0)("unscopables"),o=Array.prototype;null==o[e]&&r(4)(o,e,{}),t.exports=function(t){o[e][t]=!0}},function(t,n,r){t.exports=!r(11)&&!r(30)(function(){return 7!=Object.defineProperty(r(47)("div"),"a",{get:function(){return 7}}).a})},function(t,n,r){var e=r(18);t.exports=function(t,n){if(!e(t))return t;var r,o;if(n&&"function"==typeof(r=t.toString)&&!e(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!e(o=r.call(t)))return o;if(!n&&"function"==typeof(r=t.toString)&&!e(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,n){t.exports=function(t,n){return{value:n,done:!!t}}},function(t,n,r){var e=r(33);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==e(t)?t.split(""):Object(t)}},function(t,n,r){"use strict";var e=r(46),o=r(49),i=r(20),c=r(4),u=r(31),a=r(81),l=r(53),s=r(88),f=r(0)("iterator"),p=!([].keys&&"next"in[].keys()),v=function(){return this};t.exports=function(t,n,r,d,h,y,g){a(r,n,d);var m,b,x,w=function(t){if(!p&&t in j)return j[t];switch(t){case"keys":case"values":return function(){return new r(this,t)}}return function(){return new r(this,t)}},S=n+" Iterator",O="values"==h,k=!1,j=t.prototype,C=j[f]||j["@@iterator"]||h&&j[h],P=C||w(h),T=h?O?w("entries"):P:void 0,E="Array"==n&&j.entries||C;if(E&&(x=s(E.call(new t)))!==Object.prototype&&x.next&&(l(x,S,!0),e||"function"==typeof x[f]||c(x,f,v)),O&&C&&"values"!==C.name&&(k=!0,P=function(){return C.call(this)}),e&&!g||!p&&!k&&j[f]||c(j,f,P),u[n]=P,u[S]=v,h)if(m={values:O?P:w("values"),keys:y?P:w("keys"),entries:T},g)for(b in m)b in j||i(j,b,m[b]);else o(o.P+o.F*(p||k),n,m);return m}},function(t,n,r){var e=r(50);t.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,o){return t.call(n,r,e,o)}}return function(){return t.apply(n,arguments)}}},function(t,n,r){"use strict";var e=r(82),o=r(48),i=r(53),c={};r(4)(c,r(0)("iterator"),function(){return this}),t.exports=function(t,n,r){t.prototype=e(c,{next:o(1,r)}),i(t,n+" Iterator")}},function(t,n,r){var e=r(7),o=r(83),i=r(52),c=r(34)("IE_PROTO"),u=function(){},a=function(){var t,n=r(47)("iframe"),e=i.length;for(n.style.display="none",r(87).appendChild(n),n.src="javascript:",(t=n.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),a=t.F;e--;)delete a.prototype[i[e]];return a()};t.exports=Object.create||function(t,n){var r;return null!==t?(u.prototype=e(t),r=new u,u.prototype=null,r[c]=t):r=a(),void 0===n?r:o(r,n)}},function(t,n,r){var e=r(17),o=r(7),i=r(51);t.exports=r(11)?Object.defineProperties:function(t,n){o(t);for(var r,c=i(n),u=c.length,a=0;u>a;)e.f(t,r=c[a++],n[r]);return t}},function(t,n,r){var e=r(21),o=r(32),i=r(85)(!1),c=r(34)("IE_PROTO");t.exports=function(t,n){var r,u=o(t),a=0,l=[];for(r in u)r!=c&&e(u,r)&&l.push(r);for(;n.length>a;)e(u,r=n[a++])&&(~i(l,r)||l.push(r));return l}},function(t,n,r){var e=r(32),o=r(40),i=r(86);t.exports=function(t){return function(n,r,c){var u,a=e(n),l=o(a.length),s=i(c,l);if(t&&r!=r){for(;l>s;)if((u=a[s++])!=u)return!0}else for(;l>s;s++)if((t||s in a)&&a[s]===r)return t||s||0;return!t&&-1}}},function(t,n,r){var e=r(23),o=Math.max,i=Math.min;t.exports=function(t,n){return(t=e(t))<0?o(t+n,0):i(t,n)}},function(t,n,r){var e=r(3).document;t.exports=e&&e.documentElement},function(t,n,r){var e=r(21),o=r(64),i=r(34)("IE_PROTO"),c=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),e(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?c:null}},function(t,n,r){var e=r(17).f,o=Function.prototype,i=/^\s*function ([^ (]*)/;"name"in o||r(11)&&e(o,"name",{configurable:!0,get:function(){try{return(""+this).match(i)[1]}catch(t){return""}}})},function(t,n,r){t.exports=r(91)},function(t,n,r){r(92);var e=r(1).Object;t.exports=function(t,n,r){return e.defineProperty(t,n,r)}},function(t,n,r){var e=r(13);e(e.S+e.F*!r(6),"Object",{defineProperty:r(5).f})},function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},,function(t,n,r){var e=r(5),o=r(15),i=r(26);t.exports=r(6)?Object.defineProperties:function(t,n){o(t);for(var r,c=i(n),u=c.length,a=0;u>a;)e.f(t,r=c[a++],n[r]);return t}},function(t,n,r){var e=r(58);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==e(t)?t.split(""):Object(t)}},function(t,n,r){var e=r(9),o=r(98),i=r(99);t.exports=function(t){return function(n,r,c){var u,a=e(n),l=o(a.length),s=i(c,l);if(t&&r!=r){for(;l>s;)if((u=a[s++])!=u)return!0}else for(;l>s;s++)if((t||s in a)&&a[s]===r)return t||s||0;return!t&&-1}}},function(t,n,r){var e=r(41),o=Math.min;t.exports=function(t){return t>0?o(e(t),9007199254740991):0}},function(t,n,r){var e=r(41),o=Math.max,i=Math.min;t.exports=function(t,n){return(t=e(t))<0?o(t+n,0):i(t,n)}},function(t,n,r){var e=r(2).document;t.exports=e&&e.documentElement},function(t,n,r){"use strict";var e=r(2),o=r(8),i=r(6),c=r(13),u=r(66),a=r(102).KEY,l=r(12),s=r(36),f=r(59),p=r(22),v=r(16),d=r(44),h=r(60),y=r(103),g=r(104),m=r(15),b=r(10),x=r(9),w=r(35),S=r(24),O=r(56),k=r(105),j=r(63),C=r(5),P=r(26),T=j.f,E=C.f,_=k.f,N=e.Symbol,A=e.JSON,F=A&&A.stringify,M=v("_hidden"),L=v("toPrimitive"),R={}.propertyIsEnumerable,I=s("symbol-registry"),B=s("symbols"),U=s("op-symbols"),D=Object.prototype,G="function"==typeof N,z=e.QObject,$=!z||!z.prototype||!z.prototype.findChild,W=i&&l(function(){return 7!=O(E({},"a",{get:function(){return E(this,"a",{value:7}).a}})).a})?function(t,n,r){var e=T(D,n);e&&delete D[n],E(t,n,r),e&&t!==D&&E(D,n,e)}:E,V=function(t){var n=B[t]=O(N.prototype);return n._k=t,n},H=G&&"symbol"==typeof N.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof N},J=function(t,n,r){return t===D&&J(U,n,r),m(t),n=w(n,!0),m(r),o(B,n)?(r.enumerable?(o(t,M)&&t[M][n]&&(t[M][n]=!1),r=O(r,{enumerable:S(0,!1)})):(o(t,M)||E(t,M,S(1,{})),t[M][n]=!0),W(t,n,r)):E(t,n,r)},K=function(t,n){m(t);for(var r,e=y(n=x(n)),o=0,i=e.length;i>o;)J(t,r=e[o++],n[r]);return t},Y=function(t){var n=R.call(this,t=w(t,!0));return!(this===D&&o(B,t)&&!o(U,t))&&(!(n||!o(this,t)||!o(B,t)||o(this,M)&&this[M][t])||n)},Q=function(t,n){if(t=x(t),n=w(n,!0),t!==D||!o(B,n)||o(U,n)){var r=T(t,n);return!r||!o(B,n)||o(t,M)&&t[M][n]||(r.enumerable=!0),r}},X=function(t){for(var n,r=_(x(t)),e=[],i=0;r.length>i;)o(B,n=r[i++])||n==M||n==a||e.push(n);return e},Z=function(t){for(var n,r=t===D,e=_(r?U:x(t)),i=[],c=0;e.length>c;)!o(B,n=e[c++])||r&&!o(D,n)||i.push(B[n]);return i};G||(u((N=function(){if(this instanceof N)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),n=function(r){this===D&&n.call(U,r),o(this,M)&&o(this[M],t)&&(this[M][t]=!1),W(this,t,S(1,r))};return i&&$&&W(D,t,{configurable:!0,set:n}),V(t)}).prototype,"toString",function(){return this._k}),j.f=Q,C.f=J,r(62).f=k.f=X,r(38).f=Y,r(61).f=Z,i&&!r(25)&&u(D,"propertyIsEnumerable",Y,!0),d.f=function(t){return V(v(t))}),c(c.G+c.W+c.F*!G,{Symbol:N});for(var q="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),tt=0;q.length>tt;)v(q[tt++]);for(var nt=P(v.store),rt=0;nt.length>rt;)h(nt[rt++]);c(c.S+c.F*!G,"Symbol",{for:function(t){return o(I,t+="")?I[t]:I[t]=N(t)},keyFor:function(t){if(!H(t))throw TypeError(t+" is not a symbol!");for(var n in I)if(I[n]===t)return n},useSetter:function(){$=!0},useSimple:function(){$=!1}}),c(c.S+c.F*!G,"Object",{create:function(t,n){return void 0===n?O(t):K(O(t),n)},defineProperty:J,defineProperties:K,getOwnPropertyDescriptor:Q,getOwnPropertyNames:X,getOwnPropertySymbols:Z}),A&&c(c.S+c.F*(!G||l(function(){var t=N();return"[null]"!=F([t])||"{}"!=F({a:t})||"{}"!=F(Object(t))})),"JSON",{stringify:function(t){for(var n,r,e=[t],o=1;arguments.length>o;)e.push(arguments[o++]);if(r=n=e[1],(b(n)||void 0!==t)&&!H(t))return g(n)||(n=function(t,n){if("function"==typeof r&&(n=r.call(this,t,n)),!H(n))return n}),e[1]=n,F.apply(A,e)}}),N.prototype[L]||r(14)(N.prototype,L,N.prototype.valueOf),f(N,"Symbol"),f(Math,"Math",!0),f(e.JSON,"JSON",!0)},function(t,n,r){var e=r(22)("meta"),o=r(10),i=r(8),c=r(5).f,u=0,a=Object.isExtensible||function(){return!0},l=!r(12)(function(){return a(Object.preventExtensions({}))}),s=function(t){c(t,e,{value:{i:"O"+ ++u,w:{}}})},f=t.exports={KEY:e,NEED:!1,fastKey:function(t,n){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,e)){if(!a(t))return"F";if(!n)return"E";s(t)}return t[e].i},getWeak:function(t,n){if(!i(t,e)){if(!a(t))return!0;if(!n)return!1;s(t)}return t[e].w},onFreeze:function(t){return l&&f.NEED&&a(t)&&!i(t,e)&&s(t),t}}},function(t,n,r){var e=r(26),o=r(61),i=r(38);t.exports=function(t){var n=e(t),r=o.f;if(r)for(var c,u=r(t),a=i.f,l=0;u.length>l;)a.call(t,c=u[l++])&&n.push(c);return n}},function(t,n,r){var e=r(58);t.exports=Array.isArray||function(t){return"Array"==e(t)}},function(t,n,r){var e=r(9),o=r(62).f,i={}.toString,c="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return c&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return c.slice()}}(t):o(e(t))}},function(t,n,r){"use strict";var e=r(107),o=r(7),i=r(108),c=r(69),u=r(40),a=r(70),l=r(39),s=Math.min,f=[].push,p=!!function(){try{return new RegExp("x","y")}catch(t){}}();r(71)("split",2,function(t,n,r,v){var d;return d="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var o=String(this);if(void 0===t&&0===n)return[];if(!e(t))return r.call(o,t,n);for(var i,c,u,a=[],s=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),p=0,v=void 0===n?4294967295:n>>>0,d=new RegExp(t.source,s+"g");(i=l.call(d,o))&&!((c=d.lastIndex)>p&&(a.push(o.slice(p,i.index)),i.length>1&&i.index<o.length&&f.apply(a,i.slice(1)),u=i[0].length,p=c,a.length>=v));)d.lastIndex===i.index&&d.lastIndex++;return p===o.length?!u&&d.test("")||a.push(""):a.push(o.slice(p)),a.length>v?a.slice(0,v):a}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:r.call(this,t,n)}:r,[function(r,e){var o=t(this),i=null==r?void 0:r[n];return void 0!==i?i.call(r,o,e):d.call(String(o),r,e)},function(t,n){var e=v(d,t,this,n,d!==r);if(e.done)return e.value;var l=o(t),f=String(this),h=i(l,RegExp),y=l.unicode,g=(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(p?"y":"g"),m=new h(p?l:"^(?:"+l.source+")",g),b=void 0===n?4294967295:n>>>0;if(0===b)return[];if(0===f.length)return null===a(m,f)?[f]:[];for(var x=0,w=0,S=[];w<f.length;){m.lastIndex=p?w:0;var O,k=a(m,p?f:f.slice(w));if(null===k||(O=s(u(m.lastIndex+(p?0:w)),f.length))===x)w=c(f,w,y);else{if(S.push(f.slice(x,w)),S.length===b)return S;for(var j=1;j<=k.length-1;j++)if(S.push(k[j]),S.length===b)return S;w=x=O}}return S.push(f.slice(x)),S}]})},function(t,n,r){var e=r(18),o=r(33),i=r(0)("match");t.exports=function(t){var n;return e(t)&&(void 0!==(n=t[i])?!!n:"RegExp"==o(t))}},function(t,n,r){var e=r(7),o=r(50),i=r(0)("species");t.exports=function(t,n){var r,c=e(t).constructor;return void 0===c||null==(r=e(c)[i])?n:o(r)}},function(t,n,r){var e=r(23),o=r(19);t.exports=function(t){return function(n,r){var i,c,u=String(o(n)),a=e(r),l=u.length;return a<0||a>=l?t?"":void 0:(i=u.charCodeAt(a))<55296||i>56319||a+1===l||(c=u.charCodeAt(a+1))<56320||c>57343?t?u.charAt(a):i:t?u.slice(a,a+2):c-56320+(i-55296<<10)+65536}}},function(t,n,r){var e=r(33),o=r(0)("toStringTag"),i="Arguments"==e(function(){return arguments}());t.exports=function(t){var n,r,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,n){try{return t[n]}catch(t){}}(n=Object(t),o))?r:i?e(n):"Object"==(c=e(n))&&"function"==typeof n.callee?"Arguments":c}},function(t,n,r){"use strict";var e=r(7);t.exports=function(){var t=e(this),n="";return t.global&&(n+="g"),t.ignoreCase&&(n+="i"),t.multiline&&(n+="m"),t.unicode&&(n+="u"),t.sticky&&(n+="y"),n}},function(t,n,r){"use strict";var e=r(39);r(49)({target:"RegExp",proto:!0,forced:e!==/./.exec},{exec:e})},function(t,n,r){var e=r(148),o=r(151),i=r(153),c=r(156);t.exports=function(t){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{},u=i(r);"function"==typeof o&&(u=u.concat(o(r).filter(function(t){return e(r,t).enumerable}))),u.forEach(function(n){c(t,n,r[n])})}return t}},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,n,r){t.exports=r(149)},function(t,n,r){r(150);var e=r(1).Object;t.exports=function(t,n){return e.getOwnPropertyDescriptor(t,n)}},function(t,n,r){var e=r(9),o=r(63).f;r(68)("getOwnPropertyDescriptor",function(){return function(t,n){return o(e(t),n)}})},function(t,n,r){t.exports=r(152)},function(t,n,r){r(101),t.exports=r(1).Object.getOwnPropertySymbols},function(t,n,r){t.exports=r(154)},function(t,n,r){r(155),t.exports=r(1).Object.keys},function(t,n,r){var e=r(67),o=r(26);r(68)("keys",function(){return function(t){return o(e(t))}})},function(t,n,r){var e=r(90);t.exports=function(t,n,r){return n in t?e(t,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[n]=r,t}},function(t,n,r){"use strict";var e=r(7),o=r(64),i=r(40),c=r(23),u=r(69),a=r(70),l=Math.max,s=Math.min,f=Math.floor,p=/\$([$&`']|\d\d?|<[^>]*>)/g,v=/\$([$&`']|\d\d?)/g;r(71)("replace",2,function(t,n,r,d){return[function(e,o){var i=t(this),c=null==e?void 0:e[n];return void 0!==c?c.call(e,i,o):r.call(String(i),e,o)},function(t,n){var o=d(r,t,this,n);if(o.done)return o.value;var f=e(t),p=String(this),v="function"==typeof n;v||(n=String(n));var y=f.global;if(y){var g=f.unicode;f.lastIndex=0}for(var m=[];;){var b=a(f,p);if(null===b)break;if(m.push(b),!y)break;""===String(b[0])&&(f.lastIndex=u(p,i(f.lastIndex),g))}for(var x,w="",S=0,O=0;O<m.length;O++){b=m[O];for(var k=String(b[0]),j=l(s(c(b.index),p.length),0),C=[],P=1;P<b.length;P++)C.push(void 0===(x=b[P])?x:String(x));var T=b.groups;if(v){var E=[k].concat(C,j,p);void 0!==T&&E.push(T);var _=String(n.apply(void 0,E))}else _=h(k,p,j,C,T,n);j>=S&&(w+=p.slice(S,j)+_,S=j+k.length)}return w+p.slice(S)}];function h(t,n,e,i,c,u){var a=e+t.length,l=i.length,s=v;return void 0!==c&&(c=o(c),s=p),r.call(u,s,function(r,o){var u;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,e);case"'":return n.slice(a);case"<":u=c[o.slice(1,-1)];break;default:var s=+o;if(0===s)return o;if(s>l){var p=f(s/10);return 0===p?o:p<=l?void 0===i[p-1]?o.charAt(1):i[p-1]+o.charAt(1):o}u=i[s-1]}return void 0===u?"":u})}})},function(t,n,r){"use strict";r.r(n);var e=r(113),o=r.n(e),i=(r(89),r(72),r(106),r(157),window.tadvBlockButtons),c=window.wp,u=window.lodash.get,a=c.element.createElement,l=c.editor,s=l.InspectorControls,f=l.PanelColorSettings,p=c.richText,v=p.registerFormatType,d=p.applyFormat,h=p.removeFormat,y=p.getActiveFormat;function g(t){return(t=t.replace(/.*?(background-)?color:\s*/,"")).replace(/[; ]+$/,"")}var m=window.tadvBlockButtons,b=window.wp,x=b.element,w=x.createElement,S=x.Fragment,O=b.richText.registerFormatType,k=b.editor,j=k.RichTextToolbarButton,C=k.RichTextShortcut,P=b.components,T=P.Path,E=P.SVG,_=w(E,{viewBox:"-85 -985 1024 1024",xmlns:"http://www.w3.org/2000/svg"},w(T,{"aria-hidden":"true",role:"img",focusable:"false",transform:"scale(1, -1)",translate:"(0, -960)",d:"M768 754v-50h128v-64h-192v146l128 60v50h-128v64h192v-146zM676 704h-136l-188-188-188 188h-136l256-256-256-256h136l188 188 188-188h136l-256 256z"})),N=w(E,{viewBox:"-85 -975 1024 1024",xmlns:"http://www.w3.org/2000/svg"},w(T,{"aria-hidden":"true",role:"img",focusable:"false",transform:"scale(1, -1)",translate:"(0, -960)",d:"M768 50v-50h128v-64h-192v146l128 60v50h-128v64h192v-146zM676 704h-136l-188-188-188 188h-136l256-256-256-256h136l188 188 188-188h136l-256 256z"}));function A(t,n){var r=t.type,e=t.tagName,o=t.title,i=t.character,c=t.icon;O(r,{title:o,tagName:e,className:null,edit:function(t){var e=t.isActive,u=t.value,a=t.onChange,l=function(){return a(toggleFormat(u,{type:r}))},s=null;return n||(s=w(j,{title:o,icon:c,onClick:l,isActive:e,shortcutType:"primary",shortcutCharacter:i})),w(S,null,w(C,{type:"primary",character:i,onUse:l}),s)}})}var F=window.wp,M=window.tadvBlockButtons,L=(window.lodash.get,F.element),R=L.createElement,I=L.Fragment,B=F.i18n.__,U=F.data.select,D=F.hooks.addFilter,G=F.components,z=G.PanelBody,$=G.Toolbar,W=G.ToolbarButton,V=F.editor,H=V.RichTextToolbarButton,J=V.RichTextShortcut,K=V.InspectorControls,Y=(V.PanelColorSettings,F.richText),Q=Y.registerFormatType,X=Y.unregisterFormatType,Z=Y.getActiveFormat,q=Y.toggleFormat,tt=Y.applyFormat,nt=Y.removeFormat;var rt={"tadv/mark":function(t){Q("tadv/mark",{title:M.strMark,tagName:"mark",className:null,edit:function(n){var r=n.isActive,e=n.value,o=n.onChange,i=function(){return o(q(e,{type:"tadv/mark"}))},c=null;return t||(c=R(H,{title:M.strMark,icon:"editor-textcolor",onClick:i,className:"tadv-icon-button-mark",isActive:r,shortcutType:"access",shortcutCharacter:"m"})),R(I,null,R(J,{type:"access",character:"m",onUse:i}),c)}})},"tadv/underline":function(t){Q("tadv/underline",{title:M.strUnderline,tagName:"span",className:"underline",attributes:{style:"style"},edit:function(n){var r=n.isActive,e=n.value,o=n.onChange,i=function(){o(r?nt(e,"tadv/underline"):tt(e,{type:"tadv/underline",attributes:{style:"text-decoration: underline"}}))},c=null;return t||(c=R(H,{title:M.strUnderline,icon:"editor-underline",onClick:i,className:null,isActive:r,shortcutType:"primary",shortcutCharacter:"u"})),R(I,null,R(J,{type:"primary",character:"u",onUse:i}),c)}})},"tadv/removeformat":function(t){Q("tadv/removeformat",{title:M.strRemoveFormatting||"Remove formatting",tagName:"u",className:"remove-format",edit:function(n){n.isActive;var r=n.value,e=n.onChange;return t?null:R(H,{icon:"editor-removeformatting",title:M.strRemoveFormatting,onClick:function(){return e(o()({},r,{formats:Array(r.formats.length)}))},isActive:null})}})},"tadv/sub":function(t){A({type:"tadv/sub",tagName:"sub",title:m.strSubscript,character:",",icon:N},t)},"tadv/sup":function(t){A({type:"tadv/sup",tagName:"sup",title:m.strSuperscript,character:".",icon:_},t)},"core/code":function(t){Q("core/code",{title:B("Code"),tagName:"code",className:null,edit:function(n){var r=n.isActive,e=n.value,o=n.onChange,i=function(){return o(q(e,{type:"core/code"}))},c=null;return t||(c=R(H,{icon:"editor-code",title:B("Code"),onClick:i,isActive:r,shortcutType:"access",shortcutCharacter:"x"})),R(I,null,R(J,{type:"access",character:"x",onUse:i}),c)}})},"core/strikethrough":function(t){Q("core/strikethrough",{name:"core/strikethrough",title:B("Strikethrough"),tagName:"del",className:null,edit:function(n){var r=n.isActive,e=n.value,o=n.onChange,i=function(){return o(q(e,{type:"core/strikethrough"}))},c=null;return t||(c=R(H,{name:"strikethrough",icon:"editor-strikethrough",title:B("Strikethrough"),onClick:i,isActive:r,shortcutType:"access",shortcutCharacter:"d"})),R(I,null,R(J,{type:"access",character:"d",onUse:i}),c)}})},"core/italic":function(t){Q("core/italic",{title:B("Italic"),tagName:"em",className:null,edit:function(n){var r=n.isActive,e=n.value,o=n.onChange,i=function(){return o(q(e,{type:"core/italic"}))},c=null;return t||(c=R(H,{name:"italic",icon:"editor-italic",title:B("Italic"),onClick:i,isActive:r,shortcutType:"primary",shortcutCharacter:"i"})),R(I,null,R(J,{type:"primary",character:"i",onUse:i}),c)}})},"core/bold":function(t){Q("core/bold",{title:B("Bold"),tagName:"strong",className:null,edit:function(n){var r=n.isActive,e=n.value,o=n.onChange,i=function(){return o(q(e,{type:"core/bold"}))},c=null;return t||(c=R(H,{name:"bold",icon:"editor-bold",title:B("Bold"),onClick:i,isActive:r,shortcutType:"primary",shortcutCharacter:"b"})),R(I,null,R(J,{type:"primary",character:"b",onUse:i}),c)}})}},et=!0;function ot(){if(et){et=!1;var t=U("core/rich-text").getFormatTypes(),n=(M.buttons||"").split(","),r=M.panelButtons.split(","),e=(M.unusedButtons||"").split(",").concat(n,r);t.forEach(function(t){e.indexOf(t.name)>-1&&rt.hasOwnProperty(t.name)&&X(t.name),-1===n.indexOf("core/link")&&X("core/link")}),n.forEach(function(t){rt.hasOwnProperty(t)&&rt[t].call(null)}),function(){if(M.panelButtons){var t=M.panelButtons.split(","),n=(M.buttons||"").split(",");t.forEach(function(t){-1===n.indexOf(t)&&rt.hasOwnProperty(t)&&rt[t].call(null,"panel")}),Q("tadv/tadv-format-panel",{title:M.strFormatting,tagName:"span",className:"tadv-format-panel",edit:function(n){n.isActive;var r=n.value,e=n.onChange,i=[],c={"tadv/removeformat":function(){return R(W,{key:"tadv/removeformat",icon:"editor-removeformatting",className:"tadv-icon-button",title:M.strRemoveFormatting,onClick:function(){return e(o()({},r,{formats:Array(r.formats.length)}))}})},"core/bold":function(){return R(W,{key:"core/bold",icon:"editor-bold",className:"tadv-icon-button",isActive:Z(r,"core/bold"),title:B("Bold"),onClick:function(){return e(q(r,{type:"core/bold"}))}})},"core/italic":function(){return R(W,{key:"core/italic",icon:"editor-italic",className:"tadv-icon-button",isActive:Z(r,"core/italic"),title:B("Italic"),onClick:function(){return e(q(r,{type:"core/italic"}))}})},"core/code":function(){return R(W,{key:"core/code",icon:"editor-code",className:"tadv-icon-button",isActive:Z(r,"core/code"),title:B("Code"),onClick:function(){return e(q(r,{type:"core/code"}))}})},"core/strikethrough":function(){return R(W,{key:"core/strikethrough",icon:"editor-strikethrough",className:"tadv-icon-button",isActive:Z(r,"core/strikethrough"),title:B("Strikethrough"),onClick:function(){return e(q(r,{type:"core/strikethrough"}))}})},"tadv/mark":function(){return R(W,{key:"tadv/mark",icon:"editor-textcolor",className:"tadv-icon-button tadv-icon-button-mark",isActive:Z(r,"tadv/mark"),title:M.strMark,onClick:function(){return e(q(r,{type:"tadv/mark"}))}})},"tadv/sup":function(){return R(W,{key:"tadv/sup",icon:_,className:"tadv-icon-button",isActive:Z(r,"tadv/sup"),title:M.strSuperscript,onClick:function(){return e(q(r,{type:"tadv/sup"}))}})},"tadv/sub":function(){return R(W,{key:"tadv/sub",icon:N,className:"tadv-icon-button",isActive:Z(r,"tadv/sub"),title:M.strSubscript,onClick:function(){return e(q(r,{type:"tadv/sub"}))}})},"tadv/underline":function(){return R(W,{key:"tadv/underline",icon:"editor-underline",className:"tadv-icon-button",isActive:Z(r,"tadv/underline"),title:M.strUnderline,onClick:function(){Z(r,"tadv/underline")?e(nt(r,"tadv/underline")):e(tt(r,{type:"tadv/underline",attributes:{style:"text-decoration: underline"}}))}})}};return t.forEach(function(t){c.hasOwnProperty(t)&&i.push(c[t].call(null))}),R(K,null,R(z,{title:M.strFormatting,className:"tadv-buttons-panel"},R($,null,i)))}})}}(),function(){if(i.colorPanel){var t=i.colorPanel.indexOf("tadv/color-panel")>-1,n=i.colorPanel.indexOf("tadv/background-color-panel")>-1;t&&v("tadv/color-panel",{title:i.strTextColor,tagName:"span",className:"tadv-color",attributes:{style:"style"},edit:function(t){var r,e,o=t.isActive,c=t.value,l=t.onChange;if(o){var p=y(c,"tadv/color-panel"),v=u(p,["attributes","style"])||"",m=y(c,"tadv/background-color-panel"),b=u(m,["attributes","style"])||"";r=g(v),e=g(b)}var x=[{value:r,onChange:function(t){l(t?d(c,{type:"tadv/color-panel",attributes:{style:"color:"+t}}):h(c,"tadv/color-panel"))},label:i.strTextColorLabel}];return n&&x.push({value:e,onChange:function(t){l(t?d(c,{type:"tadv/background-color-panel",attributes:{style:"background-color:"+t}}):h(c,"tadv/background-color-panel"))},label:i.strBackgroundColorLabel}),a(s,null,a(f,{title:i.strTextColor,initialOpen:!1,colorSettings:x}))}}),v("tadv/background-color-panel",{title:i.strBackgroundColor,tagName:"span",className:"tadv-background-color",attributes:{style:"style"},edit:function(r){var e,o=r.isActive,c=r.value,l=r.onChange;if(!n||t)return null;if(o){var p=y(c,"tadv/background-color-panel");e=g(u(p,["attributes","style"])||"")}var v=[{value:e,onChange:function(t){l(t?d(c,{type:"tadv/background-color-panel",attributes:{style:"background-color:"+t}}):h(c,"tadv/background-color-panel"))},label:i.strBackgroundColorLabel}];return a(s,null,a(f,{title:i.strTextColor,initialOpen:!1,colorSettings:v}))}})}}()}}D("blocks.registerBlockType","tadv-register-formats",function(t){return ot(),t})}]);
images/colors-rtl.png ADDED
Binary file
images/colors.png ADDED
Binary file
images/toolbar-actions-rtl.png ADDED
Binary file
images/toolbar-actions.png ADDED
Binary file
images/toolbar-left-rtl.png ADDED
Binary file
images/toolbar-left.png ADDED
Binary file
images/toolbar-right.png ADDED
Binary file
js/tadv.js CHANGED
@@ -2,61 +2,180 @@
2
  * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
  * For more information please see tinymce-advanced.php.
4
  *
5
- * Copyright (c) 2007-2016 Andrew Ozz. All rights reserved.
6
  */
7
-
8
  jQuery( document ).ready( function( $ ) {
9
- var $importElement = $('#tadv-import'),
10
- $importError = $('#tadv-import-error');
11
-
12
- $('.container').sortable({
13
- connectWith: '.container',
14
- items: '> li',
15
- cursor: 'move',
16
- stop: function( event, ui ) {
17
- var toolbar_id;
18
-
19
- if ( ui && ( toolbar_id = ui.item.parent().attr('id') ) ) {
20
- ui.item.find('input.tadv-button').attr('name', toolbar_id + '[]');
21
- }
22
- },
23
- activate: function( event, ui ) {
24
- $(this).parent().addClass( 'highlighted' );
25
- },
26
- deactivate: function( event, ui ) {
27
- $(this).parent().removeClass( 'highlighted' );
28
- },
29
- revert: 300,
30
- opacity: 0.7,
31
- placeholder: 'tadv-placeholder',
32
- forcePlaceholderSize: true,
33
- containment: 'document'
34
- });
35
 
36
- $('.container-classic-block' ).sortable({
37
- connectWith: '.container-classic-block',
38
- items: '> li',
39
- cursor: 'move',
40
- stop: function( event, ui ) {
41
- var toolbar_id;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
 
43
- if ( ui && ( toolbar_id = ui.item.parent().attr( 'id' ) ) ) {
44
- ui.item.find( 'input.tadv-button' ).attr( 'name', toolbar_id + '[]' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
45
  }
46
- },
47
- activate: function( event, ui ) {
48
- $(this).parent().addClass( 'highlighted' );
49
- },
50
- deactivate: function( event, ui ) {
51
- $(this).parent().removeClass( 'highlighted' );
52
- },
53
- revert: 300,
54
- opacity: 0.7,
55
- placeholder: 'tadv-placeholder',
56
- forcePlaceholderSize: true,
57
- containment: 'document'
 
 
 
58
  });
59
-
60
 
61
  $( '#menubar' ).on( 'change', function() {
62
  $( '.tadv-mce-menu.tadv-classic-editor' ).toggleClass( 'enabled', $(this).prop('checked') );
@@ -72,6 +191,26 @@ jQuery( document ).ready( function( $ ) {
72
  });
73
  });
74
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
75
  $('#tadv-export-select').click( function() {
76
  $('#tadv-export').focus().select();
77
  });
2
  * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
  * For more information please see tinymce-advanced.php.
4
  *
5
+ * Copyright (c) 2007-2019 Andrew Ozz. All rights reserved.
6
  */
7
+
8
  jQuery( document ).ready( function( $ ) {
9
+ var $importElement = $('#tadv-import');
10
+ var $importError = $('#tadv-import-error');
11
+
12
+ function sortClassic() {
13
+ var container = $('.container');
14
+
15
+ if ( container.sortable( 'instance' ) ) {
16
+ container.sortable( 'destroy' );
17
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
 
19
+ container.sortable({
20
+ connectWith: '.container',
21
+ items: '> li',
22
+ cursor: 'move',
23
+ stop: function( event, ui ) {
24
+ var toolbar_id;
25
+
26
+ if ( ui && ( toolbar_id = ui.item.parent().attr('id') ) ) {
27
+ ui.item.find('input.tadv-button').attr('name', toolbar_id + '[]');
28
+ }
29
+ },
30
+ activate: function( event, ui ) {
31
+ $(this).parent().addClass( 'highlighted' );
32
+ },
33
+ deactivate: function( event, ui ) {
34
+ $(this).parent().removeClass( 'highlighted' );
35
+ },
36
+ revert: 300,
37
+ opacity: 0.7,
38
+ placeholder: 'tadv-placeholder',
39
+ forcePlaceholderSize: true
40
+ });
41
+ }
42
+
43
+ function sortBlock() {
44
+ var classicBlock = $( '.container-classic-block' );
45
+ var block = $( '.container-block' );
46
+ var blockToolbar = $( '#toolbar_block' );
47
+
48
+ if ( classicBlock.sortable( 'instance' ) ) {
49
+ classicBlock.sortable( 'destroy' );
50
+ }
51
 
52
+ if ( block.sortable( 'instance' ) ) {
53
+ block.sortable( 'destroy' );
54
+ }
55
+
56
+ if ( blockToolbar.sortable( 'instance' ) ) {
57
+ blockToolbar.sortable( 'destroy' );
58
+ }
59
+
60
+ classicBlock.sortable({
61
+ connectWith: '.container-classic-block',
62
+ items: '> li',
63
+ cursor: 'move',
64
+ stop: function( event, ui ) {
65
+ var toolbar_id;
66
+
67
+ if ( ui && ( toolbar_id = ui.item.parent().attr( 'id' ) ) ) {
68
+ ui.item.find( 'input.tadv-button' ).attr( 'name', toolbar_id + '[]' );
69
+ }
70
+ },
71
+ activate: function( event, ui ) {
72
+ $(this).parent().addClass( 'highlighted' );
73
+ },
74
+ deactivate: function( event, ui ) {
75
+ $(this).parent().removeClass( 'highlighted' );
76
+ },
77
+ revert: 300,
78
+ opacity: 0.7,
79
+ placeholder: 'tadv-placeholder',
80
+ forcePlaceholderSize: true
81
+ });
82
+
83
+ blockToolbar.sortable({
84
+ connectWith: '.container-block',
85
+ items: '> li',
86
+ cursor: 'move',
87
+ stop: function( event, ui ) {
88
+ var parent = ui.item.parent();
89
+ var toolbar_id = parent.attr( 'id' );
90
+
91
+ if ( ui.item.is( '.core-link' ) && parent.is( '#toolbar_block_side' ) ) {
92
+ blockToolbar.sortable( 'cancel' );
93
+ return;
94
+ }
95
+
96
+ if ( toolbar_id ) {
97
+ ui.item.find( 'input[type="hidden"]' ).attr( 'name', toolbar_id + '[]' );
98
+ }
99
+
100
+ sortBlockToolbar();
101
+ },
102
+ activate: function( event, ui ) {
103
+ $(this).parent().addClass( 'highlighted' );
104
+ },
105
+ deactivate: function( event, ui ) {
106
+ $(this).parent().removeClass( 'highlighted' );
107
+ },
108
+ revert: 300,
109
+ opacity: 0.7,
110
+ placeholder: 'tadv-placeholder',
111
+ forcePlaceholderSize: true
112
+ });
113
+
114
+ block.sortable({
115
+ connectWith: '.container-block, #toolbar_block',
116
+ items: '> li',
117
+ cursor: 'move',
118
+ stop: function( event, ui ) {
119
+ var parent = ui.item.parent();
120
+ var toolbar_id = parent.attr( 'id' );
121
+
122
+ if ( ui.item.is( '.core-link' ) && parent.is( '#toolbar_block_side' ) ) {
123
+ block.sortable( 'cancel' );
124
+ }
125
+
126
+ if ( toolbar_id ) {
127
+ ui.item.find( 'input[type="hidden"]' ).attr( 'name', toolbar_id + '[]' );
128
+ }
129
+
130
+ blockToolbar.css( 'min-width', '' );
131
+ sortBlockToolbar();
132
+ },
133
+ activate: function( event, ui ) {
134
+ $(this).parent().addClass( 'highlighted' );
135
+ },
136
+ deactivate: function( event, ui ) {
137
+ $(this).parent().removeClass( 'highlighted' );
138
+ },
139
+ start: function( event, ui ) {
140
+ var width = parseInt( blockToolbar.css( 'width' ), 10 );
141
+
142
+ if ( width ) {
143
+ blockToolbar.css( 'min-width', 36 + width );
144
+ }
145
+ },
146
+ revert: 300,
147
+ opacity: 0.7,
148
+ placeholder: 'tadv-block-placeholder',
149
+ forcePlaceholderSize: true
150
+ });
151
+ }
152
+
153
+ function sortBlockToolbar() {
154
+ var toolbar = $( '#toolbar_block' );
155
+ var sort = [ 'core-strikethrough', 'core-link', 'core-italic', 'core-bold' ];
156
+
157
+ $.each( sort, function( i, className ) {
158
+ var button = toolbar.find( '> li.' + className )
159
+
160
+ if ( button.length ) {
161
+ button.prependTo( toolbar );
162
  }
163
+
164
+ } );
165
+ }
166
+
167
+ // Make block editor tab sortable on load
168
+ sortBlock();
169
+
170
+ $( '.settings-toggle.block' ).on( 'focus', function( event ) {
171
+ $( '.wrap' ).removeClass( 'classic-active' ).addClass( 'block-active' );
172
+ sortBlock();
173
+ });
174
+
175
+ $( '.settings-toggle.classic' ).on( 'focus', function( event ) {
176
+ $( '.wrap' ).removeClass( 'block-active' ).addClass( 'classic-active' );
177
+ sortClassic();
178
  });
 
179
 
180
  $( '#menubar' ).on( 'change', function() {
181
  $( '.tadv-mce-menu.tadv-classic-editor' ).toggleClass( 'enabled', $(this).prop('checked') );
191
  });
192
  });
193
 
194
+ $( 'input[name="selected_text_color"]' ).on( 'change', function() {
195
+ if ( this.id === 'selected_text_color_yes' ) {
196
+ $( '.panel-block-text-color' ).removeClass( 'disabled' );
197
+ } else {
198
+ $( '.panel-block-text-color' ).addClass( 'disabled' );
199
+ }
200
+ } );
201
+
202
+ $( 'input[name="selected_text_background_color"]' ).on( 'change', function() {
203
+ if ( this.id === 'selected_text_background_color_yes' ) {
204
+ $( '.panel-block-background-color' ).removeClass( 'disabled' );
205
+ } else {
206
+ $( '.panel-block-background-color' ).addClass( 'disabled' );
207
+ }
208
+ } );
209
+
210
+ $( '.tadv-popout-help-toggle, .tadv-popout-help-close' ).on( 'click', function( event ) {
211
+ $( '.tadv-popout-help' ).toggleClass( 'hidden' );
212
+ } );
213
+
214
  $('#tadv-export-select').click( function() {
215
  $('#tadv-export').focus().select();
216
  });
langs/tinymce-advanced-ar.mo DELETED
Binary file
langs/tinymce-advanced-ar.po DELETED
@@ -1,352 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: TinyMCE Advanced\n"
4
- "POT-Creation-Date: 2016-03-17 12:21-0800\n"
5
- "PO-Revision-Date: 2016-03-17 12:22-0800\n"
6
- "Last-Translator: \n"
7
- "Language-Team: \n"
8
- "Language: en_US\n"
9
- "MIME-Version: 1.0\n"
10
- "Content-Type: text/plain; charset=UTF-8\n"
11
- "Content-Transfer-Encoding: 8bit\n"
12
- "X-Generator: Poedit 1.6.9\n"
13
- "X-Poedit-Basepath: .\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
16
- "_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_ex:1,2c;"
17
- "esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
18
- "X-Poedit-SearchPath-0: .\n"
19
- "X-Poedit-SearchPath-1: ..\n"
20
-
21
- #: ../tadv_admin.php:140
22
- msgid "Default settings restored."
23
- msgstr "تمت استعادة الاعدادات الافتراضية."
24
-
25
- #: ../tadv_admin.php:152
26
- msgid "TinyMCE Advanced Settings Export"
27
- msgstr "TinyMCE Advanced تصدير اعدادات"
28
-
29
- #: ../tadv_admin.php:156
30
- msgid "The settings are exported as a JSON encoded string."
31
- msgstr "الاعدادات قد تم تصديرها JSON كسلسلة مشفرة."
32
-
33
- #: ../tadv_admin.php:157
34
- msgid ""
35
- "Please copy the content and save it in a <b>text</b> (.txt) file, using a "
36
- "plain text editor like Notepad."
37
- msgstr ""
38
- "الرجاء انسخ المحتوى وواحفظه في ملف<b>.txt</b> , استخدم محرر بسيط مثل نوتباد."
39
-
40
- #: ../tadv_admin.php:158
41
- msgid ""
42
- "It is important that the export is not changed in any way, no spaces, line "
43
- "breaks, etc."
44
- msgstr ""
45
- "من المهم ان لايتم تعديل التصدير بأي طريقة , لامسافات , خطوط فارغة , الخ"
46
-
47
- #: ../tadv_admin.php:163
48
- msgid "Select All"
49
- msgstr "تحديد الكل"
50
-
51
- #: ../tadv_admin.php:165 ../tadv_admin.php:191
52
- msgid "Back to Editor Settings"
53
- msgstr "العودة الى اعدادات الحرر"
54
-
55
- #: ../tadv_admin.php:177
56
- msgid "TinyMCE Advanced Settings Import"
57
- msgstr "TinyMCE Advanced إستيراد إعدادات"
58
-
59
- #: ../tadv_admin.php:180
60
- msgid ""
61
- "The settings are imported from a JSON encoded string. Please paste the "
62
- "exported string in the text area below."
63
- msgstr ""
64
- "الاعدادات مستوردة من JSON سلسلة مشفرة ,الرجاء الصاق السلسلة المصدرة في "
65
- "منطقة النص ادناه."
66
-
67
- #: ../tadv_admin.php:185
68
- msgid "Verify"
69
- msgstr "تحقق"
70
-
71
- #: ../tadv_admin.php:186
72
- msgid "Import"
73
- msgstr "إستيراد"
74
-
75
- #: ../tadv_admin.php:216
76
- msgid "Importing of settings failed."
77
- msgstr "إستيراد الاعدادات فشل."
78
-
79
- #: ../tadv_admin.php:242
80
- msgid "ERROR: All toolbars are empty. Default settings loaded."
81
- msgstr "خطأ: جميع الاشرطة فارغة. الاعدادات الافتراضية ارجعت."
82
-
83
- #: ../tadv_admin.php:254
84
- msgid "Editor Settings"
85
- msgstr "إعدادات المحرر"
86
-
87
- #: ../tadv_admin.php:261
88
- msgid "Settings saved."
89
- msgstr "الاعدادات حفظت."
90
-
91
- #: ../tadv_admin.php:270 ../tadv_admin.php:540
92
- msgid "Save Changes"
93
- msgstr "حفظ التغييرات"
94
-
95
- #: ../tadv_admin.php:277
96
- msgid "Enable the editor menu."
97
- msgstr "تفعيل قائمة المحرر."
98
-
99
- #: ../tadv_admin.php:389
100
- msgid ""
101
- "Drag buttons from the unused buttons below and drop them in the toolbars "
102
- "above, or drag the buttons in the toolbars to rearrange them."
103
- msgstr ""
104
- "اسحب الازرار من منطقة الازرار الغير مستخدمة في الاسفل وافلتها في الشريط "
105
- "العلوي , او اسحب الازرار من الشريط لاعادة ترتيبهم."
106
-
107
- #: ../tadv_admin.php:392
108
- msgid "Unused Buttons"
109
- msgstr "الازرار الغير مستخدمة"
110
-
111
- #: ../tadv_admin.php:434
112
- #, fuzzy
113
- msgid "Options"
114
- msgstr "خيارات متقدمة"
115
-
116
- #: ../tadv_admin.php:437
117
- msgid "List Style Options"
118
- msgstr "قائمة خيارات الشكل"
119
-
120
- #: ../tadv_admin.php:439
121
- msgid ""
122
- "Enable more list options: upper or lower case letters for ordered lists, "
123
- "disk or square for unordered lists, etc."
124
- msgstr ""
125
-
126
- #: ../tadv_admin.php:444
127
- msgid "Context Menu"
128
- msgstr "حالة القائمة"
129
-
130
- #: ../tadv_admin.php:446
131
- msgid "Replace the browser context (right-click) menu."
132
- msgstr ""
133
-
134
- #: ../tadv_admin.php:451
135
- msgid "Alternative link dialog"
136
- msgstr ""
137
-
138
- #: ../tadv_admin.php:453
139
- msgid ""
140
- "Open the TinyMCE link dialog when using the link button on the toolbar or "
141
- "the link menu item."
142
- msgstr ""
143
-
144
- #: ../tadv_admin.php:458
145
- msgid "Font sizes"
146
- msgstr ""
147
-
148
- #: ../tadv_admin.php:459
149
- #, fuzzy
150
- msgid ""
151
- "Replace the size setting available for fonts with: 8px 10px 12px 14px 16px "
152
- "20px 24px 28px 32px 36px 48px 60px."
153
- msgstr ""
154
- "استبدل خيار حجم الخطوط مع :8px 10px 12px 14px 16px 20px 24px 28px 32px 36px."
155
-
156
- #: ../tadv_admin.php:467
157
- msgid "Advanced Options"
158
- msgstr "خيارات متقدمة"
159
-
160
- #: ../tadv_admin.php:476
161
- msgid "Create CSS classes menu"
162
- msgstr ""
163
-
164
- #: ../tadv_admin.php:478
165
- msgid ""
166
- "Load the CSS classes used in editor-style.css and replace the Formats button "
167
- "and sub-menu."
168
- msgstr ""
169
- "استخدم كلاسات css المستخدمة في ملف editor-style.css , و استبدل زر الصيغ "
170
- "والقائمة الفرعية."
171
-
172
- #: ../tadv_admin.php:488
173
- msgid "Keep paragraph tags"
174
- msgstr ""
175
-
176
- #: ../tadv_admin.php:490
177
- #, fuzzy
178
- msgid ""
179
- "Stop removing the &lt;p&gt; and &lt;br /&gt; tags when saving and show them "
180
- "in the Text editor."
181
- msgstr "ايقاف حذف وسم &lt;p&gt; و &lt;br /&gt; عند الحفظ وعرضهم في محرر النصوص"
182
-
183
- # تحتاج مراجعة
184
- #: ../tadv_admin.php:491
185
- msgid ""
186
- "This will make it possible to use more advanced coding in the HTML editor "
187
- "without the back-end filtering affecting it much."
188
- msgstr ""
189
- "هذه سوف تتيح لك استخدام HTML اكثر تقدما بدون فلاتر ومؤثرات برمجية كثيرة."
190
-
191
- #: ../tadv_admin.php:492
192
- msgid ""
193
- "However it may behave unexpectedly in rare cases, so test it thoroughly "
194
- "before enabling it permanently."
195
- msgstr ""
196
- "على اية حال انه تصرف مفاجئ في حالات نادرة , لذا قم بتجربته بشكل كامل قبل "
197
- "تضمينه."
198
-
199
- #: ../tadv_admin.php:493
200
- msgid ""
201
- "Line breaks in the HTML editor would still affect the output, in particular "
202
- "do not use empty lines, line breaks inside HTML tags or multiple &lt;br /"
203
- "&gt; tags."
204
- msgstr ""
205
- "الخطوط الفارغة في محرر HTML سوف تؤثر في الاخراج . لذا لاتستخدم خطوط فارغة "
206
- "داخل وسوم HTML او تعدد وسوم &lt;br /&gt; ."
207
-
208
- #: ../tadv_admin.php:498
209
- msgid "Enable pasting of image source"
210
- msgstr "تفعيل اللصق بمصدر الصورة"
211
-
212
- #: ../tadv_admin.php:500
213
- msgid ""
214
- "Works only in Firefox and Safari. These browsers support pasting of images "
215
- "directly in the editor and convert them to base64 encoded text."
216
- msgstr ""
217
- "تعمل فقط على فايرفوكس و سفاري. هؤلاء المتصفحات يدعمون لصق الصور مباشرة في "
218
- "المحرر و تحويلها الى base64 نص مشفر."
219
-
220
- #: ../tadv_admin.php:501
221
- msgid ""
222
- "This is not acceptable for larger images like photos or graphics, but may be "
223
- "useful in some cases for very small images like icons, not larger than 2-3KB."
224
- msgstr ""
225
- "هذه غير متوافقة للصور الكبير مثل الصور الفوتوغرافية , ولكنها مفيدة لالصور "
226
- "الصغيرة كالايقونات , ليست اكبر من 2-3 كيلوبايت"
227
-
228
- #: ../tadv_admin.php:502
229
- msgid "These images will not be available in the Media Library."
230
- msgstr "لن تكون هذه الصور متاحة في مكتبة الوسائط."
231
-
232
- #: ../tadv_admin.php:508
233
- msgid "Administration"
234
- msgstr "الادارة"
235
-
236
- #: ../tadv_admin.php:510
237
- msgid "Settings import and export"
238
- msgstr ""
239
-
240
- #: ../tadv_admin.php:512
241
- msgid "Export Settings"
242
- msgstr "تصدير الاعدادات"
243
-
244
- #: ../tadv_admin.php:513
245
- msgid "Import Settings"
246
- msgstr "استيراد الاعدادات"
247
-
248
- #: ../tadv_admin.php:517
249
- #, fuzzy
250
- msgid "Enable the editor enhancements for:"
251
- msgstr "تفعيل قائمة المحرر."
252
-
253
- #: ../tadv_admin.php:520
254
- msgid "The main editor (Add New and Edit posts and pages)"
255
- msgstr ""
256
-
257
- #: ../tadv_admin.php:524
258
- msgid "Other editors in wp-admin"
259
- msgstr ""
260
-
261
- #: ../tadv_admin.php:528
262
- msgid "Editors on the front end of the site"
263
- msgstr ""
264
-
265
- #: ../tadv_admin.php:539
266
- msgid "Restore Default Settings"
267
- msgstr "استعادة الاعدادات الافتراضية"
268
-
269
- #: ../tadv_admin.php:545
270
- msgid ""
271
- "The [Toolbar toggle] button shows or hides the second, third, and forth "
272
- "button rows. It will only work when it is in the first row and there are "
273
- "buttons in the second row."
274
- msgstr ""
275
- "زر شريط التبديل يعرض او يخفي صف الازرار الثاني ,الثالث وصاعدا. سيعمل فقط "
276
- "عندما يكون في اول صف و الازرار في ثاني صف."
277
-
278
- #: ../tinymce-advanced.php:221
279
- #, php-format
280
- msgid ""
281
- "TinyMCE Advanced requires WordPress version %1$s or newer. It appears that "
282
- "you are running %2$s. This can make the editor unstable."
283
- msgstr ""
284
- "TinyMCE Advanced requires WordPress version %1$s or newer. It appears that "
285
- "you are running %2$s. This can make the editor unstable."
286
-
287
- #: ../tinymce-advanced.php:228
288
- #, php-format
289
- msgid ""
290
- "Please upgrade your WordPress installation or download an <a href=\"%s"
291
- "\">older version of the plugin</a>."
292
- msgstr ""
293
- "Please upgrade your WordPress installation or download an <a href=\"%s"
294
- "\">older version of the plugin</a>."
295
-
296
- #: ../tinymce-advanced.php:703
297
- #, fuzzy
298
- msgid "Settings"
299
- msgstr "إعدادات المحرر"
300
-
301
- #~ msgid ""
302
- #~ "New in TinyMCE 4.0/WordPress 3.9 is the editor menu. When it is enabled, "
303
- #~ "most buttons are also available as menu items."
304
- #~ msgstr ""
305
- #~ "جديد قائمة المحرر في TinyMCE 4.0/WordPress 3.9 , عند تفعيلها , اغلب "
306
- #~ "الازرار متاحة في القائمة."
307
-
308
- #~ msgid "Also enable:"
309
- #~ msgstr "فعل ايضا:"
310
-
311
- #~ msgid "Link (replaces the Insert/Edit Link dialog)"
312
- #~ msgstr "رابط (استبدال المدرج/تعديل رابط الحوار)"
313
-
314
- #~ msgid "Import editor-style.css."
315
- #~ msgstr "استيراد ملفeditor-style.css."
316
-
317
- #~ msgid ""
318
- #~ "It seems your theme does not support customised styles for the editor."
319
- #~ msgstr "يبدو ان قالبك لايدعم الستايل المخصص للمحرر."
320
-
321
- #~ msgid ""
322
- #~ "You can create a CSS file named <code>editor-style.css</code> and upload "
323
- #~ "it to your theme's directory."
324
- #~ msgstr ""
325
- #~ "تستطيع انشاء ملف CSS بأسم <code>editor-style.css</code> ورفعه الى مسار "
326
- #~ "الثيم الخاص بك."
327
-
328
- #~ msgid "After that, enable this setting."
329
- #~ msgstr "بعد ذلك, فعل هذا"
330
-
331
- #~ msgid "Replace font size settings"
332
- #~ msgstr " استبداال خيارات حجم الخط"
333
-
334
- #~ msgid "Markdown typing support (text pattern plugin)"
335
- #~ msgstr "دعم تنسيق الكتابة ( اضافة اسلوب النص )"
336
-
337
- #~ msgid ""
338
- #~ "This plugin matches special patterns while you type and applies formats "
339
- #~ "or executes commands on the matched text."
340
- #~ msgstr "هذه الاضافة "
341
-
342
- #~ msgid ""
343
- #~ "The default patterns are the same as the markdown syntax so you can type "
344
- #~ "<code># text</code> to create a header, <code>1. text</code> to create a "
345
- #~ "list, <code>**text**</code> to make it bold, etc."
346
- #~ msgstr ""
347
- #~ "الاساليب الافتراضية هي نفسها الموجودة في markdown syntax لذا يمكنك كتابة "
348
- #~ "<code># text</code> لإنشاء هيدر , <code>1. text</code> لإنشاء قائمة ,"
349
- #~ "<code>**text**</code> لجعله سميك , الخ"
350
-
351
- #~ msgid "More information"
352
- #~ msgstr "معلومات اكثر"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
langs/tinymce-advanced-ko_KR.mo DELETED
Binary file
langs/tinymce-advanced-ko_KR.po DELETED
@@ -1,339 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: TinyMCE Advanced\n"
4
- "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2016-03-17 12:21-0800\n"
6
- "PO-Revision-Date: 2016-03-17 12:24-0800\n"
7
- "Last-Translator: jminst <admin@jmic.co.kr>\n"
8
- "Language-Team: \n"
9
- "Language: ko\n"
10
- "MIME-Version: 1.0\n"
11
- "Content-Type: text/plain; charset=UTF-8\n"
12
- "Content-Transfer-Encoding: 8bit\n"
13
- "Plural-Forms: nplurals=1; plural=0;\n"
14
- "X-Poedit-SourceCharset: UTF-8\n"
15
- "X-Generator: Poedit 1.6.9\n"
16
- "X-Poedit-Basepath: .\n"
17
- "X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
18
- "__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
19
- "_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
20
- "esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
21
- "esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
22
- "X-Loco-Target-Locale: ko_KR\n"
23
- "X-Poedit-SearchPath-0: .\n"
24
- "X-Poedit-SearchPath-1: ..\n"
25
-
26
- #: ../tadv_admin.php:140
27
- msgid "Default settings restored."
28
- msgstr "기본 설정이 복구됨."
29
-
30
- #: ../tadv_admin.php:152
31
- msgid "TinyMCE Advanced Settings Export"
32
- msgstr "TinyMCE 고급 설정 내보내기"
33
-
34
- #: ../tadv_admin.php:156
35
- msgid "The settings are exported as a JSON encoded string."
36
- msgstr "설정은 JSON 인코딩 스트링으로 내보냅니다."
37
-
38
- #: ../tadv_admin.php:157
39
- msgid ""
40
- "Please copy the content and save it in a <b>text</b> (.txt) file, using a "
41
- "plain text editor like Notepad."
42
- msgstr ""
43
- "내용을 복사하여 메모장과 같은 평문 편집기를 사용하여 <b>텍스트</b> (.txt) 파"
44
- "일로 저장해주세요."
45
-
46
- #: ../tadv_admin.php:158
47
- msgid ""
48
- "It is important that the export is not changed in any way, no spaces, line "
49
- "breaks, etc."
50
- msgstr "내보내기에 띄어쓰기, 줄 바꿈 등의 변경사항이 없는 것이 중요합니다."
51
-
52
- #: ../tadv_admin.php:163
53
- msgid "Select All"
54
- msgstr "모두 선택"
55
-
56
- #: ../tadv_admin.php:165 ../tadv_admin.php:191
57
- msgid "Back to Editor Settings"
58
- msgstr "편집기 설정으로 돌아가기"
59
-
60
- #: ../tadv_admin.php:177
61
- msgid "TinyMCE Advanced Settings Import"
62
- msgstr "TinyMCE 고급 설정 가져오기"
63
-
64
- #: ../tadv_admin.php:180
65
- msgid ""
66
- "The settings are imported from a JSON encoded string. Please paste the "
67
- "exported string in the text area below."
68
- msgstr ""
69
- "설정은 JSON 인코딩 스트링에서 가져옵니다. 내보낸 스트링을 아래 텍스트 영역에 "
70
- "붙여넣어주세요."
71
-
72
- #: ../tadv_admin.php:185
73
- msgid "Verify"
74
- msgstr "검증"
75
-
76
- #: ../tadv_admin.php:186
77
- msgid "Import"
78
- msgstr "가져오기"
79
-
80
- #: ../tadv_admin.php:216
81
- msgid "Importing of settings failed."
82
- msgstr "설정 가져오기를 실패함."
83
-
84
- #: ../tadv_admin.php:242
85
- msgid "ERROR: All toolbars are empty. Default settings loaded."
86
- msgstr "오류: 모든 도구 표시줄이 비어있습니다. 기본 설정을 불러왔습니다."
87
-
88
- #: ../tadv_admin.php:254
89
- msgid "Editor Settings"
90
- msgstr "편집기 설정"
91
-
92
- #: ../tadv_admin.php:261
93
- msgid "Settings saved."
94
- msgstr "설정이 저장됨."
95
-
96
- #: ../tadv_admin.php:270 ../tadv_admin.php:540
97
- msgid "Save Changes"
98
- msgstr "변경사항 저장"
99
-
100
- #: ../tadv_admin.php:277
101
- msgid "Enable the editor menu."
102
- msgstr "편집기 메뉴를 활성화합니다."
103
-
104
- #: ../tadv_admin.php:389
105
- msgid ""
106
- "Drag buttons from the unused buttons below and drop them in the toolbars "
107
- "above, or drag the buttons in the toolbars to rearrange them."
108
- msgstr ""
109
- "아래 사용하지 않은 버튼에서 끌어다 위의 도구 표시줄에 놓거나, 도구 표시줄의 "
110
- "버튼을 끌어다 재배치하십시오."
111
-
112
- #: ../tadv_admin.php:392
113
- msgid "Unused Buttons"
114
- msgstr "사용하지 않은 버튼"
115
-
116
- #: ../tadv_admin.php:434
117
- #, fuzzy
118
- msgid "Options"
119
- msgstr "고급 옵션"
120
-
121
- #: ../tadv_admin.php:437
122
- msgid "List Style Options"
123
- msgstr "목록 스타일 옵션"
124
-
125
- #: ../tadv_admin.php:439
126
- msgid ""
127
- "Enable more list options: upper or lower case letters for ordered lists, "
128
- "disk or square for unordered lists, etc."
129
- msgstr ""
130
-
131
- #: ../tadv_admin.php:444
132
- msgid "Context Menu"
133
- msgstr "콘텍스트 메뉴"
134
-
135
- #: ../tadv_admin.php:446
136
- msgid "Replace the browser context (right-click) menu."
137
- msgstr ""
138
-
139
- #: ../tadv_admin.php:451
140
- msgid "Alternative link dialog"
141
- msgstr ""
142
-
143
- #: ../tadv_admin.php:453
144
- msgid ""
145
- "Open the TinyMCE link dialog when using the link button on the toolbar or "
146
- "the link menu item."
147
- msgstr ""
148
-
149
- #: ../tadv_admin.php:458
150
- msgid "Font sizes"
151
- msgstr ""
152
-
153
- #: ../tadv_admin.php:459
154
- msgid ""
155
- "Replace the size setting available for fonts with: 8px 10px 12px 14px 16px "
156
- "20px 24px 28px 32px 36px 48px 60px."
157
- msgstr ""
158
- "다음 글꼴에 사용 가능한 크기 설정을 대체합니다: 8px 10px 12px 14px 16px 20px "
159
- "24px 28px 32px 36px 48px 60px."
160
-
161
- #: ../tadv_admin.php:467
162
- msgid "Advanced Options"
163
- msgstr "고급 옵션"
164
-
165
- #: ../tadv_admin.php:476
166
- msgid "Create CSS classes menu"
167
- msgstr ""
168
-
169
- #: ../tadv_admin.php:478
170
- msgid ""
171
- "Load the CSS classes used in editor-style.css and replace the Formats button "
172
- "and sub-menu."
173
- msgstr ""
174
- "editor-style.css 의 CSS 클래스를 불러오고 형식 버튼 및 하위 메뉴를 대체합니"
175
- "다."
176
-
177
- #: ../tadv_admin.php:488
178
- msgid "Keep paragraph tags"
179
- msgstr ""
180
-
181
- #: ../tadv_admin.php:490
182
- #, fuzzy
183
- msgid ""
184
- "Stop removing the &lt;p&gt; and &lt;br /&gt; tags when saving and show them "
185
- "in the Text editor."
186
- msgstr ""
187
- "저장 시 &lt;p&gt; 및 &lt;br /&gt; 태그의 제거를 중단하고 텍스트 편집기에 표시"
188
- "합니다."
189
-
190
- #: ../tadv_admin.php:491
191
- msgid ""
192
- "This will make it possible to use more advanced coding in the HTML editor "
193
- "without the back-end filtering affecting it much."
194
- msgstr ""
195
- "이 기능은 백엔드 필터링의 영향을 최소화하여 HTML 편집기에서 더욱 전문적인 코"
196
- "딩을 사용할 수 있도록 합니다."
197
-
198
- #: ../tadv_admin.php:492
199
- msgid ""
200
- "However it may behave unexpectedly in rare cases, so test it thoroughly "
201
- "before enabling it permanently."
202
- msgstr ""
203
- "하지만 드문 경우 예상치 못하게 행동할 수 있으므로, 영구적으로 활성화하기 전"
204
- "에 철저하게 검사하십시오."
205
-
206
- #: ../tadv_admin.php:493
207
- msgid ""
208
- "Line breaks in the HTML editor would still affect the output, in particular "
209
- "do not use empty lines, line breaks inside HTML tags or multiple &lt;br /"
210
- "&gt; tags."
211
- msgstr ""
212
- "HTML 편집기의 줄 바꿈은 출력에 영향을 끼치므로, 특히 빈 줄, HTML 태그의 줄 바"
213
- "꿈 또는 다중 &lt;br /&gt; 태그를 사용하지 마십시오."
214
-
215
- #: ../tadv_admin.php:498
216
- msgid "Enable pasting of image source"
217
- msgstr "이미지 소스 붙여넣기 활성화"
218
-
219
- #: ../tadv_admin.php:500
220
- msgid ""
221
- "Works only in Firefox and Safari. These browsers support pasting of images "
222
- "directly in the editor and convert them to base64 encoded text."
223
- msgstr ""
224
- "파이어폭스 및 사파리에서만 작동함. 이 브라우저는 편집기에 이미지 직접 붙여넣"
225
- "기 및 base64 인코딩 텍스트로 변환을 지원합니다. "
226
-
227
- #: ../tadv_admin.php:501
228
- msgid ""
229
- "This is not acceptable for larger images like photos or graphics, but may be "
230
- "useful in some cases for very small images like icons, not larger than 2-3KB."
231
- msgstr ""
232
- "이 기능은 사진 또는 그래픽과 같은 큰 이미지를 허용하지 않으나, 2-3KB 보다 작"
233
- "은 아이콘과 같은 매우 작은 이미지일 경우 유용할 수 있습니다."
234
-
235
- #: ../tadv_admin.php:502
236
- msgid "These images will not be available in the Media Library."
237
- msgstr "이 이미지는 미디어 라이브러리에 나타나지 않습니다."
238
-
239
- #: ../tadv_admin.php:508
240
- msgid "Administration"
241
- msgstr "관리"
242
-
243
- #: ../tadv_admin.php:510
244
- msgid "Settings import and export"
245
- msgstr ""
246
-
247
- #: ../tadv_admin.php:512
248
- msgid "Export Settings"
249
- msgstr "설정 내보내기"
250
-
251
- #: ../tadv_admin.php:513
252
- msgid "Import Settings"
253
- msgstr "설정 가져오기"
254
-
255
- #: ../tadv_admin.php:517
256
- #, fuzzy
257
- msgid "Enable the editor enhancements for:"
258
- msgstr "편집기 메뉴를 활성화합니다."
259
-
260
- #: ../tadv_admin.php:520
261
- msgid "The main editor (Add New and Edit posts and pages)"
262
- msgstr ""
263
-
264
- #: ../tadv_admin.php:524
265
- msgid "Other editors in wp-admin"
266
- msgstr ""
267
-
268
- #: ../tadv_admin.php:528
269
- msgid "Editors on the front end of the site"
270
- msgstr ""
271
-
272
- #: ../tadv_admin.php:539
273
- msgid "Restore Default Settings"
274
- msgstr "기본 설정 복원"
275
-
276
- #: ../tadv_admin.php:545
277
- msgid ""
278
- "The [Toolbar toggle] button shows or hides the second, third, and forth "
279
- "button rows. It will only work when it is in the first row and there are "
280
- "buttons in the second row."
281
- msgstr ""
282
- "[도구 표시줄 전환] 버튼은 두 번째, 세 번째 및 네 번째 버튼 줄을 표시하거나 숨"
283
- "깁니다. 첫 번째 줄이고 두 번째 줄에 버튼이 있을 경우에만 작동합니다. "
284
-
285
- #: ../tinymce-advanced.php:221
286
- #, php-format
287
- msgid ""
288
- "TinyMCE Advanced requires WordPress version %1$s or newer. It appears that "
289
- "you are running %2$s. This can make the editor unstable."
290
- msgstr ""
291
- "TinyMCE Advanced 는 워드프레스 버전 %1$s 이상을 요구합니다. 현재 %2$s 이(가) "
292
- "실행 중인 것 같습니다. 이로 인해 편집기가 불안정해질 수 있습니다."
293
-
294
- #: ../tinymce-advanced.php:228
295
- #, php-format
296
- msgid ""
297
- "Please upgrade your WordPress installation or download an <a href=\"%s"
298
- "\">older version of the plugin</a>."
299
- msgstr ""
300
- "워드프레스 설치를 업그레이드 하시거나 <a href=\"%s\">이전 버전의 플러그인</a>"
301
- "을 다운로드 해주세요."
302
-
303
- #: ../tinymce-advanced.php:703
304
- #, fuzzy
305
- msgid "Settings"
306
- msgstr "편집기 설정"
307
-
308
- #~ msgid ""
309
- #~ "New in TinyMCE 4.0/WordPress 3.9 is the editor menu. When it is enabled, "
310
- #~ "most buttons are also available as menu items."
311
- #~ msgstr ""
312
- #~ "TinyMCE 4.0/워드프레스 3.9의 새로운 내용은 편집기 메뉴입니다. 활성화할 경"
313
- #~ "우, 대부분의 버튼이 메뉴 항목으로도 사용 가능합니다."
314
-
315
- #~ msgid "Also enable:"
316
- #~ msgstr "또한 다음을 활성화:"
317
-
318
- #~ msgid "Link (replaces the Insert/Edit Link dialog)"
319
- #~ msgstr "링크 (링크 삽입/편집 대화를 대체)"
320
-
321
- #~ msgid "Import editor-style.css."
322
- #~ msgstr "editor-style.css를 가져오십시오."
323
-
324
- #~ msgid ""
325
- #~ "It seems your theme does not support customised styles for the editor."
326
- #~ msgstr "테마가 편집기에 사용자 지정 스타일을 지원하지 않는 것 같습니다."
327
-
328
- #~ msgid ""
329
- #~ "You can create a CSS file named <code>editor-style.css</code> and upload "
330
- #~ "it to your theme's directory."
331
- #~ msgstr ""
332
- #~ "<code>editor-style.css</code> 이름의 CSS 파일을 생성하여 테마의 디렉터리"
333
- #~ "에 업로드 할 수 있습니다."
334
-
335
- #~ msgid "After that, enable this setting."
336
- #~ msgstr "그런 다음, 이 설정을 활성화하십시오."
337
-
338
- #~ msgid "Replace font size settings"
339
- #~ msgstr "글꼴 크기 설정 바꾸기"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
langs/tinymce-advanced-ru_RU.mo DELETED
Binary file
langs/tinymce-advanced-ru_RU.po DELETED
@@ -1,558 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: tinymce-advanced\n"
4
- "POT-Creation-Date: 2016-03-17 12:21-0800\n"
5
- "PO-Revision-Date: 2016-03-17 12:24-0800\n"
6
- "Last-Translator: Vadim Bogaiskov <vadim.bogaiskov@gmail.com>\n"
7
- "Language-Team: Vadim Bogaiskov\n"
8
- "Language: ru\n"
9
- "MIME-Version: 1.0\n"
10
- "Content-Type: text/plain; charset=UTF-8\n"
11
- "Content-Transfer-Encoding: 8bit\n"
12
- "X-Generator: Poedit 1.6.9\n"
13
- "X-Poedit-KeywordsList: _;gettext;gettext_noop;_e;__;_n;_x\n"
14
- "X-Poedit-Basepath: ..\n"
15
- "Plural-Forms: nplurals=3; plural=((((n%10)==1)&&((n%100)!=11))?(0):(((((n"
16
- "%10)>=2)&&((n%10)<=4))&&(((n%100)<10)||((n%100)>=20)))?(1):2));\n"
17
- "X-Poedit-SourceCharset: UTF-8\n"
18
- "X-Poedit-SearchPath-0: .\n"
19
-
20
- #: ../tadv_admin.php:140
21
- msgid "Default settings restored."
22
- msgstr "Настройки по умолчанию восстановлены"
23
-
24
- #: ../tadv_admin.php:152
25
- msgid "TinyMCE Advanced Settings Export"
26
- msgstr "Экспорт настроек TinyMCE Advanced"
27
-
28
- #: ../tadv_admin.php:156
29
- msgid "The settings are exported as a JSON encoded string."
30
- msgstr "Настройки экспортируется как закодированная JSON-строка."
31
-
32
- #: ../tadv_admin.php:157
33
- msgid ""
34
- "Please copy the content and save it in a <b>text</b> (.txt) file, using a "
35
- "plain text editor like Notepad."
36
- msgstr ""
37
- "Пожалуйста скопируйте содержимое и сохраните его в <b>текстовом</b> (.txt) "
38
- "файл, используя текстовый редактор, например Блокнот."
39
-
40
- #: ../tadv_admin.php:158
41
- msgid ""
42
- "It is important that the export is not changed in any way, no spaces, line "
43
- "breaks, etc."
44
- msgstr ""
45
- "Важно, чтобы экспорт никак не изменялся, без пробелов, разрывы строк и т.д."
46
-
47
- #: ../tadv_admin.php:163
48
- msgid "Select All"
49
- msgstr "Выбрать все"
50
-
51
- #: ../tadv_admin.php:165 ../tadv_admin.php:191
52
- msgid "Back to Editor Settings"
53
- msgstr "Назад в настройки редактора"
54
-
55
- #: ../tadv_admin.php:177
56
- msgid "TinyMCE Advanced Settings Import"
57
- msgstr "Импорт настроек TinyMCE Advanced"
58
-
59
- #: ../tadv_admin.php:180
60
- msgid ""
61
- "The settings are imported from a JSON encoded string. Please paste the "
62
- "exported string in the text area below."
63
- msgstr ""
64
- "Настройки импортируются из закодированной JSON-строки. Пожалуйста вставьте "
65
- "экспортированную строку в текстовом поле ниже."
66
-
67
- #: ../tadv_admin.php:185
68
- msgid "Verify"
69
- msgstr "Проверить"
70
-
71
- #: ../tadv_admin.php:186
72
- msgid "Import"
73
- msgstr "Импорт"
74
-
75
- #: ../tadv_admin.php:216
76
- msgid "Importing of settings failed."
77
- msgstr "Импорт настроек не выполнен."
78
-
79
- #: ../tadv_admin.php:242
80
- msgid "ERROR: All toolbars are empty. Default settings loaded."
81
- msgstr ""
82
- "ОШИБКА: Все панели инструментов пусты. Загружены настройки по умолчанию."
83
-
84
- #: ../tadv_admin.php:254
85
- msgid "Editor Settings"
86
- msgstr "Настройки редактора"
87
-
88
- #: ../tadv_admin.php:261
89
- msgid "Settings saved."
90
- msgstr "Настройки сохранены."
91
-
92
- #: ../tadv_admin.php:270 ../tadv_admin.php:540
93
- msgid "Save Changes"
94
- msgstr "Сохранить изменения"
95
-
96
- #: ../tadv_admin.php:277
97
- msgid "Enable the editor menu."
98
- msgstr "Включить меню редактора."
99
-
100
- #: ../tadv_admin.php:389
101
- msgid ""
102
- "Drag buttons from the unused buttons below and drop them in the toolbars "
103
- "above, or drag the buttons in the toolbars to rearrange them."
104
- msgstr ""
105
- "Перетащите кнопки из области неиспользованных, расположенной ниже и "
106
- "поместите их в панели инструментов наверху, или переместите кнопки в панелях "
107
- "инструментов, чтобы изменить их."
108
-
109
- #: ../tadv_admin.php:392
110
- msgid "Unused Buttons"
111
- msgstr "Неиспользуемые кнопки"
112
-
113
- #: ../tadv_admin.php:434
114
- #, fuzzy
115
- msgid "Options"
116
- msgstr "Дополнительные параметры"
117
-
118
- #: ../tadv_admin.php:437
119
- msgid "List Style Options"
120
- msgstr "Список настроек стилей"
121
-
122
- #: ../tadv_admin.php:439
123
- msgid ""
124
- "Enable more list options: upper or lower case letters for ordered lists, "
125
- "disk or square for unordered lists, etc."
126
- msgstr ""
127
-
128
- #: ../tadv_admin.php:444
129
- msgid "Context Menu"
130
- msgstr "Контекстное меню"
131
-
132
- #: ../tadv_admin.php:446
133
- msgid "Replace the browser context (right-click) menu."
134
- msgstr ""
135
-
136
- #: ../tadv_admin.php:451
137
- msgid "Alternative link dialog"
138
- msgstr ""
139
-
140
- #: ../tadv_admin.php:453
141
- msgid ""
142
- "Open the TinyMCE link dialog when using the link button on the toolbar or "
143
- "the link menu item."
144
- msgstr ""
145
-
146
- #: ../tadv_admin.php:458
147
- msgid "Font sizes"
148
- msgstr ""
149
-
150
- #: ../tadv_admin.php:459
151
- msgid ""
152
- "Replace the size setting available for fonts with: 8px 10px 12px 14px 16px "
153
- "20px 24px 28px 32px 36px 48px 60px."
154
- msgstr ""
155
- "Заменяет настройки размера шрифта одним из доступных: 8px 10px 12px 14px "
156
- "16px 20px 24px 28px 32px 36px 48px 60px."
157
-
158
- #: ../tadv_admin.php:467
159
- msgid "Advanced Options"
160
- msgstr "Дополнительные параметры"
161
-
162
- #: ../tadv_admin.php:476
163
- msgid "Create CSS classes menu"
164
- msgstr ""
165
-
166
- #: ../tadv_admin.php:478
167
- msgid ""
168
- "Load the CSS classes used in editor-style.css and replace the Formats button "
169
- "and sub-menu."
170
- msgstr ""
171
- "Загрузить классы CSS, используемые в editor-style.css и заменить кнопку "
172
- "Форматы и подменю."
173
-
174
- #: ../tadv_admin.php:488
175
- msgid "Keep paragraph tags"
176
- msgstr ""
177
-
178
- #: ../tadv_admin.php:490
179
- #, fuzzy
180
- msgid ""
181
- "Stop removing the &lt;p&gt; and &lt;br /&gt; tags when saving and show them "
182
- "in the Text editor."
183
- msgstr ""
184
- "Остановить удаление тегов &lt;p&gt; и &lt;br /&gt; при сохранении и "
185
- "показать их в текстовом редакторе"
186
-
187
- #: ../tadv_admin.php:491
188
- msgid ""
189
- "This will make it possible to use more advanced coding in the HTML editor "
190
- "without the back-end filtering affecting it much."
191
- msgstr ""
192
- "Это позволит использовать более передовые методы кодирования в редакторе "
193
- "HTML без фоновой фильтрации, существенно влияющей на него."
194
-
195
- #: ../tadv_admin.php:492
196
- msgid ""
197
- "However it may behave unexpectedly in rare cases, so test it thoroughly "
198
- "before enabling it permanently."
199
- msgstr ""
200
- "Однако в редких случаях это может вести себя непредсказуемо, поэтому "
201
- "тщательно проверьте его перед включением на постоянно."
202
-
203
- #: ../tadv_admin.php:493
204
- msgid ""
205
- "Line breaks in the HTML editor would still affect the output, in particular "
206
- "do not use empty lines, line breaks inside HTML tags or multiple &lt;br /"
207
- "&gt; tags."
208
- msgstr ""
209
- "Переносы строк в редакторе HTML прежнему будет влиять на результат, в "
210
- "частности, не используйте пустые строки, переносы строк внутри тегов HTML "
211
- "или многократные теги &lt;br /&gt;. "
212
-
213
- #: ../tadv_admin.php:498
214
- msgid "Enable pasting of image source"
215
- msgstr "Включить вставку исходного кода изображения"
216
-
217
- #: ../tadv_admin.php:500
218
- msgid ""
219
- "Works only in Firefox and Safari. These browsers support pasting of images "
220
- "directly in the editor and convert them to base64 encoded text."
221
- msgstr ""
222
- "Работает только в Firefox и Safari. Эти браузеры поддерживают вставку "
223
- "изображений непосредственно в редакторе и конвертацию их в base64-"
224
- "закодированный текст."
225
-
226
- #: ../tadv_admin.php:501
227
- msgid ""
228
- "This is not acceptable for larger images like photos or graphics, but may be "
229
- "useful in some cases for very small images like icons, not larger than 2-3KB."
230
- msgstr ""
231
- "Это неприемлемо для больших изображений, таких как фотографии или графики, "
232
- "но может быть полезным в некоторых случаях для очень маленьких изображений, "
233
- "таких как иконки размером не более 2-3KB."
234
-
235
- #: ../tadv_admin.php:502
236
- msgid "These images will not be available in the Media Library."
237
- msgstr "Эти изображения не будут доступны в библиотеке мультимедиа."
238
-
239
- #: ../tadv_admin.php:508
240
- msgid "Administration"
241
- msgstr "Управление"
242
-
243
- #: ../tadv_admin.php:510
244
- msgid "Settings import and export"
245
- msgstr ""
246
-
247
- #: ../tadv_admin.php:512
248
- msgid "Export Settings"
249
- msgstr "Экспорт настроек"
250
-
251
- #: ../tadv_admin.php:513
252
- msgid "Import Settings"
253
- msgstr "Импорт настроек"
254
-
255
- #: ../tadv_admin.php:517
256
- #, fuzzy
257
- msgid "Enable the editor enhancements for:"
258
- msgstr "Включить меню редактора."
259
-
260
- #: ../tadv_admin.php:520
261
- msgid "The main editor (Add New and Edit posts and pages)"
262
- msgstr ""
263
-
264
- #: ../tadv_admin.php:524
265
- msgid "Other editors in wp-admin"
266
- msgstr ""
267
-
268
- #: ../tadv_admin.php:528
269
- msgid "Editors on the front end of the site"
270
- msgstr ""
271
-
272
- #: ../tadv_admin.php:539
273
- msgid "Restore Default Settings"
274
- msgstr "Восстановить настройки по умолчанию"
275
-
276
- #: ../tadv_admin.php:545
277
- msgid ""
278
- "The [Toolbar toggle] button shows or hides the second, third, and forth "
279
- "button rows. It will only work when it is in the first row and there are "
280
- "buttons in the second row."
281
- msgstr ""
282
- "Кнопка [Панель переключения] отображает/скрывает вторую, третью и четвертую "
283
- "строки кнопок. Она будет работать только тогда, когда она находится в первой "
284
- "строке и есть кнопки во второй строке."
285
-
286
- #: ../tinymce-advanced.php:221
287
- #, php-format
288
- msgid ""
289
- "TinyMCE Advanced requires WordPress version %1$s or newer. It appears that "
290
- "you are running %2$s. This can make the editor unstable."
291
- msgstr ""
292
- "Для работы TinyMCE Advanced требуется WordPress версии %1$s или выше. "
293
- "Похоже, что Вы работаете на %2$s. Это может сделать работу редактора "
294
- "неустойчивой."
295
-
296
- #: ../tinymce-advanced.php:228
297
- #, php-format
298
- msgid ""
299
- "Please upgrade your WordPress installation or download an <a href=\"%s"
300
- "\">older version of the plugin</a>."
301
- msgstr ""
302
- "Пожалуйста, обновите Ваш WordPress или скачайте <a href=\"%s\">старую версию "
303
- "плагина</a> ."
304
-
305
- #: ../tinymce-advanced.php:703
306
- #, fuzzy
307
- msgid "Settings"
308
- msgstr "Настройки редактора"
309
-
310
- #~ msgid ""
311
- #~ "New in TinyMCE 4.0/WordPress 3.9 is the editor menu. When it is enabled, "
312
- #~ "most buttons are also available as menu items."
313
- #~ msgstr ""
314
- #~ "Новое в TinyMCE 4.0/WordPress 3.9 - меню редактора. Когда оно включено, "
315
- #~ "большинство кнопок, также доступны как элементы меню."
316
-
317
- #~ msgid "Also enable:"
318
- #~ msgstr "Также вкл.:"
319
-
320
- #~ msgid "Link (replaces the Insert/Edit Link dialog)"
321
- #~ msgstr "Ссылка (заменяет диалог Вставить/Редактировать ссылку)"
322
-
323
- #~ msgid "Import editor-style.css."
324
- #~ msgstr "Импорт editor-style.css."
325
-
326
- #~ msgid ""
327
- #~ "It seems your theme does not support customised styles for the editor."
328
- #~ msgstr ""
329
- #~ "Кажется, ваша тема не поддерживает пользовательские стили для редактора."
330
-
331
- #~ msgid ""
332
- #~ "You can create a CSS file named <code>editor-style.css</code> and upload "
333
- #~ "it to your theme's directory."
334
- #~ msgstr ""
335
- #~ "Вы можете создать CSS-файл с именем <code>editor-style.css</code> и "
336
- #~ "загрузите его в папку вашей темы."
337
-
338
- #~ msgid "After that, enable this setting."
339
- #~ msgstr "После этого, включить этот параметр."
340
-
341
- #~ msgid "Replace font size settings"
342
- #~ msgstr "Заменить настройки размера шрифта "
343
-
344
- #~ msgid ""
345
- #~ "This plugin requires WordPress version 4.0 or newer. Please upgrade your "
346
- #~ "WordPress installation or download an %solder version of the plugin%s."
347
- #~ msgstr ""
348
- #~ "Для этого плагина требуется WordPress версии 4.0 или более новой. "
349
- #~ "Обновите WordPress или загрузите %sстарую версию плагина%s."
350
-
351
- #~ msgid ""
352
- #~ "The settings are exported as a JSON encoded string. Please copy the "
353
- #~ "content and save it in a <b>text</b> (.txt) file, using a plain text "
354
- #~ "editor like Notepad. It is important that the export is not changed in "
355
- #~ "any way, no spaces, line breaks, etc."
356
- #~ msgstr ""
357
- #~ "Настройки экспортируется как строки JSON . Пожалуйста, скопируйте "
358
- #~ "содержимое и сохранить его в <b>текстовом</b> файле (.txt), используя "
359
- #~ "простой текстовый редактор, например, Блокнот. Важно, чтобы "
360
- #~ "экспортированный файл не изменяется ни каким образом, не добавлением "
361
- #~ "пробелов, не разрывом строк, и т.д."
362
-
363
- #~ msgid ""
364
- #~ "The settings are imported from a JSON encoded string. Please paste the "
365
- #~ "exported string in the textarea below."
366
- #~ msgstr ""
367
- #~ "Настройки импортируются из JSON. Пожалуйста, вставьте экспортированную "
368
- #~ "строку ниже в текстовое поле."
369
-
370
- #~ msgid ""
371
- #~ "It seems your theme does not support customised styles for the editor. "
372
- #~ "You can create a CSS file named <code>editor-style.css</code> and upload "
373
- #~ "it to your theme's directory. After that, enable this setting."
374
- #~ msgstr ""
375
- #~ "Кажется, Ваша тема не поддерживает пользовательские стили для редактора. "
376
- #~ "Вы можете создать файл с именем <i>editor-style.css</i> и загрузить его в "
377
- #~ "каталог Вашей темы. После этого включите эту настройку."
378
-
379
- #~ msgid "Markdown typing support (text pattern plugin)"
380
- #~ msgstr "Поддержка ввода Markdown (плагин шаблона текста)"
381
-
382
- #~ msgid ""
383
- #~ "This plugin matches special patterns while you type and applies formats "
384
- #~ "or executed commands on these text patterns. The default patterns are the "
385
- #~ "same as the markdown syntax so you can type <code># text</code> to create "
386
- #~ "a header, <code>1. text</code> to create a list, <code>**text**</code> to "
387
- #~ "make something bold, etc."
388
- #~ msgstr ""
389
- #~ "Этот модуль использует специальные шаблоны во время ввода текста и "
390
- #~ "применяет форматы или введенные команды из этих текстовых шаблонов. По "
391
- #~ "умолчанию шаблоны соответствуют синтаксису markdown, так что Вы можете "
392
- #~ "ввести <code># text</code>, чтобы создать заголовок, <code>1. text</"
393
- #~ "code>, чтобы создать список, <code>**text**</code>, чтобы выделить текст "
394
- #~ "жирным шрифтом и т.д."
395
-
396
- #~ msgid "More information"
397
- #~ msgstr "Более подробная информация"
398
-
399
- #~ msgid ""
400
- #~ "This will make it possible to use more advanced coding in the HTML editor "
401
- #~ "without the back-end filtering affecting it much. However it may behave "
402
- #~ "unexpectedly in rare cases, so test it thoroughly before enabling it "
403
- #~ "permanently. Line breaks in the HTML editor would still affect the "
404
- #~ "output, in particular do not use empty lines, line breaks inside HTML "
405
- #~ "tags or multiple &lt;br /&gt; tags."
406
- #~ msgstr ""
407
- #~ "Эта функция делает возможным использовать более продвинутое кодирование в "
408
- #~ "HTML редакторе без фоновой фильтрации, оказывающей не него существенное "
409
- #~ "влияние. Однако в редких случаях она может вести себя непредсказуемо, "
410
- #~ "поэтому тщательно проверьте её перед включением постоянно. Разрывы строк "
411
- #~ "в HTML редакторе будут по-прежнему влиять на результат, в частности не "
412
- #~ "используйте пустые строки, разрывы строк внутри HTML тегов или несколько "
413
- #~ "тегов <br /> ."
414
-
415
- #~ msgid ""
416
- #~ "Works only in Firefox and Safari. These browsers support pasting of "
417
- #~ "images directly in the editor and convert them to base64 encoded text. "
418
- #~ "This is not acceptable for larger images like photos or graphics, but may "
419
- #~ "be useful in some cases for very small images like icons, not larger than "
420
- #~ "2-3KB. These images will not be available in the Media Library."
421
- #~ msgstr ""
422
- #~ "Работает только в Firefox и Safari. Эти браузеры поддерживают вставку "
423
- #~ "изображений непосредственно в редакторе и конвертируют их в текст, "
424
- #~ "закодированный по формату base64. Это не приемлемо для больших "
425
- #~ "изображений, таких как фотографии или графики, но может быть полезно в "
426
- #~ "некоторых случаях для очень маленьких изображений, таких как иконки, не "
427
- #~ "больше, чем 2-3KB. Эти изображения не будут доступны в библиотеке "
428
- #~ "мультимедиа."
429
-
430
- #~ msgid "older version of the plugin."
431
- #~ msgstr "старую версию плагина."
432
-
433
- #~ msgid "The settings are exported as a JSON encoded string. "
434
- #~ msgstr "Настройки экспортируется как JSON ."
435
-
436
- #~ msgid ""
437
- #~ "It seems your theme doesn't support customised styles for the editor. "
438
- #~ msgstr ""
439
- #~ "Кажется, Ваша тема не поддерживает специальные стили для редактора. "
440
-
441
- #~ msgid ""
442
- #~ "You can create a CSS file named <code>editor-style.css</code> and upload "
443
- #~ "it to your theme's directory. "
444
- #~ msgstr ""
445
- #~ "Вы можете создать файл CSS с именем <code>editor-style.css</code> и "
446
- #~ "загрузить его в каталог вашей темы. "
447
-
448
- #~ msgid ""
449
- #~ "This will make it possible to use more advanced coding in the HTML editor "
450
- #~ "without the back-end filtering affecting it much. "
451
- #~ msgstr ""
452
- #~ "Это сделает возможным использование более продвинутого кодирования в "
453
- #~ "редакторе HTML без фоновой фильтрации влияющей на многое. "
454
-
455
- #~ msgid ""
456
- #~ "However it may behave unexpectedly in rare cases, so test it thoroughly "
457
- #~ "before enabling it permanently. "
458
- #~ msgstr ""
459
- #~ "Однако в редких случаях это может вести себя непредсказуемымо, поэтому "
460
- #~ "проверьте все тщательно перед включением его постоянно. "
461
-
462
- #~ msgid "All options have been removed from the database. You can"
463
- #~ msgstr "Все опции были удалены из базы данных. Вы можете"
464
-
465
- #~ msgid "deactivate TinyMCE Advanced"
466
- #~ msgstr "отключить TinyMCE Advanced"
467
-
468
- #~ msgid "or"
469
- #~ msgstr "или"
470
-
471
- #~ msgid "reload this page"
472
- #~ msgstr "перезагрузить страницу"
473
-
474
- #~ msgid "to reset them to the default values."
475
- #~ msgstr "сбросить их к значениям по умолчанию."
476
-
477
- #~ msgid "TinyMCE Buttons Arrangement"
478
- #~ msgstr "Компоновка кнопок TinyMCE "
479
-
480
- #~ msgid "Drag and drop buttons onto the toolbars below."
481
- #~ msgstr "Перетащите кнопки снизу на панели инструментов."
482
-
483
- #~ msgid ""
484
- #~ "Adding too many buttons will make the toolbar too long and will not "
485
- #~ "display correctly in TinyMCE!"
486
- #~ msgstr ""
487
- #~ "Добавление слишком большого количества кнопок сделает панель инструментов "
488
- #~ "слишком длинной и она не будет корректно отображаться в TinyMCE!"
489
-
490
- #~ msgid "Advanced Image"
491
- #~ msgstr "Дополнительные изображения"
492
-
493
- #~ msgid ""
494
- #~ "(to show the browser context menu in Firefox, hold down the Ctrl key)."
495
- #~ msgstr ""
496
- #~ "(чтобы показать контекстное меню браузера в Firefox, удерживайте нажатой "
497
- #~ "клавишу Ctrl)."
498
-
499
- #~ msgid "Advanced Link"
500
- #~ msgstr "Дополнительные ссылки"
501
-
502
- #~ msgid ""
503
- #~ "Enabling this TinyMCE plugin will overwrite the internal links feature in "
504
- #~ "WordPress 3.1 and newer. Cuttently there is no way to enable both of them "
505
- #~ "at the same time."
506
- #~ msgstr ""
507
- #~ "Включение этого модуля TinyMCE перезапишет внутренние ссылки в WordPress "
508
- #~ "3.1 и старше. В настоящее время не существует способа включить их оба "
509
- #~ "одновременно."
510
-
511
- #~ msgid ""
512
- #~ "This is only needed if you created that file. Themes that style the "
513
- #~ "editor will import the stylesheet automatically."
514
- #~ msgstr ""
515
- #~ "Это необходимо, только если Вы создали этот файл. Темы этого стиля "
516
- #~ "редактор будет импортировать таблицы стилей автоматически."
517
-
518
- #~ msgid ""
519
- #~ "Note that selecting this will also disable the Styles drop-down menu."
520
- #~ msgstr ""
521
- #~ "Обратите внимание, что если выбрать этот пункт будут также отключены "
522
- #~ "стили выпадающего меню."
523
-
524
- #~ msgid "Language Settings"
525
- #~ msgstr "Настройки языка"
526
-
527
- #~ msgid "Your WordPress language is set to"
528
- #~ msgstr "Язык WordPress -"
529
-
530
- #~ msgid ""
531
- #~ "However there is no matching language installed for TinyMCE plugins. This "
532
- #~ "plugin includes several translations: German, French, Italian, Spanish, "
533
- #~ "Portuguese, Russian, Japanese and Chinese. More translations are "
534
- #~ "available at the"
535
- #~ msgstr ""
536
- #~ "Однако для модулей TinyMCE никакой язык не установлен. Этот плагин "
537
- #~ "включает в себя несколько переводов: немецкий, французский, итальянский, "
538
- #~ "испанский, португальский, русский, японский и китайский языки. Другие "
539
- #~ "переводы доступны в"
540
-
541
- #~ msgid "TinyMCE web site."
542
- #~ msgstr "Вэб-сайт TinyMCE."
543
-
544
- #~ msgid ""
545
- #~ "The Kitchen Sink button shows/hides the next toolbar row. It will not "
546
- #~ "work at the current place."
547
- #~ msgstr ""
548
- #~ "Кнопка Kitchen Sink показывает/скрывает следующую строку панели "
549
- #~ "инструментов. Он не будет работать на этом месте."
550
-
551
- #~ msgid "Remove all saved settings from the database?"
552
- #~ msgstr "Удалить все сохраненные настройки из базы данных?"
553
-
554
- #~ msgid "Cancel"
555
- #~ msgstr "Отмена"
556
-
557
- #~ msgid "Continue"
558
- #~ msgstr "Продолжить"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
langs/tinymce-advanced-sv_SE.mo DELETED
Binary file
langs/tinymce-advanced-sv_SE.po DELETED
@@ -1,362 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: TinyMCE Advanced\n"
4
- "POT-Creation-Date: 2016-03-17 12:21-0800\n"
5
- "PO-Revision-Date: 2016-03-17 14:16-0800\n"
6
- "Last-Translator: \n"
7
- "Language-Team: \n"
8
- "Language: sv_SE\n"
9
- "MIME-Version: 1.0\n"
10
- "Content-Type: text/plain; charset=UTF-8\n"
11
- "Content-Transfer-Encoding: 8bit\n"
12
- "X-Generator: Poedit 1.6.9\n"
13
- "X-Poedit-Basepath: .\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
16
- "_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_ex:1,2c;"
17
- "esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
18
- "X-Poedit-SearchPath-0: .\n"
19
- "X-Poedit-SearchPath-1: ..\n"
20
-
21
- #: ../tadv_admin.php:140
22
- msgid "Default settings restored."
23
- msgstr "Standardinställningar återställda."
24
-
25
- #: ../tadv_admin.php:152
26
- msgid "TinyMCE Advanced Settings Export"
27
- msgstr "TinyMCE Avancerad Inställningsexport"
28
-
29
- #: ../tadv_admin.php:156
30
- msgid "The settings are exported as a JSON encoded string."
31
- msgstr "Inställningarna exporteras som en JSON-kodad sträng."
32
-
33
- #: ../tadv_admin.php:157
34
- msgid ""
35
- "Please copy the content and save it in a <b>text</b> (.txt) file, using a "
36
- "plain text editor like Notepad."
37
- msgstr ""
38
- "Vänligen kopiera innehållet och spara det i en <b>text</b>-fil (.txt), genom "
39
- "en ren texteditor såsom Anteckningar."
40
-
41
- #: ../tadv_admin.php:158
42
- msgid ""
43
- "It is important that the export is not changed in any way, no spaces, line "
44
- "breaks, etc."
45
- msgstr ""
46
- "Det är viktigt att exporten inte ändras på något sätt, inga mellanrum eller "
47
- "radbrytningar etc."
48
-
49
- #: ../tadv_admin.php:163
50
- msgid "Select All"
51
- msgstr "Välj allt"
52
-
53
- #: ../tadv_admin.php:165 ../tadv_admin.php:191
54
- msgid "Back to Editor Settings"
55
- msgstr "Tillbaka till redigerarinställningar"
56
-
57
- #: ../tadv_admin.php:177
58
- msgid "TinyMCE Advanced Settings Import"
59
- msgstr "TinyMCE Avancerad Inställningsimport"
60
-
61
- #: ../tadv_admin.php:180
62
- msgid ""
63
- "The settings are imported from a JSON encoded string. Please paste the "
64
- "exported string in the text area below."
65
- msgstr ""
66
- "Inställningarna importeras från en JSON-kodad sträng. Vänligen klistra in "
67
- "den exporterade strängen i textfältet nedan."
68
-
69
- #: ../tadv_admin.php:185
70
- msgid "Verify"
71
- msgstr "Jämför"
72
-
73
- #: ../tadv_admin.php:186
74
- msgid "Import"
75
- msgstr "Importera"
76
-
77
- #: ../tadv_admin.php:216
78
- msgid "Importing of settings failed."
79
- msgstr "Import av inställningar misslyckades."
80
-
81
- #: ../tadv_admin.php:242
82
- msgid "ERROR: All toolbars are empty. Default settings loaded."
83
- msgstr "FEL: Alla verktygsfält är tomma. Ursprungsinställningar inladdade."
84
-
85
- #: ../tadv_admin.php:254
86
- msgid "Editor Settings"
87
- msgstr "Redigerarinställningar"
88
-
89
- #: ../tadv_admin.php:261
90
- msgid "Settings saved."
91
- msgstr "Inställningar sparade."
92
-
93
- #: ../tadv_admin.php:270 ../tadv_admin.php:540
94
- msgid "Save Changes"
95
- msgstr "Spara ändringar"
96
-
97
- #: ../tadv_admin.php:277
98
- msgid "Enable the editor menu."
99
- msgstr "Aktivera redigerarmenyn."
100
-
101
- #: ../tadv_admin.php:389
102
- msgid ""
103
- "Drag buttons from the unused buttons below and drop them in the toolbars "
104
- "above, or drag the buttons in the toolbars to rearrange them."
105
- msgstr ""
106
- "Dra knappar från de oanvända knapparna nedan och släpp dem i verktygsfälten "
107
- "ovan, eller dra knapparna i verktygsfältet för att arrangera om dem."
108
-
109
- #: ../tadv_admin.php:392
110
- msgid "Unused Buttons"
111
- msgstr "Oanvända knappar"
112
-
113
- #: ../tadv_admin.php:434
114
- #, fuzzy
115
- msgid "Options"
116
- msgstr "Avancerade tillval"
117
-
118
- #: ../tadv_admin.php:437
119
- msgid "List Style Options"
120
- msgstr "Liststil-tillval"
121
-
122
- #: ../tadv_admin.php:439
123
- msgid ""
124
- "Enable more list options: upper or lower case letters for ordered lists, "
125
- "disk or square for unordered lists, etc."
126
- msgstr ""
127
-
128
- #: ../tadv_admin.php:444
129
- msgid "Context Menu"
130
- msgstr "Sammanhangsmeny"
131
-
132
- #: ../tadv_admin.php:446
133
- msgid "Replace the browser context (right-click) menu."
134
- msgstr ""
135
-
136
- #: ../tadv_admin.php:451
137
- msgid "Alternative link dialog"
138
- msgstr ""
139
-
140
- #: ../tadv_admin.php:453
141
- msgid ""
142
- "Open the TinyMCE link dialog when using the link button on the toolbar or "
143
- "the link menu item."
144
- msgstr ""
145
-
146
- #: ../tadv_admin.php:458
147
- msgid "Font sizes"
148
- msgstr ""
149
-
150
- #: ../tadv_admin.php:459
151
- msgid ""
152
- "Replace the size setting available for fonts with: 8px 10px 12px 14px 16px "
153
- "20px 24px 28px 32px 36px 48px 60px."
154
- msgstr ""
155
- "Ersätter storleksinställningen för teckensnitt med: 8px 10px 12px 14px 16px "
156
- "20px 24px 28px 32px 36px 48px 60px."
157
-
158
- #: ../tadv_admin.php:467
159
- msgid "Advanced Options"
160
- msgstr "Avancerade tillval"
161
-
162
- #: ../tadv_admin.php:476
163
- msgid "Create CSS classes menu"
164
- msgstr ""
165
-
166
- #: ../tadv_admin.php:478
167
- msgid ""
168
- "Load the CSS classes used in editor-style.css and replace the Formats button "
169
- "and sub-menu."
170
- msgstr ""
171
- "Ladda CSS-klasser från editor-style.css och ersätt Formaterings-knapp och "
172
- "undermeny."
173
-
174
- #: ../tadv_admin.php:488
175
- msgid "Keep paragraph tags"
176
- msgstr ""
177
-
178
- #: ../tadv_admin.php:490
179
- #, fuzzy
180
- msgid ""
181
- "Stop removing the &lt;p&gt; and &lt;br /&gt; tags when saving and show them "
182
- "in the Text editor."
183
- msgstr ""
184
- "Sluta ta bort &lt;p&gt; och &lt;br /&gt;-taggar vid sparande och visa dem i "
185
- "textredigeraren"
186
-
187
- #: ../tadv_admin.php:491
188
- msgid ""
189
- "This will make it possible to use more advanced coding in the HTML editor "
190
- "without the back-end filtering affecting it much."
191
- msgstr ""
192
- "Detta möjliggör mer avancerad kodning i HTML-redigeraren utan att backend-"
193
- "filtrering påverkar så mycket."
194
-
195
- #: ../tadv_admin.php:492
196
- msgid ""
197
- "However it may behave unexpectedly in rare cases, so test it thoroughly "
198
- "before enabling it permanently."
199
- msgstr ""
200
- "Ändå kan det uppföra sig oväntat i särskilda fall, så testa noggrant innan "
201
- "du aktiverar det permanent."
202
-
203
- #: ../tadv_admin.php:493
204
- msgid ""
205
- "Line breaks in the HTML editor would still affect the output, in particular "
206
- "do not use empty lines, line breaks inside HTML tags or multiple &lt;br /"
207
- "&gt; tags."
208
- msgstr ""
209
- "Radbrytningar i HTML-redigeraren skulle fortfarande påverka utmatningen så "
210
- "använd i synnerhet inte några tomma rader, radbrytningar inuti HTML-taggar "
211
- "eller flera &lt;br /&gt;-taggar."
212
-
213
- #: ../tadv_admin.php:498
214
- msgid "Enable pasting of image source"
215
- msgstr "Aktivera inklistring av bildkällor"
216
-
217
- #: ../tadv_admin.php:500
218
- msgid ""
219
- "Works only in Firefox and Safari. These browsers support pasting of images "
220
- "directly in the editor and convert them to base64 encoded text."
221
- msgstr ""
222
- "Fungerar enbart med Firefox och Safari. Dessa webbläsare stöder inklistring "
223
- "av bilder direkt i redigeraren och konverterar dem till base64-kodad text."
224
-
225
- #: ../tadv_admin.php:501
226
- msgid ""
227
- "This is not acceptable for larger images like photos or graphics, but may be "
228
- "useful in some cases for very small images like icons, not larger than 2-3KB."
229
- msgstr ""
230
- "Detta är inte acceptabelt för större bilder som foton eller grafik, men kan "
231
- "vara användbart i vissa fall för väldigt små bilder såsom ikoner, inte "
232
- "större än 2-3kB."
233
-
234
- #: ../tadv_admin.php:502
235
- msgid "These images will not be available in the Media Library."
236
- msgstr "Dessa bilder kommer inte att finnas i Mediabiblioteket."
237
-
238
- #: ../tadv_admin.php:508
239
- msgid "Administration"
240
- msgstr "Administration"
241
-
242
- #: ../tadv_admin.php:510
243
- msgid "Settings import and export"
244
- msgstr ""
245
-
246
- #: ../tadv_admin.php:512
247
- msgid "Export Settings"
248
- msgstr "Exportera inställningar"
249
-
250
- #: ../tadv_admin.php:513
251
- msgid "Import Settings"
252
- msgstr "Importera inställningar"
253
-
254
- #: ../tadv_admin.php:517
255
- #, fuzzy
256
- msgid "Enable the editor enhancements for:"
257
- msgstr "Aktivera redigerarmenyn."
258
-
259
- #: ../tadv_admin.php:520
260
- msgid "The main editor (Add New and Edit posts and pages)"
261
- msgstr ""
262
-
263
- #: ../tadv_admin.php:524
264
- msgid "Other editors in wp-admin"
265
- msgstr ""
266
-
267
- #: ../tadv_admin.php:528
268
- msgid "Editors on the front end of the site"
269
- msgstr ""
270
-
271
- #: ../tadv_admin.php:539
272
- msgid "Restore Default Settings"
273
- msgstr "Återställ ursprungsinställningar"
274
-
275
- #: ../tadv_admin.php:545
276
- msgid ""
277
- "The [Toolbar toggle] button shows or hides the second, third, and forth "
278
- "button rows. It will only work when it is in the first row and there are "
279
- "buttons in the second row."
280
- msgstr ""
281
- "[Växla verktygsfält]-knappen visar eller gömmer den andra, tredje och fjärde "
282
- "knappraden. Det fungerar endast när knappen finns på den första raden och "
283
- "det finns knappar i den andra raden."
284
-
285
- #: ../tinymce-advanced.php:221
286
- #, php-format
287
- msgid ""
288
- "TinyMCE Advanced requires WordPress version %1$s or newer. It appears that "
289
- "you are running %2$s. This can make the editor unstable."
290
- msgstr ""
291
- "Detta tillägg kräver WordPress version %1$s eller nyare. Det verkar som att "
292
- "du kör %2$s. Detta kan göra redigeraren instabil."
293
-
294
- #: ../tinymce-advanced.php:228
295
- #, php-format
296
- msgid ""
297
- "Please upgrade your WordPress installation or download an <a href=\"%s"
298
- "\">older version of the plugin</a>."
299
- msgstr ""
300
- "Vänligen uppgradera din WordPress-installation eller ladda hem en <a href="
301
- "\"%s\">äldre version av tillägget</a>."
302
-
303
- #: ../tinymce-advanced.php:703
304
- #, fuzzy
305
- msgid "Settings"
306
- msgstr "Redigerarinställningar"
307
-
308
- #~ msgid ""
309
- #~ "New in TinyMCE 4.0/WordPress 3.9 is the editor menu. When it is enabled, "
310
- #~ "most buttons are also available as menu items."
311
- #~ msgstr ""
312
- #~ "Nytt i TinyMCE 4.0/WordPress 3.9 är redigerarmenyn. När den är aktiverad "
313
- #~ "blir de flesta knapparna också tillgängliga som menyval."
314
-
315
- #~ msgid "Also enable:"
316
- #~ msgstr "Aktivera också:"
317
-
318
- #~ msgid "Link (replaces the Insert/Edit Link dialog)"
319
- #~ msgstr "Länk (ersätter dialogfönstret Infoga/redigera länk)"
320
-
321
- #~ msgid "Import editor-style.css."
322
- #~ msgstr "Importera editor-style.css."
323
-
324
- #~ msgid ""
325
- #~ "It seems your theme does not support customised styles for the editor."
326
- #~ msgstr ""
327
- #~ "Det verkar som att ditt tema inte stöder anpassade stilar för redigeraren."
328
-
329
- #~ msgid ""
330
- #~ "You can create a CSS file named <code>editor-style.css</code> and upload "
331
- #~ "it to your theme's directory."
332
- #~ msgstr ""
333
- #~ "Du kan skapa en CSS-fil namngiven <code>editor-style.css</code> och ladda "
334
- #~ "upp till ditt temas mapp."
335
-
336
- #~ msgid "After that, enable this setting."
337
- #~ msgstr "Efteråt, aktivera denna inställning."
338
-
339
- #~ msgid "Replace font size settings"
340
- #~ msgstr "Ersätt textstorleksinställningar"
341
-
342
- #~ msgid "Markdown typing support (text pattern plugin)"
343
- #~ msgstr "Stöd för att skriva Markdown (tillägg för textflöde)"
344
-
345
- #~ msgid ""
346
- #~ "This plugin matches special patterns while you type and applies formats "
347
- #~ "or executes commands on the matched text."
348
- #~ msgstr ""
349
- #~ "Detta tillägg matchar speciella mönster medan du skriver och applicerar "
350
- #~ "formatering eller utför kommandon utifrån matchad text."
351
-
352
- #~ msgid ""
353
- #~ "The default patterns are the same as the markdown syntax so you can type "
354
- #~ "<code># text</code> to create a header, <code>1. text</code> to create a "
355
- #~ "list, <code>**text**</code> to make it bold, etc."
356
- #~ msgstr ""
357
- #~ "Standardmönster är samma som markdown-syntax så att du kan skriva <code># "
358
- #~ "text</code> för att skapa en rubrik, <code>1. text</code> för att skapa "
359
- #~ "en lista, <code>**text**</code> för fet stil etc."
360
-
361
- #~ msgid "More information"
362
- #~ msgstr "Mer information"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
langs/tinymce-advanced.pot DELETED
@@ -1,269 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: TinyMCE Advanced\n"
4
- "POT-Creation-Date: 2016-03-17 12:21-0800\n"
5
- "PO-Revision-Date: 2016-03-17 12:21-0800\n"
6
- "Last-Translator: \n"
7
- "Language-Team: \n"
8
- "Language: en_US\n"
9
- "MIME-Version: 1.0\n"
10
- "Content-Type: text/plain; charset=UTF-8\n"
11
- "Content-Transfer-Encoding: 8bit\n"
12
- "X-Generator: Poedit 1.6.9\n"
13
- "X-Poedit-Basepath: .\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
16
- "_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_ex:1,2c;"
17
- "esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
18
- "X-Poedit-SearchPath-0: .\n"
19
- "X-Poedit-SearchPath-1: ..\n"
20
-
21
- #: ../tadv_admin.php:140
22
- msgid "Default settings restored."
23
- msgstr ""
24
-
25
- #: ../tadv_admin.php:152
26
- msgid "TinyMCE Advanced Settings Export"
27
- msgstr ""
28
-
29
- #: ../tadv_admin.php:156
30
- msgid "The settings are exported as a JSON encoded string."
31
- msgstr ""
32
-
33
- #: ../tadv_admin.php:157
34
- msgid ""
35
- "Please copy the content and save it in a <b>text</b> (.txt) file, using a "
36
- "plain text editor like Notepad."
37
- msgstr ""
38
-
39
- #: ../tadv_admin.php:158
40
- msgid ""
41
- "It is important that the export is not changed in any way, no spaces, line "
42
- "breaks, etc."
43
- msgstr ""
44
-
45
- #: ../tadv_admin.php:163
46
- msgid "Select All"
47
- msgstr ""
48
-
49
- #: ../tadv_admin.php:165 ../tadv_admin.php:191
50
- msgid "Back to Editor Settings"
51
- msgstr ""
52
-
53
- #: ../tadv_admin.php:177
54
- msgid "TinyMCE Advanced Settings Import"
55
- msgstr ""
56
-
57
- #: ../tadv_admin.php:180
58
- msgid ""
59
- "The settings are imported from a JSON encoded string. Please paste the "
60
- "exported string in the text area below."
61
- msgstr ""
62
-
63
- #: ../tadv_admin.php:185
64
- msgid "Verify"
65
- msgstr ""
66
-
67
- #: ../tadv_admin.php:186
68
- msgid "Import"
69
- msgstr ""
70
-
71
- #: ../tadv_admin.php:216
72
- msgid "Importing of settings failed."
73
- msgstr ""
74
-
75
- #: ../tadv_admin.php:242
76
- msgid "ERROR: All toolbars are empty. Default settings loaded."
77
- msgstr ""
78
-
79
- #: ../tadv_admin.php:254
80
- msgid "Editor Settings"
81
- msgstr ""
82
-
83
- #: ../tadv_admin.php:261
84
- msgid "Settings saved."
85
- msgstr ""
86
-
87
- #: ../tadv_admin.php:270 ../tadv_admin.php:540
88
- msgid "Save Changes"
89
- msgstr ""
90
-
91
- #: ../tadv_admin.php:277
92
- msgid "Enable the editor menu."
93
- msgstr ""
94
-
95
- #: ../tadv_admin.php:389
96
- msgid ""
97
- "Drag buttons from the unused buttons below and drop them in the toolbars "
98
- "above, or drag the buttons in the toolbars to rearrange them."
99
- msgstr ""
100
-
101
- #: ../tadv_admin.php:392
102
- msgid "Unused Buttons"
103
- msgstr ""
104
-
105
- #: ../tadv_admin.php:434
106
- msgid "Options"
107
- msgstr ""
108
-
109
- #: ../tadv_admin.php:437
110
- msgid "List Style Options"
111
- msgstr ""
112
-
113
- #: ../tadv_admin.php:439
114
- msgid ""
115
- "Enable more list options: upper or lower case letters for ordered lists, "
116
- "disk or square for unordered lists, etc."
117
- msgstr ""
118
-
119
- #: ../tadv_admin.php:444
120
- msgid "Context Menu"
121
- msgstr ""
122
-
123
- #: ../tadv_admin.php:446
124
- msgid "Replace the browser context (right-click) menu."
125
- msgstr ""
126
-
127
- #: ../tadv_admin.php:451
128
- msgid "Alternative link dialog"
129
- msgstr ""
130
-
131
- #: ../tadv_admin.php:453
132
- msgid ""
133
- "Open the TinyMCE link dialog when using the link button on the toolbar or "
134
- "the link menu item."
135
- msgstr ""
136
-
137
- #: ../tadv_admin.php:458
138
- msgid "Font sizes"
139
- msgstr ""
140
-
141
- #: ../tadv_admin.php:459
142
- msgid ""
143
- "Replace the size setting available for fonts with: 8px 10px 12px 14px 16px "
144
- "20px 24px 28px 32px 36px 48px 60px."
145
- msgstr ""
146
-
147
- #: ../tadv_admin.php:467
148
- msgid "Advanced Options"
149
- msgstr ""
150
-
151
- #: ../tadv_admin.php:476
152
- msgid "Create CSS classes menu"
153
- msgstr ""
154
-
155
- #: ../tadv_admin.php:478
156
- msgid ""
157
- "Load the CSS classes used in editor-style.css and replace the Formats button "
158
- "and sub-menu."
159
- msgstr ""
160
-
161
- #: ../tadv_admin.php:488
162
- msgid "Keep paragraph tags"
163
- msgstr ""
164
-
165
- #: ../tadv_admin.php:490
166
- msgid ""
167
- "Stop removing the &lt;p&gt; and &lt;br /&gt; tags when saving and show them "
168
- "in the Text editor."
169
- msgstr ""
170
-
171
- #: ../tadv_admin.php:491
172
- msgid ""
173
- "This will make it possible to use more advanced coding in the HTML editor "
174
- "without the back-end filtering affecting it much."
175
- msgstr ""
176
-
177
- #: ../tadv_admin.php:492
178
- msgid ""
179
- "However it may behave unexpectedly in rare cases, so test it thoroughly "
180
- "before enabling it permanently."
181
- msgstr ""
182
-
183
- #: ../tadv_admin.php:493
184
- msgid ""
185
- "Line breaks in the HTML editor would still affect the output, in particular "
186
- "do not use empty lines, line breaks inside HTML tags or multiple &lt;br /"
187
- "&gt; tags."
188
- msgstr ""
189
-
190
- #: ../tadv_admin.php:498
191
- msgid "Enable pasting of image source"
192
- msgstr ""
193
-
194
- #: ../tadv_admin.php:500
195
- msgid ""
196
- "Works only in Firefox and Safari. These browsers support pasting of images "
197
- "directly in the editor and convert them to base64 encoded text."
198
- msgstr ""
199
-
200
- #: ../tadv_admin.php:501
201
- msgid ""
202
- "This is not acceptable for larger images like photos or graphics, but may be "
203
- "useful in some cases for very small images like icons, not larger than 2-3KB."
204
- msgstr ""
205
-
206
- #: ../tadv_admin.php:502
207
- msgid "These images will not be available in the Media Library."
208
- msgstr ""
209
-
210
- #: ../tadv_admin.php:508
211
- msgid "Administration"
212
- msgstr ""
213
-
214
- #: ../tadv_admin.php:510
215
- msgid "Settings import and export"
216
- msgstr ""
217
-
218
- #: ../tadv_admin.php:512
219
- msgid "Export Settings"
220
- msgstr ""
221
-
222
- #: ../tadv_admin.php:513
223
- msgid "Import Settings"
224
- msgstr ""
225
-
226
- #: ../tadv_admin.php:517
227
- msgid "Enable the editor enhancements for:"
228
- msgstr ""
229
-
230
- #: ../tadv_admin.php:520
231
- msgid "The main editor (Add New and Edit posts and pages)"
232
- msgstr ""
233
-
234
- #: ../tadv_admin.php:524
235
- msgid "Other editors in wp-admin"
236
- msgstr ""
237
-
238
- #: ../tadv_admin.php:528
239
- msgid "Editors on the front end of the site"
240
- msgstr ""
241
-
242
- #: ../tadv_admin.php:539
243
- msgid "Restore Default Settings"
244
- msgstr ""
245
-
246
- #: ../tadv_admin.php:545
247
- msgid ""
248
- "The [Toolbar toggle] button shows or hides the second, third, and forth "
249
- "button rows. It will only work when it is in the first row and there are "
250
- "buttons in the second row."
251
- msgstr ""
252
-
253
- #: ../tinymce-advanced.php:221
254
- #, php-format
255
- msgid ""
256
- "TinyMCE Advanced requires WordPress version %1$s or newer. It appears that "
257
- "you are running %2$s. This can make the editor unstable."
258
- msgstr ""
259
-
260
- #: ../tinymce-advanced.php:228
261
- #, php-format
262
- msgid ""
263
- "Please upgrade your WordPress installation or download an <a href=\"%s"
264
- "\">older version of the plugin</a>."
265
- msgstr ""
266
-
267
- #: ../tinymce-advanced.php:703
268
- msgid "Settings"
269
- msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
mce/wptadv/plugin.js CHANGED
@@ -2,7 +2,7 @@
2
  * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
  * For more information please see tinymce-advanced.php.
4
  *
5
- * Copyright (c) 2007-2018 Andrew Ozz. All rights reserved.
6
  */
7
 
8
  ( function( tinymce ) {
2
  * This file is part of the TinyMCE Advanced WordPress plugin and is released under the same license.
3
  * For more information please see tinymce-advanced.php.
4
  *
5
+ * Copyright (c) 2007-2019 Andrew Ozz. All rights reserved.
6
  */
7
 
8
  ( function( tinymce ) {
readme.txt CHANGED
@@ -8,27 +8,27 @@ Requires PHP: 5.2
8
  License: GPLv2
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
- Extends and enhances TinyMCE, the visual editor used in both the Classic Editor and the new Block Editor in WordPress.
12
 
13
  == Description ==
14
 
15
- For WordPress version 5.0 and newer the TinyMCE Advanced plugin introduces a "Hybrid Mode" for the new Block Editor (Gutenberg).
16
- It brings the best of both editors together, enhances the Classic Block and adds a new Classic Paragraph Block that includes the TinyMCE editor.
 
17
 
18
- If you are not quite ready to switch to the Block Editor, or have plugins that cannot be used there (yet), using Hybrid Mode is your best option.
19
- It lets you to continue to use the familiar "Classic" editor inside the Classic and Classic Paragraph Block, and at the same time gives you access to all blocks and new features in the Block Editor.
20
 
21
- If you want to continue to use the previous editor in WordPress 5.0 and newer, this plugin has an option to replace the new editor with the previous one. If you prefer to have access to both editors side by side or to allow your users to switch editors, it would be better to install the [Classic Editor plugin](https://wordpress.org/plugins/classic-editor/). TinyMCE Advanced is fully compatible with the Classic Editor plugin and similar plugins that restore use of the previous WordPress editor.
22
 
23
- As always this plugin will let you add, remove and arrange the buttons that are shown on the Visual Editor toolbar in the Classic Block in the new Block Editor, and in the Classic Editor (when enabled by a plugin). You can configure up to four rows of buttons including Font Sizes, Font Family, text and background colors, tables, etc. It will also let you enable the editor menu, see the [screenshots](screenshots).
24
 
25
  It includes 15 plugins for [TinyMCE](https://tinymce.com/) that are automatically enabled or disabled depending on the buttons you have chosen.
26
- In addition this plugin adds some commonly used options as keeping the paragraph tags in the Text editor and importing the CSS classes from the theme's editor-style.css.
27
 
28
  = Some of the features added by this plugin =
29
 
30
  * Hybrid mode that lets you use the best of both editors.
31
- * Includes a "Classic Paragraph Block" that can be used instead of or together with the default Paragraph Block.
32
  * Supports converting of most default blocks to "classic" paragraphs, and from classic paragraphs back to the default blocks.
33
  * Support for creating and editing tables in the Classic Blocks and the Classic Editor.
34
  * More options when inserting lists in the Classic Blocks and the Classic Editor.
@@ -48,6 +48,14 @@ Best is to install directly from WordPress. If manual installation is required,
48
 
49
  == Changelog ==
50
 
 
 
 
 
 
 
 
 
51
  = 4.8.2 =
52
  * Fixes and improvements for 4.8.1.
53
  * Added separate option to enable the Classic Paragraph Block.
@@ -211,16 +219,6 @@ Improved language selection, improved compatibility with WordPress 2.3 and TinyM
211
  = 2.0 =
212
  Includes an admin page for arranging the TinyMCE toolbar buttons, easy installation, a lot of bugfixes, customized "Smilies" plugin that uses the built-in WordPress smilies, etc. The admin page uses jQuery and jQuery UI that lets you "drag and drop" the TinyMCE buttons to arrange your own toolbars and enables/disables the corresponding plugins depending on the used buttons.
213
 
214
- == Upgrade Notice ==
215
-
216
- = 4.2.3 =
217
- Updated for WordPress 4.3 and TinyMCE 4.2.3.
218
-
219
- = 4.1.9 =
220
- Updated for WordPress 4.2 and TinyMCE 4.1.9.
221
-
222
- = 4.1 =
223
- Includes the `textpattern` plugin that supports some of the markdown syntax while typing, and the updated 'table' plugin that supports background and border color for tables.
224
 
225
  == Frequently Asked Questions ==
226
 
@@ -242,7 +240,7 @@ Make sure the "Disable the visual editor when writing" checkbox under "Users - Y
242
 
243
  = I still see the "old" buttons in the editor =
244
 
245
- Click the "Restore Default Settings" button on the plugin settings page and then set the buttons again and save.
246
 
247
  = Other questions? More screenshots? =
248
 
@@ -250,14 +248,15 @@ Please post on the support forum or visit the homepage for [TinyMCE Advanced](ht
250
 
251
  == Screenshots ==
252
 
253
- 1. Classic Paragraph Block.
254
- 2. The Classic Editor (TinyMCE) toolbars settings.
255
- 3. The Classic Block (Block Editor) toolbars settings.
256
- 4. Editor options.
257
- 5. Advanced plugin options.
258
- 6. Administration options.
 
259
 
260
  == Upgrade Notice ==
261
 
262
- = 4.8.2 =
263
- Fixes and improvements for 4.8.1. Includes a Classic Paragraph Block. Can convert most default blocks to and from classic paragraphs.
8
  License: GPLv2
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
+ Extends and enhances the Block Editor (Gutenberg) and the Classic Editor (TinyMCE).
12
 
13
  == Description ==
14
 
15
+ TinyMCE Advanced introduces a "Classic Paragraph" block and a "Hybrid Mode" for the new Block Editor (Gutenberg).
16
+ If you are not quite ready to switch to the Block Editor, or have plugins that cannot be used there (yet), using the Classic Paragraph block and Hybrid Mode is your best option.
17
+ It lets you to continue to use the familiar TinyMCE editor for most tasks, and at the same time gives you full access to all blocks and new features in the Block Editor.
18
 
19
+ Version 5.0 is a major update of TinyMCE Advanced. It introduces additional buttons and settings for the "Rich Text" toolbars in the Block Editor. Similarly to the Classic Editor toolbars, most of the buttons can be added, removed or rearranged.
 
20
 
21
+ If you want to continue to use the previous ("classic") editor in WordPress 5.0 and newer, this plugin has an option to replace the new editor with the previous one. If you prefer to have access to both editors side by side or to allow your users to switch editors, it would be better to install the [Classic Editor plugin](https://wordpress.org/plugins/classic-editor/). TinyMCE Advanced is fully compatible with the Classic Editor plugin and similar plugins that restore use of the previous WordPress editor.
22
 
23
+ As always this plugin will let you add, remove and arrange the buttons that are shown on the Visual Editor toolbar in the Classic Paragraph and Classic blocks in the new Block Editor, and in the Classic Editor (when enabled by a plugin). There you can configure up to four rows of buttons including Font Sizes, Font Family, text and background colors, tables, etc.
24
 
25
  It includes 15 plugins for [TinyMCE](https://tinymce.com/) that are automatically enabled or disabled depending on the buttons you have chosen.
26
+ In addition this plugin adds options for keeping the paragraph tags in text mode and importing the CSS classes from the theme's editor-style.css.
27
 
28
  = Some of the features added by this plugin =
29
 
30
  * Hybrid mode that lets you use the best of both editors.
31
+ * Includes a "Classic Paragraph" Block that can be used instead of or together with the default Paragraph Block.
32
  * Supports converting of most default blocks to "classic" paragraphs, and from classic paragraphs back to the default blocks.
33
  * Support for creating and editing tables in the Classic Blocks and the Classic Editor.
34
  * More options when inserting lists in the Classic Blocks and the Classic Editor.
48
 
49
  == Changelog ==
50
 
51
+ = 5.0.0 =
52
+ * Added several new buttons to the rich-text toolbar in the Block Editor.
53
+ * Added functionality to add, remove and arrange most buttons on the rich-text toolbar in the Block Editor.
54
+ * Added alternative location for buttons for the rich-text component. That lets users move buttons that are not used frequently out of the way.
55
+ * Added settings for selected text color and background color.
56
+ * Improved fixes and enhancements for the Classic Block.
57
+ * Improved the Classic Paragraph Block and added support for converting from most blocks to classic paragraphs, and converting a classic paragraph into separate blocks.
58
+
59
  = 4.8.2 =
60
  * Fixes and improvements for 4.8.1.
61
  * Added separate option to enable the Classic Paragraph Block.
219
  = 2.0 =
220
  Includes an admin page for arranging the TinyMCE toolbar buttons, easy installation, a lot of bugfixes, customized "Smilies" plugin that uses the built-in WordPress smilies, etc. The admin page uses jQuery and jQuery UI that lets you "drag and drop" the TinyMCE buttons to arrange your own toolbars and enables/disables the corresponding plugins depending on the used buttons.
221
 
 
 
 
 
 
 
 
 
 
 
222
 
223
  == Frequently Asked Questions ==
224
 
240
 
241
  = I still see the "old" buttons in the editor =
242
 
243
+ Re-save the settings or click the "Restore Default Settings" button on the plugin settings page and then set the buttons again and save.
244
 
245
  = Other questions? More screenshots? =
246
 
248
 
249
  == Screenshots ==
250
 
251
+ 1. Rich-text toolbar and selected text color settings.
252
+ 2. The Classic Paragraph Block.
253
+ 3. Converting several paragraphs into one classic paragraph.
254
+ 4. Converting several paragraphs into one classic paragraph.
255
+ 5. Settings for the rich-text toolbar, the Formatting toolbar and the selected text color.
256
+ 6. Settings for the toolbars in Classic Paragraph and Classic blocks.
257
+ 7. Additional options (defaults are shown).
258
 
259
  == Upgrade Notice ==
260
 
261
+ = 5.0.0 =
262
+ Major upgrade. Includes additional buttons and settings for the toolbars in the Block Editor.
screenshot-1.png DELETED
Binary file
screenshot-2.png DELETED
Binary file
screenshot-3.png DELETED
Binary file
screenshot-4.png DELETED
Binary file
screenshot-5.png DELETED
Binary file
screenshot-6.png DELETED
Binary file
tadv_admin.php CHANGED
@@ -18,6 +18,7 @@ if ( ! current_user_can( 'manage_options' ) ) {
18
  $message = '';
19
  $tadv_options_updated = false;
20
  $settings = $admin_settings = array();
 
21
 
22
  if ( isset( $_POST['tadv-save'] ) ) {
23
  check_admin_referer( 'tadv-save-buttons-order' );
@@ -33,7 +34,7 @@ if ( isset( $_POST['tadv-save'] ) ) {
33
  $this->user_settings = $this->get_default_user_settings();
34
  update_option( 'tadv_settings', $this->get_default_user_settings() );
35
 
36
- $message = '<div class="updated notice notice-success is-dismissible"><p>' . __('Default settings restored.', 'tinymce-advanced') . '</p></div>';
37
  } elseif ( isset( $_POST['tadv-export-settings'] ) ) {
38
  check_admin_referer( 'tadv-save-buttons-order' );
39
 
@@ -116,7 +117,7 @@ if ( empty( $this->toolbar_1 ) && empty( $this->toolbar_2 ) && empty( $this->too
116
  $all_buttons = $this->get_all_buttons();
117
 
118
  ?>
119
- <div class="wrap tinymce-advanced" id="contain">
120
  <h2><?php _e( 'Editor Settings', 'tinymce-advanced' ); ?></h2>
121
  <?php
122
 
@@ -129,166 +130,346 @@ if ( isset( $_POST['tadv-save'] ) && empty( $message ) ) {
129
  echo $message;
130
  }
131
 
 
 
132
  ?>
133
  <form id="tadvadmin" method="post" action="">
134
 
135
- <p class="tadv-submit tadv-submit-top">
136
- <input class="button-primary button-large top-button" type="submit" name="tadv-save" value="<?php _e( 'Save Changes', 'tinymce-advanced' ); ?>" />
137
- </p>
 
 
 
 
 
 
 
 
 
 
 
 
138
 
139
- <div id="classic-editor">
140
- <h3><?php _e( 'Toolbars for the Classic Editor (TinyMCE)', 'tinymce-advanced' ); ?></h3>
 
 
 
 
141
 
142
- <div id="tadvzones">
143
- <p>
144
- <input type="checkbox" name="options[]" id="menubar" value="menubar" <?php if ( $this->check_user_setting( 'menubar' ) ) { echo ' checked="checked"'; } ?>>
145
- <label for="menubar"><?php _e( 'Enable the editor menu.', 'tinymce-advanced' ); ?></label>
146
- </p>
147
 
148
- <div class="tadv-mce-menu tadv-classic-editor mce-container mce-menubar mce-toolbar mce-first mce-stack-layout-item
149
- <?php if ( $this->check_user_setting( 'menubar' ) ) { echo ' enabled'; } ?>">
150
- <div class="mce-container-body mce-flow-layout">
151
- <div class="mce-widget mce-btn mce-menubtn mce-first mce-flow-layout-item">
152
- <button type="button">
153
- <span class="tadv-translate">File</span>
154
- <i class="mce-caret"></i>
155
- </button>
156
- </div>
157
- <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item">
158
- <button type="button">
159
- <span class="tadv-translate">Edit</span>
160
- <i class="mce-caret"></i>
161
- </button>
162
- </div>
163
- <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item">
164
- <button type="button">
165
- <span class="tadv-translate">Insert</span>
166
- <i class="mce-caret"></i>
167
- </button>
168
- </div>
169
- <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item mce-toolbar-item">
170
- <button type="button">
171
- <span class="tadv-translate">View</span>
172
- <i class="mce-caret"></i>
173
- </button>
174
- </div>
175
- <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item">
176
- <button type="button">
177
- <span class="tadv-translate">Format</span>
178
- <i class="mce-caret"></i>
179
- </button>
180
- </div>
181
- <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item">
182
- <button type="button">
183
- <span class="tadv-translate">Table</span>
184
- <i class="mce-caret"></i>
185
- </button>
186
- </div>
187
- <div class="mce-widget mce-btn mce-menubtn mce-last mce-flow-layout-item">
188
- <button type="button">
189
- <span class="tadv-translate">Tools</span>
190
- <i class="mce-caret"></i>
191
- </button>
192
  </div>
193
- </div>
194
- </div>
195
 
196
- <?php
 
 
197
 
198
- $mce_text_buttons = array( 'styleselect', 'formatselect', 'fontselect', 'fontsizeselect' );
199
- $all_buttons_classic = $all_buttons;
200
 
201
- for ( $i = 1; $i < 5; $i++ ) {
202
- $toolbar = "toolbar_$i";
 
 
 
 
 
 
203
 
204
- ?>
205
- <div class="tadvdropzone mce-toolbar">
206
- <ul id="toolbar_<?php echo $i; ?>" class="container">
207
- <?php
 
 
 
208
 
209
- foreach( $this->$toolbar as $button ) {
210
- if ( strpos( $button, 'separator' ) !== false || in_array( $button, array( 'moveforward', 'movebackward', 'absolute' ) ) ) {
211
- continue;
212
- }
213
 
214
- if ( isset( $all_buttons_classic[ $button ] ) ) {
215
- $name = $all_buttons_classic[ $button ];
216
- unset( $all_buttons_classic[ $button ] );
217
- } else {
218
- continue;
219
- }
220
 
221
- ?>
222
- <li class="tadvmodule" id="<?php echo $button; ?>">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
223
  <?php
224
 
225
- if ( in_array( $button, $mce_text_buttons, true ) ) {
226
- ?>
227
- <div class="tadvitem mce-widget mce-btn mce-menubtn mce-fixed-width mce-listbox">
228
- <div class="the-button">
229
- <span class="descr"><?php echo $name; ?></span>
230
- <i class="mce-caret"></i>
231
- <input type="hidden" class="tadv-button" name="toolbar_<?php echo $i; ?>[]" value="<?php echo $button; ?>" />
232
  </div>
233
- </div>
234
- <?php
235
- } else {
236
- ?>
237
- <div class="tadvitem">
238
- <i class="mce-ico mce-i-<?php echo $button; ?>" title="<?php echo $name; ?>"></i>
239
- <span class="descr"><?php echo $name; ?></span>
240
- <input type="hidden" class="tadv-button" name="toolbar_<?php echo $i; ?>[]" value="<?php echo $button; ?>" />
241
- </div>
242
- <?php
243
  }
244
 
245
  ?>
246
- </li>
247
- <?php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
248
 
249
- }
250
 
251
- ?>
252
- </ul></div>
253
- <?php
254
- }
255
 
256
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
257
  </div>
258
 
259
  <p><?php _e( 'Drop buttons in the toolbars, or drag the buttons to rearrange them.', 'tinymce-advanced' ); ?></p>
260
 
261
  <div class="unuseddiv">
262
- <h4><?php _e( 'Unused Buttons', 'tinymce-advanced' ); ?></h4>
263
  <div>
264
- <ul id="unused" class="unused container">
265
  <?php
266
 
267
- foreach( $all_buttons_classic as $button => $name ) {
268
- if ( strpos( $button, 'separator' ) !== false ) {
269
  continue;
270
  }
271
 
272
  ?>
273
- <li class="tadvmodule" id="<?php echo $button; ?>">
274
  <?php
275
 
276
- if ( in_array( $button, $mce_text_buttons, true ) ) {
277
  ?>
278
  <div class="tadvitem mce-widget mce-btn mce-menubtn mce-fixed-width mce-listbox">
279
  <div class="the-button">
280
  <span class="descr"><?php echo $name; ?></span>
281
  <i class="mce-caret"></i>
282
- <input type="hidden" class="tadv-button" name="unused[]" value="<?php echo $button; ?>" />
283
  </div>
284
  </div>
285
  <?php
286
  } else {
287
  ?>
288
  <div class="tadvitem">
289
- <i class="mce-ico mce-i-<?php echo $button; ?>" title="<?php echo $name; ?>"></i>
290
  <span class="descr"><?php echo $name; ?></span>
291
- <input type="hidden" class="tadv-button" name="unused[]" value="<?php echo $button; ?>" />
292
  </div>
293
  <?php
294
  }
@@ -300,26 +481,21 @@ for ( $i = 1; $i < 5; $i++ ) {
300
 
301
  ?>
302
  </ul>
303
- </div><!-- /highlighted -->
304
- </div>
305
- </div><!-- /classic-editor -->
306
-
307
- <div id="block-editor">
308
- <h3><?php _e( 'Toolbars for the Classic Blocks in the Block Editor (Gutenberg)', 'tinymce-advanced' ); ?></h3>
309
 
310
- <p>
311
- <?php _e( 'The toolbars in the Classic Block are narrower and show on focus.', 'tinymce-advanced' ); ?>
312
- <?php _e( 'For best results enable the menu and add only essential buttons.', 'tinymce-advanced' ); ?>
313
- <?php _e( 'The buttons will wrap around depending on the width of the toolbar.', 'tinymce-advanced' ); ?>
314
- </p>
315
 
 
316
  <p>
317
- <input type="checkbox" name="options[]" id="menubar_block" value="menubar_block" <?php if ( $this->check_user_setting( 'menubar_block' ) ) { echo ' checked'; } ?>>
318
- <label for="menubar_block"><?php _e( 'Enable the editor menu (recommended).', 'tinymce-advanced' ); ?></label>
319
  </p>
320
 
321
- <div class="tadv-mce-menu tadv-block-editor mce-container mce-menubar mce-toolbar mce-first mce-stack-layout-item
322
- <?php if ( $this->check_user_setting( 'menubar_block' ) ) { echo ' enabled'; } ?>">
323
  <div class="mce-container-body mce-flow-layout">
324
  <div class="mce-widget mce-btn mce-menubtn mce-first mce-flow-layout-item">
325
  <button type="button">
@@ -366,25 +542,27 @@ for ( $i = 1; $i < 5; $i++ ) {
366
  </div>
367
  </div>
368
 
369
- <div class="tadvdropzone tadv-block-editor mce-toolbar">
370
- <ul id="toolbar_classic_block" class="container-classic-block">
371
- <?php
372
 
373
- $all_buttons_block = $all_buttons;
 
374
 
375
- // Remove the toolbar-toggle
376
- unset( $all_buttons_block['wp_adv'] );
377
 
378
- foreach( $this->toolbar_classic_block as $button_id ) {
379
- $name = '';
 
 
380
 
381
- if ( strpos( $button, 'separator' ) !== false || in_array( $button, array( 'moveforward', 'movebackward', 'absolute' ) ) ) {
 
382
  continue;
383
  }
384
 
385
- if ( isset( $all_buttons_block[ $button_id ] ) ) {
386
- $name = $all_buttons_block[ $button_id ];
387
- unset( $all_buttons_block[ $button_id ] );
388
  } else {
389
  continue;
390
  }
@@ -399,7 +577,7 @@ for ( $i = 1; $i < 5; $i++ ) {
399
  <div class="the-button">
400
  <span class="descr"><?php echo $name; ?></span>
401
  <i class="mce-caret"></i>
402
- <input type="hidden" class="tadv-button" name="toolbar_classic_block[]" value="<?php echo $button_id; ?>" />
403
  </div>
404
  </div>
405
  <?php
@@ -408,7 +586,7 @@ for ( $i = 1; $i < 5; $i++ ) {
408
  <div class="tadvitem">
409
  <i class="mce-ico mce-i-<?php echo $button_id; ?>" title="<?php echo $name; ?>"></i>
410
  <span class="descr"><?php echo $name; ?></span>
411
- <input type="hidden" class="tadv-button" name="toolbar_classic_block[]" value="<?php echo $button_id; ?>" />
412
  </div>
413
  <?php
414
  }
@@ -416,22 +594,27 @@ for ( $i = 1; $i < 5; $i++ ) {
416
  ?>
417
  </li>
418
  <?php
 
419
  }
420
 
421
  ?>
422
- </ul>
 
 
 
 
423
  </div>
424
 
425
  <p><?php _e( 'Drop buttons in the toolbars, or drag the buttons to rearrange them.', 'tinymce-advanced' ); ?></p>
426
 
427
  <div class="unuseddiv">
428
- <h4><?php _e( 'Unused Buttons for the Classic Block', 'tinymce-advanced' ); ?></h4>
429
  <div>
430
- <ul id="unused-classic-block" class="unused container-classic-block">
431
  <?php
432
 
433
- foreach( $all_buttons_block as $button_id => $name ) {
434
- if ( strpos( $button, 'separator' ) !== false ) {
435
  continue;
436
  }
437
 
@@ -445,7 +628,7 @@ for ( $i = 1; $i < 5; $i++ ) {
445
  <div class="the-button">
446
  <span class="descr"><?php echo $name; ?></span>
447
  <i class="mce-caret"></i>
448
- <input type="hidden" class="tadv-button" name="unused-classic-block[]" value="<?php echo $button_id; ?>" />
449
  </div>
450
  </div>
451
  <?php
@@ -454,7 +637,7 @@ for ( $i = 1; $i < 5; $i++ ) {
454
  <div class="tadvitem">
455
  <i class="mce-ico mce-i-<?php echo $button_id; ?>" title="<?php echo $name; ?>"></i>
456
  <span class="descr"><?php echo $name; ?></span>
457
- <input type="hidden" class="tadv-button" name="unused-classic-block[]" value="<?php echo $button_id; ?>" />
458
  </div>
459
  <?php
460
  }
@@ -466,17 +649,25 @@ for ( $i = 1; $i < 5; $i++ ) {
466
 
467
  ?>
468
  </ul>
469
- </div><!-- /highlight -->
470
- </div><!-- /unuseddiv -->
471
- </div><!-- /block-editor -->
 
 
 
 
 
 
472
 
 
473
  <div class="advanced-options">
474
  <h3><?php _e( 'Options', 'tinymce-advanced' ); ?></h3>
475
 
476
  <div>
477
  <input type="checkbox" name="options[]" value="merge_toolbars" id="merge_toolbars" <?php if ( $this->check_user_setting( 'merge_toolbars' ) ) echo ' checked'; ?> />
478
- <label for="merge_toolbars"><?php _e( 'Append all buttons to the top toolbar in the Classic and Classic Paragraph blocks.', 'tinymce-advanced' ); ?></label>
479
  <p><?php _e( 'This affects buttons that are added by other plugins. These buttons will be appended to the top toolbar row instead of forming second, third, and forth rows.', 'tinymce-advanced' ); ?></p>
 
480
  </div>
481
 
482
  <div>
@@ -508,8 +699,6 @@ for ( $i = 1; $i < 5; $i++ ) {
508
  <?php
509
 
510
  if ( ! is_multisite() || current_user_can( 'manage_sites' ) ) {
511
- $preselect = function_exists( 'use_block_editor_for_post_type' ) ? '' : '<p>' . __( 'You can pre-select this option. It will be enabled as soon as you upgrade to WordPress 5.0 or later.', 'tinymce-advanced' ) . '</p>';
512
-
513
  ?>
514
  <div class="advanced-options">
515
  <h3><?php _e( 'Advanced Options', 'tinymce-advanced' ); ?></h3>
@@ -519,25 +708,25 @@ if ( ! is_multisite() || current_user_can( 'manage_sites' ) ) {
519
  <p>
520
  <strong><?php _e( 'Brings the best of both editors together.', 'tinymce-advanced' ); ?></strong>
521
  <?php _e( 'Selecting this option makes the Classic Block in the Block Editor somewhat more prominent and adds improvements and fixes for it.', 'tinymce-advanced' ); ?>
522
- <?php _e( 'By default most existing TinyMCE plugins and add-ons will continue to work there.', 'tinymce-advanced' ); ?>
523
  </p>
524
- <?php echo $preselect ?>
525
  </div>
526
-
527
  <div>
528
  <input type="checkbox" name="admin_options[]" value="classic_paragraph_block" id="classic_paragraph_block" <?php if ( $this->check_admin_setting( 'classic_paragraph_block' ) ) echo ' checked'; ?> />
529
  <label for="classic_paragraph_block"><?php _e( 'Add &#8220;Classic Paragraph&#8221; Block.', 'tinymce-advanced' ); ?></label>
530
  <p>
531
- <?php _e( 'The Classic Paragraph Block includes the familiar TinyMCE editor and behaves similarly to the Classic Block.', 'tinymce-advanced' ); ?>
532
- <?php _e( 'You can add multiple paragraphs, tables, galleries, embed video, set fonts and colors, and generally use everything that is available in the Classic Editor and the Classic Block.', 'tinymce-advanced' ); ?>
533
  <?php _e( 'Also, like the Classic Block, most existing TinyMCE plugins and add-ons will continue to work.', 'tinymce-advanced' ); ?>
534
  <?php _e( 'This makes the Block Editor more familiar, easier to use, easier to get used to, and more compatible with your existing workflow.', 'tinymce-advanced' ); ?>
535
  </p>
536
  <p>
537
- <?php _e( 'It has several advantages over the Classic Block. Most importantly, nearly all default blocks can be converted to classic paragraphs.', 'tinymce-advanced' ); ?>
538
- <?php _e( 'It can be used everywhere instead of the default Paragraph Block including in columns, when creating reusable blocks, etc.', 'tinymce-advanced' ); ?>
539
  </p>
540
- <?php echo $preselect ?>
541
  </div>
542
 
543
  <div>
@@ -552,7 +741,6 @@ if ( ! is_multisite() || current_user_can( 'manage_sites' ) ) {
552
  <?php _e( 'Selecting this option will restore the previous (&#8220;classic&#8221;) editor and the previous Edit Post screen.', 'tinymce-advanced' ); ?>
553
  <?php _e( 'It will allow you to use other plugins that enhance that editor, add old-style Meta Boxes, or in some way depend on the previous Edit Post screen.', 'tinymce-advanced' ); ?>
554
  </p>
555
- <?php echo $preselect ?>
556
  <p>
557
  <?php
558
 
@@ -562,6 +750,7 @@ if ( ! is_multisite() || current_user_can( 'manage_sites' ) ) {
562
 
563
  ?>
564
  </p>
 
565
  <?php
566
  }
567
 
@@ -645,18 +834,18 @@ if ( ! is_multisite() || current_user_can( 'manage_sites' ) ) {
645
  </p>
646
  </div>
647
  <div>
648
- <h4><?php _e( 'Enable the editor enhancements for:', 'tinymce-advanced' ); ?></h4>
649
  <p>
650
  <input type="checkbox" id="tadv_enable_1" name="tadv_enable_at[]" value="edit_post_screen" <?php if ( $this->check_admin_setting( 'enable_edit_post_screen' ) ) echo ' checked'; ?> />
651
- <label for="tadv_enable_1"><?php _e( 'The main editor (Add New and Edit posts and pages)', 'tinymce-advanced' ); ?></label>
652
  </p>
653
  <p>
654
  <input type="checkbox" id="tadv_enable_2" name="tadv_enable_at[]" value="rest_of_wpadmin" <?php if ( $this->check_admin_setting( 'enable_rest_of_wpadmin' ) ) echo ' checked'; ?> />
655
- <label for="tadv_enable_2"><?php _e( 'Other editors in wp-admin', 'tinymce-advanced' ); ?></label>
656
  </p>
657
  <p>
658
  <input type="checkbox" id="tadv_enable_3" name="tadv_enable_at[]" value="on_front_end" <?php if ( $this->check_admin_setting( 'enable_on_front_end' ) ) echo ' checked'; ?> />
659
- <label for="tadv_enable_3"><?php _e( 'Editors on the front end of the site', 'tinymce-advanced' ); ?></label>
660
  </p>
661
  </div>
662
  </div>
@@ -677,4 +866,4 @@ if ( ! is_multisite() || current_user_can( 'manage_sites' ) ) {
677
  <div id="wp-adv-error-message" class="tadv-error">
678
  <?php _e( 'The [Toolbar toggle] button shows or hides the second, third, and forth button rows. It will only work when it is in the first row and there are buttons in the second row.', 'tinymce-advanced' ); ?>
679
  </div>
680
- </div><!-- /wrap -->
18
  $message = '';
19
  $tadv_options_updated = false;
20
  $settings = $admin_settings = array();
21
+ $images_url = plugins_url( 'images', __FILE__ );
22
 
23
  if ( isset( $_POST['tadv-save'] ) ) {
24
  check_admin_referer( 'tadv-save-buttons-order' );
34
  $this->user_settings = $this->get_default_user_settings();
35
  update_option( 'tadv_settings', $this->get_default_user_settings() );
36
 
37
+ $message = '<div class="updated notice notice-success is-dismissible"><p>' . __( 'Default settings restored.', 'tinymce-advanced' ) . '</p></div>';
38
  } elseif ( isset( $_POST['tadv-export-settings'] ) ) {
39
  check_admin_referer( 'tadv-save-buttons-order' );
40
 
117
  $all_buttons = $this->get_all_buttons();
118
 
119
  ?>
120
+ <div class="wrap tinymce-advanced block-active<?php if ( is_rtl() ) echo ' mce-rtl'; ?>" id="contain">
121
  <h2><?php _e( 'Editor Settings', 'tinymce-advanced' ); ?></h2>
122
  <?php
123
 
130
  echo $message;
131
  }
132
 
133
+ $dashicons_arrow = is_rtl() ? 'dashicons-arrow-left' : 'dashicons-arrow-right';
134
+
135
  ?>
136
  <form id="tadvadmin" method="post" action="">
137
 
138
+ <div class="toggle">
139
+ <p class="tadv-submit tadv-submit-top">
140
+ <input class="button-primary button-large top-button" type="submit" name="tadv-save" value="<?php _e( 'Save Changes', 'tinymce-advanced' ); ?>" />
141
+ </p>
142
+ <h3 class="settings-toggle block" tabindex="0">
143
+ <span class="dashicons dashicons-arrow-down"></span>
144
+ <span class="dashicons arrow-open <?php echo $dashicons_arrow; ?>"></span>
145
+ <?php _e( 'Block Editor (Gutenberg)', 'tinymce-advanced' ); ?>
146
+ </h3>
147
+ <h3 class="settings-toggle classic" tabindex="0">
148
+ <span class="dashicons dashicons-arrow-down"></span>
149
+ <span class="dashicons arrow-open <?php echo $dashicons_arrow; ?>"></span>
150
+ <?php _e( 'Classic Editor (TinyMCE)', 'tinymce-advanced' ); ?>
151
+ </h3>
152
+ </div>
153
 
154
+ <div id="block-editor">
155
+ <h4><?php _e( 'Toolbars for the Block Editor', 'tinymce-advanced' ); ?></h4>
156
+ <div class="block-toolbars">
157
+ <?php
158
+ $all_block_buttons = $this->get_all_block_buttons();
159
+ $all_block_panels = $this->get_all_block_panels();
160
 
161
+ ?>
 
 
 
 
162
 
163
+ <div>
164
+ <p class="toolbar-block-title">
165
+ <strong><?php _e( 'Main toolbar', 'tinymce-advanced' ); ?></strong>
166
+ <?php _e( '(shown above the block)', 'tinymce-advanced' ); ?>
167
+ <span class="tadv-popout-help-toggle dashicons dashicons-editor-help"></span>
168
+ </p>
169
+
170
+ <div class="tadv-popout-help hidden">
171
+ <p>
172
+ <?php _e( 'Current limitations for the Block Editor toolbar:', 'tinymce-advanced' ); ?>
173
+ <span class="tadv-popout-help-close dashicons dashicons-no-alt"></span>
174
+ </p>
175
+
176
+ <ul>
177
+ <li><?php _e( 'The alignment buttons cannot be arranged.', 'tinymce-advanced' ); ?></li>
178
+ <li><?php _e( 'The Bold, Italic, and Strikethrough buttons can be disabled or moved to the side toolbar but cannot be reordered.', 'tinymce-advanced' ); ?></li>
179
+ <li><?php _e( 'The Link button cannot be moved to the side toolbar.', 'tinymce-advanced' ); ?></li>
180
+ </ul>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
181
  </div>
 
 
182
 
183
+ <div class="toolbar-block-wrap toolbar-wrap">
184
+ <?php $toolbar_left_src = is_rtl() ? $images_url . '/toolbar-left-rtl.png' : $images_url . '/toolbar-left.png'; ?>
185
+ <img width="155" height="36" class="toolbar-block-left" src="<?php echo $toolbar_left_src; ?>">
186
 
187
+ <ul id="toolbar_block" class="components-toolbar block-toolbar">
188
+ <?php
189
 
190
+ foreach( $this->toolbar_block as $button_id ) {
191
+ if ( isset( $all_block_buttons[ $button_id ] ) ) {
192
+ $name = $all_block_buttons[ $button_id ]['name'];
193
+ $icon = $all_block_buttons[ $button_id ]['icon'];
194
+ unset( $all_block_buttons[ $button_id ] );
195
+ } else {
196
+ continue;
197
+ }
198
 
199
+ ?><li class="<?php echo str_replace( '/', '-', $button_id ); ?>">
200
+ <div title="<?php echo $name; ?>" aria-pressed="false" class="components-icon-button">
201
+ <?php echo $icon; ?>
202
+ </div>
203
+ <input type="hidden" name="toolbar_block[]" value="<?php echo $button_id; ?>">
204
+ </li><?php
205
+ }
206
 
207
+ ?>
208
+ </ul>
 
 
209
 
210
+ <img height="36" class="toolbar-block-right" src="<?php echo $images_url; ?>/toolbar-right.png">
211
+ </div><?php // toolbar-block-wrap end ?>
 
 
 
 
212
 
213
+ <p class="toolbar-block-title">
214
+ <strong><?php _e( 'Alternative side toolbar', 'tinymce-advanced' ); ?></strong>
215
+ <?php _e( '(shown in the sidebar)', 'tinymce-advanced' ); ?>
216
+ </p>
217
+ <div class="toolbar-side-wrap toolbar-wrap">
218
+ <div class="panel-title">
219
+ <?php _e( 'Formatting', 'tinymce-advanced' ); ?>
220
+ <span class="dashicons dashicons-arrow-up-alt2"></span>
221
+ </div>
222
+ <ul id="toolbar_block_side" class="components-toolbar block-toolbar-side container-block"><?php
223
+
224
+
225
+ foreach( $this->toolbar_block_side as $button_id ) {
226
+ if ( isset( $all_block_buttons[ $button_id ] ) ) {
227
+ $name = $all_block_buttons[ $button_id ]['name'];
228
+ $icon = $all_block_buttons[ $button_id ]['icon'];
229
+ unset( $all_block_buttons[ $button_id ] );
230
+ } else {
231
+ continue;
232
+ }
233
+
234
+ ?><li class="<?php echo str_replace( '/', '-', $button_id ); ?>">
235
+ <div type="button" title="<?php echo $name; ?>" aria-pressed="false" class="components-icon-button">
236
+ <?php echo $icon; ?>
237
+ </div>
238
+ <input type="hidden" name="toolbar_block_side[]" value="<?php echo $button_id; ?>">
239
+ </li><?php
240
+ }
241
+
242
+ ?></ul>
243
+
244
+ </div><?php // toolbar-side-wrap end ?>
245
+
246
+ <p class="toolbar-block-title">
247
+ <strong><?php _e( 'Unused buttons for the blocks toolbars', 'tinymce-advanced' ); ?></strong>
248
+ </p>
249
+ <div class="toolbar-unused-wrap toolbar-wrap">
250
+ <ul id="toolbar_block_unused" class="components-toolbar block-toolbar-unused container-block">
251
  <?php
252
 
253
+ foreach( $all_block_buttons as $button_id => $button ) {
254
+ $name = $button['name'];
255
+ $icon = $button['icon'];
256
+
257
+ ?><li class="<?php echo str_replace( '/', '-', $button_id ); ?>">
258
+ <div type="button" title="<?php echo $name; ?>" aria-pressed="false" class="components-icon-button">
259
+ <?php echo $icon; ?>
260
  </div>
261
+ <input type="hidden" name="toolbar_block_unused[]" value="<?php echo $button_id; ?>">
262
+ </li><?php
 
 
 
 
 
 
 
 
263
  }
264
 
265
  ?>
266
+ </ul>
267
+ </div><?php // toolbar-unused-wrap end ?>
268
+
269
+ <?php $colors_preview_src = is_rtl() ? $images_url . '/colors-rtl.png' : $images_url . '/colors.png' ?>
270
+ <div class="panel-block-colors-wrap">
271
+ <div class="panel-block-colors">
272
+ <div class="panel-title">
273
+ <?php _e( 'Text color', 'tinymce-advanced' ); ?>
274
+ <span class="dashicons dashicons-arrow-up-alt2"></span>
275
+ </div>
276
+ <div class="panel-block-text-color<?php if ( ! $this->check_user_setting( 'selected_text_color' ) ) echo ' disabled'; ?>">
277
+ <p><?php _e( 'Selected text color', 'tinymce-advanced' ); ?></p>
278
+ <img width="260" height="100" class="text-color-preview" src="<?php echo $colors_preview_src; ?>">
279
+ </div>
280
+ <div class="panel-block-background-color<?php if ( ! $this->check_user_setting( 'selected_text_background_color' ) ) echo ' disabled'; ?>">
281
+ <p><?php _e( 'Selected text background color', 'tinymce-advanced' ); ?></p>
282
+ <img width="260" height="100" class="text-color-preview" src="<?php echo $colors_preview_src; ?>">
283
+ </div>
284
+ </div>
285
+
286
+ <table class="form-table panel-block-colors-settings"><tbody>
287
+ <tr class="panel-block-colors-settings__text">
288
+ <th><?php _e( 'Enable setting of selected text color', 'tinymce-advanced' ); ?></th>
289
+ <td>
290
+ <p>
291
+ <input type="radio" name="selected_text_color" id="selected_text_color_yes" value="yes"<?php if ( $this->check_user_setting( 'selected_text_color' ) ) echo ' checked'; ?>>
292
+ <label for="selected_text_color_yes"><?php _e( 'Yes', 'tinymce-advanced' ); ?></label>
293
+ </p>
294
+ <p>
295
+ <input type="radio" name="selected_text_color" id="selected_text_color_no" value="no"<?php if ( ! $this->check_user_setting( 'selected_text_color' ) ) echo ' checked'; ?>>
296
+ <label for="selected_text_color_no"><?php _e( 'No', 'tinymce-advanced' ); ?></label>
297
+ </p>
298
+ </td>
299
+ </tr>
300
+ <tr class="panel-block-colors-settings__background">
301
+ <th><?php _e( 'Enable setting of selected text background color', 'tinymce-advanced' ); ?></th>
302
+ <td>
303
+ <p>
304
+ <input type="radio" name="selected_text_background_color" id="selected_text_background_color_yes" value="yes"<?php if ( $this->check_user_setting( 'selected_text_background_color' ) ) echo ' checked'; ?>>
305
+ <label for="selected_text_background_color_yes"><?php _e( 'Yes', 'tinymce-advanced' ); ?></label>
306
+ </p>
307
+ <p>
308
+ <input type="radio" name="selected_text_background_color" id="selected_text_background_color_no" value="no"<?php if ( ! $this->check_user_setting( 'selected_text_background_color' ) ) echo ' checked'; ?>>
309
+ <label for="selected_text_background_color_no"><?php _e( 'No', 'tinymce-advanced' ); ?></label>
310
+ </p>
311
+ </td>
312
+ </tr>
313
+ </tbody></table>
314
+ </div><?php // panel-block-colors-wrap end ?>
315
+ <br clear="both">
316
+ </div>
317
 
318
+ </div>
319
 
320
+ <h4 class="classic-blocks-title-h4"><?php _e( 'Toolbars for the Classic Paragraph and Classic blocks', 'tinymce-advanced' ); ?></h4>
 
 
 
321
 
322
+ <p>
323
+ <?php _e( 'The toolbars in the Classic Paragraph and Classic blocks are narrower and show on focus.', 'tinymce-advanced' ); ?>
324
+ <?php _e( 'For best results enable the menu and add only essential buttons.', 'tinymce-advanced' ); ?>
325
+ <?php _e( 'The buttons will wrap around depending on the width of the toolbar.', 'tinymce-advanced' ); ?>
326
+ </p>
327
+
328
+ <p>
329
+ <input type="checkbox" name="options[]" id="menubar_block" value="menubar_block" <?php if ( $this->check_user_setting( 'menubar_block' ) ) { echo ' checked'; } ?>>
330
+ <label for="menubar_block"><?php _e( 'Enable the editor menu (recommended).', 'tinymce-advanced' ); ?></label>
331
+ </p>
332
+
333
+ <div class="tadv-block-editor-toolbars-wrap">
334
+ <div class="tadv-mce-menu tadv-block-editor mce-container mce-menubar mce-toolbar mce-first mce-stack-layout-item
335
+ <?php if ( $this->check_user_setting( 'menubar_block' ) ) { echo ' enabled'; } ?>">
336
+ <div class="mce-container-body mce-flow-layout">
337
+ <div class="mce-widget mce-btn mce-menubtn mce-first mce-flow-layout-item">
338
+ <button type="button">
339
+ <span class="tadv-translate">File</span>
340
+ <i class="mce-caret"></i>
341
+ </button>
342
+ </div>
343
+ <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item">
344
+ <button type="button">
345
+ <span class="tadv-translate">Edit</span>
346
+ <i class="mce-caret"></i>
347
+ </button>
348
+ </div>
349
+ <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item">
350
+ <button type="button">
351
+ <span class="tadv-translate">Insert</span>
352
+ <i class="mce-caret"></i>
353
+ </button>
354
+ </div>
355
+ <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item mce-toolbar-item">
356
+ <button type="button">
357
+ <span class="tadv-translate">View</span>
358
+ <i class="mce-caret"></i>
359
+ </button>
360
+ </div>
361
+ <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item">
362
+ <button type="button">
363
+ <span class="tadv-translate">Format</span>
364
+ <i class="mce-caret"></i>
365
+ </button>
366
+ </div>
367
+ <div class="mce-widget mce-btn mce-menubtn mce-flow-layout-item">
368
+ <button type="button">
369
+ <span class="tadv-translate">Table</span>
370
+ <i class="mce-caret"></i>
371
+ </button>
372
+ </div>
373
+ <div class="mce-widget mce-btn mce-menubtn mce-last mce-flow-layout-item">
374
+ <button type="button">
375
+ <span class="tadv-translate">Tools</span>
376
+ <i class="mce-caret"></i>
377
+ </button>
378
+ </div>
379
+ </div>
380
+ </div>
381
+
382
+ <div class="tadvdropzone tadv-block-editor mce-toolbar">
383
+ <ul id="toolbar_classic_block" class="container-classic-block">
384
+ <?php
385
+
386
+ $mce_text_buttons = array( 'styleselect', 'formatselect', 'fontselect', 'fontsizeselect' );
387
+ $all_buttons_block = $all_buttons;
388
+
389
+ // Remove the toolbar-toggle
390
+ unset( $all_buttons_block['wp_adv'] );
391
+
392
+ foreach( $this->toolbar_classic_block as $button_id ) {
393
+ $name = '';
394
+
395
+ if ( strpos( $button_id, 'separator' ) !== false || in_array( $button_id, array( 'moveforward', 'movebackward', 'absolute' ) ) ) {
396
+ continue;
397
+ }
398
+
399
+ if ( isset( $all_buttons_block[ $button_id ] ) ) {
400
+ $name = $all_buttons_block[ $button_id ];
401
+ unset( $all_buttons_block[ $button_id ] );
402
+ } else {
403
+ continue;
404
+ }
405
+
406
+ ?>
407
+ <li class="tadvmodule" id="<?php echo $button_id; ?>">
408
+ <?php
409
+
410
+ if ( in_array( $button_id, $mce_text_buttons, true ) ) {
411
+ ?>
412
+ <div class="tadvitem mce-widget mce-btn mce-menubtn mce-fixed-width mce-listbox">
413
+ <div class="the-button">
414
+ <span class="descr"><?php echo $name; ?></span>
415
+ <i class="mce-caret"></i>
416
+ <input type="hidden" class="tadv-button" name="toolbar_classic_block[]" value="<?php echo $button_id; ?>" />
417
+ </div>
418
+ </div>
419
+ <?php
420
+ } else {
421
+ ?>
422
+ <div class="tadvitem">
423
+ <i class="mce-ico mce-i-<?php echo $button_id; ?>" title="<?php echo $name; ?>"></i>
424
+ <span class="descr"><?php echo $name; ?></span>
425
+ <input type="hidden" class="tadv-button" name="toolbar_classic_block[]" value="<?php echo $button_id; ?>" />
426
+ </div>
427
+ <?php
428
+ }
429
+
430
+ ?>
431
+ </li>
432
+ <?php
433
+ }
434
+
435
+ ?>
436
+ </ul>
437
+ </div>
438
  </div>
439
 
440
  <p><?php _e( 'Drop buttons in the toolbars, or drag the buttons to rearrange them.', 'tinymce-advanced' ); ?></p>
441
 
442
  <div class="unuseddiv">
443
+ <p><strong><?php _e( 'Unused Buttons for the Classic Block toolbars', 'tinymce-advanced' ); ?></strong></p>
444
  <div>
445
+ <ul id="unused-classic-block" class="unused container-classic-block">
446
  <?php
447
 
448
+ foreach( $all_buttons_block as $button_id => $name ) {
449
+ if ( strpos( $button_id, 'separator' ) !== false ) {
450
  continue;
451
  }
452
 
453
  ?>
454
+ <li class="tadvmodule" id="<?php echo $button_id; ?>">
455
  <?php
456
 
457
+ if ( in_array( $button_id, $mce_text_buttons, true ) ) {
458
  ?>
459
  <div class="tadvitem mce-widget mce-btn mce-menubtn mce-fixed-width mce-listbox">
460
  <div class="the-button">
461
  <span class="descr"><?php echo $name; ?></span>
462
  <i class="mce-caret"></i>
463
+ <input type="hidden" class="tadv-button" name="unused-classic-block[]" value="<?php echo $button_id; ?>" />
464
  </div>
465
  </div>
466
  <?php
467
  } else {
468
  ?>
469
  <div class="tadvitem">
470
+ <i class="mce-ico mce-i-<?php echo $button_id; ?>" title="<?php echo $name; ?>"></i>
471
  <span class="descr"><?php echo $name; ?></span>
472
+ <input type="hidden" class="tadv-button" name="unused-classic-block[]" value="<?php echo $button_id; ?>" />
473
  </div>
474
  <?php
475
  }
481
 
482
  ?>
483
  </ul>
484
+ </div><!-- /highlight -->
485
+ </div><!-- /unuseddiv -->
486
+ </div><!-- /block-editor -->
 
 
 
487
 
488
+ <div id="classic-editor">
489
+ <h4><?php _e( 'Toolbars for the Classic Editor (TinyMCE)', 'tinymce-advanced' ); ?></h4>
 
 
 
490
 
491
+ <div class="tadvzones">
492
  <p>
493
+ <input type="checkbox" name="options[]" id="menubar" value="menubar" <?php if ( $this->check_user_setting( 'menubar' ) ) { echo ' checked="checked"'; } ?>>
494
+ <label for="menubar"><?php _e( 'Enable the editor menu.', 'tinymce-advanced' ); ?></label>
495
  </p>
496
 
497
+ <div class="tadv-mce-menu tadv-classic-editor mce-container mce-menubar mce-toolbar mce-first mce-stack-layout-item
498
+ <?php if ( $this->check_user_setting( 'menubar' ) ) { echo ' enabled'; } ?>">
499
  <div class="mce-container-body mce-flow-layout">
500
  <div class="mce-widget mce-btn mce-menubtn mce-first mce-flow-layout-item">
501
  <button type="button">
542
  </div>
543
  </div>
544
 
545
+ <?php
 
 
546
 
547
+ $all_buttons_classic = $all_buttons;
548
+ $button_id = '';
549
 
550
+ for ( $i = 1; $i < 5; $i++ ) {
551
+ $toolbar = "toolbar_$i";
552
 
553
+ ?>
554
+ <div class="tadvdropzone mce-toolbar">
555
+ <ul id="toolbar_<?php echo $i; ?>" class="container">
556
+ <?php
557
 
558
+ foreach( $this->$toolbar as $button_id ) {
559
+ if ( strpos( $button_id, 'separator' ) !== false || in_array( $button_id, array( 'moveforward', 'movebackward', 'absolute' ) ) ) {
560
  continue;
561
  }
562
 
563
+ if ( isset( $all_buttons_classic[ $button_id ] ) ) {
564
+ $name = $all_buttons_classic[ $button_id ];
565
+ unset( $all_buttons_classic[ $button_id ] );
566
  } else {
567
  continue;
568
  }
577
  <div class="the-button">
578
  <span class="descr"><?php echo $name; ?></span>
579
  <i class="mce-caret"></i>
580
+ <input type="hidden" class="tadv-button" name="toolbar_<?php echo $i; ?>[]" value="<?php echo $button_id; ?>" />
581
  </div>
582
  </div>
583
  <?php
586
  <div class="tadvitem">
587
  <i class="mce-ico mce-i-<?php echo $button_id; ?>" title="<?php echo $name; ?>"></i>
588
  <span class="descr"><?php echo $name; ?></span>
589
+ <input type="hidden" class="tadv-button" name="toolbar_<?php echo $i; ?>[]" value="<?php echo $button_id; ?>" />
590
  </div>
591
  <?php
592
  }
594
  ?>
595
  </li>
596
  <?php
597
+
598
  }
599
 
600
  ?>
601
+ </ul></div>
602
+ <?php
603
+ }
604
+
605
+ ?>
606
  </div>
607
 
608
  <p><?php _e( 'Drop buttons in the toolbars, or drag the buttons to rearrange them.', 'tinymce-advanced' ); ?></p>
609
 
610
  <div class="unuseddiv">
611
+ <h4><?php _e( 'Unused Buttons', 'tinymce-advanced' ); ?></h4>
612
  <div>
613
+ <ul id="unused" class="unused container">
614
  <?php
615
 
616
+ foreach( $all_buttons_classic as $button_id => $name ) {
617
+ if ( strpos( $button_id, 'separator' ) !== false ) {
618
  continue;
619
  }
620
 
628
  <div class="the-button">
629
  <span class="descr"><?php echo $name; ?></span>
630
  <i class="mce-caret"></i>
631
+ <input type="hidden" class="tadv-button" name="unused[]" value="<?php echo $button_id; ?>" />
632
  </div>
633
  </div>
634
  <?php
637
  <div class="tadvitem">
638
  <i class="mce-ico mce-i-<?php echo $button_id; ?>" title="<?php echo $name; ?>"></i>
639
  <span class="descr"><?php echo $name; ?></span>
640
+ <input type="hidden" class="tadv-button" name="unused[]" value="<?php echo $button_id; ?>" />
641
  </div>
642
  <?php
643
  }
649
 
650
  ?>
651
  </ul>
652
+ </div><!-- /highlighted -->
653
+ </div>
654
+ </div><!-- /classic-editor -->
655
+ <?php
656
+ $preselect = false;
657
+
658
+ if ( ! function_exists( 'use_block_editor_for_post_type' ) ) {
659
+ $preselect = '<p>' . __( 'This setting applies to WordPress 5.0 or later. You can pre-select it and it will be enabled as soon as you upgrade.', 'tinymce-advanced' ) . '</p>';
660
+ }
661
 
662
+ ?>
663
  <div class="advanced-options">
664
  <h3><?php _e( 'Options', 'tinymce-advanced' ); ?></h3>
665
 
666
  <div>
667
  <input type="checkbox" name="options[]" value="merge_toolbars" id="merge_toolbars" <?php if ( $this->check_user_setting( 'merge_toolbars' ) ) echo ' checked'; ?> />
668
+ <label for="merge_toolbars"><?php _e( 'Append all buttons to the top toolbar in the Classic Paragraph and Classic blocks.', 'tinymce-advanced' ); ?></label>
669
  <p><?php _e( 'This affects buttons that are added by other plugins. These buttons will be appended to the top toolbar row instead of forming second, third, and forth rows.', 'tinymce-advanced' ); ?></p>
670
+ <?php echo $preselect; ?>
671
  </div>
672
 
673
  <div>
699
  <?php
700
 
701
  if ( ! is_multisite() || current_user_can( 'manage_sites' ) ) {
 
 
702
  ?>
703
  <div class="advanced-options">
704
  <h3><?php _e( 'Advanced Options', 'tinymce-advanced' ); ?></h3>
708
  <p>
709
  <strong><?php _e( 'Brings the best of both editors together.', 'tinymce-advanced' ); ?></strong>
710
  <?php _e( 'Selecting this option makes the Classic Block in the Block Editor somewhat more prominent and adds improvements and fixes for it.', 'tinymce-advanced' ); ?>
711
+ <?php _e( 'It also makes the Classic Block or the Classic Paragraph Block the default block inserted on pressing Enter in the title, or clicking under the last block.', 'tinymce-advanced' ); ?>
712
  </p>
713
+ <?php echo $preselect; ?>
714
  </div>
715
+
716
  <div>
717
  <input type="checkbox" name="admin_options[]" value="classic_paragraph_block" id="classic_paragraph_block" <?php if ( $this->check_admin_setting( 'classic_paragraph_block' ) ) echo ' checked'; ?> />
718
  <label for="classic_paragraph_block"><?php _e( 'Add &#8220;Classic Paragraph&#8221; Block.', 'tinymce-advanced' ); ?></label>
719
  <p>
720
+ <?php _e( 'The Classic Paragraph Block includes the familiar TinyMCE editor and is an extended and enhanced Classic Block.', 'tinymce-advanced' ); ?>
721
+ <?php _e( 'You can add multiple paragraphs, tables, galleries, embed video, set fonts and colors, and generally use everything that is available in the Classic Editor.', 'tinymce-advanced' ); ?>
722
  <?php _e( 'Also, like the Classic Block, most existing TinyMCE plugins and add-ons will continue to work.', 'tinymce-advanced' ); ?>
723
  <?php _e( 'This makes the Block Editor more familiar, easier to use, easier to get used to, and more compatible with your existing workflow.', 'tinymce-advanced' ); ?>
724
  </p>
725
  <p>
726
+ <?php _e( 'In addition most default blocks can be transformed into classic paragraphs, and a Classic Paragraph can be converted to multiple blocks.', 'tinymce-advanced' ); ?>
727
+ <?php _e( 'It can be used everywhere instead of the Paragraph Block including in columns, when creating reusable blocks, etc.', 'tinymce-advanced' ); ?>
728
  </p>
729
+ <?php echo $preselect; ?>
730
  </div>
731
 
732
  <div>
741
  <?php _e( 'Selecting this option will restore the previous (&#8220;classic&#8221;) editor and the previous Edit Post screen.', 'tinymce-advanced' ); ?>
742
  <?php _e( 'It will allow you to use other plugins that enhance that editor, add old-style Meta Boxes, or in some way depend on the previous Edit Post screen.', 'tinymce-advanced' ); ?>
743
  </p>
 
744
  <p>
745
  <?php
746
 
750
 
751
  ?>
752
  </p>
753
+ <?php echo $preselect; ?>
754
  <?php
755
  }
756
 
834
  </p>
835
  </div>
836
  <div>
837
+ <h4><?php _e( 'Enable the TinyMCE editor enhancements for:', 'tinymce-advanced' ); ?></h4>
838
  <p>
839
  <input type="checkbox" id="tadv_enable_1" name="tadv_enable_at[]" value="edit_post_screen" <?php if ( $this->check_admin_setting( 'enable_edit_post_screen' ) ) echo ' checked'; ?> />
840
+ <label for="tadv_enable_1"><?php _e( 'The Classic Editor (Add New and Edit posts and pages)', 'tinymce-advanced' ); ?></label>
841
  </p>
842
  <p>
843
  <input type="checkbox" id="tadv_enable_2" name="tadv_enable_at[]" value="rest_of_wpadmin" <?php if ( $this->check_admin_setting( 'enable_rest_of_wpadmin' ) ) echo ' checked'; ?> />
844
+ <label for="tadv_enable_2"><?php _e( 'Other TinyMCE editors in wp-admin', 'tinymce-advanced' ); ?></label>
845
  </p>
846
  <p>
847
  <input type="checkbox" id="tadv_enable_3" name="tadv_enable_at[]" value="on_front_end" <?php if ( $this->check_admin_setting( 'enable_on_front_end' ) ) echo ' checked'; ?> />
848
+ <label for="tadv_enable_3"><?php _e( 'TinyMCE editors on the front end of the site', 'tinymce-advanced' ); ?></label>
849
  </p>
850
  </div>
851
  </div>
866
  <div id="wp-adv-error-message" class="tadv-error">
867
  <?php _e( 'The [Toolbar toggle] button shows or hides the second, third, and forth button rows. It will only work when it is in the first row and there are buttons in the second row.', 'tinymce-advanced' ); ?>
868
  </div>
869
+ </div><?php // .wrap.tinymce-advanced end ?>
tinymce-advanced.php CHANGED
@@ -3,28 +3,28 @@
3
  Plugin Name: TinyMCE Advanced
4
  Plugin URI: http://www.laptoptips.ca/projects/tinymce-advanced/
5
  Description: Enables advanced features and plugins in TinyMCE, the visual editor in WordPress.
6
- Version: 4.8.2
7
  Author: Andrew Ozz
8
  Author URI: http://www.laptoptips.ca/
9
  License: GPL2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
  Text Domain: tinymce-advanced
12
- Domain Path: /langs
13
 
14
- TinyMCE Advanced is free software: you can redistribute it and/or modify
15
- it under the terms of the GNU General Public License as published by
16
- the Free Software Foundation, either version 2 of the License, or
17
- any later version.
18
 
19
- TinyMCE Advanced is distributed in the hope that it will be useful,
20
- but WITHOUT ANY WARRANTY; without even the implied warranty of
21
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22
- GNU General Public License for more details.
23
 
24
- You should have received a copy of the GNU General Public License along
25
- with TinyMCE Advanced. If not, see https://www.gnu.org/licenses/gpl-2.0.html.
 
 
26
 
27
- Copyright (c) 2007-2018 Andrew Ozz. All rights reserved.
 
 
 
28
  */
29
 
30
  if ( ! defined( 'ABSPATH' ) ) {
@@ -36,7 +36,7 @@ if ( ! class_exists('Tinymce_Advanced') ) :
36
  class Tinymce_Advanced {
37
 
38
  private $required_version = '4.9.6';
39
- private $plugin_version = '4.8.2';
40
 
41
  private $user_settings;
42
  private $admin_settings;
@@ -69,12 +69,16 @@ class Tinymce_Advanced {
69
  private function get_default_user_settings() {
70
  return array(
71
  'options' => 'menubar,advlist,menubar_block,merge_toolbars',
 
72
  'toolbar_1' => 'formatselect,bold,italic,blockquote,bullist,numlist,alignleft,aligncenter,alignright,link,unlink,undo,redo',
73
  'toolbar_2' => 'fontselect,fontsizeselect,outdent,indent,pastetext,removeformat,charmap,wp_more,forecolor,table,wp_help',
74
  'toolbar_3' => '',
75
  'toolbar_4' => '',
 
76
  'toolbar_classic_block' => 'formatselect,bold,italic,blockquote,bullist,numlist,alignleft,aligncenter,alignright,link,forecolor,backcolor,table,wp_help',
77
- 'plugins' => 'anchor,code,insertdatetime,nonbreaking,print,searchreplace,table,visualblocks,visualchars,advlist,wptadv',
 
 
78
  );
79
  }
80
 
@@ -135,6 +139,34 @@ class Tinymce_Advanced {
135
  );
136
  }
137
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
138
  public function __construct() {
139
  register_activation_hook( __FILE__, array( $this, 'check_plugin_version' ) );
140
 
@@ -280,6 +312,10 @@ class Tinymce_Advanced {
280
  $this->user_settings['toolbar_classic_block'] = $default_user_settings['toolbar_classic_block'];
281
  }
282
 
 
 
 
 
283
  $this->options = ! empty( $this->user_settings['options'] ) ? explode( ',', $this->user_settings['options'] ) : array();
284
  $this->plugins = ! empty( $this->user_settings['plugins'] ) ? explode( ',', $this->user_settings['plugins'] ) : array();
285
  $this->toolbar_1 = ! empty( $this->user_settings['toolbar_1'] ) ? explode( ',', $this->user_settings['toolbar_1'] ) : array();
@@ -288,7 +324,12 @@ class Tinymce_Advanced {
288
  $this->toolbar_4 = ! empty( $this->user_settings['toolbar_4'] ) ? explode( ',', $this->user_settings['toolbar_4'] ) : array();
289
  $this->toolbar_classic_block = ! empty( $this->user_settings['toolbar_classic_block'] ) ? explode( ',', $this->user_settings['toolbar_classic_block'] ) : array();
290
 
 
 
 
 
291
  $this->used_buttons = array_merge( $this->toolbar_1, $this->toolbar_2, $this->toolbar_3, $this->toolbar_4, $this->toolbar_classic_block );
 
292
  $this->get_all_buttons();
293
 
294
  // Force refresh after activation.
@@ -346,11 +387,12 @@ class Tinymce_Advanced {
346
 
347
  update_option( 'tadv_settings', $this->user_settings );
348
  update_option( 'tadv_admin_settings', $this->admin_settings );
349
- update_option( 'tadv_version', 4820 );
350
- } elseif ( $version < 4820 ) {
351
  // Update for WP 5.0
352
  $admin_settings = get_option( 'tadv_admin_settings', false );
353
  $user_settings = get_option( 'tadv_settings', false );
 
354
 
355
  $admin = $admin_settings['options'];
356
  $user = $user_settings['options'];
@@ -371,12 +413,18 @@ class Tinymce_Advanced {
371
  $user .= ',menubar_block,merge_toolbars';
372
  }
373
 
 
 
 
 
 
 
374
  $admin_settings['options'] = $admin;
375
  $user_settings['options'] = $user;
376
 
377
  update_option( 'tadv_admin_settings', $admin_settings );
378
  update_option( 'tadv_settings', $user_settings );
379
- update_option( 'tadv_version', 4820 );
380
  }
381
 
382
  if ( $version < 4000 ) {
@@ -393,8 +441,9 @@ class Tinymce_Advanced {
393
  }
394
 
395
  public function get_all_buttons() {
396
- if ( ! empty( $this->all_buttons ) )
397
  return $this->all_buttons;
 
398
 
399
  $buttons = array(
400
  // Core
@@ -531,6 +580,14 @@ class Tinymce_Advanced {
531
  return true;
532
  }
533
 
 
 
 
 
 
 
 
 
534
  return in_array( $setting, $this->options, true );
535
  }
536
 
@@ -646,6 +703,8 @@ class Tinymce_Advanced {
646
 
647
  $init['image_advtab'] = true;
648
  $init['rel_list'] = '[{text: "None", value: ""}, {text: "Nofollow", value: "nofollow noreferrer"}]';
 
 
649
 
650
  if ( $this->check_admin_setting( 'no_autop' ) ) {
651
  $init['wpautop'] = false;
@@ -677,7 +736,7 @@ class Tinymce_Advanced {
677
  }
678
  }
679
  } else {
680
- if ( $this->check_user_setting('menubar') ) {
681
  $init['menubar'] = true;
682
  }
683
  }
@@ -711,25 +770,69 @@ class Tinymce_Advanced {
711
  }
712
 
713
  public function block_editor_assets() {
714
- $plugin_url = plugins_url( 'block-editor', __FILE__ );
 
 
 
 
715
 
716
  if ( $this->check_admin_setting( 'hybrid_mode' ) || $this->check_admin_setting( 'classic_paragraph_block' ) ) {
 
717
  $dependencies = array( 'wp-element', 'wp-components', 'wp-i18n', 'wp-keycodes', 'wp-blocks', 'wp-edit-post', 'wp-hooks', 'lodash' );
718
- wp_enqueue_script( 'tadv-block-register', $plugin_url . '/block-register.js', $dependencies, $this->plugin_version );
719
 
720
  if ( $this->check_admin_setting( 'classic_paragraph_block' ) ) {
721
  $strings = array(
722
  'classicParagraphTitle' => __( 'Classic Paragraph', 'tinymce-advanced' ),
723
  'classicParagraph' => 'yes',
724
- 'description' => __( 'Can be used instead of the default Paragraph Block. Allows conversions to and from most default blocks, including Image, Table, Paragraph, Quote, Classic, and most others.', 'tinymce-advanced' ),
725
  );
726
- wp_localize_script( 'tadv-block-register', 'tadvBlockRegister', $strings );
727
 
728
  wp_enqueue_style( 'tadv-classic-paragraph-styles', $plugin_url . '/classic-paragraph.css', array(), $this->plugin_version );
729
  }
 
 
 
 
 
 
730
  }
731
 
732
- wp_enqueue_style( 'tadv-block-editor-styles', $plugin_url . '/block-editor.css', array(), $this->plugin_version );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
733
  }
734
 
735
  public function block_editor_init() {
@@ -765,6 +868,10 @@ class Tinymce_Advanced {
765
 
766
  $this->plugins[] = 'wptadv';
767
 
 
 
 
 
768
  $this->plugins = array_intersect( $this->plugins, $this->get_all_plugins() );
769
 
770
  $plugin_url = plugins_url( 'mce/', __FILE__ );
@@ -835,6 +942,13 @@ class Tinymce_Advanced {
835
  return $_settings;
836
  }
837
 
 
 
 
 
 
 
 
838
  private function validate_settings( $settings, $checklist ) {
839
  if ( empty( $settings ) ) {
840
  return '';
@@ -857,6 +971,7 @@ class Tinymce_Advanced {
857
 
858
  private function save_settings( $all_settings = null ) {
859
  $settings = $user_settings = array();
 
860
 
861
  if ( empty( $this->buttons_filter ) ) {
862
  $this->get_all_buttons();
@@ -884,6 +999,43 @@ class Tinymce_Advanced {
884
  $settings[ $toolbar_name ] = $this->validate_settings( $toolbar, $this->buttons_filter );
885
  }
886
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
887
  if ( ! empty( $user_settings['options'] ) ) {
888
  $options = explode( ',', $user_settings['options'] );
889
  } elseif ( ! empty( $_POST['options'] ) && is_array( $_POST['options'] ) ) {
@@ -894,6 +1046,7 @@ class Tinymce_Advanced {
894
 
895
  $settings['options'] = $this->validate_settings( $options, $this->get_all_user_options() );
896
 
 
897
  if ( ! empty( $user_settings['plugins'] ) ) {
898
  $plugins = explode( ',', $user_settings['plugins'] );
899
  } else {
3
  Plugin Name: TinyMCE Advanced
4
  Plugin URI: http://www.laptoptips.ca/projects/tinymce-advanced/
5
  Description: Enables advanced features and plugins in TinyMCE, the visual editor in WordPress.
6
+ Version: 5.0.0
7
  Author: Andrew Ozz
8
  Author URI: http://www.laptoptips.ca/
9
  License: GPL2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
  Text Domain: tinymce-advanced
 
12
 
 
 
 
 
13
 
14
+ TinyMCE Advanced is free software: you can redistribute it and/or modify
15
+ it under the terms of the GNU General Public License as published by
16
+ the Free Software Foundation, either version 2 of the License, or
17
+ any later version.
18
 
19
+ TinyMCE Advanced is distributed in the hope that it will be useful,
20
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
21
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22
+ GNU General Public License for more details.
23
 
24
+ You should have received a copy of the GNU General Public License along
25
+ with TinyMCE Advanced or WordPress. If not, see https://www.gnu.org/licenses/gpl-2.0.html.
26
+
27
+ Copyright (c) 2007-2019 Andrew Ozz. All rights reserved.
28
  */
29
 
30
  if ( ! defined( 'ABSPATH' ) ) {
36
  class Tinymce_Advanced {
37
 
38
  private $required_version = '4.9.6';
39
+ private $plugin_version = '5.0.0';
40
 
41
  private $user_settings;
42
  private $admin_settings;
69
  private function get_default_user_settings() {
70
  return array(
71
  'options' => 'menubar,advlist,menubar_block,merge_toolbars',
72
+ 'plugins' => 'anchor,code,insertdatetime,nonbreaking,print,searchreplace,table,visualblocks,visualchars,advlist,wptadv',
73
  'toolbar_1' => 'formatselect,bold,italic,blockquote,bullist,numlist,alignleft,aligncenter,alignright,link,unlink,undo,redo',
74
  'toolbar_2' => 'fontselect,fontsizeselect,outdent,indent,pastetext,removeformat,charmap,wp_more,forecolor,table,wp_help',
75
  'toolbar_3' => '',
76
  'toolbar_4' => '',
77
+
78
  'toolbar_classic_block' => 'formatselect,bold,italic,blockquote,bullist,numlist,alignleft,aligncenter,alignright,link,forecolor,backcolor,table,wp_help',
79
+ 'toolbar_block' => 'core/bold,core/italic,core/link,tadv/removeformat',
80
+ 'toolbar_block_side' => 'core/code,tadv/mark,tadv/sup,tadv/sub',
81
+ 'panels_block' => 'tadv/color-panel,tadv/background-color-panel',
82
  );
83
  }
84
 
139
  );
140
  }
141
 
142
+ private function get_all_block_buttons() {
143
+ $block_buttons = array(
144
+ 'core/bold' => array( 'name' => 'Bold', 'icon' => '<span class="dashicons dashicons-editor-bold"></span>' ),
145
+ 'core/italic' => array( 'name' => 'Italic', 'icon' => '<span class="dashicons dashicons-editor-italic"></span>' ),
146
+ 'core/link' => array( 'name' => 'Insert/edit link', 'icon' => '<span class="dashicons dashicons-admin-links"></span>' ),
147
+ 'core/strikethrough' => array( 'name' => 'Strikethrough', 'icon' => '<span class="dashicons dashicons-editor-strikethrough"></span>' ),
148
+ 'core/code' => array( 'name' => 'Code', 'icon' => '<span class="dashicons dashicons-editor-code"></span>' ),
149
+
150
+ 'tadv/mark' => array( 'name' => 'Mark', 'icon' => '<span class="dashicons dashicons-editor-textcolor"></span>' ),
151
+ 'tadv/removeformat' => array( 'name' => 'Clear formatting', 'icon' => '<span class="dashicons dashicons-editor-removeformatting"></span>' ),
152
+ 'tadv/sup' => array( 'name' => 'Superscript', 'icon' => '<span class="mce-ico mce-i-superscript"></span>' ),
153
+ 'tadv/sub' => array( 'name' => 'Subscript', 'icon' => '<span class="mce-ico mce-i-subscript"></span>' ),
154
+ 'tadv/underline' => array( 'name' => 'Underline', 'icon' => '<span class="dashicons dashicons-editor-underline"></span>' ),
155
+ );
156
+
157
+ $this->all_block_buttons = $block_buttons;
158
+ $this->block_buttons_filter = array_keys( $block_buttons );
159
+
160
+ return $block_buttons;
161
+ }
162
+
163
+ private function get_all_block_panels() {
164
+ return array(
165
+ 'tadv/color-panel',
166
+ 'tadv/background-color-panel',
167
+ );
168
+ }
169
+
170
  public function __construct() {
171
  register_activation_hook( __FILE__, array( $this, 'check_plugin_version' ) );
172
 
312
  $this->user_settings['toolbar_classic_block'] = $default_user_settings['toolbar_classic_block'];
313
  }
314
 
315
+ if ( empty( $this->user_settings['toolbar_block'] ) ) {
316
+ $this->user_settings['toolbar_block'] = $default_user_settings['toolbar_block'];
317
+ }
318
+
319
  $this->options = ! empty( $this->user_settings['options'] ) ? explode( ',', $this->user_settings['options'] ) : array();
320
  $this->plugins = ! empty( $this->user_settings['plugins'] ) ? explode( ',', $this->user_settings['plugins'] ) : array();
321
  $this->toolbar_1 = ! empty( $this->user_settings['toolbar_1'] ) ? explode( ',', $this->user_settings['toolbar_1'] ) : array();
324
  $this->toolbar_4 = ! empty( $this->user_settings['toolbar_4'] ) ? explode( ',', $this->user_settings['toolbar_4'] ) : array();
325
  $this->toolbar_classic_block = ! empty( $this->user_settings['toolbar_classic_block'] ) ? explode( ',', $this->user_settings['toolbar_classic_block'] ) : array();
326
 
327
+ $this->toolbar_block = ! empty( $this->user_settings['toolbar_block'] ) ? explode( ',', $this->user_settings['toolbar_block'] ) : array();
328
+ $this->toolbar_block_side = ! empty( $this->user_settings['toolbar_block_side'] ) ? explode( ',', $this->user_settings['toolbar_block_side'] ) : array();
329
+ $this->panels_block = ! empty( $this->user_settings['panels_block'] ) ? explode( ',', $this->user_settings['panels_block'] ) : array();
330
+
331
  $this->used_buttons = array_merge( $this->toolbar_1, $this->toolbar_2, $this->toolbar_3, $this->toolbar_4, $this->toolbar_classic_block );
332
+ $this->used_block_buttons = array_merge( $this->toolbar_block, $this->toolbar_block_side );
333
  $this->get_all_buttons();
334
 
335
  // Force refresh after activation.
387
 
388
  update_option( 'tadv_settings', $this->user_settings );
389
  update_option( 'tadv_admin_settings', $this->admin_settings );
390
+ update_option( 'tadv_version', 5000 );
391
+ } elseif ( $version < 5000 ) {
392
  // Update for WP 5.0
393
  $admin_settings = get_option( 'tadv_admin_settings', false );
394
  $user_settings = get_option( 'tadv_settings', false );
395
+ $user_defaults = $this->get_default_user_settings();
396
 
397
  $admin = $admin_settings['options'];
398
  $user = $user_settings['options'];
413
  $user .= ',menubar_block,merge_toolbars';
414
  }
415
 
416
+ if ( empty( $user_settings['toolbar_block'] ) ) {
417
+ $user_settings['toolbar_block'] = $user_defaults['toolbar_block'];
418
+ $user_settings['toolbar_block_side'] = $user_defaults['toolbar_block_side'];
419
+ $user_settings['panels_block'] = $user_defaults['panels_block'];
420
+ }
421
+
422
  $admin_settings['options'] = $admin;
423
  $user_settings['options'] = $user;
424
 
425
  update_option( 'tadv_admin_settings', $admin_settings );
426
  update_option( 'tadv_settings', $user_settings );
427
+ update_option( 'tadv_version', 5000 );
428
  }
429
 
430
  if ( $version < 4000 ) {
441
  }
442
 
443
  public function get_all_buttons() {
444
+ if ( ! empty( $this->all_buttons ) ) {
445
  return $this->all_buttons;
446
+ }
447
 
448
  $buttons = array(
449
  // Core
580
  return true;
581
  }
582
 
583
+ if ( $setting === 'selected_text_color' ) {
584
+ return in_array( 'tadv/color-panel', $this->panels_block, true );
585
+ }
586
+
587
+ if ( $setting === 'selected_text_background_color' ) {
588
+ return in_array( 'tadv/background-color-panel', $this->panels_block, true );
589
+ }
590
+
591
  return in_array( $setting, $this->options, true );
592
  }
593
 
703
 
704
  $init['image_advtab'] = true;
705
  $init['rel_list'] = '[{text: "None", value: ""}, {text: "Nofollow", value: "nofollow noreferrer"}]';
706
+ // Prevent user errors.
707
+ $init['removed_menuitems'] = 'newdocument';
708
 
709
  if ( $this->check_admin_setting( 'no_autop' ) ) {
710
  $init['wpautop'] = false;
736
  }
737
  }
738
  } else {
739
+ if ( $this->check_user_setting( 'menubar' ) ) {
740
  $init['menubar'] = true;
741
  }
742
  }
770
  }
771
 
772
  public function block_editor_assets() {
773
+ $plugin_url = plugins_url( 'dist', __FILE__ );
774
+
775
+ if ( ! is_array( $this->admin_options ) ) {
776
+ $this->load_settings();
777
+ }
778
 
779
  if ( $this->check_admin_setting( 'hybrid_mode' ) || $this->check_admin_setting( 'classic_paragraph_block' ) ) {
780
+ $strings = array();
781
  $dependencies = array( 'wp-element', 'wp-components', 'wp-i18n', 'wp-keycodes', 'wp-blocks', 'wp-edit-post', 'wp-hooks', 'lodash' );
782
+ wp_enqueue_script( 'tadv-classic-paragraph', $plugin_url . '/classic-paragraph.js', $dependencies, $this->plugin_version );
783
 
784
  if ( $this->check_admin_setting( 'classic_paragraph_block' ) ) {
785
  $strings = array(
786
  'classicParagraphTitle' => __( 'Classic Paragraph', 'tinymce-advanced' ),
787
  'classicParagraph' => 'yes',
788
+ 'description' => __( 'For use instead of the Paragraph Block. Supports transforming to and from multiple Paragraph blocks, Image, Table, List, Quote, Custom HTML, and most other blocks.', 'tinymce-advanced' ),
789
  );
 
790
 
791
  wp_enqueue_style( 'tadv-classic-paragraph-styles', $plugin_url . '/classic-paragraph.css', array(), $this->plugin_version );
792
  }
793
+
794
+ if ( $this->check_admin_setting( 'hybrid_mode' ) ) {
795
+ $strings['hybridMode'] = 'yes';
796
+ }
797
+
798
+ wp_localize_script( 'tadv-classic-paragraph', 'tadvBlockRegister', $strings );
799
  }
800
 
801
+ // Block editor toolbars
802
+ if ( ! empty( $this->toolbar_block ) ) {
803
+ $dependencies = array( 'wp-element', 'wp-components', 'wp-i18n', 'wp-editor', 'wp-rich-text' );
804
+ wp_enqueue_script( 'tadv-block-buttons', $plugin_url . '/richtext-buttons.js', $dependencies, $this->plugin_version );
805
+
806
+ $all_block_buttons = $this->get_all_block_buttons();
807
+ $all_block_buttons = array_keys( $all_block_buttons );
808
+ $unusedButtons = array_diff( $all_block_buttons, $this->toolbar_block, $this->toolbar_block_side );
809
+
810
+ $strings = array(
811
+ 'buttons' => implode( ',', $this->toolbar_block ),
812
+ 'panelButtons' => implode( ',', $this->toolbar_block_side ),
813
+ 'unusedButtons' => implode( ',', $unusedButtons ),
814
+ 'colorPanel' => implode( ',', $this->panels_block ),
815
+
816
+ // Strings
817
+ 'strFormatting' => __( 'Formatting', 'tinymce-advanced' ),
818
+ 'strRemoveFormatting' => __( 'Remove formatting', 'tinymce-advanced' ),
819
+ 'strSuperscript' => __( 'Superscript', 'tinymce-advanced' ),
820
+ 'strSubscript' => __( 'Subscript', 'tinymce-advanced' ),
821
+ 'strMark' => __( 'Mark', 'tinymce-advanced' ),
822
+ 'strUnderline' => __( 'Underline', 'tinymce-advanced' ),
823
+
824
+ 'strTextColor' => __( 'Text Color', 'tinymce-advanced' ),
825
+ 'strTextColorLabel' => __( 'Selected text color', 'tinymce-advanced' ),
826
+ 'strBackgroundColor' => __( 'Text Background Color', 'tinymce-advanced' ),
827
+ 'strBackgroundColorLabel' => __( 'Selected text background color', 'tinymce-advanced' ),
828
+ );
829
+
830
+ wp_localize_script( 'tadv-block-buttons', 'tadvBlockButtons', $strings );
831
+
832
+ wp_enqueue_style( 'tadv-block-buttons-styles', $plugin_url . '/richtext-buttons.css', array(), $this->plugin_version );
833
+ }
834
+
835
+ wp_enqueue_style( 'tadv-block-editor-styles', plugins_url( 'css/block-editor.css', __FILE__ ), array(), $this->plugin_version );
836
  }
837
 
838
  public function block_editor_init() {
868
 
869
  $this->plugins[] = 'wptadv';
870
 
871
+ if ( $this->check_user_setting( 'menubar' ) || $this->check_user_setting( 'menubar_block' ) ) {
872
+ $this->plugins = array_merge( $this->plugins, $this->required_menubar_plugins );
873
+ }
874
+
875
  $this->plugins = array_intersect( $this->plugins, $this->get_all_plugins() );
876
 
877
  $plugin_url = plugins_url( 'mce/', __FILE__ );
942
  return $_settings;
943
  }
944
 
945
+ /**
946
+ * Validare array of settings against a whitelist.
947
+ *
948
+ * @param array $settings The settings.
949
+ * @param array $checklist The whitelist.
950
+ * @return string The validated settings CSV.
951
+ */
952
  private function validate_settings( $settings, $checklist ) {
953
  if ( empty( $settings ) ) {
954
  return '';
971
 
972
  private function save_settings( $all_settings = null ) {
973
  $settings = $user_settings = array();
974
+ $default_settings = $this->get_default_user_settings();
975
 
976
  if ( empty( $this->buttons_filter ) ) {
977
  $this->get_all_buttons();
999
  $settings[ $toolbar_name ] = $this->validate_settings( $toolbar, $this->buttons_filter );
1000
  }
1001
 
1002
+ // Block editor toolbar
1003
+ if ( empty( $this->block_buttons_filter ) ) {
1004
+ $this->get_all_block_buttons();
1005
+ }
1006
+
1007
+ if ( ! empty( $user_settings[ 'toolbar_block' ] ) ) {
1008
+ $settings[ 'toolbar_block' ] = $this->validate_settings( $user_settings[ 'toolbar_block' ], $this->block_buttons_filter );
1009
+ } elseif ( ! empty( $_POST[ 'toolbar_block' ] ) && is_array( $_POST[ 'toolbar_block' ] ) ) {
1010
+ $settings[ 'toolbar_block' ] = $this->validate_settings( $_POST[ 'toolbar_block' ], $this->block_buttons_filter );
1011
+ } else {
1012
+ $settings[ 'toolbar_block' ] = $default_settings[ 'toolbar_block' ];
1013
+ }
1014
+
1015
+ if ( ! empty( $user_settings[ 'toolbar_block_side' ] ) ) {
1016
+ $settings[ 'toolbar_block_side' ] = $this->validate_settings( $user_settings[ 'toolbar_block_side' ], $this->block_buttons_filter );
1017
+ } elseif ( ! empty( $_POST[ 'toolbar_block_side' ] ) && is_array( $_POST[ 'toolbar_block_side' ] ) ) {
1018
+ $settings[ 'toolbar_block_side' ] = $this->validate_settings( $_POST[ 'toolbar_block_side' ], $this->block_buttons_filter );
1019
+ } else {
1020
+ $settings[ 'toolbar_block_side' ] = array();
1021
+ }
1022
+
1023
+ if ( ! empty( $user_settings[ 'panels_block' ] ) ) {
1024
+ $panels_block = $this->validate_settings( explode( ',', $user_settings[ 'panels_block' ] ), $this->get_all_block_panels() );
1025
+ } else {
1026
+ $panels_block = array();
1027
+
1028
+ if ( ! empty( $_POST[ 'selected_text_color' ] ) && $_POST[ 'selected_text_color' ] === 'yes' ) {
1029
+ $panels_block[] = 'tadv/color-panel';
1030
+ }
1031
+
1032
+ if ( ! empty( $_POST[ 'selected_text_background_color' ] ) && $_POST[ 'selected_text_background_color' ] === 'yes' ) {
1033
+ $panels_block[] = 'tadv/background-color-panel';
1034
+ }
1035
+ }
1036
+
1037
+ $settings[ 'panels_block' ] = implode( ',', $panels_block );
1038
+
1039
  if ( ! empty( $user_settings['options'] ) ) {
1040
  $options = explode( ',', $user_settings['options'] );
1041
  } elseif ( ! empty( $_POST['options'] ) && is_array( $_POST['options'] ) ) {
1046
 
1047
  $settings['options'] = $this->validate_settings( $options, $this->get_all_user_options() );
1048
 
1049
+
1050
  if ( ! empty( $user_settings['plugins'] ) ) {
1051
  $plugins = explode( ',', $user_settings['plugins'] );
1052
  } else {