import React, { useState } from 'react' import Filter from './Filter' export default { title: 'search/Filter' } const FilterHooked = () => { const [dummyState, setDummyState] = useState(null) return ( <> { setDummyState(demo) }} />
Filter: {JSON.stringify(dummyState)}
) } export const filter = () => const FilterWithDefaultValueHooked = () => { const [dummyState, setDummyState] = useState('Option 3') return ( <> { setDummyState(demo) }} />
Tag: {JSON.stringify(dummyState)}
) } export const filterWithDefaultValue = () => const FilterColorHooked = () => { const [dummyState, setDummyState] = useState(null) return ( <> { setDummyState(colors) }} />
Color: {JSON.stringify(dummyState)}
) } export const colorFilter = () => (function ($, api) { "use strict"; api.controlConstructor['jeg-preset'] = api.controlConstructor.default.extend({ ready: function () { var control = this, selectValue, element = control.container.find( 'select' ); $( element ).selectize(); // Trigger a change this.container.on('change', 'select', function () { // Get the control's value selectValue = $(this).val(); // Update the value using the customizer API and trigger the "save" button control.setting.set(selectValue); // We have to get the choices of this control // and then start parsing them to see what we have to do for each of the choices. $.each(control.params.choices, function (key, value) { // If the current value of the control is the key of the choice, // then we can continue processing, Otherwise there's no reason to do anything. if (selectValue === key) { // Each choice has an array of settings defined in it. // We'll have to loop through them all and apply the changes needed to them. $.each(value.settings, function (presetControl, presetSettingValue) { jegSetSettingValue(presetControl, presetSettingValue); }); } }); }); } }); })(jQuery, wp.customize); import React from 'react' import TextInput from '../Search/TextInput' import Filter from '../Search/Filter' import styles from './SearchUi.module.scss' const FreeTemplateKits = ({ searchParams, onSearchSubmitted, aggregations }) => { return (
{ onSearchSubmitted({ ...args }) }} /> {aggregations ? (
{aggregations.industries ? ( { onSearchSubmitted({ ...searchParams, ...args }) }} label='Categories' name='industry' value={searchParams.industries} attributes={aggregations.industries} /> ) : null}
) : null}
) } export default FreeTemplateKits