New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@cloudscape-design/collection-hooks

Package Overview
Dependencies
Maintainers
1
Versions
62
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@cloudscape-design/collection-hooks - npm Package Compare versions

Comparing version 1.0.27 to 1.0.28

dist/cjs/operations/compose-filters.d.ts

5

dist/cjs/operations/filter.d.ts

@@ -1,2 +0,3 @@

import { FilteringOptions } from '../interfaces';
export declare function filter<T>(items: ReadonlyArray<T>, filteringText: string | undefined, { filteringFunction, fields }: FilteringOptions<T>): ReadonlyArray<T>;
import { UseCollectionOptions } from '../interfaces';
import { Predicate } from './compose-filters';
export declare function createFilterPredicate<T>(filtering: UseCollectionOptions<T>['filtering'], filteringText?: string): null | Predicate<T>;

14

dist/cjs/operations/filter.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.filter = void 0;
exports.createFilterPredicate = void 0;
function defaultFilteringFunction(item, filteringText, filteringFields) {

@@ -16,7 +16,11 @@ if (filteringText.length === 0) {

}
function filter(items, filteringText, _a) {
function createFilterPredicate(filtering, filteringText) {
var _a;
if (filteringText === void 0) { filteringText = ''; }
var _b = _a.filteringFunction, filteringFunction = _b === void 0 ? defaultFilteringFunction : _b, fields = _a.fields;
return items.filter(function (item) { return filteringFunction(item, filteringText, fields); });
if (!filtering) {
return null;
}
var filteringFunction = (_a = filtering.filteringFunction) !== null && _a !== void 0 ? _a : defaultFilteringFunction;
return function (item) { return filteringFunction(item, filteringText, filtering.fields); };
}
exports.filter = filter;
exports.createFilterPredicate = createFilterPredicate;

@@ -7,28 +7,28 @@ "use strict";

var sort_js_1 = require("./sort.js");
var paginate_js_1 = require("./paginate.js");
var pagination_js_1 = require("./pagination.js");
var compose_filters_js_1 = require("./compose-filters.js");
function processItems(items, _a, _b) {
var filteringText = _a.filteringText, sortingState = _a.sortingState, currentPageIndex = _a.currentPageIndex, propertyFilteringQuery = _a.propertyFilteringQuery;
var filtering = _b.filtering, sorting = _b.sorting, pagination = _b.pagination, propertyFiltering = _b.propertyFiltering;
var result = items;
var pagesCount;
var actualPageIndex;
var filteredItemsCount;
if (propertyFiltering) {
result = (0, property_filter_js_1.propertyFilter)(result, propertyFilteringQuery || { tokens: [], operation: 'and' }, propertyFiltering);
filteredItemsCount = result.length;
var filterPredicate = (0, compose_filters_js_1.composeFilters)((0, property_filter_js_1.createPropertyFilterPredicate)(propertyFiltering, propertyFilteringQuery), (0, filter_js_1.createFilterPredicate)(filtering, filteringText));
if (filterPredicate) {
items = items.filter(filterPredicate);
}
if (filtering) {
result = (0, filter_js_1.filter)(result, filteringText, filtering);
filteredItemsCount = result.length;
var filteredItemsCount = filterPredicate ? items.length : undefined;
var comparator = (0, sort_js_1.createComparator)(sorting, sortingState);
if (comparator) {
items = items.slice().sort(comparator);
}
if (sorting) {
result = (0, sort_js_1.sort)(result, sortingState);
var allPageItems = items;
var pageProps = (0, pagination_js_1.createPageProps)(pagination, currentPageIndex, items);
if (pageProps) {
items = items.slice((pageProps.pageIndex - 1) * pageProps.pageSize, pageProps.pageIndex * pageProps.pageSize);
}
var allPageResult = result;
if (pagination) {
pagesCount = (0, paginate_js_1.getPagesCount)(result, pagination.pageSize);
actualPageIndex = (0, paginate_js_1.normalizePageIndex)(currentPageIndex, pagesCount);
result = (0, paginate_js_1.paginate)(result, actualPageIndex, pagination.pageSize);
}
return { items: result, allPageItems: allPageResult, pagesCount: pagesCount, filteredItemsCount: filteredItemsCount, actualPageIndex: actualPageIndex };
return {
items: items,
allPageItems: allPageItems,
filteredItemsCount: filteredItemsCount,
pagesCount: pageProps === null || pageProps === void 0 ? void 0 : pageProps.pagesCount,
actualPageIndex: pageProps === null || pageProps === void 0 ? void 0 : pageProps.pageIndex,
};
}

@@ -35,0 +35,0 @@ exports.processItems = processItems;

import { PropertyFilterQuery, UseCollectionOptions } from '../interfaces';
export declare function propertyFilter<T>(items: ReadonlyArray<T>, query: PropertyFilterQuery, { filteringFunction, filteringProperties }: NonNullable<UseCollectionOptions<T>['propertyFiltering']>): ReadonlyArray<T>;
import { Predicate } from './compose-filters';
export declare function createPropertyFilterPredicate<T>(propertyFiltering: UseCollectionOptions<T>['propertyFiltering'], query?: PropertyFilterQuery): null | Predicate<T>;
export declare const fixupFalsyValues: <T>(value: T) => string | T;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fixupFalsyValues = exports.propertyFilter = void 0;
exports.fixupFalsyValues = exports.createPropertyFilterPredicate = void 0;
var compare_dates_js_1 = require("../date-utils/compare-dates.js");

@@ -96,5 +96,8 @@ var filterUsingOperator = function (itemValue, tokenValue, _a) {

}
function propertyFilter(items, query, _a) {
var filteringFunction = _a.filteringFunction, filteringProperties = _a.filteringProperties;
var filteringPropertiesMap = filteringProperties.reduce(function (acc, _a) {
function createPropertyFilterPredicate(propertyFiltering, query) {
if (query === void 0) { query = { tokens: [], operation: 'and' }; }
if (!propertyFiltering) {
return null;
}
var filteringPropertiesMap = propertyFiltering.filteringProperties.reduce(function (acc, _a) {
var _b;

@@ -116,6 +119,6 @@ var key = _a.key, operators = _a.operators, defaultOperator = _a.defaultOperator;

}, {});
var filter = filteringFunction || defaultFilteringFunction(filteringPropertiesMap);
return items.filter(function (item) { return filter(item, query); });
var filteringFunction = propertyFiltering.filteringFunction || defaultFilteringFunction(filteringPropertiesMap);
return function (item) { return filteringFunction(item, query); };
}
exports.propertyFilter = propertyFilter;
exports.createPropertyFilterPredicate = createPropertyFilterPredicate;
var fixupFalsyValues = function (value) {

@@ -122,0 +125,0 @@ if (typeof value === 'boolean') {

@@ -1,2 +0,2 @@

import { SortingState } from '../interfaces';
export declare function sort<T>(items: ReadonlyArray<T>, state: SortingState<T> | undefined): ReadonlyArray<T>;
import { SortingState, UseCollectionOptions } from '../interfaces';
export declare function createComparator<T>(sorting: UseCollectionOptions<T>['sorting'], state: SortingState<T> | undefined): null | ((a: T, b: T) => number);
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.sort = void 0;
exports.createComparator = void 0;
function getSorter(sortingField) {
if (!sortingField) {
return null;
}
return function (row1, row2) {

@@ -20,20 +23,11 @@ var _a, _b;

}
function sort(items, state) {
if (!state) {
return items;
function createComparator(sorting, state) {
var _a;
if (!sorting || !state) {
return null;
}
var sortingColumn = state.sortingColumn;
var comparator = 'sortingComparator' in sortingColumn
? sortingColumn.sortingComparator
: sortingColumn.sortingField
? getSorter(sortingColumn.sortingField)
: undefined;
if (!comparator) {
return items;
}
var sorted = items.slice();
var direction = state.isDescending ? -1 : 1;
sorted.sort(function (a, b) { return comparator(a, b) * direction; });
return sorted;
var comparator = (_a = state.sortingColumn.sortingComparator) !== null && _a !== void 0 ? _a : getSorter(state.sortingColumn.sortingField);
return comparator ? function (a, b) { return comparator(a, b) * direction; } : null;
}
exports.sort = sort;
exports.createComparator = createComparator;

@@ -1,2 +0,3 @@

import { FilteringOptions } from '../interfaces';
export declare function filter<T>(items: ReadonlyArray<T>, filteringText: string | undefined, { filteringFunction, fields }: FilteringOptions<T>): ReadonlyArray<T>;
import { UseCollectionOptions } from '../interfaces';
import { Predicate } from './compose-filters';
export declare function createFilterPredicate<T>(filtering: UseCollectionOptions<T>['filtering'], filteringText?: string): null | Predicate<T>;

@@ -13,6 +13,10 @@ function defaultFilteringFunction(item, filteringText, filteringFields) {

}
export function filter(items, filteringText, _a) {
export function createFilterPredicate(filtering, filteringText) {
var _a;
if (filteringText === void 0) { filteringText = ''; }
var _b = _a.filteringFunction, filteringFunction = _b === void 0 ? defaultFilteringFunction : _b, fields = _a.fields;
return items.filter(function (item) { return filteringFunction(item, filteringText, fields); });
if (!filtering) {
return null;
}
var filteringFunction = (_a = filtering.filteringFunction) !== null && _a !== void 0 ? _a : defaultFilteringFunction;
return function (item) { return filteringFunction(item, filteringText, filtering.fields); };
}

@@ -1,30 +0,30 @@

import { filter } from './filter.js';
import { propertyFilter } from './property-filter.js';
import { sort } from './sort.js';
import { getPagesCount, normalizePageIndex, paginate } from './paginate.js';
import { createFilterPredicate } from './filter.js';
import { createPropertyFilterPredicate } from './property-filter.js';
import { createComparator } from './sort.js';
import { createPageProps } from './pagination.js';
import { composeFilters } from './compose-filters.js';
export function processItems(items, _a, _b) {
var filteringText = _a.filteringText, sortingState = _a.sortingState, currentPageIndex = _a.currentPageIndex, propertyFilteringQuery = _a.propertyFilteringQuery;
var filtering = _b.filtering, sorting = _b.sorting, pagination = _b.pagination, propertyFiltering = _b.propertyFiltering;
var result = items;
var pagesCount;
var actualPageIndex;
var filteredItemsCount;
if (propertyFiltering) {
result = propertyFilter(result, propertyFilteringQuery || { tokens: [], operation: 'and' }, propertyFiltering);
filteredItemsCount = result.length;
var filterPredicate = composeFilters(createPropertyFilterPredicate(propertyFiltering, propertyFilteringQuery), createFilterPredicate(filtering, filteringText));
if (filterPredicate) {
items = items.filter(filterPredicate);
}
if (filtering) {
result = filter(result, filteringText, filtering);
filteredItemsCount = result.length;
var filteredItemsCount = filterPredicate ? items.length : undefined;
var comparator = createComparator(sorting, sortingState);
if (comparator) {
items = items.slice().sort(comparator);
}
if (sorting) {
result = sort(result, sortingState);
var allPageItems = items;
var pageProps = createPageProps(pagination, currentPageIndex, items);
if (pageProps) {
items = items.slice((pageProps.pageIndex - 1) * pageProps.pageSize, pageProps.pageIndex * pageProps.pageSize);
}
var allPageResult = result;
if (pagination) {
pagesCount = getPagesCount(result, pagination.pageSize);
actualPageIndex = normalizePageIndex(currentPageIndex, pagesCount);
result = paginate(result, actualPageIndex, pagination.pageSize);
}
return { items: result, allPageItems: allPageResult, pagesCount: pagesCount, filteredItemsCount: filteredItemsCount, actualPageIndex: actualPageIndex };
return {
items: items,
allPageItems: allPageItems,
filteredItemsCount: filteredItemsCount,
pagesCount: pageProps === null || pageProps === void 0 ? void 0 : pageProps.pagesCount,
actualPageIndex: pageProps === null || pageProps === void 0 ? void 0 : pageProps.pageIndex,
};
}

@@ -31,0 +31,0 @@ export var getTrackableValue = function (trackBy, item) {

import { PropertyFilterQuery, UseCollectionOptions } from '../interfaces';
export declare function propertyFilter<T>(items: ReadonlyArray<T>, query: PropertyFilterQuery, { filteringFunction, filteringProperties }: NonNullable<UseCollectionOptions<T>['propertyFiltering']>): ReadonlyArray<T>;
import { Predicate } from './compose-filters';
export declare function createPropertyFilterPredicate<T>(propertyFiltering: UseCollectionOptions<T>['propertyFiltering'], query?: PropertyFilterQuery): null | Predicate<T>;
export declare const fixupFalsyValues: <T>(value: T) => string | T;

@@ -93,5 +93,8 @@ import { compareDates, compareTimestamps } from '../date-utils/compare-dates.js';

}
export function propertyFilter(items, query, _a) {
var filteringFunction = _a.filteringFunction, filteringProperties = _a.filteringProperties;
var filteringPropertiesMap = filteringProperties.reduce(function (acc, _a) {
export function createPropertyFilterPredicate(propertyFiltering, query) {
if (query === void 0) { query = { tokens: [], operation: 'and' }; }
if (!propertyFiltering) {
return null;
}
var filteringPropertiesMap = propertyFiltering.filteringProperties.reduce(function (acc, _a) {
var _b;

@@ -113,4 +116,4 @@ var key = _a.key, operators = _a.operators, defaultOperator = _a.defaultOperator;

}, {});
var filter = filteringFunction || defaultFilteringFunction(filteringPropertiesMap);
return items.filter(function (item) { return filter(item, query); });
var filteringFunction = propertyFiltering.filteringFunction || defaultFilteringFunction(filteringPropertiesMap);
return function (item) { return filteringFunction(item, query); };
}

@@ -117,0 +120,0 @@ export var fixupFalsyValues = function (value) {

@@ -1,2 +0,2 @@

import { SortingState } from '../interfaces';
export declare function sort<T>(items: ReadonlyArray<T>, state: SortingState<T> | undefined): ReadonlyArray<T>;
import { SortingState, UseCollectionOptions } from '../interfaces';
export declare function createComparator<T>(sorting: UseCollectionOptions<T>['sorting'], state: SortingState<T> | undefined): null | ((a: T, b: T) => number);
function getSorter(sortingField) {
if (!sortingField) {
return null;
}
return function (row1, row2) {

@@ -17,19 +20,10 @@ var _a, _b;

}
export function sort(items, state) {
if (!state) {
return items;
export function createComparator(sorting, state) {
var _a;
if (!sorting || !state) {
return null;
}
var sortingColumn = state.sortingColumn;
var comparator = 'sortingComparator' in sortingColumn
? sortingColumn.sortingComparator
: sortingColumn.sortingField
? getSorter(sortingColumn.sortingField)
: undefined;
if (!comparator) {
return items;
}
var sorted = items.slice();
var direction = state.isDescending ? -1 : 1;
sorted.sort(function (a, b) { return comparator(a, b) * direction; });
return sorted;
var comparator = (_a = state.sortingColumn.sortingComparator) !== null && _a !== void 0 ? _a : getSorter(state.sortingColumn.sortingField);
return comparator ? function (a, b) { return comparator(a, b) * direction; } : null;
}
{
"commit": "b0d7abfa5278acf76c2ad882335e07263177133d"
"commit": "d51d7f9277c49212a8fc52bb825dc1f78eddfe44"
}

@@ -58,4 +58,4 @@ {

"type": "module",
"version": "1.0.27",
"version": "1.0.28",
"license": "Apache-2.0"
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc