@neovici/cosmoz-queue 3.9.4 → 3.11.0

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.
@@ -15,8 +15,10 @@ interface UseMore<TParams extends object, TItem extends object> {
15
15
  params: TParams;
16
16
  list$: TList$<TParams, TItem>;
17
17
  setTotalAvailable: StateUpdater<number | undefined>;
18
+ /** Holds fetching while false, e.g. until saved list settings are applied. */
19
+ enabled?: boolean;
18
20
  }
19
- export declare const useMore: <TParams extends object, TItem extends object>({ params: _params, list$, pageSize, setTotalAvailable, }: UseMore<TParams, TItem>) => {
21
+ export declare const useMore: <TParams extends object, TItem extends object>({ params: _params, list$, pageSize, setTotalAvailable, enabled, }: UseMore<TParams, TItem>) => {
20
22
  data$: PromiseLike<TItem[]>;
21
23
  loadMore: (() => void) | undefined;
22
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"use-more.d.ts","sourceRoot":"","sources":["../../../src/list/more/use-more.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,YAAY,EAKZ,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,MAAM,CAAC,OAAO,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM;IACnE,CAAC,KAAK,EAAE;QACP,MAAM,EAAE,OAAO,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,WAAW,CAAC;KACrB,GAAG,WAAW,CAAC;QAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnD;AAED,UAAU,OAAO,CAAC,OAAO,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9B,iBAAiB,EAAE,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACpD;AASD,eAAO,MAAM,OAAO,GAAI,OAAO,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,EAAE,0DAKnE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;;;CAwEzB,CAAC"}
1
+ {"version":3,"file":"use-more.d.ts","sourceRoot":"","sources":["../../../src/list/more/use-more.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,YAAY,EAKZ,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,MAAM,CAAC,OAAO,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM;IACnE,CAAC,KAAK,EAAE;QACP,MAAM,EAAE,OAAO,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,WAAW,CAAC;KACrB,GAAG,WAAW,CAAC;QAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnD;AAED,UAAU,OAAO,CAAC,OAAO,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9B,iBAAiB,EAAE,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpD,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AASD,eAAO,MAAM,OAAO,GAAI,OAAO,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,EAAE,mEAMnE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;;;CAyEzB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { useEffect, useMemo, useRef, useState, } from '@pionjs/pion';
2
- export const useMore = ({ params: _params, list$, pageSize = 50, setTotalAvailable, }) => {
2
+ export const useMore = ({ params: _params, list$, pageSize = 50, setTotalAvailable, enabled = true, }) => {
3
3
  const [{ page, data$, totalAvailable, params }, setData] = useState({
4
4
  page: 0,
5
5
  data$: Promise.resolve([]),
@@ -18,6 +18,8 @@ export const useMore = ({ params: _params, list$, pageSize = 50, setTotalAvailab
18
18
  page: 0,
19
19
  })), [_params, list$]);
20
20
  useEffect(() => {
21
+ if (!enabled)
22
+ return;
21
23
  const controller = new AbortController();
22
24
  abortRef.current = controller;
23
25
  const { signal } = controller;
@@ -51,6 +53,6 @@ export const useMore = ({ params: _params, list$, pageSize = 50, setTotalAvailab
51
53
  return () => {
52
54
  controller.abort();
53
55
  };
54
- }, [page, params, list$, pageSize]);
56
+ }, [page, params, list$, pageSize, enabled]);
55
57
  return { data$, loadMore };
56
58
  };
@@ -23,7 +23,7 @@ export interface RenderListCoreProps<TItem extends object> {
23
23
  export interface RenderListCore<TColumns extends Columns, TItem extends object> extends UseListCoreResult<TColumns, TItem>, RenderListCoreProps<TItem> {
24
24
  }
25
25
  export declare const renderColumns: <T extends Columns>(columns: T) => import("../types/lit").LitRenderable[];
26
- export declare const renderListCore: <TColumns extends Columns, TItem extends object>({ settingsId, hashParam, enabledColumns, csvFilename, exposedParts, data$, noLocal, miniBreakpoint, breakpoints, sortOn, setSortOn, descending, setDescending, groupOn, setGroupOn, selectedItems, setSelectedItems, setVisibleItems, hasItems, setFilters, setIsMini, columns, actions, dialog, open, content, loadMore, compareItemsFn, rowPartFn, }: RenderListCore<TColumns, TItem>) => (import("lit-html/directive.js").DirectiveResult<new (_partInfo: import("lit-html/directive.js").PartInfo) => import("lit-html/directives/until.js").UntilDirective<import("lit-html").TemplateResult<1> | Promise<symbol | {
26
+ export declare const renderListCore: <TColumns extends Columns, TItem extends object>({ settingsId, hashParam, enabledColumns, csvFilename, exposedParts, data$, noLocal, miniBreakpoint, breakpoints, sortOn, setSortOn, descending, setDescending, groupOn, setGroupOn, selectedItems, setSelectedItems, setVisibleItems, hasItems, setFilters, setIsMini, setSettingsReady, columns, actions, dialog, open, content, loadMore, compareItemsFn, rowPartFn, }: RenderListCore<TColumns, TItem>) => (import("lit-html/directive.js").DirectiveResult<new (_partInfo: import("lit-html/directive.js").PartInfo) => import("lit-html/directives/until.js").UntilDirective<import("lit-html").TemplateResult<1> | Promise<symbol | {
27
27
  toString(): string;
28
28
  } | readonly import("@neovici/cosmoz-form").Renderable[] | null | undefined>>> | undefined)[];
29
29
  //# sourceMappingURL=render-list-core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"render-list-core.d.ts","sourceRoot":"","sources":["../../src/list/render-list-core.ts"],"names":[],"mappings":"AACA,OAAO,2BAA2B,CAAC;AACnC,OAAO,EAEN,KAAK,UAAU,EACf,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAKrD,OAAO,EAAE,MAAM,EAAiB,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAU,OAAO,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,MAAM,WAAW,mBAAmB,CAAC,KAAK,SAAS,MAAM;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC;IAEjC,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,aAAa,EAAE,KAAK,EAAE,CAAA;KAAE,KAAK,UAAU,CAAC;IAC3D,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,KAAK,OAAO,CAAC;IACjD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CAC/D;AAED,MAAM,WAAW,cAAc,CAAC,QAAQ,SAAS,OAAO,EAAE,KAAK,SAAS,MAAM,CAC7E,SAAQ,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,KAAK,CAAC;CAAG;AAE1E,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,OAAO,EAAE,SAAS,CAAC,2CAGzD,CAAC;AAEH,eAAO,MAAM,cAAc,GAAI,QAAQ,SAAS,OAAO,EAAE,KAAK,SAAS,MAAM,EAAE,wVAmC5E,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC;;6FA6CjC,CAAC"}
1
+ {"version":3,"file":"render-list-core.d.ts","sourceRoot":"","sources":["../../src/list/render-list-core.ts"],"names":[],"mappings":"AACA,OAAO,2BAA2B,CAAC;AACnC,OAAO,EAEN,KAAK,UAAU,EACf,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAKrD,OAAO,EAAE,MAAM,EAAiB,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAU,OAAO,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,MAAM,WAAW,mBAAmB,CAAC,KAAK,SAAS,MAAM;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC;IAEjC,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,aAAa,EAAE,KAAK,EAAE,CAAA;KAAE,KAAK,UAAU,CAAC;IAC3D,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,KAAK,OAAO,CAAC;IACjD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CAC/D;AAED,MAAM,WAAW,cAAc,CAAC,QAAQ,SAAS,OAAO,EAAE,KAAK,SAAS,MAAM,CAC7E,SAAQ,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,KAAK,CAAC;CAAG;AAE1E,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,OAAO,EAAE,SAAS,CAAC,2CAGzD,CAAC;AAEH,eAAO,MAAM,cAAc,GAAI,QAAQ,SAAS,OAAO,EAAE,KAAK,SAAS,MAAM,EAAE,0WAoC5E,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC;;6FA8CjC,CAAC"}
@@ -9,7 +9,7 @@ import { when } from 'lit-html/directives/when.js';
9
9
  import { renderActions } from '../actions';
10
10
  import { renderLoadMore } from './more/render-more';
11
11
  export const renderColumns = (columns) => Object.entries(columns).map(([name, column]) => column.render({ ...column, name }));
12
- export const renderListCore = ({ settingsId, hashParam, enabledColumns, csvFilename, exposedParts = 'itemRow, itemRow-active', data$, noLocal = true, miniBreakpoint, breakpoints, sortOn, setSortOn, descending, setDescending, groupOn, setGroupOn, selectedItems, setSelectedItems, setVisibleItems, hasItems, setFilters, setIsMini, columns, actions, dialog, open, content, loadMore, compareItemsFn, rowPartFn, }) => [
12
+ export const renderListCore = ({ settingsId, hashParam, enabledColumns, csvFilename, exposedParts = 'itemRow, itemRow-active', data$, noLocal = true, miniBreakpoint, breakpoints, sortOn, setSortOn, descending, setDescending, groupOn, setGroupOn, selectedItems, setSelectedItems, setVisibleItems, hasItems, setFilters, setIsMini, setSettingsReady, columns, actions, dialog, open, content, loadMore, compareItemsFn, rowPartFn, }) => [
13
13
  html `<cosmoz-omnitable
14
14
  id="omnitable"
15
15
  ?no-local=${noLocal}
@@ -36,6 +36,7 @@ export const renderListCore = ({ settingsId, hashParam, enabledColumns, csvFilen
36
36
  ${when(breakpoints, () => breakpointsDirective(breakpoints, []))}
37
37
  .miniBreakpoint=${miniBreakpoint}
38
38
  @is-mini-changed=${lift(setIsMini)}
39
+ @settings-ready-changed=${lift(setSettingsReady)}
39
40
  >${[
40
41
  renderColumns(columns),
41
42
  when(actions, renderActions({ open, items: selectedItems, slot: 'actions' })),
@@ -26,6 +26,6 @@ export interface UseListCoreResult<TColumns extends Columns, TItem extends objec
26
26
  paramsMeta: TParams;
27
27
  loadMore: (() => void) | undefined;
28
28
  }
29
- export declare const useListCore: <TColumns extends Columns, TParams extends object, TItem extends object>({ columns: _columns, params: __params, list$: _list$, pageSize, sortOn: initialSortOn, descending: initialDescending, groupOn: initialGroupOn, }: UseListCore<TColumns, TParams, TItem>) => UseListCoreResult<TColumns, TItem, TParams>;
29
+ export declare const useListCore: <TColumns extends Columns, TParams extends object, TItem extends object>({ columns: _columns, params: __params, list$: _list$, pageSize, sortOn: initialSortOn, descending: initialDescending, groupOn: initialGroupOn, settingsId, }: UseListCore<TColumns, TParams, TItem>) => UseListCoreResult<TColumns, TItem, TParams>;
30
30
  export {};
31
31
  //# sourceMappingURL=use-list-core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-list-core.d.ts","sourceRoot":"","sources":["../../src/list/use-list-core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,MAAM,EAAW,MAAM,iBAAiB,CAAC;AAClD,OAAO,EACN,gBAAgB,EAChB,aAAa,EAEb,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,aAAa,CAAC,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW,CAC3B,QAAQ,SAAS,OAAO,EACxB,OAAO,SAAS,MAAM,EACtB,KAAK,SAAS,MAAM,CACnB,SAAQ,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACzE,OAAO,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,OAAO,CAAA;KAAE,KAAK,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3E,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;CACpD;AAED,KAAK,kBAAkB,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEhE,MAAM,WAAW,iBAAiB,CACjC,QAAQ,SAAS,OAAO,EACxB,KAAK,SAAS,MAAM,GAAG,MAAM,EAC7B,OAAO,SAAS,MAAM,GAAG,MAAM,CAE/B,SACC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,EAC9B,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5C,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;IAC5B,YAAY,EAAE,KAAK,EAAE,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,QAAQ,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,WAAW,GACvB,QAAQ,SAAS,OAAO,EACxB,OAAO,SAAS,MAAM,EACtB,KAAK,SAAS,MAAM,EACnB,kJAQC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,KAAG,iBAAiB,CAC3D,QAAQ,EACR,KAAK,EACL,OAAO,CAgDP,CAAC"}
1
+ {"version":3,"file":"use-list-core.d.ts","sourceRoot":"","sources":["../../src/list/use-list-core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,MAAM,EAAW,MAAM,iBAAiB,CAAC;AAClD,OAAO,EACN,gBAAgB,EAChB,aAAa,EAEb,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,aAAa,CAAC,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW,CAC3B,QAAQ,SAAS,OAAO,EACxB,OAAO,SAAS,MAAM,EACtB,KAAK,SAAS,MAAM,CACnB,SAAQ,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACzE,OAAO,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,OAAO,CAAA;KAAE,KAAK,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3E,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;CACpD;AAED,KAAK,kBAAkB,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEhE,MAAM,WAAW,iBAAiB,CACjC,QAAQ,SAAS,OAAO,EACxB,KAAK,SAAS,MAAM,GAAG,MAAM,EAC7B,OAAO,SAAS,MAAM,GAAG,MAAM,CAE/B,SACC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,EAC9B,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5C,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;IAC5B,YAAY,EAAE,KAAK,EAAE,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,QAAQ,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,WAAW,GACvB,QAAQ,SAAS,OAAO,EACxB,OAAO,SAAS,MAAM,EACtB,KAAK,SAAS,MAAM,EACnB,8JASC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,KAAG,iBAAiB,CAC3D,QAAQ,EACR,KAAK,EACL,OAAO,CAmDP,CAAC"}
@@ -3,13 +3,14 @@ import { useMeta } from '@neovici/cosmoz-utils/hooks/use-meta';
3
3
  import { useCallback, useEffect, useMemo } from '@pionjs/pion';
4
4
  import { useMore } from './more/use-more';
5
5
  import { useListCoreState, } from './use-list-state';
6
- export const useListCore = ({ columns: _columns, params: __params, list$: _list$, pageSize, sortOn: initialSortOn, descending: initialDescending, groupOn: initialGroupOn, }) => {
6
+ export const useListCore = ({ columns: _columns, params: __params, list$: _list$, pageSize, sortOn: initialSortOn, descending: initialDescending, groupOn: initialGroupOn, settingsId, }) => {
7
7
  const state = useListCoreState({
8
8
  sortOn: initialSortOn,
9
9
  descending: initialDescending,
10
10
  groupOn: initialGroupOn,
11
+ settingsId,
11
12
  });
12
- const { filters, descending, sortOn, setTotalAvailable } = state;
13
+ const { filters, descending, sortOn, setTotalAvailable, settingsReady } = state;
13
14
  const paramsMeta = useMeta({});
14
15
  const columns = useMemo(() => _columns[0]({ paramsMeta }), _columns[1]);
15
16
  const _params = useCallback(...__params);
@@ -30,6 +31,7 @@ export const useListCore = ({ columns: _columns, params: __params, list$: _list$
30
31
  setTotalAvailable,
31
32
  params,
32
33
  pageSize,
34
+ enabled: settingsReady,
33
35
  });
34
36
  return {
35
37
  ...state,
@@ -4,6 +4,8 @@ export interface ListCoreDefaults<TColumns extends object> {
4
4
  sortOn?: ColumnNames<TColumns>;
5
5
  groupOn?: ColumnNames<TColumns>;
6
6
  descending?: boolean;
7
+ /** The list's omnitable settingsId: fetching waits until its saved settings are applied. */
8
+ settingsId?: string;
7
9
  }
8
10
  export declare const useListCoreState: <TItem extends object, TColumns extends object>(defaults?: ListCoreDefaults<TColumns>) => {
9
11
  filters: ColumnFilters<TColumns> | undefined;
@@ -22,6 +24,8 @@ export declare const useListCoreState: <TItem extends object, TColumns extends o
22
24
  setTotalAvailable: import("@pionjs/pion").StateUpdater<number | undefined>;
23
25
  isMini: boolean;
24
26
  setIsMini: import("@pionjs/pion").StateUpdater<boolean>;
27
+ settingsReady: boolean;
28
+ setSettingsReady: import("@pionjs/pion").StateUpdater<boolean>;
25
29
  };
26
30
  export type ListCoreState<TItem extends object, TColumns extends object> = ReturnType<typeof useListCoreState<TItem, TColumns>>;
27
31
  //# sourceMappingURL=use-list-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-list-state.d.ts","sourceRoot":"","sources":["../../src/list/use-list-state.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEtD,MAAM,WAAW,gBAAgB,CAAC,QAAQ,SAAS,MAAM;IACxD,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,gBAAgB,GAAI,KAAK,SAAS,MAAM,EAAE,QAAQ,SAAS,MAAM,EAC7E,WAAW,gBAAgB,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;CAwCrC,CAAC;AAEF,MAAM,MAAM,aAAa,CACxB,KAAK,SAAS,MAAM,EACpB,QAAQ,SAAS,MAAM,IACpB,UAAU,CAAC,OAAO,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"use-list-state.d.ts","sourceRoot":"","sources":["../../src/list/use-list-state.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEtD,MAAM,WAAW,gBAAgB,CAAC,QAAQ,SAAS,MAAM;IACxD,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4FAA4F;IAC5F,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,gBAAgB,GAAI,KAAK,SAAS,MAAM,EAAE,QAAQ,SAAS,MAAM,EAC7E,WAAW,gBAAgB,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;CA8CrC,CAAC;AAEF,MAAM,MAAM,aAAa,CACxB,KAAK,SAAS,MAAM,EACpB,QAAQ,SAAS,MAAM,IACpB,UAAU,CAAC,OAAO,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC"}
@@ -10,6 +10,7 @@ export const useListCoreState = (defaults) => {
10
10
  // TODO: use pagination
11
11
  const [, setTotalAvailable] = useProperty('totalAvailable');
12
12
  const [isMini, setIsMini] = useProperty('isMini', false);
13
+ const [settingsReady, setSettingsReady] = useProperty('settingsReady', () => !defaults?.settingsId);
13
14
  return {
14
15
  filters,
15
16
  setFilters,
@@ -27,5 +28,7 @@ export const useListCoreState = (defaults) => {
27
28
  setTotalAvailable,
28
29
  isMini,
29
30
  setIsMini,
31
+ settingsReady,
32
+ setSettingsReady,
30
33
  };
31
34
  };
@@ -1,5 +1,5 @@
1
- import { columns02Icon, listIcon, squareIcon, } from '@neovici/cosmoz-icons/untitled';
1
+ import { columns02Icon, file02Icon, listIcon, } from '@neovici/cosmoz-icons/untitled';
2
2
  const size = { width: '18', height: '18' };
3
3
  export const list = listIcon(size);
4
4
  export const split = columns02Icon(size);
5
- export const queue = squareIcon(size);
5
+ export const queue = file02Icon(size);
@@ -13,6 +13,7 @@ export { base, queueStyle, default as renderStyles } from './style';
13
13
  export { actions$, mapActions, noActions, default as useFetchActions, } from './use-fetch-actions';
14
14
  export type { Item, Props } from './use-fetch-actions';
15
15
  export { useListSSE } from './use-list-sse';
16
+ export { labelActive } from './label-active';
16
17
  export { default as useDataNav } from './use-data-nav';
17
18
  export { useMobile } from './use-mobile';
18
19
  export { default as useTabs } from './use-tabs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EACN,eAAe,EACf,OAAO,IAAI,QAAQ,EACnB,YAAY,GACZ,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAEzC,cAAc,UAAU,CAAC;AAEzB,mBAAmB,SAAS,CAAC;AAC7B,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,SAAS,CAAC;AAGpE,OAAO,EACN,QAAQ,EACR,UAAU,EACV,SAAS,EACT,OAAO,IAAI,eAAe,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGzD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EACN,eAAe,EACf,OAAO,IAAI,QAAQ,EACnB,YAAY,GACZ,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAEzC,cAAc,UAAU,CAAC;AAEzB,mBAAmB,SAAS,CAAC;AAC7B,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,SAAS,CAAC;AAGpE,OAAO,EACN,QAAQ,EACR,UAAU,EACV,SAAS,EACT,OAAO,IAAI,eAAe,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGzD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -18,6 +18,7 @@ export { actions$, mapActions, noActions, default as useFetchActions, } from './
18
18
  // SSE
19
19
  export { useListSSE } from './use-list-sse';
20
20
  // Navigation & layout hooks
21
+ export { labelActive } from './label-active';
21
22
  export { default as useDataNav } from './use-data-nav';
22
23
  export { useMobile } from './use-mobile';
23
24
  export { default as useTabs } from './use-tabs';
@@ -0,0 +1,9 @@
1
+ interface LabelledTab {
2
+ name: string;
3
+ title?: unknown;
4
+ content?: unknown;
5
+ }
6
+ /** Icon-only tabs, except the active one, which also names its layout. */
7
+ export declare const labelActive: <T extends LabelledTab>(tabs: readonly T[], active?: string) => T[];
8
+ export {};
9
+ //# sourceMappingURL=label-active.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label-active.d.ts","sourceRoot":"","sources":["../../src/queue/label-active.ts"],"names":[],"mappings":"AAEA,UAAU,WAAW;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,0EAA0E;AAC1E,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,WAAW,EAChD,MAAM,SAAS,CAAC,EAAE,EAClB,SAAS,MAAM,QAMd,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { html } from 'lit-html';
2
+ /** Icon-only tabs, except the active one, which also names its layout. */
3
+ export const labelActive = (tabs, active) => tabs.map((tab) => tab.name === active
4
+ ? { ...tab, content: html `${tab.content}<span>${tab.title}</span>` }
5
+ : tab);
@@ -19,7 +19,7 @@ export default ({ items, hashParam, mobile, fallback, onActivate, }) => {
19
19
  {
20
20
  name: 'queue',
21
21
  disabled: !(items.length > 0),
22
- title: t('Queue'),
22
+ title: t('Focus'),
23
23
  content: icons.queue,
24
24
  },
25
25
  ].map((tab) => tab.name === fallback ? { ...tab, fallback: true } : tab), [items.length, mobile, fallback]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neovici/cosmoz-queue",
3
- "version": "3.9.4",
3
+ "version": "3.11.0",
4
4
  "description": "A reusable queue component for master-detail views with list, split, and queue modes",
5
5
  "keywords": [
6
6
  "web-components",