@dcupl/common 2.0.0-beta.2 → 2.0.0-beta.21
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.
- package/dist/esm/analytics.controller.d.ts +1 -1
- package/dist/esm/changeDetection.d.ts +2 -2
- package/dist/esm/computeSuggestions.d.ts +2 -2
- package/dist/esm/deep-query.service.d.ts +1 -1
- package/dist/esm/getAggregation.d.ts +1 -1
- package/dist/esm/getFacets.d.ts +26 -3
- package/dist/esm/helper.d.ts +11 -1
- package/dist/esm/index.d.ts +25 -22
- package/dist/esm/index.js +1004 -690
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/indices.controller.d.ts +7 -1
- package/dist/esm/logger/index.d.ts +2 -2
- package/dist/esm/pivot.d.ts +2 -2
- package/dist/esm/property-parser.d.ts +27 -2
- package/dist/esm/query-builder.d.ts +15 -5
- package/dist/esm/query.helper.d.ts +1 -1
- package/dist/esm/queryData.d.ts +53 -3
- package/dist/esm/redact-url.d.ts +9 -0
- package/dist/esm/resource-id.d.ts +43 -0
- package/dist/esm/scheduling.d.ts +17 -0
- package/dist/esm/types/app-loader.types.d.ts +94 -4
- package/dist/esm/types/data.types.d.ts +7 -3
- package/dist/esm/types/dcupl.types.d.ts +26 -12
- package/dist/esm/types/facets.types.d.ts +14 -1
- package/dist/esm/types/filter.types.d.ts +3 -3
- package/dist/esm/types/group-by.types.d.ts +2 -2
- package/dist/esm/types/index.d.ts +17 -16
- package/dist/esm/types/internal.types.d.ts +1 -1
- package/dist/esm/types/key-property.types.d.ts +11 -0
- package/dist/esm/types/list.types.d.ts +25 -4
- package/dist/esm/types/model.types.d.ts +54 -5
- package/dist/esm/types/quality.types.d.ts +87 -1
- package/dist/esm/types/query.types.d.ts +115 -20
- package/dist/esm/types/section.types.d.ts +2 -2
- package/dist/esm/types/suggestion.types.d.ts +6 -1
- package/dist/node/index.cjs +2 -2
- package/dist/node/index.cjs.map +1 -1
- package/package.json +2 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { CallbackFunction, DcuplInitOptions } from './types';
|
|
2
|
-
import { AnalyticsController } from './analytics.controller';
|
|
1
|
+
import { CallbackFunction, DcuplInitOptions } from './types/index.js';
|
|
2
|
+
import { AnalyticsController } from './analytics.controller.js';
|
|
3
3
|
export type DcuplUpdateScope = 'all' | 'global' | 'list' | 'list$';
|
|
4
4
|
export type DcuplUpdateTrigger = 'user' | 'loader';
|
|
5
5
|
export type DcuplUpdateType = 'data_change' | 'dcupl_destroyed' | 'dcupl_handle_datacontainer' | 'dcupl_initialized' | 'dcupl_updated_manually' | 'dcupl_partial_update' | 'filter_many' | 'filter_one' | 'fn_aggregate' | 'fn_facets' | 'fn_groupBy' | 'fn_metadata' | 'fn_pivot' | 'fn_suggest' | 'list_created' | 'list_destroyed' | 'list_updated' | 'loader_added' | 'loader_config_fetched' | 'loader_data_fetched' | 'loader_models_fetched' | 'loader_scripts_fetched' | 'loader_processed' | 'loader_removed' | 'model_add' | 'query_apply_options' | 'query_apply' | 'query_execute' | 'query_get' | 'query_has' | 'query_many' | 'query_one' | 'query_remove' | 'query_reset' | 'result_updated' | 'view_add';
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { ListItem, Suggestion, SuggestionOptions, InverseIndexValuesMap } from './types';
|
|
2
|
-
import { QueryManager } from '.';
|
|
1
|
+
import { ListItem, Suggestion, SuggestionOptions, InverseIndexValuesMap } from './types/index.js';
|
|
2
|
+
import { QueryManager } from './index.js';
|
|
3
3
|
export declare function computeSuggestions<ListType extends ListItem = ListItem>(data: Map<string, ListType>, index: InverseIndexValuesMap, options: SuggestionOptions, queryManager: QueryManager): Suggestion[];
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Aggregation, AggregationDistinctValue, AggregationOptions, InverseIndexValuesMap, ListItem } from './types';
|
|
1
|
+
import { Aggregation, AggregationDistinctValue, AggregationOptions, InverseIndexValuesMap, ListItem } from './types/index.js';
|
|
2
2
|
export declare const getAggregation: (options: AggregationOptions, relevantData: Map<string, ListItem>, indexMap: InverseIndexValuesMap, attribute: string) => Aggregation;
|
|
3
3
|
export declare const getDistinct: (options: AggregationOptions, data: Map<string, ListItem>, indexMap: InverseIndexValuesMap) => AggregationDistinctValue[];
|
package/dist/esm/getFacets.d.ts
CHANGED
|
@@ -1,3 +1,26 @@
|
|
|
1
|
-
import { ListItem, DcuplFilterOptions, InverseIndexReferenceMap, DcuplGlobalQueryOptions, DcuplFacet } from './types';
|
|
2
|
-
import { QueryManager } from './queryData';
|
|
3
|
-
|
|
1
|
+
import { ListItem, DcuplFilterOptions, InverseIndexReferenceMap, DcuplGlobalQueryOptions, DcuplFacet } from './types/index.js';
|
|
2
|
+
import { QueryManager } from './queryData.js';
|
|
3
|
+
/**
|
|
4
|
+
* Build facet entries for `attribute`.
|
|
5
|
+
*
|
|
6
|
+
* Pipeline order — IMPORTANT, do not shuffle:
|
|
7
|
+
*
|
|
8
|
+
* Fast path (options.sort omitted, default):
|
|
9
|
+
* 1. walk validFacetKeys in insertion order
|
|
10
|
+
* 2. for each key: compute entry (binary size if calculateFacets is false)
|
|
11
|
+
* 3. skip if excludeZeros && size === 0 (does NOT advance count)
|
|
12
|
+
* 4. early-return when filterItemEntries.length === count
|
|
13
|
+
* 5. push and continue
|
|
14
|
+
*
|
|
15
|
+
* Sort path (options.sort set):
|
|
16
|
+
* 1. walk ALL validFacetKeys (ignore count for early-return)
|
|
17
|
+
* 2. for each key: compute entry with FULL size (override calculateFacets: false)
|
|
18
|
+
* 3. push every entry
|
|
19
|
+
* 4. drop zeros if excludeZeros
|
|
20
|
+
* 5. sort by chosen mode (size sorts tie-break on value asc, undefined last)
|
|
21
|
+
* 6. truncate to count
|
|
22
|
+
*
|
|
23
|
+
* The sort path is opt-in because it forfeits both early-return optimizations.
|
|
24
|
+
* Most call sites only need a partial answer and stay on the fast path.
|
|
25
|
+
*/
|
|
26
|
+
export declare function getFacets<ListType extends ListItem = ListItem>(modelData: Map<string, ListType>, remoteModelData: Map<string, ListType> | undefined, options: DcuplFilterOptions, query: DcuplGlobalQueryOptions<any>, attribute: string, modelIndexMap: InverseIndexReferenceMap, queryManager: QueryManager): DcuplFacet[];
|
package/dist/esm/helper.d.ts
CHANGED
|
@@ -1,4 +1,14 @@
|
|
|
1
|
-
import { DateFilterOptions, NumberFilterOptions } from './types';
|
|
1
|
+
import { DateFilterOptions, NumberFilterOptions } from './types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Reads a slash-delimited regex literal (`/pattern/`), the form `find` and `suggest`
|
|
4
|
+
* take a pattern in. Flags come separately (`regexFlags`), never from the value, so
|
|
5
|
+
* `'/docs/sum'` or `'/shop/i'` stays an exact match. Returns `undefined` for any
|
|
6
|
+
* other value. A lone `/` is an empty pattern, as it always was.
|
|
7
|
+
*/
|
|
8
|
+
export declare const parseRegexLiteral: (value: unknown, flags?: string) => {
|
|
9
|
+
pattern: string;
|
|
10
|
+
flags: string;
|
|
11
|
+
} | undefined;
|
|
2
12
|
export declare const getFilterEntryId: (filterItemId: string, value?: string) => string;
|
|
3
13
|
export declare const getNumberConstraintUid: (options: NumberFilterOptions) => string;
|
|
4
14
|
export declare const getDateConstraintUid: (options: DateFilterOptions) => string;
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -1,22 +1,25 @@
|
|
|
1
|
-
export * from './analytics.controller';
|
|
2
|
-
export * from './attribute-dependency-graph';
|
|
3
|
-
export * from './cache.controller';
|
|
4
|
-
export * from './changeDetection';
|
|
5
|
-
export * from './computeSuggestions';
|
|
6
|
-
export * from './date-utils';
|
|
7
|
-
export * from './deep-query.service';
|
|
8
|
-
export * from './dependency-graph';
|
|
9
|
-
export * from './getAggregation';
|
|
10
|
-
export * from './getFacets';
|
|
11
|
-
export * from './helper';
|
|
12
|
-
export * from './indices.controller';
|
|
13
|
-
export * from './logger';
|
|
14
|
-
export * from './performance';
|
|
15
|
-
export * from './pivot';
|
|
16
|
-
export * from './property-parser';
|
|
17
|
-
export * from './query-builder';
|
|
18
|
-
export * from './query.helper';
|
|
19
|
-
export * from './queryData';
|
|
20
|
-
export * from './
|
|
21
|
-
export * from './
|
|
22
|
-
export * from './
|
|
1
|
+
export * from './analytics.controller.js';
|
|
2
|
+
export * from './attribute-dependency-graph.js';
|
|
3
|
+
export * from './cache.controller.js';
|
|
4
|
+
export * from './changeDetection.js';
|
|
5
|
+
export * from './computeSuggestions.js';
|
|
6
|
+
export * from './date-utils.js';
|
|
7
|
+
export * from './deep-query.service.js';
|
|
8
|
+
export * from './dependency-graph.js';
|
|
9
|
+
export * from './getAggregation.js';
|
|
10
|
+
export * from './getFacets.js';
|
|
11
|
+
export * from './helper.js';
|
|
12
|
+
export * from './indices.controller.js';
|
|
13
|
+
export * from './logger/index.js';
|
|
14
|
+
export * from './performance.js';
|
|
15
|
+
export * from './pivot.js';
|
|
16
|
+
export * from './property-parser.js';
|
|
17
|
+
export * from './query-builder.js';
|
|
18
|
+
export * from './query.helper.js';
|
|
19
|
+
export * from './queryData.js';
|
|
20
|
+
export * from './redact-url.js';
|
|
21
|
+
export * from './resource-id.js';
|
|
22
|
+
export * from './scheduling.js';
|
|
23
|
+
export * from './script.controller.js';
|
|
24
|
+
export * from './template-parser.js';
|
|
25
|
+
export * from './types/index.js';
|