123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- import { Dictionary } from './types/interfaces/Dictionary';
- import FilterItem from './FilterItem';
- /**
- * A function to check that all elements of an array are found within another array.
- * @param {Array} arr1 is the array of strings to be checked
- * @param {Array} arr2 is the array of strings to check against
- * @return {Boolean} whether all string of arr1 are contained in arr2
- */
- declare const allStringsOfArray1InArray2: (arr1: string[], arr2: string[]) => boolean;
- export { allStringsOfArray1InArray2 };
- /**
- * Given a CSS prop it will normalize the syntax for JS
- * e.g. transform background-color to backgroundColor
- * @param {String} cssProp prop name
- * @return {String} normalized name
- */
- declare const getNormalizedCssPropName: (cssProp: string) => string;
- export { getNormalizedCssPropName };
- /**
- * Set inline styles on an HTML node
- * @param {HTMLElement} node - HTML node
- * @param {Object} styles - object with styles
- * @returns {undefined}
- */
- declare function setStylesOnHTMLNode(node: Element, styles: any): void;
- export { setStylesOnHTMLNode };
- /**
- * Returns an object with value/key pairs of all data
- * attributes on an HTML element, disregarding the
- * two data attributes that are reserved for internal
- * usage by Filterizr
- * @param {Object} node - HTML node
- * @returns {Object} map of data attributes / values
- */
- declare function getDataAttributesOfHTMLNode(node: Element): Dictionary;
- export { getDataAttributesOfHTMLNode };
- /**
- * Check that a DOM element has a data-attribute present
- * @param {Object} node element
- * @param {String} dataAttributeName name of data attribute
- * @return {Boolean} data attribute exists
- */
- declare function checkDataAttributeExists(node: Element, dataAttributeName: string): boolean;
- export { checkDataAttributeExists };
- /**
- * A very simple function to perform a basic
- * deep clone of an object.
- * @param {Object} o is the object to perform the deep clone on
- * @return {Object} deep clone
- */
- declare const makeShallowClone: (o: any) => Dictionary;
- export { makeShallowClone };
- /**
- * A function to recursively merge an object, copying over all
- * properties of the old object missing from the target object.
- * In case a prop in is an object, the method is called recursively.
- * This is a non-mutating method.
- * @param {Object} old is the old object from which the missing props are copied.
- * @param {Object} target is the target object with the updated values.
- */
- declare const merge: (old: any, target: any) => Dictionary;
- export { merge };
- /**
- * A function get the intersection of two arrays. IE9+.
- * @param {Array} arr1 is the first array of which to get the intersection
- * @param {Array} arr2 is the second array of which to get the intersection
- */
- declare const intersection: (arr1: any[], arr2: any[]) => any;
- export { intersection };
- /**
- * Debounce of Underscore.js
- */
- declare const debounce: (func: Function, wait: number, immediate: boolean) => Function;
- export { debounce };
- /**
- * Fisher-Yates shuffle ES6 non-mutating implementation.
- * @param {Array} array the array to shuffle
- * @return {Array} shuffled array without mutating the initial array.
- */
- declare const shuffle: (array: any[]) => any[];
- export { shuffle };
- /**
- * Simple method to check if two arrays of FilterItems
- * are sorted in the same manner or not.
- * @param {Array} arr1 the first array of FilterItems
- * @param {Array} arr2 the second array of FilterItems
- * @return {Boolean} equality
- */
- declare const filterItemArraysHaveSameSorting: (filterItemsA: FilterItem[], filterItemsB: FilterItem[]) => boolean;
- export { filterItemArraysHaveSameSorting };
- /**
- * Simple non-mutating sorting function for arrays of objects by a property
- * @param {Array} array to sort
- * @param {Function} propFn fetches the property by which to sort
- * @return {Array} a new sorted array
- */
- declare const sortBy: (array: any[], propFn: Function) => any[];
- export { sortBy };
- /**
- * Error checking method to restrict a prop to some allowed values
- * @param {String} name of the option key in the options object
- * @param {String|Number|Object|Function|Array|Boolean} value of the option
- * @param {String} type of the property
- * @param {Array} allowed accepted values for option
- * @param {String} furtherHelpLink a link to docs for further help
- */
- declare const checkOptionForErrors: (name: string, value: string | number | boolean | object | Function | any[], type?: string, allowed?: RegExp | any[], furtherHelpLink?: string) => void;
- export { checkOptionForErrors };
- /**
- * Wrapper around document.querySelector, will function as
- * an identity function if an HTML element is passed in
- * @param {HTMLElement|string} nodeOrSelector
- */
- declare const getHTMLElement: (selectorOrNode: string | HTMLElement) => HTMLElement;
- export { getHTMLElement };
- /**
- * A Regexp to validate potential values for the CSS easing property of transitions.
- */
- declare const cssEasingValuesRegexp: RegExp;
- export { cssEasingValuesRegexp };
- /**
- * Possible animation states for Filterizr
- */
- declare const FILTERIZR_STATE: {
- IDLE: string;
- FILTERING: string;
- SORTING: string;
- SHUFFLING: string;
- };
- export { FILTERIZR_STATE };
- /**
- * Transition end events with vendor prefixing
- */
- declare const TRANSITION_END_EVENTS: string[];
- export { TRANSITION_END_EVENTS };
- /**
- * A no-operation function
- */
- declare const noop: () => void;
- export { noop };
|