{"version":3,"file":"acf-input.js","mappings":"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","sources":["webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-compatibility.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-condition-types.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-condition.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-conditions.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-accordion.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-button-group.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-checkbox.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-color-picker.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-date-picker.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-date-time-picker.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-file.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-google-map.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-image.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-link.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-oembed.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-page-link.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-post-object.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-radio.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-range.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-relationship.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-select.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-tab.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-taxonomy.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-time-picker.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-true-false.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-url.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-user.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field-wysiwyg.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-field.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-fields.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-helpers.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-media.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-postbox.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-screen.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-select2.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-tinymce.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-unload.js","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/_acf-validation.js","webpack://advanced-custom-fields-pro/webpack/bootstrap","webpack://advanced-custom-fields-pro/webpack/runtime/compat get default export","webpack://advanced-custom-fields-pro/webpack/runtime/define property getters","webpack://advanced-custom-fields-pro/webpack/runtime/hasOwnProperty shorthand","webpack://advanced-custom-fields-pro/webpack/runtime/make namespace object","webpack://advanced-custom-fields-pro/./src/advanced-custom-fields-pro/assets/src/js/acf-input.js"],"sourcesContent":["( function ( $, undefined ) {\n\t/**\n\t * acf.newCompatibility\n\t *\n\t * Inserts a new __proto__ object compatibility layer\n\t *\n\t * @date\t15/2/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tobject instance The object to modify.\n\t * @param\tobject compatibilty Optional. The compatibilty layer.\n\t * @return\tobject compatibilty\n\t */\n\n\tacf.newCompatibility = function ( instance, compatibilty ) {\n\t\t// defaults\n\t\tcompatibilty = compatibilty || {};\n\n\t\t// inherit __proto_-\n\t\tcompatibilty.__proto__ = instance.__proto__;\n\n\t\t// inject\n\t\tinstance.__proto__ = compatibilty;\n\n\t\t// reference\n\t\tinstance.compatibility = compatibilty;\n\n\t\t// return\n\t\treturn compatibilty;\n\t};\n\n\t/**\n\t * acf.getCompatibility\n\t *\n\t * Returns the compatibility layer for a given instance\n\t *\n\t * @date\t13/3/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tobject\t\tinstance\t\tThe object to look in.\n\t * @return\tobject|null\tcompatibility\tThe compatibility object or null on failure.\n\t */\n\n\tacf.getCompatibility = function ( instance ) {\n\t\treturn instance.compatibility || null;\n\t};\n\n\t/**\n\t * acf (compatibility)\n\t *\n\t * Compatibility layer for the acf object\n\t *\n\t * @date\t15/2/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar _acf = acf.newCompatibility( acf, {\n\t\t// storage\n\t\tl10n: {},\n\t\to: {},\n\t\tfields: {},\n\n\t\t// changed function names\n\t\tupdate: acf.set,\n\t\tadd_action: acf.addAction,\n\t\tremove_action: acf.removeAction,\n\t\tdo_action: acf.doAction,\n\t\tadd_filter: acf.addFilter,\n\t\tremove_filter: acf.removeFilter,\n\t\tapply_filters: acf.applyFilters,\n\t\tparse_args: acf.parseArgs,\n\t\tdisable_el: acf.disable,\n\t\tdisable_form: acf.disable,\n\t\tenable_el: acf.enable,\n\t\tenable_form: acf.enable,\n\t\tupdate_user_setting: acf.updateUserSetting,\n\t\tprepare_for_ajax: acf.prepareForAjax,\n\t\tis_ajax_success: acf.isAjaxSuccess,\n\t\tremove_el: acf.remove,\n\t\tremove_tr: acf.remove,\n\t\tstr_replace: acf.strReplace,\n\t\trender_select: acf.renderSelect,\n\t\tget_uniqid: acf.uniqid,\n\t\tserialize_form: acf.serialize,\n\t\tesc_html: acf.strEscape,\n\t\tstr_sanitize: acf.strSanitize,\n\t} );\n\n\t_acf._e = function ( k1, k2 ) {\n\t\t// defaults\n\t\tk1 = k1 || '';\n\t\tk2 = k2 || '';\n\n\t\t// compability\n\t\tvar compatKey = k2 ? k1 + '.' + k2 : k1;\n\t\tvar compats = {\n\t\t\t'image.select': 'Select Image',\n\t\t\t'image.edit': 'Edit Image',\n\t\t\t'image.update': 'Update Image',\n\t\t};\n\t\tif ( compats[ compatKey ] ) {\n\t\t\treturn acf.__( compats[ compatKey ] );\n\t\t}\n\n\t\t// try k1\n\t\tvar string = this.l10n[ k1 ] || '';\n\n\t\t// try k2\n\t\tif ( k2 ) {\n\t\t\tstring = string[ k2 ] || '';\n\t\t}\n\n\t\t// return\n\t\treturn string;\n\t};\n\n\t_acf.get_selector = function ( s ) {\n\t\t// vars\n\t\tvar selector = '.acf-field';\n\n\t\t// bail early if no search\n\t\tif ( ! s ) {\n\t\t\treturn selector;\n\t\t}\n\n\t\t// compatibility with object\n\t\tif ( $.isPlainObject( s ) ) {\n\t\t\tif ( $.isEmptyObject( s ) ) {\n\t\t\t\treturn selector;\n\t\t\t} else {\n\t\t\t\tfor ( var k in s ) {\n\t\t\t\t\ts = s[ k ];\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// append\n\t\tselector += '-' + s;\n\n\t\t// replace underscores (split/join replaces all and is faster than regex!)\n\t\tselector = acf.strReplace( '_', '-', selector );\n\n\t\t// remove potential double up\n\t\tselector = acf.strReplace( 'field-field-', 'field-', selector );\n\n\t\t// return\n\t\treturn selector;\n\t};\n\n\t_acf.get_fields = function ( s, $el, all ) {\n\t\t// args\n\t\tvar args = {\n\t\t\tis: s || '',\n\t\t\tparent: $el || false,\n\t\t\tsuppressFilters: all || false,\n\t\t};\n\n\t\t// change 'field_123' to '.acf-field-123'\n\t\tif ( args.is ) {\n\t\t\targs.is = this.get_selector( args.is );\n\t\t}\n\n\t\t// return\n\t\treturn acf.findFields( args );\n\t};\n\n\t_acf.get_field = function ( s, $el ) {\n\t\t// get fields\n\t\tvar $fields = this.get_fields.apply( this, arguments );\n\n\t\t// return\n\t\tif ( $fields.length ) {\n\t\t\treturn $fields.first();\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\t_acf.get_closest_field = function ( $el, s ) {\n\t\treturn $el.closest( this.get_selector( s ) );\n\t};\n\n\t_acf.get_field_wrap = function ( $el ) {\n\t\treturn $el.closest( this.get_selector() );\n\t};\n\n\t_acf.get_field_key = function ( $field ) {\n\t\treturn $field.data( 'key' );\n\t};\n\n\t_acf.get_field_type = function ( $field ) {\n\t\treturn $field.data( 'type' );\n\t};\n\n\t_acf.get_data = function ( $el, defaults ) {\n\t\treturn acf.parseArgs( $el.data(), defaults );\n\t};\n\n\t_acf.maybe_get = function ( obj, key, value ) {\n\t\t// default\n\t\tif ( value === undefined ) {\n\t\t\tvalue = null;\n\t\t}\n\n\t\t// get keys\n\t\tkeys = String( key ).split( '.' );\n\n\t\t// acf.isget\n\t\tfor ( var i = 0; i < keys.length; i++ ) {\n\t\t\tif ( ! obj.hasOwnProperty( keys[ i ] ) ) {\n\t\t\t\treturn value;\n\t\t\t}\n\t\t\tobj = obj[ keys[ i ] ];\n\t\t}\n\t\treturn obj;\n\t};\n\n\t/**\n\t * hooks\n\t *\n\t * Modify add_action and add_filter functions to add compatibility with changed $field parameter\n\t * Using the acf.add_action() or acf.add_filter() functions will interpret new field parameters as jQuery $field\n\t *\n\t * @date\t12/5/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar compatibleArgument = function ( arg ) {\n\t\treturn arg instanceof acf.Field ? arg.$el : arg;\n\t};\n\n\tvar compatibleArguments = function ( args ) {\n\t\treturn acf.arrayArgs( args ).map( compatibleArgument );\n\t};\n\n\tvar compatibleCallback = function ( origCallback ) {\n\t\treturn function () {\n\t\t\t// convert to compatible arguments\n\t\t\tif ( arguments.length ) {\n\t\t\t\tvar args = compatibleArguments( arguments );\n\n\t\t\t\t// add default argument for 'ready', 'append' and 'load' events\n\t\t\t} else {\n\t\t\t\tvar args = [ $( document ) ];\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn origCallback.apply( this, args );\n\t\t};\n\t};\n\n\t_acf.add_action = function ( action, callback, priority, context ) {\n\t\t// handle multiple actions\n\t\tvar actions = action.split( ' ' );\n\t\tvar length = actions.length;\n\t\tif ( length > 1 ) {\n\t\t\tfor ( var i = 0; i < length; i++ ) {\n\t\t\t\taction = actions[ i ];\n\t\t\t\t_acf.add_action.apply( this, arguments );\n\t\t\t}\n\t\t\treturn this;\n\t\t}\n\n\t\t// single\n\t\tvar callback = compatibleCallback( callback );\n\t\treturn acf.addAction.apply( this, arguments );\n\t};\n\n\t_acf.add_filter = function ( action, callback, priority, context ) {\n\t\tvar callback = compatibleCallback( callback );\n\t\treturn acf.addFilter.apply( this, arguments );\n\t};\n\n\t/*\n\t * acf.model\n\t *\n\t * This model acts as a scafold for action.event driven modules\n\t *\n\t * @type\tobject\n\t * @date\t8/09/2014\n\t * @since\t5.0.0\n\t *\n\t * @param\t(object)\n\t * @return\t(object)\n\t */\n\n\t_acf.model = {\n\t\tactions: {},\n\t\tfilters: {},\n\t\tevents: {},\n\t\textend: function ( args ) {\n\t\t\t// extend\n\t\t\tvar model = $.extend( {}, this, args );\n\n\t\t\t// setup actions\n\t\t\t$.each( model.actions, function ( name, callback ) {\n\t\t\t\tmodel._add_action( name, callback );\n\t\t\t} );\n\n\t\t\t// setup filters\n\t\t\t$.each( model.filters, function ( name, callback ) {\n\t\t\t\tmodel._add_filter( name, callback );\n\t\t\t} );\n\n\t\t\t// setup events\n\t\t\t$.each( model.events, function ( name, callback ) {\n\t\t\t\tmodel._add_event( name, callback );\n\t\t\t} );\n\n\t\t\t// return\n\t\t\treturn model;\n\t\t},\n\n\t\t_add_action: function ( name, callback ) {\n\t\t\t// split\n\t\t\tvar model = this,\n\t\t\t\tdata = name.split( ' ' );\n\n\t\t\t// add missing priority\n\t\t\tvar name = data[ 0 ] || '',\n\t\t\t\tpriority = data[ 1 ] || 10;\n\n\t\t\t// add action\n\t\t\tacf.add_action( name, model[ callback ], priority, model );\n\t\t},\n\n\t\t_add_filter: function ( name, callback ) {\n\t\t\t// split\n\t\t\tvar model = this,\n\t\t\t\tdata = name.split( ' ' );\n\n\t\t\t// add missing priority\n\t\t\tvar name = data[ 0 ] || '',\n\t\t\t\tpriority = data[ 1 ] || 10;\n\n\t\t\t// add action\n\t\t\tacf.add_filter( name, model[ callback ], priority, model );\n\t\t},\n\n\t\t_add_event: function ( name, callback ) {\n\t\t\t// vars\n\t\t\tvar model = this,\n\t\t\t\ti = name.indexOf( ' ' ),\n\t\t\t\tevent = i > 0 ? name.substr( 0, i ) : name,\n\t\t\t\tselector = i > 0 ? name.substr( i + 1 ) : '';\n\n\t\t\t// event\n\t\t\tvar fn = function ( e ) {\n\t\t\t\t// append $el to event object\n\t\t\t\te.$el = $( this );\n\n\t\t\t\t// append $field to event object (used in field group)\n\t\t\t\tif ( acf.field_group ) {\n\t\t\t\t\te.$field = e.$el.closest( '.acf-field-object' );\n\t\t\t\t}\n\n\t\t\t\t// event\n\t\t\t\tif ( typeof model.event === 'function' ) {\n\t\t\t\t\te = model.event( e );\n\t\t\t\t}\n\n\t\t\t\t// callback\n\t\t\t\tmodel[ callback ].apply( model, arguments );\n\t\t\t};\n\n\t\t\t// add event\n\t\t\tif ( selector ) {\n\t\t\t\t$( document ).on( event, selector, fn );\n\t\t\t} else {\n\t\t\t\t$( document ).on( event, fn );\n\t\t\t}\n\t\t},\n\n\t\tget: function ( name, value ) {\n\t\t\t// defaults\n\t\t\tvalue = value || null;\n\n\t\t\t// get\n\t\t\tif ( typeof this[ name ] !== 'undefined' ) {\n\t\t\t\tvalue = this[ name ];\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn value;\n\t\t},\n\n\t\tset: function ( name, value ) {\n\t\t\t// set\n\t\t\tthis[ name ] = value;\n\n\t\t\t// function for 3rd party\n\t\t\tif ( typeof this[ '_set_' + name ] === 'function' ) {\n\t\t\t\tthis[ '_set_' + name ].apply( this );\n\t\t\t}\n\n\t\t\t// return for chaining\n\t\t\treturn this;\n\t\t},\n\t};\n\n\t/*\n\t * field\n\t *\n\t * This model sets up many of the field's interactions\n\t *\n\t * @type\tfunction\n\t * @date\t21/02/2014\n\t * @since\t3.5.1\n\t *\n\t * @param\tn/a\n\t * @return\tn/a\n\t */\n\n\t_acf.field = acf.model.extend( {\n\t\ttype: '',\n\t\to: {},\n\t\t$field: null,\n\t\t_add_action: function ( name, callback ) {\n\t\t\t// vars\n\t\t\tvar model = this;\n\n\t\t\t// update name\n\t\t\tname = name + '_field/type=' + model.type;\n\n\t\t\t// add action\n\t\t\tacf.add_action( name, function ( $field ) {\n\t\t\t\t// focus\n\t\t\t\tmodel.set( '$field', $field );\n\n\t\t\t\t// callback\n\t\t\t\tmodel[ callback ].apply( model, arguments );\n\t\t\t} );\n\t\t},\n\n\t\t_add_filter: function ( name, callback ) {\n\t\t\t// vars\n\t\t\tvar model = this;\n\n\t\t\t// update name\n\t\t\tname = name + '_field/type=' + model.type;\n\n\t\t\t// add action\n\t\t\tacf.add_filter( name, function ( $field ) {\n\t\t\t\t// focus\n\t\t\t\tmodel.set( '$field', $field );\n\n\t\t\t\t// callback\n\t\t\t\tmodel[ callback ].apply( model, arguments );\n\t\t\t} );\n\t\t},\n\n\t\t_add_event: function ( name, callback ) {\n\t\t\t// vars\n\t\t\tvar model = this,\n\t\t\t\tevent = name.substr( 0, name.indexOf( ' ' ) ),\n\t\t\t\tselector = name.substr( name.indexOf( ' ' ) + 1 ),\n\t\t\t\tcontext = acf.get_selector( model.type );\n\n\t\t\t// add event\n\t\t\t$( document ).on( event, context + ' ' + selector, function ( e ) {\n\t\t\t\t// vars\n\t\t\t\tvar $el = $( this );\n\t\t\t\tvar $field = acf.get_closest_field( $el, model.type );\n\n\t\t\t\t// bail early if no field\n\t\t\t\tif ( ! $field.length ) return;\n\n\t\t\t\t// focus\n\t\t\t\tif ( ! $field.is( model.$field ) ) {\n\t\t\t\t\tmodel.set( '$field', $field );\n\t\t\t\t}\n\n\t\t\t\t// append to event\n\t\t\t\te.$el = $el;\n\t\t\t\te.$field = $field;\n\n\t\t\t\t// callback\n\t\t\t\tmodel[ callback ].apply( model, [ e ] );\n\t\t\t} );\n\t\t},\n\n\t\t_set_$field: function () {\n\t\t\t// callback\n\t\t\tif ( typeof this.focus === 'function' ) {\n\t\t\t\tthis.focus();\n\t\t\t}\n\t\t},\n\n\t\t// depreciated\n\t\tdoFocus: function ( $field ) {\n\t\t\treturn this.set( '$field', $field );\n\t\t},\n\t} );\n\n\t/**\n\t * validation\n\t *\n\t * description\n\t *\n\t * @date\t15/2/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar _validation = acf.newCompatibility( acf.validation, {\n\t\tremove_error: function ( $field ) {\n\t\t\tacf.getField( $field ).removeError();\n\t\t},\n\t\tadd_warning: function ( $field, message ) {\n\t\t\tacf.getField( $field ).showNotice( {\n\t\t\t\ttext: message,\n\t\t\t\ttype: 'warning',\n\t\t\t\ttimeout: 1000,\n\t\t\t} );\n\t\t},\n\t\tfetch: acf.validateForm,\n\t\tenableSubmit: acf.enableSubmit,\n\t\tdisableSubmit: acf.disableSubmit,\n\t\tshowSpinner: acf.showSpinner,\n\t\thideSpinner: acf.hideSpinner,\n\t\tunlockForm: acf.unlockForm,\n\t\tlockForm: acf.lockForm,\n\t} );\n\n\t/**\n\t * tooltip\n\t *\n\t * description\n\t *\n\t * @date\t15/2/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\t_acf.tooltip = {\n\t\ttooltip: function ( text, $el ) {\n\t\t\tvar tooltip = acf.newTooltip( {\n\t\t\t\ttext: text,\n\t\t\t\ttarget: $el,\n\t\t\t} );\n\n\t\t\t// return\n\t\t\treturn tooltip.$el;\n\t\t},\n\n\t\ttemp: function ( text, $el ) {\n\t\t\tvar tooltip = acf.newTooltip( {\n\t\t\t\ttext: text,\n\t\t\t\ttarget: $el,\n\t\t\t\ttimeout: 250,\n\t\t\t} );\n\t\t},\n\n\t\tconfirm: function ( $el, callback, text, button_y, button_n ) {\n\t\t\tvar tooltip = acf.newTooltip( {\n\t\t\t\tconfirm: true,\n\t\t\t\ttext: text,\n\t\t\t\ttarget: $el,\n\t\t\t\tconfirm: function () {\n\t\t\t\t\tcallback( true );\n\t\t\t\t},\n\t\t\t\tcancel: function () {\n\t\t\t\t\tcallback( false );\n\t\t\t\t},\n\t\t\t} );\n\t\t},\n\n\t\tconfirm_remove: function ( $el, callback ) {\n\t\t\tvar tooltip = acf.newTooltip( {\n\t\t\t\tconfirmRemove: true,\n\t\t\t\ttarget: $el,\n\t\t\t\tconfirm: function () {\n\t\t\t\t\tcallback( true );\n\t\t\t\t},\n\t\t\t\tcancel: function () {\n\t\t\t\t\tcallback( false );\n\t\t\t\t},\n\t\t\t} );\n\t\t},\n\t};\n\n\t/**\n\t * tooltip\n\t *\n\t * description\n\t *\n\t * @date\t15/2/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\t_acf.media = new acf.Model( {\n\t\tactiveFrame: false,\n\t\tactions: {\n\t\t\tnew_media_popup: 'onNewMediaPopup',\n\t\t},\n\n\t\tframe: function () {\n\t\t\treturn this.activeFrame;\n\t\t},\n\n\t\tonNewMediaPopup: function ( popup ) {\n\t\t\tthis.activeFrame = popup.frame;\n\t\t},\n\n\t\tpopup: function ( props ) {\n\t\t\t// update props\n\t\t\tif ( props.mime_types ) {\n\t\t\t\tprops.allowedTypes = props.mime_types;\n\t\t\t}\n\t\t\tif ( props.id ) {\n\t\t\t\tprops.attachment = props.id;\n\t\t\t}\n\n\t\t\t// new\n\t\t\tvar popup = acf.newMediaPopup( props );\n\n\t\t\t// append\n\t\t\t/*\n\t\t\tif( props.selected ) {\n\t\t\t\tpopup.selected = props.selected;\n\t\t\t}\n*/\n\n\t\t\t// return\n\t\t\treturn popup.frame;\n\t\t},\n\t} );\n\n\t/**\n\t * Select2\n\t *\n\t * description\n\t *\n\t * @date\t11/6/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\t_acf.select2 = {\n\t\tinit: function ( $select, args, $field ) {\n\t\t\t// compatible args\n\t\t\tif ( args.allow_null ) {\n\t\t\t\targs.allowNull = args.allow_null;\n\t\t\t}\n\t\t\tif ( args.ajax_action ) {\n\t\t\t\targs.ajaxAction = args.ajax_action;\n\t\t\t}\n\t\t\tif ( $field ) {\n\t\t\t\targs.field = acf.getField( $field );\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn acf.newSelect2( $select, args );\n\t\t},\n\n\t\tdestroy: function ( $select ) {\n\t\t\treturn acf.getInstance( $select ).destroy();\n\t\t},\n\t};\n\n\t/**\n\t * postbox\n\t *\n\t * description\n\t *\n\t * @date\t11/6/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\t_acf.postbox = {\n\t\trender: function ( args ) {\n\t\t\t// compatible args\n\t\t\tif ( args.edit_url ) {\n\t\t\t\targs.editLink = args.edit_url;\n\t\t\t}\n\t\t\tif ( args.edit_title ) {\n\t\t\t\targs.editTitle = args.edit_title;\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn acf.newPostbox( args );\n\t\t},\n\t};\n\n\t/**\n\t * acf.screen\n\t *\n\t * description\n\t *\n\t * @date\t11/6/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.newCompatibility( acf.screen, {\n\t\tupdate: function () {\n\t\t\treturn this.set.apply( this, arguments );\n\t\t},\n\t\tfetch: acf.screen.check,\n\t} );\n\t_acf.ajax = acf.screen;\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar __ = acf.__;\n\n\tvar parseString = function ( val ) {\n\t\treturn val ? '' + val : '';\n\t};\n\n\tvar isEqualTo = function ( v1, v2 ) {\n\t\treturn (\n\t\t\tparseString( v1 ).toLowerCase() === parseString( v2 ).toLowerCase()\n\t\t);\n\t};\n\n\tvar isEqualToNumber = function ( v1, v2 ) {\n\t\treturn parseFloat( v1 ) === parseFloat( v2 );\n\t};\n\n\tvar isGreaterThan = function ( v1, v2 ) {\n\t\treturn parseFloat( v1 ) > parseFloat( v2 );\n\t};\n\n\tvar isLessThan = function ( v1, v2 ) {\n\t\treturn parseFloat( v1 ) < parseFloat( v2 );\n\t};\n\n\tvar inArray = function ( v1, array ) {\n\t\t// cast all values as string\n\t\tarray = array.map( function ( v2 ) {\n\t\t\treturn parseString( v2 );\n\t\t} );\n\n\t\treturn array.indexOf( v1 ) > -1;\n\t};\n\n\tvar containsString = function ( haystack, needle ) {\n\t\treturn parseString( haystack ).indexOf( parseString( needle ) ) > -1;\n\t};\n\n\tvar matchesPattern = function ( v1, pattern ) {\n\t\tvar regexp = new RegExp( parseString( pattern ), 'gi' );\n\t\treturn parseString( v1 ).match( regexp );\n\t};\n\n\t/**\n\t * hasValue\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar HasValue = acf.Condition.extend( {\n\t\ttype: 'hasValue',\n\t\toperator: '!=empty',\n\t\tlabel: __( 'Has any value' ),\n\t\tfieldTypes: [\n\t\t\t'text',\n\t\t\t'textarea',\n\t\t\t'number',\n\t\t\t'range',\n\t\t\t'email',\n\t\t\t'url',\n\t\t\t'password',\n\t\t\t'image',\n\t\t\t'file',\n\t\t\t'wysiwyg',\n\t\t\t'oembed',\n\t\t\t'select',\n\t\t\t'checkbox',\n\t\t\t'radio',\n\t\t\t'button_group',\n\t\t\t'link',\n\t\t\t'post_object',\n\t\t\t'page_link',\n\t\t\t'relationship',\n\t\t\t'taxonomy',\n\t\t\t'user',\n\t\t\t'google_map',\n\t\t\t'date_picker',\n\t\t\t'date_time_picker',\n\t\t\t'time_picker',\n\t\t\t'color_picker',\n\t\t],\n\t\tmatch: function ( rule, field ) {\n\t\t\tlet val = field.val();\n\t\t\tif ( val instanceof Array ) {\n\t\t\t\tval = val.length;\n\t\t\t}\n\t\t\treturn val ? true : false;\n\t\t},\n\t\tchoices: function ( fieldObject ) {\n\t\t\treturn '';\n\t\t},\n\t} );\n\n\tacf.registerConditionType( HasValue );\n\n\t/**\n\t * hasValue\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar HasNoValue = HasValue.extend( {\n\t\ttype: 'hasNoValue',\n\t\toperator: '==empty',\n\t\tlabel: __( 'Has no value' ),\n\t\tmatch: function ( rule, field ) {\n\t\t\treturn ! HasValue.prototype.match.apply( this, arguments );\n\t\t},\n\t} );\n\n\tacf.registerConditionType( HasNoValue );\n\n\t/**\n\t * EqualTo\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar EqualTo = acf.Condition.extend( {\n\t\ttype: 'equalTo',\n\t\toperator: '==',\n\t\tlabel: __( 'Value is equal to' ),\n\t\tfieldTypes: [\n\t\t\t'text',\n\t\t\t'textarea',\n\t\t\t'number',\n\t\t\t'range',\n\t\t\t'email',\n\t\t\t'url',\n\t\t\t'password',\n\t\t],\n\t\tmatch: function ( rule, field ) {\n\t\t\tif ( acf.isNumeric( rule.value ) ) {\n\t\t\t\treturn isEqualToNumber( rule.value, field.val() );\n\t\t\t} else {\n\t\t\t\treturn isEqualTo( rule.value, field.val() );\n\t\t\t}\n\t\t},\n\t\tchoices: function ( fieldObject ) {\n\t\t\treturn '';\n\t\t},\n\t} );\n\n\tacf.registerConditionType( EqualTo );\n\n\t/**\n\t * NotEqualTo\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar NotEqualTo = EqualTo.extend( {\n\t\ttype: 'notEqualTo',\n\t\toperator: '!=',\n\t\tlabel: __( 'Value is not equal to' ),\n\t\tmatch: function ( rule, field ) {\n\t\t\treturn ! EqualTo.prototype.match.apply( this, arguments );\n\t\t},\n\t} );\n\n\tacf.registerConditionType( NotEqualTo );\n\n\t/**\n\t * PatternMatch\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar PatternMatch = acf.Condition.extend( {\n\t\ttype: 'patternMatch',\n\t\toperator: '==pattern',\n\t\tlabel: __( 'Value matches pattern' ),\n\t\tfieldTypes: [\n\t\t\t'text',\n\t\t\t'textarea',\n\t\t\t'email',\n\t\t\t'url',\n\t\t\t'password',\n\t\t\t'wysiwyg',\n\t\t],\n\t\tmatch: function ( rule, field ) {\n\t\t\treturn matchesPattern( field.val(), rule.value );\n\t\t},\n\t\tchoices: function ( fieldObject ) {\n\t\t\treturn '';\n\t\t},\n\t} );\n\n\tacf.registerConditionType( PatternMatch );\n\n\t/**\n\t * Contains\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar Contains = acf.Condition.extend( {\n\t\ttype: 'contains',\n\t\toperator: '==contains',\n\t\tlabel: __( 'Value contains' ),\n\t\tfieldTypes: [\n\t\t\t'text',\n\t\t\t'textarea',\n\t\t\t'number',\n\t\t\t'email',\n\t\t\t'url',\n\t\t\t'password',\n\t\t\t'wysiwyg',\n\t\t\t'oembed',\n\t\t\t'select',\n\t\t],\n\t\tmatch: function ( rule, field ) {\n\t\t\treturn containsString( field.val(), rule.value );\n\t\t},\n\t\tchoices: function ( fieldObject ) {\n\t\t\treturn '';\n\t\t},\n\t} );\n\n\tacf.registerConditionType( Contains );\n\n\t/**\n\t * TrueFalseEqualTo\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar TrueFalseEqualTo = EqualTo.extend( {\n\t\ttype: 'trueFalseEqualTo',\n\t\tchoiceType: 'select',\n\t\tfieldTypes: [ 'true_false' ],\n\t\tchoices: function ( field ) {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tid: 1,\n\t\t\t\t\ttext: __( 'Checked' ),\n\t\t\t\t},\n\t\t\t];\n\t\t},\n\t} );\n\n\tacf.registerConditionType( TrueFalseEqualTo );\n\n\t/**\n\t * TrueFalseNotEqualTo\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar TrueFalseNotEqualTo = NotEqualTo.extend( {\n\t\ttype: 'trueFalseNotEqualTo',\n\t\tchoiceType: 'select',\n\t\tfieldTypes: [ 'true_false' ],\n\t\tchoices: function ( field ) {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tid: 1,\n\t\t\t\t\ttext: __( 'Checked' ),\n\t\t\t\t},\n\t\t\t];\n\t\t},\n\t} );\n\n\tacf.registerConditionType( TrueFalseNotEqualTo );\n\n\t/**\n\t * SelectEqualTo\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar SelectEqualTo = acf.Condition.extend( {\n\t\ttype: 'selectEqualTo',\n\t\toperator: '==',\n\t\tlabel: __( 'Value is equal to' ),\n\t\tfieldTypes: [ 'select', 'checkbox', 'radio', 'button_group' ],\n\t\tmatch: function ( rule, field ) {\n\t\t\tvar val = field.val();\n\t\t\tif ( val instanceof Array ) {\n\t\t\t\treturn inArray( rule.value, val );\n\t\t\t} else {\n\t\t\t\treturn isEqualTo( rule.value, val );\n\t\t\t}\n\t\t},\n\t\tchoices: function ( fieldObject ) {\n\t\t\t// vars\n\t\t\tvar choices = [];\n\t\t\tvar lines = fieldObject\n\t\t\t\t.$setting( 'choices textarea' )\n\t\t\t\t.val()\n\t\t\t\t.split( '\\n' );\n\n\t\t\t// allow null\n\t\t\tif ( fieldObject.$input( 'allow_null' ).prop( 'checked' ) ) {\n\t\t\t\tchoices.push( {\n\t\t\t\t\tid: '',\n\t\t\t\t\ttext: __( 'Null' ),\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// loop\n\t\t\tlines.map( function ( line ) {\n\t\t\t\t// split\n\t\t\t\tline = line.split( ':' );\n\n\t\t\t\t// default label to value\n\t\t\t\tline[ 1 ] = line[ 1 ] || line[ 0 ];\n\n\t\t\t\t// append\n\t\t\t\tchoices.push( {\n\t\t\t\t\tid: line[ 0 ].trim(),\n\t\t\t\t\ttext: line[ 1 ].trim(),\n\t\t\t\t} );\n\t\t\t} );\n\n\t\t\t// return\n\t\t\treturn choices;\n\t\t},\n\t} );\n\n\tacf.registerConditionType( SelectEqualTo );\n\n\t/**\n\t * SelectNotEqualTo\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar SelectNotEqualTo = SelectEqualTo.extend( {\n\t\ttype: 'selectNotEqualTo',\n\t\toperator: '!=',\n\t\tlabel: __( 'Value is not equal to' ),\n\t\tmatch: function ( rule, field ) {\n\t\t\treturn ! SelectEqualTo.prototype.match.apply( this, arguments );\n\t\t},\n\t} );\n\n\tacf.registerConditionType( SelectNotEqualTo );\n\n\t/**\n\t * GreaterThan\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar GreaterThan = acf.Condition.extend( {\n\t\ttype: 'greaterThan',\n\t\toperator: '>',\n\t\tlabel: __( 'Value is greater than' ),\n\t\tfieldTypes: [ 'number', 'range' ],\n\t\tmatch: function ( rule, field ) {\n\t\t\tvar val = field.val();\n\t\t\tif ( val instanceof Array ) {\n\t\t\t\tval = val.length;\n\t\t\t}\n\t\t\treturn isGreaterThan( val, rule.value );\n\t\t},\n\t\tchoices: function ( fieldObject ) {\n\t\t\treturn '';\n\t\t},\n\t} );\n\n\tacf.registerConditionType( GreaterThan );\n\n\t/**\n\t * LessThan\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar LessThan = GreaterThan.extend( {\n\t\ttype: 'lessThan',\n\t\toperator: '<',\n\t\tlabel: __( 'Value is less than' ),\n\t\tmatch: function ( rule, field ) {\n\t\t\tvar val = field.val();\n\t\t\tif ( val instanceof Array ) {\n\t\t\t\tval = val.length;\n\t\t\t}\n\t\t\tif ( val === undefined || val === null || val === false ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn isLessThan( val, rule.value );\n\t\t},\n\t\tchoices: function ( fieldObject ) {\n\t\t\treturn '';\n\t\t},\n\t} );\n\n\tacf.registerConditionType( LessThan );\n\n\t/**\n\t * SelectedGreaterThan\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar SelectionGreaterThan = GreaterThan.extend( {\n\t\ttype: 'selectionGreaterThan',\n\t\tlabel: __( 'Selection is greater than' ),\n\t\tfieldTypes: [\n\t\t\t'checkbox',\n\t\t\t'select',\n\t\t\t'post_object',\n\t\t\t'page_link',\n\t\t\t'relationship',\n\t\t\t'taxonomy',\n\t\t\t'user',\n\t\t],\n\t} );\n\n\tacf.registerConditionType( SelectionGreaterThan );\n\n\t/**\n\t * SelectedGreaterThan\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar SelectionLessThan = LessThan.extend( {\n\t\ttype: 'selectionLessThan',\n\t\tlabel: __( 'Selection is less than' ),\n\t\tfieldTypes: [\n\t\t\t'checkbox',\n\t\t\t'select',\n\t\t\t'post_object',\n\t\t\t'page_link',\n\t\t\t'relationship',\n\t\t\t'taxonomy',\n\t\t\t'user',\n\t\t],\n\t} );\n\n\tacf.registerConditionType( SelectionLessThan );\n} )( jQuery );\n","( function ( $, undefined ) {\n\t// vars\n\tvar storage = [];\n\n\t/**\n\t * acf.Condition\n\t *\n\t * description\n\t *\n\t * @date\t23/3/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.Condition = acf.Model.extend( {\n\t\ttype: '', // used for model name\n\t\toperator: '==', // rule operator\n\t\tlabel: '', // label shown when editing fields\n\t\tchoiceType: 'input', // input, select\n\t\tfieldTypes: [], // auto connect this conditions with these field types\n\n\t\tdata: {\n\t\t\tconditions: false, // the parent instance\n\t\t\tfield: false, // the field which we query against\n\t\t\trule: {}, // the rule [field, operator, value]\n\t\t},\n\n\t\tevents: {\n\t\t\tchange: 'change',\n\t\t\tkeyup: 'change',\n\t\t\tenableField: 'change',\n\t\t\tdisableField: 'change',\n\t\t},\n\n\t\tsetup: function ( props ) {\n\t\t\t$.extend( this.data, props );\n\t\t},\n\n\t\tgetEventTarget: function ( $el, event ) {\n\t\t\treturn $el || this.get( 'field' ).$el;\n\t\t},\n\n\t\tchange: function ( e, $el ) {\n\t\t\tthis.get( 'conditions' ).change( e );\n\t\t},\n\n\t\tmatch: function ( rule, field ) {\n\t\t\treturn false;\n\t\t},\n\n\t\tcalculate: function () {\n\t\t\treturn this.match( this.get( 'rule' ), this.get( 'field' ) );\n\t\t},\n\n\t\tchoices: function ( field ) {\n\t\t\treturn '';\n\t\t},\n\t} );\n\n\t/**\n\t * acf.newCondition\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.newCondition = function ( rule, conditions ) {\n\t\t// currently setting up conditions for fieldX, this field is the 'target'\n\t\tvar target = conditions.get( 'field' );\n\n\t\t// use the 'target' to find the 'trigger' field.\n\t\t// - this field is used to setup the conditional logic events\n\t\tvar field = target.getField( rule.field );\n\n\t\t// bail ealry if no target or no field (possible if field doesn't exist due to HTML error)\n\t\tif ( ! target || ! field ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// vars\n\t\tvar args = {\n\t\t\trule: rule,\n\t\t\ttarget: target,\n\t\t\tconditions: conditions,\n\t\t\tfield: field,\n\t\t};\n\n\t\t// vars\n\t\tvar fieldType = field.get( 'type' );\n\t\tvar operator = rule.operator;\n\n\t\t// get avaibale conditions\n\t\tvar conditionTypes = acf.getConditionTypes( {\n\t\t\tfieldType: fieldType,\n\t\t\toperator: operator,\n\t\t} );\n\n\t\t// instantiate\n\t\tvar model = conditionTypes[ 0 ] || acf.Condition;\n\n\t\t// instantiate\n\t\tvar condition = new model( args );\n\n\t\t// return\n\t\treturn condition;\n\t};\n\n\t/**\n\t * mid\n\t *\n\t * Calculates the model ID for a field type\n\t *\n\t * @date\t15/12/17\n\t * @since\t5.6.5\n\t *\n\t * @param\tstring type\n\t * @return\tstring\n\t */\n\n\tvar modelId = function ( type ) {\n\t\treturn acf.strPascalCase( type || '' ) + 'Condition';\n\t};\n\n\t/**\n\t * acf.registerConditionType\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.registerConditionType = function ( model ) {\n\t\t// vars\n\t\tvar proto = model.prototype;\n\t\tvar type = proto.type;\n\t\tvar mid = modelId( type );\n\n\t\t// store model\n\t\tacf.models[ mid ] = model;\n\n\t\t// store reference\n\t\tstorage.push( type );\n\t};\n\n\t/**\n\t * acf.getConditionType\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.getConditionType = function ( type ) {\n\t\tvar mid = modelId( type );\n\t\treturn acf.models[ mid ] || false;\n\t};\n\n\t/**\n\t * acf.registerConditionForFieldType\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.registerConditionForFieldType = function ( conditionType, fieldType ) {\n\t\t// get model\n\t\tvar model = acf.getConditionType( conditionType );\n\n\t\t// append\n\t\tif ( model ) {\n\t\t\tmodel.prototype.fieldTypes.push( fieldType );\n\t\t}\n\t};\n\n\t/**\n\t * acf.getConditionTypes\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.getConditionTypes = function ( args ) {\n\t\t// defaults\n\t\targs = acf.parseArgs( args, {\n\t\t\tfieldType: '',\n\t\t\toperator: '',\n\t\t} );\n\n\t\t// clonse available types\n\t\tvar types = [];\n\n\t\t// loop\n\t\tstorage.map( function ( type ) {\n\t\t\t// vars\n\t\t\tvar model = acf.getConditionType( type );\n\t\t\tvar ProtoFieldTypes = model.prototype.fieldTypes;\n\t\t\tvar ProtoOperator = model.prototype.operator;\n\n\t\t\t// check fieldType\n\t\t\tif (\n\t\t\t\targs.fieldType &&\n\t\t\t\tProtoFieldTypes.indexOf( args.fieldType ) === -1\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// check operator\n\t\t\tif ( args.operator && ProtoOperator !== args.operator ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// append\n\t\t\ttypes.push( model );\n\t\t} );\n\n\t\t// return\n\t\treturn types;\n\t};\n} )( jQuery );\n","( function ( $, undefined ) {\n\t// vars\n\tvar CONTEXT = 'conditional_logic';\n\n\t/**\n\t * conditionsManager\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar conditionsManager = new acf.Model( {\n\t\tid: 'conditionsManager',\n\n\t\tpriority: 20, // run actions later\n\n\t\tactions: {\n\t\t\tnew_field: 'onNewField',\n\t\t},\n\n\t\tonNewField: function ( field ) {\n\t\t\tif ( field.has( 'conditions' ) ) {\n\t\t\t\tfield.getConditions().render();\n\t\t\t}\n\t\t},\n\t} );\n\n\t/**\n\t * acf.Field.prototype.getField\n\t *\n\t * Finds a field that is related to another field\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar getSiblingField = function ( field, key ) {\n\t\t// find sibling (very fast)\n\t\tvar fields = acf.getFields( {\n\t\t\tkey: key,\n\t\t\tsibling: field.$el,\n\t\t\tsuppressFilters: true,\n\t\t} );\n\n\t\t// find sibling-children (fast)\n\t\t// needed for group fields, accordions, etc\n\t\tif ( ! fields.length ) {\n\t\t\tfields = acf.getFields( {\n\t\t\t\tkey: key,\n\t\t\t\tparent: field.$el.parent(),\n\t\t\t\tsuppressFilters: true,\n\t\t\t} );\n\t\t}\n\n\t\t// return\n\t\tif ( fields.length ) {\n\t\t\treturn fields[ 0 ];\n\t\t}\n\t\treturn false;\n\t};\n\n\tacf.Field.prototype.getField = function ( key ) {\n\t\t// get sibling field\n\t\tvar field = getSiblingField( this, key );\n\n\t\t// return early\n\t\tif ( field ) {\n\t\t\treturn field;\n\t\t}\n\n\t\t// move up through each parent and try again\n\t\tvar parents = this.parents();\n\t\tfor ( var i = 0; i < parents.length; i++ ) {\n\t\t\t// get sibling field\n\t\t\tfield = getSiblingField( parents[ i ], key );\n\n\t\t\t// return early\n\t\t\tif ( field ) {\n\t\t\t\treturn field;\n\t\t\t}\n\t\t}\n\n\t\t// return\n\t\treturn false;\n\t};\n\n\t/**\n\t * acf.Field.prototype.getConditions\n\t *\n\t * Returns the field's conditions instance\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.Field.prototype.getConditions = function () {\n\t\t// instantiate\n\t\tif ( ! this.conditions ) {\n\t\t\tthis.conditions = new Conditions( this );\n\t\t}\n\n\t\t// return\n\t\treturn this.conditions;\n\t};\n\n\t/**\n\t * Conditions\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\tvar timeout = false;\n\tvar Conditions = acf.Model.extend( {\n\t\tid: 'Conditions',\n\n\t\tdata: {\n\t\t\tfield: false, // The field with \"data-conditions\" (target).\n\t\t\ttimeStamp: false, // Reference used during \"change\" event.\n\t\t\tgroups: [], // The groups of condition instances.\n\t\t},\n\n\t\tsetup: function ( field ) {\n\t\t\t// data\n\t\t\tthis.data.field = field;\n\n\t\t\t// vars\n\t\t\tvar conditions = field.get( 'conditions' );\n\n\t\t\t// detect groups\n\t\t\tif ( conditions instanceof Array ) {\n\t\t\t\t// detect groups\n\t\t\t\tif ( conditions[ 0 ] instanceof Array ) {\n\t\t\t\t\t// loop\n\t\t\t\t\tconditions.map( function ( rules, i ) {\n\t\t\t\t\t\tthis.addRules( rules, i );\n\t\t\t\t\t}, this );\n\n\t\t\t\t\t// detect rules\n\t\t\t\t} else {\n\t\t\t\t\tthis.addRules( conditions );\n\t\t\t\t}\n\n\t\t\t\t// detect rule\n\t\t\t} else {\n\t\t\t\tthis.addRule( conditions );\n\t\t\t}\n\t\t},\n\n\t\tchange: function ( e ) {\n\t\t\t// this function may be triggered multiple times per event due to multiple condition classes\n\t\t\t// compare timestamp to allow only 1 trigger per event\n\t\t\tif ( this.get( 'timeStamp' ) === e.timeStamp ) {\n\t\t\t\treturn false;\n\t\t\t} else {\n\t\t\t\tthis.set( 'timeStamp', e.timeStamp, true );\n\t\t\t}\n\n\t\t\t// render condition and store result\n\t\t\tvar changed = this.render();\n\t\t},\n\n\t\trender: function () {\n\t\t\treturn this.calculate() ? this.show() : this.hide();\n\t\t},\n\n\t\tshow: function () {\n\t\t\treturn this.get( 'field' ).showEnable( this.cid, CONTEXT );\n\t\t},\n\n\t\thide: function () {\n\t\t\treturn this.get( 'field' ).hideDisable( this.cid, CONTEXT );\n\t\t},\n\n\t\tcalculate: function () {\n\t\t\t// vars\n\t\t\tvar pass = false;\n\n\t\t\t// loop\n\t\t\tthis.getGroups().map( function ( group ) {\n\t\t\t\t// igrnore this group if another group passed\n\t\t\t\tif ( pass ) return;\n\n\t\t\t\t// find passed\n\t\t\t\tvar passed = group.filter( function ( condition ) {\n\t\t\t\t\treturn condition.calculate();\n\t\t\t\t} );\n\n\t\t\t\t// if all conditions passed, update the global var\n\t\t\t\tif ( passed.length == group.length ) {\n\t\t\t\t\tpass = true;\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\treturn pass;\n\t\t},\n\n\t\thasGroups: function () {\n\t\t\treturn this.data.groups != null;\n\t\t},\n\n\t\tgetGroups: function () {\n\t\t\treturn this.data.groups;\n\t\t},\n\n\t\taddGroup: function () {\n\t\t\tvar group = [];\n\t\t\tthis.data.groups.push( group );\n\t\t\treturn group;\n\t\t},\n\n\t\thasGroup: function ( i ) {\n\t\t\treturn this.data.groups[ i ] != null;\n\t\t},\n\n\t\tgetGroup: function ( i ) {\n\t\t\treturn this.data.groups[ i ];\n\t\t},\n\n\t\tremoveGroup: function ( i ) {\n\t\t\tthis.data.groups[ i ].delete;\n\t\t\treturn this;\n\t\t},\n\n\t\taddRules: function ( rules, group ) {\n\t\t\trules.map( function ( rule ) {\n\t\t\t\tthis.addRule( rule, group );\n\t\t\t}, this );\n\t\t},\n\n\t\taddRule: function ( rule, group ) {\n\t\t\t// defaults\n\t\t\tgroup = group || 0;\n\n\t\t\t// vars\n\t\t\tvar groupArray;\n\n\t\t\t// get group\n\t\t\tif ( this.hasGroup( group ) ) {\n\t\t\t\tgroupArray = this.getGroup( group );\n\t\t\t} else {\n\t\t\t\tgroupArray = this.addGroup();\n\t\t\t}\n\n\t\t\t// instantiate\n\t\t\tvar condition = acf.newCondition( rule, this );\n\n\t\t\t// bail ealry if condition failed (field did not exist)\n\t\t\tif ( ! condition ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// add rule\n\t\t\tgroupArray.push( condition );\n\t\t},\n\n\t\thasRule: function () {},\n\n\t\tgetRule: function ( rule, group ) {\n\t\t\t// defaults\n\t\t\trule = rule || 0;\n\t\t\tgroup = group || 0;\n\n\t\t\treturn this.data.groups[ group ][ rule ];\n\t\t},\n\n\t\tremoveRule: function () {},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar i = 0;\n\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'accordion',\n\n\t\twait: '',\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-fields:first' );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// Bail early if this is a duplicate of an existing initialized accordion.\n\t\t\tif ( this.$el.hasClass( 'acf-accordion' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// bail early if is cell\n\t\t\tif ( this.$el.is( 'td' ) ) return;\n\n\t\t\t// enpoint\n\t\t\tif ( this.get( 'endpoint' ) ) {\n\t\t\t\treturn this.remove();\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar $field = this.$el;\n\t\t\tvar $label = this.$labelWrap();\n\t\t\tvar $input = this.$inputWrap();\n\t\t\tvar $wrap = this.$control();\n\t\t\tvar $instructions = $input.children( '.description' );\n\n\t\t\t// force description into label\n\t\t\tif ( $instructions.length ) {\n\t\t\t\t$label.append( $instructions );\n\t\t\t}\n\n\t\t\t// table\n\t\t\tif ( this.$el.is( 'tr' ) ) {\n\t\t\t\t// vars\n\t\t\t\tvar $table = this.$el.closest( 'table' );\n\t\t\t\tvar $newLabel = $( '
' );\n\t\t\t\tvar $newInput = $( '
' );\n\t\t\t\tvar $newTable = $(\n\t\t\t\t\t''\n\t\t\t\t);\n\t\t\t\tvar $newWrap = $( '' );\n\n\t\t\t\t// dom\n\t\t\t\t$newLabel.append( $label.html() );\n\t\t\t\t$newTable.append( $newWrap );\n\t\t\t\t$newInput.append( $newTable );\n\t\t\t\t$input.append( $newLabel );\n\t\t\t\t$input.append( $newInput );\n\n\t\t\t\t// modify\n\t\t\t\t$label.remove();\n\t\t\t\t$wrap.remove();\n\t\t\t\t$input.attr( 'colspan', 2 );\n\n\t\t\t\t// update vars\n\t\t\t\t$label = $newLabel;\n\t\t\t\t$input = $newInput;\n\t\t\t\t$wrap = $newWrap;\n\t\t\t}\n\n\t\t\t// add classes\n\t\t\t$field.addClass( 'acf-accordion' );\n\t\t\t$label.addClass( 'acf-accordion-title' );\n\t\t\t$input.addClass( 'acf-accordion-content' );\n\n\t\t\t// index\n\t\t\ti++;\n\n\t\t\t// multi-expand\n\t\t\tif ( this.get( 'multi_expand' ) ) {\n\t\t\t\t$field.attr( 'multi-expand', 1 );\n\t\t\t}\n\n\t\t\t// open\n\t\t\tvar order = acf.getPreference( 'this.accordions' ) || [];\n\t\t\tif ( order[ i - 1 ] !== undefined ) {\n\t\t\t\tthis.set( 'open', order[ i - 1 ] );\n\t\t\t}\n\n\t\t\tif ( this.get( 'open' ) ) {\n\t\t\t\t$field.addClass( '-open' );\n\t\t\t\t$input.css( 'display', 'block' ); // needed for accordion to close smoothly\n\t\t\t}\n\n\t\t\t// add icon\n\t\t\t$label.prepend(\n\t\t\t\taccordionManager.iconHtml( { open: this.get( 'open' ) } )\n\t\t\t);\n\n\t\t\t// classes\n\t\t\t// - remove 'inside' which is a #poststuff WP class\n\t\t\tvar $parent = $field.parent();\n\t\t\t$wrap.addClass( $parent.hasClass( '-left' ) ? '-left' : '' );\n\t\t\t$wrap.addClass( $parent.hasClass( '-clear' ) ? '-clear' : '' );\n\n\t\t\t// append\n\t\t\t$wrap.append(\n\t\t\t\t$field.nextUntil( '.acf-field-accordion', '.acf-field' )\n\t\t\t);\n\n\t\t\t// clean up\n\t\t\t$wrap.removeAttr( 'data-open data-multi_expand data-endpoint' );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n\n\t/**\n\t * accordionManager\n\t *\n\t * Events manager for the acf accordion\n\t *\n\t * @date\t14/2/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar accordionManager = new acf.Model( {\n\t\tactions: {\n\t\t\tunload: 'onUnload',\n\t\t},\n\n\t\tevents: {\n\t\t\t'click .acf-accordion-title': 'onClick',\n\t\t\t'invalidField .acf-accordion': 'onInvalidField',\n\t\t},\n\n\t\tisOpen: function ( $el ) {\n\t\t\treturn $el.hasClass( '-open' );\n\t\t},\n\n\t\ttoggle: function ( $el ) {\n\t\t\tif ( this.isOpen( $el ) ) {\n\t\t\t\tthis.close( $el );\n\t\t\t} else {\n\t\t\t\tthis.open( $el );\n\t\t\t}\n\t\t},\n\n\t\ticonHtml: function ( props ) {\n\t\t\t// Use SVG inside Gutenberg editor.\n\t\t\tif ( acf.isGutenberg() ) {\n\t\t\t\tif ( props.open ) {\n\t\t\t\t\treturn '';\n\t\t\t\t} else {\n\t\t\t\t\treturn '';\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ( props.open ) {\n\t\t\t\t\treturn '';\n\t\t\t\t} else {\n\t\t\t\t\treturn '';\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\topen: function ( $el ) {\n\t\t\tvar duration = acf.isGutenberg() ? 0 : 300;\n\n\t\t\t// open\n\t\t\t$el.find( '.acf-accordion-content:first' )\n\t\t\t\t.slideDown( duration )\n\t\t\t\t.css( 'display', 'block' );\n\t\t\t$el.find( '.acf-accordion-icon:first' ).replaceWith(\n\t\t\t\tthis.iconHtml( { open: true } )\n\t\t\t);\n\t\t\t$el.addClass( '-open' );\n\n\t\t\t// action\n\t\t\tacf.doAction( 'show', $el );\n\n\t\t\t// close siblings\n\t\t\tif ( ! $el.attr( 'multi-expand' ) ) {\n\t\t\t\t$el.siblings( '.acf-accordion.-open' ).each( function () {\n\t\t\t\t\taccordionManager.close( $( this ) );\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\n\t\tclose: function ( $el ) {\n\t\t\tvar duration = acf.isGutenberg() ? 0 : 300;\n\n\t\t\t// close\n\t\t\t$el.find( '.acf-accordion-content:first' ).slideUp( duration );\n\t\t\t$el.find( '.acf-accordion-icon:first' ).replaceWith(\n\t\t\t\tthis.iconHtml( { open: false } )\n\t\t\t);\n\t\t\t$el.removeClass( '-open' );\n\n\t\t\t// action\n\t\t\tacf.doAction( 'hide', $el );\n\t\t},\n\n\t\tonClick: function ( e, $el ) {\n\t\t\t// prevent Defailt\n\t\t\te.preventDefault();\n\n\t\t\t// open close\n\t\t\tthis.toggle( $el.parent() );\n\t\t},\n\n\t\tonInvalidField: function ( e, $el ) {\n\t\t\t// bail early if already focused\n\t\t\tif ( this.busy ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// disable functionality for 1sec (allow next validation to work)\n\t\t\tthis.busy = true;\n\t\t\tthis.setTimeout( function () {\n\t\t\t\tthis.busy = false;\n\t\t\t}, 1000 );\n\n\t\t\t// open accordion\n\t\t\tthis.open( $el );\n\t\t},\n\n\t\tonUnload: function ( e ) {\n\t\t\t// vars\n\t\t\tvar order = [];\n\n\t\t\t// loop\n\t\t\t$( '.acf-accordion' ).each( function () {\n\t\t\t\tvar open = $( this ).hasClass( '-open' ) ? 1 : 0;\n\t\t\t\torder.push( open );\n\t\t\t} );\n\n\t\t\t// set\n\t\t\tif ( order.length ) {\n\t\t\t\tacf.setPreference( 'this.accordions', order );\n\t\t\t}\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'button_group',\n\n\t\tevents: {\n\t\t\t'click input[type=\"radio\"]': 'onClick',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-button-group' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input:checked' );\n\t\t},\n\n\t\tsetValue: function ( val ) {\n\t\t\tthis.$( 'input[value=\"' + val + '\"]' )\n\t\t\t\t.prop( 'checked', true )\n\t\t\t\t.trigger( 'change' );\n\t\t},\n\n\t\tonClick: function ( e, $el ) {\n\t\t\t// vars\n\t\t\tvar $label = $el.parent( 'label' );\n\t\t\tvar selected = $label.hasClass( 'selected' );\n\n\t\t\t// remove previous selected\n\t\t\tthis.$( '.selected' ).removeClass( 'selected' );\n\n\t\t\t// add active class\n\t\t\t$label.addClass( 'selected' );\n\n\t\t\t// allow null\n\t\t\tif ( this.get( 'allow_null' ) && selected ) {\n\t\t\t\t$label.removeClass( 'selected' );\n\t\t\t\t$el.prop( 'checked', false ).trigger( 'change' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'checkbox',\n\n\t\tevents: {\n\t\t\t'change input': 'onChange',\n\t\t\t'click .acf-add-checkbox': 'onClickAdd',\n\t\t\t'click .acf-checkbox-toggle': 'onClickToggle',\n\t\t\t'click .acf-checkbox-custom': 'onClickCustom',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-checkbox-list' );\n\t\t},\n\n\t\t$toggle: function () {\n\t\t\treturn this.$( '.acf-checkbox-toggle' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input[type=\"hidden\"]' );\n\t\t},\n\n\t\t$inputs: function () {\n\t\t\treturn this.$( 'input[type=\"checkbox\"]' ).not(\n\t\t\t\t'.acf-checkbox-toggle'\n\t\t\t);\n\t\t},\n\n\t\tgetValue: function () {\n\t\t\tvar val = [];\n\t\t\tthis.$( ':checked' ).each( function () {\n\t\t\t\tval.push( $( this ).val() );\n\t\t\t} );\n\t\t\treturn val.length ? val : false;\n\t\t},\n\n\t\tonChange: function ( e, $el ) {\n\t\t\t// Vars.\n\t\t\tvar checked = $el.prop( 'checked' );\n\t\t\tvar $label = $el.parent( 'label' );\n\t\t\tvar $toggle = this.$toggle();\n\n\t\t\t// Add or remove \"selected\" class.\n\t\t\tif ( checked ) {\n\t\t\t\t$label.addClass( 'selected' );\n\t\t\t} else {\n\t\t\t\t$label.removeClass( 'selected' );\n\t\t\t}\n\n\t\t\t// Update toggle state if all inputs are checked.\n\t\t\tif ( $toggle.length ) {\n\t\t\t\tvar $inputs = this.$inputs();\n\n\t\t\t\t// all checked\n\t\t\t\tif ( $inputs.not( ':checked' ).length == 0 ) {\n\t\t\t\t\t$toggle.prop( 'checked', true );\n\t\t\t\t} else {\n\t\t\t\t\t$toggle.prop( 'checked', false );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\tonClickAdd: function ( e, $el ) {\n\t\t\tvar html =\n\t\t\t\t'
  • ';\n\t\t\t$el.parent( 'li' ).before( html );\n\t\t},\n\n\t\tonClickToggle: function ( e, $el ) {\n\t\t\t// Vars.\n\t\t\tvar checked = $el.prop( 'checked' );\n\t\t\tvar $inputs = this.$( 'input[type=\"checkbox\"]' );\n\t\t\tvar $labels = this.$( 'label' );\n\n\t\t\t// Update \"checked\" state.\n\t\t\t$inputs.prop( 'checked', checked );\n\n\t\t\t// Add or remove \"selected\" class.\n\t\t\tif ( checked ) {\n\t\t\t\t$labels.addClass( 'selected' );\n\t\t\t} else {\n\t\t\t\t$labels.removeClass( 'selected' );\n\t\t\t}\n\t\t},\n\n\t\tonClickCustom: function ( e, $el ) {\n\t\t\tvar checked = $el.prop( 'checked' );\n\t\t\tvar $text = $el.next( 'input[type=\"text\"]' );\n\n\t\t\t// checked\n\t\t\tif ( checked ) {\n\t\t\t\t$text.prop( 'disabled', false );\n\n\t\t\t\t// not checked\n\t\t\t} else {\n\t\t\t\t$text.prop( 'disabled', true );\n\n\t\t\t\t// remove\n\t\t\t\tif ( $text.val() == '' ) {\n\t\t\t\t\t$el.parent( 'li' ).remove();\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'color_picker',\n\n\t\twait: 'load',\n\n\t\tevents: {\n\t\t\tduplicateField: 'onDuplicate',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-color-picker' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input[type=\"hidden\"]' );\n\t\t},\n\n\t\t$inputText: function () {\n\t\t\treturn this.$( 'input[type=\"text\"]' );\n\t\t},\n\n\t\tsetValue: function ( val ) {\n\t\t\t// update input (with change)\n\t\t\tacf.val( this.$input(), val );\n\n\t\t\t// update iris\n\t\t\tthis.$inputText().iris( 'color', val );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar $input = this.$input();\n\t\t\tvar $inputText = this.$inputText();\n\n\t\t\t// event\n\t\t\tvar onChange = function ( e ) {\n\t\t\t\t// timeout is required to ensure the $input val is correct\n\t\t\t\tsetTimeout( function () {\n\t\t\t\t\tacf.val( $input, $inputText.val() );\n\t\t\t\t}, 1 );\n\t\t\t};\n\n\t\t\t// args\n\t\t\tvar args = {\n\t\t\t\tdefaultColor: false,\n\t\t\t\tpalettes: true,\n\t\t\t\thide: true,\n\t\t\t\tchange: onChange,\n\t\t\t\tclear: onChange,\n\t\t\t};\n\n\t\t\t// filter\n\t\t\tvar args = acf.applyFilters( 'color_picker_args', args, this );\n\n\t\t\t// initialize\n\t\t\t$inputText.wpColorPicker( args );\n\t\t},\n\n\t\tonDuplicate: function ( e, $el, $duplicate ) {\n\t\t\t// The wpColorPicker library does not provide a destroy method.\n\t\t\t// Manually reset DOM by replacing elements back to their original state.\n\t\t\t$colorPicker = $duplicate.find( '.wp-picker-container' );\n\t\t\t$inputText = $duplicate.find( 'input[type=\"text\"]' );\n\t\t\t$colorPicker.replaceWith( $inputText );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'date_picker',\n\n\t\tevents: {\n\t\t\t'blur input[type=\"text\"]': 'onBlur',\n\t\t\tduplicateField: 'onDuplicate',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-date-picker' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input[type=\"hidden\"]' );\n\t\t},\n\n\t\t$inputText: function () {\n\t\t\treturn this.$( 'input[type=\"text\"]' );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// save_format: compatibility with ACF < 5.0.0\n\t\t\tif ( this.has( 'save_format' ) ) {\n\t\t\t\treturn this.initializeCompatibility();\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar $input = this.$input();\n\t\t\tvar $inputText = this.$inputText();\n\n\t\t\t// args\n\t\t\tvar args = {\n\t\t\t\tdateFormat: this.get( 'date_format' ),\n\t\t\t\taltField: $input,\n\t\t\t\taltFormat: 'yymmdd',\n\t\t\t\tchangeYear: true,\n\t\t\t\tyearRange: '-100:+100',\n\t\t\t\tchangeMonth: true,\n\t\t\t\tshowButtonPanel: true,\n\t\t\t\tfirstDay: this.get( 'first_day' ),\n\t\t\t};\n\n\t\t\t// filter\n\t\t\targs = acf.applyFilters( 'date_picker_args', args, this );\n\n\t\t\t// add date picker\n\t\t\tacf.newDatePicker( $inputText, args );\n\n\t\t\t// action\n\t\t\tacf.doAction( 'date_picker_init', $inputText, args, this );\n\t\t},\n\n\t\tinitializeCompatibility: function () {\n\t\t\t// vars\n\t\t\tvar $input = this.$input();\n\t\t\tvar $inputText = this.$inputText();\n\n\t\t\t// get and set value from alt field\n\t\t\t$inputText.val( $input.val() );\n\n\t\t\t// args\n\t\t\tvar args = {\n\t\t\t\tdateFormat: this.get( 'date_format' ),\n\t\t\t\taltField: $input,\n\t\t\t\taltFormat: this.get( 'save_format' ),\n\t\t\t\tchangeYear: true,\n\t\t\t\tyearRange: '-100:+100',\n\t\t\t\tchangeMonth: true,\n\t\t\t\tshowButtonPanel: true,\n\t\t\t\tfirstDay: this.get( 'first_day' ),\n\t\t\t};\n\n\t\t\t// filter for 3rd party customization\n\t\t\targs = acf.applyFilters( 'date_picker_args', args, this );\n\n\t\t\t// backup\n\t\t\tvar dateFormat = args.dateFormat;\n\n\t\t\t// change args.dateFormat\n\t\t\targs.dateFormat = this.get( 'save_format' );\n\n\t\t\t// add date picker\n\t\t\tacf.newDatePicker( $inputText, args );\n\n\t\t\t// now change the format back to how it should be.\n\t\t\t$inputText.datepicker( 'option', 'dateFormat', dateFormat );\n\n\t\t\t// action for 3rd party customization\n\t\t\tacf.doAction( 'date_picker_init', $inputText, args, this );\n\t\t},\n\n\t\tonBlur: function () {\n\t\t\tif ( ! this.$inputText().val() ) {\n\t\t\t\tacf.val( this.$input(), '' );\n\t\t\t}\n\t\t},\n\n\t\tonDuplicate: function ( e, $el, $duplicate ) {\n\t\t\t$duplicate\n\t\t\t\t.find( 'input[type=\"text\"]' )\n\t\t\t\t.removeClass( 'hasDatepicker' )\n\t\t\t\t.removeAttr( 'id' );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n\n\t// manager\n\tvar datePickerManager = new acf.Model( {\n\t\tpriority: 5,\n\t\twait: 'ready',\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar locale = acf.get( 'locale' );\n\t\t\tvar rtl = acf.get( 'rtl' );\n\t\t\tvar l10n = acf.get( 'datePickerL10n' );\n\n\t\t\t// bail ealry if no l10n\n\t\t\tif ( ! l10n ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// bail ealry if no datepicker library\n\t\t\tif ( typeof $.datepicker === 'undefined' ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// rtl\n\t\t\tl10n.isRTL = rtl;\n\n\t\t\t// append\n\t\t\t$.datepicker.regional[ locale ] = l10n;\n\t\t\t$.datepicker.setDefaults( l10n );\n\t\t},\n\t} );\n\n\t// add\n\tacf.newDatePicker = function ( $input, args ) {\n\t\t// bail ealry if no datepicker library\n\t\tif ( typeof $.datepicker === 'undefined' ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// defaults\n\t\targs = args || {};\n\n\t\t// initialize\n\t\t$input.datepicker( args );\n\n\t\t// wrap the datepicker (only if it hasn't already been wrapped)\n\t\tif ( $( 'body > #ui-datepicker-div' ).exists() ) {\n\t\t\t$( 'body > #ui-datepicker-div' ).wrap(\n\t\t\t\t'
    '\n\t\t\t);\n\t\t}\n\t};\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.models.DatePickerField.extend( {\n\t\ttype: 'date_time_picker',\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-date-time-picker' );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar $input = this.$input();\n\t\t\tvar $inputText = this.$inputText();\n\n\t\t\t// args\n\t\t\tvar args = {\n\t\t\t\tdateFormat: this.get( 'date_format' ),\n\t\t\t\ttimeFormat: this.get( 'time_format' ),\n\t\t\t\taltField: $input,\n\t\t\t\taltFieldTimeOnly: false,\n\t\t\t\taltFormat: 'yy-mm-dd',\n\t\t\t\taltTimeFormat: 'HH:mm:ss',\n\t\t\t\tchangeYear: true,\n\t\t\t\tyearRange: '-100:+100',\n\t\t\t\tchangeMonth: true,\n\t\t\t\tshowButtonPanel: true,\n\t\t\t\tfirstDay: this.get( 'first_day' ),\n\t\t\t\tcontrolType: 'select',\n\t\t\t\toneLine: true,\n\t\t\t};\n\n\t\t\t// filter\n\t\t\targs = acf.applyFilters( 'date_time_picker_args', args, this );\n\n\t\t\t// add date time picker\n\t\t\tacf.newDateTimePicker( $inputText, args );\n\n\t\t\t// action\n\t\t\tacf.doAction( 'date_time_picker_init', $inputText, args, this );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n\n\t// manager\n\tvar dateTimePickerManager = new acf.Model( {\n\t\tpriority: 5,\n\t\twait: 'ready',\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar locale = acf.get( 'locale' );\n\t\t\tvar rtl = acf.get( 'rtl' );\n\t\t\tvar l10n = acf.get( 'dateTimePickerL10n' );\n\n\t\t\t// bail ealry if no l10n\n\t\t\tif ( ! l10n ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// bail ealry if no datepicker library\n\t\t\tif ( typeof $.timepicker === 'undefined' ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// rtl\n\t\t\tl10n.isRTL = rtl;\n\n\t\t\t// append\n\t\t\t$.timepicker.regional[ locale ] = l10n;\n\t\t\t$.timepicker.setDefaults( l10n );\n\t\t},\n\t} );\n\n\t// add\n\tacf.newDateTimePicker = function ( $input, args ) {\n\t\t// bail ealry if no datepicker library\n\t\tif ( typeof $.timepicker === 'undefined' ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// defaults\n\t\targs = args || {};\n\n\t\t// initialize\n\t\t$input.datetimepicker( args );\n\n\t\t// wrap the datepicker (only if it hasn't already been wrapped)\n\t\tif ( $( 'body > #ui-datepicker-div' ).exists() ) {\n\t\t\t$( 'body > #ui-datepicker-div' ).wrap(\n\t\t\t\t'
    '\n\t\t\t);\n\t\t}\n\t};\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.models.ImageField.extend( {\n\t\ttype: 'file',\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-file-uploader' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input[type=\"hidden\"]' );\n\t\t},\n\n\t\tvalidateAttachment: function ( attachment ) {\n\t\t\t// defaults\n\t\t\tattachment = attachment || {};\n\n\t\t\t// WP attachment\n\t\t\tif ( attachment.id !== undefined ) {\n\t\t\t\tattachment = attachment.attributes;\n\t\t\t}\n\n\t\t\t// args\n\t\t\tattachment = acf.parseArgs( attachment, {\n\t\t\t\turl: '',\n\t\t\t\talt: '',\n\t\t\t\ttitle: '',\n\t\t\t\tfilename: '',\n\t\t\t\tfilesizeHumanReadable: '',\n\t\t\t\ticon: '/wp-includes/images/media/default.png',\n\t\t\t} );\n\n\t\t\t// return\n\t\t\treturn attachment;\n\t\t},\n\n\t\trender: function ( attachment ) {\n\t\t\t// vars\n\t\t\tattachment = this.validateAttachment( attachment );\n\n\t\t\t// update image\n\t\t\tthis.$( 'img' ).attr( {\n\t\t\t\tsrc: attachment.icon,\n\t\t\t\talt: attachment.alt,\n\t\t\t\ttitle: attachment.title,\n\t\t\t} );\n\n\t\t\t// update elements\n\t\t\tthis.$( '[data-name=\"title\"]' ).text( attachment.title );\n\t\t\tthis.$( '[data-name=\"filename\"]' )\n\t\t\t\t.text( attachment.filename )\n\t\t\t\t.attr( 'href', attachment.url );\n\t\t\tthis.$( '[data-name=\"filesize\"]' ).text(\n\t\t\t\tattachment.filesizeHumanReadable\n\t\t\t);\n\n\t\t\t// vars\n\t\t\tvar val = attachment.id || '';\n\n\t\t\t// update val\n\t\t\tacf.val( this.$input(), val );\n\n\t\t\t// update class\n\t\t\tif ( val ) {\n\t\t\t\tthis.$control().addClass( 'has-value' );\n\t\t\t} else {\n\t\t\t\tthis.$control().removeClass( 'has-value' );\n\t\t\t}\n\t\t},\n\n\t\tselectAttachment: function () {\n\t\t\t// vars\n\t\t\tvar parent = this.parent();\n\t\t\tvar multiple = parent && parent.get( 'type' ) === 'repeater';\n\n\t\t\t// new frame\n\t\t\tvar frame = acf.newMediaPopup( {\n\t\t\t\tmode: 'select',\n\t\t\t\ttitle: acf.__( 'Select File' ),\n\t\t\t\tfield: this.get( 'key' ),\n\t\t\t\tmultiple: multiple,\n\t\t\t\tlibrary: this.get( 'library' ),\n\t\t\t\tallowedTypes: this.get( 'mime_types' ),\n\t\t\t\tselect: $.proxy( function ( attachment, i ) {\n\t\t\t\t\tif ( i > 0 ) {\n\t\t\t\t\t\tthis.append( attachment, parent );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.render( attachment );\n\t\t\t\t\t}\n\t\t\t\t}, this ),\n\t\t\t} );\n\t\t},\n\n\t\teditAttachment: function () {\n\t\t\t// vars\n\t\t\tvar val = this.val();\n\n\t\t\t// bail early if no val\n\t\t\tif ( ! val ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// popup\n\t\t\tvar frame = acf.newMediaPopup( {\n\t\t\t\tmode: 'edit',\n\t\t\t\ttitle: acf.__( 'Edit File' ),\n\t\t\t\tbutton: acf.__( 'Update File' ),\n\t\t\t\tattachment: val,\n\t\t\t\tfield: this.get( 'key' ),\n\t\t\t\tselect: $.proxy( function ( attachment, i ) {\n\t\t\t\t\tthis.render( attachment );\n\t\t\t\t}, this ),\n\t\t\t} );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'google_map',\n\n\t\tmap: false,\n\n\t\twait: 'load',\n\n\t\tevents: {\n\t\t\t'click a[data-name=\"clear\"]': 'onClickClear',\n\t\t\t'click a[data-name=\"locate\"]': 'onClickLocate',\n\t\t\t'click a[data-name=\"search\"]': 'onClickSearch',\n\t\t\t'keydown .search': 'onKeydownSearch',\n\t\t\t'keyup .search': 'onKeyupSearch',\n\t\t\t'focus .search': 'onFocusSearch',\n\t\t\t'blur .search': 'onBlurSearch',\n\t\t\tshowField: 'onShow',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-google-map' );\n\t\t},\n\n\t\t$search: function () {\n\t\t\treturn this.$( '.search' );\n\t\t},\n\n\t\t$canvas: function () {\n\t\t\treturn this.$( '.canvas' );\n\t\t},\n\n\t\tsetState: function ( state ) {\n\t\t\t// Remove previous state classes.\n\t\t\tthis.$control().removeClass( '-value -loading -searching' );\n\n\t\t\t// Determine auto state based of current value.\n\t\t\tif ( state === 'default' ) {\n\t\t\t\tstate = this.val() ? 'value' : '';\n\t\t\t}\n\n\t\t\t// Update state class.\n\t\t\tif ( state ) {\n\t\t\t\tthis.$control().addClass( '-' + state );\n\t\t\t}\n\t\t},\n\n\t\tgetValue: function () {\n\t\t\tvar val = this.$input().val();\n\t\t\tif ( val ) {\n\t\t\t\treturn JSON.parse( val );\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t},\n\n\t\tsetValue: function ( val, silent ) {\n\t\t\t// Convert input value.\n\t\t\tvar valAttr = '';\n\t\t\tif ( val ) {\n\t\t\t\tvalAttr = JSON.stringify( val );\n\t\t\t}\n\n\t\t\t// Update input (with change).\n\t\t\tacf.val( this.$input(), valAttr );\n\n\t\t\t// Bail early if silent update.\n\t\t\tif ( silent ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Render.\n\t\t\tthis.renderVal( val );\n\n\t\t\t/**\n\t\t\t * Fires immediately after the value has changed.\n\t\t\t *\n\t\t\t * @date\t12/02/2014\n\t\t\t * @since\t5.0.0\n\t\t\t *\n\t\t\t * @param\tobject|string val The new value.\n\t\t\t * @param\tobject map The Google Map isntance.\n\t\t\t * @param\tobject field The field instance.\n\t\t\t */\n\t\t\tacf.doAction( 'google_map_change', val, this.map, this );\n\t\t},\n\n\t\trenderVal: function ( val ) {\n\t\t\t// Value.\n\t\t\tif ( val ) {\n\t\t\t\tthis.setState( 'value' );\n\t\t\t\tthis.$search().val( val.address );\n\t\t\t\tthis.setPosition( val.lat, val.lng );\n\n\t\t\t\t// No value.\n\t\t\t} else {\n\t\t\t\tthis.setState( '' );\n\t\t\t\tthis.$search().val( '' );\n\t\t\t\tthis.map.marker.setVisible( false );\n\t\t\t}\n\t\t},\n\n\t\tnewLatLng: function ( lat, lng ) {\n\t\t\treturn new google.maps.LatLng(\n\t\t\t\tparseFloat( lat ),\n\t\t\t\tparseFloat( lng )\n\t\t\t);\n\t\t},\n\n\t\tsetPosition: function ( lat, lng ) {\n\t\t\t// Update marker position.\n\t\t\tthis.map.marker.setPosition( {\n\t\t\t\tlat: parseFloat( lat ),\n\t\t\t\tlng: parseFloat( lng ),\n\t\t\t} );\n\n\t\t\t// Show marker.\n\t\t\tthis.map.marker.setVisible( true );\n\n\t\t\t// Center map.\n\t\t\tthis.center();\n\t\t},\n\n\t\tcenter: function () {\n\t\t\t// Find marker position.\n\t\t\tvar position = this.map.marker.getPosition();\n\t\t\tif ( position ) {\n\t\t\t\tvar lat = position.lat();\n\t\t\t\tvar lng = position.lng();\n\n\t\t\t\t// Or find default settings.\n\t\t\t} else {\n\t\t\t\tvar lat = this.get( 'lat' );\n\t\t\t\tvar lng = this.get( 'lng' );\n\t\t\t}\n\n\t\t\t// Center map.\n\t\t\tthis.map.setCenter( {\n\t\t\t\tlat: parseFloat( lat ),\n\t\t\t\tlng: parseFloat( lng ),\n\t\t\t} );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// Ensure Google API is loaded and then initialize map.\n\t\t\twithAPI( this.initializeMap.bind( this ) );\n\t\t},\n\n\t\tinitializeMap: function () {\n\t\t\t// Get value ignoring conditional logic status.\n\t\t\tvar val = this.getValue();\n\n\t\t\t// Construct default args.\n\t\t\tvar args = acf.parseArgs( val, {\n\t\t\t\tzoom: this.get( 'zoom' ),\n\t\t\t\tlat: this.get( 'lat' ),\n\t\t\t\tlng: this.get( 'lng' ),\n\t\t\t} );\n\n\t\t\t// Create Map.\n\t\t\tvar mapArgs = {\n\t\t\t\tscrollwheel: false,\n\t\t\t\tzoom: parseInt( args.zoom ),\n\t\t\t\tcenter: {\n\t\t\t\t\tlat: parseFloat( args.lat ),\n\t\t\t\t\tlng: parseFloat( args.lng ),\n\t\t\t\t},\n\t\t\t\tmapTypeId: google.maps.MapTypeId.ROADMAP,\n\t\t\t\tmarker: {\n\t\t\t\t\tdraggable: true,\n\t\t\t\t\traiseOnDrag: true,\n\t\t\t\t},\n\t\t\t\tautocomplete: {},\n\t\t\t};\n\t\t\tmapArgs = acf.applyFilters( 'google_map_args', mapArgs, this );\n\t\t\tvar map = new google.maps.Map( this.$canvas()[ 0 ], mapArgs );\n\n\t\t\t// Create Marker.\n\t\t\tvar markerArgs = acf.parseArgs( mapArgs.marker, {\n\t\t\t\tdraggable: true,\n\t\t\t\traiseOnDrag: true,\n\t\t\t\tmap: map,\n\t\t\t} );\n\t\t\tmarkerArgs = acf.applyFilters(\n\t\t\t\t'google_map_marker_args',\n\t\t\t\tmarkerArgs,\n\t\t\t\tthis\n\t\t\t);\n\t\t\tvar marker = new google.maps.Marker( markerArgs );\n\n\t\t\t// Maybe Create Autocomplete.\n\t\t\tvar autocomplete = false;\n\t\t\tif ( acf.isset( google, 'maps', 'places', 'Autocomplete' ) ) {\n\t\t\t\tvar autocompleteArgs = mapArgs.autocomplete || {};\n\t\t\t\tautocompleteArgs = acf.applyFilters(\n\t\t\t\t\t'google_map_autocomplete_args',\n\t\t\t\t\tautocompleteArgs,\n\t\t\t\t\tthis\n\t\t\t\t);\n\t\t\t\tautocomplete = new google.maps.places.Autocomplete(\n\t\t\t\t\tthis.$search()[ 0 ],\n\t\t\t\t\tautocompleteArgs\n\t\t\t\t);\n\t\t\t\tautocomplete.bindTo( 'bounds', map );\n\t\t\t}\n\n\t\t\t// Add map events.\n\t\t\tthis.addMapEvents( this, map, marker, autocomplete );\n\n\t\t\t// Append references.\n\t\t\tmap.acf = this;\n\t\t\tmap.marker = marker;\n\t\t\tmap.autocomplete = autocomplete;\n\t\t\tthis.map = map;\n\n\t\t\t// Set position.\n\t\t\tif ( val ) {\n\t\t\t\tthis.setPosition( val.lat, val.lng );\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Fires immediately after the Google Map has been initialized.\n\t\t\t *\n\t\t\t * @date\t12/02/2014\n\t\t\t * @since\t5.0.0\n\t\t\t *\n\t\t\t * @param\tobject map The Google Map isntance.\n\t\t\t * @param\tobject marker The Google Map marker isntance.\n\t\t\t * @param\tobject field The field instance.\n\t\t\t */\n\t\t\tacf.doAction( 'google_map_init', map, marker, this );\n\t\t},\n\n\t\taddMapEvents: function ( field, map, marker, autocomplete ) {\n\t\t\t// Click map.\n\t\t\tgoogle.maps.event.addListener( map, 'click', function ( e ) {\n\t\t\t\tvar lat = e.latLng.lat();\n\t\t\t\tvar lng = e.latLng.lng();\n\t\t\t\tfield.searchPosition( lat, lng );\n\t\t\t} );\n\n\t\t\t// Drag marker.\n\t\t\tgoogle.maps.event.addListener( marker, 'dragend', function () {\n\t\t\t\tvar lat = this.getPosition().lat();\n\t\t\t\tvar lng = this.getPosition().lng();\n\t\t\t\tfield.searchPosition( lat, lng );\n\t\t\t} );\n\n\t\t\t// Autocomplete search.\n\t\t\tif ( autocomplete ) {\n\t\t\t\tgoogle.maps.event.addListener(\n\t\t\t\t\tautocomplete,\n\t\t\t\t\t'place_changed',\n\t\t\t\t\tfunction () {\n\t\t\t\t\t\tvar place = this.getPlace();\n\t\t\t\t\t\tfield.searchPlace( place );\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Detect zoom change.\n\t\t\tgoogle.maps.event.addListener( map, 'zoom_changed', function () {\n\t\t\t\tvar val = field.val();\n\t\t\t\tif ( val ) {\n\t\t\t\t\tval.zoom = map.getZoom();\n\t\t\t\t\tfield.setValue( val, true );\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\n\t\tsearchPosition: function ( lat, lng ) {\n\t\t\t//console.log('searchPosition', lat, lng );\n\n\t\t\t// Start Loading.\n\t\t\tthis.setState( 'loading' );\n\n\t\t\t// Query Geocoder.\n\t\t\tvar latLng = { lat: lat, lng: lng };\n\t\t\tgeocoder.geocode(\n\t\t\t\t{ location: latLng },\n\t\t\t\tfunction ( results, status ) {\n\t\t\t\t\t//console.log('searchPosition', arguments );\n\n\t\t\t\t\t// End Loading.\n\t\t\t\t\tthis.setState( '' );\n\n\t\t\t\t\t// Status failure.\n\t\t\t\t\tif ( status !== 'OK' ) {\n\t\t\t\t\t\tthis.showNotice( {\n\t\t\t\t\t\t\ttext: acf\n\t\t\t\t\t\t\t\t.__( 'Location not found: %s' )\n\t\t\t\t\t\t\t\t.replace( '%s', status ),\n\t\t\t\t\t\t\ttype: 'warning',\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t// Success.\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar val = this.parseResult( results[ 0 ] );\n\n\t\t\t\t\t\t// Override lat/lng to match user defined marker location.\n\t\t\t\t\t\t// Avoids issue where marker \"snaps\" to nearest result.\n\t\t\t\t\t\tval.lat = lat;\n\t\t\t\t\t\tval.lng = lng;\n\t\t\t\t\t\tthis.val( val );\n\t\t\t\t\t}\n\t\t\t\t}.bind( this )\n\t\t\t);\n\t\t},\n\n\t\tsearchPlace: function ( place ) {\n\t\t\t//console.log('searchPlace', place );\n\n\t\t\t// Bail early if no place.\n\t\t\tif ( ! place ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Selecting from the autocomplete dropdown will return a rich PlaceResult object.\n\t\t\t// Be sure to over-write the \"formatted_address\" value with the one displayed to the user for best UX.\n\t\t\tif ( place.geometry ) {\n\t\t\t\tplace.formatted_address = this.$search().val();\n\t\t\t\tvar val = this.parseResult( place );\n\t\t\t\tthis.val( val );\n\n\t\t\t\t// Searching a custom address will return an empty PlaceResult object.\n\t\t\t} else if ( place.name ) {\n\t\t\t\tthis.searchAddress( place.name );\n\t\t\t}\n\t\t},\n\n\t\tsearchAddress: function ( address ) {\n\t\t\t//console.log('searchAddress', address );\n\n\t\t\t// Bail early if no address.\n\t\t\tif ( ! address ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Allow \"lat,lng\" search.\n\t\t\tvar latLng = address.split( ',' );\n\t\t\tif ( latLng.length == 2 ) {\n\t\t\t\tvar lat = parseFloat( latLng[ 0 ] );\n\t\t\t\tvar lng = parseFloat( latLng[ 1 ] );\n\t\t\t\tif ( lat && lng ) {\n\t\t\t\t\treturn this.searchPosition( lat, lng );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Start Loading.\n\t\t\tthis.setState( 'loading' );\n\n\t\t\t// Query Geocoder.\n\t\t\tgeocoder.geocode(\n\t\t\t\t{ address: address },\n\t\t\t\tfunction ( results, status ) {\n\t\t\t\t\t//console.log('searchPosition', arguments );\n\n\t\t\t\t\t// End Loading.\n\t\t\t\t\tthis.setState( '' );\n\n\t\t\t\t\t// Status failure.\n\t\t\t\t\tif ( status !== 'OK' ) {\n\t\t\t\t\t\tthis.showNotice( {\n\t\t\t\t\t\t\ttext: acf\n\t\t\t\t\t\t\t\t.__( 'Location not found: %s' )\n\t\t\t\t\t\t\t\t.replace( '%s', status ),\n\t\t\t\t\t\t\ttype: 'warning',\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t// Success.\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar val = this.parseResult( results[ 0 ] );\n\n\t\t\t\t\t\t// Override address data with parameter allowing custom address to be defined in search.\n\t\t\t\t\t\tval.address = address;\n\n\t\t\t\t\t\t// Update value.\n\t\t\t\t\t\tthis.val( val );\n\t\t\t\t\t}\n\t\t\t\t}.bind( this )\n\t\t\t);\n\t\t},\n\n\t\tsearchLocation: function () {\n\t\t\t//console.log('searchLocation' );\n\n\t\t\t// Check HTML5 geolocation.\n\t\t\tif ( ! navigator.geolocation ) {\n\t\t\t\treturn alert(\n\t\t\t\t\tacf.__( 'Sorry, this browser does not support geolocation' )\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Start Loading.\n\t\t\tthis.setState( 'loading' );\n\n\t\t\t// Query Geolocation.\n\t\t\tnavigator.geolocation.getCurrentPosition(\n\t\t\t\t// Success.\n\t\t\t\tfunction ( results ) {\n\t\t\t\t\t// End Loading.\n\t\t\t\t\tthis.setState( '' );\n\n\t\t\t\t\t// Search position.\n\t\t\t\t\tvar lat = results.coords.latitude;\n\t\t\t\t\tvar lng = results.coords.longitude;\n\t\t\t\t\tthis.searchPosition( lat, lng );\n\t\t\t\t}.bind( this ),\n\n\t\t\t\t// Failure.\n\t\t\t\tfunction ( error ) {\n\t\t\t\t\tthis.setState( '' );\n\t\t\t\t}.bind( this )\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * parseResult\n\t\t *\n\t\t * Returns location data for the given GeocoderResult object.\n\t\t *\n\t\t * @date\t15/10/19\n\t\t * @since\t5.8.6\n\t\t *\n\t\t * @param\tobject obj A GeocoderResult object.\n\t\t * @return\tobject\n\t\t */\n\t\tparseResult: function ( obj ) {\n\t\t\t// Construct basic data.\n\t\t\tvar result = {\n\t\t\t\taddress: obj.formatted_address,\n\t\t\t\tlat: obj.geometry.location.lat(),\n\t\t\t\tlng: obj.geometry.location.lng(),\n\t\t\t};\n\n\t\t\t// Add zoom level.\n\t\t\tresult.zoom = this.map.getZoom();\n\n\t\t\t// Add place ID.\n\t\t\tif ( obj.place_id ) {\n\t\t\t\tresult.place_id = obj.place_id;\n\t\t\t}\n\n\t\t\t// Add place name.\n\t\t\tif ( obj.name ) {\n\t\t\t\tresult.name = obj.name;\n\t\t\t}\n\n\t\t\t// Create search map for address component data.\n\t\t\tvar map = {\n\t\t\t\tstreet_number: [ 'street_number' ],\n\t\t\t\tstreet_name: [ 'street_address', 'route' ],\n\t\t\t\tcity: [ 'locality', 'postal_town' ],\n\t\t\t\tstate: [\n\t\t\t\t\t'administrative_area_level_1',\n\t\t\t\t\t'administrative_area_level_2',\n\t\t\t\t\t'administrative_area_level_3',\n\t\t\t\t\t'administrative_area_level_4',\n\t\t\t\t\t'administrative_area_level_5',\n\t\t\t\t],\n\t\t\t\tpost_code: [ 'postal_code' ],\n\t\t\t\tcountry: [ 'country' ],\n\t\t\t};\n\n\t\t\t// Loop over map.\n\t\t\tfor ( var k in map ) {\n\t\t\t\tvar keywords = map[ k ];\n\n\t\t\t\t// Loop over address components.\n\t\t\t\tfor ( var i = 0; i < obj.address_components.length; i++ ) {\n\t\t\t\t\tvar component = obj.address_components[ i ];\n\t\t\t\t\tvar component_type = component.types[ 0 ];\n\n\t\t\t\t\t// Look for matching component type.\n\t\t\t\t\tif ( keywords.indexOf( component_type ) !== -1 ) {\n\t\t\t\t\t\t// Append to result.\n\t\t\t\t\t\tresult[ k ] = component.long_name;\n\n\t\t\t\t\t\t// Append short version.\n\t\t\t\t\t\tif ( component.long_name !== component.short_name ) {\n\t\t\t\t\t\t\tresult[ k + '_short' ] = component.short_name;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Filters the parsed result.\n\t\t\t *\n\t\t\t * @date\t18/10/19\n\t\t\t * @since\t5.8.6\n\t\t\t *\n\t\t\t * @param\tobject result The parsed result value.\n\t\t\t * @param\tobject obj The GeocoderResult object.\n\t\t\t */\n\t\t\treturn acf.applyFilters(\n\t\t\t\t'google_map_result',\n\t\t\t\tresult,\n\t\t\t\tobj,\n\t\t\t\tthis.map,\n\t\t\t\tthis\n\t\t\t);\n\t\t},\n\n\t\tonClickClear: function () {\n\t\t\tthis.val( false );\n\t\t},\n\n\t\tonClickLocate: function () {\n\t\t\tthis.searchLocation();\n\t\t},\n\n\t\tonClickSearch: function () {\n\t\t\tthis.searchAddress( this.$search().val() );\n\t\t},\n\n\t\tonFocusSearch: function ( e, $el ) {\n\t\t\tthis.setState( 'searching' );\n\t\t},\n\n\t\tonBlurSearch: function ( e, $el ) {\n\t\t\t// Get saved address value.\n\t\t\tvar val = this.val();\n\t\t\tvar address = val ? val.address : '';\n\n\t\t\t// Remove 'is-searching' if value has not changed.\n\t\t\tif ( $el.val() === address ) {\n\t\t\t\tthis.setState( 'default' );\n\t\t\t}\n\t\t},\n\n\t\tonKeyupSearch: function ( e, $el ) {\n\t\t\t// Clear empty value.\n\t\t\tif ( ! $el.val() ) {\n\t\t\t\tthis.val( false );\n\t\t\t}\n\t\t},\n\n\t\t// Prevent form from submitting.\n\t\tonKeydownSearch: function ( e, $el ) {\n\t\t\tif ( e.which == 13 ) {\n\t\t\t\te.preventDefault();\n\t\t\t\t$el.blur();\n\t\t\t}\n\t\t},\n\n\t\t// Center map once made visible.\n\t\tonShow: function () {\n\t\t\tif ( this.map ) {\n\t\t\t\tthis.setTimeout( this.center );\n\t\t\t}\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n\n\t// Vars.\n\tvar loading = false;\n\tvar geocoder = false;\n\n\t/**\n\t * withAPI\n\t *\n\t * Loads the Google Maps API library and troggers callback.\n\t *\n\t * @date\t28/3/19\n\t * @since\t5.7.14\n\t *\n\t * @param\tfunction callback The callback to excecute.\n\t * @return\tvoid\n\t */\n\n\tfunction withAPI( callback ) {\n\t\t// Check if geocoder exists.\n\t\tif ( geocoder ) {\n\t\t\treturn callback();\n\t\t}\n\n\t\t// Check if geocoder API exists.\n\t\tif ( acf.isset( window, 'google', 'maps', 'Geocoder' ) ) {\n\t\t\tgeocoder = new google.maps.Geocoder();\n\t\t\treturn callback();\n\t\t}\n\n\t\t// Geocoder will need to be loaded. Hook callback to action.\n\t\tacf.addAction( 'google_map_api_loaded', callback );\n\n\t\t// Bail early if already loading API.\n\t\tif ( loading ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// load api\n\t\tvar url = acf.get( 'google_map_api' );\n\t\tif ( url ) {\n\t\t\t// Set loading status.\n\t\t\tloading = true;\n\n\t\t\t// Load API\n\t\t\t$.ajax( {\n\t\t\t\turl: url,\n\t\t\t\tdataType: 'script',\n\t\t\t\tcache: true,\n\t\t\t\tsuccess: function () {\n\t\t\t\t\tgeocoder = new google.maps.Geocoder();\n\t\t\t\t\tacf.doAction( 'google_map_api_loaded' );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'image',\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-image-uploader' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input[type=\"hidden\"]' );\n\t\t},\n\n\t\tevents: {\n\t\t\t'click a[data-name=\"add\"]': 'onClickAdd',\n\t\t\t'click a[data-name=\"edit\"]': 'onClickEdit',\n\t\t\t'click a[data-name=\"remove\"]': 'onClickRemove',\n\t\t\t'change input[type=\"file\"]': 'onChange',\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// add attribute to form\n\t\t\tif ( this.get( 'uploader' ) === 'basic' ) {\n\t\t\t\tthis.$el\n\t\t\t\t\t.closest( 'form' )\n\t\t\t\t\t.attr( 'enctype', 'multipart/form-data' );\n\t\t\t}\n\t\t},\n\n\t\tvalidateAttachment: function ( attachment ) {\n\t\t\t// Use WP attachment attributes when available.\n\t\t\tif ( attachment && attachment.attributes ) {\n\t\t\t\tattachment = attachment.attributes;\n\t\t\t}\n\n\t\t\t// Apply defaults.\n\t\t\tattachment = acf.parseArgs( attachment, {\n\t\t\t\tid: 0,\n\t\t\t\turl: '',\n\t\t\t\talt: '',\n\t\t\t\ttitle: '',\n\t\t\t\tcaption: '',\n\t\t\t\tdescription: '',\n\t\t\t\twidth: 0,\n\t\t\t\theight: 0,\n\t\t\t} );\n\n\t\t\t// Override with \"preview size\".\n\t\t\tvar size = acf.isget(\n\t\t\t\tattachment,\n\t\t\t\t'sizes',\n\t\t\t\tthis.get( 'preview_size' )\n\t\t\t);\n\t\t\tif ( size ) {\n\t\t\t\tattachment.url = size.url;\n\t\t\t\tattachment.width = size.width;\n\t\t\t\tattachment.height = size.height;\n\t\t\t}\n\n\t\t\t// Return.\n\t\t\treturn attachment;\n\t\t},\n\n\t\trender: function ( attachment ) {\n\t\t\tattachment = this.validateAttachment( attachment );\n\n\t\t\t// Update DOM.\n\t\t\tthis.$( 'img' ).attr( {\n\t\t\t\tsrc: attachment.url,\n\t\t\t\talt: attachment.alt,\n\t\t\t} );\n\t\t\tif ( attachment.id ) {\n\t\t\t\tthis.val( attachment.id );\n\t\t\t\tthis.$control().addClass( 'has-value' );\n\t\t\t} else {\n\t\t\t\tthis.val( '' );\n\t\t\t\tthis.$control().removeClass( 'has-value' );\n\t\t\t}\n\t\t},\n\n\t\t// create a new repeater row and render value\n\t\tappend: function ( attachment, parent ) {\n\t\t\t// create function to find next available field within parent\n\t\t\tvar getNext = function ( field, parent ) {\n\t\t\t\t// find existing file fields within parent\n\t\t\t\tvar fields = acf.getFields( {\n\t\t\t\t\tkey: field.get( 'key' ),\n\t\t\t\t\tparent: parent.$el,\n\t\t\t\t} );\n\n\t\t\t\t// find the first field with no value\n\t\t\t\tfor ( var i = 0; i < fields.length; i++ ) {\n\t\t\t\t\tif ( ! fields[ i ].val() ) {\n\t\t\t\t\t\treturn fields[ i ];\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// return\n\t\t\t\treturn false;\n\t\t\t};\n\n\t\t\t// find existing file fields within parent\n\t\t\tvar field = getNext( this, parent );\n\n\t\t\t// add new row if no available field\n\t\t\tif ( ! field ) {\n\t\t\t\tparent.$( '.acf-button:last' ).trigger( 'click' );\n\t\t\t\tfield = getNext( this, parent );\n\t\t\t}\n\n\t\t\t// render\n\t\t\tif ( field ) {\n\t\t\t\tfield.render( attachment );\n\t\t\t}\n\t\t},\n\n\t\tselectAttachment: function () {\n\t\t\t// vars\n\t\t\tvar parent = this.parent();\n\t\t\tvar multiple = parent && parent.get( 'type' ) === 'repeater';\n\n\t\t\t// new frame\n\t\t\tvar frame = acf.newMediaPopup( {\n\t\t\t\tmode: 'select',\n\t\t\t\ttype: 'image',\n\t\t\t\ttitle: acf.__( 'Select Image' ),\n\t\t\t\tfield: this.get( 'key' ),\n\t\t\t\tmultiple: multiple,\n\t\t\t\tlibrary: this.get( 'library' ),\n\t\t\t\tallowedTypes: this.get( 'mime_types' ),\n\t\t\t\tselect: $.proxy( function ( attachment, i ) {\n\t\t\t\t\tif ( i > 0 ) {\n\t\t\t\t\t\tthis.append( attachment, parent );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.render( attachment );\n\t\t\t\t\t}\n\t\t\t\t}, this ),\n\t\t\t} );\n\t\t},\n\n\t\teditAttachment: function () {\n\t\t\t// vars\n\t\t\tvar val = this.val();\n\n\t\t\t// bail early if no val\n\t\t\tif ( ! val ) return;\n\n\t\t\t// popup\n\t\t\tvar frame = acf.newMediaPopup( {\n\t\t\t\tmode: 'edit',\n\t\t\t\ttitle: acf.__( 'Edit Image' ),\n\t\t\t\tbutton: acf.__( 'Update Image' ),\n\t\t\t\tattachment: val,\n\t\t\t\tfield: this.get( 'key' ),\n\t\t\t\tselect: $.proxy( function ( attachment, i ) {\n\t\t\t\t\tthis.render( attachment );\n\t\t\t\t}, this ),\n\t\t\t} );\n\t\t},\n\n\t\tremoveAttachment: function () {\n\t\t\tthis.render( false );\n\t\t},\n\n\t\tonClickAdd: function ( e, $el ) {\n\t\t\tthis.selectAttachment();\n\t\t},\n\n\t\tonClickEdit: function ( e, $el ) {\n\t\t\tthis.editAttachment();\n\t\t},\n\n\t\tonClickRemove: function ( e, $el ) {\n\t\t\tthis.removeAttachment();\n\t\t},\n\n\t\tonChange: function ( e, $el ) {\n\t\t\tvar $hiddenInput = this.$input();\n\n\t\t\tif ( ! $el.val() ) {\n\t\t\t\t$hiddenInput.val( '' );\n\t\t\t}\n\n\t\t\tacf.getFileInputData( $el, function ( data ) {\n\t\t\t\t$hiddenInput.val( $.param( data ) );\n\t\t\t} );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'link',\n\n\t\tevents: {\n\t\t\t'click a[data-name=\"add\"]': 'onClickEdit',\n\t\t\t'click a[data-name=\"edit\"]': 'onClickEdit',\n\t\t\t'click a[data-name=\"remove\"]': 'onClickRemove',\n\t\t\t'change .link-node': 'onChange',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-link' );\n\t\t},\n\n\t\t$node: function () {\n\t\t\treturn this.$( '.link-node' );\n\t\t},\n\n\t\tgetValue: function () {\n\t\t\t// vars\n\t\t\tvar $node = this.$node();\n\n\t\t\t// return false if empty\n\t\t\tif ( ! $node.attr( 'href' ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn {\n\t\t\t\ttitle: $node.html(),\n\t\t\t\turl: $node.attr( 'href' ),\n\t\t\t\ttarget: $node.attr( 'target' ),\n\t\t\t};\n\t\t},\n\n\t\tsetValue: function ( val ) {\n\t\t\t// default\n\t\t\tval = acf.parseArgs( val, {\n\t\t\t\ttitle: '',\n\t\t\t\turl: '',\n\t\t\t\ttarget: '',\n\t\t\t} );\n\n\t\t\t// vars\n\t\t\tvar $div = this.$control();\n\t\t\tvar $node = this.$node();\n\n\t\t\t// remove class\n\t\t\t$div.removeClass( '-value -external' );\n\n\t\t\t// add class\n\t\t\tif ( val.url ) $div.addClass( '-value' );\n\t\t\tif ( val.target === '_blank' ) $div.addClass( '-external' );\n\n\t\t\t// update text\n\t\t\tthis.$( '.link-title' ).html( val.title );\n\t\t\tthis.$( '.link-url' ).attr( 'href', val.url ).html( val.url );\n\n\t\t\t// update node\n\t\t\t$node.html( val.title );\n\t\t\t$node.attr( 'href', val.url );\n\t\t\t$node.attr( 'target', val.target );\n\n\t\t\t// update inputs\n\t\t\tthis.$( '.input-title' ).val( val.title );\n\t\t\tthis.$( '.input-target' ).val( val.target );\n\t\t\tthis.$( '.input-url' ).val( val.url ).trigger( 'change' );\n\t\t},\n\n\t\tonClickEdit: function ( e, $el ) {\n\t\t\tacf.wpLink.open( this.$node() );\n\t\t},\n\n\t\tonClickRemove: function ( e, $el ) {\n\t\t\tthis.setValue( false );\n\t\t},\n\n\t\tonChange: function ( e, $el ) {\n\t\t\t// get the changed value\n\t\t\tvar val = this.getValue();\n\n\t\t\t// update inputs\n\t\t\tthis.setValue( val );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n\n\t// manager\n\tacf.wpLink = new acf.Model( {\n\t\tgetNodeValue: function () {\n\t\t\tvar $node = this.get( 'node' );\n\t\t\treturn {\n\t\t\t\ttitle: acf.decode( $node.html() ),\n\t\t\t\turl: $node.attr( 'href' ),\n\t\t\t\ttarget: $node.attr( 'target' ),\n\t\t\t};\n\t\t},\n\n\t\tsetNodeValue: function ( val ) {\n\t\t\tvar $node = this.get( 'node' );\n\t\t\t$node.text( val.title );\n\t\t\t$node.attr( 'href', val.url );\n\t\t\t$node.attr( 'target', val.target );\n\t\t\t$node.trigger( 'change' );\n\t\t},\n\n\t\tgetInputValue: function () {\n\t\t\treturn {\n\t\t\t\ttitle: $( '#wp-link-text' ).val(),\n\t\t\t\turl: $( '#wp-link-url' ).val(),\n\t\t\t\ttarget: $( '#wp-link-target' ).prop( 'checked' )\n\t\t\t\t\t? '_blank'\n\t\t\t\t\t: '',\n\t\t\t};\n\t\t},\n\n\t\tsetInputValue: function ( val ) {\n\t\t\t$( '#wp-link-text' ).val( val.title );\n\t\t\t$( '#wp-link-url' ).val( val.url );\n\t\t\t$( '#wp-link-target' ).prop( 'checked', val.target === '_blank' );\n\t\t},\n\n\t\topen: function ( $node ) {\n\t\t\t// add events\n\t\t\tthis.on( 'wplink-open', 'onOpen' );\n\t\t\tthis.on( 'wplink-close', 'onClose' );\n\n\t\t\t// set node\n\t\t\tthis.set( 'node', $node );\n\n\t\t\t// create textarea\n\t\t\tvar $textarea = $(\n\t\t\t\t''\n\t\t\t);\n\t\t\t$( 'body' ).append( $textarea );\n\n\t\t\t// vars\n\t\t\tvar val = this.getNodeValue();\n\n\t\t\t// open popup\n\t\t\twpLink.open( 'acf-link-textarea', val.url, val.title, null );\n\t\t},\n\n\t\tonOpen: function () {\n\t\t\t// always show title (WP will hide title if empty)\n\t\t\t$( '#wp-link-wrap' ).addClass( 'has-text-field' );\n\n\t\t\t// set inputs\n\t\t\tvar val = this.getNodeValue();\n\t\t\tthis.setInputValue( val );\n\n\t\t\t// Update button text.\n\t\t\tif ( val.url && wpLinkL10n ) {\n\t\t\t\t$( '#wp-link-submit' ).val( wpLinkL10n.update );\n\t\t\t}\n\t\t},\n\n\t\tclose: function () {\n\t\t\twpLink.close();\n\t\t},\n\n\t\tonClose: function () {\n\t\t\t// Bail early if no node.\n\t\t\t// Needed due to WP triggering this event twice.\n\t\t\tif ( ! this.has( 'node' ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// Determine context.\n\t\t\tvar $submit = $( '#wp-link-submit' );\n\t\t\tvar isSubmit = $submit.is( ':hover' ) || $submit.is( ':focus' );\n\n\t\t\t// Set value\n\t\t\tif ( isSubmit ) {\n\t\t\t\tvar val = this.getInputValue();\n\t\t\t\tthis.setNodeValue( val );\n\t\t\t}\n\n\t\t\t// Cleanup.\n\t\t\tthis.off( 'wplink-open' );\n\t\t\tthis.off( 'wplink-close' );\n\t\t\t$( '#acf-link-textarea' ).remove();\n\t\t\tthis.set( 'node', null );\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'oembed',\n\n\t\tevents: {\n\t\t\t'click [data-name=\"clear-button\"]': 'onClickClear',\n\t\t\t'keypress .input-search': 'onKeypressSearch',\n\t\t\t'keyup .input-search': 'onKeyupSearch',\n\t\t\t'change .input-search': 'onChangeSearch',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-oembed' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( '.input-value' );\n\t\t},\n\n\t\t$search: function () {\n\t\t\treturn this.$( '.input-search' );\n\t\t},\n\n\t\tgetValue: function () {\n\t\t\treturn this.$input().val();\n\t\t},\n\n\t\tgetSearchVal: function () {\n\t\t\treturn this.$search().val();\n\t\t},\n\n\t\tsetValue: function ( val ) {\n\t\t\t// class\n\t\t\tif ( val ) {\n\t\t\t\tthis.$control().addClass( 'has-value' );\n\t\t\t} else {\n\t\t\t\tthis.$control().removeClass( 'has-value' );\n\t\t\t}\n\n\t\t\tacf.val( this.$input(), val );\n\t\t},\n\n\t\tshowLoading: function ( show ) {\n\t\t\tacf.showLoading( this.$( '.canvas' ) );\n\t\t},\n\n\t\thideLoading: function () {\n\t\t\tacf.hideLoading( this.$( '.canvas' ) );\n\t\t},\n\n\t\tmaybeSearch: function () {\n\t\t\t// vars\n\t\t\tvar prevUrl = this.val();\n\t\t\tvar url = this.getSearchVal();\n\n\t\t\t// no value\n\t\t\tif ( ! url ) {\n\t\t\t\treturn this.clear();\n\t\t\t}\n\n\t\t\t// fix missing 'http://' - causes the oembed code to error and fail\n\t\t\tif ( url.substr( 0, 4 ) != 'http' ) {\n\t\t\t\turl = 'http://' + url;\n\t\t\t}\n\n\t\t\t// bail early if no change\n\t\t\tif ( url === prevUrl ) return;\n\n\t\t\t// clear existing timeout\n\t\t\tvar timeout = this.get( 'timeout' );\n\t\t\tif ( timeout ) {\n\t\t\t\tclearTimeout( timeout );\n\t\t\t}\n\n\t\t\t// set new timeout\n\t\t\tvar callback = $.proxy( this.search, this, url );\n\t\t\tthis.set( 'timeout', setTimeout( callback, 300 ) );\n\t\t},\n\n\t\tsearch: function ( url ) {\n\t\t\t// ajax\n\t\t\tvar ajaxData = {\n\t\t\t\taction: 'acf/fields/oembed/search',\n\t\t\t\ts: url,\n\t\t\t\tfield_key: this.get( 'key' ),\n\t\t\t};\n\n\t\t\t// clear existing timeout\n\t\t\tvar xhr = this.get( 'xhr' );\n\t\t\tif ( xhr ) {\n\t\t\t\txhr.abort();\n\t\t\t}\n\n\t\t\t// loading\n\t\t\tthis.showLoading();\n\n\t\t\t// query\n\t\t\tvar xhr = $.ajax( {\n\t\t\t\turl: acf.get( 'ajaxurl' ),\n\t\t\t\tdata: acf.prepareForAjax( ajaxData ),\n\t\t\t\ttype: 'post',\n\t\t\t\tdataType: 'json',\n\t\t\t\tcontext: this,\n\t\t\t\tsuccess: function ( json ) {\n\t\t\t\t\t// error\n\t\t\t\t\tif ( ! json || ! json.html ) {\n\t\t\t\t\t\tjson = {\n\t\t\t\t\t\t\turl: false,\n\t\t\t\t\t\t\thtml: '',\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\t// update vars\n\t\t\t\t\tthis.val( json.url );\n\t\t\t\t\tthis.$( '.canvas-media' ).html( json.html );\n\t\t\t\t},\n\t\t\t\tcomplete: function () {\n\t\t\t\t\tthis.hideLoading();\n\t\t\t\t},\n\t\t\t} );\n\n\t\t\tthis.set( 'xhr', xhr );\n\t\t},\n\n\t\tclear: function () {\n\t\t\tthis.val( '' );\n\t\t\tthis.$search().val( '' );\n\t\t\tthis.$( '.canvas-media' ).html( '' );\n\t\t},\n\n\t\tonClickClear: function ( e, $el ) {\n\t\t\tthis.clear();\n\t\t},\n\n\t\tonKeypressSearch: function ( e, $el ) {\n\t\t\tif ( e.which == 13 ) {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.maybeSearch();\n\t\t\t}\n\t\t},\n\n\t\tonKeyupSearch: function ( e, $el ) {\n\t\t\tif ( $el.val() ) {\n\t\t\t\tthis.maybeSearch();\n\t\t\t}\n\t\t},\n\n\t\tonChangeSearch: function ( e, $el ) {\n\t\t\tthis.maybeSearch();\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.models.SelectField.extend( {\n\t\ttype: 'page_link',\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.models.SelectField.extend( {\n\t\ttype: 'post_object',\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'radio',\n\n\t\tevents: {\n\t\t\t'click input[type=\"radio\"]': 'onClick',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-radio-list' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input:checked' );\n\t\t},\n\n\t\t$inputText: function () {\n\t\t\treturn this.$( 'input[type=\"text\"]' );\n\t\t},\n\n\t\tgetValue: function () {\n\t\t\tvar val = this.$input().val();\n\t\t\tif ( val === 'other' && this.get( 'other_choice' ) ) {\n\t\t\t\tval = this.$inputText().val();\n\t\t\t}\n\t\t\treturn val;\n\t\t},\n\n\t\tonClick: function ( e, $el ) {\n\t\t\t// vars\n\t\t\tvar $label = $el.parent( 'label' );\n\t\t\tvar selected = $label.hasClass( 'selected' );\n\t\t\tvar val = $el.val();\n\n\t\t\t// remove previous selected\n\t\t\tthis.$( '.selected' ).removeClass( 'selected' );\n\n\t\t\t// add active class\n\t\t\t$label.addClass( 'selected' );\n\n\t\t\t// allow null\n\t\t\tif ( this.get( 'allow_null' ) && selected ) {\n\t\t\t\t$label.removeClass( 'selected' );\n\t\t\t\t$el.prop( 'checked', false ).trigger( 'change' );\n\t\t\t\tval = false;\n\t\t\t}\n\n\t\t\t// other\n\t\t\tif ( this.get( 'other_choice' ) ) {\n\t\t\t\t// enable\n\t\t\t\tif ( val === 'other' ) {\n\t\t\t\t\tthis.$inputText().prop( 'disabled', false );\n\n\t\t\t\t\t// disable\n\t\t\t\t} else {\n\t\t\t\t\tthis.$inputText().prop( 'disabled', true );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'range',\n\n\t\tevents: {\n\t\t\t'input input[type=\"range\"]': 'onChange',\n\t\t\t'change input': 'onChange',\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input[type=\"range\"]' );\n\t\t},\n\n\t\t$inputAlt: function () {\n\t\t\treturn this.$( 'input[type=\"number\"]' );\n\t\t},\n\n\t\tsetValue: function ( val ) {\n\t\t\tthis.busy = true;\n\n\t\t\t// Update range input (with change).\n\t\t\tacf.val( this.$input(), val );\n\n\t\t\t// Update alt input (without change).\n\t\t\t// Read in input value to inherit min/max validation.\n\t\t\tacf.val( this.$inputAlt(), this.$input().val(), true );\n\n\t\t\tthis.busy = false;\n\t\t},\n\n\t\tonChange: function ( e, $el ) {\n\t\t\tif ( ! this.busy ) {\n\t\t\t\tthis.setValue( $el.val() );\n\t\t\t}\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'relationship',\n\n\t\tevents: {\n\t\t\t'keypress [data-filter]': 'onKeypressFilter',\n\t\t\t'change [data-filter]': 'onChangeFilter',\n\t\t\t'keyup [data-filter]': 'onChangeFilter',\n\t\t\t'click .choices-list .acf-rel-item': 'onClickAdd',\n\t\t\t'click [data-name=\"remove_item\"]': 'onClickRemove',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-relationship' );\n\t\t},\n\n\t\t$list: function ( list ) {\n\t\t\treturn this.$( '.' + list + '-list' );\n\t\t},\n\n\t\t$listItems: function ( list ) {\n\t\t\treturn this.$list( list ).find( '.acf-rel-item' );\n\t\t},\n\n\t\t$listItem: function ( list, id ) {\n\t\t\treturn this.$list( list ).find(\n\t\t\t\t'.acf-rel-item[data-id=\"' + id + '\"]'\n\t\t\t);\n\t\t},\n\n\t\tgetValue: function () {\n\t\t\tvar val = [];\n\t\t\tthis.$listItems( 'values' ).each( function () {\n\t\t\t\tval.push( $( this ).data( 'id' ) );\n\t\t\t} );\n\t\t\treturn val.length ? val : false;\n\t\t},\n\n\t\tnewChoice: function ( props ) {\n\t\t\treturn [\n\t\t\t\t'
  • ',\n\t\t\t\t'' +\n\t\t\t\t\tprops.text +\n\t\t\t\t\t'',\n\t\t\t\t'
  • ',\n\t\t\t].join( '' );\n\t\t},\n\n\t\tnewValue: function ( props ) {\n\t\t\treturn [\n\t\t\t\t'
  • ',\n\t\t\t\t'',\n\t\t\t\t'' +\n\t\t\t\t\tprops.text,\n\t\t\t\t'',\n\t\t\t\t'',\n\t\t\t\t'
  • ',\n\t\t\t].join( '' );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// Delay initialization until \"interacted with\" or \"in view\".\n\t\t\tvar delayed = this.proxy(\n\t\t\t\tacf.once( function () {\n\t\t\t\t\t// Add sortable.\n\t\t\t\t\tthis.$list( 'values' ).sortable( {\n\t\t\t\t\t\titems: 'li',\n\t\t\t\t\t\tforceHelperSize: true,\n\t\t\t\t\t\tforcePlaceholderSize: true,\n\t\t\t\t\t\tscroll: true,\n\t\t\t\t\t\tupdate: this.proxy( function () {\n\t\t\t\t\t\t\tthis.$input().trigger( 'change' );\n\t\t\t\t\t\t} ),\n\t\t\t\t\t} );\n\n\t\t\t\t\t// Avoid browser remembering old scroll position and add event.\n\t\t\t\t\tthis.$list( 'choices' )\n\t\t\t\t\t\t.scrollTop( 0 )\n\t\t\t\t\t\t.on( 'scroll', this.proxy( this.onScrollChoices ) );\n\n\t\t\t\t\t// Fetch choices.\n\t\t\t\t\tthis.fetch();\n\t\t\t\t} )\n\t\t\t);\n\n\t\t\t// Bind \"interacted with\".\n\t\t\tthis.$el.one( 'mouseover', delayed );\n\t\t\tthis.$el.one( 'focus', 'input', delayed );\n\n\t\t\t// Bind \"in view\".\n\t\t\tacf.onceInView( this.$el, delayed );\n\t\t},\n\n\t\tonScrollChoices: function ( e ) {\n\t\t\t// bail early if no more results\n\t\t\tif ( this.get( 'loading' ) || ! this.get( 'more' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Scrolled to bottom\n\t\t\tvar $list = this.$list( 'choices' );\n\t\t\tvar scrollTop = Math.ceil( $list.scrollTop() );\n\t\t\tvar scrollHeight = Math.ceil( $list[ 0 ].scrollHeight );\n\t\t\tvar innerHeight = Math.ceil( $list.innerHeight() );\n\t\t\tvar paged = this.get( 'paged' ) || 1;\n\t\t\tif ( scrollTop + innerHeight >= scrollHeight ) {\n\t\t\t\t// update paged\n\t\t\t\tthis.set( 'paged', paged + 1 );\n\n\t\t\t\t// fetch\n\t\t\t\tthis.fetch();\n\t\t\t}\n\t\t},\n\n\t\tonKeypressFilter: function ( e, $el ) {\n\t\t\t// don't submit form\n\t\t\tif ( e.which == 13 ) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t},\n\n\t\tonChangeFilter: function ( e, $el ) {\n\t\t\t// vars\n\t\t\tvar val = $el.val();\n\t\t\tvar filter = $el.data( 'filter' );\n\n\t\t\t// Bail early if filter has not changed\n\t\t\tif ( this.get( filter ) === val ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// update attr\n\t\t\tthis.set( filter, val );\n\n\t\t\t// reset paged\n\t\t\tthis.set( 'paged', 1 );\n\n\t\t\t// fetch\n\t\t\tif ( $el.is( 'select' ) ) {\n\t\t\t\tthis.fetch();\n\n\t\t\t\t// search must go through timeout\n\t\t\t} else {\n\t\t\t\tthis.maybeFetch();\n\t\t\t}\n\t\t},\n\n\t\tonClickAdd: function ( e, $el ) {\n\t\t\t// vars\n\t\t\tvar val = this.val();\n\t\t\tvar max = parseInt( this.get( 'max' ) );\n\n\t\t\t// can be added?\n\t\t\tif ( $el.hasClass( 'disabled' ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// validate\n\t\t\tif ( max > 0 && val && val.length >= max ) {\n\t\t\t\t// add notice\n\t\t\t\tthis.showNotice( {\n\t\t\t\t\ttext: acf\n\t\t\t\t\t\t.__( 'Maximum values reached ( {max} values )' )\n\t\t\t\t\t\t.replace( '{max}', max ),\n\t\t\t\t\ttype: 'warning',\n\t\t\t\t} );\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// disable\n\t\t\t$el.addClass( 'disabled' );\n\n\t\t\t// add\n\t\t\tvar html = this.newValue( {\n\t\t\t\tid: $el.data( 'id' ),\n\t\t\t\ttext: $el.html(),\n\t\t\t} );\n\t\t\tthis.$list( 'values' ).append( html );\n\n\t\t\t// trigger change\n\t\t\tthis.$input().trigger( 'change' );\n\t\t},\n\n\t\tonClickRemove: function ( e, $el ) {\n\t\t\t// Prevent default here because generic handler wont be triggered.\n\t\t\te.preventDefault();\n\n\t\t\t// vars\n\t\t\tvar $span = $el.parent();\n\t\t\tvar $li = $span.parent();\n\t\t\tvar id = $span.data( 'id' );\n\n\t\t\t// remove value\n\t\t\t$li.remove();\n\n\t\t\t// show choice\n\t\t\tthis.$listItem( 'choices', id ).removeClass( 'disabled' );\n\n\t\t\t// trigger change\n\t\t\tthis.$input().trigger( 'change' );\n\t\t},\n\n\t\tmaybeFetch: function () {\n\t\t\t// vars\n\t\t\tvar timeout = this.get( 'timeout' );\n\n\t\t\t// abort timeout\n\t\t\tif ( timeout ) {\n\t\t\t\tclearTimeout( timeout );\n\t\t\t}\n\n\t\t\t// fetch\n\t\t\ttimeout = this.setTimeout( this.fetch, 300 );\n\t\t\tthis.set( 'timeout', timeout );\n\t\t},\n\n\t\tgetAjaxData: function () {\n\t\t\t// load data based on element attributes\n\t\t\tvar ajaxData = this.$control().data();\n\t\t\tfor ( var name in ajaxData ) {\n\t\t\t\tajaxData[ name ] = this.get( name );\n\t\t\t}\n\n\t\t\t// extra\n\t\t\tajaxData.action = 'acf/fields/relationship/query';\n\t\t\tajaxData.field_key = this.get( 'key' );\n\n\t\t\t// Filter.\n\t\t\tajaxData = acf.applyFilters(\n\t\t\t\t'relationship_ajax_data',\n\t\t\t\tajaxData,\n\t\t\t\tthis\n\t\t\t);\n\n\t\t\t// return\n\t\t\treturn ajaxData;\n\t\t},\n\n\t\tfetch: function () {\n\t\t\t// abort XHR if this field is already loading AJAX data\n\t\t\tvar xhr = this.get( 'xhr' );\n\t\t\tif ( xhr ) {\n\t\t\t\txhr.abort();\n\t\t\t}\n\n\t\t\t// add to this.o\n\t\t\tvar ajaxData = this.getAjaxData();\n\n\t\t\t// clear html if is new query\n\t\t\tvar $choiceslist = this.$list( 'choices' );\n\t\t\tif ( ajaxData.paged == 1 ) {\n\t\t\t\t$choiceslist.html( '' );\n\t\t\t}\n\n\t\t\t// loading\n\t\t\tvar $loading = $(\n\t\t\t\t'
  • ' +\n\t\t\t\t\tacf.__( 'Loading' ) +\n\t\t\t\t\t'
  • '\n\t\t\t);\n\t\t\t$choiceslist.append( $loading );\n\t\t\tthis.set( 'loading', true );\n\n\t\t\t// callback\n\t\t\tvar onComplete = function () {\n\t\t\t\tthis.set( 'loading', false );\n\t\t\t\t$loading.remove();\n\t\t\t};\n\n\t\t\tvar onSuccess = function ( json ) {\n\t\t\t\t// no results\n\t\t\t\tif ( ! json || ! json.results || ! json.results.length ) {\n\t\t\t\t\t// prevent pagination\n\t\t\t\t\tthis.set( 'more', false );\n\n\t\t\t\t\t// add message\n\t\t\t\t\tif ( this.get( 'paged' ) == 1 ) {\n\t\t\t\t\t\tthis.$list( 'choices' ).append(\n\t\t\t\t\t\t\t'
  • ' + acf.__( 'No matches found' ) + '
  • '\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// return\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// set more (allows pagination scroll)\n\t\t\t\tthis.set( 'more', json.more );\n\n\t\t\t\t// get new results\n\t\t\t\tvar html = this.walkChoices( json.results );\n\t\t\t\tvar $html = $( html );\n\n\t\t\t\t// apply .disabled to left li's\n\t\t\t\tvar val = this.val();\n\t\t\t\tif ( val && val.length ) {\n\t\t\t\t\tval.map( function ( id ) {\n\t\t\t\t\t\t$html\n\t\t\t\t\t\t\t.find( '.acf-rel-item[data-id=\"' + id + '\"]' )\n\t\t\t\t\t\t\t.addClass( 'disabled' );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t// append\n\t\t\t\t$choiceslist.append( $html );\n\n\t\t\t\t// merge together groups\n\t\t\t\tvar $prevLabel = false;\n\t\t\t\tvar $prevList = false;\n\n\t\t\t\t$choiceslist.find( '.acf-rel-label' ).each( function () {\n\t\t\t\t\tvar $label = $( this );\n\t\t\t\t\tvar $list = $label.siblings( 'ul' );\n\n\t\t\t\t\tif ( $prevLabel && $prevLabel.text() == $label.text() ) {\n\t\t\t\t\t\t$prevList.append( $list.children() );\n\t\t\t\t\t\t$( this ).parent().remove();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// update vars\n\t\t\t\t\t$prevLabel = $label;\n\t\t\t\t\t$prevList = $list;\n\t\t\t\t} );\n\t\t\t};\n\n\t\t\t// get results\n\t\t\tvar xhr = $.ajax( {\n\t\t\t\turl: acf.get( 'ajaxurl' ),\n\t\t\t\tdataType: 'json',\n\t\t\t\ttype: 'post',\n\t\t\t\tdata: acf.prepareForAjax( ajaxData ),\n\t\t\t\tcontext: this,\n\t\t\t\tsuccess: onSuccess,\n\t\t\t\tcomplete: onComplete,\n\t\t\t} );\n\n\t\t\t// set\n\t\t\tthis.set( 'xhr', xhr );\n\t\t},\n\n\t\twalkChoices: function ( data ) {\n\t\t\t// walker\n\t\t\tvar walk = function ( data ) {\n\t\t\t\t// vars\n\t\t\t\tvar html = '';\n\n\t\t\t\t// is array\n\t\t\t\tif ( $.isArray( data ) ) {\n\t\t\t\t\tdata.map( function ( item ) {\n\t\t\t\t\t\thtml += walk( item );\n\t\t\t\t\t} );\n\n\t\t\t\t\t// is item\n\t\t\t\t} else if ( $.isPlainObject( data ) ) {\n\t\t\t\t\t// group\n\t\t\t\t\tif ( data.children !== undefined ) {\n\t\t\t\t\t\thtml +=\n\t\t\t\t\t\t\t'
  • ' +\n\t\t\t\t\t\t\tacf.escHtml( data.text ) +\n\t\t\t\t\t\t\t'
      ';\n\t\t\t\t\t\thtml += walk( data.children );\n\t\t\t\t\t\thtml += '
  • ';\n\n\t\t\t\t\t\t// single\n\t\t\t\t\t} else {\n\t\t\t\t\t\thtml +=\n\t\t\t\t\t\t\t'
  • ' +\n\t\t\t\t\t\t\tacf.escHtml( data.text ) +\n\t\t\t\t\t\t\t'
  • ';\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// return\n\t\t\t\treturn html;\n\t\t\t};\n\n\t\t\treturn walk( data );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'select',\n\n\t\tselect2: false,\n\n\t\twait: 'load',\n\n\t\tevents: {\n\t\t\tremoveField: 'onRemove',\n\t\t\tduplicateField: 'onDuplicate',\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'select' );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar $select = this.$input();\n\n\t\t\t// inherit data\n\t\t\tthis.inherit( $select );\n\n\t\t\t// select2\n\t\t\tif ( this.get( 'ui' ) ) {\n\t\t\t\t// populate ajax_data (allowing custom attribute to already exist)\n\t\t\t\tvar ajaxAction = this.get( 'ajax_action' );\n\t\t\t\tif ( ! ajaxAction ) {\n\t\t\t\t\tajaxAction = 'acf/fields/' + this.get( 'type' ) + '/query';\n\t\t\t\t}\n\n\t\t\t\t// select2\n\t\t\t\tthis.select2 = acf.newSelect2( $select, {\n\t\t\t\t\tfield: this,\n\t\t\t\t\tajax: this.get( 'ajax' ),\n\t\t\t\t\tmultiple: this.get( 'multiple' ),\n\t\t\t\t\tplaceholder: this.get( 'placeholder' ),\n\t\t\t\t\tallowNull: this.get( 'allow_null' ),\n\t\t\t\t\tajaxAction: ajaxAction,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\n\t\tonRemove: function () {\n\t\t\tif ( this.select2 ) {\n\t\t\t\tthis.select2.destroy();\n\t\t\t}\n\t\t},\n\n\t\tonDuplicate: function ( e, $el, $duplicate ) {\n\t\t\tif ( this.select2 ) {\n\t\t\t\t$duplicate.find( '.select2-container' ).remove();\n\t\t\t\t$duplicate\n\t\t\t\t\t.find( 'select' )\n\t\t\t\t\t.removeClass( 'select2-hidden-accessible' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\t// vars\n\tvar CONTEXT = 'tab';\n\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'tab',\n\n\t\twait: '',\n\n\t\ttabs: false,\n\n\t\ttab: false,\n\n\t\tevents: {\n\t\t\tduplicateField: 'onDuplicate',\n\t\t},\n\n\t\tfindFields: function () {\n\t\t\treturn this.$el.nextUntil( '.acf-field-tab', '.acf-field' );\n\t\t},\n\n\t\tgetFields: function () {\n\t\t\treturn acf.getFields( this.findFields() );\n\t\t},\n\n\t\tfindTabs: function () {\n\t\t\treturn this.$el.prevAll( '.acf-tab-wrap:first' );\n\t\t},\n\n\t\tfindTab: function () {\n\t\t\treturn this.$( '.acf-tab-button' );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// bail early if is td\n\t\t\tif ( this.$el.is( 'td' ) ) {\n\t\t\t\tthis.events = {};\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar $tabs = this.findTabs();\n\t\t\tvar $tab = this.findTab();\n\t\t\tvar settings = acf.parseArgs( $tab.data(), {\n\t\t\t\tendpoint: false,\n\t\t\t\tplacement: '',\n\t\t\t\tbefore: this.$el,\n\t\t\t} );\n\n\t\t\t// create wrap\n\t\t\tif ( ! $tabs.length || settings.endpoint ) {\n\t\t\t\tthis.tabs = new Tabs( settings );\n\t\t\t} else {\n\t\t\t\tthis.tabs = $tabs.data( 'acf' );\n\t\t\t}\n\n\t\t\t// add tab\n\t\t\tthis.tab = this.tabs.addTab( $tab, this );\n\t\t},\n\n\t\tisActive: function () {\n\t\t\treturn this.tab.isActive();\n\t\t},\n\n\t\tshowFields: function () {\n\t\t\t// show fields\n\t\t\tthis.getFields().map( function ( field ) {\n\t\t\t\tfield.show( this.cid, CONTEXT );\n\t\t\t\tfield.hiddenByTab = false;\n\t\t\t}, this );\n\t\t},\n\n\t\thideFields: function () {\n\t\t\t// hide fields\n\t\t\tthis.getFields().map( function ( field ) {\n\t\t\t\tfield.hide( this.cid, CONTEXT );\n\t\t\t\tfield.hiddenByTab = this.tab;\n\t\t\t}, this );\n\t\t},\n\n\t\tshow: function ( lockKey ) {\n\t\t\t// show field and store result\n\t\t\tvar visible = acf.Field.prototype.show.apply( this, arguments );\n\n\t\t\t// check if now visible\n\t\t\tif ( visible ) {\n\t\t\t\t// show tab\n\t\t\t\tthis.tab.show();\n\n\t\t\t\t// check active tabs\n\t\t\t\tthis.tabs.refresh();\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn visible;\n\t\t},\n\n\t\thide: function ( lockKey ) {\n\t\t\t// hide field and store result\n\t\t\tvar hidden = acf.Field.prototype.hide.apply( this, arguments );\n\n\t\t\t// check if now hidden\n\t\t\tif ( hidden ) {\n\t\t\t\t// hide tab\n\t\t\t\tthis.tab.hide();\n\n\t\t\t\t// reset tabs if this was active\n\t\t\t\tif ( this.isActive() ) {\n\t\t\t\t\tthis.tabs.reset();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn hidden;\n\t\t},\n\n\t\tenable: function ( lockKey ) {\n\t\t\t// enable fields\n\t\t\tthis.getFields().map( function ( field ) {\n\t\t\t\tfield.enable( CONTEXT );\n\t\t\t} );\n\t\t},\n\n\t\tdisable: function ( lockKey ) {\n\t\t\t// disable fields\n\t\t\tthis.getFields().map( function ( field ) {\n\t\t\t\tfield.disable( CONTEXT );\n\t\t\t} );\n\t\t},\n\n\t\tonDuplicate: function ( e, $el, $duplicate ) {\n\t\t\tif ( this.isActive() ) {\n\t\t\t\t$duplicate.prevAll( '.acf-tab-wrap:first' ).remove();\n\t\t\t}\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n\n\t/**\n\t * tabs\n\t *\n\t * description\n\t *\n\t * @date\t8/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar i = 0;\n\tvar Tabs = acf.Model.extend( {\n\t\ttabs: [],\n\n\t\tactive: false,\n\n\t\tactions: {\n\t\t\trefresh: 'onRefresh',\n\t\t},\n\n\t\tdata: {\n\t\t\tbefore: false,\n\t\t\tplacement: 'top',\n\t\t\tindex: 0,\n\t\t\tinitialized: false,\n\t\t},\n\n\t\tsetup: function ( settings ) {\n\t\t\t// data\n\t\t\t$.extend( this.data, settings );\n\n\t\t\t// define this prop to avoid scope issues\n\t\t\tthis.tabs = [];\n\t\t\tthis.active = false;\n\n\t\t\t// vars\n\t\t\tvar placement = this.get( 'placement' );\n\t\t\tvar $before = this.get( 'before' );\n\t\t\tvar $parent = $before.parent();\n\n\t\t\t// add sidebar for left placement\n\t\t\tif ( placement == 'left' && $parent.hasClass( 'acf-fields' ) ) {\n\t\t\t\t$parent.addClass( '-sidebar' );\n\t\t\t}\n\n\t\t\t// create wrap\n\t\t\tif ( $before.is( 'tr' ) ) {\n\t\t\t\tthis.$el = $(\n\t\t\t\t\t'
    '\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.$el = $(\n\t\t\t\t\t'
      '\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// append\n\t\t\t$before.before( this.$el );\n\n\t\t\t// set index\n\t\t\tthis.set( 'index', i, true );\n\t\t\ti++;\n\t\t},\n\n\t\tinitializeTabs: function () {\n\t\t\t// find first visible tab\n\t\t\tvar tab = this.getVisible().shift();\n\n\t\t\t// remember previous tab state\n\t\t\tvar order = acf.getPreference( 'this.tabs' ) || [];\n\t\t\tvar groupIndex = this.get( 'index' );\n\t\t\tvar tabIndex = order[ groupIndex ];\n\n\t\t\tif ( this.tabs[ tabIndex ] && this.tabs[ tabIndex ].isVisible() ) {\n\t\t\t\ttab = this.tabs[ tabIndex ];\n\t\t\t}\n\n\t\t\t// select\n\t\t\tif ( tab ) {\n\t\t\t\tthis.selectTab( tab );\n\t\t\t} else {\n\t\t\t\tthis.closeTabs();\n\t\t\t}\n\n\t\t\t// set local variable used by tabsManager\n\t\t\tthis.set( 'initialized', true );\n\t\t},\n\n\t\tgetVisible: function () {\n\t\t\treturn this.tabs.filter( function ( tab ) {\n\t\t\t\treturn tab.isVisible();\n\t\t\t} );\n\t\t},\n\n\t\tgetActive: function () {\n\t\t\treturn this.active;\n\t\t},\n\n\t\tsetActive: function ( tab ) {\n\t\t\treturn ( this.active = tab );\n\t\t},\n\n\t\thasActive: function () {\n\t\t\treturn this.active !== false;\n\t\t},\n\n\t\tisActive: function ( tab ) {\n\t\t\tvar active = this.getActive();\n\t\t\treturn active && active.cid === tab.cid;\n\t\t},\n\n\t\tcloseActive: function () {\n\t\t\tif ( this.hasActive() ) {\n\t\t\t\tthis.closeTab( this.getActive() );\n\t\t\t}\n\t\t},\n\n\t\topenTab: function ( tab ) {\n\t\t\t// close existing tab\n\t\t\tthis.closeActive();\n\n\t\t\t// open\n\t\t\ttab.open();\n\n\t\t\t// set active\n\t\t\tthis.setActive( tab );\n\t\t},\n\n\t\tcloseTab: function ( tab ) {\n\t\t\t// close\n\t\t\ttab.close();\n\n\t\t\t// set active\n\t\t\tthis.setActive( false );\n\t\t},\n\n\t\tcloseTabs: function () {\n\t\t\tthis.tabs.map( this.closeTab, this );\n\t\t},\n\n\t\tselectTab: function ( tab ) {\n\t\t\t// close other tabs\n\t\t\tthis.tabs.map( function ( t ) {\n\t\t\t\tif ( tab.cid !== t.cid ) {\n\t\t\t\t\tthis.closeTab( t );\n\t\t\t\t}\n\t\t\t}, this );\n\n\t\t\t// open\n\t\t\tthis.openTab( tab );\n\t\t},\n\n\t\taddTab: function ( $a, field ) {\n\t\t\t// create
    • \n\t\t\tvar $li = $( '
    • ' + $a.outerHTML() + '
    • ' );\n\n\t\t\t// append\n\t\t\tthis.$( 'ul' ).append( $li );\n\n\t\t\t// initialize\n\t\t\tvar tab = new Tab( {\n\t\t\t\t$el: $li,\n\t\t\t\tfield: field,\n\t\t\t\tgroup: this,\n\t\t\t} );\n\n\t\t\t// store\n\t\t\tthis.tabs.push( tab );\n\n\t\t\t// return\n\t\t\treturn tab;\n\t\t},\n\n\t\treset: function () {\n\t\t\t// close existing tab\n\t\t\tthis.closeActive();\n\n\t\t\t// find and active a tab\n\t\t\treturn this.refresh();\n\t\t},\n\n\t\trefresh: function () {\n\t\t\t// bail early if active already exists\n\t\t\tif ( this.hasActive() ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// find next active tab\n\t\t\tvar tab = this.getVisible().shift();\n\n\t\t\t// open tab\n\t\t\tif ( tab ) {\n\t\t\t\tthis.openTab( tab );\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn tab;\n\t\t},\n\n\t\tonRefresh: function () {\n\t\t\t// only for left placements\n\t\t\tif ( this.get( 'placement' ) !== 'left' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar $parent = this.$el.parent();\n\t\t\tvar $list = this.$el.children( 'ul' );\n\t\t\tvar attribute = $parent.is( 'td' ) ? 'height' : 'min-height';\n\n\t\t\t// find height (minus 1 for border-bottom)\n\t\t\tvar height = $list.position().top + $list.outerHeight( true ) - 1;\n\n\t\t\t// add css\n\t\t\t$parent.css( attribute, height );\n\t\t},\n\t} );\n\n\tvar Tab = acf.Model.extend( {\n\t\tgroup: false,\n\n\t\tfield: false,\n\n\t\tevents: {\n\t\t\t'click a': 'onClick',\n\t\t},\n\n\t\tindex: function () {\n\t\t\treturn this.$el.index();\n\t\t},\n\n\t\tisVisible: function () {\n\t\t\treturn acf.isVisible( this.$el );\n\t\t},\n\n\t\tisActive: function () {\n\t\t\treturn this.$el.hasClass( 'active' );\n\t\t},\n\n\t\topen: function () {\n\t\t\t// add class\n\t\t\tthis.$el.addClass( 'active' );\n\n\t\t\t// show field\n\t\t\tthis.field.showFields();\n\t\t},\n\n\t\tclose: function () {\n\t\t\t// remove class\n\t\t\tthis.$el.removeClass( 'active' );\n\n\t\t\t// hide field\n\t\t\tthis.field.hideFields();\n\t\t},\n\n\t\tonClick: function ( e, $el ) {\n\t\t\t// prevent default\n\t\t\te.preventDefault();\n\n\t\t\t// toggle\n\t\t\tthis.toggle();\n\t\t},\n\n\t\ttoggle: function () {\n\t\t\t// bail early if already active\n\t\t\tif ( this.isActive() ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// toggle this tab\n\t\t\tthis.group.openTab( this );\n\t\t},\n\t} );\n\n\tvar tabsManager = new acf.Model( {\n\t\tpriority: 50,\n\n\t\tactions: {\n\t\t\tprepare: 'render',\n\t\t\tappend: 'render',\n\t\t\tunload: 'onUnload',\n\t\t\tinvalid_field: 'onInvalidField',\n\t\t},\n\n\t\tfindTabs: function () {\n\t\t\treturn $( '.acf-tab-wrap' );\n\t\t},\n\n\t\tgetTabs: function () {\n\t\t\treturn acf.getInstances( this.findTabs() );\n\t\t},\n\n\t\trender: function ( $el ) {\n\t\t\tthis.getTabs().map( function ( tabs ) {\n\t\t\t\tif ( ! tabs.get( 'initialized' ) ) {\n\t\t\t\t\ttabs.initializeTabs();\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\n\t\tonInvalidField: function ( field ) {\n\t\t\t// bail early if busy\n\t\t\tif ( this.busy ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// ignore if not hidden by tab\n\t\t\tif ( ! field.hiddenByTab ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// toggle tab\n\t\t\tfield.hiddenByTab.toggle();\n\n\t\t\t// ignore other invalid fields\n\t\t\tthis.busy = true;\n\t\t\tthis.setTimeout( function () {\n\t\t\t\tthis.busy = false;\n\t\t\t}, 100 );\n\t\t},\n\n\t\tonUnload: function () {\n\t\t\t// vars\n\t\t\tvar order = [];\n\n\t\t\t// loop\n\t\t\tthis.getTabs().map( function ( group ) {\n\t\t\t\tvar active = group.hasActive() ? group.getActive().index() : 0;\n\t\t\t\torder.push( active );\n\t\t\t} );\n\n\t\t\t// bail if no tabs\n\t\t\tif ( ! order.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// update\n\t\t\tacf.setPreference( 'this.tabs', order );\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'taxonomy',\n\n\t\tdata: {\n\t\t\tftype: 'select',\n\t\t},\n\n\t\tselect2: false,\n\n\t\twait: 'load',\n\n\t\tevents: {\n\t\t\t'click a[data-name=\"add\"]': 'onClickAdd',\n\t\t\t'click input[type=\"radio\"]': 'onClickRadio',\n\t\t\tremoveField: 'onRemove',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-taxonomy-field' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.getRelatedPrototype().$input.apply( this, arguments );\n\t\t},\n\n\t\tgetRelatedType: function () {\n\t\t\t// vars\n\t\t\tvar fieldType = this.get( 'ftype' );\n\n\t\t\t// normalize\n\t\t\tif ( fieldType == 'multi_select' ) {\n\t\t\t\tfieldType = 'select';\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn fieldType;\n\t\t},\n\n\t\tgetRelatedPrototype: function () {\n\t\t\treturn acf.getFieldType( this.getRelatedType() ).prototype;\n\t\t},\n\n\t\tgetValue: function () {\n\t\t\treturn this.getRelatedPrototype().getValue.apply( this, arguments );\n\t\t},\n\n\t\tsetValue: function () {\n\t\t\treturn this.getRelatedPrototype().setValue.apply( this, arguments );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\tthis.getRelatedPrototype().initialize.apply( this, arguments );\n\t\t},\n\n\t\tonRemove: function () {\n\t\t\tvar proto = this.getRelatedPrototype();\n\t\t\tif ( proto.onRemove ) {\n\t\t\t\tproto.onRemove.apply( this, arguments );\n\t\t\t}\n\t\t},\n\n\t\tonClickAdd: function ( e, $el ) {\n\t\t\t// vars\n\t\t\tvar field = this;\n\t\t\tvar popup = false;\n\t\t\tvar $form = false;\n\t\t\tvar $name = false;\n\t\t\tvar $parent = false;\n\t\t\tvar $button = false;\n\t\t\tvar $message = false;\n\t\t\tvar notice = false;\n\n\t\t\t// step 1.\n\t\t\tvar step1 = function () {\n\t\t\t\t// popup\n\t\t\t\tpopup = acf.newPopup( {\n\t\t\t\t\ttitle: $el.attr( 'title' ),\n\t\t\t\t\tloading: true,\n\t\t\t\t\twidth: '300px',\n\t\t\t\t} );\n\n\t\t\t\t// ajax\n\t\t\t\tvar ajaxData = {\n\t\t\t\t\taction: 'acf/fields/taxonomy/add_term',\n\t\t\t\t\tfield_key: field.get( 'key' ),\n\t\t\t\t};\n\n\t\t\t\t// get HTML\n\t\t\t\t$.ajax( {\n\t\t\t\t\turl: acf.get( 'ajaxurl' ),\n\t\t\t\t\tdata: acf.prepareForAjax( ajaxData ),\n\t\t\t\t\ttype: 'post',\n\t\t\t\t\tdataType: 'html',\n\t\t\t\t\tsuccess: step2,\n\t\t\t\t} );\n\t\t\t};\n\n\t\t\t// step 2.\n\t\t\tvar step2 = function ( html ) {\n\t\t\t\t// update popup\n\t\t\t\tpopup.loading( false );\n\t\t\t\tpopup.content( html );\n\n\t\t\t\t// vars\n\t\t\t\t$form = popup.$( 'form' );\n\t\t\t\t$name = popup.$( 'input[name=\"term_name\"]' );\n\t\t\t\t$parent = popup.$( 'select[name=\"term_parent\"]' );\n\t\t\t\t$button = popup.$( '.acf-submit-button' );\n\n\t\t\t\t// focus\n\t\t\t\t$name.trigger( 'focus' );\n\n\t\t\t\t// submit form\n\t\t\t\tpopup.on( 'submit', 'form', step3 );\n\t\t\t};\n\n\t\t\t// step 3.\n\t\t\tvar step3 = function ( e, $el ) {\n\t\t\t\t// prevent\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopImmediatePropagation();\n\n\t\t\t\t// basic validation\n\t\t\t\tif ( $name.val() === '' ) {\n\t\t\t\t\t$name.trigger( 'focus' );\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\t// disable\n\t\t\t\tacf.startButtonLoading( $button );\n\n\t\t\t\t// ajax\n\t\t\t\tvar ajaxData = {\n\t\t\t\t\taction: 'acf/fields/taxonomy/add_term',\n\t\t\t\t\tfield_key: field.get( 'key' ),\n\t\t\t\t\tterm_name: $name.val(),\n\t\t\t\t\tterm_parent: $parent.length ? $parent.val() : 0,\n\t\t\t\t};\n\n\t\t\t\t$.ajax( {\n\t\t\t\t\turl: acf.get( 'ajaxurl' ),\n\t\t\t\t\tdata: acf.prepareForAjax( ajaxData ),\n\t\t\t\t\ttype: 'post',\n\t\t\t\t\tdataType: 'json',\n\t\t\t\t\tsuccess: step4,\n\t\t\t\t} );\n\t\t\t};\n\n\t\t\t// step 4.\n\t\t\tvar step4 = function ( json ) {\n\t\t\t\t// enable\n\t\t\t\tacf.stopButtonLoading( $button );\n\n\t\t\t\t// remove prev notice\n\t\t\t\tif ( notice ) {\n\t\t\t\t\tnotice.remove();\n\t\t\t\t}\n\n\t\t\t\t// success\n\t\t\t\tif ( acf.isAjaxSuccess( json ) ) {\n\t\t\t\t\t// clear name\n\t\t\t\t\t$name.val( '' );\n\n\t\t\t\t\t// update term lists\n\t\t\t\t\tstep5( json.data );\n\n\t\t\t\t\t// notice\n\t\t\t\t\tnotice = acf.newNotice( {\n\t\t\t\t\t\ttype: 'success',\n\t\t\t\t\t\ttext: acf.getAjaxMessage( json ),\n\t\t\t\t\t\ttarget: $form,\n\t\t\t\t\t\ttimeout: 2000,\n\t\t\t\t\t\tdismiss: false,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\t// notice\n\t\t\t\t\tnotice = acf.newNotice( {\n\t\t\t\t\t\ttype: 'error',\n\t\t\t\t\t\ttext: acf.getAjaxError( json ),\n\t\t\t\t\t\ttarget: $form,\n\t\t\t\t\t\ttimeout: 2000,\n\t\t\t\t\t\tdismiss: false,\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t// focus\n\t\t\t\t$name.trigger( 'focus' );\n\t\t\t};\n\n\t\t\t// step 5.\n\t\t\tvar step5 = function ( term ) {\n\t\t\t\t// update parent dropdown\n\t\t\t\tvar $option = $(\n\t\t\t\t\t''\n\t\t\t\t);\n\t\t\t\tif ( term.term_parent ) {\n\t\t\t\t\t$parent\n\t\t\t\t\t\t.children( 'option[value=\"' + term.term_parent + '\"]' )\n\t\t\t\t\t\t.after( $option );\n\t\t\t\t} else {\n\t\t\t\t\t$parent.append( $option );\n\t\t\t\t}\n\n\t\t\t\t// add this new term to all taxonomy field\n\t\t\t\tvar fields = acf.getFields( {\n\t\t\t\t\ttype: 'taxonomy',\n\t\t\t\t} );\n\n\t\t\t\tfields.map( function ( otherField ) {\n\t\t\t\t\tif (\n\t\t\t\t\t\totherField.get( 'taxonomy' ) == field.get( 'taxonomy' )\n\t\t\t\t\t) {\n\t\t\t\t\t\totherField.appendTerm( term );\n\t\t\t\t\t}\n\t\t\t\t} );\n\n\t\t\t\t// select\n\t\t\t\tfield.selectTerm( term.term_id );\n\t\t\t};\n\n\t\t\t// run\n\t\t\tstep1();\n\t\t},\n\n\t\tappendTerm: function ( term ) {\n\t\t\tif ( this.getRelatedType() == 'select' ) {\n\t\t\t\tthis.appendTermSelect( term );\n\t\t\t} else {\n\t\t\t\tthis.appendTermCheckbox( term );\n\t\t\t}\n\t\t},\n\n\t\tappendTermSelect: function ( term ) {\n\t\t\tthis.select2.addOption( {\n\t\t\t\tid: term.term_id,\n\t\t\t\ttext: term.term_label,\n\t\t\t} );\n\t\t},\n\n\t\tappendTermCheckbox: function ( term ) {\n\t\t\t// vars\n\t\t\tvar name = this.$( '[name]:first' ).attr( 'name' );\n\t\t\tvar $ul = this.$( 'ul:first' );\n\n\t\t\t// allow multiple selection\n\t\t\tif ( this.getRelatedType() == 'checkbox' ) {\n\t\t\t\tname += '[]';\n\t\t\t}\n\n\t\t\t// create new li\n\t\t\tvar $li = $(\n\t\t\t\t[\n\t\t\t\t\t'
    • ',\n\t\t\t\t\t'',\n\t\t\t\t\t'
    • ',\n\t\t\t\t].join( '' )\n\t\t\t);\n\n\t\t\t// find parent\n\t\t\tif ( term.term_parent ) {\n\t\t\t\t// vars\n\t\t\t\tvar $parent = $ul.find(\n\t\t\t\t\t'li[data-id=\"' + term.term_parent + '\"]'\n\t\t\t\t);\n\n\t\t\t\t// update vars\n\t\t\t\t$ul = $parent.children( 'ul' );\n\n\t\t\t\t// create ul\n\t\t\t\tif ( ! $ul.exists() ) {\n\t\t\t\t\t$ul = $( '' );\n\t\t\t\t\t$parent.append( $ul );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// append\n\t\t\t$ul.append( $li );\n\t\t},\n\n\t\tselectTerm: function ( id ) {\n\t\t\tif ( this.getRelatedType() == 'select' ) {\n\t\t\t\tthis.select2.selectOption( id );\n\t\t\t} else {\n\t\t\t\tvar $input = this.$( 'input[value=\"' + id + '\"]' );\n\t\t\t\t$input.prop( 'checked', true ).trigger( 'change' );\n\t\t\t}\n\t\t},\n\n\t\tonClickRadio: function ( e, $el ) {\n\t\t\t// vars\n\t\t\tvar $label = $el.parent( 'label' );\n\t\t\tvar selected = $label.hasClass( 'selected' );\n\n\t\t\t// remove previous selected\n\t\t\tthis.$( '.selected' ).removeClass( 'selected' );\n\n\t\t\t// add active class\n\t\t\t$label.addClass( 'selected' );\n\n\t\t\t// allow null\n\t\t\tif ( this.get( 'allow_null' ) && selected ) {\n\t\t\t\t$label.removeClass( 'selected' );\n\t\t\t\t$el.prop( 'checked', false ).trigger( 'change' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.models.DatePickerField.extend( {\n\t\ttype: 'time_picker',\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-time-picker' );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar $input = this.$input();\n\t\t\tvar $inputText = this.$inputText();\n\n\t\t\t// args\n\t\t\tvar args = {\n\t\t\t\ttimeFormat: this.get( 'time_format' ),\n\t\t\t\taltField: $input,\n\t\t\t\taltFieldTimeOnly: false,\n\t\t\t\taltTimeFormat: 'HH:mm:ss',\n\t\t\t\tshowButtonPanel: true,\n\t\t\t\tcontrolType: 'select',\n\t\t\t\toneLine: true,\n\t\t\t\tcloseText: acf.get( 'dateTimePickerL10n' ).selectText,\n\t\t\t\ttimeOnly: true,\n\t\t\t};\n\n\t\t\t// add custom 'Close = Select' functionality\n\t\t\targs.onClose = function ( value, dp_instance, t_instance ) {\n\t\t\t\t// vars\n\t\t\t\tvar $close = dp_instance.dpDiv.find( '.ui-datepicker-close' );\n\n\t\t\t\t// if clicking close button\n\t\t\t\tif ( ! value && $close.is( ':hover' ) ) {\n\t\t\t\t\tt_instance._updateDateTime();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t// filter\n\t\t\targs = acf.applyFilters( 'time_picker_args', args, this );\n\n\t\t\t// add date time picker\n\t\t\tacf.newTimePicker( $inputText, args );\n\n\t\t\t// action\n\t\t\tacf.doAction( 'time_picker_init', $inputText, args, this );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n\n\t// add\n\tacf.newTimePicker = function ( $input, args ) {\n\t\t// bail ealry if no datepicker library\n\t\tif ( typeof $.timepicker === 'undefined' ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// defaults\n\t\targs = args || {};\n\n\t\t// initialize\n\t\t$input.timepicker( args );\n\n\t\t// wrap the datepicker (only if it hasn't already been wrapped)\n\t\tif ( $( 'body > #ui-datepicker-div' ).exists() ) {\n\t\t\t$( 'body > #ui-datepicker-div' ).wrap(\n\t\t\t\t'
      '\n\t\t\t);\n\t\t}\n\t};\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'true_false',\n\n\t\tevents: {\n\t\t\t'change .acf-switch-input': 'onChange',\n\t\t\t'focus .acf-switch-input': 'onFocus',\n\t\t\t'blur .acf-switch-input': 'onBlur',\n\t\t\t'keypress .acf-switch-input': 'onKeypress',\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input[type=\"checkbox\"]' );\n\t\t},\n\n\t\t$switch: function () {\n\t\t\treturn this.$( '.acf-switch' );\n\t\t},\n\n\t\tgetValue: function () {\n\t\t\treturn this.$input().prop( 'checked' ) ? 1 : 0;\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\tthis.render();\n\t\t},\n\n\t\trender: function () {\n\t\t\t// vars\n\t\t\tvar $switch = this.$switch();\n\n\t\t\t// bail ealry if no $switch\n\t\t\tif ( ! $switch.length ) return;\n\n\t\t\t// vars\n\t\t\tvar $on = $switch.children( '.acf-switch-on' );\n\t\t\tvar $off = $switch.children( '.acf-switch-off' );\n\t\t\tvar width = Math.max( $on.width(), $off.width() );\n\n\t\t\t// bail ealry if no width\n\t\t\tif ( ! width ) return;\n\n\t\t\t// set widths\n\t\t\t$on.css( 'min-width', width );\n\t\t\t$off.css( 'min-width', width );\n\t\t},\n\n\t\tswitchOn: function () {\n\t\t\tthis.$input().prop( 'checked', true );\n\t\t\tthis.$switch().addClass( '-on' );\n\t\t},\n\n\t\tswitchOff: function () {\n\t\t\tthis.$input().prop( 'checked', false );\n\t\t\tthis.$switch().removeClass( '-on' );\n\t\t},\n\n\t\tonChange: function ( e, $el ) {\n\t\t\tif ( $el.prop( 'checked' ) ) {\n\t\t\t\tthis.switchOn();\n\t\t\t} else {\n\t\t\t\tthis.switchOff();\n\t\t\t}\n\t\t},\n\n\t\tonFocus: function ( e, $el ) {\n\t\t\tthis.$switch().addClass( '-focus' );\n\t\t},\n\n\t\tonBlur: function ( e, $el ) {\n\t\t\tthis.$switch().removeClass( '-focus' );\n\t\t},\n\n\t\tonKeypress: function ( e, $el ) {\n\t\t\t// left\n\t\t\tif ( e.keyCode === 37 ) {\n\t\t\t\treturn this.switchOff();\n\t\t\t}\n\n\t\t\t// right\n\t\t\tif ( e.keyCode === 39 ) {\n\t\t\t\treturn this.switchOn();\n\t\t\t}\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'url',\n\n\t\tevents: {\n\t\t\t'keyup input[type=\"url\"]': 'onkeyup',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-input-wrap' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'input[type=\"url\"]' );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\tthis.render();\n\t\t},\n\n\t\tisValid: function () {\n\t\t\t// vars\n\t\t\tvar val = this.val();\n\n\t\t\t// bail early if no val\n\t\t\tif ( ! val ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// url\n\t\t\tif ( val.indexOf( '://' ) !== -1 ) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\t// protocol relative url\n\t\t\tif ( val.indexOf( '//' ) === 0 ) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn false;\n\t\t},\n\n\t\trender: function () {\n\t\t\t// add class\n\t\t\tif ( this.isValid() ) {\n\t\t\t\tthis.$control().addClass( '-valid' );\n\t\t\t} else {\n\t\t\t\tthis.$control().removeClass( '-valid' );\n\t\t\t}\n\t\t},\n\n\t\tonkeyup: function ( e, $el ) {\n\t\t\tthis.render();\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.models.SelectField.extend( {\n\t\ttype: 'user',\n\t} );\n\n\tacf.registerFieldType( Field );\n\n\tacf.addFilter(\n\t\t'select2_ajax_data',\n\t\tfunction ( data, args, $input, field, select2 ) {\n\t\t\tif ( ! field ) {\n\t\t\t\treturn data;\n\t\t\t}\n\n\t\t\tconst $query_nonce = $(\n\t\t\t\t`#acf-${ field.get( 'key' ) }-query-nonce`\n\t\t\t);\n\t\t\tif ( $query_nonce.length ) {\n\t\t\t\tdata.user_query_nonce = $query_nonce.val();\n\t\t\t}\n\n\t\t\treturn data;\n\t\t}\n\t);\n} )( jQuery );\n","( function ( $, undefined ) {\n\tvar Field = acf.Field.extend( {\n\t\ttype: 'wysiwyg',\n\n\t\twait: 'load',\n\n\t\tevents: {\n\t\t\t'mousedown .acf-editor-wrap.delay': 'onMousedown',\n\t\t\tunmountField: 'disableEditor',\n\t\t\tremountField: 'enableEditor',\n\t\t\tremoveField: 'disableEditor',\n\t\t},\n\n\t\t$control: function () {\n\t\t\treturn this.$( '.acf-editor-wrap' );\n\t\t},\n\n\t\t$input: function () {\n\t\t\treturn this.$( 'textarea' );\n\t\t},\n\n\t\tgetMode: function () {\n\t\t\treturn this.$control().hasClass( 'tmce-active' )\n\t\t\t\t? 'visual'\n\t\t\t\t: 'text';\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// initializeEditor if no delay\n\t\t\tif ( ! this.$control().hasClass( 'delay' ) ) {\n\t\t\t\tthis.initializeEditor();\n\t\t\t}\n\t\t},\n\n\t\tinitializeEditor: function () {\n\t\t\t// vars\n\t\t\tvar $wrap = this.$control();\n\t\t\tvar $textarea = this.$input();\n\t\t\tvar args = {\n\t\t\t\ttinymce: true,\n\t\t\t\tquicktags: true,\n\t\t\t\ttoolbar: this.get( 'toolbar' ),\n\t\t\t\tmode: this.getMode(),\n\t\t\t\tfield: this,\n\t\t\t};\n\n\t\t\t// generate new id\n\t\t\tvar oldId = $textarea.attr( 'id' );\n\t\t\tvar newId = acf.uniqueId( 'acf-editor-' );\n\n\t\t\t// Backup textarea data.\n\t\t\tvar inputData = $textarea.data();\n\t\t\tvar inputVal = $textarea.val();\n\n\t\t\t// rename\n\t\t\tacf.rename( {\n\t\t\t\ttarget: $wrap,\n\t\t\t\tsearch: oldId,\n\t\t\t\treplace: newId,\n\t\t\t\tdestructive: true,\n\t\t\t} );\n\n\t\t\t// update id\n\t\t\tthis.set( 'id', newId, true );\n\n\t\t\t// apply data to new textarea (acf.rename creates a new textarea element due to destructive mode)\n\t\t\t// fixes bug where conditional logic \"disabled\" is lost during \"screen_check\"\n\t\t\tthis.$input().data( inputData ).val( inputVal );\n\n\t\t\t// initialize\n\t\t\tacf.tinymce.initialize( newId, args );\n\t\t},\n\n\t\tonMousedown: function ( e ) {\n\t\t\t// prevent default\n\t\t\te.preventDefault();\n\n\t\t\t// remove delay class\n\t\t\tvar $wrap = this.$control();\n\t\t\t$wrap.removeClass( 'delay' );\n\t\t\t$wrap.find( '.acf-editor-toolbar' ).remove();\n\n\t\t\t// initialize\n\t\t\tthis.initializeEditor();\n\t\t},\n\n\t\tenableEditor: function () {\n\t\t\tif ( this.getMode() == 'visual' ) {\n\t\t\t\tacf.tinymce.enable( this.get( 'id' ) );\n\t\t\t}\n\t\t},\n\n\t\tdisableEditor: function () {\n\t\t\tacf.tinymce.destroy( this.get( 'id' ) );\n\t\t},\n\t} );\n\n\tacf.registerFieldType( Field );\n} )( jQuery );\n","( function ( $, undefined ) {\n\t// vars\n\tvar storage = [];\n\n\t/**\n\t * acf.Field\n\t *\n\t * description\n\t *\n\t * @date\t23/3/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.Field = acf.Model.extend( {\n\t\t// field type\n\t\ttype: '',\n\n\t\t// class used to avoid nested event triggers\n\t\teventScope: '.acf-field',\n\n\t\t// initialize events on 'ready'\n\t\twait: 'ready',\n\n\t\t/**\n\t\t * setup\n\t\t *\n\t\t * Called during the constructor function to setup this field ready for initialization\n\t\t *\n\t\t * @date\t8/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\tjQuery $field The field element.\n\t\t * @return\tvoid\n\t\t */\n\n\t\tsetup: function ( $field ) {\n\t\t\t// set $el\n\t\t\tthis.$el = $field;\n\n\t\t\t// inherit $field data\n\t\t\tthis.inherit( $field );\n\n\t\t\t// inherit controll data\n\t\t\tthis.inherit( this.$control() );\n\t\t},\n\n\t\t/**\n\t\t * val\n\t\t *\n\t\t * Sets or returns the field's value\n\t\t *\n\t\t * @date\t8/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\tmixed val Optional. The value to set\n\t\t * @return\tmixed\n\t\t */\n\n\t\tval: function ( val ) {\n\t\t\t// Set.\n\t\t\tif ( val !== undefined ) {\n\t\t\t\treturn this.setValue( val );\n\n\t\t\t\t// Get.\n\t\t\t} else {\n\t\t\t\treturn this.prop( 'disabled' ) ? null : this.getValue();\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * getValue\n\t\t *\n\t\t * returns the field's value\n\t\t *\n\t\t * @date\t8/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tmixed\n\t\t */\n\n\t\tgetValue: function () {\n\t\t\treturn this.$input().val();\n\t\t},\n\n\t\t/**\n\t\t * setValue\n\t\t *\n\t\t * sets the field's value and returns true if changed\n\t\t *\n\t\t * @date\t8/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\tmixed val\n\t\t * @return\tboolean. True if changed.\n\t\t */\n\n\t\tsetValue: function ( val ) {\n\t\t\treturn acf.val( this.$input(), val );\n\t\t},\n\n\t\t/**\n\t\t * __\n\t\t *\n\t\t * i18n helper to be removed\n\t\t *\n\t\t * @date\t8/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\ttype $var Description. Default.\n\t\t * @return\ttype Description.\n\t\t */\n\n\t\t__: function ( string ) {\n\t\t\treturn acf._e( this.type, string );\n\t\t},\n\n\t\t/**\n\t\t * $control\n\t\t *\n\t\t * returns the control jQuery element used for inheriting data. Uses this.control setting.\n\t\t *\n\t\t * @date\t8/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tjQuery\n\t\t */\n\n\t\t$control: function () {\n\t\t\treturn false;\n\t\t},\n\n\t\t/**\n\t\t * $input\n\t\t *\n\t\t * returns the input jQuery element used for saving values. Uses this.input setting.\n\t\t *\n\t\t * @date\t8/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tjQuery\n\t\t */\n\n\t\t$input: function () {\n\t\t\treturn this.$( '[name]:first' );\n\t\t},\n\n\t\t/**\n\t\t * $inputWrap\n\t\t *\n\t\t * description\n\t\t *\n\t\t * @date\t12/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\ttype $var Description. Default.\n\t\t * @return\ttype Description.\n\t\t */\n\n\t\t$inputWrap: function () {\n\t\t\treturn this.$( '.acf-input:first' );\n\t\t},\n\n\t\t/**\n\t\t * $inputWrap\n\t\t *\n\t\t * description\n\t\t *\n\t\t * @date\t12/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\ttype $var Description. Default.\n\t\t * @return\ttype Description.\n\t\t */\n\n\t\t$labelWrap: function () {\n\t\t\treturn this.$( '.acf-label:first' );\n\t\t},\n\n\t\t/**\n\t\t * getInputName\n\t\t *\n\t\t * Returns the field's input name\n\t\t *\n\t\t * @date\t8/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tstring\n\t\t */\n\n\t\tgetInputName: function () {\n\t\t\treturn this.$input().attr( 'name' ) || '';\n\t\t},\n\n\t\t/**\n\t\t * parent\n\t\t *\n\t\t * returns the field's parent field or false on failure.\n\t\t *\n\t\t * @date\t8/5/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tobject|false\n\t\t */\n\n\t\tparent: function () {\n\t\t\t// vars\n\t\t\tvar parents = this.parents();\n\n\t\t\t// return\n\t\t\treturn parents.length ? parents[ 0 ] : false;\n\t\t},\n\n\t\t/**\n\t\t * parents\n\t\t *\n\t\t * description\n\t\t *\n\t\t * @date\t9/7/18\n\t\t * @since\t5.6.9\n\t\t *\n\t\t * @param\ttype $var Description. Default.\n\t\t * @return\ttype Description.\n\t\t */\n\n\t\tparents: function () {\n\t\t\t// vars\n\t\t\tvar $parents = this.$el.parents( '.acf-field' );\n\n\t\t\t// convert\n\t\t\tvar parents = acf.getFields( $parents );\n\n\t\t\t// return\n\t\t\treturn parents;\n\t\t},\n\n\t\tshow: function ( lockKey, context ) {\n\t\t\t// show field and store result\n\t\t\tvar changed = acf.show( this.$el, lockKey );\n\n\t\t\t// do action if visibility has changed\n\t\t\tif ( changed ) {\n\t\t\t\tthis.prop( 'hidden', false );\n\t\t\t\tacf.doAction( 'show_field', this, context );\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn changed;\n\t\t},\n\n\t\thide: function ( lockKey, context ) {\n\t\t\t// hide field and store result\n\t\t\tvar changed = acf.hide( this.$el, lockKey );\n\n\t\t\t// do action if visibility has changed\n\t\t\tif ( changed ) {\n\t\t\t\tthis.prop( 'hidden', true );\n\t\t\t\tacf.doAction( 'hide_field', this, context );\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn changed;\n\t\t},\n\n\t\tenable: function ( lockKey, context ) {\n\t\t\t// enable field and store result\n\t\t\tvar changed = acf.enable( this.$el, lockKey );\n\n\t\t\t// do action if disabled has changed\n\t\t\tif ( changed ) {\n\t\t\t\tthis.prop( 'disabled', false );\n\t\t\t\tacf.doAction( 'enable_field', this, context );\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn changed;\n\t\t},\n\n\t\tdisable: function ( lockKey, context ) {\n\t\t\t// disabled field and store result\n\t\t\tvar changed = acf.disable( this.$el, lockKey );\n\n\t\t\t// do action if disabled has changed\n\t\t\tif ( changed ) {\n\t\t\t\tthis.prop( 'disabled', true );\n\t\t\t\tacf.doAction( 'disable_field', this, context );\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn changed;\n\t\t},\n\n\t\tshowEnable: function ( lockKey, context ) {\n\t\t\t// enable\n\t\t\tthis.enable.apply( this, arguments );\n\n\t\t\t// show and return true if changed\n\t\t\treturn this.show.apply( this, arguments );\n\t\t},\n\n\t\thideDisable: function ( lockKey, context ) {\n\t\t\t// disable\n\t\t\tthis.disable.apply( this, arguments );\n\n\t\t\t// hide and return true if changed\n\t\t\treturn this.hide.apply( this, arguments );\n\t\t},\n\n\t\tshowNotice: function ( props ) {\n\t\t\t// ensure object\n\t\t\tif ( typeof props !== 'object' ) {\n\t\t\t\tprops = { text: props };\n\t\t\t}\n\n\t\t\t// remove old notice\n\t\t\tif ( this.notice ) {\n\t\t\t\tthis.notice.remove();\n\t\t\t}\n\n\t\t\t// create new notice\n\t\t\tprops.target = this.$inputWrap();\n\t\t\tthis.notice = acf.newNotice( props );\n\t\t},\n\n\t\tremoveNotice: function ( timeout ) {\n\t\t\tif ( this.notice ) {\n\t\t\t\tthis.notice.away( timeout || 0 );\n\t\t\t\tthis.notice = false;\n\t\t\t}\n\t\t},\n\n\t\tshowError: function ( message ) {\n\t\t\t// add class\n\t\t\tthis.$el.addClass( 'acf-error' );\n\n\t\t\t// add message\n\t\t\tif ( message !== undefined ) {\n\t\t\t\tthis.showNotice( {\n\t\t\t\t\ttext: message,\n\t\t\t\t\ttype: 'error',\n\t\t\t\t\tdismiss: false,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// action\n\t\t\tacf.doAction( 'invalid_field', this );\n\n\t\t\t// add event\n\t\t\tthis.$el.one(\n\t\t\t\t'focus change',\n\t\t\t\t'input, select, textarea',\n\t\t\t\t$.proxy( this.removeError, this )\n\t\t\t);\n\t\t},\n\n\t\tremoveError: function () {\n\t\t\t// remove class\n\t\t\tthis.$el.removeClass( 'acf-error' );\n\n\t\t\t// remove notice\n\t\t\tthis.removeNotice( 250 );\n\n\t\t\t// action\n\t\t\tacf.doAction( 'valid_field', this );\n\t\t},\n\n\t\ttrigger: function ( name, args, bubbles ) {\n\t\t\t// allow some events to bubble\n\t\t\tif ( name == 'invalidField' ) {\n\t\t\t\tbubbles = true;\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn acf.Model.prototype.trigger.apply( this, [\n\t\t\t\tname,\n\t\t\t\targs,\n\t\t\t\tbubbles,\n\t\t\t] );\n\t\t},\n\t} );\n\n\t/**\n\t * newField\n\t *\n\t * description\n\t *\n\t * @date\t14/12/17\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.newField = function ( $field ) {\n\t\t// vars\n\t\tvar type = $field.data( 'type' );\n\t\tvar mid = modelId( type );\n\t\tvar model = acf.models[ mid ] || acf.Field;\n\n\t\t// instantiate\n\t\tvar field = new model( $field );\n\n\t\t// actions\n\t\tacf.doAction( 'new_field', field );\n\n\t\t// return\n\t\treturn field;\n\t};\n\n\t/**\n\t * mid\n\t *\n\t * Calculates the model ID for a field type\n\t *\n\t * @date\t15/12/17\n\t * @since\t5.6.5\n\t *\n\t * @param\tstring type\n\t * @return\tstring\n\t */\n\n\tvar modelId = function ( type ) {\n\t\treturn acf.strPascalCase( type || '' ) + 'Field';\n\t};\n\n\t/**\n\t * registerFieldType\n\t *\n\t * description\n\t *\n\t * @date\t14/12/17\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.registerFieldType = function ( model ) {\n\t\t// vars\n\t\tvar proto = model.prototype;\n\t\tvar type = proto.type;\n\t\tvar mid = modelId( type );\n\n\t\t// store model\n\t\tacf.models[ mid ] = model;\n\n\t\t// store reference\n\t\tstorage.push( type );\n\t};\n\n\t/**\n\t * acf.getFieldType\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.getFieldType = function ( type ) {\n\t\tvar mid = modelId( type );\n\t\treturn acf.models[ mid ] || false;\n\t};\n\n\t/**\n\t * acf.getFieldTypes\n\t *\n\t * description\n\t *\n\t * @date\t1/2/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.getFieldTypes = function ( args ) {\n\t\t// defaults\n\t\targs = acf.parseArgs( args, {\n\t\t\tcategory: '',\n\t\t\t// hasValue: true\n\t\t} );\n\n\t\t// clonse available types\n\t\tvar types = [];\n\n\t\t// loop\n\t\tstorage.map( function ( type ) {\n\t\t\t// vars\n\t\t\tvar model = acf.getFieldType( type );\n\t\t\tvar proto = model.prototype;\n\n\t\t\t// check operator\n\t\t\tif ( args.category && proto.category !== args.category ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// append\n\t\t\ttypes.push( model );\n\t\t} );\n\n\t\t// return\n\t\treturn types;\n\t};\n} )( jQuery );\n","( function ( $, undefined ) {\n\t/**\n\t * findFields\n\t *\n\t * Returns a jQuery selection object of acf fields.\n\t *\n\t * @date\t14/12/17\n\t * @since\t5.6.5\n\t *\n\t * @param\tobject $args {\n\t *\t\tOptional. Arguments to find fields.\n\t *\n\t *\t\t@type string\t\t\tkey\t\t\tThe field's key (data-attribute).\n\t *\t\t@type string\t\t\tname\t\tThe field's name (data-attribute).\n\t *\t\t@type string\t\t\ttype\t\tThe field's type (data-attribute).\n\t *\t\t@type string\t\t\tis\t\t\tjQuery selector to compare against.\n\t *\t\t@type jQuery\t\t\tparent\t\tjQuery element to search within.\n\t *\t\t@type jQuery\t\t\tsibling\t\tjQuery element to search alongside.\n\t *\t\t@type limit\t\t\t\tint\t\t\tThe number of fields to find.\n\t *\t\t@type suppressFilters\tbool\t\tWhether to allow filters to add/remove results. Default behaviour will ignore clone fields.\n\t * }\n\t * @return\tjQuery\n\t */\n\n\tacf.findFields = function ( args ) {\n\t\t// vars\n\t\tvar selector = '.acf-field';\n\t\tvar $fields = false;\n\n\t\t// args\n\t\targs = acf.parseArgs( args, {\n\t\t\tkey: '',\n\t\t\tname: '',\n\t\t\ttype: '',\n\t\t\tis: '',\n\t\t\tparent: false,\n\t\t\tsibling: false,\n\t\t\tlimit: false,\n\t\t\tvisible: false,\n\t\t\tsuppressFilters: false,\n\t\t} );\n\n\t\t// filter args\n\t\tif ( ! args.suppressFilters ) {\n\t\t\targs = acf.applyFilters( 'find_fields_args', args );\n\t\t}\n\n\t\t// key\n\t\tif ( args.key ) {\n\t\t\tselector += '[data-key=\"' + args.key + '\"]';\n\t\t}\n\n\t\t// type\n\t\tif ( args.type ) {\n\t\t\tselector += '[data-type=\"' + args.type + '\"]';\n\t\t}\n\n\t\t// name\n\t\tif ( args.name ) {\n\t\t\tselector += '[data-name=\"' + args.name + '\"]';\n\t\t}\n\n\t\t// is\n\t\tif ( args.is ) {\n\t\t\tselector += args.is;\n\t\t}\n\n\t\t// visibility\n\t\tif ( args.visible ) {\n\t\t\tselector += ':visible';\n\t\t}\n\n\t\t// query\n\t\tif ( args.parent ) {\n\t\t\t$fields = args.parent.find( selector );\n\t\t} else if ( args.sibling ) {\n\t\t\t$fields = args.sibling.siblings( selector );\n\t\t} else {\n\t\t\t$fields = $( selector );\n\t\t}\n\n\t\t// filter\n\t\tif ( ! args.suppressFilters ) {\n\t\t\t$fields = $fields.not( '.acf-clone .acf-field' );\n\t\t\t$fields = acf.applyFilters( 'find_fields', $fields );\n\t\t}\n\n\t\t// limit\n\t\tif ( args.limit ) {\n\t\t\t$fields = $fields.slice( 0, args.limit );\n\t\t}\n\n\t\t// return\n\t\treturn $fields;\n\t};\n\n\t/**\n\t * findField\n\t *\n\t * Finds a specific field with jQuery\n\t *\n\t * @date\t14/12/17\n\t * @since\t5.6.5\n\t *\n\t * @param\tstring key \t\tThe field's key.\n\t * @param\tjQuery $parent\tjQuery element to search within.\n\t * @return\tjQuery\n\t */\n\n\tacf.findField = function ( key, $parent ) {\n\t\treturn acf.findFields( {\n\t\t\tkey: key,\n\t\t\tlimit: 1,\n\t\t\tparent: $parent,\n\t\t\tsuppressFilters: true,\n\t\t} );\n\t};\n\n\t/**\n\t * getField\n\t *\n\t * Returns a field instance\n\t *\n\t * @date\t14/12/17\n\t * @since\t5.6.5\n\t *\n\t * @param\tjQuery|string $field\tjQuery element or field key.\n\t * @return\tobject\n\t */\n\n\tacf.getField = function ( $field ) {\n\t\t// allow jQuery\n\t\tif ( $field instanceof jQuery ) {\n\t\t\t// find fields\n\t\t} else {\n\t\t\t$field = acf.findField( $field );\n\t\t}\n\n\t\t// instantiate\n\t\tvar field = $field.data( 'acf' );\n\t\tif ( ! field ) {\n\t\t\tfield = acf.newField( $field );\n\t\t}\n\n\t\t// return\n\t\treturn field;\n\t};\n\n\t/**\n\t * getFields\n\t *\n\t * Returns multiple field instances\n\t *\n\t * @date\t14/12/17\n\t * @since\t5.6.5\n\t *\n\t * @param\tjQuery|object $fields\tjQuery elements or query args.\n\t * @return\tarray\n\t */\n\n\tacf.getFields = function ( $fields ) {\n\t\t// allow jQuery\n\t\tif ( $fields instanceof jQuery ) {\n\t\t\t// find fields\n\t\t} else {\n\t\t\t$fields = acf.findFields( $fields );\n\t\t}\n\n\t\t// loop\n\t\tvar fields = [];\n\t\t$fields.each( function () {\n\t\t\tvar field = acf.getField( $( this ) );\n\t\t\tfields.push( field );\n\t\t} );\n\n\t\t// return\n\t\treturn fields;\n\t};\n\n\t/**\n\t * findClosestField\n\t *\n\t * Returns the closest jQuery field element\n\t *\n\t * @date\t9/4/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tjQuery $el\n\t * @return\tjQuery\n\t */\n\n\tacf.findClosestField = function ( $el ) {\n\t\treturn $el.closest( '.acf-field' );\n\t};\n\n\t/**\n\t * getClosestField\n\t *\n\t * Returns the closest field instance\n\t *\n\t * @date\t22/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\tjQuery $el\n\t * @return\tobject\n\t */\n\n\tacf.getClosestField = function ( $el ) {\n\t\tvar $field = acf.findClosestField( $el );\n\t\treturn this.getField( $field );\n\t};\n\n\t/**\n\t * addGlobalFieldAction\n\t *\n\t * Sets up callback logic for global field actions\n\t *\n\t * @date\t15/6/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tstring action\n\t * @return\tvoid\n\t */\n\n\tvar addGlobalFieldAction = function ( action ) {\n\t\t// vars\n\t\tvar globalAction = action;\n\t\tvar pluralAction = action + '_fields'; // ready_fields\n\t\tvar singleAction = action + '_field'; // ready_field\n\n\t\t// global action\n\t\tvar globalCallback = function ( $el /*, arg1, arg2, etc*/ ) {\n\t\t\t//console.log( action, arguments );\n\n\t\t\t// get args [$el, ...]\n\t\t\tvar args = acf.arrayArgs( arguments );\n\t\t\tvar extraArgs = args.slice( 1 );\n\n\t\t\t// find fields\n\t\t\tvar fields = acf.getFields( { parent: $el } );\n\n\t\t\t// check\n\t\t\tif ( fields.length ) {\n\t\t\t\t// pluralAction\n\t\t\t\tvar pluralArgs = [ pluralAction, fields ].concat( extraArgs );\n\t\t\t\tacf.doAction.apply( null, pluralArgs );\n\t\t\t}\n\t\t};\n\n\t\t// plural action\n\t\tvar pluralCallback = function ( fields /*, arg1, arg2, etc*/ ) {\n\t\t\t//console.log( pluralAction, arguments );\n\n\t\t\t// get args [fields, ...]\n\t\t\tvar args = acf.arrayArgs( arguments );\n\t\t\tvar extraArgs = args.slice( 1 );\n\n\t\t\t// loop\n\t\t\tfields.map( function ( field, i ) {\n\t\t\t\t//setTimeout(function(){\n\t\t\t\t// singleAction\n\t\t\t\tvar singleArgs = [ singleAction, field ].concat( extraArgs );\n\t\t\t\tacf.doAction.apply( null, singleArgs );\n\t\t\t\t//}, i * 100);\n\t\t\t} );\n\t\t};\n\n\t\t// add actions\n\t\tacf.addAction( globalAction, globalCallback );\n\t\tacf.addAction( pluralAction, pluralCallback );\n\n\t\t// also add single action\n\t\taddSingleFieldAction( action );\n\t};\n\n\t/**\n\t * addSingleFieldAction\n\t *\n\t * Sets up callback logic for single field actions\n\t *\n\t * @date\t15/6/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tstring action\n\t * @return\tvoid\n\t */\n\n\tvar addSingleFieldAction = function ( action ) {\n\t\t// vars\n\t\tvar singleAction = action + '_field'; // ready_field\n\t\tvar singleEvent = action + 'Field'; // readyField\n\n\t\t// single action\n\t\tvar singleCallback = function ( field /*, arg1, arg2, etc*/ ) {\n\t\t\t//console.log( singleAction, arguments );\n\n\t\t\t// get args [field, ...]\n\t\t\tvar args = acf.arrayArgs( arguments );\n\t\t\tvar extraArgs = args.slice( 1 );\n\n\t\t\t// action variations (ready_field/type=image)\n\t\t\tvar variations = [ 'type', 'name', 'key' ];\n\t\t\tvariations.map( function ( variation ) {\n\t\t\t\t// vars\n\t\t\t\tvar prefix = '/' + variation + '=' + field.get( variation );\n\n\t\t\t\t// singleAction\n\t\t\t\targs = [ singleAction + prefix, field ].concat( extraArgs );\n\t\t\t\tacf.doAction.apply( null, args );\n\t\t\t} );\n\n\t\t\t// event\n\t\t\tif ( singleFieldEvents.indexOf( action ) > -1 ) {\n\t\t\t\tfield.trigger( singleEvent, extraArgs );\n\t\t\t}\n\t\t};\n\n\t\t// add actions\n\t\tacf.addAction( singleAction, singleCallback );\n\t};\n\n\t// vars\n\tvar globalFieldActions = [\n\t\t'prepare',\n\t\t'ready',\n\t\t'load',\n\t\t'append',\n\t\t'remove',\n\t\t'unmount',\n\t\t'remount',\n\t\t'sortstart',\n\t\t'sortstop',\n\t\t'show',\n\t\t'hide',\n\t\t'unload',\n\t];\n\tvar singleFieldActions = [\n\t\t'valid',\n\t\t'invalid',\n\t\t'enable',\n\t\t'disable',\n\t\t'new',\n\t\t'duplicate',\n\t];\n\tvar singleFieldEvents = [\n\t\t'remove',\n\t\t'unmount',\n\t\t'remount',\n\t\t'sortstart',\n\t\t'sortstop',\n\t\t'show',\n\t\t'hide',\n\t\t'unload',\n\t\t'valid',\n\t\t'invalid',\n\t\t'enable',\n\t\t'disable',\n\t\t'duplicate',\n\t];\n\n\t// add\n\tglobalFieldActions.map( addGlobalFieldAction );\n\tsingleFieldActions.map( addSingleFieldAction );\n\n\t/**\n\t * fieldsEventManager\n\t *\n\t * Manages field actions and events\n\t *\n\t * @date\t15/12/17\n\t * @since\t5.6.5\n\t *\n\t * @param\tvoid\n\t * @param\tvoid\n\t */\n\n\tvar fieldsEventManager = new acf.Model( {\n\t\tid: 'fieldsEventManager',\n\t\tevents: {\n\t\t\t'click .acf-field a[href=\"#\"]': 'onClick',\n\t\t\t'change .acf-field': 'onChange',\n\t\t},\n\t\tonClick: function ( e ) {\n\t\t\t// prevent default of any link with an href of #\n\t\t\te.preventDefault();\n\t\t},\n\t\tonChange: function () {\n\t\t\t// preview hack allows post to save with no title or content\n\t\t\t$( '#_acf_changed' ).val( 1 );\n\t\t},\n\t} );\n\n\tvar duplicateFieldsManager = new acf.Model( {\n\t\tid: 'duplicateFieldsManager',\n\t\tactions: {\n\t\t\tduplicate: 'onDuplicate',\n\t\t\tduplicate_fields: 'onDuplicateFields',\n\t\t},\n\t\tonDuplicate: function ( $el, $el2 ) {\n\t\t\tvar fields = acf.getFields( { parent: $el } );\n\t\t\tif ( fields.length ) {\n\t\t\t\tvar $fields = acf.findFields( { parent: $el2 } );\n\t\t\t\tacf.doAction( 'duplicate_fields', fields, $fields );\n\t\t\t}\n\t\t},\n\t\tonDuplicateFields: function ( fields, duplicates ) {\n\t\t\tfields.map( function ( field, i ) {\n\t\t\t\tacf.doAction( 'duplicate_field', field, $( duplicates[ i ] ) );\n\t\t\t} );\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\t/**\n\t * refreshHelper\n\t *\n\t * description\n\t *\n\t * @date\t1/7/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar refreshHelper = new acf.Model( {\n\t\tpriority: 90,\n\t\tactions: {\n\t\t\tnew_field: 'refresh',\n\t\t\tshow_field: 'refresh',\n\t\t\thide_field: 'refresh',\n\t\t\tremove_field: 'refresh',\n\t\t\tunmount_field: 'refresh',\n\t\t\tremount_field: 'refresh',\n\t\t},\n\t\trefresh: function () {\n\t\t\tacf.refresh();\n\t\t},\n\t} );\n\n\t/**\n\t * mountHelper\n\t *\n\t * Adds compatiblity for the 'unmount' and 'remount' actions added in 5.8.0\n\t *\n\t * @date\t7/3/19\n\t * @since\t5.7.14\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\tvar mountHelper = new acf.Model( {\n\t\tpriority: 1,\n\t\tactions: {\n\t\t\tsortstart: 'onSortstart',\n\t\t\tsortstop: 'onSortstop',\n\t\t},\n\t\tonSortstart: function ( $item ) {\n\t\t\tacf.doAction( 'unmount', $item );\n\t\t},\n\t\tonSortstop: function ( $item ) {\n\t\t\tacf.doAction( 'remount', $item );\n\t\t},\n\t} );\n\n\t/**\n\t * sortableHelper\n\t *\n\t * Adds compatibility for sorting a
      element\n\t *\n\t * @date\t6/3/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar sortableHelper = new acf.Model( {\n\t\tactions: {\n\t\t\tsortstart: 'onSortstart',\n\t\t},\n\t\tonSortstart: function ( $item, $placeholder ) {\n\t\t\t// if $item is a tr, apply some css to the elements\n\t\t\tif ( $item.is( 'tr' ) ) {\n\t\t\t\t// replace $placeholder children with a single td\n\t\t\t\t// fixes \"width calculation issues\" due to conditional logic hiding some children\n\t\t\t\t$placeholder.html(\n\t\t\t\t\t''\n\t\t\t\t);\n\n\t\t\t\t// add helper class to remove absolute positioning\n\t\t\t\t$item.addClass( 'acf-sortable-tr-helper' );\n\n\t\t\t\t// set fixed widths for children\n\t\t\t\t$item.children().each( function () {\n\t\t\t\t\t$( this ).width( $( this ).width() );\n\t\t\t\t} );\n\n\t\t\t\t// mimic height\n\t\t\t\t$placeholder.height( $item.height() + 'px' );\n\n\t\t\t\t// remove class\n\t\t\t\t$item.removeClass( 'acf-sortable-tr-helper' );\n\t\t\t}\n\t\t},\n\t} );\n\n\t/**\n\t * duplicateHelper\n\t *\n\t * Fixes browser bugs when duplicating an element\n\t *\n\t * @date\t6/3/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tvar duplicateHelper = new acf.Model( {\n\t\tactions: {\n\t\t\tafter_duplicate: 'onAfterDuplicate',\n\t\t},\n\t\tonAfterDuplicate: function ( $el, $el2 ) {\n\t\t\t// get original values\n\t\t\tvar vals = [];\n\t\t\t$el.find( 'select' ).each( function ( i ) {\n\t\t\t\tvals.push( $( this ).val() );\n\t\t\t} );\n\n\t\t\t// set duplicate values\n\t\t\t$el2.find( 'select' ).each( function ( i ) {\n\t\t\t\t$( this ).val( vals[ i ] );\n\t\t\t} );\n\t\t},\n\t} );\n\n\t/**\n\t * tableHelper\n\t *\n\t * description\n\t *\n\t * @date\t6/3/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar tableHelper = new acf.Model( {\n\t\tid: 'tableHelper',\n\n\t\tpriority: 20,\n\n\t\tactions: {\n\t\t\trefresh: 'renderTables',\n\t\t},\n\n\t\trenderTables: function ( $el ) {\n\t\t\t// loop\n\t\t\tvar self = this;\n\t\t\t$( '.acf-table:visible' ).each( function () {\n\t\t\t\tself.renderTable( $( this ) );\n\t\t\t} );\n\t\t},\n\n\t\trenderTable: function ( $table ) {\n\t\t\t// vars\n\t\t\tvar $ths = $table.find( '> thead > tr:visible > th[data-key]' );\n\t\t\tvar $tds = $table.find( '> tbody > tr:visible > td[data-key]' );\n\n\t\t\t// bail early if no thead\n\t\t\tif ( ! $ths.length || ! $tds.length ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// visiblity\n\t\t\t$ths.each( function ( i ) {\n\t\t\t\t// vars\n\t\t\t\tvar $th = $( this );\n\t\t\t\tvar key = $th.data( 'key' );\n\t\t\t\tvar $cells = $tds.filter( '[data-key=\"' + key + '\"]' );\n\t\t\t\tvar $hidden = $cells.filter( '.acf-hidden' );\n\n\t\t\t\t// always remove empty and allow cells to be hidden\n\t\t\t\t$cells.removeClass( 'acf-empty' );\n\n\t\t\t\t// hide $th if all cells are hidden\n\t\t\t\tif ( $cells.length === $hidden.length ) {\n\t\t\t\t\tacf.hide( $th );\n\n\t\t\t\t\t// force all hidden cells to appear empty\n\t\t\t\t} else {\n\t\t\t\t\tacf.show( $th );\n\t\t\t\t\t$hidden.addClass( 'acf-empty' );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// clear width\n\t\t\t$ths.css( 'width', 'auto' );\n\n\t\t\t// get visible\n\t\t\t$ths = $ths.not( '.acf-hidden' );\n\n\t\t\t// vars\n\t\t\tvar availableWidth = 100;\n\t\t\tvar colspan = $ths.length;\n\n\t\t\t// set custom widths first\n\t\t\tvar $fixedWidths = $ths.filter( '[data-width]' );\n\t\t\t$fixedWidths.each( function () {\n\t\t\t\tvar width = $( this ).data( 'width' );\n\t\t\t\t$( this ).css( 'width', width + '%' );\n\t\t\t\tavailableWidth -= width;\n\t\t\t} );\n\n\t\t\t// set auto widths\n\t\t\tvar $auoWidths = $ths.not( '[data-width]' );\n\t\t\tif ( $auoWidths.length ) {\n\t\t\t\tvar width = availableWidth / $auoWidths.length;\n\t\t\t\t$auoWidths.css( 'width', width + '%' );\n\t\t\t\tavailableWidth = 0;\n\t\t\t}\n\n\t\t\t// avoid stretching issue\n\t\t\tif ( availableWidth > 0 ) {\n\t\t\t\t$ths.last().css( 'width', 'auto' );\n\t\t\t}\n\n\t\t\t// update colspan on collapsed\n\t\t\t$tds.filter( '.-collapsed-target' ).each( function () {\n\t\t\t\t// vars\n\t\t\t\tvar $td = $( this );\n\n\t\t\t\t// check if collapsed\n\t\t\t\tif ( $td.parent().hasClass( '-collapsed' ) ) {\n\t\t\t\t\t$td.attr( 'colspan', $ths.length );\n\t\t\t\t} else {\n\t\t\t\t\t$td.removeAttr( 'colspan' );\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\t} );\n\n\t/**\n\t * fieldsHelper\n\t *\n\t * description\n\t *\n\t * @date\t6/3/18\n\t * @since\t5.6.9\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar fieldsHelper = new acf.Model( {\n\t\tid: 'fieldsHelper',\n\n\t\tpriority: 30,\n\n\t\tactions: {\n\t\t\trefresh: 'renderGroups',\n\t\t},\n\n\t\trenderGroups: function () {\n\t\t\t// loop\n\t\t\tvar self = this;\n\t\t\t$( '.acf-fields:visible' ).each( function () {\n\t\t\t\tself.renderGroup( $( this ) );\n\t\t\t} );\n\t\t},\n\n\t\trenderGroup: function ( $el ) {\n\t\t\t// vars\n\t\t\tvar top = 0;\n\t\t\tvar height = 0;\n\t\t\tvar $row = $();\n\n\t\t\t// get fields\n\t\t\tvar $fields = $el.children( '.acf-field[data-width]:visible' );\n\n\t\t\t// bail early if no fields\n\t\t\tif ( ! $fields.length ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// bail ealry if is .-left\n\t\t\tif ( $el.hasClass( '-left' ) ) {\n\t\t\t\t$fields.removeAttr( 'data-width' );\n\t\t\t\t$fields.css( 'width', 'auto' );\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// reset fields\n\t\t\t$fields.removeClass( '-r0 -c0' ).css( { 'min-height': 0 } );\n\n\t\t\t// loop\n\t\t\t$fields.each( function ( i ) {\n\t\t\t\t// vars\n\t\t\t\tvar $field = $( this );\n\t\t\t\tvar position = $field.position();\n\t\t\t\tvar thisTop = Math.ceil( position.top );\n\t\t\t\tvar thisLeft = Math.ceil( position.left );\n\n\t\t\t\t// detect change in row\n\t\t\t\tif ( $row.length && thisTop > top ) {\n\t\t\t\t\t// set previous heights\n\t\t\t\t\t$row.css( { 'min-height': height + 'px' } );\n\n\t\t\t\t\t// update position due to change in row above\n\t\t\t\t\tposition = $field.position();\n\t\t\t\t\tthisTop = Math.ceil( position.top );\n\t\t\t\t\tthisLeft = Math.ceil( position.left );\n\n\t\t\t\t\t// reset vars\n\t\t\t\t\ttop = 0;\n\t\t\t\t\theight = 0;\n\t\t\t\t\t$row = $();\n\t\t\t\t}\n\n\t\t\t\t// rtl\n\t\t\t\tif ( acf.get( 'rtl' ) ) {\n\t\t\t\t\tthisLeft = Math.ceil(\n\t\t\t\t\t\t$field.parent().width() -\n\t\t\t\t\t\t\t( position.left + $field.outerWidth() )\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// add classes\n\t\t\t\tif ( thisTop == 0 ) {\n\t\t\t\t\t$field.addClass( '-r0' );\n\t\t\t\t} else if ( thisLeft == 0 ) {\n\t\t\t\t\t$field.addClass( '-c0' );\n\t\t\t\t}\n\n\t\t\t\t// get height after class change\n\t\t\t\t// - add 1 for subpixel rendering\n\t\t\t\tvar thisHeight = Math.ceil( $field.outerHeight() ) + 1;\n\n\t\t\t\t// set height\n\t\t\t\theight = Math.max( height, thisHeight );\n\n\t\t\t\t// set y\n\t\t\t\ttop = Math.max( top, thisTop );\n\n\t\t\t\t// append\n\t\t\t\t$row = $row.add( $field );\n\t\t\t} );\n\n\t\t\t// clean up\n\t\t\tif ( $row.length ) {\n\t\t\t\t$row.css( { 'min-height': height + 'px' } );\n\t\t\t}\n\t\t},\n\t} );\n\n\t/**\n\t * Adds a body class when holding down the \"shift\" key.\n\t *\n\t * @date\t06/05/2020\n\t * @since\t5.9.0\n\t */\n\tvar bodyClassShiftHelper = new acf.Model( {\n\t\tid: 'bodyClassShiftHelper',\n\t\tevents: {\n\t\t\tkeydown: 'onKeyDown',\n\t\t\tkeyup: 'onKeyUp',\n\t\t},\n\t\tisShiftKey: function ( e ) {\n\t\t\treturn e.keyCode === 16;\n\t\t},\n\t\tonKeyDown: function ( e ) {\n\t\t\tif ( this.isShiftKey( e ) ) {\n\t\t\t\t$( 'body' ).addClass( 'acf-keydown-shift' );\n\t\t\t}\n\t\t},\n\t\tonKeyUp: function ( e ) {\n\t\t\tif ( this.isShiftKey( e ) ) {\n\t\t\t\t$( 'body' ).removeClass( 'acf-keydown-shift' );\n\t\t\t}\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\t/**\n\t * acf.newMediaPopup\n\t *\n\t * description\n\t *\n\t * @date\t10/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.newMediaPopup = function ( args ) {\n\t\t// args\n\t\tvar popup = null;\n\t\tvar args = acf.parseArgs( args, {\n\t\t\tmode: 'select', // 'select', 'edit'\n\t\t\ttitle: '', // 'Upload Image'\n\t\t\tbutton: '', // 'Select Image'\n\t\t\ttype: '', // 'image', ''\n\t\t\tfield: false, // field instance\n\t\t\tallowedTypes: '', // '.jpg, .png, etc'\n\t\t\tlibrary: 'all', // 'all', 'uploadedTo'\n\t\t\tmultiple: false, // false, true, 'add'\n\t\t\tattachment: 0, // the attachment to edit\n\t\t\tautoOpen: true, // open the popup automatically\n\t\t\topen: function () {}, // callback after close\n\t\t\tselect: function () {}, // callback after select\n\t\t\tclose: function () {}, // callback after close\n\t\t} );\n\n\t\t// initialize\n\t\tif ( args.mode == 'edit' ) {\n\t\t\tpopup = new acf.models.EditMediaPopup( args );\n\t\t} else {\n\t\t\tpopup = new acf.models.SelectMediaPopup( args );\n\t\t}\n\n\t\t// open popup (allow frame customization before opening)\n\t\tif ( args.autoOpen ) {\n\t\t\tsetTimeout( function () {\n\t\t\t\tpopup.open();\n\t\t\t}, 1 );\n\t\t}\n\n\t\t// action\n\t\tacf.doAction( 'new_media_popup', popup );\n\n\t\t// return\n\t\treturn popup;\n\t};\n\n\t/**\n\t * getPostID\n\t *\n\t * description\n\t *\n\t * @date\t10/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar getPostID = function () {\n\t\tvar postID = acf.get( 'post_id' );\n\t\treturn acf.isNumeric( postID ) ? postID : 0;\n\t};\n\n\t/**\n\t * acf.getMimeTypes\n\t *\n\t * description\n\t *\n\t * @date\t11/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.getMimeTypes = function () {\n\t\treturn this.get( 'mimeTypes' );\n\t};\n\n\tacf.getMimeType = function ( name ) {\n\t\t// vars\n\t\tvar allTypes = acf.getMimeTypes();\n\n\t\t// search\n\t\tif ( allTypes[ name ] !== undefined ) {\n\t\t\treturn allTypes[ name ];\n\t\t}\n\n\t\t// some types contain a mixed key such as \"jpg|jpeg|jpe\"\n\t\tfor ( var key in allTypes ) {\n\t\t\tif ( key.indexOf( name ) !== -1 ) {\n\t\t\t\treturn allTypes[ key ];\n\t\t\t}\n\t\t}\n\n\t\t// return\n\t\treturn false;\n\t};\n\n\t/**\n\t * MediaPopup\n\t *\n\t * description\n\t *\n\t * @date\t10/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar MediaPopup = acf.Model.extend( {\n\t\tid: 'MediaPopup',\n\t\tdata: {},\n\t\tdefaults: {},\n\t\tframe: false,\n\n\t\tsetup: function ( props ) {\n\t\t\t$.extend( this.data, props );\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar options = this.getFrameOptions();\n\n\t\t\t// add states\n\t\t\tthis.addFrameStates( options );\n\n\t\t\t// create frame\n\t\t\tvar frame = wp.media( options );\n\n\t\t\t// add args reference\n\t\t\tframe.acf = this;\n\n\t\t\t// add events\n\t\t\tthis.addFrameEvents( frame, options );\n\n\t\t\t// strore frame\n\t\t\tthis.frame = frame;\n\t\t},\n\n\t\topen: function () {\n\t\t\tthis.frame.open();\n\t\t},\n\n\t\tclose: function () {\n\t\t\tthis.frame.close();\n\t\t},\n\n\t\tremove: function () {\n\t\t\tthis.frame.detach();\n\t\t\tthis.frame.remove();\n\t\t},\n\n\t\tgetFrameOptions: function () {\n\t\t\t// vars\n\t\t\tvar options = {\n\t\t\t\ttitle: this.get( 'title' ),\n\t\t\t\tmultiple: this.get( 'multiple' ),\n\t\t\t\tlibrary: {},\n\t\t\t\tstates: [],\n\t\t\t};\n\n\t\t\t// type\n\t\t\tif ( this.get( 'type' ) ) {\n\t\t\t\toptions.library.type = this.get( 'type' );\n\t\t\t}\n\n\t\t\t// type\n\t\t\tif ( this.get( 'library' ) === 'uploadedTo' ) {\n\t\t\t\toptions.library.uploadedTo = getPostID();\n\t\t\t}\n\n\t\t\t// attachment\n\t\t\tif ( this.get( 'attachment' ) ) {\n\t\t\t\toptions.library.post__in = [ this.get( 'attachment' ) ];\n\t\t\t}\n\n\t\t\t// button\n\t\t\tif ( this.get( 'button' ) ) {\n\t\t\t\toptions.button = {\n\t\t\t\t\ttext: this.get( 'button' ),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn options;\n\t\t},\n\n\t\taddFrameStates: function ( options ) {\n\t\t\t// create query\n\t\t\tvar Query = wp.media.query( options.library );\n\n\t\t\t// add _acfuploader\n\t\t\t// this is super wack!\n\t\t\t// if you add _acfuploader to the options.library args, new uploads will not be added to the library view.\n\t\t\t// this has been traced back to the wp.media.model.Query initialize function (which can't be overriden)\n\t\t\t// Adding any custom args will cause the Attahcments to not observe the uploader queue\n\t\t\t// To bypass this security issue, we add in the args AFTER the Query has been initialized\n\t\t\t// options.library._acfuploader = settings.field;\n\t\t\tif (\n\t\t\t\tthis.get( 'field' ) &&\n\t\t\t\tacf.isset( Query, 'mirroring', 'args' )\n\t\t\t) {\n\t\t\t\tQuery.mirroring.args._acfuploader = this.get( 'field' );\n\t\t\t}\n\n\t\t\t// add states\n\t\t\toptions.states.push(\n\t\t\t\t// main state\n\t\t\t\tnew wp.media.controller.Library( {\n\t\t\t\t\tlibrary: Query,\n\t\t\t\t\tmultiple: this.get( 'multiple' ),\n\t\t\t\t\ttitle: this.get( 'title' ),\n\t\t\t\t\tpriority: 20,\n\t\t\t\t\tfilterable: 'all',\n\t\t\t\t\teditable: true,\n\t\t\t\t\tallowLocalEdits: true,\n\t\t\t\t} )\n\t\t\t);\n\n\t\t\t// edit image functionality (added in WP 3.9)\n\t\t\tif ( acf.isset( wp, 'media', 'controller', 'EditImage' ) ) {\n\t\t\t\toptions.states.push( new wp.media.controller.EditImage() );\n\t\t\t}\n\t\t},\n\n\t\taddFrameEvents: function ( frame, options ) {\n\t\t\t// log all events\n\t\t\t//frame.on('all', function( e ) {\n\t\t\t//\tconsole.log( 'frame all: %o', e );\n\t\t\t//});\n\n\t\t\t// add class\n\t\t\tframe.on(\n\t\t\t\t'open',\n\t\t\t\tfunction () {\n\t\t\t\t\tthis.$el\n\t\t\t\t\t\t.closest( '.media-modal' )\n\t\t\t\t\t\t.addClass(\n\t\t\t\t\t\t\t'acf-media-modal -' + this.acf.get( 'mode' )\n\t\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tframe\n\t\t\t);\n\n\t\t\t// edit image view\n\t\t\t// source: media-views.js:2410 editImageContent()\n\t\t\tframe.on(\n\t\t\t\t'content:render:edit-image',\n\t\t\t\tfunction () {\n\t\t\t\t\tvar image = this.state().get( 'image' );\n\t\t\t\t\tvar view = new wp.media.view.EditImage( {\n\t\t\t\t\t\tmodel: image,\n\t\t\t\t\t\tcontroller: this,\n\t\t\t\t\t} ).render();\n\t\t\t\t\tthis.content.set( view );\n\n\t\t\t\t\t// after creating the wrapper view, load the actual editor via an ajax call\n\t\t\t\t\tview.loadEditor();\n\t\t\t\t},\n\t\t\t\tframe\n\t\t\t);\n\n\t\t\t// update toolbar button\n\t\t\t//frame.on( 'toolbar:create:select', function( toolbar ) {\n\t\t\t//\ttoolbar.view = new wp.media.view.Toolbar.Select({\n\t\t\t//\t\ttext: frame.options._button,\n\t\t\t//\t\tcontroller: this\n\t\t\t//\t});\n\t\t\t//}, frame );\n\n\t\t\t// on select\n\t\t\tframe.on( 'select', function () {\n\t\t\t\t// vars\n\t\t\t\tvar selection = frame.state().get( 'selection' );\n\n\t\t\t\t// if selecting images\n\t\t\t\tif ( selection ) {\n\t\t\t\t\t// loop\n\t\t\t\t\tselection.each( function ( attachment, i ) {\n\t\t\t\t\t\tframe.acf\n\t\t\t\t\t\t\t.get( 'select' )\n\t\t\t\t\t\t\t.apply( frame.acf, [ attachment, i ] );\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// on close\n\t\t\tframe.on( 'close', function () {\n\t\t\t\t// callback and remove\n\t\t\t\tsetTimeout( function () {\n\t\t\t\t\tframe.acf.get( 'close' ).apply( frame.acf );\n\t\t\t\t\tframe.acf.remove();\n\t\t\t\t}, 1 );\n\t\t\t} );\n\t\t},\n\t} );\n\n\t/**\n\t * acf.models.SelectMediaPopup\n\t *\n\t * description\n\t *\n\t * @date\t10/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.models.SelectMediaPopup = MediaPopup.extend( {\n\t\tid: 'SelectMediaPopup',\n\t\tsetup: function ( props ) {\n\t\t\t// default button\n\t\t\tif ( ! props.button ) {\n\t\t\t\tprops.button = acf._x( 'Select', 'verb' );\n\t\t\t}\n\n\t\t\t// parent\n\t\t\tMediaPopup.prototype.setup.apply( this, arguments );\n\t\t},\n\n\t\taddFrameEvents: function ( frame, options ) {\n\t\t\t// plupload\n\t\t\t// adds _acfuploader param to validate uploads\n\t\t\tif (\n\t\t\t\tacf.isset( _wpPluploadSettings, 'defaults', 'multipart_params' )\n\t\t\t) {\n\t\t\t\t// add _acfuploader so that Uploader will inherit\n\t\t\t\t_wpPluploadSettings.defaults.multipart_params._acfuploader = this.get(\n\t\t\t\t\t'field'\n\t\t\t\t);\n\n\t\t\t\t// remove acf_field so future Uploaders won't inherit\n\t\t\t\tframe.on( 'open', function () {\n\t\t\t\t\tdelete _wpPluploadSettings\n\t\t\t\t\t\t.defaults.multipart_params._acfuploader;\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// browse\n\t\t\tframe.on( 'content:activate:browse', function () {\n\t\t\t\t// vars\n\t\t\t\tvar toolbar = false;\n\n\t\t\t\t// populate above vars making sure to allow for failure\n\t\t\t\t// perhaps toolbar does not exist because the frame open is Upload Files\n\t\t\t\ttry {\n\t\t\t\t\ttoolbar = frame.content.get().toolbar;\n\t\t\t\t} catch ( e ) {\n\t\t\t\t\tconsole.log( e );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// callback\n\t\t\t\tframe.acf.customizeFilters.apply( frame.acf, [ toolbar ] );\n\t\t\t} );\n\n\t\t\t// parent\n\t\t\tMediaPopup.prototype.addFrameEvents.apply( this, arguments );\n\t\t},\n\n\t\tcustomizeFilters: function ( toolbar ) {\n\t\t\t// vars\n\t\t\tvar filters = toolbar.get( 'filters' );\n\n\t\t\t// image\n\t\t\tif ( this.get( 'type' ) == 'image' ) {\n\t\t\t\t// update all\n\t\t\t\tfilters.filters.all.text = acf.__( 'All images' );\n\n\t\t\t\t// remove some filters\n\t\t\t\tdelete filters.filters.audio;\n\t\t\t\tdelete filters.filters.video;\n\t\t\t\tdelete filters.filters.image;\n\n\t\t\t\t// update all filters to show images\n\t\t\t\t$.each( filters.filters, function ( i, filter ) {\n\t\t\t\t\tfilter.props.type = filter.props.type || 'image';\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// specific types\n\t\t\tif ( this.get( 'allowedTypes' ) ) {\n\t\t\t\t// convert \".jpg, .png\" into [\"jpg\", \"png\"]\n\t\t\t\tvar allowedTypes = this.get( 'allowedTypes' )\n\t\t\t\t\t.split( ' ' )\n\t\t\t\t\t.join( '' )\n\t\t\t\t\t.split( '.' )\n\t\t\t\t\t.join( '' )\n\t\t\t\t\t.split( ',' );\n\n\t\t\t\t// loop\n\t\t\t\tallowedTypes.map( function ( name ) {\n\t\t\t\t\t// get type\n\t\t\t\t\tvar mimeType = acf.getMimeType( name );\n\n\t\t\t\t\t// bail early if no type\n\t\t\t\t\tif ( ! mimeType ) return;\n\n\t\t\t\t\t// create new filter\n\t\t\t\t\tvar newFilter = {\n\t\t\t\t\t\ttext: mimeType,\n\t\t\t\t\t\tprops: {\n\t\t\t\t\t\t\tstatus: null,\n\t\t\t\t\t\t\ttype: mimeType,\n\t\t\t\t\t\t\tuploadedTo: null,\n\t\t\t\t\t\t\torderby: 'date',\n\t\t\t\t\t\t\torder: 'DESC',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tpriority: 20,\n\t\t\t\t\t};\n\n\t\t\t\t\t// append\n\t\t\t\t\tfilters.filters[ mimeType ] = newFilter;\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// uploaded to post\n\t\t\tif ( this.get( 'library' ) === 'uploadedTo' ) {\n\t\t\t\t// vars\n\t\t\t\tvar uploadedTo = this.frame.options.library.uploadedTo;\n\n\t\t\t\t// remove some filters\n\t\t\t\tdelete filters.filters.unattached;\n\t\t\t\tdelete filters.filters.uploaded;\n\n\t\t\t\t// add uploadedTo to filters\n\t\t\t\t$.each( filters.filters, function ( i, filter ) {\n\t\t\t\t\tfilter.text +=\n\t\t\t\t\t\t' (' + acf.__( 'Uploaded to this post' ) + ')';\n\t\t\t\t\tfilter.props.uploadedTo = uploadedTo;\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// add _acfuploader to filters\n\t\t\tvar field = this.get( 'field' );\n\t\t\t$.each( filters.filters, function ( k, filter ) {\n\t\t\t\tfilter.props._acfuploader = field;\n\t\t\t} );\n\n\t\t\t// add _acfuplaoder to search\n\t\t\tvar search = toolbar.get( 'search' );\n\t\t\tsearch.model.attributes._acfuploader = field;\n\n\t\t\t// render (custom function added to prototype)\n\t\t\tif ( filters.renderFilters ) {\n\t\t\t\tfilters.renderFilters();\n\t\t\t}\n\t\t},\n\t} );\n\n\t/**\n\t * acf.models.EditMediaPopup\n\t *\n\t * description\n\t *\n\t * @date\t10/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.models.EditMediaPopup = MediaPopup.extend( {\n\t\tid: 'SelectMediaPopup',\n\t\tsetup: function ( props ) {\n\t\t\t// default button\n\t\t\tif ( ! props.button ) {\n\t\t\t\tprops.button = acf._x( 'Update', 'verb' );\n\t\t\t}\n\n\t\t\t// parent\n\t\t\tMediaPopup.prototype.setup.apply( this, arguments );\n\t\t},\n\n\t\taddFrameEvents: function ( frame, options ) {\n\t\t\t// add class\n\t\t\tframe.on(\n\t\t\t\t'open',\n\t\t\t\tfunction () {\n\t\t\t\t\t// add class\n\t\t\t\t\tthis.$el\n\t\t\t\t\t\t.closest( '.media-modal' )\n\t\t\t\t\t\t.addClass( 'acf-expanded' );\n\n\t\t\t\t\t// set to browse\n\t\t\t\t\tif ( this.content.mode() != 'browse' ) {\n\t\t\t\t\t\tthis.content.mode( 'browse' );\n\t\t\t\t\t}\n\n\t\t\t\t\t// set selection\n\t\t\t\t\tvar state = this.state();\n\t\t\t\t\tvar selection = state.get( 'selection' );\n\t\t\t\t\tvar attachment = wp.media.attachment(\n\t\t\t\t\t\tframe.acf.get( 'attachment' )\n\t\t\t\t\t);\n\t\t\t\t\tselection.add( attachment );\n\t\t\t\t},\n\t\t\t\tframe\n\t\t\t);\n\n\t\t\t// parent\n\t\t\tMediaPopup.prototype.addFrameEvents.apply( this, arguments );\n\t\t},\n\t} );\n\n\t/**\n\t * customizePrototypes\n\t *\n\t * description\n\t *\n\t * @date\t11/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar customizePrototypes = new acf.Model( {\n\t\tid: 'customizePrototypes',\n\t\twait: 'ready',\n\n\t\tinitialize: function () {\n\t\t\t// bail early if no media views\n\t\t\tif ( ! acf.isset( window, 'wp', 'media', 'view' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// fix bug where CPT without \"editor\" does not set post.id setting which then prevents uploadedTo from working\n\t\t\tvar postID = getPostID();\n\t\t\tif (\n\t\t\t\tpostID &&\n\t\t\t\tacf.isset( wp, 'media', 'view', 'settings', 'post' )\n\t\t\t) {\n\t\t\t\twp.media.view.settings.post.id = postID;\n\t\t\t}\n\n\t\t\t// customize\n\t\t\tthis.customizeAttachmentsButton();\n\t\t\tthis.customizeAttachmentsRouter();\n\t\t\tthis.customizeAttachmentFilters();\n\t\t\tthis.customizeAttachmentCompat();\n\t\t\tthis.customizeAttachmentLibrary();\n\t\t},\n\n\t\tcustomizeAttachmentsButton: function () {\n\t\t\t// validate\n\t\t\tif ( ! acf.isset( wp, 'media', 'view', 'Button' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Extend\n\t\t\tvar Button = wp.media.view.Button;\n\t\t\twp.media.view.Button = Button.extend( {\n\t\t\t\t// Fix bug where \"Select\" button appears blank after editing an image.\n\t\t\t\t// Do this by simplifying Button initialize function and avoid deleting this.options.\n\t\t\t\tinitialize: function () {\n\t\t\t\t\tvar options = _.defaults( this.options, this.defaults );\n\t\t\t\t\tthis.model = new Backbone.Model( options );\n\t\t\t\t\tthis.listenTo( this.model, 'change', this.render );\n\t\t\t\t},\n\t\t\t} );\n\t\t},\n\n\t\tcustomizeAttachmentsRouter: function () {\n\t\t\t// validate\n\t\t\tif ( ! acf.isset( wp, 'media', 'view', 'Router' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar Parent = wp.media.view.Router;\n\n\t\t\t// extend\n\t\t\twp.media.view.Router = Parent.extend( {\n\t\t\t\taddExpand: function () {\n\t\t\t\t\t// vars\n\t\t\t\t\tvar $a = $(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t'' +\n\t\t\t\t\t\t\t\tacf.__( 'Expand Details' ) +\n\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t'' +\n\t\t\t\t\t\t\t\tacf.__( 'Collapse Details' ) +\n\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t].join( '' )\n\t\t\t\t\t);\n\n\t\t\t\t\t// add events\n\t\t\t\t\t$a.on( 'click', function ( e ) {\n\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\tvar $div = $( this ).closest( '.media-modal' );\n\t\t\t\t\t\tif ( $div.hasClass( 'acf-expanded' ) ) {\n\t\t\t\t\t\t\t$div.removeClass( 'acf-expanded' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$div.addClass( 'acf-expanded' );\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\n\t\t\t\t\t// append\n\t\t\t\t\tthis.$el.append( $a );\n\t\t\t\t},\n\n\t\t\t\tinitialize: function () {\n\t\t\t\t\t// initialize\n\t\t\t\t\tParent.prototype.initialize.apply( this, arguments );\n\n\t\t\t\t\t// add buttons\n\t\t\t\t\tthis.addExpand();\n\n\t\t\t\t\t// return\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\t\t\t} );\n\t\t},\n\n\t\tcustomizeAttachmentFilters: function () {\n\t\t\t// validate\n\t\t\tif (\n\t\t\t\t! acf.isset( wp, 'media', 'view', 'AttachmentFilters', 'All' )\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar Parent = wp.media.view.AttachmentFilters.All;\n\n\t\t\t// renderFilters\n\t\t\t// copied from media-views.js:6939\n\t\t\tParent.prototype.renderFilters = function () {\n\t\t\t\t// Build `' )\n\t\t\t\t\t\t\t\t\t.val( value )\n\t\t\t\t\t\t\t\t\t.html( filter.text )[ 0 ],\n\t\t\t\t\t\t\t\tpriority: filter.priority || 50,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}, this )\n\t\t\t\t\t\t.sortBy( 'priority' )\n\t\t\t\t\t\t.pluck( 'el' )\n\t\t\t\t\t\t.value()\n\t\t\t\t);\n\t\t\t};\n\t\t},\n\n\t\tcustomizeAttachmentCompat: function () {\n\t\t\t// validate\n\t\t\tif ( ! acf.isset( wp, 'media', 'view', 'AttachmentCompat' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar AttachmentCompat = wp.media.view.AttachmentCompat;\n\t\t\tvar timeout = false;\n\n\t\t\t// extend\n\t\t\twp.media.view.AttachmentCompat = AttachmentCompat.extend( {\n\t\t\t\trender: function () {\n\t\t\t\t\t// WP bug\n\t\t\t\t\t// When multiple media frames exist on the same page (WP content, WYSIWYG, image, file ),\n\t\t\t\t\t// WP creates multiple instances of this AttachmentCompat view.\n\t\t\t\t\t// Each instance will attempt to render when a new modal is created.\n\t\t\t\t\t// Use a property to avoid this and only render once per instance.\n\t\t\t\t\tif ( this.rendered ) {\n\t\t\t\t\t\treturn this;\n\t\t\t\t\t}\n\n\t\t\t\t\t// render HTML\n\t\t\t\t\tAttachmentCompat.prototype.render.apply( this, arguments );\n\n\t\t\t\t\t// when uploading, render is called twice.\n\t\t\t\t\t// ignore first render by checking for #acf-form-data element\n\t\t\t\t\tif ( ! this.$( '#acf-form-data' ).length ) {\n\t\t\t\t\t\treturn this;\n\t\t\t\t\t}\n\n\t\t\t\t\t// clear timeout\n\t\t\t\t\tclearTimeout( timeout );\n\n\t\t\t\t\t// setTimeout\n\t\t\t\t\ttimeout = setTimeout(\n\t\t\t\t\t\t$.proxy( function () {\n\t\t\t\t\t\t\tthis.rendered = true;\n\t\t\t\t\t\t\tacf.doAction( 'append', this.$el );\n\t\t\t\t\t\t}, this ),\n\t\t\t\t\t\t50\n\t\t\t\t\t);\n\n\t\t\t\t\t// return\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\n\t\t\t\tsave: function ( event ) {\n\t\t\t\t\tvar data = {};\n\n\t\t\t\t\tif ( event ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t}\n\n\t\t\t\t\t//_.each( this.$el.serializeArray(), function( pair ) {\n\t\t\t\t\t//\tdata[ pair.name ] = pair.value;\n\t\t\t\t\t//});\n\n\t\t\t\t\t// Serialize data more thoroughly to allow chckbox inputs to save.\n\t\t\t\t\tdata = acf.serializeForAjax( this.$el );\n\n\t\t\t\t\tthis.controller.trigger( 'attachment:compat:waiting', [\n\t\t\t\t\t\t'waiting',\n\t\t\t\t\t] );\n\t\t\t\t\tthis.model\n\t\t\t\t\t\t.saveCompat( data )\n\t\t\t\t\t\t.always( _.bind( this.postSave, this ) );\n\t\t\t\t},\n\t\t\t} );\n\t\t},\n\n\t\tcustomizeAttachmentLibrary: function () {\n\t\t\t// validate\n\t\t\tif ( ! acf.isset( wp, 'media', 'view', 'Attachment', 'Library' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar AttachmentLibrary = wp.media.view.Attachment.Library;\n\n\t\t\t// extend\n\t\t\twp.media.view.Attachment.Library = AttachmentLibrary.extend( {\n\t\t\t\trender: function () {\n\t\t\t\t\t// vars\n\t\t\t\t\tvar popup = acf.isget( this, 'controller', 'acf' );\n\t\t\t\t\tvar attributes = acf.isget( this, 'model', 'attributes' );\n\n\t\t\t\t\t// check vars exist to avoid errors\n\t\t\t\t\tif ( popup && attributes ) {\n\t\t\t\t\t\t// show errors\n\t\t\t\t\t\tif ( attributes.acf_errors ) {\n\t\t\t\t\t\t\tthis.$el.addClass( 'acf-disabled' );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// disable selected\n\t\t\t\t\t\tvar selected = popup.get( 'selected' );\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tselected &&\n\t\t\t\t\t\t\tselected.indexOf( attributes.id ) > -1\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tthis.$el.addClass( 'acf-selected' );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// render\n\t\t\t\t\treturn AttachmentLibrary.prototype.render.apply(\n\t\t\t\t\t\tthis,\n\t\t\t\t\t\targuments\n\t\t\t\t\t);\n\t\t\t\t},\n\n\t\t\t\t/*\n\t\t\t\t * toggleSelection\n\t\t\t\t *\n\t\t\t\t * This function is called before an attachment is selected\n\t\t\t\t * A good place to check for errors and prevent the 'select' function from being fired\n\t\t\t\t *\n\t\t\t\t * @type\tfunction\n\t\t\t\t * @date\t29/09/2016\n\t\t\t\t * @since\t5.4.0\n\t\t\t\t *\n\t\t\t\t * @param\toptions (object)\n\t\t\t\t * @return\tn/a\n\t\t\t\t */\n\n\t\t\t\ttoggleSelection: function ( options ) {\n\t\t\t\t\t// vars\n\t\t\t\t\t// source: wp-includes/js/media-views.js:2880\n\t\t\t\t\tvar collection = this.collection,\n\t\t\t\t\t\tselection = this.options.selection,\n\t\t\t\t\t\tmodel = this.model,\n\t\t\t\t\t\tsingle = selection.single();\n\n\t\t\t\t\t// vars\n\t\t\t\t\tvar frame = this.controller;\n\t\t\t\t\tvar errors = acf.isget(\n\t\t\t\t\t\tthis,\n\t\t\t\t\t\t'model',\n\t\t\t\t\t\t'attributes',\n\t\t\t\t\t\t'acf_errors'\n\t\t\t\t\t);\n\t\t\t\t\tvar $sidebar = frame.$el.find(\n\t\t\t\t\t\t'.media-frame-content .media-sidebar'\n\t\t\t\t\t);\n\n\t\t\t\t\t// remove previous error\n\t\t\t\t\t$sidebar.children( '.acf-selection-error' ).remove();\n\n\t\t\t\t\t// show attachment details\n\t\t\t\t\t$sidebar.children().removeClass( 'acf-hidden' );\n\n\t\t\t\t\t// add message\n\t\t\t\t\tif ( frame && errors ) {\n\t\t\t\t\t\t// vars\n\t\t\t\t\t\tvar filename = acf.isget(\n\t\t\t\t\t\t\tthis,\n\t\t\t\t\t\t\t'model',\n\t\t\t\t\t\t\t'attributes',\n\t\t\t\t\t\t\t'filename'\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// hide attachment details\n\t\t\t\t\t\t// Gallery field continues to show previously selected attachment...\n\t\t\t\t\t\t$sidebar.children().addClass( 'acf-hidden' );\n\n\t\t\t\t\t\t// append message\n\t\t\t\t\t\t$sidebar.prepend(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t\t\t'' +\n\t\t\t\t\t\t\t\t\tacf.__( 'Restricted' ) +\n\t\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\t'' +\n\t\t\t\t\t\t\t\t\tfilename +\n\t\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\t'' +\n\t\t\t\t\t\t\t\t\terrors +\n\t\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t\t].join( '' )\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// reset selection (unselects all attachments)\n\t\t\t\t\t\tselection.reset();\n\n\t\t\t\t\t\t// set single (attachment displayed in sidebar)\n\t\t\t\t\t\tselection.single( model );\n\n\t\t\t\t\t\t// return and prevent 'select' form being fired\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// return\n\t\t\t\t\treturn AttachmentLibrary.prototype.toggleSelection.apply(\n\t\t\t\t\t\tthis,\n\t\t\t\t\t\targuments\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t} );\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\t/**\n\t * postboxManager\n\t *\n\t * Manages postboxes on the screen.\n\t *\n\t * @date\t25/5/19\n\t * @since\t5.8.1\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\tvar postboxManager = new acf.Model( {\n\t\twait: 'prepare',\n\t\tpriority: 1,\n\t\tinitialize: function () {\n\t\t\t( acf.get( 'postboxes' ) || [] ).map( acf.newPostbox );\n\t\t},\n\t} );\n\n\t/**\n\t * acf.getPostbox\n\t *\n\t * Returns a postbox instance.\n\t *\n\t * @date\t23/9/18\n\t * @since\t5.7.7\n\t *\n\t * @param\tmixed $el Either a jQuery element or the postbox id.\n\t * @return\tobject\n\t */\n\tacf.getPostbox = function ( $el ) {\n\t\t// allow string parameter\n\t\tif ( typeof arguments[ 0 ] == 'string' ) {\n\t\t\t$el = $( '#' + arguments[ 0 ] );\n\t\t}\n\n\t\t// return instance\n\t\treturn acf.getInstance( $el );\n\t};\n\n\t/**\n\t * acf.getPostboxes\n\t *\n\t * Returns an array of postbox instances.\n\t *\n\t * @date\t23/9/18\n\t * @since\t5.7.7\n\t *\n\t * @param\tvoid\n\t * @return\tarray\n\t */\n\tacf.getPostboxes = function () {\n\t\treturn acf.getInstances( $( '.acf-postbox' ) );\n\t};\n\n\t/**\n\t * acf.newPostbox\n\t *\n\t * Returns a new postbox instance for the given props.\n\t *\n\t * @date\t20/9/18\n\t * @since\t5.7.6\n\t *\n\t * @param\tobject props The postbox properties.\n\t * @return\tobject\n\t */\n\tacf.newPostbox = function ( props ) {\n\t\treturn new acf.models.Postbox( props );\n\t};\n\n\t/**\n\t * acf.models.Postbox\n\t *\n\t * The postbox model.\n\t *\n\t * @date\t20/9/18\n\t * @since\t5.7.6\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\tacf.models.Postbox = acf.Model.extend( {\n\t\tdata: {\n\t\t\tid: '',\n\t\t\tkey: '',\n\t\t\tstyle: 'default',\n\t\t\tlabel: 'top',\n\t\t\tedit: '',\n\t\t},\n\n\t\tsetup: function ( props ) {\n\t\t\t// compatibilty\n\t\t\tif ( props.editLink ) {\n\t\t\t\tprops.edit = props.editLink;\n\t\t\t}\n\n\t\t\t// extend data\n\t\t\t$.extend( this.data, props );\n\n\t\t\t// set $el\n\t\t\tthis.$el = this.$postbox();\n\t\t},\n\n\t\t$postbox: function () {\n\t\t\treturn $( '#' + this.get( 'id' ) );\n\t\t},\n\n\t\t$hide: function () {\n\t\t\treturn $( '#' + this.get( 'id' ) + '-hide' );\n\t\t},\n\n\t\t$hideLabel: function () {\n\t\t\treturn this.$hide().parent();\n\t\t},\n\n\t\t$hndle: function () {\n\t\t\treturn this.$( '> .hndle' );\n\t\t},\n\n\t\t$handleActions: function () {\n\t\t\treturn this.$( '> .postbox-header .handle-actions' );\n\t\t},\n\n\t\t$inside: function () {\n\t\t\treturn this.$( '> .inside' );\n\t\t},\n\n\t\tisVisible: function () {\n\t\t\treturn this.$el.hasClass( 'acf-hidden' );\n\t\t},\n\n\t\tisHiddenByScreenOptions: function () {\n\t\t\treturn (\n\t\t\t\tthis.$el.hasClass( 'hide-if-js' ) ||\n\t\t\t\tthis.$el.css( 'display' ) == 'none'\n\t\t\t);\n\t\t},\n\n\t\tinitialize: function () {\n\t\t\t// Add default class.\n\t\t\tthis.$el.addClass( 'acf-postbox' );\n\n\t\t\t// Add field group style class (ignore in block editor).\n\t\t\tif ( acf.get( 'editor' ) !== 'block' ) {\n\t\t\t\tvar style = this.get( 'style' );\n\t\t\t\tif ( style !== 'default' ) {\n\t\t\t\t\tthis.$el.addClass( style );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Add .inside class.\n\t\t\tthis.$inside()\n\t\t\t\t.addClass( 'acf-fields' )\n\t\t\t\t.addClass( '-' + this.get( 'label' ) );\n\n\t\t\t// Append edit link.\n\t\t\tvar edit = this.get( 'edit' );\n\t\t\tif ( edit ) {\n\t\t\t\tvar html =\n\t\t\t\t\t'';\n\t\t\t\tvar $handleActions = this.$handleActions();\n\t\t\t\tif ( $handleActions.length ) {\n\t\t\t\t\t$handleActions.prepend( html );\n\t\t\t\t} else {\n\t\t\t\t\tthis.$hndle().append( html );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Show postbox.\n\t\t\tthis.show();\n\t\t},\n\n\t\tshow: function () {\n\t\t\t// If disabled by screen options, set checked to false and return.\n\t\t\tif ( this.$el.hasClass( 'hide-if-js' ) ) {\n\t\t\t\tthis.$hide().prop( 'checked', false );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Show label.\n\t\t\tthis.$hideLabel().show();\n\n\t\t\t// toggle on checkbox\n\t\t\tthis.$hide().prop( 'checked', true );\n\n\t\t\t// Show postbox\n\t\t\tthis.$el.show().removeClass( 'acf-hidden' );\n\n\t\t\t// Do action.\n\t\t\tacf.doAction( 'show_postbox', this );\n\t\t},\n\n\t\tenable: function () {\n\t\t\tacf.enable( this.$el, 'postbox' );\n\t\t},\n\n\t\tshowEnable: function () {\n\t\t\tthis.enable();\n\t\t\tthis.show();\n\t\t},\n\n\t\thide: function () {\n\t\t\t// Hide label.\n\t\t\tthis.$hideLabel().hide();\n\n\t\t\t// Hide postbox\n\t\t\tthis.$el.hide().addClass( 'acf-hidden' );\n\n\t\t\t// Do action.\n\t\t\tacf.doAction( 'hide_postbox', this );\n\t\t},\n\n\t\tdisable: function () {\n\t\t\tacf.disable( this.$el, 'postbox' );\n\t\t},\n\n\t\thideDisable: function () {\n\t\t\tthis.disable();\n\t\t\tthis.hide();\n\t\t},\n\n\t\thtml: function ( html ) {\n\t\t\t// Update HTML.\n\t\t\tthis.$inside().html( html );\n\n\t\t\t// Do action.\n\t\t\tacf.doAction( 'append', this.$el );\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tacf.screen = new acf.Model( {\n\t\tactive: true,\n\n\t\txhr: false,\n\n\t\ttimeout: false,\n\n\t\twait: 'load',\n\n\t\tevents: {\n\t\t\t'change #page_template': 'onChange',\n\t\t\t'change #parent_id': 'onChange',\n\t\t\t'change #post-formats-select': 'onChange',\n\t\t\t'change .categorychecklist': 'onChange',\n\t\t\t'change .tagsdiv': 'onChange',\n\t\t\t'change .acf-taxonomy-field[data-save=\"1\"]': 'onChange',\n\t\t\t'change #product-type': 'onChange',\n\t\t},\n\n\t\tisPost: function () {\n\t\t\treturn acf.get( 'screen' ) === 'post';\n\t\t},\n\n\t\tisUser: function () {\n\t\t\treturn acf.get( 'screen' ) === 'user';\n\t\t},\n\n\t\tisTaxonomy: function () {\n\t\t\treturn acf.get( 'screen' ) === 'taxonomy';\n\t\t},\n\n\t\tisAttachment: function () {\n\t\t\treturn acf.get( 'screen' ) === 'attachment';\n\t\t},\n\n\t\tisNavMenu: function () {\n\t\t\treturn acf.get( 'screen' ) === 'nav_menu';\n\t\t},\n\n\t\tisWidget: function () {\n\t\t\treturn acf.get( 'screen' ) === 'widget';\n\t\t},\n\n\t\tisComment: function () {\n\t\t\treturn acf.get( 'screen' ) === 'comment';\n\t\t},\n\n\t\tgetPageTemplate: function () {\n\t\t\tvar $el = $( '#page_template' );\n\t\t\treturn $el.length ? $el.val() : null;\n\t\t},\n\n\t\tgetPageParent: function ( e, $el ) {\n\t\t\tvar $el = $( '#parent_id' );\n\t\t\treturn $el.length ? $el.val() : null;\n\t\t},\n\n\t\tgetPageType: function ( e, $el ) {\n\t\t\treturn this.getPageParent() ? 'child' : 'parent';\n\t\t},\n\n\t\tgetPostType: function () {\n\t\t\treturn $( '#post_type' ).val();\n\t\t},\n\n\t\tgetPostFormat: function ( e, $el ) {\n\t\t\tvar $el = $( '#post-formats-select input:checked' );\n\t\t\tif ( $el.length ) {\n\t\t\t\tvar val = $el.val();\n\t\t\t\treturn val == '0' ? 'standard' : val;\n\t\t\t}\n\t\t\treturn null;\n\t\t},\n\n\t\tgetPostCoreTerms: function () {\n\t\t\t// vars\n\t\t\tvar terms = {};\n\n\t\t\t// serialize WP taxonomy postboxes\n\t\t\tvar data = acf.serialize( $( '.categorydiv, .tagsdiv' ) );\n\n\t\t\t// use tax_input (tag, custom-taxonomy) when possible.\n\t\t\t// this data is already formatted in taxonomy => [terms].\n\t\t\tif ( data.tax_input ) {\n\t\t\t\tterms = data.tax_input;\n\t\t\t}\n\n\t\t\t// append \"category\" which uses a different name\n\t\t\tif ( data.post_category ) {\n\t\t\t\tterms.category = data.post_category;\n\t\t\t}\n\n\t\t\t// convert any string values (tags) into array format\n\t\t\tfor ( var tax in terms ) {\n\t\t\t\tif ( ! acf.isArray( terms[ tax ] ) ) {\n\t\t\t\t\tterms[ tax ] = terms[ tax ].split( /,[\\s]?/ );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn terms;\n\t\t},\n\n\t\tgetPostTerms: function () {\n\t\t\t// Get core terms.\n\t\t\tvar terms = this.getPostCoreTerms();\n\n\t\t\t// loop over taxonomy fields and add their values\n\t\t\tacf.getFields( { type: 'taxonomy' } ).map( function ( field ) {\n\t\t\t\t// ignore fields that don't save\n\t\t\t\tif ( ! field.get( 'save' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// vars\n\t\t\t\tvar val = field.val();\n\t\t\t\tvar tax = field.get( 'taxonomy' );\n\n\t\t\t\t// check val\n\t\t\t\tif ( val ) {\n\t\t\t\t\t// ensure terms exists\n\t\t\t\t\tterms[ tax ] = terms[ tax ] || [];\n\n\t\t\t\t\t// ensure val is an array\n\t\t\t\t\tval = acf.isArray( val ) ? val : [ val ];\n\n\t\t\t\t\t// append\n\t\t\t\t\tterms[ tax ] = terms[ tax ].concat( val );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// add WC product type\n\t\t\tif ( ( productType = this.getProductType() ) !== null ) {\n\t\t\t\tterms.product_type = [ productType ];\n\t\t\t}\n\n\t\t\t// remove duplicate values\n\t\t\tfor ( var tax in terms ) {\n\t\t\t\tterms[ tax ] = acf.uniqueArray( terms[ tax ] );\n\t\t\t}\n\n\t\t\t// return\n\t\t\treturn terms;\n\t\t},\n\n\t\tgetProductType: function () {\n\t\t\tvar $el = $( '#product-type' );\n\t\t\treturn $el.length ? $el.val() : null;\n\t\t},\n\n\t\tcheck: function () {\n\t\t\t// bail early if not for post\n\t\t\tif ( acf.get( 'screen' ) !== 'post' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// abort XHR if is already loading AJAX data\n\t\t\tif ( this.xhr ) {\n\t\t\t\tthis.xhr.abort();\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar ajaxData = acf.parseArgs( this.data, {\n\t\t\t\taction: 'acf/ajax/check_screen',\n\t\t\t\tscreen: acf.get( 'screen' ),\n\t\t\t\texists: [],\n\t\t\t} );\n\n\t\t\t// post id\n\t\t\tif ( this.isPost() ) {\n\t\t\t\tajaxData.post_id = acf.get( 'post_id' );\n\t\t\t}\n\n\t\t\t// post type\n\t\t\tif ( ( postType = this.getPostType() ) !== null ) {\n\t\t\t\tajaxData.post_type = postType;\n\t\t\t}\n\n\t\t\t// page template\n\t\t\tif ( ( pageTemplate = this.getPageTemplate() ) !== null ) {\n\t\t\t\tajaxData.page_template = pageTemplate;\n\t\t\t}\n\n\t\t\t// page parent\n\t\t\tif ( ( pageParent = this.getPageParent() ) !== null ) {\n\t\t\t\tajaxData.page_parent = pageParent;\n\t\t\t}\n\n\t\t\t// page type\n\t\t\tif ( ( pageType = this.getPageType() ) !== null ) {\n\t\t\t\tajaxData.page_type = pageType;\n\t\t\t}\n\n\t\t\t// post format\n\t\t\tif ( ( postFormat = this.getPostFormat() ) !== null ) {\n\t\t\t\tajaxData.post_format = postFormat;\n\t\t\t}\n\n\t\t\t// post terms\n\t\t\tif ( ( postTerms = this.getPostTerms() ) !== null ) {\n\t\t\t\tajaxData.post_terms = postTerms;\n\t\t\t}\n\n\t\t\t// add array of existing postboxes to increase performance and reduce JSON HTML\n\t\t\tacf.getPostboxes().map( function ( postbox ) {\n\t\t\t\tajaxData.exists.push( postbox.get( 'key' ) );\n\t\t\t} );\n\n\t\t\t// filter\n\t\t\tajaxData = acf.applyFilters( 'check_screen_args', ajaxData );\n\n\t\t\t// success\n\t\t\tvar onSuccess = function ( json ) {\n\t\t\t\t// Render post screen.\n\t\t\t\tif ( acf.get( 'screen' ) == 'post' ) {\n\t\t\t\t\tthis.renderPostScreen( json );\n\n\t\t\t\t\t// Render user screen.\n\t\t\t\t} else if ( acf.get( 'screen' ) == 'user' ) {\n\t\t\t\t\tthis.renderUserScreen( json );\n\t\t\t\t}\n\n\t\t\t\t// action\n\t\t\t\tacf.doAction( 'check_screen_complete', json, ajaxData );\n\t\t\t};\n\n\t\t\t// ajax\n\t\t\tthis.xhr = $.ajax( {\n\t\t\t\turl: acf.get( 'ajaxurl' ),\n\t\t\t\tdata: acf.prepareForAjax( ajaxData ),\n\t\t\t\ttype: 'post',\n\t\t\t\tdataType: 'json',\n\t\t\t\tcontext: this,\n\t\t\t\tsuccess: onSuccess,\n\t\t\t} );\n\t\t},\n\n\t\tonChange: function ( e, $el ) {\n\t\t\tthis.setTimeout( this.check, 1 );\n\t\t},\n\n\t\trenderPostScreen: function ( data ) {\n\t\t\t// Helper function to copy events\n\t\t\tvar copyEvents = function ( $from, $to ) {\n\t\t\t\tvar events = $._data( $from[ 0 ] ).events;\n\t\t\t\tfor ( var type in events ) {\n\t\t\t\t\tfor ( var i = 0; i < events[ type ].length; i++ ) {\n\t\t\t\t\t\t$to.on( type, events[ type ][ i ].handler );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t// Helper function to sort metabox.\n\t\t\tvar sortMetabox = function ( id, ids ) {\n\t\t\t\t// Find position of id within ids.\n\t\t\t\tvar index = ids.indexOf( id );\n\n\t\t\t\t// Bail early if index not found.\n\t\t\t\tif ( index == -1 ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\t// Loop over metaboxes behind (in reverse order).\n\t\t\t\tfor ( var i = index - 1; i >= 0; i-- ) {\n\t\t\t\t\tif ( $( '#' + ids[ i ] ).length ) {\n\t\t\t\t\t\treturn $( '#' + ids[ i ] ).after( $( '#' + id ) );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Loop over metaboxes infront.\n\t\t\t\tfor ( var i = index + 1; i < ids.length; i++ ) {\n\t\t\t\t\tif ( $( '#' + ids[ i ] ).length ) {\n\t\t\t\t\t\treturn $( '#' + ids[ i ] ).before( $( '#' + id ) );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Return false if not sorted.\n\t\t\t\treturn false;\n\t\t\t};\n\n\t\t\t// Keep track of visible and hidden postboxes.\n\t\t\tdata.visible = [];\n\t\t\tdata.hidden = [];\n\n\t\t\t// Show these postboxes.\n\t\t\tdata.results = data.results.map( function ( result, i ) {\n\t\t\t\t// vars\n\t\t\t\tvar postbox = acf.getPostbox( result.id );\n\n\t\t\t\t// Prevent \"acf_after_title\" position in Block Editor.\n\t\t\t\tif (\n\t\t\t\t\tacf.isGutenberg() &&\n\t\t\t\t\tresult.position == 'acf_after_title'\n\t\t\t\t) {\n\t\t\t\t\tresult.position = 'normal';\n\t\t\t\t}\n\n\t\t\t\t// Create postbox if doesn't exist.\n\t\t\t\tif ( ! postbox ) {\n\t\t\t\t\tvar wpMinorVersion = parseFloat( acf.get( 'wp_version' ) );\n\t\t\t\t\tif ( wpMinorVersion >= 5.5 ) {\n\t\t\t\t\t\tvar postboxHeader = [\n\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t\t'

      ',\n\t\t\t\t\t\t\t'' + acf.escHtml( result.title ) + '',\n\t\t\t\t\t\t\t'

      ',\n\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t].join( '' );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar postboxHeader = [\n\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t'

      ',\n\t\t\t\t\t\t\t'' + acf.escHtml( result.title ) + '',\n\t\t\t\t\t\t\t'

      ',\n\t\t\t\t\t\t].join( '' );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Ensure result.classes is set.\n\t\t\t\t\tif ( ! result.classes ) result.classes = '';\n\n\t\t\t\t\t// Create it.\n\t\t\t\t\tvar $postbox = $(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t\tpostboxHeader,\n\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t\tresult.html,\n\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t\t'
      ',\n\t\t\t\t\t\t].join( '' )\n\t\t\t\t\t);\n\n\t\t\t\t\t// Create new hide toggle.\n\t\t\t\t\tif ( $( '#adv-settings' ).length ) {\n\t\t\t\t\t\tvar $prefs = $( '#adv-settings .metabox-prefs' );\n\t\t\t\t\t\tvar $label = $(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t].join( '' )\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// Copy default WP events onto checkbox.\n\t\t\t\t\t\tcopyEvents(\n\t\t\t\t\t\t\t$prefs.find( 'input' ).first(),\n\t\t\t\t\t\t\t$label.find( 'input' )\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// Append hide label\n\t\t\t\t\t\t$prefs.append( $label );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Copy default WP events onto metabox.\n\t\t\t\t\tif ( $( '.postbox' ).length ) {\n\t\t\t\t\t\tcopyEvents(\n\t\t\t\t\t\t\t$( '.postbox .handlediv' ).first(),\n\t\t\t\t\t\t\t$postbox.children( '.handlediv' )\n\t\t\t\t\t\t);\n\t\t\t\t\t\tcopyEvents(\n\t\t\t\t\t\t\t$( '.postbox .hndle' ).first(),\n\t\t\t\t\t\t\t$postbox.children( '.hndle' )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Append metabox to the bottom of \"side-sortables\".\n\t\t\t\t\tif ( result.position === 'side' ) {\n\t\t\t\t\t\t$( '#' + result.position + '-sortables' ).append(\n\t\t\t\t\t\t\t$postbox\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// Prepend metabox to the top of \"normal-sortbables\".\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$( '#' + result.position + '-sortables' ).prepend(\n\t\t\t\t\t\t\t$postbox\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Position metabox amongst existing ACF metaboxes within the same location.\n\t\t\t\t\tvar order = [];\n\t\t\t\t\tdata.results.map( function ( _result ) {\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tresult.position === _result.position &&\n\t\t\t\t\t\t\t$(\n\t\t\t\t\t\t\t\t'#' +\n\t\t\t\t\t\t\t\t\tresult.position +\n\t\t\t\t\t\t\t\t\t'-sortables #' +\n\t\t\t\t\t\t\t\t\t_result.id\n\t\t\t\t\t\t\t).length\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\torder.push( _result.id );\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t\tsortMetabox( result.id, order );\n\n\t\t\t\t\t// Check 'sorted' for user preference.\n\t\t\t\t\tif ( data.sorted ) {\n\t\t\t\t\t\t// Loop over each position (acf_after_title, side, normal).\n\t\t\t\t\t\tfor ( var position in data.sorted ) {\n\t\t\t\t\t\t\t// Explode string into array of ids.\n\t\t\t\t\t\t\tvar order = data.sorted[ position ].split( ',' );\n\n\t\t\t\t\t\t\t// Position metabox relative to order.\n\t\t\t\t\t\t\tif ( sortMetabox( result.id, order ) ) {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Initalize it (modifies HTML).\n\t\t\t\t\tpostbox = acf.newPostbox( result );\n\n\t\t\t\t\t// Trigger action.\n\t\t\t\t\tacf.doAction( 'append', $postbox );\n\t\t\t\t\tacf.doAction( 'append_postbox', postbox );\n\t\t\t\t}\n\n\t\t\t\t// show postbox\n\t\t\t\tpostbox.showEnable();\n\n\t\t\t\t// append\n\t\t\t\tdata.visible.push( result.id );\n\n\t\t\t\t// Return result (may have changed).\n\t\t\t\treturn result;\n\t\t\t} );\n\n\t\t\t// Hide these postboxes.\n\t\t\tacf.getPostboxes().map( function ( postbox ) {\n\t\t\t\tif ( data.visible.indexOf( postbox.get( 'id' ) ) === -1 ) {\n\t\t\t\t\t// Hide postbox.\n\t\t\t\t\tpostbox.hideDisable();\n\n\t\t\t\t\t// Append to data.\n\t\t\t\t\tdata.hidden.push( postbox.get( 'id' ) );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Update style.\n\t\t\t$( '#acf-style' ).html( data.style );\n\n\t\t\t// Do action.\n\t\t\tacf.doAction( 'refresh_post_screen', data );\n\t\t},\n\n\t\trenderUserScreen: function ( json ) {},\n\t} );\n\n\t/**\n\t * gutenScreen\n\t *\n\t * Adds compatibility with the Gutenberg edit screen.\n\t *\n\t * @date\t11/12/18\n\t * @since\t5.8.0\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\tvar gutenScreen = new acf.Model( {\n\t\t// Keep a reference to the most recent post attributes.\n\t\tpostEdits: {},\n\n\t\t// Wait until assets have been loaded.\n\t\twait: 'prepare',\n\n\t\tinitialize: function () {\n\t\t\t// Bail early if not Gutenberg.\n\t\t\tif ( ! acf.isGutenberg() ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Listen for changes (use debounced version as this can fires often).\n\t\t\twp.data.subscribe( acf.debounce( this.onChange ).bind( this ) );\n\n\t\t\t// Customize \"acf.screen.get\" functions.\n\t\t\tacf.screen.getPageTemplate = this.getPageTemplate;\n\t\t\tacf.screen.getPageParent = this.getPageParent;\n\t\t\tacf.screen.getPostType = this.getPostType;\n\t\t\tacf.screen.getPostFormat = this.getPostFormat;\n\t\t\tacf.screen.getPostCoreTerms = this.getPostCoreTerms;\n\n\t\t\t// Disable unload\n\t\t\tacf.unload.disable();\n\n\t\t\t// Refresh metaboxes since WP 5.3.\n\t\t\tvar wpMinorVersion = parseFloat( acf.get( 'wp_version' ) );\n\t\t\tif ( wpMinorVersion >= 5.3 ) {\n\t\t\t\tthis.addAction(\n\t\t\t\t\t'refresh_post_screen',\n\t\t\t\t\tthis.onRefreshPostScreen\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Trigger \"refresh\" after WP has moved metaboxes into place.\n\t\t\twp.domReady( acf.refresh );\n\t\t},\n\n\t\tonChange: function () {\n\t\t\t// Determine attributes that can trigger a refresh.\n\t\t\tvar attributes = [ 'template', 'parent', 'format' ];\n\n\t\t\t// Append taxonomy attribute names to this list.\n\t\t\t( wp.data.select( 'core' ).getTaxonomies() || [] ).map( function (\n\t\t\t\ttaxonomy\n\t\t\t) {\n\t\t\t\tattributes.push( taxonomy.rest_base );\n\t\t\t} );\n\n\t\t\t// Get relevant current post edits.\n\t\t\tvar _postEdits = wp.data.select( 'core/editor' ).getPostEdits();\n\t\t\tvar postEdits = {};\n\t\t\tattributes.map( function ( k ) {\n\t\t\t\tif ( _postEdits[ k ] !== undefined ) {\n\t\t\t\t\tpostEdits[ k ] = _postEdits[ k ];\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Detect change.\n\t\t\tif (\n\t\t\t\tJSON.stringify( postEdits ) !== JSON.stringify( this.postEdits )\n\t\t\t) {\n\t\t\t\tthis.postEdits = postEdits;\n\n\t\t\t\t// Check screen.\n\t\t\t\tacf.screen.check();\n\t\t\t}\n\t\t},\n\n\t\tgetPageTemplate: function () {\n\t\t\treturn wp.data\n\t\t\t\t.select( 'core/editor' )\n\t\t\t\t.getEditedPostAttribute( 'template' );\n\t\t},\n\n\t\tgetPageParent: function ( e, $el ) {\n\t\t\treturn wp.data\n\t\t\t\t.select( 'core/editor' )\n\t\t\t\t.getEditedPostAttribute( 'parent' );\n\t\t},\n\n\t\tgetPostType: function () {\n\t\t\treturn wp.data\n\t\t\t\t.select( 'core/editor' )\n\t\t\t\t.getEditedPostAttribute( 'type' );\n\t\t},\n\n\t\tgetPostFormat: function ( e, $el ) {\n\t\t\treturn wp.data\n\t\t\t\t.select( 'core/editor' )\n\t\t\t\t.getEditedPostAttribute( 'format' );\n\t\t},\n\n\t\tgetPostCoreTerms: function () {\n\t\t\t// vars\n\t\t\tvar terms = {};\n\n\t\t\t// Loop over taxonomies.\n\t\t\tvar taxonomies = wp.data.select( 'core' ).getTaxonomies() || [];\n\t\t\ttaxonomies.map( function ( taxonomy ) {\n\t\t\t\t// Append selected taxonomies to terms object.\n\t\t\t\tvar postTerms = wp.data\n\t\t\t\t\t.select( 'core/editor' )\n\t\t\t\t\t.getEditedPostAttribute( taxonomy.rest_base );\n\t\t\t\tif ( postTerms ) {\n\t\t\t\t\tterms[ taxonomy.slug ] = postTerms;\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// return\n\t\t\treturn terms;\n\t\t},\n\n\t\t/**\n\t\t * onRefreshPostScreen\n\t\t *\n\t\t * Fires after the Post edit screen metaboxs are refreshed to update the Block Editor API state.\n\t\t *\n\t\t * @date\t11/11/19\n\t\t * @since\t5.8.7\n\t\t *\n\t\t * @param\tobject data The \"check_screen\" JSON response data.\n\t\t * @return\tvoid\n\t\t */\n\t\tonRefreshPostScreen: function ( data ) {\n\t\t\t// Extract vars.\n\t\t\tvar select = wp.data.select( 'core/edit-post' );\n\t\t\tvar dispatch = wp.data.dispatch( 'core/edit-post' );\n\n\t\t\t// Load current metabox locations and data.\n\t\t\tvar locations = {};\n\t\t\tselect.getActiveMetaBoxLocations().map( function ( location ) {\n\t\t\t\tlocations[ location ] = select.getMetaBoxesPerLocation(\n\t\t\t\t\tlocation\n\t\t\t\t);\n\t\t\t} );\n\n\t\t\t// Generate flat array of existing ids.\n\t\t\tvar ids = [];\n\t\t\tfor ( var k in locations ) {\n\t\t\t\tlocations[ k ].map( function ( m ) {\n\t\t\t\t\tids.push( m.id );\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Append new ACF metaboxes (ignore those which already exist).\n\t\t\tdata.results\n\t\t\t\t.filter( function ( r ) {\n\t\t\t\t\treturn ids.indexOf( r.id ) === -1;\n\t\t\t\t} )\n\t\t\t\t.map( function ( result, i ) {\n\t\t\t\t\t// Ensure location exists.\n\t\t\t\t\tvar location = result.position;\n\t\t\t\t\tlocations[ location ] = locations[ location ] || [];\n\n\t\t\t\t\t// Append.\n\t\t\t\t\tlocations[ location ].push( {\n\t\t\t\t\t\tid: result.id,\n\t\t\t\t\t\ttitle: result.title,\n\t\t\t\t\t} );\n\t\t\t\t} );\n\n\t\t\t// Remove hidden ACF metaboxes.\n\t\t\tfor ( var k in locations ) {\n\t\t\t\tlocations[ k ] = locations[ k ].filter( function ( m ) {\n\t\t\t\t\treturn data.hidden.indexOf( m.id ) === -1;\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Update state.\n\t\t\tdispatch.setAvailableMetaBoxesPerLocation( locations );\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\t/**\n\t * acf.newSelect2\n\t *\n\t * description\n\t *\n\t * @date\t13/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tacf.newSelect2 = function ( $select, props ) {\n\t\t// defaults\n\t\tprops = acf.parseArgs( props, {\n\t\t\tallowNull: false,\n\t\t\tplaceholder: '',\n\t\t\tmultiple: false,\n\t\t\tfield: false,\n\t\t\tajax: false,\n\t\t\tajaxAction: '',\n\t\t\tajaxData: function ( data ) {\n\t\t\t\treturn data;\n\t\t\t},\n\t\t\tajaxResults: function ( json ) {\n\t\t\t\treturn json;\n\t\t\t},\n\t\t} );\n\n\t\t// initialize\n\t\tif ( getVersion() == 4 ) {\n\t\t\tvar select2 = new Select2_4( $select, props );\n\t\t} else {\n\t\t\tvar select2 = new Select2_3( $select, props );\n\t\t}\n\n\t\t// actions\n\t\tacf.doAction( 'new_select2', select2 );\n\n\t\t// return\n\t\treturn select2;\n\t};\n\n\t/**\n\t * getVersion\n\t *\n\t * description\n\t *\n\t * @date\t13/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tfunction getVersion() {\n\t\t// v4\n\t\tif ( acf.isset( window, 'jQuery', 'fn', 'select2', 'amd' ) ) {\n\t\t\treturn 4;\n\t\t}\n\n\t\t// v3\n\t\tif ( acf.isset( window, 'Select2' ) ) {\n\t\t\treturn 3;\n\t\t}\n\n\t\t// return\n\t\treturn false;\n\t}\n\n\t/**\n\t * Select2\n\t *\n\t * description\n\t *\n\t * @date\t13/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar Select2 = acf.Model.extend( {\n\t\tsetup: function ( $select, props ) {\n\t\t\t$.extend( this.data, props );\n\t\t\tthis.$el = $select;\n\t\t},\n\n\t\tinitialize: function () {},\n\n\t\tselectOption: function ( value ) {\n\t\t\tvar $option = this.getOption( value );\n\t\t\tif ( ! $option.prop( 'selected' ) ) {\n\t\t\t\t$option.prop( 'selected', true ).trigger( 'change' );\n\t\t\t}\n\t\t},\n\n\t\tunselectOption: function ( value ) {\n\t\t\tvar $option = this.getOption( value );\n\t\t\tif ( $option.prop( 'selected' ) ) {\n\t\t\t\t$option.prop( 'selected', false ).trigger( 'change' );\n\t\t\t}\n\t\t},\n\n\t\tgetOption: function ( value ) {\n\t\t\treturn this.$( 'option[value=\"' + value + '\"]' );\n\t\t},\n\n\t\taddOption: function ( option ) {\n\t\t\t// defaults\n\t\t\toption = acf.parseArgs( option, {\n\t\t\t\tid: '',\n\t\t\t\ttext: '',\n\t\t\t\tselected: false,\n\t\t\t} );\n\n\t\t\t// vars\n\t\t\tvar $option = this.getOption( option.id );\n\n\t\t\t// append\n\t\t\tif ( ! $option.length ) {\n\t\t\t\t$option = $( '' );\n\t\t\t\t$option.html( option.text );\n\t\t\t\t$option.attr( 'value', option.id );\n\t\t\t\t$option.prop( 'selected', option.selected );\n\t\t\t\tthis.$el.append( $option );\n\t\t\t}\n\n\t\t\t// chain\n\t\t\treturn $option;\n\t\t},\n\n\t\tgetValue: function () {\n\t\t\t// vars\n\t\t\tvar val = [];\n\t\t\tvar $options = this.$el.find( 'option:selected' );\n\n\t\t\t// bail early if no selected\n\t\t\tif ( ! $options.exists() ) {\n\t\t\t\treturn val;\n\t\t\t}\n\n\t\t\t// sort by attribute\n\t\t\t$options = $options.sort( function ( a, b ) {\n\t\t\t\treturn (\n\t\t\t\t\t+a.getAttribute( 'data-i' ) - +b.getAttribute( 'data-i' )\n\t\t\t\t);\n\t\t\t} );\n\n\t\t\t// loop\n\t\t\t$options.each( function () {\n\t\t\t\tvar $el = $( this );\n\t\t\t\tval.push( {\n\t\t\t\t\t$el: $el,\n\t\t\t\t\tid: $el.attr( 'value' ),\n\t\t\t\t\ttext: $el.text(),\n\t\t\t\t} );\n\t\t\t} );\n\n\t\t\t// return\n\t\t\treturn val;\n\t\t},\n\n\t\tmergeOptions: function () {},\n\n\t\tgetChoices: function () {\n\t\t\t// callback\n\t\t\tvar crawl = function ( $parent ) {\n\t\t\t\t// vars\n\t\t\t\tvar choices = [];\n\n\t\t\t\t// loop\n\t\t\t\t$parent.children().each( function () {\n\t\t\t\t\t// vars\n\t\t\t\t\tvar $child = $( this );\n\n\t\t\t\t\t// optgroup\n\t\t\t\t\tif ( $child.is( 'optgroup' ) ) {\n\t\t\t\t\t\tchoices.push( {\n\t\t\t\t\t\t\ttext: $child.attr( 'label' ),\n\t\t\t\t\t\t\tchildren: crawl( $child ),\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t// option\n\t\t\t\t\t} else {\n\t\t\t\t\t\tchoices.push( {\n\t\t\t\t\t\t\tid: $child.attr( 'value' ),\n\t\t\t\t\t\t\ttext: $child.text(),\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t} );\n\n\t\t\t\t// return\n\t\t\t\treturn choices;\n\t\t\t};\n\n\t\t\t// crawl\n\t\t\treturn crawl( this.$el );\n\t\t},\n\n\t\tgetAjaxData: function ( params ) {\n\t\t\t// vars\n\t\t\tvar ajaxData = {\n\t\t\t\taction: this.get( 'ajaxAction' ),\n\t\t\t\ts: params.term || '',\n\t\t\t\tpaged: params.page || 1,\n\t\t\t};\n\n\t\t\t// field helper\n\t\t\tvar field = this.get( 'field' );\n\t\t\tif ( field ) {\n\t\t\t\tajaxData.field_key = field.get( 'key' );\n\t\t\t}\n\n\t\t\t// callback\n\t\t\tvar callback = this.get( 'ajaxData' );\n\t\t\tif ( callback ) {\n\t\t\t\tajaxData = callback.apply( this, [ ajaxData, params ] );\n\t\t\t}\n\n\t\t\t// filter\n\t\t\tajaxData = acf.applyFilters(\n\t\t\t\t'select2_ajax_data',\n\t\t\t\tajaxData,\n\t\t\t\tthis.data,\n\t\t\t\tthis.$el,\n\t\t\t\tfield || false,\n\t\t\t\tthis\n\t\t\t);\n\n\t\t\t// return\n\t\t\treturn acf.prepareForAjax( ajaxData );\n\t\t},\n\n\t\tgetAjaxResults: function ( json, params ) {\n\t\t\t// defaults\n\t\t\tjson = acf.parseArgs( json, {\n\t\t\t\tresults: false,\n\t\t\t\tmore: false,\n\t\t\t} );\n\n\t\t\t// callback\n\t\t\tvar callback = this.get( 'ajaxResults' );\n\t\t\tif ( callback ) {\n\t\t\t\tjson = callback.apply( this, [ json, params ] );\n\t\t\t}\n\n\t\t\t// filter\n\t\t\tjson = acf.applyFilters(\n\t\t\t\t'select2_ajax_results',\n\t\t\t\tjson,\n\t\t\t\tparams,\n\t\t\t\tthis\n\t\t\t);\n\n\t\t\t// return\n\t\t\treturn json;\n\t\t},\n\n\t\tprocessAjaxResults: function ( json, params ) {\n\t\t\t// vars\n\t\t\tvar json = this.getAjaxResults( json, params );\n\n\t\t\t// change more to pagination\n\t\t\tif ( json.more ) {\n\t\t\t\tjson.pagination = { more: true };\n\t\t\t}\n\n\t\t\t// merge together groups\n\t\t\tsetTimeout( $.proxy( this.mergeOptions, this ), 1 );\n\n\t\t\t// return\n\t\t\treturn json;\n\t\t},\n\n\t\tdestroy: function () {\n\t\t\t// destroy via api\n\t\t\tif ( this.$el.data( 'select2' ) ) {\n\t\t\t\tthis.$el.select2( 'destroy' );\n\t\t\t}\n\n\t\t\t// destory via HTML (duplicating HTML does not contain data)\n\t\t\tthis.$el.siblings( '.select2-container' ).remove();\n\t\t},\n\t} );\n\n\t/**\n\t * Select2_4\n\t *\n\t * description\n\t *\n\t * @date\t13/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar Select2_4 = Select2.extend( {\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar $select = this.$el;\n\t\t\tvar options = {\n\t\t\t\twidth: '100%',\n\t\t\t\tallowClear: this.get( 'allowNull' ),\n\t\t\t\tplaceholder: this.get( 'placeholder' ),\n\t\t\t\tmultiple: this.get( 'multiple' ),\n\t\t\t\tdata: [],\n\t\t\t\tescapeMarkup: function ( markup ) {\n\t\t\t\t\tif ( typeof markup !== 'string' ) {\n\t\t\t\t\t\treturn markup;\n\t\t\t\t\t}\n\t\t\t\t\treturn acf.escHtml( markup );\n\t\t\t\t},\n\t\t\t};\n\n\t\t\t// Only use the template if SelectWoo is not loaded to work around https://github.com/woocommerce/woocommerce/pull/30473\n\t\t\tif ( ! acf.isset( window, 'jQuery', 'fn', 'selectWoo' ) ) {\n\t\t\t\toptions.templateSelection = function ( selection ) {\n\t\t\t\t\tvar $selection = $( '' );\n\t\t\t\t\t$selection.html( acf.escHtml( selection.text ) );\n\t\t\t\t\t$selection.data( 'element', selection.element );\n\t\t\t\t\treturn $selection;\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// multiple\n\t\t\tif ( options.multiple ) {\n\t\t\t\t// reorder options\n\t\t\t\tthis.getValue().map( function ( item ) {\n\t\t\t\t\titem.$el.detach().appendTo( $select );\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Temporarily remove conflicting attribute.\n\t\t\tvar attrAjax = $select.attr( 'data-ajax' );\n\t\t\tif ( attrAjax !== undefined ) {\n\t\t\t\t$select.removeData( 'ajax' );\n\t\t\t\t$select.removeAttr( 'data-ajax' );\n\t\t\t}\n\n\t\t\t// ajax\n\t\t\tif ( this.get( 'ajax' ) ) {\n\t\t\t\toptions.ajax = {\n\t\t\t\t\turl: acf.get( 'ajaxurl' ),\n\t\t\t\t\tdelay: 250,\n\t\t\t\t\tdataType: 'json',\n\t\t\t\t\ttype: 'post',\n\t\t\t\t\tcache: false,\n\t\t\t\t\tdata: $.proxy( this.getAjaxData, this ),\n\t\t\t\t\tprocessResults: $.proxy( this.processAjaxResults, this ),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// filter for 3rd party customization\n\t\t\t//options = acf.applyFilters( 'select2_args', options, $select, this );\n\t\t\tvar field = this.get( 'field' );\n\t\t\toptions = acf.applyFilters(\n\t\t\t\t'select2_args',\n\t\t\t\toptions,\n\t\t\t\t$select,\n\t\t\t\tthis.data,\n\t\t\t\tfield || false,\n\t\t\t\tthis\n\t\t\t);\n\n\t\t\t// add select2\n\t\t\t$select.select2( options );\n\n\t\t\t// get container (Select2 v4 does not return this from constructor)\n\t\t\tvar $container = $select.next( '.select2-container' );\n\n\t\t\t// multiple\n\t\t\tif ( options.multiple ) {\n\t\t\t\t// vars\n\t\t\t\tvar $ul = $container.find( 'ul' );\n\n\t\t\t\t// sortable\n\t\t\t\t$ul.sortable( {\n\t\t\t\t\tstop: function ( e ) {\n\t\t\t\t\t\t// loop\n\t\t\t\t\t\t$ul.find( '.select2-selection__choice' ).each(\n\t\t\t\t\t\t\tfunction () {\n\t\t\t\t\t\t\t\t// Attempt to use .data if it exists (select2 version < 4.0.6) or use our template data instead.\n\t\t\t\t\t\t\t\tif ( $( this ).data( 'data' ) ) {\n\t\t\t\t\t\t\t\t\tvar $option = $(\n\t\t\t\t\t\t\t\t\t\t$( this ).data( 'data' ).element\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tvar $option = $(\n\t\t\t\t\t\t\t\t\t\t$( this )\n\t\t\t\t\t\t\t\t\t\t\t.children( 'span.acf-selection' )\n\t\t\t\t\t\t\t\t\t\t\t.data( 'element' )\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t// detach and re-append to end\n\t\t\t\t\t\t\t\t$option.detach().appendTo( $select );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// trigger change on input (JS error if trigger on select)\n\t\t\t\t\t\t$select.trigger( 'change' );\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\t// on select, move to end\n\t\t\t\t$select.on(\n\t\t\t\t\t'select2:select',\n\t\t\t\t\tthis.proxy( function ( e ) {\n\t\t\t\t\t\tthis.getOption( e.params.data.id )\n\t\t\t\t\t\t\t.detach()\n\t\t\t\t\t\t\t.appendTo( this.$el );\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// add class\n\t\t\t$container.addClass( '-acf' );\n\n\t\t\t// Add back temporarily removed attr.\n\t\t\tif ( attrAjax !== undefined ) {\n\t\t\t\t$select.attr( 'data-ajax', attrAjax );\n\t\t\t}\n\n\t\t\t// action for 3rd party customization\n\t\t\tacf.doAction(\n\t\t\t\t'select2_init',\n\t\t\t\t$select,\n\t\t\t\toptions,\n\t\t\t\tthis.data,\n\t\t\t\tfield || false,\n\t\t\t\tthis\n\t\t\t);\n\t\t},\n\n\t\tmergeOptions: function () {\n\t\t\t// vars\n\t\t\tvar $prevOptions = false;\n\t\t\tvar $prevGroup = false;\n\n\t\t\t// loop\n\t\t\t$( '.select2-results__option[role=\"group\"]' ).each( function () {\n\t\t\t\t// vars\n\t\t\t\tvar $options = $( this ).children( 'ul' );\n\t\t\t\tvar $group = $( this ).children( 'strong' );\n\n\t\t\t\t// compare to previous\n\t\t\t\tif ( $prevGroup && $prevGroup.text() === $group.text() ) {\n\t\t\t\t\t$prevOptions.append( $options.children() );\n\t\t\t\t\t$( this ).remove();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// update vars\n\t\t\t\t$prevOptions = $options;\n\t\t\t\t$prevGroup = $group;\n\t\t\t} );\n\t\t},\n\t} );\n\n\t/**\n\t * Select2_3\n\t *\n\t * description\n\t *\n\t * @date\t13/1/18\n\t * @since\t5.6.5\n\t *\n\t * @param\ttype $var Description. Default.\n\t * @return\ttype Description.\n\t */\n\n\tvar Select2_3 = Select2.extend( {\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar $select = this.$el;\n\t\t\tvar value = this.getValue();\n\t\t\tvar multiple = this.get( 'multiple' );\n\t\t\tvar options = {\n\t\t\t\twidth: '100%',\n\t\t\t\tallowClear: this.get( 'allowNull' ),\n\t\t\t\tplaceholder: this.get( 'placeholder' ),\n\t\t\t\tseparator: '||',\n\t\t\t\tmultiple: this.get( 'multiple' ),\n\t\t\t\tdata: this.getChoices(),\n\t\t\t\tescapeMarkup: function ( string ) {\n\t\t\t\t\treturn acf.escHtml( string );\n\t\t\t\t},\n\t\t\t\tdropdownCss: {\n\t\t\t\t\t'z-index': '999999999',\n\t\t\t\t},\n\t\t\t\tinitSelection: function ( element, callback ) {\n\t\t\t\t\tif ( multiple ) {\n\t\t\t\t\t\tcallback( value );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcallback( value.shift() );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\n\t\t\t// get hidden input\n\t\t\tvar $input = $select.siblings( 'input' );\n\t\t\tif ( ! $input.length ) {\n\t\t\t\t$input = $( '' );\n\t\t\t\t$select.before( $input );\n\t\t\t}\n\n\t\t\t// set input value\n\t\t\tinputValue = value\n\t\t\t\t.map( function ( item ) {\n\t\t\t\t\treturn item.id;\n\t\t\t\t} )\n\t\t\t\t.join( '||' );\n\t\t\t$input.val( inputValue );\n\n\t\t\t// multiple\n\t\t\tif ( options.multiple ) {\n\t\t\t\t// reorder options\n\t\t\t\tvalue.map( function ( item ) {\n\t\t\t\t\titem.$el.detach().appendTo( $select );\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// remove blank option as we have a clear all button\n\t\t\tif ( options.allowClear ) {\n\t\t\t\toptions.data = options.data.filter( function ( item ) {\n\t\t\t\t\treturn item.id !== '';\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// remove conflicting atts\n\t\t\t$select.removeData( 'ajax' );\n\t\t\t$select.removeAttr( 'data-ajax' );\n\n\t\t\t// ajax\n\t\t\tif ( this.get( 'ajax' ) ) {\n\t\t\t\toptions.ajax = {\n\t\t\t\t\turl: acf.get( 'ajaxurl' ),\n\t\t\t\t\tquietMillis: 250,\n\t\t\t\t\tdataType: 'json',\n\t\t\t\t\ttype: 'post',\n\t\t\t\t\tcache: false,\n\t\t\t\t\tdata: $.proxy( this.getAjaxData, this ),\n\t\t\t\t\tresults: $.proxy( this.processAjaxResults, this ),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// filter for 3rd party customization\n\t\t\tvar field = this.get( 'field' );\n\t\t\toptions = acf.applyFilters(\n\t\t\t\t'select2_args',\n\t\t\t\toptions,\n\t\t\t\t$select,\n\t\t\t\tthis.data,\n\t\t\t\tfield || false,\n\t\t\t\tthis\n\t\t\t);\n\n\t\t\t// add select2\n\t\t\t$input.select2( options );\n\n\t\t\t// get container\n\t\t\tvar $container = $input.select2( 'container' );\n\n\t\t\t// helper to find this select's option\n\t\t\tvar getOption = $.proxy( this.getOption, this );\n\n\t\t\t// multiple\n\t\t\tif ( options.multiple ) {\n\t\t\t\t// vars\n\t\t\t\tvar $ul = $container.find( 'ul' );\n\n\t\t\t\t// sortable\n\t\t\t\t$ul.sortable( {\n\t\t\t\t\tstop: function () {\n\t\t\t\t\t\t// loop\n\t\t\t\t\t\t$ul.find( '.select2-search-choice' ).each( function () {\n\t\t\t\t\t\t\t// vars\n\t\t\t\t\t\t\tvar data = $( this ).data( 'select2Data' );\n\t\t\t\t\t\t\tvar $option = getOption( data.id );\n\n\t\t\t\t\t\t\t// detach and re-append to end\n\t\t\t\t\t\t\t$option.detach().appendTo( $select );\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t// trigger change on input (JS error if trigger on select)\n\t\t\t\t\t\t$select.trigger( 'change' );\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// on select, create option and move to end\n\t\t\t$input.on( 'select2-selecting', function ( e ) {\n\t\t\t\t// vars\n\t\t\t\tvar item = e.choice;\n\t\t\t\tvar $option = getOption( item.id );\n\n\t\t\t\t// create if doesn't exist\n\t\t\t\tif ( ! $option.length ) {\n\t\t\t\t\t$option = $(\n\t\t\t\t\t\t''\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// detach and re-append to end\n\t\t\t\t$option.detach().appendTo( $select );\n\t\t\t} );\n\n\t\t\t// add class\n\t\t\t$container.addClass( '-acf' );\n\n\t\t\t// action for 3rd party customization\n\t\t\tacf.doAction(\n\t\t\t\t'select2_init',\n\t\t\t\t$select,\n\t\t\t\toptions,\n\t\t\t\tthis.data,\n\t\t\t\tfield || false,\n\t\t\t\tthis\n\t\t\t);\n\n\t\t\t// change\n\t\t\t$input.on( 'change', function () {\n\t\t\t\tvar val = $input.val();\n\t\t\t\tif ( val.indexOf( '||' ) ) {\n\t\t\t\t\tval = val.split( '||' );\n\t\t\t\t}\n\t\t\t\t$select.val( val ).trigger( 'change' );\n\t\t\t} );\n\n\t\t\t// hide select\n\t\t\t$select.hide();\n\t\t},\n\n\t\tmergeOptions: function () {\n\t\t\t// vars\n\t\t\tvar $prevOptions = false;\n\t\t\tvar $prevGroup = false;\n\n\t\t\t// loop\n\t\t\t$( '#select2-drop .select2-result-with-children' ).each(\n\t\t\t\tfunction () {\n\t\t\t\t\t// vars\n\t\t\t\t\tvar $options = $( this ).children( 'ul' );\n\t\t\t\t\tvar $group = $( this ).children( '.select2-result-label' );\n\n\t\t\t\t\t// compare to previous\n\t\t\t\t\tif ( $prevGroup && $prevGroup.text() === $group.text() ) {\n\t\t\t\t\t\t$prevGroup.append( $options.children() );\n\t\t\t\t\t\t$( this ).remove();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// update vars\n\t\t\t\t\t$prevOptions = $options;\n\t\t\t\t\t$prevGroup = $group;\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\n\t\tgetAjaxData: function ( term, page ) {\n\t\t\t// create Select2 v4 params\n\t\t\tvar params = {\n\t\t\t\tterm: term,\n\t\t\t\tpage: page,\n\t\t\t};\n\n\t\t\t// return\n\t\t\treturn Select2.prototype.getAjaxData.apply( this, [ params ] );\n\t\t},\n\t} );\n\n\t// manager\n\tvar select2Manager = new acf.Model( {\n\t\tpriority: 5,\n\t\twait: 'prepare',\n\t\tactions: {\n\t\t\tduplicate: 'onDuplicate',\n\t\t},\n\t\tinitialize: function () {\n\t\t\t// vars\n\t\t\tvar locale = acf.get( 'locale' );\n\t\t\tvar rtl = acf.get( 'rtl' );\n\t\t\tvar l10n = acf.get( 'select2L10n' );\n\t\t\tvar version = getVersion();\n\n\t\t\t// bail ealry if no l10n\n\t\t\tif ( ! l10n ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// bail early if 'en'\n\t\t\tif ( locale.indexOf( 'en' ) === 0 ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// initialize\n\t\t\tif ( version == 4 ) {\n\t\t\t\tthis.addTranslations4();\n\t\t\t} else if ( version == 3 ) {\n\t\t\t\tthis.addTranslations3();\n\t\t\t}\n\t\t},\n\n\t\taddTranslations4: function () {\n\t\t\t// vars\n\t\t\tvar l10n = acf.get( 'select2L10n' );\n\t\t\tvar locale = acf.get( 'locale' );\n\n\t\t\t// modify local to match html[lang] attribute (used by Select2)\n\t\t\tlocale = locale.replace( '_', '-' );\n\n\t\t\t// select2L10n\n\t\t\tvar select2L10n = {\n\t\t\t\terrorLoading: function () {\n\t\t\t\t\treturn l10n.load_fail;\n\t\t\t\t},\n\t\t\t\tinputTooLong: function ( args ) {\n\t\t\t\t\tvar overChars = args.input.length - args.maximum;\n\t\t\t\t\tif ( overChars > 1 ) {\n\t\t\t\t\t\treturn l10n.input_too_long_n.replace( '%d', overChars );\n\t\t\t\t\t}\n\t\t\t\t\treturn l10n.input_too_long_1;\n\t\t\t\t},\n\t\t\t\tinputTooShort: function ( args ) {\n\t\t\t\t\tvar remainingChars = args.minimum - args.input.length;\n\t\t\t\t\tif ( remainingChars > 1 ) {\n\t\t\t\t\t\treturn l10n.input_too_short_n.replace(\n\t\t\t\t\t\t\t'%d',\n\t\t\t\t\t\t\tremainingChars\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn l10n.input_too_short_1;\n\t\t\t\t},\n\t\t\t\tloadingMore: function () {\n\t\t\t\t\treturn l10n.load_more;\n\t\t\t\t},\n\t\t\t\tmaximumSelected: function ( args ) {\n\t\t\t\t\tvar maximum = args.maximum;\n\t\t\t\t\tif ( maximum > 1 ) {\n\t\t\t\t\t\treturn l10n.selection_too_long_n.replace(\n\t\t\t\t\t\t\t'%d',\n\t\t\t\t\t\t\tmaximum\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn l10n.selection_too_long_1;\n\t\t\t\t},\n\t\t\t\tnoResults: function () {\n\t\t\t\t\treturn l10n.matches_0;\n\t\t\t\t},\n\t\t\t\tsearching: function () {\n\t\t\t\t\treturn l10n.searching;\n\t\t\t\t},\n\t\t\t};\n\n\t\t\t// append\n\t\t\tjQuery.fn.select2.amd.define(\n\t\t\t\t'select2/i18n/' + locale,\n\t\t\t\t[],\n\t\t\t\tfunction () {\n\t\t\t\t\treturn select2L10n;\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\n\t\taddTranslations3: function () {\n\t\t\t// vars\n\t\t\tvar l10n = acf.get( 'select2L10n' );\n\t\t\tvar locale = acf.get( 'locale' );\n\n\t\t\t// modify local to match html[lang] attribute (used by Select2)\n\t\t\tlocale = locale.replace( '_', '-' );\n\n\t\t\t// select2L10n\n\t\t\tvar select2L10n = {\n\t\t\t\tformatMatches: function ( matches ) {\n\t\t\t\t\tif ( matches > 1 ) {\n\t\t\t\t\t\treturn l10n.matches_n.replace( '%d', matches );\n\t\t\t\t\t}\n\t\t\t\t\treturn l10n.matches_1;\n\t\t\t\t},\n\t\t\t\tformatNoMatches: function () {\n\t\t\t\t\treturn l10n.matches_0;\n\t\t\t\t},\n\t\t\t\tformatAjaxError: function () {\n\t\t\t\t\treturn l10n.load_fail;\n\t\t\t\t},\n\t\t\t\tformatInputTooShort: function ( input, min ) {\n\t\t\t\t\tvar remainingChars = min - input.length;\n\t\t\t\t\tif ( remainingChars > 1 ) {\n\t\t\t\t\t\treturn l10n.input_too_short_n.replace(\n\t\t\t\t\t\t\t'%d',\n\t\t\t\t\t\t\tremainingChars\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn l10n.input_too_short_1;\n\t\t\t\t},\n\t\t\t\tformatInputTooLong: function ( input, max ) {\n\t\t\t\t\tvar overChars = input.length - max;\n\t\t\t\t\tif ( overChars > 1 ) {\n\t\t\t\t\t\treturn l10n.input_too_long_n.replace( '%d', overChars );\n\t\t\t\t\t}\n\t\t\t\t\treturn l10n.input_too_long_1;\n\t\t\t\t},\n\t\t\t\tformatSelectionTooBig: function ( maximum ) {\n\t\t\t\t\tif ( maximum > 1 ) {\n\t\t\t\t\t\treturn l10n.selection_too_long_n.replace(\n\t\t\t\t\t\t\t'%d',\n\t\t\t\t\t\t\tmaximum\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn l10n.selection_too_long_1;\n\t\t\t\t},\n\t\t\t\tformatLoadMore: function () {\n\t\t\t\t\treturn l10n.load_more;\n\t\t\t\t},\n\t\t\t\tformatSearching: function () {\n\t\t\t\t\treturn l10n.searching;\n\t\t\t\t},\n\t\t\t};\n\n\t\t\t// ensure locales exists\n\t\t\t$.fn.select2.locales = $.fn.select2.locales || {};\n\n\t\t\t// append\n\t\t\t$.fn.select2.locales[ locale ] = select2L10n;\n\t\t\t$.extend( $.fn.select2.defaults, select2L10n );\n\t\t},\n\n\t\tonDuplicate: function ( $el, $el2 ) {\n\t\t\t$el2.find( '.select2-container' ).remove();\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tacf.tinymce = {\n\t\t/*\n\t\t * defaults\n\t\t *\n\t\t * This function will return default mce and qt settings\n\t\t *\n\t\t * @type\tfunction\n\t\t * @date\t18/8/17\n\t\t * @since\t5.6.0\n\t\t *\n\t\t * @param\t$post_id (int)\n\t\t * @return\t$post_id (int)\n\t\t */\n\n\t\tdefaults: function () {\n\t\t\t// bail early if no tinyMCEPreInit\n\t\t\tif ( typeof tinyMCEPreInit === 'undefined' ) return false;\n\n\t\t\t// vars\n\t\t\tvar defaults = {\n\t\t\t\ttinymce: tinyMCEPreInit.mceInit.acf_content,\n\t\t\t\tquicktags: tinyMCEPreInit.qtInit.acf_content,\n\t\t\t};\n\n\t\t\t// return\n\t\t\treturn defaults;\n\t\t},\n\n\t\t/*\n\t\t * initialize\n\t\t *\n\t\t * This function will initialize the tinymce and quicktags instances\n\t\t *\n\t\t * @type\tfunction\n\t\t * @date\t18/8/17\n\t\t * @since\t5.6.0\n\t\t *\n\t\t * @param\t$post_id (int)\n\t\t * @return\t$post_id (int)\n\t\t */\n\n\t\tinitialize: function ( id, args ) {\n\t\t\t// defaults\n\t\t\targs = acf.parseArgs( args, {\n\t\t\t\ttinymce: true,\n\t\t\t\tquicktags: true,\n\t\t\t\ttoolbar: 'full',\n\t\t\t\tmode: 'visual', // visual,text\n\t\t\t\tfield: false,\n\t\t\t} );\n\n\t\t\t// tinymce\n\t\t\tif ( args.tinymce ) {\n\t\t\t\tthis.initializeTinymce( id, args );\n\t\t\t}\n\n\t\t\t// quicktags\n\t\t\tif ( args.quicktags ) {\n\t\t\t\tthis.initializeQuicktags( id, args );\n\t\t\t}\n\t\t},\n\n\t\t/*\n\t\t * initializeTinymce\n\t\t *\n\t\t * This function will initialize the tinymce instance\n\t\t *\n\t\t * @type\tfunction\n\t\t * @date\t18/8/17\n\t\t * @since\t5.6.0\n\t\t *\n\t\t * @param\t$post_id (int)\n\t\t * @return\t$post_id (int)\n\t\t */\n\n\t\tinitializeTinymce: function ( id, args ) {\n\t\t\t// vars\n\t\t\tvar $textarea = $( '#' + id );\n\t\t\tvar defaults = this.defaults();\n\t\t\tvar toolbars = acf.get( 'toolbars' );\n\t\t\tvar field = args.field || false;\n\t\t\tvar $field = field.$el || false;\n\n\t\t\t// bail early\n\t\t\tif ( typeof tinymce === 'undefined' ) return false;\n\t\t\tif ( ! defaults ) return false;\n\n\t\t\t// check if exists\n\t\t\tif ( tinymce.get( id ) ) {\n\t\t\t\treturn this.enable( id );\n\t\t\t}\n\n\t\t\t// settings\n\t\t\tvar init = $.extend( {}, defaults.tinymce, args.tinymce );\n\t\t\tinit.id = id;\n\t\t\tinit.selector = '#' + id;\n\n\t\t\t// toolbar\n\t\t\tvar toolbar = args.toolbar;\n\t\t\tif ( toolbar && toolbars && toolbars[ toolbar ] ) {\n\t\t\t\tfor ( var i = 1; i <= 4; i++ ) {\n\t\t\t\t\tinit[ 'toolbar' + i ] = toolbars[ toolbar ][ i ] || '';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// event\n\t\t\tinit.setup = function ( ed ) {\n\t\t\t\ted.on( 'change', function ( e ) {\n\t\t\t\t\ted.save(); // save to textarea\n\t\t\t\t\t$textarea.trigger( 'change' );\n\t\t\t\t} );\n\n\t\t\t\t// Fix bug where Gutenberg does not hear \"mouseup\" event and tries to select multiple blocks.\n\t\t\t\ted.on( 'mouseup', function ( e ) {\n\t\t\t\t\tvar event = new MouseEvent( 'mouseup' );\n\t\t\t\t\twindow.dispatchEvent( event );\n\t\t\t\t} );\n\n\t\t\t\t// Temporarily comment out. May not be necessary due to wysiwyg field actions.\n\t\t\t\t//ed.on('unload', function(e) {\n\t\t\t\t//\tacf.tinymce.remove( id );\n\t\t\t\t//});\n\t\t\t};\n\n\t\t\t// disable wp_autoresize_on (no solution yet for fixed toolbar)\n\t\t\tinit.wp_autoresize_on = false;\n\n\t\t\t// Enable wpautop allowing value to save without

      tags.\n\t\t\t// Only if the \"TinyMCE Advanced\" plugin hasn't already set this functionality.\n\t\t\tif ( ! init.tadv_noautop ) {\n\t\t\t\tinit.wpautop = true;\n\t\t\t}\n\n\t\t\t// hook for 3rd party customization\n\t\t\tinit = acf.applyFilters(\n\t\t\t\t'wysiwyg_tinymce_settings',\n\t\t\t\tinit,\n\t\t\t\tid,\n\t\t\t\tfield\n\t\t\t);\n\n\t\t\t// z-index fix (caused too many conflicts)\n\t\t\t//if( acf.isset(tinymce,'ui','FloatPanel') ) {\n\t\t\t//\ttinymce.ui.FloatPanel.zIndex = 900000;\n\t\t\t//}\n\n\t\t\t// store settings\n\t\t\ttinyMCEPreInit.mceInit[ id ] = init;\n\n\t\t\t// visual tab is active\n\t\t\tif ( args.mode == 'visual' ) {\n\t\t\t\t// init\n\t\t\t\tvar result = tinymce.init( init );\n\n\t\t\t\t// get editor\n\t\t\t\tvar ed = tinymce.get( id );\n\n\t\t\t\t// validate\n\t\t\t\tif ( ! ed ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\t// add reference\n\t\t\t\ted.acf = args.field;\n\n\t\t\t\t// action\n\t\t\t\tacf.doAction( 'wysiwyg_tinymce_init', ed, ed.id, init, field );\n\t\t\t}\n\t\t},\n\n\t\t/*\n\t\t * initializeQuicktags\n\t\t *\n\t\t * This function will initialize the quicktags instance\n\t\t *\n\t\t * @type\tfunction\n\t\t * @date\t18/8/17\n\t\t * @since\t5.6.0\n\t\t *\n\t\t * @param\t$post_id (int)\n\t\t * @return\t$post_id (int)\n\t\t */\n\n\t\tinitializeQuicktags: function ( id, args ) {\n\t\t\t// vars\n\t\t\tvar defaults = this.defaults();\n\n\t\t\t// bail early\n\t\t\tif ( typeof quicktags === 'undefined' ) return false;\n\t\t\tif ( ! defaults ) return false;\n\n\t\t\t// settings\n\t\t\tvar init = $.extend( {}, defaults.quicktags, args.quicktags );\n\t\t\tinit.id = id;\n\n\t\t\t// filter\n\t\t\tvar field = args.field || false;\n\t\t\tvar $field = field.$el || false;\n\t\t\tinit = acf.applyFilters(\n\t\t\t\t'wysiwyg_quicktags_settings',\n\t\t\t\tinit,\n\t\t\t\tinit.id,\n\t\t\t\tfield\n\t\t\t);\n\n\t\t\t// store settings\n\t\t\ttinyMCEPreInit.qtInit[ id ] = init;\n\n\t\t\t// init\n\t\t\tvar ed = quicktags( init );\n\n\t\t\t// validate\n\t\t\tif ( ! ed ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// generate HTML\n\t\t\tthis.buildQuicktags( ed );\n\n\t\t\t// action for 3rd party customization\n\t\t\tacf.doAction( 'wysiwyg_quicktags_init', ed, ed.id, init, field );\n\t\t},\n\n\t\t/*\n\t\t * buildQuicktags\n\t\t *\n\t\t * This function will build the quicktags HTML\n\t\t *\n\t\t * @type\tfunction\n\t\t * @date\t18/8/17\n\t\t * @since\t5.6.0\n\t\t *\n\t\t * @param\t$post_id (int)\n\t\t * @return\t$post_id (int)\n\t\t */\n\n\t\tbuildQuicktags: function ( ed ) {\n\t\t\tvar canvas,\n\t\t\t\tname,\n\t\t\t\tsettings,\n\t\t\t\ttheButtons,\n\t\t\t\thtml,\n\t\t\t\ted,\n\t\t\t\tid,\n\t\t\t\ti,\n\t\t\t\tuse,\n\t\t\t\tinstanceId,\n\t\t\t\tdefaults =\n\t\t\t\t\t',strong,em,link,block,del,ins,img,ul,ol,li,code,more,close,';\n\n\t\t\tcanvas = ed.canvas;\n\t\t\tname = ed.name;\n\t\t\tsettings = ed.settings;\n\t\t\thtml = '';\n\t\t\ttheButtons = {};\n\t\t\tuse = '';\n\t\t\tinstanceId = ed.id;\n\n\t\t\t// set buttons\n\t\t\tif ( settings.buttons ) {\n\t\t\t\tuse = ',' + settings.buttons + ',';\n\t\t\t}\n\n\t\t\tfor ( i in edButtons ) {\n\t\t\t\tif ( ! edButtons[ i ] ) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tid = edButtons[ i ].id;\n\t\t\t\tif (\n\t\t\t\t\tuse &&\n\t\t\t\t\tdefaults.indexOf( ',' + id + ',' ) !== -1 &&\n\t\t\t\t\tuse.indexOf( ',' + id + ',' ) === -1\n\t\t\t\t) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\t! edButtons[ i ].instance ||\n\t\t\t\t\tedButtons[ i ].instance === instanceId\n\t\t\t\t) {\n\t\t\t\t\ttheButtons[ id ] = edButtons[ i ];\n\n\t\t\t\t\tif ( edButtons[ i ].html ) {\n\t\t\t\t\t\thtml += edButtons[ i ].html( name + '_' );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( use && use.indexOf( ',dfw,' ) !== -1 ) {\n\t\t\t\ttheButtons.dfw = new QTags.DFWButton();\n\t\t\t\thtml += theButtons.dfw.html( name + '_' );\n\t\t\t}\n\n\t\t\tif ( 'rtl' === document.getElementsByTagName( 'html' )[ 0 ].dir ) {\n\t\t\t\ttheButtons.textdirection = new QTags.TextDirectionButton();\n\t\t\t\thtml += theButtons.textdirection.html( name + '_' );\n\t\t\t}\n\n\t\t\ted.toolbar.innerHTML = html;\n\t\t\ted.theButtons = theButtons;\n\n\t\t\tif ( typeof jQuery !== 'undefined' ) {\n\t\t\t\tjQuery( document ).triggerHandler( 'quicktags-init', [ ed ] );\n\t\t\t}\n\t\t},\n\n\t\tdisable: function ( id ) {\n\t\t\tthis.destroyTinymce( id );\n\t\t},\n\n\t\tremove: function ( id ) {\n\t\t\tthis.destroyTinymce( id );\n\t\t},\n\n\t\tdestroy: function ( id ) {\n\t\t\tthis.destroyTinymce( id );\n\t\t},\n\n\t\tdestroyTinymce: function ( id ) {\n\t\t\t// bail early\n\t\t\tif ( typeof tinymce === 'undefined' ) return false;\n\n\t\t\t// get editor\n\t\t\tvar ed = tinymce.get( id );\n\n\t\t\t// bail early if no editor\n\t\t\tif ( ! ed ) return false;\n\n\t\t\t// save\n\t\t\ted.save();\n\n\t\t\t// destroy editor\n\t\t\ted.destroy();\n\n\t\t\t// return\n\t\t\treturn true;\n\t\t},\n\n\t\tenable: function ( id ) {\n\t\t\tthis.enableTinymce( id );\n\t\t},\n\n\t\tenableTinymce: function ( id ) {\n\t\t\t// bail early\n\t\t\tif ( typeof switchEditors === 'undefined' ) return false;\n\n\t\t\t// bail ealry if not initialized\n\t\t\tif ( typeof tinyMCEPreInit.mceInit[ id ] === 'undefined' )\n\t\t\t\treturn false;\n\n\t\t\t// Ensure textarea element is visible\n\t\t\t// - Fixes bug in block editor when switching between \"Block\" and \"Document\" tabs.\n\t\t\t$( '#' + id ).show();\n\n\t\t\t// toggle\n\t\t\tswitchEditors.go( id, 'tmce' );\n\n\t\t\t// return\n\t\t\treturn true;\n\t\t},\n\t};\n\n\tvar editorManager = new acf.Model( {\n\t\t// hook in before fieldsEventManager, conditions, etc\n\t\tpriority: 5,\n\n\t\tactions: {\n\t\t\tprepare: 'onPrepare',\n\t\t\tready: 'onReady',\n\t\t},\n\t\tonPrepare: function () {\n\t\t\t// find hidden editor which may exist within a field\n\t\t\tvar $div = $( '#acf-hidden-wp-editor' );\n\n\t\t\t// move to footer\n\t\t\tif ( $div.exists() ) {\n\t\t\t\t$div.appendTo( 'body' );\n\t\t\t}\n\t\t},\n\t\tonReady: function () {\n\t\t\t// Restore wp.editor functions used by tinymce removed in WP5.\n\t\t\tif ( acf.isset( window, 'wp', 'oldEditor' ) ) {\n\t\t\t\twp.editor.autop = wp.oldEditor.autop;\n\t\t\t\twp.editor.removep = wp.oldEditor.removep;\n\t\t\t}\n\n\t\t\t// bail early if no tinymce\n\t\t\tif ( ! acf.isset( window, 'tinymce', 'on' ) ) return;\n\n\t\t\t// restore default activeEditor\n\t\t\ttinymce.on( 'AddEditor', function ( data ) {\n\t\t\t\t// vars\n\t\t\t\tvar editor = data.editor;\n\n\t\t\t\t// bail early if not 'acf'\n\t\t\t\tif ( editor.id.substr( 0, 3 ) !== 'acf' ) return;\n\n\t\t\t\t// override if 'content' exists\n\t\t\t\teditor = tinymce.editors.content || editor;\n\n\t\t\t\t// update vars\n\t\t\t\ttinymce.activeEditor = editor;\n\t\t\t\twpActiveEditor = editor.id;\n\t\t\t} );\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\tacf.unload = new acf.Model( {\n\t\twait: 'load',\n\t\tactive: true,\n\t\tchanged: false,\n\n\t\tactions: {\n\t\t\tvalidation_failure: 'startListening',\n\t\t\tvalidation_success: 'stopListening',\n\t\t},\n\n\t\tevents: {\n\t\t\t'change form .acf-field': 'startListening',\n\t\t\t'submit form': 'stopListening',\n\t\t},\n\n\t\tenable: function () {\n\t\t\tthis.active = true;\n\t\t},\n\n\t\tdisable: function () {\n\t\t\tthis.active = false;\n\t\t},\n\n\t\treset: function () {\n\t\t\tthis.stopListening();\n\t\t},\n\n\t\tstartListening: function () {\n\t\t\t// bail ealry if already changed, not active\n\t\t\tif ( this.changed || ! this.active ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// update\n\t\t\tthis.changed = true;\n\n\t\t\t// add event\n\t\t\t$( window ).on( 'beforeunload', this.onUnload );\n\t\t},\n\n\t\tstopListening: function () {\n\t\t\t// update\n\t\t\tthis.changed = false;\n\n\t\t\t// remove event\n\t\t\t$( window ).off( 'beforeunload', this.onUnload );\n\t\t},\n\n\t\tonUnload: function () {\n\t\t\treturn acf.__(\n\t\t\t\t'The changes you made will be lost if you navigate away from this page'\n\t\t\t);\n\t\t},\n\t} );\n} )( jQuery );\n","( function ( $, undefined ) {\n\t/**\n\t * Validator\n\t *\n\t * The model for validating forms\n\t *\n\t * @date\t4/9/18\n\t * @since\t5.7.5\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\tvar Validator = acf.Model.extend( {\n\t\t/** @var string The model identifier. */\n\t\tid: 'Validator',\n\n\t\t/** @var object The model data. */\n\t\tdata: {\n\t\t\t/** @var array The form errors. */\n\t\t\terrors: [],\n\n\t\t\t/** @var object The form notice. */\n\t\t\tnotice: null,\n\n\t\t\t/** @var string The form status. loading, invalid, valid */\n\t\t\tstatus: '',\n\t\t},\n\n\t\t/** @var object The model events. */\n\t\tevents: {\n\t\t\t'changed:status': 'onChangeStatus',\n\t\t},\n\n\t\t/**\n\t\t * addErrors\n\t\t *\n\t\t * Adds errors to the form.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tarray errors An array of errors.\n\t\t * @return\tvoid\n\t\t */\n\t\taddErrors: function ( errors ) {\n\t\t\terrors.map( this.addError, this );\n\t\t},\n\n\t\t/**\n\t\t * addError\n\t\t *\n\t\t * Adds and error to the form.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tobject error An error object containing input and message.\n\t\t * @return\tvoid\n\t\t */\n\t\taddError: function ( error ) {\n\t\t\tthis.data.errors.push( error );\n\t\t},\n\n\t\t/**\n\t\t * hasErrors\n\t\t *\n\t\t * Returns true if the form has errors.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tbool\n\t\t */\n\t\thasErrors: function () {\n\t\t\treturn this.data.errors.length;\n\t\t},\n\n\t\t/**\n\t\t * clearErrors\n\t\t *\n\t\t * Removes any errors.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tvoid\n\t\t */\n\t\tclearErrors: function () {\n\t\t\treturn ( this.data.errors = [] );\n\t\t},\n\n\t\t/**\n\t\t * getErrors\n\t\t *\n\t\t * Returns the forms errors.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tarray\n\t\t */\n\t\tgetErrors: function () {\n\t\t\treturn this.data.errors;\n\t\t},\n\n\t\t/**\n\t\t * getFieldErrors\n\t\t *\n\t\t * Returns the forms field errors.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tarray\n\t\t */\n\t\tgetFieldErrors: function () {\n\t\t\t// vars\n\t\t\tvar errors = [];\n\t\t\tvar inputs = [];\n\n\t\t\t// loop\n\t\t\tthis.getErrors().map( function ( error ) {\n\t\t\t\t// bail early if global\n\t\t\t\tif ( ! error.input ) return;\n\n\t\t\t\t// update if exists\n\t\t\t\tvar i = inputs.indexOf( error.input );\n\t\t\t\tif ( i > -1 ) {\n\t\t\t\t\terrors[ i ] = error;\n\n\t\t\t\t\t// update\n\t\t\t\t} else {\n\t\t\t\t\terrors.push( error );\n\t\t\t\t\tinputs.push( error.input );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// return\n\t\t\treturn errors;\n\t\t},\n\n\t\t/**\n\t\t * getGlobalErrors\n\t\t *\n\t\t * Returns the forms global errors (errors without a specific input).\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tarray\n\t\t */\n\t\tgetGlobalErrors: function () {\n\t\t\t// return array of errors that contain no input\n\t\t\treturn this.getErrors().filter( function ( error ) {\n\t\t\t\treturn ! error.input;\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * showErrors\n\t\t *\n\t\t * Displays all errors for this form.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tvoid\n\t\t */\n\t\tshowErrors: function () {\n\t\t\t// bail early if no errors\n\t\t\tif ( ! this.hasErrors() ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// vars\n\t\t\tvar fieldErrors = this.getFieldErrors();\n\t\t\tvar globalErrors = this.getGlobalErrors();\n\n\t\t\t// vars\n\t\t\tvar errorCount = 0;\n\t\t\tvar $scrollTo = false;\n\n\t\t\t// loop\n\t\t\tfieldErrors.map( function ( error ) {\n\t\t\t\t// get input\n\t\t\t\tvar $input = this.$( '[name=\"' + error.input + '\"]' ).first();\n\n\t\t\t\t// if $_POST value was an array, this $input may not exist\n\t\t\t\tif ( ! $input.length ) {\n\t\t\t\t\t$input = this.$( '[name^=\"' + error.input + '\"]' ).first();\n\t\t\t\t}\n\n\t\t\t\t// bail early if input doesn't exist\n\t\t\t\tif ( ! $input.length ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// increase\n\t\t\t\terrorCount++;\n\n\t\t\t\t// get field\n\t\t\t\tvar field = acf.getClosestField( $input );\n\n\t\t\t\t// make sure the postbox containing this field is not hidden by screen options\n\t\t\t\tensureFieldPostBoxIsVisible( field.$el );\n\n\t\t\t\t// show error\n\t\t\t\tfield.showError( error.message );\n\n\t\t\t\t// set $scrollTo\n\t\t\t\tif ( ! $scrollTo ) {\n\t\t\t\t\t$scrollTo = field.$el;\n\t\t\t\t}\n\t\t\t}, this );\n\n\t\t\t// errorMessage\n\t\t\tvar errorMessage = acf.__( 'Validation failed' );\n\t\t\tglobalErrors.map( function ( error ) {\n\t\t\t\terrorMessage += '. ' + error.message;\n\t\t\t} );\n\t\t\tif ( errorCount == 1 ) {\n\t\t\t\terrorMessage += '. ' + acf.__( '1 field requires attention' );\n\t\t\t} else if ( errorCount > 1 ) {\n\t\t\t\terrorMessage +=\n\t\t\t\t\t'. ' +\n\t\t\t\t\tacf\n\t\t\t\t\t\t.__( '%d fields require attention' )\n\t\t\t\t\t\t.replace( '%d', errorCount );\n\t\t\t}\n\n\t\t\t// notice\n\t\t\tif ( this.has( 'notice' ) ) {\n\t\t\t\tthis.get( 'notice' ).update( {\n\t\t\t\t\ttype: 'error',\n\t\t\t\t\ttext: errorMessage,\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tvar notice = acf.newNotice( {\n\t\t\t\t\ttype: 'error',\n\t\t\t\t\ttext: errorMessage,\n\t\t\t\t\ttarget: this.$el,\n\t\t\t\t} );\n\t\t\t\tthis.set( 'notice', notice );\n\t\t\t}\n\n\t\t\t// if no $scrollTo, set to message\n\t\t\tif ( ! $scrollTo ) {\n\t\t\t\t$scrollTo = this.get( 'notice' ).$el;\n\t\t\t}\n\n\t\t\t// timeout\n\t\t\tsetTimeout( function () {\n\t\t\t\t$( 'html, body' ).animate(\n\t\t\t\t\t{\n\t\t\t\t\t\tscrollTop:\n\t\t\t\t\t\t\t$scrollTo.offset().top - $( window ).height() / 2,\n\t\t\t\t\t},\n\t\t\t\t\t500\n\t\t\t\t);\n\t\t\t}, 10 );\n\t\t},\n\n\t\t/**\n\t\t * onChangeStatus\n\t\t *\n\t\t * Update the form class when changing the 'status' data\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tobject e The event object.\n\t\t * @param\tjQuery $el The form element.\n\t\t * @param\tstring value The new status.\n\t\t * @param\tstring prevValue The old status.\n\t\t * @return\tvoid\n\t\t */\n\t\tonChangeStatus: function ( e, $el, value, prevValue ) {\n\t\t\tthis.$el.removeClass( 'is-' + prevValue ).addClass( 'is-' + value );\n\t\t},\n\n\t\t/**\n\t\t * validate\n\t\t *\n\t\t * Vaildates the form via AJAX.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tobject args A list of settings to customize the validation process.\n\t\t * @return\tbool True if the form is valid.\n\t\t */\n\t\tvalidate: function ( args ) {\n\t\t\t// default args\n\t\t\targs = acf.parseArgs( args, {\n\t\t\t\t// trigger event\n\t\t\t\tevent: false,\n\n\t\t\t\t// reset the form after submit\n\t\t\t\treset: false,\n\n\t\t\t\t// loading callback\n\t\t\t\tloading: function () {},\n\n\t\t\t\t// complete callback\n\t\t\t\tcomplete: function () {},\n\n\t\t\t\t// failure callback\n\t\t\t\tfailure: function () {},\n\n\t\t\t\t// success callback\n\t\t\t\tsuccess: function ( $form ) {\n\t\t\t\t\t$form.submit();\n\t\t\t\t},\n\t\t\t} );\n\n\t\t\t// return true if is valid - allows form submit\n\t\t\tif ( this.get( 'status' ) == 'valid' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\t// return false if is currently validating - prevents form submit\n\t\t\tif ( this.get( 'status' ) == 'validating' ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// return true if no ACF fields exist (no need to validate)\n\t\t\tif ( ! this.$( '.acf-field' ).length ) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\t// if event is provided, create a new success callback.\n\t\t\tif ( args.event ) {\n\t\t\t\tvar event = $.Event( null, args.event );\n\t\t\t\targs.success = function () {\n\t\t\t\t\tacf.enableSubmit( $( event.target ) ).trigger( event );\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// action for 3rd party\n\t\t\tacf.doAction( 'validation_begin', this.$el );\n\n\t\t\t// lock form\n\t\t\tacf.lockForm( this.$el );\n\n\t\t\t// loading callback\n\t\t\targs.loading( this.$el, this );\n\n\t\t\t// update status\n\t\t\tthis.set( 'status', 'validating' );\n\n\t\t\t// success callback\n\t\t\tvar onSuccess = function ( json ) {\n\t\t\t\t// validate\n\t\t\t\tif ( ! acf.isAjaxSuccess( json ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// filter\n\t\t\t\tvar data = acf.applyFilters(\n\t\t\t\t\t'validation_complete',\n\t\t\t\t\tjson.data,\n\t\t\t\t\tthis.$el,\n\t\t\t\t\tthis\n\t\t\t\t);\n\n\t\t\t\t// add errors\n\t\t\t\tif ( ! data.valid ) {\n\t\t\t\t\tthis.addErrors( data.errors );\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t// complete\n\t\t\tvar onComplete = function () {\n\t\t\t\t// unlock form\n\t\t\t\tacf.unlockForm( this.$el );\n\n\t\t\t\t// failure\n\t\t\t\tif ( this.hasErrors() ) {\n\t\t\t\t\t// update status\n\t\t\t\t\tthis.set( 'status', 'invalid' );\n\n\t\t\t\t\t// action\n\t\t\t\t\tacf.doAction( 'validation_failure', this.$el, this );\n\n\t\t\t\t\t// display errors\n\t\t\t\t\tthis.showErrors();\n\n\t\t\t\t\t// failure callback\n\t\t\t\t\targs.failure( this.$el, this );\n\n\t\t\t\t\t// success\n\t\t\t\t} else {\n\t\t\t\t\t// update status\n\t\t\t\t\tthis.set( 'status', 'valid' );\n\n\t\t\t\t\t// remove previous error message\n\t\t\t\t\tif ( this.has( 'notice' ) ) {\n\t\t\t\t\t\tthis.get( 'notice' ).update( {\n\t\t\t\t\t\t\ttype: 'success',\n\t\t\t\t\t\t\ttext: acf.__( 'Validation successful' ),\n\t\t\t\t\t\t\ttimeout: 1000,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\n\t\t\t\t\t// action\n\t\t\t\t\tacf.doAction( 'validation_success', this.$el, this );\n\t\t\t\t\tacf.doAction( 'submit', this.$el );\n\n\t\t\t\t\t// success callback (submit form)\n\t\t\t\t\targs.success( this.$el, this );\n\n\t\t\t\t\t// lock form\n\t\t\t\t\tacf.lockForm( this.$el );\n\n\t\t\t\t\t// reset\n\t\t\t\t\tif ( args.reset ) {\n\t\t\t\t\t\tthis.reset();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// complete callback\n\t\t\t\targs.complete( this.$el, this );\n\n\t\t\t\t// clear errors\n\t\t\t\tthis.clearErrors();\n\t\t\t};\n\n\t\t\t// serialize form data\n\t\t\tvar data = acf.serialize( this.$el );\n\t\t\tdata.action = 'acf/validate_save_post';\n\n\t\t\t// ajax\n\t\t\t$.ajax( {\n\t\t\t\turl: acf.get( 'ajaxurl' ),\n\t\t\t\tdata: acf.prepareForAjax( data ),\n\t\t\t\ttype: 'post',\n\t\t\t\tdataType: 'json',\n\t\t\t\tcontext: this,\n\t\t\t\tsuccess: onSuccess,\n\t\t\t\tcomplete: onComplete,\n\t\t\t} );\n\n\t\t\t// return false to fail validation and allow AJAX\n\t\t\treturn false;\n\t\t},\n\n\t\t/**\n\t\t * setup\n\t\t *\n\t\t * Called during the constructor function to setup this instance\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tjQuery $form The form element.\n\t\t * @return\tvoid\n\t\t */\n\t\tsetup: function ( $form ) {\n\t\t\t// set $el\n\t\t\tthis.$el = $form;\n\t\t},\n\n\t\t/**\n\t\t * reset\n\t\t *\n\t\t * Rests the validation to be used again.\n\t\t *\n\t\t * @date\t6/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tvoid\n\t\t */\n\t\treset: function () {\n\t\t\t// reset data\n\t\t\tthis.set( 'errors', [] );\n\t\t\tthis.set( 'notice', null );\n\t\t\tthis.set( 'status', '' );\n\n\t\t\t// unlock form\n\t\t\tacf.unlockForm( this.$el );\n\t\t},\n\t} );\n\n\t/**\n\t * getValidator\n\t *\n\t * Returns the instance for a given form element.\n\t *\n\t * @date\t4/9/18\n\t * @since\t5.7.5\n\t *\n\t * @param\tjQuery $el The form element.\n\t * @return\tobject\n\t */\n\tvar getValidator = function ( $el ) {\n\t\t// instantiate\n\t\tvar validator = $el.data( 'acf' );\n\t\tif ( ! validator ) {\n\t\t\tvalidator = new Validator( $el );\n\t\t}\n\n\t\t// return\n\t\treturn validator;\n\t};\n\n\t/**\n\t * acf.validateForm\n\t *\n\t * A helper function for the Validator.validate() function.\n\t * Returns true if form is valid, or fetches a validation request and returns false.\n\t *\n\t * @date\t4/4/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tobject args A list of settings to customize the validation process.\n\t * @return\tbool\n\t */\n\n\tacf.validateForm = function ( args ) {\n\t\treturn getValidator( args.form ).validate( args );\n\t};\n\n\t/**\n\t * acf.enableSubmit\n\t *\n\t * Enables a submit button and returns the element.\n\t *\n\t * @date\t30/8/18\n\t * @since\t5.7.4\n\t *\n\t * @param\tjQuery $submit The submit button.\n\t * @return\tjQuery\n\t */\n\tacf.enableSubmit = function ( $submit ) {\n\t\treturn $submit.removeClass( 'disabled' );\n\t};\n\n\t/**\n\t * acf.disableSubmit\n\t *\n\t * Disables a submit button and returns the element.\n\t *\n\t * @date\t30/8/18\n\t * @since\t5.7.4\n\t *\n\t * @param\tjQuery $submit The submit button.\n\t * @return\tjQuery\n\t */\n\tacf.disableSubmit = function ( $submit ) {\n\t\treturn $submit.addClass( 'disabled' );\n\t};\n\n\t/**\n\t * acf.showSpinner\n\t *\n\t * Shows the spinner element.\n\t *\n\t * @date\t4/9/18\n\t * @since\t5.7.5\n\t *\n\t * @param\tjQuery $spinner The spinner element.\n\t * @return\tjQuery\n\t */\n\tacf.showSpinner = function ( $spinner ) {\n\t\t$spinner.addClass( 'is-active' ); // add class (WP > 4.2)\n\t\t$spinner.css( 'display', 'inline-block' ); // css (WP < 4.2)\n\t\treturn $spinner;\n\t};\n\n\t/**\n\t * acf.hideSpinner\n\t *\n\t * Hides the spinner element.\n\t *\n\t * @date\t4/9/18\n\t * @since\t5.7.5\n\t *\n\t * @param\tjQuery $spinner The spinner element.\n\t * @return\tjQuery\n\t */\n\tacf.hideSpinner = function ( $spinner ) {\n\t\t$spinner.removeClass( 'is-active' ); // add class (WP > 4.2)\n\t\t$spinner.css( 'display', 'none' ); // css (WP < 4.2)\n\t\treturn $spinner;\n\t};\n\n\t/**\n\t * acf.lockForm\n\t *\n\t * Locks a form by disabeling its primary inputs and showing a spinner.\n\t *\n\t * @date\t4/9/18\n\t * @since\t5.7.5\n\t *\n\t * @param\tjQuery $form The form element.\n\t * @return\tjQuery\n\t */\n\tacf.lockForm = function ( $form ) {\n\t\t// vars\n\t\tvar $wrap = findSubmitWrap( $form );\n\t\tvar $submit = $wrap.find( '.button, [type=\"submit\"]' );\n\t\tvar $spinner = $wrap.find( '.spinner, .acf-spinner' );\n\n\t\t// hide all spinners (hides the preview spinner)\n\t\tacf.hideSpinner( $spinner );\n\n\t\t// lock\n\t\tacf.disableSubmit( $submit );\n\t\tacf.showSpinner( $spinner.last() );\n\t\treturn $form;\n\t};\n\n\t/**\n\t * acf.unlockForm\n\t *\n\t * Unlocks a form by enabeling its primary inputs and hiding all spinners.\n\t *\n\t * @date\t4/9/18\n\t * @since\t5.7.5\n\t *\n\t * @param\tjQuery $form The form element.\n\t * @return\tjQuery\n\t */\n\tacf.unlockForm = function ( $form ) {\n\t\t// vars\n\t\tvar $wrap = findSubmitWrap( $form );\n\t\tvar $submit = $wrap.find( '.button, [type=\"submit\"]' );\n\t\tvar $spinner = $wrap.find( '.spinner, .acf-spinner' );\n\n\t\t// unlock\n\t\tacf.enableSubmit( $submit );\n\t\tacf.hideSpinner( $spinner );\n\t\treturn $form;\n\t};\n\n\t/**\n\t * findSubmitWrap\n\t *\n\t * An internal function to find the 'primary' form submit wrapping element.\n\t *\n\t * @date\t4/9/18\n\t * @since\t5.7.5\n\t *\n\t * @param\tjQuery $form The form element.\n\t * @return\tjQuery\n\t */\n\tvar findSubmitWrap = function ( $form ) {\n\t\t// default post submit div\n\t\tvar $wrap = $form.find( '#submitdiv' );\n\t\tif ( $wrap.length ) {\n\t\t\treturn $wrap;\n\t\t}\n\n\t\t// 3rd party publish box\n\t\tvar $wrap = $form.find( '#submitpost' );\n\t\tif ( $wrap.length ) {\n\t\t\treturn $wrap;\n\t\t}\n\n\t\t// term, user\n\t\tvar $wrap = $form.find( 'p.submit' ).last();\n\t\tif ( $wrap.length ) {\n\t\t\treturn $wrap;\n\t\t}\n\n\t\t// front end form\n\t\tvar $wrap = $form.find( '.acf-form-submit' );\n\t\tif ( $wrap.length ) {\n\t\t\treturn $wrap;\n\t\t}\n\n\t\t// default\n\t\treturn $form;\n\t};\n\n\t/**\n\t * A debounced function to trigger a form submission.\n\t *\n\t * @date\t15/07/2020\n\t * @since\t5.9.0\n\t *\n\t * @param\ttype Var Description.\n\t * @return\ttype Description.\n\t */\n\tvar submitFormDebounced = acf.debounce( function ( $form ) {\n\t\t$form.submit();\n\t} );\n\n\t/**\n\t * Ensure field is visible for validation errors\n\t *\n\t * @date\t20/10/2021\n\t * @since\t5.11.0\n\t */\n\tvar ensureFieldPostBoxIsVisible = function ( $el ) {\n\t\t// Find the postbox element containing this field.\n\t\tvar $postbox = $el.parents( '.acf-postbox' );\n\t\tif ( $postbox.length ) {\n\t\t\tvar acf_postbox = acf.getPostbox( $postbox );\n\t\t\tif ( acf_postbox && acf_postbox.isHiddenByScreenOptions() ) {\n\t\t\t\t// Rather than using .show() here, we don't want the field to appear next reload.\n\t\t\t\t// So just temporarily show the field group so validation can complete.\n\t\t\t\tacf_postbox.$el.removeClass( 'hide-if-js' );\n\t\t\t\tacf_postbox.$el.css( 'display', '' );\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * Ensure metaboxes which contain browser validation failures are visible.\n\t *\n\t * @date\t20/10/2021\n\t * @since\t5.11.0\n\t */\n\tvar ensureInvalidFieldVisibility = function () {\n\t\t// Load each ACF input field and check it's browser validation state.\n\t\tvar $inputs = $( '.acf-field input' );\n\t\t$inputs.each( function () {\n\t\t\tif ( ! this.checkValidity() ) {\n\t\t\t\t// Field is invalid, so we need to make sure it's metabox is visible.\n\t\t\t\tensureFieldPostBoxIsVisible( $( this ) );\n\t\t\t}\n\t\t} );\n\t};\n\n\t/**\n\t * acf.validation\n\t *\n\t * Global validation logic\n\t *\n\t * @date\t4/4/18\n\t * @since\t5.6.9\n\t *\n\t * @param\tvoid\n\t * @return\tvoid\n\t */\n\n\tacf.validation = new acf.Model( {\n\t\t/** @var string The model identifier. */\n\t\tid: 'validation',\n\n\t\t/** @var bool The active state. Set to false before 'prepare' to prevent validation. */\n\t\tactive: true,\n\n\t\t/** @var string The model initialize time. */\n\t\twait: 'prepare',\n\n\t\t/** @var object The model actions. */\n\t\tactions: {\n\t\t\tready: 'addInputEvents',\n\t\t\tappend: 'addInputEvents',\n\t\t},\n\n\t\t/** @var object The model events. */\n\t\tevents: {\n\t\t\t'click input[type=\"submit\"]': 'onClickSubmit',\n\t\t\t'click button[type=\"submit\"]': 'onClickSubmit',\n\t\t\t//'click #editor .editor-post-publish-button': 'onClickSubmitGutenberg',\n\t\t\t'click #save-post': 'onClickSave',\n\t\t\t'submit form#post': 'onSubmitPost',\n\t\t\t'submit form': 'onSubmit',\n\t\t},\n\n\t\t/**\n\t\t * initialize\n\t\t *\n\t\t * Called when initializing the model.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tvoid\n\t\t */\n\t\tinitialize: function () {\n\t\t\t// check 'validation' setting\n\t\t\tif ( ! acf.get( 'validation' ) ) {\n\t\t\t\tthis.active = false;\n\t\t\t\tthis.actions = {};\n\t\t\t\tthis.events = {};\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * enable\n\t\t *\n\t\t * Enables validation.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tvoid\n\t\t */\n\t\tenable: function () {\n\t\t\tthis.active = true;\n\t\t},\n\n\t\t/**\n\t\t * disable\n\t\t *\n\t\t * Disables validation.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tvoid\n\t\t */\n\t\tdisable: function () {\n\t\t\tthis.active = false;\n\t\t},\n\n\t\t/**\n\t\t * reset\n\t\t *\n\t\t * Rests the form validation to be used again\n\t\t *\n\t\t * @date\t6/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tjQuery $form The form element.\n\t\t * @return\tvoid\n\t\t */\n\t\treset: function ( $form ) {\n\t\t\tgetValidator( $form ).reset();\n\t\t},\n\n\t\t/**\n\t\t * addInputEvents\n\t\t *\n\t\t * Adds 'invalid' event listeners to HTML inputs.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tjQuery $el The element being added / readied.\n\t\t * @return\tvoid\n\t\t */\n\t\taddInputEvents: function ( $el ) {\n\t\t\t// Bug exists in Safari where custom \"invalid\" handling prevents draft from saving.\n\t\t\tif ( acf.get( 'browser' ) === 'safari' ) return;\n\n\t\t\t// vars\n\t\t\tvar $inputs = $( '.acf-field [name]', $el );\n\n\t\t\t// check\n\t\t\tif ( $inputs.length ) {\n\t\t\t\tthis.on( $inputs, 'invalid', 'onInvalid' );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * onInvalid\n\t\t *\n\t\t * Callback for the 'invalid' event.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tobject e The event object.\n\t\t * @param\tjQuery $el The input element.\n\t\t * @return\tvoid\n\t\t */\n\t\tonInvalid: function ( e, $el ) {\n\t\t\t// prevent default\n\t\t\t// - prevents browser error message\n\t\t\t// - also fixes chrome bug where 'hidden-by-tab' field throws focus error\n\t\t\te.preventDefault();\n\n\t\t\t// vars\n\t\t\tvar $form = $el.closest( 'form' );\n\n\t\t\t// check form exists\n\t\t\tif ( $form.length ) {\n\t\t\t\t// add error to validator\n\t\t\t\tgetValidator( $form ).addError( {\n\t\t\t\t\tinput: $el.attr( 'name' ),\n\t\t\t\t\tmessage: acf.strEscape( e.target.validationMessage ),\n\t\t\t\t} );\n\n\t\t\t\t// trigger submit on $form\n\t\t\t\t// - allows for \"save\", \"preview\" and \"publish\" to work\n\t\t\t\tsubmitFormDebounced( $form );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * onClickSubmit\n\t\t *\n\t\t * Callback when clicking submit.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tobject e The event object.\n\t\t * @param\tjQuery $el The input element.\n\t\t * @return\tvoid\n\t\t */\n\t\tonClickSubmit: function ( e, $el ) {\n\t\t\t// Some browsers (safari) force their browser validation before our AJAX validation,\n\t\t\t// so we need to make sure fields are visible earlier than showErrors()\n\t\t\tensureInvalidFieldVisibility();\n\n\t\t\t// store the \"click event\" for later use in this.onSubmit()\n\t\t\tthis.set( 'originalEvent', e );\n\t\t},\n\n\t\t/**\n\t\t * onClickSave\n\t\t *\n\t\t * Set ignore to true when saving a draft.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tobject e The event object.\n\t\t * @param\tjQuery $el The input element.\n\t\t * @return\tvoid\n\t\t */\n\t\tonClickSave: function ( e, $el ) {\n\t\t\tthis.set( 'ignore', true );\n\t\t},\n\n\t\t/**\n\t\t * onClickSubmitGutenberg\n\t\t *\n\t\t * Custom validation event for the gutenberg editor.\n\t\t *\n\t\t * @date\t29/10/18\n\t\t * @since\t5.8.0\n\t\t *\n\t\t * @param\tobject e The event object.\n\t\t * @param\tjQuery $el The input element.\n\t\t * @return\tvoid\n\t\t */\n\t\tonClickSubmitGutenberg: function ( e, $el ) {\n\t\t\t// validate\n\t\t\tvar valid = acf.validateForm( {\n\t\t\t\tform: $( '#editor' ),\n\t\t\t\tevent: e,\n\t\t\t\treset: true,\n\t\t\t\tfailure: function ( $form, validator ) {\n\t\t\t\t\tvar $notice = validator.get( 'notice' ).$el;\n\t\t\t\t\t$notice.appendTo( '.components-notice-list' );\n\t\t\t\t\t$notice\n\t\t\t\t\t\t.find( '.acf-notice-dismiss' )\n\t\t\t\t\t\t.removeClass( 'small' );\n\t\t\t\t},\n\t\t\t} );\n\n\t\t\t// if not valid, stop event and allow validation to continue\n\t\t\tif ( ! valid ) {\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopImmediatePropagation();\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * onSubmitPost\n\t\t *\n\t\t * Callback when the 'post' form is submit.\n\t\t *\n\t\t * @date\t5/3/19\n\t\t * @since\t5.7.13\n\t\t *\n\t\t * @param\tobject e The event object.\n\t\t * @param\tjQuery $el The input element.\n\t\t * @return\tvoid\n\t\t */\n\t\tonSubmitPost: function ( e, $el ) {\n\t\t\t// Check if is preview.\n\t\t\tif ( $( 'input#wp-preview' ).val() === 'dopreview' ) {\n\t\t\t\t// Ignore validation.\n\t\t\t\tthis.set( 'ignore', true );\n\n\t\t\t\t// Unlock form to fix conflict with core \"submit.edit-post\" event causing all submit buttons to be disabled.\n\t\t\t\tacf.unlockForm( $el );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * onSubmit\n\t\t *\n\t\t * Callback when the form is submit.\n\t\t *\n\t\t * @date\t4/9/18\n\t\t * @since\t5.7.5\n\t\t *\n\t\t * @param\tobject e The event object.\n\t\t * @param\tjQuery $el The input element.\n\t\t * @return\tvoid\n\t\t */\n\t\tonSubmit: function ( e, $el ) {\n\t\t\t// Allow form to submit if...\n\t\t\tif (\n\t\t\t\t// Validation has been disabled.\n\t\t\t\t! this.active ||\n\t\t\t\t// Or this event is to be ignored.\n\t\t\t\tthis.get( 'ignore' ) ||\n\t\t\t\t// Or this event has already been prevented.\n\t\t\t\te.isDefaultPrevented()\n\t\t\t) {\n\t\t\t\t// Return early and call reset function.\n\t\t\t\treturn this.allowSubmit();\n\t\t\t}\n\n\t\t\t// Validate form.\n\t\t\tvar valid = acf.validateForm( {\n\t\t\t\tform: $el,\n\t\t\t\tevent: this.get( 'originalEvent' ),\n\t\t\t} );\n\n\t\t\t// If not valid, stop event to prevent form submit.\n\t\t\tif ( ! valid ) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * allowSubmit\n\t\t *\n\t\t * Resets data during onSubmit when the form is allowed to submit.\n\t\t *\n\t\t * @date\t5/3/19\n\t\t * @since\t5.7.13\n\t\t *\n\t\t * @param\tvoid\n\t\t * @return\tvoid\n\t\t */\n\t\tallowSubmit: function () {\n\t\t\t// Reset \"ignore\" state.\n\t\t\tthis.set( 'ignore', false );\n\n\t\t\t// Reset \"originalEvent\" object.\n\t\t\tthis.set( 'originalEvent', false );\n\n\t\t\t// Return true\n\t\t\treturn true;\n\t\t},\n\t} );\n\n\tvar gutenbergValidation = new acf.Model( {\n\t\twait: 'prepare',\n\t\tinitialize: function () {\n\t\t\t// Bail early if not Gutenberg.\n\t\t\tif ( ! acf.isGutenberg() ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Custommize the editor.\n\t\t\tthis.customizeEditor();\n\t\t},\n\t\tcustomizeEditor: function () {\n\t\t\t// Extract vars.\n\t\t\tvar editor = wp.data.dispatch( 'core/editor' );\n\t\t\tvar editorSelect = wp.data.select( 'core/editor' );\n\t\t\tvar notices = wp.data.dispatch( 'core/notices' );\n\n\t\t\t// Backup original method.\n\t\t\tvar savePost = editor.savePost;\n\n\t\t\t// Listen for changes to post status and perform actions:\n\t\t\t// a) Enable validation for \"publish\" action.\n\t\t\t// b) Remember last non \"publish\" status used for restoring after validation fail.\n\t\t\tvar useValidation = false;\n\t\t\tvar lastPostStatus = '';\n\t\t\twp.data.subscribe( function () {\n\t\t\t\tvar postStatus = editorSelect.getEditedPostAttribute(\n\t\t\t\t\t'status'\n\t\t\t\t);\n\t\t\t\tuseValidation =\n\t\t\t\t\tpostStatus === 'publish' || postStatus === 'future';\n\t\t\t\tlastPostStatus =\n\t\t\t\t\tpostStatus !== 'publish' ? postStatus : lastPostStatus;\n\t\t\t} );\n\n\t\t\t// Create validation version.\n\t\t\teditor.savePost = function ( options ) {\n\t\t\t\toptions = options || {};\n\n\t\t\t\t// Backup vars.\n\t\t\t\tvar _this = this;\n\t\t\t\tvar _args = arguments;\n\n\t\t\t\t// Perform validation within a Promise.\n\t\t\t\treturn new Promise( function ( resolve, reject ) {\n\t\t\t\t\t// Bail early if is autosave or preview.\n\t\t\t\t\tif ( options.isAutosave || options.isPreview ) {\n\t\t\t\t\t\treturn resolve( 'Validation ignored (autosave).' );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Bail early if validation is not needed.\n\t\t\t\t\tif ( ! useValidation ) {\n\t\t\t\t\t\treturn resolve( 'Validation ignored (draft).' );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Validate the editor form.\n\t\t\t\t\tvar valid = acf.validateForm( {\n\t\t\t\t\t\tform: $( '#editor' ),\n\t\t\t\t\t\treset: true,\n\t\t\t\t\t\tcomplete: function ( $form, validator ) {\n\t\t\t\t\t\t\t// Always unlock the form after AJAX.\n\t\t\t\t\t\t\teditor.unlockPostSaving( 'acf' );\n\t\t\t\t\t\t},\n\t\t\t\t\t\tfailure: function ( $form, validator ) {\n\t\t\t\t\t\t\t// Get validation error and append to Gutenberg notices.\n\t\t\t\t\t\t\tvar notice = validator.get( 'notice' );\n\t\t\t\t\t\t\tnotices.createErrorNotice( notice.get( 'text' ), {\n\t\t\t\t\t\t\t\tid: 'acf-validation',\n\t\t\t\t\t\t\t\tisDismissible: true,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\tnotice.remove();\n\n\t\t\t\t\t\t\t// Restore last non \"publish\" status.\n\t\t\t\t\t\t\tif ( lastPostStatus ) {\n\t\t\t\t\t\t\t\teditor.editPost( {\n\t\t\t\t\t\t\t\t\tstatus: lastPostStatus,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t// Rejext promise and prevent savePost().\n\t\t\t\t\t\t\treject( 'Validation failed.' );\n\t\t\t\t\t\t},\n\t\t\t\t\t\tsuccess: function () {\n\t\t\t\t\t\t\tnotices.removeNotice( 'acf-validation' );\n\n\t\t\t\t\t\t\t// Resolve promise and allow savePost().\n\t\t\t\t\t\t\tresolve( 'Validation success.' );\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\n\t\t\t\t\t// Resolve promise and allow savePost() if no validation is needed.\n\t\t\t\t\tif ( valid ) {\n\t\t\t\t\t\tresolve( 'Validation bypassed.' );\n\n\t\t\t\t\t\t// Otherwise, lock the form and wait for AJAX response.\n\t\t\t\t\t} else {\n\t\t\t\t\t\teditor.lockPostSaving( 'acf' );\n\t\t\t\t\t}\n\t\t\t\t} )\n\t\t\t\t\t.then( function () {\n\t\t\t\t\t\treturn savePost.apply( _this, _args );\n\t\t\t\t\t} )\n\t\t\t\t\t.catch( function ( err ) {\n\t\t\t\t\t\t// Nothing to do here, user is alerted of validation issues.\n\t\t\t\t\t} );\n\t\t\t};\n\t\t},\n\t} );\n} )( jQuery );\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import './_acf-field.js';\nimport './_acf-fields.js';\nimport './_acf-field-accordion.js';\nimport './_acf-field-button-group.js';\nimport './_acf-field-checkbox.js';\nimport './_acf-field-color-picker.js';\nimport './_acf-field-date-picker.js';\nimport './_acf-field-date-time-picker.js';\nimport './_acf-field-google-map.js';\nimport './_acf-field-image.js';\nimport './_acf-field-file.js';\nimport './_acf-field-link.js';\nimport './_acf-field-oembed.js';\nimport './_acf-field-radio.js';\nimport './_acf-field-range.js';\nimport './_acf-field-relationship.js';\nimport './_acf-field-select.js';\nimport './_acf-field-tab.js';\nimport './_acf-field-post-object.js';\nimport './_acf-field-page-link.js';\nimport './_acf-field-user.js';\nimport './_acf-field-taxonomy.js';\nimport './_acf-field-time-picker.js';\nimport './_acf-field-true-false.js';\nimport './_acf-field-url.js';\nimport './_acf-field-wysiwyg.js';\nimport './_acf-condition.js';\nimport './_acf-conditions.js';\nimport './_acf-condition-types.js';\nimport './_acf-unload.js';\nimport './_acf-postbox.js';\nimport './_acf-media.js';\nimport './_acf-screen.js';\nimport './_acf-select2.js';\nimport './_acf-tinymce.js';\nimport './_acf-validation.js';\nimport './_acf-helpers.js';\nimport './_acf-compatibility.js';\n"],"names":["$","undefined","acf","newCompatibility","instance","compatibilty","__proto__","compatibility","getCompatibility","_acf","l10n","o","fields","update","set","add_action","addAction","remove_action","removeAction","do_action","doAction","add_filter","addFilter","remove_filter","removeFilter","apply_filters","applyFilters","parse_args","parseArgs","disable_el","disable","disable_form","enable_el","enable","enable_form","update_user_setting","updateUserSetting","prepare_for_ajax","prepareForAjax","is_ajax_success","isAjaxSuccess","remove_el","remove","remove_tr","str_replace","strReplace","render_select","renderSelect","get_uniqid","uniqid","serialize_form","serialize","esc_html","strEscape","str_sanitize","strSanitize","_e","k1","k2","compatKey","compats","__","string","get_selector","s","selector","isPlainObject","isEmptyObject","k","get_fields","$el","all","args","is","parent","suppressFilters","findFields","get_field","$fields","apply","arguments","length","first","get_closest_field","closest","get_field_wrap","get_field_key","$field","data","get_field_type","get_data","defaults","maybe_get","obj","key","value","keys","String","split","i","hasOwnProperty","compatibleArgument","arg","Field","compatibleArguments","arrayArgs","map","compatibleCallback","origCallback","document","action","callback","priority","context","actions","model","filters","events","extend","each","name","_add_action","_add_filter","_add_event","indexOf","event","substr","fn","e","field_group","on","get","field","type","_set_$field","focus","doFocus","_validation","validation","remove_error","getField","removeError","add_warning","message","showNotice","text","timeout","fetch","validateForm","enableSubmit","disableSubmit","showSpinner","hideSpinner","unlockForm","lockForm","tooltip","newTooltip","target","temp","confirm","button_y","button_n","cancel","confirm_remove","confirmRemove","media","Model","activeFrame","new_media_popup","frame","onNewMediaPopup","popup","props","mime_types","allowedTypes","id","attachment","newMediaPopup","select2","init","$select","allow_null","allowNull","ajax_action","ajaxAction","newSelect2","destroy","getInstance","postbox","render","edit_url","editLink","edit_title","editTitle","newPostbox","screen","check","ajax","jQuery","parseString","val","isEqualTo","v1","v2","toLowerCase","isEqualToNumber","parseFloat","isGreaterThan","isLessThan","inArray","array","containsString","haystack","needle","matchesPattern","pattern","regexp","RegExp","match","HasValue","Condition","operator","label","fieldTypes","rule","Array","choices","fieldObject","registerConditionType","HasNoValue","prototype","EqualTo","isNumeric","NotEqualTo","PatternMatch","Contains","TrueFalseEqualTo","choiceType","TrueFalseNotEqualTo","SelectEqualTo","lines","$setting","$input","prop","push","line","trim","SelectNotEqualTo","GreaterThan","LessThan","SelectionGreaterThan","SelectionLessThan","storage","conditions","change","keyup","enableField","disableField","setup","getEventTarget","calculate","newCondition","fieldType","conditionTypes","getConditionTypes","condition","modelId","strPascalCase","proto","mid","models","getConditionType","registerConditionForFieldType","conditionType","types","ProtoFieldTypes","ProtoOperator","CONTEXT","conditionsManager","new_field","onNewField","has","getConditions","getSiblingField","getFields","sibling","parents","Conditions","timeStamp","groups","rules","addRules","addRule","changed","show","hide","showEnable","cid","hideDisable","pass","getGroups","group","passed","filter","hasGroups","addGroup","hasGroup","getGroup","removeGroup","delete","groupArray","hasRule","getRule","removeRule","wait","$control","initialize","hasClass","$label","$labelWrap","$inputWrap","$wrap","$instructions","children","append","$table","$newLabel","$newInput","$newTable","attr","$newWrap","html","addClass","order","getPreference","css","prepend","accordionManager","iconHtml","open","$parent","nextUntil","removeAttr","registerFieldType","unload","isOpen","toggle","close","isGutenberg","duration","find","slideDown","replaceWith","siblings","slideUp","removeClass","onClick","preventDefault","onInvalidField","busy","setTimeout","onUnload","setPreference","setValue","trigger","selected","$toggle","$inputs","not","getValue","onChange","checked","onClickAdd","getInputName","before","onClickToggle","$labels","onClickCustom","$text","next","duplicateField","$inputText","iris","defaultColor","palettes","clear","wpColorPicker","onDuplicate","$duplicate","$colorPicker","initializeCompatibility","dateFormat","altField","altFormat","changeYear","yearRange","changeMonth","showButtonPanel","firstDay","newDatePicker","datepicker","onBlur","datePickerManager","locale","rtl","isRTL","regional","setDefaults","exists","wrap","DatePickerField","timeFormat","altFieldTimeOnly","altTimeFormat","controlType","oneLine","newDateTimePicker","dateTimePickerManager","timepicker","datetimepicker","ImageField","validateAttachment","attributes","url","alt","title","filename","filesizeHumanReadable","icon","src","selectAttachment","multiple","mode","library","select","proxy","editAttachment","button","showField","$search","$canvas","setState","state","JSON","parse","silent","valAttr","stringify","renderVal","address","setPosition","lat","lng","marker","setVisible","newLatLng","google","maps","LatLng","center","position","getPosition","setCenter","withAPI","initializeMap","bind","zoom","mapArgs","scrollwheel","parseInt","mapTypeId","MapTypeId","ROADMAP","draggable","raiseOnDrag","autocomplete","Map","markerArgs","Marker","isset","autocompleteArgs","places","Autocomplete","bindTo","addMapEvents","addListener","latLng","searchPosition","place","getPlace","searchPlace","getZoom","geocoder","geocode","location","results","status","replace","parseResult","geometry","formatted_address","searchAddress","searchLocation","navigator","geolocation","alert","getCurrentPosition","coords","latitude","longitude","error","result","place_id","street_number","street_name","city","post_code","country","keywords","address_components","component","component_type","long_name","short_name","onClickClear","onClickLocate","onClickSearch","onFocusSearch","onBlurSearch","onKeyupSearch","onKeydownSearch","which","blur","onShow","loading","window","Geocoder","dataType","cache","success","caption","description","width","height","size","isget","getNext","removeAttachment","onClickEdit","onClickRemove","$hiddenInput","getFileInputData","param","$node","$div","wpLink","getNodeValue","decode","setNodeValue","getInputValue","setInputValue","$textarea","onOpen","wpLinkL10n","onClose","$submit","isSubmit","off","getSearchVal","showLoading","hideLoading","maybeSearch","prevUrl","clearTimeout","search","ajaxData","field_key","xhr","abort","json","complete","onKeypressSearch","onChangeSearch","SelectField","$inputAlt","$list","list","$listItems","$listItem","newChoice","join","newValue","delayed","once","sortable","items","forceHelperSize","forcePlaceholderSize","scroll","scrollTop","onScrollChoices","one","onceInView","Math","ceil","scrollHeight","innerHeight","paged","onKeypressFilter","onChangeFilter","maybeFetch","max","$span","$li","getAjaxData","$choiceslist","$loading","onComplete","onSuccess","more","walkChoices","$html","$prevLabel","$prevList","walk","isArray","item","escHtml","escAttr","removeField","inherit","placeholder","onRemove","tabs","tab","findTabs","prevAll","findTab","$tabs","$tab","settings","endpoint","placement","Tabs","addTab","isActive","showFields","hiddenByTab","hideFields","lockKey","visible","refresh","hidden","reset","active","index","initialized","$before","initializeTabs","getVisible","shift","groupIndex","tabIndex","isVisible","selectTab","closeTabs","getActive","setActive","hasActive","closeActive","closeTab","openTab","t","$a","outerHTML","Tab","onRefresh","attribute","top","outerHeight","tabsManager","prepare","invalid_field","getTabs","getInstances","ftype","getRelatedPrototype","getRelatedType","getFieldType","$form","$name","$button","$message","notice","step1","newPopup","step2","content","step3","stopImmediatePropagation","startButtonLoading","term_name","term_parent","step4","stopButtonLoading","step5","newNotice","getAjaxMessage","dismiss","getAjaxError","term","$option","term_id","term_label","after","otherField","appendTerm","selectTerm","appendTermSelect","appendTermCheckbox","addOption","$ul","selectOption","onClickRadio","closeText","selectText","timeOnly","dp_instance","t_instance","$close","dpDiv","_updateDateTime","newTimePicker","$switch","$on","$off","switchOn","switchOff","onFocus","onKeypress","keyCode","isValid","onkeyup","$query_nonce","user_query_nonce","unmountField","remountField","getMode","initializeEditor","tinymce","quicktags","toolbar","oldId","newId","uniqueId","inputData","inputVal","rename","destructive","onMousedown","enableEditor","disableEditor","eventScope","$parents","removeNotice","away","showError","bubbles","newField","getFieldTypes","category","limit","slice","findField","findClosestField","getClosestField","addGlobalFieldAction","globalAction","pluralAction","singleAction","globalCallback","extraArgs","pluralArgs","concat","pluralCallback","singleArgs","addSingleFieldAction","singleEvent","singleCallback","variations","variation","prefix","singleFieldEvents","globalFieldActions","singleFieldActions","fieldsEventManager","duplicateFieldsManager","duplicate","duplicate_fields","$el2","onDuplicateFields","duplicates","refreshHelper","show_field","hide_field","remove_field","unmount_field","remount_field","mountHelper","sortstart","sortstop","onSortstart","$item","onSortstop","sortableHelper","$placeholder","duplicateHelper","after_duplicate","onAfterDuplicate","vals","tableHelper","renderTables","self","renderTable","$ths","$tds","$th","$cells","$hidden","availableWidth","colspan","$fixedWidths","$auoWidths","last","$td","fieldsHelper","renderGroups","renderGroup","$row","thisTop","thisLeft","left","outerWidth","thisHeight","add","bodyClassShiftHelper","keydown","isShiftKey","onKeyDown","onKeyUp","autoOpen","EditMediaPopup","SelectMediaPopup","getPostID","postID","getMimeTypes","getMimeType","allTypes","MediaPopup","options","getFrameOptions","addFrameStates","wp","addFrameEvents","detach","states","uploadedTo","post__in","Query","query","mirroring","_acfuploader","controller","Library","filterable","editable","allowLocalEdits","EditImage","image","view","loadEditor","selection","_x","_wpPluploadSettings","multipart_params","console","log","customizeFilters","audio","video","mimeType","newFilter","orderby","unattached","uploaded","renderFilters","customizePrototypes","post","customizeAttachmentsButton","customizeAttachmentsRouter","customizeAttachmentFilters","customizeAttachmentCompat","customizeAttachmentLibrary","Button","_","Backbone","listenTo","Parent","Router","addExpand","AttachmentFilters","All","chain","el","sortBy","pluck","AttachmentCompat","rendered","save","serializeForAjax","saveCompat","always","postSave","AttachmentLibrary","Attachment","acf_errors","toggleSelection","collection","single","errors","$sidebar","postboxManager","getPostbox","getPostboxes","Postbox","style","edit","$postbox","$hide","$hideLabel","$hndle","$handleActions","$inside","isHiddenByScreenOptions","isPost","isUser","isTaxonomy","isAttachment","isNavMenu","isWidget","isComment","getPageTemplate","getPageParent","getPageType","getPostType","getPostFormat","getPostCoreTerms","terms","tax_input","post_category","tax","getPostTerms","productType","getProductType","product_type","uniqueArray","post_id","postType","post_type","pageTemplate","page_template","pageParent","page_parent","pageType","page_type","postFormat","post_format","postTerms","post_terms","renderPostScreen","renderUserScreen","copyEvents","$from","$to","_data","handler","sortMetabox","ids","wpMinorVersion","postboxHeader","classes","$prefs","_result","sorted","gutenScreen","postEdits","subscribe","debounce","onRefreshPostScreen","domReady","getTaxonomies","taxonomy","rest_base","_postEdits","getPostEdits","getEditedPostAttribute","taxonomies","slug","dispatch","locations","getActiveMetaBoxLocations","getMetaBoxesPerLocation","m","r","setAvailableMetaBoxesPerLocation","ajaxResults","getVersion","Select2_4","Select2_3","Select2","getOption","unselectOption","option","$options","sort","a","b","getAttribute","mergeOptions","getChoices","crawl","$child","params","page","getAjaxResults","processAjaxResults","pagination","allowClear","escapeMarkup","markup","templateSelection","$selection","element","appendTo","attrAjax","removeData","delay","processResults","$container","stop","$prevOptions","$prevGroup","$group","separator","dropdownCss","initSelection","inputValue","quietMillis","choice","select2Manager","version","addTranslations4","addTranslations3","select2L10n","errorLoading","load_fail","inputTooLong","overChars","input","maximum","input_too_long_n","input_too_long_1","inputTooShort","remainingChars","minimum","input_too_short_n","input_too_short_1","loadingMore","load_more","maximumSelected","selection_too_long_n","selection_too_long_1","noResults","matches_0","searching","amd","define","formatMatches","matches","matches_n","matches_1","formatNoMatches","formatAjaxError","formatInputTooShort","min","formatInputTooLong","formatSelectionTooBig","formatLoadMore","formatSearching","locales","tinyMCEPreInit","mceInit","acf_content","qtInit","initializeTinymce","initializeQuicktags","toolbars","ed","MouseEvent","dispatchEvent","wp_autoresize_on","tadv_noautop","wpautop","buildQuicktags","canvas","theButtons","use","instanceId","buttons","edButtons","dfw","QTags","DFWButton","getElementsByTagName","dir","textdirection","TextDirectionButton","innerHTML","triggerHandler","destroyTinymce","enableTinymce","switchEditors","go","editorManager","ready","onPrepare","onReady","editor","autop","oldEditor","removep","editors","activeEditor","wpActiveEditor","validation_failure","validation_success","stopListening","startListening","Validator","addErrors","addError","hasErrors","clearErrors","getErrors","getFieldErrors","inputs","getGlobalErrors","showErrors","fieldErrors","globalErrors","errorCount","$scrollTo","ensureFieldPostBoxIsVisible","errorMessage","animate","offset","onChangeStatus","prevValue","validate","failure","submit","Event","valid","getValidator","validator","form","$spinner","findSubmitWrap","submitFormDebounced","acf_postbox","ensureInvalidFieldVisibility","checkValidity","addInputEvents","onInvalid","validationMessage","onClickSubmit","onClickSave","onClickSubmitGutenberg","$notice","onSubmitPost","onSubmit","isDefaultPrevented","allowSubmit","gutenbergValidation","customizeEditor","editorSelect","notices","savePost","useValidation","lastPostStatus","postStatus","_this","_args","Promise","resolve","reject","isAutosave","isPreview","unlockPostSaving","createErrorNotice","isDismissible","editPost","lockPostSaving","then","catch","err"],"sourceRoot":""}