@punks/backend-core 0.0.31 → 0.0.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,10 @@
1
+ export declare const processArrayDifferences: <TItem, TInputItem, TId>({ elements, elementIdSelector, desiredItems, desiredItemSelector, }: {
2
+ elements: TItem[];
3
+ elementIdSelector: (item: TItem) => TId;
4
+ desiredItems: TInputItem[];
5
+ desiredItemSelector: (item: TInputItem) => TId;
6
+ }) => {
7
+ missingElements: TInputItem[];
8
+ exceedingElements: TItem[];
9
+ unchangedElements: TItem[];
10
+ };
@@ -0,0 +1 @@
1
+ export { processArrayDifferences } from "./arrays";
@@ -1,4 +1,5 @@
1
1
  export * from "./abstractions";
2
+ export * from "./functions";
2
3
  export * from "./logging";
3
4
  export * from "./models";
4
5
  export * from "./types";
@@ -22,4 +22,5 @@ export declare const distinctElements: <T>(values: T[], comparer: (value: T) =>
22
22
  export declare const jsonDistinct: <T>(values: T[]) => T[];
23
23
  export declare const iterate: <T>(values: T[], action: (item: T, next?: T | undefined, prev?: T | undefined) => void) => void;
24
24
  export declare const groupBy: <TKey, TValue>(values: TValue[], keySelector: (value: TValue) => TKey) => Map<TKey, TValue[]>;
25
+ export declare const subArrays: <T>(array1: T[], array2: T[], eqFn: (a: T, b: T) => boolean) => T[];
25
26
  export {};
package/dist/index.d.ts CHANGED
@@ -37,6 +37,17 @@ interface ILogger {
37
37
  exception(message: string, error: Error, meta?: any): void;
38
38
  }
39
39
 
40
+ declare const processArrayDifferences: <TItem, TInputItem, TId>({ elements, elementIdSelector, desiredItems, desiredItemSelector, }: {
41
+ elements: TItem[];
42
+ elementIdSelector: (item: TItem) => TId;
43
+ desiredItems: TInputItem[];
44
+ desiredItemSelector: (item: TInputItem) => TId;
45
+ }) => {
46
+ missingElements: TInputItem[];
47
+ exceedingElements: TItem[];
48
+ unchangedElements: TItem[];
49
+ };
50
+
40
51
  declare class Log {
41
52
  private static enabled;
42
53
  private static level;
@@ -83,6 +94,7 @@ declare const distinctElements: <T>(values: T[], comparer: (value: T) => any) =>
83
94
  declare const jsonDistinct: <T>(values: T[]) => T[];
84
95
  declare const iterate: <T>(values: T[], action: (item: T, next?: T | undefined, prev?: T | undefined) => void) => void;
85
96
  declare const groupBy: <TKey, TValue>(values: TValue[], keySelector: (value: TValue) => TKey) => Map<TKey, TValue[]>;
97
+ declare const subArrays: <T>(array1: T[], array2: T[], eqFn: (a: T, b: T) => boolean) => T[];
86
98
 
87
99
  declare const csvParse: (data: string | string[] | Buffer, separator?: string) => Record<string, any>[];
88
100
  interface CsvColumnDefinition<T> {
@@ -161,4 +173,4 @@ type ExcelParseOptions = {
161
173
  };
162
174
  declare const excelParse: (file: string | ArrayBuffer, options?: ExcelParseOptions) => any[];
163
175
 
164
- export { CsvColumnDefinition as ColumnDefinition, CsvBuildOptions, Dict, ExcelKeyTransform, ExcelParseOptions, ExcelColumnDefinition as ExcelRowBuilder, ExcelSheetDefinition, ILogger, ILoggerProvider, IResolveServiceOptions, IServiceLocator, ITree, ITreeNode, Log, LogLevel, MetaSerializationType, RichText, TreeNodeBuilder, buildObject, buildTree, byField, byFieldDesc, camelToKebabCase, camelToSnakeCase, csvBuild, csvParse, distinct, distinctElements, ensureDirectory, ensureStartSlash, ensureTailingSlash, excelBuild, excelParse, first, flatten, getDirectoryFilePaths, getDirectoryPath, groupBy, indexes, isNullOrUndefined, iterate, joinPath, jsonDistinct, last, mapOrThrow, newUuid, notNull, notUndefined, pluralize, range, removeUndefinedProps, selectMany, sleep, sort, splitPath, toCamelCase, toDict, toItemsDict, toItemsMap, toMap, toTitleCase, trim, trimEnd, trimStart };
176
+ export { CsvColumnDefinition as ColumnDefinition, CsvBuildOptions, Dict, ExcelKeyTransform, ExcelParseOptions, ExcelColumnDefinition as ExcelRowBuilder, ExcelSheetDefinition, ILogger, ILoggerProvider, IResolveServiceOptions, IServiceLocator, ITree, ITreeNode, Log, LogLevel, MetaSerializationType, RichText, TreeNodeBuilder, buildObject, buildTree, byField, byFieldDesc, camelToKebabCase, camelToSnakeCase, csvBuild, csvParse, distinct, distinctElements, ensureDirectory, ensureStartSlash, ensureTailingSlash, excelBuild, excelParse, first, flatten, getDirectoryFilePaths, getDirectoryPath, groupBy, indexes, isNullOrUndefined, iterate, joinPath, jsonDistinct, last, mapOrThrow, newUuid, notNull, notUndefined, pluralize, processArrayDifferences, range, removeUndefinedProps, selectMany, sleep, sort, splitPath, subArrays, toCamelCase, toDict, toItemsDict, toItemsMap, toMap, toTitleCase, trim, trimEnd, trimStart };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@punks/backend-core",
3
- "version": "0.0.31",
3
+ "version": "0.0.32",
4
4
  "description": "WebPunks Backend Core",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",