@orangelogic/design-system 2.113.0 → 2.115.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.
- package/library/chunks/asset.CtPQLZOf.js +607 -0
- package/library/chunks/{button.DIvU_uFU.js → button.DwJEeW2t.js} +1 -1
- package/library/chunks/{color-swatch-group.DV5uB8OC.js → color-swatch-group.DjjSIHSV.js} +7 -7
- package/library/chunks/{color-swatch.BoUZGGs4.js → color-swatch.DVzEaNeL.js} +1 -1
- package/library/chunks/{confirm-popover.DS9HIy3c.js → confirm-popover.BifwpSuf.js} +3 -3
- package/library/chunks/{dialog.DyT-Nai2.js → dialog.BYCWepBc.js} +2 -2
- package/library/chunks/{document-viewer.AiKX3RO6.js → document-viewer.BIC9iYpZ.js} +1237 -1233
- package/library/chunks/{dot-pagination.CKbL6eN_.js → dot-pagination.C4l5vKor.js} +1 -1
- package/library/chunks/{endpoints.DBlquU2-.js → endpoints.CDX5PgQz.js} +251 -251
- package/library/chunks/{file-on-demand.h8tCgq51.js → file-on-demand.AwMj4AfO.js} +246 -227
- package/library/chunks/{folder-select.eoufobYO.js → folder-select.8xNjeJfp.js} +5 -5
- package/library/chunks/{header.BUp3_oeJ.js → header.Cf9ujCpg.js} +3 -3
- package/library/chunks/{i18n.C21qyGi6.js → i18n.CH-wak_P.js} +3 -1
- package/library/chunks/{icon-button.DxkJ-cp-.js → icon-button.CQiBjznj.js} +1 -1
- package/library/chunks/{iframe.CwxozWMt.js → iframe.BQPVygBJ.js} +1 -1
- package/library/chunks/{image.B-YcKRop.js → image.cT-FziNS.js} +1 -1
- package/library/chunks/{input.DdeXWD_F.js → input.CH4lKxPM.js} +1 -1
- package/library/chunks/{list-editor.Qx2ecTcL.js → list-editor.7zNWfBuW.js} +13 -13
- package/library/chunks/{option.CcGRV3jj.js → option.Bvh35v8S.js} +10 -10
- package/library/chunks/{pagination.CgAt4Keg.js → pagination.zQ2FFtxB.js} +5 -5
- package/library/chunks/{tab-group.hfUY7YE7.js → tab-group.DvMX02hY.js} +3 -3
- package/library/chunks/{table.CP3oGDY1.js → table.BvbReIZh.js} +46 -45
- package/library/chunks/{time.BiQnh9wt.js → time.BSmpFe2G.js} +2 -2
- package/library/chunks/{tree.YxFs3Tke.js → tree.Btf2Q4YZ.js} +10 -7
- package/library/chunks/waveform.1U9U_0rd.js +60 -0
- package/library/components/alert.js +2 -2
- package/library/components/asset-link-format.js +6 -6
- package/library/components/atoms.js +129 -131
- package/library/components/audio.js +132 -183
- package/library/components/border-input-group.js +2 -2
- package/library/components/breadcrumb.js +1 -1
- package/library/components/button.js +2 -2
- package/library/components/color-picker.js +3 -3
- package/library/components/color-swatch-group.js +4 -4
- package/library/components/color-swatch.js +2 -2
- package/library/components/confirm-popover.js +4 -4
- package/library/components/copy-button.js +1 -1
- package/library/components/corner-position-input-group.js +3 -3
- package/library/components/date-calendar.js +1 -1
- package/library/components/details.js +1 -1
- package/library/components/dialog.js +3 -3
- package/library/components/divider.js +15 -15
- package/library/components/document-viewer.js +3 -3
- package/library/components/dot-pagination.js +2 -2
- package/library/components/drawer.js +2 -2
- package/library/components/dropdown.js +2 -2
- package/library/components/dynamic-select.js +4 -4
- package/library/components/e-chart.js +1 -1
- package/library/components/element-clamp.js +2 -2
- package/library/components/file-on-demand.js +10 -10
- package/library/components/folder-select.js +5 -5
- package/library/components/format-bytes.js +1 -1
- package/library/components/format-date.js +1 -1
- package/library/components/format-number.js +1 -1
- package/library/components/format-time.js +2 -2
- package/library/components/header.js +2 -2
- package/library/components/icon-button.js +2 -2
- package/library/components/iframe.js +2 -2
- package/library/components/image-comparer.js +1 -1
- package/library/components/image.js +2 -2
- package/library/components/input.js +2 -2
- package/library/components/line-clamp.js +1 -1
- package/library/components/list-editor.js +7 -7
- package/library/components/masonry.js +2 -2
- package/library/components/menu-item.js +1 -1
- package/library/components/menu.js +3 -3
- package/library/components/molecules.js +4 -4
- package/library/components/option.js +2 -2
- package/library/components/organisms.js +2 -2
- package/library/components/padding-input-group.js +1 -1
- package/library/components/pagination.js +6 -6
- package/library/components/popup.js +1 -1
- package/library/components/position-picker.js +1 -1
- package/library/components/progress-bar.js +1 -1
- package/library/components/progress-ring.js +1 -1
- package/library/components/radio-button.js +10 -10
- package/library/components/radio-card.js +6 -6
- package/library/components/radio.js +2 -2
- package/library/components/range.js +1 -1
- package/library/components/rating.js +1 -1
- package/library/components/relative-time.js +1 -1
- package/library/components/resize-observer.js +3 -3
- package/library/components/select.js +7 -7
- package/library/components/shadow-input-group.js +1 -1
- package/library/components/share-option-list.js +10 -10
- package/library/components/sidebar.js +1 -1
- package/library/components/size-input-group.js +3 -3
- package/library/components/spinner.js +1 -1
- package/library/components/split-panel.js +1 -1
- package/library/components/tab-group.js +4 -4
- package/library/components/tab.js +2 -2
- package/library/components/table.js +10 -10
- package/library/components/tag.js +2 -2
- package/library/components/tooltip.js +1 -1
- package/library/components/tree-item.js +2 -2
- package/library/components/tree.js +2 -2
- package/library/components/typeface.js +2 -2
- package/library/components/types.js +33324 -32768
- package/library/components/video.js +2 -2
- package/library/package.json +1 -1
- package/library/packages/atoms/src/components/audio/audio.d.ts +36 -28
- package/library/packages/atoms/src/components/divider/divider.d.ts +1 -1
- package/library/packages/atoms/src/components/option/option.d.ts +1 -1
- package/library/packages/atoms/src/components/radio/radio.d.ts +1 -1
- package/library/packages/atoms/src/components/radio-button/radio-button.d.ts +1 -1
- package/library/packages/atoms/src/components/radio-card/radio-card.d.ts +1 -1
- package/library/packages/atoms/src/components/tree/tree.d.ts +1 -0
- package/library/packages/atoms/src/index.d.ts +0 -1
- package/library/packages/events/src/cx-facet-change.d.ts +16 -0
- package/library/packages/events/src/cx-faceted-filter-change.d.ts +6 -1
- package/library/packages/events/src/events.d.ts +1 -0
- package/library/packages/{atoms/src/components → molecules/src}/faceted-filter/components/facet/facet.d.ts +9 -9
- package/library/packages/molecules/src/faceted-filter/components/facet/facet.styles.d.ts +2 -0
- package/library/packages/molecules/src/faceted-filter/components/facet-date-picker/facet-date-picker.d.ts +43 -0
- package/library/packages/molecules/src/faceted-filter/components/facet-date-range/facet-date-range.d.ts +51 -0
- package/library/packages/molecules/src/faceted-filter/facet-adapters.d.ts +12 -0
- package/library/packages/{atoms/src/components → molecules/src}/faceted-filter/faceted-filter.d.ts +25 -14
- package/library/packages/molecules/src/faceted-filter/faceted-filter.styles.d.ts +2 -0
- package/library/packages/molecules/src/icon-picker/icon-picker.d.ts +1 -1
- package/library/packages/molecules/src/index.d.ts +4 -0
- package/library/packages/molecules/src/share-option-list/share-option-list.d.ts +1 -1
- package/library/packages/organisms/src/asset-transformation-dialog/asset-transformation-dialog.d.ts +1 -1
- package/library/packages/organisms/src/carousel/carousel.d.ts +1 -0
- package/library/packages/organisms/src/content-builder/components/gallery-config/gallery-config.d.ts +1 -0
- package/library/packages/organisms/src/content-builder/components/page-picker/page-picker.d.ts +1 -0
- package/library/packages/organisms/src/content-builder/configs/audio.d.ts +1 -1
- package/library/packages/organisms/src/content-builder/configs-controller.d.ts +2 -2
- package/library/packages/organisms/src/file-on-demand/components/file-on-demand-pinned-status.ts/file-on-demand-pinned-status.d.ts +2 -0
- package/library/packages/organisms/src/file-on-demand/file-on-demand.d.ts +1 -0
- package/library/packages/services/src/api/asset/asset.d.ts +3 -1
- package/library/packages/services/src/api/endpoints.d.ts +2 -0
- package/library/packages/tools/src/fetch-asset/fetch-asset.d.ts +6 -0
- package/library/packages/tools/src/fetch-image/fetch-image.d.ts +11 -4
- package/library/packages/types/src/faceted-filter.d.ts +71 -2
- package/library/packages/utils/src/custom-element/i18n.d.ts +3 -1
- package/library/packages/utils/src/image/index.d.ts +1 -0
- package/library/packages/utils/src/image/waveform.d.ts +29 -0
- package/library/react-web-component.d.ts +440 -317
- package/library/utils.js +174 -171
- package/package.json +1 -1
- package/library/chunks/asset.HL1qMnhg.js +0 -458
- package/library/chunks/wavesurfer.esm.Cwi1pz64.js +0 -1276
- package/library/components/faceted-filter.d.ts +0 -3
- package/library/components/faceted-filter.js +0 -295
- /package/library/packages/{atoms/src/components/faceted-filter/components/facet/facet.styles.d.ts → molecules/src/faceted-filter/components/facet-date-picker/facet-date-picker.styles.d.ts} +0 -0
- /package/library/packages/{atoms/src/components/faceted-filter/faceted-filter.styles.d.ts → molecules/src/faceted-filter/components/facet-date-range/facet-date-range.styles.d.ts} +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { _ as Bd, a as Sa, b as Be, c as Je } from "../chunks/inheritsLoose.BuSn_CvZ.js";
|
|
2
2
|
import { c as ps, a as Bn } from "../chunks/_commonjsHelpers.DQNKXVTB.js";
|
|
3
3
|
import { r as Sb } from "../chunks/___vite-browser-external_commonjs-proxy.C2tf3HsQ.js";
|
|
4
|
-
import { C as Cb } from "../chunks/image.
|
|
4
|
+
import { C as Cb } from "../chunks/image.cT-FziNS.js";
|
|
5
5
|
import Mb from "./resize-observer.js";
|
|
6
6
|
import { r as Db, R as Pb, a as Rp, b as Lb } from "../chunks/resizable-component.styles.DpK0TTP5.js";
|
|
7
7
|
import { c as Rb } from "../chunks/component.styles.CRO4Odto.js";
|
|
8
8
|
import { b as Ib } from "../chunks/debounce.CIEhztrj.js";
|
|
9
9
|
import { c as Ob } from "../chunks/custom-element.L4WJXn1j.js";
|
|
10
|
-
import { L as kb } from "../chunks/i18n.
|
|
10
|
+
import { L as kb } from "../chunks/i18n.CH-wak_P.js";
|
|
11
11
|
import { w as gn } from "../chunks/watch.CThbualB.js";
|
|
12
12
|
import { i as Bb, x as Kc } from "../chunks/lit-element.jLBm65_O.js";
|
|
13
13
|
import { n as ki } from "../chunks/lib-cortex-element.CVMmyPMC.js";
|
package/library/package.json
CHANGED
|
@@ -4,20 +4,23 @@ import { CSSResultGroup } from 'lit';
|
|
|
4
4
|
import { default as CxIconButton } from '../icon-button/icon-button';
|
|
5
5
|
import { default as CxTypography } from '../typography/typography';
|
|
6
6
|
|
|
7
|
-
/** A [lightColor, darkColor] tuple used for theme-aware waveform coloring. */
|
|
8
|
-
type WaveColorPair = [string, string];
|
|
9
7
|
/**
|
|
10
|
-
* @summary Audio player with waveform visualization.
|
|
8
|
+
* @summary Audio player with server-rendered waveform visualization.
|
|
9
|
+
*
|
|
10
|
+
* @description Set `src` for the audio file and `waveform-src` for a server-rendered waveform PNG.
|
|
11
|
+
* The PNG is analyzed via canvas pixel sampling and rendered as a themeable SVG. A native `<audio>`
|
|
12
|
+
* element handles playback. Wave color and background are fully CSS-controllable.
|
|
11
13
|
*
|
|
12
14
|
* @event cx-play - Emitted when playback starts.
|
|
13
15
|
* @event cx-pause - Emitted when playback pauses.
|
|
14
|
-
* @event {{
|
|
16
|
+
* @event {{ time: number }} cx-time-update - Emitted while the playback position changes.
|
|
15
17
|
* @event cx-ended - Emitted when playback reaches the end.
|
|
16
|
-
* @event
|
|
18
|
+
* @event cx-error - Emitted when the audio or waveform image fails to load.
|
|
17
19
|
*
|
|
18
20
|
* @csspart base - The main container.
|
|
19
21
|
* @csspart player - Row containing play button and waveform.
|
|
20
|
-
* @csspart waveform -
|
|
22
|
+
* @csspart waveform - Placeholder container shown while the waveform is loading.
|
|
23
|
+
* @csspart waveform-svg - SVG waveform element (once waveform-src is loaded).
|
|
21
24
|
* @csspart footer - Time and filename row.
|
|
22
25
|
* @csspart time - Current time / duration display.
|
|
23
26
|
* @csspart filename - Audio filename label.
|
|
@@ -27,8 +30,10 @@ type WaveColorPair = [string, string];
|
|
|
27
30
|
* @cssproperty [--height=auto] - Component height.
|
|
28
31
|
* @cssproperty [--border=0px] - Border.
|
|
29
32
|
* @cssproperty [--border-radius=0px] - Border radius.
|
|
30
|
-
* @cssproperty [--background-color=
|
|
31
|
-
* @cssproperty --waves-color - Waveform
|
|
33
|
+
* @cssproperty [--background-color=transparent] - Background color.
|
|
34
|
+
* @cssproperty --waves-color - Waveform fill color. Default: `--cx-color-primary`.
|
|
35
|
+
* @cssproperty --played-color - Overlay color for the played portion. Default: `--cx-color-primary-700`.
|
|
36
|
+
* @cssproperty [--playhead-color=var(--cx-color-neutral-0)] - Color of the thin playhead line tracking current position.
|
|
32
37
|
* @cssproperty --text-color - Time/icon color. Default: dark.
|
|
33
38
|
* @cssproperty --margin-top - Top margin.
|
|
34
39
|
* @cssproperty --margin-right - Right margin.
|
|
@@ -42,9 +47,9 @@ export default class CxAudio extends ResizableElement {
|
|
|
42
47
|
'cx-typography': typeof CxTypography;
|
|
43
48
|
};
|
|
44
49
|
readonly localize: LocalizeController;
|
|
45
|
-
private readonly waveformContainerAsync;
|
|
46
|
-
private waveSurfer;
|
|
47
50
|
private srcLoadVersion;
|
|
51
|
+
private extractWaveformPeaks;
|
|
52
|
+
private readonly audioEl;
|
|
48
53
|
/**
|
|
49
54
|
* The URL of the audio file to load.
|
|
50
55
|
*/
|
|
@@ -62,39 +67,42 @@ export default class CxAudio extends ResizableElement {
|
|
|
62
67
|
*/
|
|
63
68
|
loop: boolean;
|
|
64
69
|
/**
|
|
65
|
-
*
|
|
66
|
-
*
|
|
70
|
+
* URL of a server-rendered waveform PNG. The image is analyzed via canvas pixel sampling
|
|
71
|
+
* and rendered as a themeable SVG. Wave color and background are CSS-controllable via
|
|
72
|
+
* `--waves-color` and `--background-color`.
|
|
67
73
|
*/
|
|
68
|
-
|
|
74
|
+
waveformSrc: string;
|
|
69
75
|
/** Whether the audio is currently playing. */
|
|
70
76
|
private isPlaying;
|
|
71
77
|
/** Whether the audio has finished loading and is ready for playback. */
|
|
72
78
|
private isLoaded;
|
|
73
|
-
/** Whether an error occurred while loading the audio. */
|
|
79
|
+
/** Whether an error occurred while loading the audio or waveform image. */
|
|
74
80
|
private isError;
|
|
75
81
|
/** Current playback position in seconds. */
|
|
76
82
|
private currentTimeSeconds;
|
|
77
83
|
/** Total duration in seconds. */
|
|
78
84
|
private durationSeconds;
|
|
79
|
-
|
|
85
|
+
/** SVG path data extracted from the waveform PNG. */
|
|
86
|
+
private waveformPath;
|
|
87
|
+
/** viewBox width matching the number of samples extracted from the waveform image. */
|
|
88
|
+
private waveformViewBoxWidth;
|
|
89
|
+
/** Fraction of the audio that has been played, 0–1, for the progress overlay. */
|
|
90
|
+
private playedFraction;
|
|
91
|
+
/** Effective audio src bound to the <audio> element; set after waveform loads, cleared on cleanUp. */
|
|
92
|
+
private audioSrc;
|
|
80
93
|
runConnectedCallback(): void;
|
|
81
94
|
disconnectedCallback(): void;
|
|
82
95
|
handleSrcChange(): Promise<void>;
|
|
83
96
|
protected applySrc(src: string): Promise<void>;
|
|
84
|
-
handleWaveColorThemeChange(): Promise<void>;
|
|
85
97
|
updated(changedProps: Map<string, unknown>): void;
|
|
86
|
-
private onWaveSurferReady;
|
|
87
|
-
private onWaveSurferPlay;
|
|
88
|
-
private onWaveSurferPause;
|
|
89
|
-
private onWaveSurferTimeUpdate;
|
|
90
|
-
private onWaveSurferFinish;
|
|
91
|
-
private onWaveSurferError;
|
|
92
|
-
private resolveColorValue;
|
|
93
|
-
private computeCursorColor;
|
|
94
|
-
private setupColors;
|
|
95
|
-
private setupWaveSurfer;
|
|
96
|
-
private attachWaveSurferEvents;
|
|
97
98
|
private cleanUp;
|
|
99
|
+
private setupPngWaveform;
|
|
100
|
+
private handleAudioPlay;
|
|
101
|
+
private handleAudioPause;
|
|
102
|
+
private handleAudioTimeUpdate;
|
|
103
|
+
private handleAudioDurationChange;
|
|
104
|
+
private handleAudioEnded;
|
|
105
|
+
private handleAudioError;
|
|
98
106
|
private handleSizeChange;
|
|
99
107
|
/** Starts audio playback. */
|
|
100
108
|
play(): void;
|
|
@@ -103,6 +111,7 @@ export default class CxAudio extends ResizableElement {
|
|
|
103
111
|
/** Toggles between play and pause. */
|
|
104
112
|
togglePlay(): void;
|
|
105
113
|
private formatTime;
|
|
114
|
+
private handleWaveformClick;
|
|
106
115
|
private handlePlayButtonKeyDown;
|
|
107
116
|
render(): import('lit').TemplateResult<1>;
|
|
108
117
|
}
|
|
@@ -111,4 +120,3 @@ declare global {
|
|
|
111
120
|
'cx-audio': CxAudio;
|
|
112
121
|
}
|
|
113
122
|
}
|
|
114
|
-
export {};
|
|
@@ -24,7 +24,7 @@ export default class CxDivider extends CortexElement {
|
|
|
24
24
|
* Applies component's padding over the spacing custom property.
|
|
25
25
|
*/
|
|
26
26
|
usePadding: boolean;
|
|
27
|
-
|
|
27
|
+
runFirstUpdated(): void;
|
|
28
28
|
/**
|
|
29
29
|
* Applies the direction of the divider
|
|
30
30
|
*/
|
|
@@ -51,7 +51,7 @@ export default class CxOption extends CortexElement {
|
|
|
51
51
|
showCheck: boolean;
|
|
52
52
|
/** Check icon placement */
|
|
53
53
|
checkPlacement: CheckPlacement;
|
|
54
|
-
|
|
54
|
+
runFirstUpdated(): void;
|
|
55
55
|
private handleDefaultSlotChange;
|
|
56
56
|
private handleMouseEnter;
|
|
57
57
|
private handleMouseLeave;
|
|
@@ -40,7 +40,7 @@ export default class CxRadio extends CortexElement {
|
|
|
40
40
|
/** Specifies the radius of the checked icon. */
|
|
41
41
|
checkedIconRadius: number;
|
|
42
42
|
constructor();
|
|
43
|
-
|
|
43
|
+
runFirstUpdated(): void;
|
|
44
44
|
private handleBlur;
|
|
45
45
|
private handleClick;
|
|
46
46
|
private handleFocus;
|
|
@@ -25,7 +25,6 @@ export { default as CxDrawer } from './components/drawer/drawer';
|
|
|
25
25
|
export { default as CxDropdown } from './components/dropdown/dropdown';
|
|
26
26
|
export { default as CxEChart } from './components/e-chart/e-chart';
|
|
27
27
|
export { default as CxElementClamp } from './components/element-clamp/element-clamp';
|
|
28
|
-
export { default as CxFacetedFilter } from './components/faceted-filter/faceted-filter';
|
|
29
28
|
export { default as CxFormatBytes } from './components/format-bytes/format-bytes';
|
|
30
29
|
export { default as CxFormatDate } from './components/format-date/format-date';
|
|
31
30
|
export { default as CxFormatNumber } from './components/format-number/format-number';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { DateRangeValue } from '../../types/src/faceted-filter';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Internal (non-composed) event emitted by date facet adapters
|
|
5
|
+
* (`cx-facet-date-picker`, `cx-facet-date-range`) up to `cx-faceted-filter`.
|
|
6
|
+
* `range` is `null` when the facet's selection has been cleared.
|
|
7
|
+
*/
|
|
8
|
+
export type CxFacetChangeEvent = CustomEvent<{
|
|
9
|
+
field: string;
|
|
10
|
+
range: DateRangeValue | null;
|
|
11
|
+
}>;
|
|
12
|
+
declare global {
|
|
13
|
+
interface GlobalEventHandlersEventMap {
|
|
14
|
+
'cx-facet-change': CxFacetChangeEvent;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
|
+
import { SelectedDateRanges, SelectedFacets } from '../../types/src/faceted-filter';
|
|
2
|
+
|
|
1
3
|
export type CxFacetedFilterChangeEvent = CustomEvent<{
|
|
2
|
-
|
|
4
|
+
/** Date-facet selections (date-picker + date-range) keyed by facetFieldName. */
|
|
5
|
+
dateRanges?: SelectedDateRanges;
|
|
6
|
+
/** Checkbox-facet selections keyed by facetFieldName. */
|
|
7
|
+
selection: SelectedFacets;
|
|
3
8
|
}>;
|
|
4
9
|
declare global {
|
|
5
10
|
interface GlobalEventHandlersEventMap {
|
|
@@ -70,6 +70,7 @@ export * from './cx-enter';
|
|
|
70
70
|
export * from './cx-error';
|
|
71
71
|
export * from './cx-expand';
|
|
72
72
|
export * from './cx-export-settings';
|
|
73
|
+
export * from './cx-facet-change';
|
|
73
74
|
export * from './cx-faceted-filter-change';
|
|
74
75
|
export * from './cx-file-on-demand-load-more';
|
|
75
76
|
export * from './cx-file-on-demand-pin';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { default as CxButton } from '
|
|
2
|
-
import { default as CxDetails } from '
|
|
3
|
-
import { default as CxIcon } from '
|
|
4
|
-
import { default as CxSpace } from '
|
|
5
|
-
import { default as CxSpinner } from '
|
|
6
|
-
import { default as CxTree } from '
|
|
7
|
-
import { default as CxTreeItem } from '
|
|
8
|
-
import { default as CortexElement } from '
|
|
9
|
-
import { FacetSelectionMode, FacetValue } from '
|
|
1
|
+
import { default as CxButton } from '../../../../../atoms/src/components/button/button.ts';
|
|
2
|
+
import { default as CxDetails } from '../../../../../atoms/src/components/details/details.ts';
|
|
3
|
+
import { default as CxIcon } from '../../../../../atoms/src/components/icon/icon.ts';
|
|
4
|
+
import { default as CxSpace } from '../../../../../atoms/src/components/space/space.ts';
|
|
5
|
+
import { default as CxSpinner } from '../../../../../atoms/src/components/spinner/spinner.ts';
|
|
6
|
+
import { default as CxTree } from '../../../../../atoms/src/components/tree/tree.ts';
|
|
7
|
+
import { default as CxTreeItem } from '../../../../../atoms/src/components/tree-item/tree-item.ts';
|
|
8
|
+
import { default as CortexElement } from '../../../../../base/src/cortex-element.ts';
|
|
9
|
+
import { FacetSelectionMode, FacetValue } from '../../../../../types/src/faceted-filter';
|
|
10
10
|
import { CSSResultGroup } from 'lit';
|
|
11
11
|
|
|
12
12
|
/**
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { default as CxDetails } from '../../../../../atoms/src/components/details/details.ts';
|
|
2
|
+
import { default as CortexElement } from '../../../../../base/src/cortex-element.ts';
|
|
3
|
+
import { default as CxInputDatePicker } from '../../../input-date-picker/input-date-picker.ts';
|
|
4
|
+
import { CSSResultGroup } from 'lit';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @summary Internal single-date facet adapter for `cx-faceted-filter`. Renders a
|
|
8
|
+
* collapsible section (matching the checkbox facet) wrapping `cx-input-date-picker`,
|
|
9
|
+
* and normalizes its `cx-change` into the shared `cx-facet-change` event (an `=`
|
|
10
|
+
* filter on the chosen day).
|
|
11
|
+
*
|
|
12
|
+
* @event {{ field: string; range: DateRangeValue | null }} cx-facet-change - Fired
|
|
13
|
+
* when a date is committed (`range.type` is `date-picker`) or cleared (`range` is `null`).
|
|
14
|
+
*/
|
|
15
|
+
export default class CxFacetDatePicker extends CortexElement {
|
|
16
|
+
static readonly styles: CSSResultGroup;
|
|
17
|
+
static readonly dependencies: {
|
|
18
|
+
'cx-details': typeof CxDetails;
|
|
19
|
+
'cx-input-date-picker': typeof CxInputDatePicker;
|
|
20
|
+
};
|
|
21
|
+
/** Field name used as the filter key in the emitted event. */
|
|
22
|
+
field: string;
|
|
23
|
+
/** Human-readable label shown in the collapsible header. */
|
|
24
|
+
displayName: string;
|
|
25
|
+
/** Currently selected date in `YYYY-MM-DD`. */
|
|
26
|
+
value: string;
|
|
27
|
+
/** Currently selected time in 24-hour `HH:mm:ss`. */
|
|
28
|
+
fromTime: string;
|
|
29
|
+
/** Shows the hour/minute/second selects. */
|
|
30
|
+
showTime: boolean;
|
|
31
|
+
/** Minimum selectable date in `YYYY-MM-DD`. */
|
|
32
|
+
min: string;
|
|
33
|
+
/** Maximum selectable date in `YYYY-MM-DD`. */
|
|
34
|
+
max: string;
|
|
35
|
+
private handleChange;
|
|
36
|
+
private emitFacetChange;
|
|
37
|
+
render(): import('lit').TemplateResult<1>;
|
|
38
|
+
}
|
|
39
|
+
declare global {
|
|
40
|
+
interface HTMLElementTagNameMap {
|
|
41
|
+
'cx-facet-date-picker': CxFacetDatePicker;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { default as CxDetails } from '../../../../../atoms/src/components/details/details.ts';
|
|
2
|
+
import { default as CortexElement } from '../../../../../base/src/cortex-element.ts';
|
|
3
|
+
import { default as CxInputDateRangePicker } from '../../../input-date-range-picker/input-date-range-picker.ts';
|
|
4
|
+
import { CSSResultGroup } from 'lit';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @summary Internal date-range facet adapter for `cx-faceted-filter`. Renders a
|
|
8
|
+
* collapsible section (matching the checkbox facet) wrapping `cx-input-date-range-picker`,
|
|
9
|
+
* and normalizes its `cx-change` into the shared `cx-facet-change` event. The event fires
|
|
10
|
+
* only once **both** the from and to dates are set, so incomplete edits keep the prior filter.
|
|
11
|
+
*
|
|
12
|
+
* @event {{ field: string; range: DateRangeValue | null }} cx-facet-change - Fired
|
|
13
|
+
* when both range ends are committed (`range.type` is `date-range`).
|
|
14
|
+
*/
|
|
15
|
+
export default class CxFacetDateRange extends CortexElement {
|
|
16
|
+
static readonly styles: CSSResultGroup;
|
|
17
|
+
static readonly dependencies: {
|
|
18
|
+
'cx-details': typeof CxDetails;
|
|
19
|
+
'cx-input-date-range-picker': typeof CxInputDateRangePicker;
|
|
20
|
+
};
|
|
21
|
+
/** Field name used as the filter key in the emitted event. */
|
|
22
|
+
field: string;
|
|
23
|
+
/** Human-readable label shown in the collapsible header. */
|
|
24
|
+
displayName: string;
|
|
25
|
+
/** The from date in `YYYY-MM-DD`. */
|
|
26
|
+
fromDate: string;
|
|
27
|
+
/** The to date in `YYYY-MM-DD`. */
|
|
28
|
+
toDate: string;
|
|
29
|
+
/** The from time in 24-hour `HH:mm:ss`. */
|
|
30
|
+
fromTime: string;
|
|
31
|
+
/** The to time in 24-hour `HH:mm:ss`. */
|
|
32
|
+
toTime: string;
|
|
33
|
+
/** Shows the hour/minute/second selects on both pickers. */
|
|
34
|
+
showTime: boolean;
|
|
35
|
+
/** Shows the preset selector (Today, Last 7 days, …). */
|
|
36
|
+
showPreset: boolean;
|
|
37
|
+
/** Selected preset key. Controlled so clearing resets the inner picker's preset. */
|
|
38
|
+
preset: string;
|
|
39
|
+
/** Minimum selectable date in `YYYY-MM-DD`. */
|
|
40
|
+
min: string;
|
|
41
|
+
/** Maximum selectable date in `YYYY-MM-DD`. */
|
|
42
|
+
max: string;
|
|
43
|
+
private handleChange;
|
|
44
|
+
private emitFacetChange;
|
|
45
|
+
render(): import('lit').TemplateResult<1>;
|
|
46
|
+
}
|
|
47
|
+
declare global {
|
|
48
|
+
interface HTMLElementTagNameMap {
|
|
49
|
+
'cx-facet-date-range': CxFacetDateRange;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Facet, FacetRenderContext, FacetType } from '../../../types/src/faceted-filter';
|
|
2
|
+
import { TemplateResult } from 'lit';
|
|
3
|
+
|
|
4
|
+
/** Per-facet data the orchestrator hands each adapter so its render stays pure. */
|
|
5
|
+
type FacetRenderer = (facet: Facet, ctx: FacetRenderContext) => TemplateResult;
|
|
6
|
+
/**
|
|
7
|
+
* Adapter registry: maps a {@link FacetType} to the template that renders it.
|
|
8
|
+
* Add a new facet type by adding one entry here — the orchestrator dispatches
|
|
9
|
+
* through this map and never branches on type itself.
|
|
10
|
+
*/
|
|
11
|
+
export declare const FACET_ADAPTERS: Record<FacetType, FacetRenderer>;
|
|
12
|
+
export {};
|
package/library/packages/{atoms/src/components → molecules/src}/faceted-filter/faceted-filter.d.ts
RENAMED
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
import { default as CxBadge } from '
|
|
2
|
-
import { default as CxButton } from '
|
|
3
|
-
import { default as CxDetails } from '
|
|
4
|
-
import { default as CxDropdown } from '
|
|
5
|
-
import { default as CxIcon } from '
|
|
6
|
-
import { default as CxIconButton } from '
|
|
7
|
-
import { default as CxSpace } from '
|
|
8
|
-
import { default as CxSpinner } from '
|
|
9
|
-
import { default as CxTag } from '
|
|
10
|
-
import { default as CxTooltip } from '
|
|
11
|
-
import { default as CortexElement } from '
|
|
12
|
-
import { Facet, FacetDetails, FacetSelectionMode, SelectedFacets } from '
|
|
1
|
+
import { default as CxBadge } from '../../../atoms/src/components/badge/badge.ts';
|
|
2
|
+
import { default as CxButton } from '../../../atoms/src/components/button/button.ts';
|
|
3
|
+
import { default as CxDetails } from '../../../atoms/src/components/details/details.ts';
|
|
4
|
+
import { default as CxDropdown } from '../../../atoms/src/components/dropdown/dropdown.ts';
|
|
5
|
+
import { default as CxIcon } from '../../../atoms/src/components/icon/icon.ts';
|
|
6
|
+
import { default as CxIconButton } from '../../../atoms/src/components/icon-button/icon-button.ts';
|
|
7
|
+
import { default as CxSpace } from '../../../atoms/src/components/space/space.ts';
|
|
8
|
+
import { default as CxSpinner } from '../../../atoms/src/components/spinner/spinner.ts';
|
|
9
|
+
import { default as CxTag } from '../../../atoms/src/components/tag/tag.ts';
|
|
10
|
+
import { default as CxTooltip } from '../../../atoms/src/components/tooltip/tooltip.ts';
|
|
11
|
+
import { default as CortexElement } from '../../../base/src/cortex-element.ts';
|
|
12
|
+
import { Facet, FacetDetails, FacetSelectionMode, SelectedDateRanges, SelectedFacets } from '../../../types/src/faceted-filter';
|
|
13
13
|
import { CSSResultGroup } from 'lit';
|
|
14
|
-
import { default as CxFacetedFilterFacet } from './components/facet/facet';
|
|
15
14
|
|
|
16
15
|
/**
|
|
17
16
|
* @summary Filter icon button that opens a dropdown panel with collapsible facet groups.
|
|
@@ -27,7 +26,6 @@ export default class CxFacetedFilter extends CortexElement {
|
|
|
27
26
|
'cx-button': typeof CxButton;
|
|
28
27
|
'cx-details': typeof CxDetails;
|
|
29
28
|
'cx-dropdown': typeof CxDropdown;
|
|
30
|
-
'cx-faceted-filter-facet': typeof CxFacetedFilterFacet;
|
|
31
29
|
'cx-icon': typeof CxIcon;
|
|
32
30
|
'cx-icon-button': typeof CxIconButton;
|
|
33
31
|
'cx-space': typeof CxSpace;
|
|
@@ -36,12 +34,15 @@ export default class CxFacetedFilter extends CortexElement {
|
|
|
36
34
|
'cx-tooltip': typeof CxTooltip;
|
|
37
35
|
};
|
|
38
36
|
private readonly localize;
|
|
37
|
+
private readonly shadowRootAutoloader;
|
|
39
38
|
/** Active facets with their metadata and available option values. */
|
|
40
39
|
facets: Facet[];
|
|
41
40
|
/** Ordered list of facets to display. Controls which facets render and in what order. */
|
|
42
41
|
availableFacets: FacetDetails[];
|
|
43
42
|
/** Currently selected filter values. See `SelectedFacets` type. Can be set to reset selection. */
|
|
44
43
|
selectedFacets: SelectedFacets;
|
|
44
|
+
/** Currently selected date facet values (date-picker + date-range). Can be set to reset selection. */
|
|
45
|
+
selectedDateRanges: SelectedDateRanges;
|
|
45
46
|
/** Default selection mode for all facets. Per-facet selection in FacetDetails takes precedence. */
|
|
46
47
|
selection: FacetSelectionMode;
|
|
47
48
|
/** Whether the current selection is being applied by the consumer. */
|
|
@@ -50,17 +51,27 @@ export default class CxFacetedFilter extends CortexElement {
|
|
|
50
51
|
private appliedFiltersCount;
|
|
51
52
|
/** Internal selection state maintained by the component. */
|
|
52
53
|
private internalSelection;
|
|
54
|
+
/** Internal date facet selection state maintained by the component. */
|
|
55
|
+
private internalDateRanges;
|
|
53
56
|
/** Maps facetFieldName → (value → displayValue) for rendering applied-filter tags. */
|
|
54
57
|
private mappedDisplayNames;
|
|
55
58
|
handleFacetsChange(): void;
|
|
56
59
|
handleSelectedFacetsChange(): void;
|
|
60
|
+
handleSelectedDateRangesChange(): void;
|
|
57
61
|
handleInternalSelectionChange(): void;
|
|
58
62
|
private updateAppliedFiltersCount;
|
|
59
63
|
private getFacetSelectionMode;
|
|
64
|
+
private buildRenderContext;
|
|
60
65
|
private handleSelectionChange;
|
|
66
|
+
private handleFacetChange;
|
|
61
67
|
private handleRemove;
|
|
62
68
|
private handleClearAllClick;
|
|
69
|
+
private emitChange;
|
|
63
70
|
private renderAppliedFilters;
|
|
71
|
+
private getDateFacetLabel;
|
|
72
|
+
private formatDateRangeDisplay;
|
|
73
|
+
private renderDateTags;
|
|
74
|
+
private renderSelectionCheckboxTags;
|
|
64
75
|
private renderFooter;
|
|
65
76
|
render(): import('lit').TemplateResult<1>;
|
|
66
77
|
}
|
|
@@ -80,7 +80,7 @@ export default class CxIconPicker extends CortexElement {
|
|
|
80
80
|
* When true, renders a cx-bicolor-picker below the icon selector.
|
|
81
81
|
* @default false
|
|
82
82
|
*/
|
|
83
|
-
|
|
83
|
+
canPickColor: boolean;
|
|
84
84
|
/**
|
|
85
85
|
* Color value in light-dark() CSS format, managed by the embedded bicolor picker.
|
|
86
86
|
* Only relevant when show-bicolor-picker is true.
|
|
@@ -14,6 +14,10 @@ export { default as CxDocsExample } from './docs-example/docs-example';
|
|
|
14
14
|
export { default as CxDownloadFormatPicker } from './download-format-picker/download-format-picker';
|
|
15
15
|
export { default as CxDynamicSelect } from './dynamic-select/dynamic-select';
|
|
16
16
|
export { default as CxEstimatedReadingTime } from './estimated-reading-time/estimated-reading-time';
|
|
17
|
+
export { default as CxFacetDatePicker } from './faceted-filter/components/facet-date-picker/facet-date-picker';
|
|
18
|
+
export { default as CxFacetDateRange } from './faceted-filter/components/facet-date-range/facet-date-range';
|
|
19
|
+
export { default as CxFacetedFilter } from './faceted-filter/faceted-filter';
|
|
20
|
+
export { default as CxFacetedFilterFacet } from './faceted-filter/components/facet/facet';
|
|
17
21
|
export { default as CxFolderSelect } from './folder-select/folder-select';
|
|
18
22
|
export { default as CxGalleryItem } from './gallery-item/gallery-item';
|
|
19
23
|
export { default as CxGraphView } from './graph-view/graph-view';
|
|
@@ -56,7 +56,7 @@ export default class CxShareOptionList extends CortexElement {
|
|
|
56
56
|
private pendingSlideChange;
|
|
57
57
|
private slideObserver;
|
|
58
58
|
private slidesCache;
|
|
59
|
-
|
|
59
|
+
runFirstUpdated(): void;
|
|
60
60
|
connectedUpdatedCallback(): void;
|
|
61
61
|
disconnectedCallback(): void;
|
|
62
62
|
protected willUpdate(changedProperties: PropertyValueMap<CxShareOptionList> | Map<PropertyKey, unknown>): void;
|
package/library/packages/organisms/src/asset-transformation-dialog/asset-transformation-dialog.d.ts
CHANGED
|
@@ -84,7 +84,7 @@ export default class CxAssetTransformationDialog extends CortexElement {
|
|
|
84
84
|
* announce the correct role/state rather than the custom-element host. */
|
|
85
85
|
private updateAccessibleTrigger;
|
|
86
86
|
/** Fetches the asset and its available proxies when the dialog opens.
|
|
87
|
-
* Guards on `result.id` because `
|
|
87
|
+
* Guards on `result.id` because `fetchAssetByIDViaContentSdk` returns `{}` on network error. */
|
|
88
88
|
private handleDialogShow;
|
|
89
89
|
private handleTriggerClick;
|
|
90
90
|
private handleTriggerKeyDown;
|
|
@@ -259,6 +259,7 @@ export default class CxCarousel extends CortexElement {
|
|
|
259
259
|
get canDeleteCarouselItem(): boolean;
|
|
260
260
|
constructor();
|
|
261
261
|
connectedUpdatedCallback(): void;
|
|
262
|
+
runFirstUpdated(): void;
|
|
262
263
|
runConnectedCallback(): void;
|
|
263
264
|
disconnectedCallback(): void;
|
|
264
265
|
protected willUpdate(changedProperties: PropertyValueMap<CxCarousel> | Map<PropertyKey, unknown>): void;
|
|
@@ -21,7 +21,7 @@ export default class ConfigsController {
|
|
|
21
21
|
'resize-direction': import('./blocks/audio/audio').default["resizeDirection"];
|
|
22
22
|
src: import('./blocks/audio/audio').default["src"];
|
|
23
23
|
'version-label'?: string;
|
|
24
|
-
'
|
|
24
|
+
'waveform-src'?: string;
|
|
25
25
|
width: string;
|
|
26
26
|
}>[] | import('../../../types/src/content-builder').PropertyConfig<{
|
|
27
27
|
'asset-button-type': import('./blocks/button/button').default["assetType"];
|
|
@@ -311,7 +311,7 @@ export default class ConfigsController {
|
|
|
311
311
|
'resize-direction': import('./blocks/audio/audio').default["resizeDirection"];
|
|
312
312
|
src: import('./blocks/audio/audio').default["src"];
|
|
313
313
|
'version-label'?: string;
|
|
314
|
-
'
|
|
314
|
+
'waveform-src'?: string;
|
|
315
315
|
width: string;
|
|
316
316
|
}> | Partial<{
|
|
317
317
|
'asset-button-type': import('./blocks/button/button').default["assetType"];
|
|
@@ -27,10 +27,12 @@ export default class CxFileOnDemandPinnedStatus extends CortexElement {
|
|
|
27
27
|
isFolder: boolean;
|
|
28
28
|
childrenCount: number;
|
|
29
29
|
assetsCount: number;
|
|
30
|
+
uploadErrorMessage: string;
|
|
30
31
|
get cachedSize(): number;
|
|
31
32
|
get percentage(): number;
|
|
32
33
|
createRenderRoot(): this;
|
|
33
34
|
private renderFolderSuccessText;
|
|
35
|
+
private renderFileSuccessText;
|
|
34
36
|
private renderSuccess;
|
|
35
37
|
private renderFailed;
|
|
36
38
|
private renderCanceled;
|
|
@@ -244,6 +244,7 @@ export default class CxFileOnDemand extends CortexElement {
|
|
|
244
244
|
private handleProxyChange;
|
|
245
245
|
private handleCacheSizeKeydown;
|
|
246
246
|
private handleCacheSizeChange;
|
|
247
|
+
private formatCacheUsage;
|
|
247
248
|
private handleCacheLocationClick;
|
|
248
249
|
handleCacheLocationChange(): Promise<void>;
|
|
249
250
|
renderAdvancedSettings(): TemplateResult;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GetAllFormatCodesResponse, GetAssetsInFolderRequest, GetAssetsInFolderResponse, GetAssetsRequest, GetAssetsResponse, GetAvailableProxiesResponse, GetCropZoneSuggestionRequest, GetCropZoneSuggestionResponse, GetTransformAssetLinkResponse, SearchAssetsParams, SearchAssetsResponse } from './asset.types';
|
|
1
|
+
import { GetAllFormatCodesResponse, GetAssetsInFolderRequest, GetAssetsInFolderResponse, GetAssetsRequest, GetAssetsResponse, GetAvailableProxiesResponse, GetCropZoneSuggestionRequest, GetCropZoneSuggestionResponse, GetFolderContentRequest, GetTransformAssetLinkResponse, SearchAssetsParams, SearchAssetsResponse } from './asset.types';
|
|
2
2
|
|
|
3
3
|
export declare const DEFAULT_VIEW_SIZE = "CoreField.LargeSizePreview";
|
|
4
4
|
export declare const FIELD_CORTEX_PATH = "Document.CortexPath";
|
|
@@ -38,7 +38,9 @@ export declare function apiGetTransformAssetLink({ assetId, extension, format, s
|
|
|
38
38
|
useSession?: string;
|
|
39
39
|
}): Promise<GetTransformAssetLinkResponse | null>;
|
|
40
40
|
export declare function apiGetAssets({ extraFields, getPermanentAssetsPaths, recordIds, securityByPassToken, token, }: GetAssetsRequest): Promise<GetAssetsResponse>;
|
|
41
|
+
export declare function apiGetAssetsViaContentSdk({ extraFields, recordIds, }: GetAssetsRequest): Promise<GetAssetsResponse>;
|
|
41
42
|
export declare function apiGetAssetsInFolder({ countPerPage, directParentFolderIdentifier, extraFields, getPermanentAssetsPaths, limitedDocTypes, pageNumber, parentFolderIdentifier, searchTerm, securityByPassToken, sortOrder, token, }: GetAssetsInFolderRequest): Promise<GetAssetsInFolderResponse>;
|
|
43
|
+
export declare function apiGetAssetsInFolderViaContentSdk({ extraFields, folderId, limit, limitedDocTypes, searchTerm, seeThrough, selectedFacets, sortOrder, start, }: GetFolderContentRequest): Promise<GetAssetsInFolderResponse>;
|
|
42
44
|
export declare function apiGetCropFocusMode({ autoCropMode, cropHeight, cropWidth, imageUrl, useSession, }: GetCropZoneSuggestionRequest): Promise<GetCropZoneSuggestionResponse | null>;
|
|
43
45
|
export declare function apiGetAvailableProxies({ assetRecordId, siteUrl, token, useSession, }: {
|
|
44
46
|
assetRecordId: string;
|