@neovici/cosmoz-queue 3.1.1 → 3.2.1

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.
@@ -16,11 +16,12 @@ export interface RenderListCoreProps<TItem extends object> {
16
16
  selectedItems: TItem[];
17
17
  }) => Renderable;
18
18
  compareItemsFn?: (a: TItem, b: TItem) => boolean;
19
+ rowPartFn?: (item: TItem, index: number) => string | undefined;
19
20
  }
20
21
  export interface RenderListCore<TColumns extends Columns, TItem extends object> extends UseListCoreResult<TColumns, TItem>, RenderListCoreProps<TItem> {
21
22
  }
22
23
  export declare const renderColumns: <T extends Columns>(columns: T) => import("../types/lit").LitRenderable[];
23
- export declare const renderListCore: <TColumns extends Columns, TItem extends object>({ settingsId, hashParam, enabledColumns, csvFilename, exposedParts, data$, noLocal, miniBreakpoint, sortOn, setSortOn, descending, setDescending, groupOn, setGroupOn, selectedItems, setSelectedItems, setVisibleItems, hasItems, setFilters, setIsMini, columns, actions, dialog, open, content, loadMore, compareItemsFn, }: 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 | {
24
+ export declare const renderListCore: <TColumns extends Columns, TItem extends object>({ settingsId, hashParam, enabledColumns, csvFilename, exposedParts, data$, noLocal, miniBreakpoint, 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 | {
24
25
  toString(): string;
25
26
  } | readonly import("@neovici/cosmoz-form").Renderable[] | null | undefined>>> | undefined)[];
26
27
  //# 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,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;IAExB,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;CACjD;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,gUAiC5E,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC;;6FA2CjC,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,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;IAExB,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,2UAkC5E,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC;;6FA4CjC,CAAC"}
@@ -8,7 +8,7 @@ import { when } from 'lit-html/directives/when.js';
8
8
  import { renderActions } from '../actions';
9
9
  import { renderLoadMore } from './more/render-more';
10
10
  export const renderColumns = (columns) => Object.entries(columns).map(([name, column]) => column.render({ ...column, name }));
11
- export const renderListCore = ({ settingsId, hashParam, enabledColumns, csvFilename, exposedParts, data$, noLocal = true, miniBreakpoint, sortOn, setSortOn, descending, setDescending, groupOn, setGroupOn, selectedItems, setSelectedItems, setVisibleItems, hasItems, setFilters, setIsMini, columns, actions, dialog, open, content, loadMore, compareItemsFn, }) => [
11
+ export const renderListCore = ({ settingsId, hashParam, enabledColumns, csvFilename, exposedParts = 'itemRow, itemRow-active', data$, noLocal = true, miniBreakpoint, sortOn, setSortOn, descending, setDescending, groupOn, setGroupOn, selectedItems, setSelectedItems, setVisibleItems, hasItems, setFilters, setIsMini, columns, actions, dialog, open, content, loadMore, compareItemsFn, rowPartFn, }) => [
12
12
  html `<cosmoz-omnitable
13
13
  id="omnitable"
14
14
  ?no-local=${noLocal}
@@ -21,6 +21,7 @@ export const renderListCore = ({ settingsId, hashParam, enabledColumns, csvFilen
21
21
  guard([], () => (a, b) => a.id === b.id)}
22
22
  .settingsId=${settingsId}
23
23
  exportparts=${exposedParts}
24
+ .rowPartFn=${rowPartFn}
24
25
  @visible-data-changed=${lift(setVisibleItems)}
25
26
  @filters-changed=${lift(setFilters)}
26
27
  .selectedItems=${selectedItems}
@@ -9,7 +9,7 @@ export { itemClick } from './item-click';
9
9
  export { default as omnitable } from './omnitable';
10
10
  export { usePagination } from './pagination';
11
11
  export { queue } from './queue';
12
- export { base, default as renderStyles } from './style';
12
+ 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';
@@ -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,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAEzC,cAAc,UAAU,CAAC;AAEzB,mBAAmB,SAAS,CAAC;AAC7B,mBAAmB,aAAa,CAAC;AAGjC,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,OAAO,IAAI,YAAY,EAAE,MAAM,SAAS,CAAC;AAGxD,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;AAGhD,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,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAEzC,cAAc,UAAU,CAAC;AAEzB,mBAAmB,SAAS,CAAC;AAC7B,mBAAmB,aAAa,CAAC;AAGjC,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;AAGhD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -12,7 +12,7 @@ export { usePagination } from './pagination';
12
12
  // Queue core
13
13
  export { queue } from './queue';
14
14
  // Styling
15
- export { base, default as renderStyles } from './style';
15
+ export { base, queueStyle, default as renderStyles } from './style';
16
16
  // Fetch actions
17
17
  export { actions$, mapActions, noActions, default as useFetchActions, } from './use-fetch-actions';
18
18
  // SSE
@@ -3,6 +3,8 @@ import { Rec } from '@neovici/cosmoz-utils/object';
3
3
  import { Ref } from '@pionjs/pion';
4
4
  interface Props<I> {
5
5
  exposedParts?: string;
6
+ /** Appended to each row's `part` list (forwarded to the omnitable's rowPartFn). */
7
+ rowPartFn?: (item: I, index: number) => string | undefined;
6
8
  settingsId?: string;
7
9
  data$?: Promise<I[]>;
8
10
  onData?: (v: I[]) => void;
@@ -14,6 +16,6 @@ interface Props<I> {
14
16
  onSort?: (v: string) => void;
15
17
  ref?: Ref<HTMLElement | undefined>;
16
18
  }
17
- declare const omnitable: <I extends Rec>({ exposedParts, settingsId, data$, onData, selected, onSelected, descending, onDescending, sortOn, onSort, ref: omnitableRef, }: Props<I>, content?: unknown) => import("lit-html").TemplateResult<1>;
19
+ declare const omnitable: <I extends Rec>({ exposedParts, rowPartFn, settingsId, data$, onData, selected, onSelected, descending, onDescending, sortOn, onSort, ref: omnitableRef, }: Props<I>, content?: unknown) => import("lit-html").TemplateResult<1>;
18
20
  export default omnitable;
19
21
  //# sourceMappingURL=omnitable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"omnitable.d.ts","sourceRoot":"","sources":["../../src/queue/omnitable.ts"],"names":[],"mappings":"AAIA,OAAO,2BAA2B,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAEnD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAGnC,UAAU,KAAK,CAAC,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAErB,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACf,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAE9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAEpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7B,GAAG,CAAC,EAAE,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;CACnC;AA0BD,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,GAAG,EAC/B,iIAYG,KAAK,CAAC,CAAC,CAAC,EACX,UAAU,OAAO,yCAoBjB,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"omnitable.d.ts","sourceRoot":"","sources":["../../src/queue/omnitable.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAQnC,UAAU,KAAK,CAAC,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mFAAmF;IACnF,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAErB,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACf,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAE9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAEpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7B,GAAG,CAAC,EAAE,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;CACnC;AA0BD,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,GAAG,EAC/B,4IAaG,KAAK,CAAC,CAAC,CAAC,EACX,UAAU,OAAO,yCAqBjB,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1,13 +1,13 @@
1
+ import '@neovici/cosmoz-omnitable';
1
2
  import { html } from 'lit-html';
2
3
  import { guard } from 'lit-html/directives/guard.js';
4
+ import { ref } from 'lit-html/directives/ref.js';
3
5
  import { until } from 'lit-html/directives/until.js';
4
6
  import { when } from 'lit-html/directives/when.js';
5
- import '@neovici/cosmoz-omnitable';
6
7
  import { updateWith } from '../util/polymer-property-changed-event.js';
7
- import { ref } from 'lit-html/directives/ref.js';
8
8
  const loading$$ = (data$, loading) => guard([data$, loading], () => when(data$, (data$) => until(data$?.then(() => false, () => false), true), () => loading));
9
9
  const data$$ = (data$, data) => guard([data$, data], () => when(data$, () => until(data$, []), () => data));
10
- const omnitable = ({ exposedParts, settingsId, data$, onData, selected, onSelected, descending, onDescending, sortOn, onSort, ref: omnitableRef, }, content) => html `
10
+ const omnitable = ({ exposedParts = 'itemRow, itemRow-active', rowPartFn, settingsId, data$, onData, selected, onSelected, descending, onDescending, sortOn, onSort, ref: omnitableRef, }, content) => html `
11
11
  <cosmoz-omnitable
12
12
  ${ref((el) => {
13
13
  if (omnitableRef)
@@ -18,6 +18,7 @@ const omnitable = ({ exposedParts, settingsId, data$, onData, selected, onSelect
18
18
  .data=${data$$(data$)}
19
19
  ?loading=${loading$$(data$)}
20
20
  exportparts=${exposedParts}
21
+ .rowPartFn=${rowPartFn}
21
22
  .sortOn=${sortOn}
22
23
  @sort-on-changed=${updateWith(onSort)}
23
24
  .descending=${descending}
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/queue/queue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAe,WAAW,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEjD,KAAK,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,KAAK,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG;IAChD,GAAG,EAAE,cAAc,CAAC;IACpB,IAAI,EAAE,CAAC,CAAC;CACR,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC3B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC,CACnB,SACC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,KAAK,GAAG,UAAU,CAAC,EAC5C,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,GAAG,cAAc,GAAG,QAAQ,CAAC;IAC/D,IAAI,EAAE,CACL,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG;QAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,KACpD,cAAc,CAAC;IACpB,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC;IACzE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC;IAC3E,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,mGAAmG;IACnG,KAAK,CAAC,EAAE,WAAW,CAAC;CACpB;AAMD,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,sBA4GjD,CAAC"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/queue/queue.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAe,WAAW,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEjD,KAAK,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,KAAK,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG;IAChD,GAAG,EAAE,cAAc,CAAC;IACpB,IAAI,EAAE,CAAC,CAAC;CACR,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC3B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC,CACnB,SACC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,KAAK,GAAG,UAAU,CAAC,EAC5C,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,GAAG,cAAc,GAAG,QAAQ,CAAC;IAC/D,IAAI,EAAE,CACL,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG;QAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,KACpD,cAAc,CAAC;IACpB,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC;IACzE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC;IAC3E,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,mGAAmG;IACnG,KAAK,CAAC,EAAE,WAAW,CAAC;CACpB;AAMD,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,sBAsHjD,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { useCallback } from '@pionjs/pion';
1
2
  import { updateWith } from '../util/polymer-property-changed-event.js';
2
3
  import { renderQueue } from './render';
3
4
  import useAsyncAction from './use-async-action';
@@ -13,6 +14,10 @@ export const queue = (props) => {
13
14
  });
14
15
  const { index, hideActions, items, setItems, setSelected, totalAvailable, setTotalAvailable, onItemClick, nav, tabnav, } = queueProps;
15
16
  const { listRef, onAsyncSimpleAction } = useAsyncAction(nav);
17
+ // Marks the active row with the static `itemRow-active` part.
18
+ const rowPartFn = useCallback((row) => nav.item != null && nav.id(row) === nav.id(nav.item)
19
+ ? 'itemRow-active'
20
+ : undefined, [nav.item, nav.id]);
16
21
  const renderProps = {
17
22
  ...queueProps,
18
23
  onAsyncSimpleAction,
@@ -41,7 +46,7 @@ export const queue = (props) => {
41
46
  list: list({
42
47
  id: 'list',
43
48
  slot: 'previous',
44
- '.exposedParts': `itemRow, itemRow-${index}`,
49
+ '.rowPartFn': rowPartFn,
45
50
  '.settingsId': settingsId,
46
51
  '@visible-items-changed': updateWith(setItems),
47
52
  '@selected-items-changed': updateWith(setSelected),
@@ -9,7 +9,7 @@ import { guard } from 'lit-html/directives/guard.js';
9
9
  import { ifDefined } from 'lit-html/directives/if-defined.js';
10
10
  import { when } from 'lit-html/directives/when.js';
11
11
  import { arrow } from './icon';
12
- import renderStyles from './style';
12
+ import { queueStyle } from './style';
13
13
  const _emptySlide = {
14
14
  id: 'empty',
15
15
  content: nothing,
@@ -132,7 +132,7 @@ export const renderQueue = ({ header, heading, afterHeading, index, tabnav, item
132
132
  `;
133
133
  return html `
134
134
  <style>
135
- ${renderStyles({ index })}
135
+ ${queueStyle}
136
136
  </style>
137
137
 
138
138
  ${when(header, (header) => header({ tabnav, heading, afterHeading, totalAvailable }), () => tabn)}
@@ -1,5 +1,14 @@
1
1
  export declare const base: string;
2
- declare const _default: ({ index }: {
2
+ /**
3
+ * Static queue stylesheet, highlighted by the static `itemRow-active` part
4
+ * (marked on the active row via the omnitable's `rowPartFn`).
5
+ */
6
+ export declare const queueStyle: string;
7
+ /**
8
+ * @deprecated Attach the static `queueStyle` via the pion `styleSheets` option
9
+ * instead. The `index` parameter is ignored.
10
+ */
11
+ declare const _default: (_opts?: {
3
12
  index?: number | string;
4
13
  }) => string;
5
14
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../src/queue/style.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,IAAI,QA+EhB,CAAC;yBAEc,WAAW;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE;AAAtD,wBAkBE"}
1
+ {"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../src/queue/style.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,IAAI,QA+EhB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,QAkBtB,CAAC;AAEF;;;GAGG;yBAEa,QAAQ;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,KAAG,MAAM;AAA5D,wBAA2E"}
@@ -79,10 +79,14 @@ export const base = css `
79
79
  display: flex;
80
80
  }
81
81
  `;
82
- export default ({ index }) => css `
82
+ /**
83
+ * Static queue stylesheet, highlighted by the static `itemRow-active` part
84
+ * (marked on the active row via the omnitable's `rowPartFn`).
85
+ */
86
+ export const queueStyle = css `
83
87
  ${base}
84
88
 
85
- #list::part(itemRow-${index || '0'}) {
89
+ #list::part(itemRow-active) {
86
90
  background: var(--cz-color-bg-tertiary);
87
91
  }
88
92
 
@@ -98,3 +102,9 @@ export default ({ index }) => css `
98
102
  display: none;
99
103
  }
100
104
  `;
105
+ /**
106
+ * @deprecated Attach the static `queueStyle` via the pion `styleSheets` option
107
+ * instead. The `index` parameter is ignored.
108
+ */
109
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
110
+ export default (_opts) => queueStyle;
@@ -1 +1 @@
1
- {"version":3,"file":"use-list-sse.d.ts","sourceRoot":"","sources":["../../src/queue/use-list-sse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAInD,MAAM,WAAW,oBAAoB;IACpC,kBAAkB,EAAE,WAAW,CAAC;QAC/B,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,CAAC;QACd,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;KAC7B,CAAC,CAAC;IACH,kBAAkB,EAAE,WAAW,CAAC;QAC/B,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,CAAC;QACd,MAAM,EAAE,MAAM,IAAI,CAAC;KACnB,CAAC,CAAC;CACH;AAED,UAAU,IAAK,SAAQ,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;CACX;AAED,UAAU,SAAS,CAAC,CAAC,SAAS,GAAG,CAAE,SAAQ,WAAW;IACrD,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACX,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC;IACvD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;CAC3B;AAED,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,GAAG;QAAE,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,WAAW,CAAC,CAAC,EAAE,GAAG;QAAE,KAAK,EAAE,CAAC,EAAE,CAAA;KAAE,CAAC,CAAC;CACzE;AA4DD,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,GAAG;IAC3C,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,EAAE,CAAC,CAAC;IACV,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AA2BD,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,GAAG,CAC3C,SAAQ,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;CACzB;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,GAAG,EAAE,qBAGvD,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,SAsCZ,CAAC"}
1
+ {"version":3,"file":"use-list-sse.d.ts","sourceRoot":"","sources":["../../src/queue/use-list-sse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAInD,MAAM,WAAW,oBAAoB;IACpC,kBAAkB,EAAE,WAAW,CAAC;QAC/B,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,CAAC;QACd,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;KAC7B,CAAC,CAAC;IACH,kBAAkB,EAAE,WAAW,CAAC;QAC/B,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,CAAC;QACd,MAAM,EAAE,MAAM,IAAI,CAAC;KACnB,CAAC,CAAC;CACH;AAED,UAAU,IAAK,SAAQ,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;CACX;AAED,UAAU,SAAS,CAAC,CAAC,SAAS,GAAG,CAAE,SAAQ,WAAW;IACrD,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACX,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC;IACvD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;CAC3B;AAED,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,GAAG;QAAE,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,WAAW,CAAC,CAAC,EAAE,GAAG;QAAE,KAAK,EAAE,CAAC,EAAE,CAAA;KAAE,CAAC,CAAC;CACzE;AA4DD,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,GAAG;IAC3C,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,EAAE,CAAC,CAAC;IACV,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,GAAG,CAC3C,SAAQ,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;CACzB;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,GAAG,EAAE,qBAGvD,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,SAsCZ,CAAC"}
@@ -55,6 +55,9 @@ const check$$ = async (opts) => {
55
55
  return [];
56
56
  });
57
57
  ids.clear();
58
+ // an empty objectIds filter is dropped from the query, turning this into an unfiltered search
59
+ if (objectIds.length === 0)
60
+ return;
58
61
  const res = await list$({ ...params, objectIds });
59
62
  const updates = Array.isArray(res) ? res : res.items ?? [];
60
63
  return process$({ ...opts, idProperty, objectIds, updates });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neovici/cosmoz-queue",
3
- "version": "3.1.1",
3
+ "version": "3.2.1",
4
4
  "description": "A reusable queue component for master-detail views with list, split, and queue modes",
5
5
  "keywords": [
6
6
  "web-components",
@@ -69,7 +69,7 @@
69
69
  "@neovici/cosmoz-router": "^11.2.8",
70
70
  "@neovici/cosmoz-slider": "^5.2.1",
71
71
  "@neovici/cosmoz-tabs": "^10.0.0",
72
- "@neovici/cosmoz-tokens": "^3.4.0",
72
+ "@neovici/cosmoz-tokens": "^3.4.0 || ^4.0.0",
73
73
  "@neovici/cosmoz-utils": "^6.22.0",
74
74
  "@pionjs/pion": "^2.10.0",
75
75
  "i18next": ">=23.0.0 <27.0.0",
@@ -80,7 +80,7 @@
80
80
  "@commitlint/cli": "^20.0.0",
81
81
  "@commitlint/config-conventional": "^20.0.0",
82
82
  "@eslint/eslintrc": "^2.0.0",
83
- "@neovici/cfg": "^2.11.0",
83
+ "@neovici/cfg": "^2.15.0",
84
84
  "@neovici/testing": "^2.2.0",
85
85
  "@playwright/test": "^1.62.1",
86
86
  "@storybook/addon-links": "^10.0.0",