/
home
/
techb158
/
balacoffee.com
/
wp-content
/
plugins
/
polylang-pro-1
/
js
/
build
/
/home/techb158/balacoffee.com/wp-content/plugins/polylang-pro-1/js/build
mkdir
upload
Name
Size
Mode
Actions
acf.js
1354
0644
edit
dl
rm
acf.min.js
600
0644
edit
dl
rm
admin.js
14301
0644
edit
dl
rm
admin.min.js
4292
0644
edit
dl
rm
block-editor-plugin.js
33407
0644
edit
dl
rm
block-editor-plugin.min.js
5553
0644
edit
dl
rm
block-editor.js
11447
0644
edit
dl
rm
block-editor.min.js
3694
0644
edit
dl
rm
blocks.js
54766
0644
edit
dl
rm
blocks.min.js
12823
0644
edit
dl
rm
bulk-translate.js
2532
0644
edit
dl
rm
bulk-translate.min.js
1322
0644
edit
dl
rm
classic-editor.js
15628
0644
edit
dl
rm
classic-editor.min.js
5225
0644
edit
dl
rm
confirmation-modal.js
4284
0644
edit
dl
rm
confirmation-modal.min.js
1493
0644
edit
dl
rm
languages-step.js
10783
0644
edit
dl
rm
languages-step.min.js
3499
0644
edit
dl
rm
metabox-autocomplete.js
2309
0644
edit
dl
rm
metabox-autocomplete.min.js
897
0644
edit
dl
rm
metabox-button.js
1306
0644
edit
dl
rm
metabox-button.min.js
709
0644
edit
dl
rm
nav-menu.js
3978
0644
edit
dl
rm
nav-menu.min.js
1583
0644
edit
dl
rm
navigation-editor-plugin.js
19194
0644
edit
dl
rm
navigation-editor-plugin.min.js
1666
0644
edit
dl
rm
post.js
5602
0644
edit
dl
rm
post.min.js
2082
0644
edit
dl
rm
sidebar.js
118170
0644
edit
dl
rm
sidebar.min.js
38956
0644
edit
dl
rm
term.js
8046
0644
edit
dl
rm
term.min.js
3049
0644
edit
dl
rm
user.js
1222
0644
edit
dl
rm
user.min.js
452
0644
edit
dl
rm
widget-editor-plugin.js
18433
0644
edit
dl
rm
widget-editor-plugin.min.js
1050
0644
edit
dl
rm
widgets.js
4336
0644
edit
dl
rm
widgets.min.js
1659
0644
edit
dl
rm
Edit:
/home/techb158/balacoffee.com/wp-content/plugins/polylang-pro-1/js/build/block-editor.js
(11447B)
/******/ "use strict"; var __webpack_exports__ = {}; ;// CONCATENATED MODULE: ./vendor/wpsyntex/polylang/js/src/lib/confirmation-modal.js /** * @package Polylang */ const languagesList = jQuery( '.post_lang_choice' ); // Dialog box for alerting the user about a risky changing. const initializeConfimationModal = () => { // We can't use underscore or lodash in this common code because it depends of the context classic or block editor. // Classic editor underscore is loaded, Block editor lodash is loaded. const { __ } = wp.i18n; // Create dialog container. const dialogContainer = jQuery( '<div/>', { id: 'pll-dialog', style: 'display:none;' } ).text( __( 'Are you sure you want to change the language of the current content?', 'polylang' ) ); // Put it after languages list dropdown. // PHPCS ignore dialogContainer is a new safe HTML code generated above. languagesList.after( dialogContainer ); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.after const dialogResult = new Promise( ( confirm, cancel ) => { const confirmDialog = ( what ) => { // phpcs:ignore PEAR.Functions.FunctionCallSignature.Indent switch ( what ) { // phpcs:ignore PEAR.Functions.FunctionCallSignature.Indent case 'yes': // Confirm the new language. languagesList.data( 'old-value', languagesList.children( ':selected' ).first().val() ); confirm(); break; case 'no': // Revert to the old language. languagesList.val( languagesList.data( 'old-value' ) ); cancel( 'Cancel' ); break; } dialogContainer.dialog( 'close' ); // phpcs:ignore PEAR.Functions.FunctionCallSignature.Indent } // phpcs:ignore PEAR.Functions.FunctionCallSignature.Indent // Initialize dialog box in the case a language is selected but not added in the list. const dialogOptions = { autoOpen: false, modal: true, draggable: false, resizable: false, title: __( 'Change language', 'polylang' ), minWidth: 600, maxWidth: '100%', open: function( event, ui ) { // Change dialog box position for rtl language if ( jQuery( 'body' ).hasClass( 'rtl' ) ) { jQuery( this ).parent().css( { right: jQuery( this ).parent().css( 'left' ), left: 'auto' } ); } }, close: function( event, ui ) { // When we're closing the dialog box we need to cancel the language change as we click on Cancel button. confirmDialog( 'no' ); }, buttons: [ { text: __( 'OK', 'polylang' ), click: function( event ) { confirmDialog( 'yes' ); } }, { text: __( 'Cancel', 'polylang' ), click: function( event ) { confirmDialog( 'no' ); } } ] }; if ( jQuery.ui.version >= '1.12.0' ) { Object.assign( dialogOptions, { classes: { 'ui-dialog': 'pll-confirmation-modal' } } ); } else { Object.assign( dialogOptions, { dialogClass: 'pll-confirmation-modal' } ); // jQuery UI 1.11.4 - WP < 5.6 } dialogContainer.dialog( dialogOptions ); } ); return { dialogContainer, dialogResult }; } const initializeLanguageOldValue = () => { // Keep the old language value to be able to compare to the new one and revert to it if necessary. languagesList.attr( 'data-old-value', languagesList.children( ':selected' ).first().val() ); }; ;// CONCATENATED MODULE: ./vendor/wpsyntex/polylang/js/src/lib/metabox-autocomplete.js /** * @package Polylang */ // Translations autocomplete input box. function initMetaboxAutoComplete() { jQuery('.tr_lang').each( function () { var tr_lang = jQuery(this).attr('id').substring(8); var td = jQuery(this).parent().parent().siblings('.pll-edit-column'); jQuery(this).autocomplete( { minLength: 0, source: ajaxurl + '?action=pll_posts_not_translated' + '&post_language=' + jQuery('.post_lang_choice').val() + '&translation_language=' + tr_lang + '&post_type=' + jQuery('#post_type').val() + '&_pll_nonce=' + jQuery('#_pll_nonce').val(), select: function (event, ui) { jQuery('#htr_lang_' + tr_lang).val(ui.item.id); // ui.item.link is built and come from server side and is well escaped when necessary td.html(ui.item.link); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html }, } ); // when the input box is emptied jQuery(this).on( 'blur', function () { if ( ! jQuery(this).val() ) { jQuery('#htr_lang_' + tr_lang).val(0); // Value is retrieved from HTML already generated server side td.html(td.siblings('.hidden').children().clone()); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html } } ); } ); } ;// CONCATENATED MODULE: ./vendor/wpsyntex/polylang/js/src/block-editor.js /** * @package Polylang */ /** * Filter REST API requests to add the language in the request * * @since 2.5 */ wp.apiFetch.use( function( options, next ) { // If options.url is defined, this is not a REST request but a direct call to post.php for legacy metaboxes. if ( 'undefined' === typeof options.url ) { if ( 'undefined' === typeof options.data || null === options.data ) { // GET options.path += ( ( options.path.indexOf( '?' ) >= 0 ) ? '&lang=' : '?lang=' ) + getCurrentLanguage(); } else { // PUT, POST options.data.lang = getCurrentLanguage(); } } return next( options ); } ); /** * Gets the language of the currently edited post, fallback to default language if none is found. * * @since 2.5 * * @return {Element.value} */ function getCurrentLanguage() { const lang = document.querySelector( '[name=post_lang_choice]' ); if ( null === lang ) { return pllDefaultLanguage; } return lang.value; } /** * Handles internals of the metabox: * Language select, autocomplete input field. * * @since 1.5 * * Save post after lang choice is done and redirect to the same page for refreshing all the data. * * @since 2.5 * * Link post saving after refreshing the metabox. * * @since 3.0 */ jQuery( function( $ ) { // Initialize current language to be able to compare if it changes. initializeLanguageOldValue(); // Ajax for changing the post's language in the languages metabox $( '.post_lang_choice' ).on( 'change', function( event ) { const select = wp.data.select; const dispatch = wp.data.dispatch; const subscribe = wp.data.subscribe; const emptyPost = isEmptyPost(); // Initialize the confirmation dialog box. const confirmationModal = initializeConfimationModal(); const { dialogContainer : dialog } = confirmationModal; let { dialogResult } = confirmationModal; // The selected option in the dropdown list. const selectedOption = event.target; // Specific case for empty posts. // Place at the beginning because window.location changing triggers automatically page reloading. if ( location.pathname.match( /post-new.php/gi ) && emptyPost ) { reloadPageForEmptyPost( selectedOption.value ); } // Otherwise send an ajax request to refresh the legacy metabox and set the post language with the new language. // It needs a confirmation of the user before changing the language. // Need to wait the ajax response before triggering the block editor post save action. if ( $( this ).data( 'old-value' ) !== selectedOption.value && ! emptyPost ) { dialog.dialog( 'open' ); } else { // Update the old language with the new one to be able to compare it in the next changing. // Because the page isn't reloaded in this case. initializeLanguageOldValue(); dialogResult = Promise.resolve(); } dialogResult.then( () => { let data = { // phpcs:ignore PEAR.Functions.FunctionCallSignature.Indent action: 'post_lang_choice', lang: selectedOption.value, post_type: $( '#post_type' ).val(), post_id: $( '#post_ID' ).val(), _pll_nonce: $( '#_pll_nonce' ).val() } // Update post language in database as soon as possible. // Because, in addition of the block editor save process, the legacy metabox uses a post.php process to update the language and is too late compared to the page reload. $.post( ajaxurl, data, function() { blockEditorSavePostAndReloadPage(); } ); }, () => {} // Do nothing when promise is rejected by clicking the Cancel dialog button. ); function isEmptyPost() { const editor = wp.data.select( 'core/editor' ); const title = editor.getEditedPostAttribute( 'title' ).trim(); const content = editor.getEditedPostAttribute( 'content' ).trim(); const excerpt = editor.getEditedPostAttribute( 'excerpt' ).trim(); return ! title && ! content && ! excerpt; } /** * Reload the block editor page for empty posts. * * @param {string} lang The target language code. */ function reloadPageForEmptyPost( lang ) { // Change the new_lang parameter with the new language value for reloading the page // WPCS location.search is never written in the page, just used to reload page with the right value of new_lang // new_lang input is controlled server side in PHP. The value come from the dropdown list of language returned and escaped server side. // Notice that window.location changing triggers automatically page reloading. if ( -1 != location.search.indexOf( 'new_lang' ) ) { // use regexp non capturing group to replace new_lang parameter no matter where it is and capture other parameters which can be behind it window.location.search = window.location.search.replace( /(?:new_lang=[^&]*)(&)?(.*)/, 'new_lang=' + lang + '$1$2' ); // phpcs:ignore WordPressVIPMinimum.JS.Window.location, WordPressVIPMinimum.JS.Window.VarAssignment } else { window.location.search = window.location.search + ( ( -1 != window.location.search.indexOf( '?' ) ) ? '&' : '?' ) + 'new_lang=' + lang; // phpcs:ignore WordPressVIPMinimum.JS.Window.location, WordPressVIPMinimum.JS.Window.VarAssignment } }; /** * Triggers block editor post save and reload the block editor page when everything is ok. */ function blockEditorSavePostAndReloadPage() { let unsubscribe = null; // Listen if the savePost is completely done by subscribing to its events. const savePostIsDone = new Promise( function( resolve, reject ) { unsubscribe = subscribe( function() { const isSavePostSucceeded = select( 'core/editor' ).didPostSaveRequestSucceed(); const isSavePostFailed = select( 'core/editor' ).didPostSaveRequestFail(); if ( isSavePostSucceeded || isSavePostFailed ) { if ( isSavePostFailed ) { reject(); } else { resolve(); } } } ); } ); // Triggers the post save. dispatch( 'core/editor' ).savePost(); // Process savePostIsDone.then( function() { // If the post is well saved, we can reload the page window.location.reload(); }, function() { // If the post save failed unsubscribe(); } ).catch( function() { // If an exception is thrown unsubscribe(); } ); }; } ); initMetaboxAutoComplete(); } );
Save
cmd:
run