@orangelogic/design-system 2.115.0 → 2.117.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.
Files changed (51) hide show
  1. package/library/chunks/asset-link-format.QzzboHHE.js +6 -0
  2. package/library/chunks/asset.CIWxY-Aw.js +469 -0
  3. package/library/chunks/{color-swatch-group.DjjSIHSV.js → color-swatch-group.BvLicLI4.js} +1 -1
  4. package/library/chunks/{document-viewer.BIC9iYpZ.js → document-viewer.CKCX8ueu.js} +1118 -1106
  5. package/library/chunks/{endpoints.CDX5PgQz.js → endpoints.D4h8hp1m.js} +271 -271
  6. package/library/chunks/{folder-select.8xNjeJfp.js → folder-select.CrWjwQcw.js} +2 -2
  7. package/library/chunks/{list-editor.7zNWfBuW.js → list-editor.BfpDIsU5.js} +120 -115
  8. package/library/chunks/{table.BvbReIZh.js → table.GCs54Y2t.js} +725 -628
  9. package/library/chunks/{transformation.BlQCWMfI.js → transformation.c-RS37zA.js} +1 -1
  10. package/library/components/asset-link-format.js +3 -3
  11. package/library/components/atoms.js +2 -2
  12. package/library/components/audio.js +164 -102
  13. package/library/components/color-swatch-group.js +2 -2
  14. package/library/components/cropper.js +1 -1
  15. package/library/components/document-viewer.js +1 -1
  16. package/library/components/folder-select.js +2 -2
  17. package/library/components/list-editor.js +2 -2
  18. package/library/components/molecules.js +2 -2
  19. package/library/components/organisms.js +1 -1
  20. package/library/components/select.js +107 -107
  21. package/library/components/table.js +1 -1
  22. package/library/components/types.js +26050 -26258
  23. package/library/package.json +1 -1
  24. package/library/packages/atoms/src/components/audio/audio.d.ts +32 -5
  25. package/library/packages/atoms/src/components/table/table-data-loader.d.ts +1 -0
  26. package/library/packages/atoms/src/components/table/table.d.ts +1 -0
  27. package/library/packages/hybrid/book-reader/src/react/components/Controller/PageControl.d.ts +2 -1
  28. package/library/packages/hybrid/book-reader/src/react/hooks/useBreakpoint.d.ts +5 -1
  29. package/library/packages/molecules/src/asset-data-display/asset-data-display.d.ts +2 -1
  30. package/library/packages/molecules/src/asset-picker/asset-picker.d.ts +2 -0
  31. package/library/packages/molecules/src/index.d.ts +0 -1
  32. package/library/packages/molecules/src/page-outline/page-outline.d.ts +1 -2
  33. package/library/packages/organisms/src/asset-transformation-dialog/asset-transformation-dialog.d.ts +5 -2
  34. package/library/packages/organisms/src/content-builder/components/gallery-config/gallery-config.d.ts +0 -1
  35. package/library/packages/organisms/src/content-builder/components/page-picker/page-picker.d.ts +0 -1
  36. package/library/packages/organisms/src/content-builder/configs/audio.d.ts +1 -0
  37. package/library/packages/organisms/src/content-builder/configs-controller.d.ts +2 -0
  38. package/library/packages/organisms/src/content-builder/styleController.d.ts +1 -0
  39. package/library/packages/services/src/api/asset/asset.d.ts +7 -6
  40. package/library/packages/services/src/api/endpoints.d.ts +2 -3
  41. package/library/packages/tools/src/fetch-asset/fetch-asset.d.ts +6 -7
  42. package/library/packages/tools/src/fetch-image/fetch-image.d.ts +6 -11
  43. package/library/packages/types/src/asset-link-format.d.ts +1 -0
  44. package/library/packages/types/src/content-builder.d.ts +4 -0
  45. package/library/react-web-component.d.ts +741 -721
  46. package/library/utils.js +1 -1
  47. package/package.json +1 -1
  48. package/library/chunks/asset-link-format.B0c92pSs.js +0 -6
  49. package/library/chunks/asset.CtPQLZOf.js +0 -607
  50. package/library/packages/molecules/src/timeline/timeline.d.ts +0 -71
  51. package/library/packages/molecules/src/timeline/timeline.styles.d.ts +0 -2
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@orangelogic/design-system",
3
3
  "type": "module",
4
- "version": "2.115.0",
4
+ "version": "2.117.0",
5
5
  "license": "UNLICENSED",
6
6
  "types": "library/types.d.ts",
7
7
  "scripts": {
@@ -1,6 +1,6 @@
1
1
  import { default as ResizableElement } from '../../../../base/src/resizable-element.ts';
2
2
  import { LocalizeController } from '../../../../utils/src/custom-element/i18n';
3
- import { CSSResultGroup } from 'lit';
3
+ import { CSSResultGroup, PropertyValues } from 'lit';
4
4
  import { default as CxIconButton } from '../icon-button/icon-button';
5
5
  import { default as CxTypography } from '../typography/typography';
6
6
 
@@ -11,10 +11,14 @@ import { default as CxTypography } from '../typography/typography';
11
11
  * The PNG is analyzed via canvas pixel sampling and rendered as a themeable SVG. A native `<audio>`
12
12
  * element handles playback. Wave color and background are fully CSS-controllable.
13
13
  *
14
+ * Use `in-point` and `out-point` to restrict playback to a time window within the file. The UI
15
+ * always shows time relative to `in-point` (starting at 0). `cx-time-update` emits `time` relative
16
+ * to `in-point`.
17
+ *
14
18
  * @event cx-play - Emitted when playback starts.
15
19
  * @event cx-pause - Emitted when playback pauses.
16
- * @event {{ time: number }} cx-time-update - Emitted while the playback position changes.
17
- * @event cx-ended - Emitted when playback reaches the end.
20
+ * @event {{ time: number }} cx-time-update - Emitted while the playback position changes. `time` is relative to `in-point` (starts at 0).
21
+ * @event cx-ended - Emitted when playback reaches the end (or out-point when set).
18
22
  * @event cx-error - Emitted when the audio or waveform image fails to load.
19
23
  *
20
24
  * @csspart base - The main container.
@@ -48,6 +52,7 @@ export default class CxAudio extends ResizableElement {
48
52
  };
49
53
  readonly localize: LocalizeController;
50
54
  private srcLoadVersion;
55
+ private allWaveformPeaks;
51
56
  private extractWaveformPeaks;
52
57
  private readonly audioEl;
53
58
  /**
@@ -63,7 +68,7 @@ export default class CxAudio extends ResizableElement {
63
68
  */
64
69
  autoplay: boolean;
65
70
  /**
66
- * When true, playback loops back to the beginning when it ends.
71
+ * When true, playback loops back to the beginning (or in-point) when it ends.
67
72
  */
68
73
  loop: boolean;
69
74
  /**
@@ -72,16 +77,29 @@ export default class CxAudio extends ResizableElement {
72
77
  * `--waves-color` and `--background-color`.
73
78
  */
74
79
  waveformSrc: string;
80
+ /**
81
+ * Playback start position in seconds. The UI time counter starts from 0 relative to this point.
82
+ * `cx-time-update` emits `time` relative to this value.
83
+ */
84
+ inPoint: number;
85
+ /**
86
+ * Playback stop position in seconds. 0 means play to the end of the file.
87
+ */
88
+ outPoint: number;
75
89
  /** Whether the audio is currently playing. */
76
90
  private isPlaying;
77
91
  /** Whether the audio has finished loading and is ready for playback. */
78
92
  private isLoaded;
79
93
  /** Whether an error occurred while loading the audio or waveform image. */
80
94
  private isError;
81
- /** Current playback position in seconds. */
95
+ /** Current playback position in seconds, relative to inPoint. */
82
96
  private currentTimeSeconds;
83
97
  /** Total duration in seconds. */
84
98
  private durationSeconds;
99
+ /** Effective stop position in seconds (clamped outPoint or durationSeconds). */
100
+ private effectiveOutPoint;
101
+ /** Duration of the playback window from inPoint to effectiveOutPoint. */
102
+ private windowDuration;
85
103
  /** SVG path data extracted from the waveform PNG. */
86
104
  private waveformPath;
87
105
  /** viewBox width matching the number of samples extracted from the waveform image. */
@@ -90,11 +108,18 @@ export default class CxAudio extends ResizableElement {
90
108
  private playedFraction;
91
109
  /** Effective audio src bound to the <audio> element; set after waveform loads, cleared on cleanUp. */
92
110
  private audioSrc;
111
+ /** Whether autoplay is deferred until the in-point seek completes after durationchange. */
112
+ private pendingAutoplay;
113
+ private get clampedInPoint();
93
114
  runConnectedCallback(): void;
94
115
  disconnectedCallback(): void;
116
+ willUpdate(changedProperties: PropertyValues): void;
95
117
  handleSrcChange(): Promise<void>;
118
+ handleInPointChange(): void;
96
119
  protected applySrc(src: string): Promise<void>;
97
120
  updated(changedProps: Map<string, unknown>): void;
121
+ private recomputeWindow;
122
+ private recomputeWaveform;
98
123
  private cleanUp;
99
124
  private setupPngWaveform;
100
125
  private handleAudioPlay;
@@ -103,6 +128,8 @@ export default class CxAudio extends ResizableElement {
103
128
  private handleAudioDurationChange;
104
129
  private handleAudioEnded;
105
130
  private handleAudioError;
131
+ private handleOutPointReached;
132
+ private seekToInPoint;
106
133
  private handleSizeChange;
107
134
  /** Starts audio playback. */
108
135
  play(): void;
@@ -2,6 +2,7 @@ import { ColumnDefinition, TableDataFormat } from '../../../../types/src/table';
2
2
 
3
3
  export type StreamChunkCallback = (rows: Array<Record<string, unknown>>) => Promise<void>;
4
4
  export declare function parseCsvStream(raw: string, onColumns: (columns: ColumnDefinition[]) => void, onChunk: StreamChunkCallback, chunkSize?: number): Promise<number>;
5
+ export declare function parseXmlStream(raw: string, onColumns: (columns: ColumnDefinition[]) => void, onChunk: StreamChunkCallback, chunkSize?: number): Promise<number>;
5
6
  export declare function parseJsonStream(raw: string, onColumns: (columns: ColumnDefinition[]) => void, onChunk: StreamChunkCallback, chunkSize?: number): Promise<number>;
6
7
  export interface ParsedTableData {
7
8
  columns: ColumnDefinition[];
@@ -742,6 +742,7 @@ export default class CxTable extends CortexElement {
742
742
  private handleDropdownFilterChange;
743
743
  private streamCsvData;
744
744
  private streamJsonData;
745
+ private streamXmlData;
745
746
  private loadFromDataUrl;
746
747
  render(): TemplateResult;
747
748
  }
@@ -5,8 +5,9 @@ export interface PageControlProps {
5
5
  pageNumber: number;
6
6
  showCover?: boolean;
7
7
  showEdgeButtons?: boolean;
8
+ showPageInput?: boolean;
8
9
  totalPages: number;
9
10
  viewMode: number;
10
11
  }
11
- declare const _default: import('react').MemoExoticComponent<({ onNextPage, onPageChange, onPreviousPage, pageNumber, showCover, showEdgeButtons, totalPages, viewMode, }: PageControlProps) => import("react/jsx-runtime").JSX.Element>;
12
+ declare const _default: import('react').MemoExoticComponent<({ onNextPage, onPageChange, onPreviousPage, pageNumber, showCover, showEdgeButtons, showPageInput, totalPages, viewMode, }: PageControlProps) => import("react/jsx-runtime").JSX.Element>;
12
13
  export default _default;
@@ -1,6 +1,10 @@
1
1
  declare const useBreakpoint: () => {
2
+ isDoubleExtraLarge: boolean;
3
+ isDoubleExtraSmall: boolean;
4
+ isExtraLarge: boolean;
2
5
  isExtraSmall: boolean;
3
- isMobile: boolean;
6
+ isLarge: boolean;
7
+ isMedium: boolean;
4
8
  isSmall: boolean;
5
9
  };
6
10
  export default useBreakpoint;
@@ -14,7 +14,7 @@ export default class CxAssetDataDisplay extends CortexElement {
14
14
  'cx-typography': typeof CxTypography;
15
15
  };
16
16
  private readonly hasSlotController;
17
- private readonly fetchAssetController;
17
+ private fetchAssetController?;
18
18
  /**
19
19
  * Whether the asset data display is collapsed.
20
20
  */
@@ -31,6 +31,7 @@ export default class CxAssetDataDisplay extends CortexElement {
31
31
  fetchMode: AssetDataDisplayFetchMode;
32
32
  token: string;
33
33
  siteBuilderToken: string;
34
+ isSiteBuilder: boolean;
34
35
  recordId: string;
35
36
  headerSourceField: string;
36
37
  detailsSourceField: string;
@@ -62,6 +62,8 @@ export default class CxAssetPicker extends CortexElement {
62
62
  * stored URL that may have transformations applied.
63
63
  */
64
64
  recordId: string;
65
+ /** When true, uses the Site Builder search endpoint for asset fetching. */
66
+ isSiteBuilder: boolean;
65
67
  private previewSrc;
66
68
  /** Kept as an instance field so tests can stub this API call. */
67
69
  private apiGetAssets;
@@ -36,7 +36,6 @@ export { default as CxSizeInputGroup } from './size-input-group/size-input-group
36
36
  export { default as CxStatCard } from './stat-card/stat-card';
37
37
  export { default as CxStepperWizard } from './stepper-wizard/stepper-wizard';
38
38
  export { default as CxStorybook } from './storybook/storybook';
39
- export { default as CxTimeline } from './timeline/timeline';
40
39
  export { default as CxTypeface } from './typeface/typeface';
41
40
  export { default as CxAssetFormatPicker } from './asset-format-picker/asset-format-picker';
42
41
  export { default as CxInputDatePicker } from './input-date-picker/input-date-picker';
@@ -76,11 +76,10 @@ export default class CxPageOutline extends CortexElement {
76
76
  * If the root is missing, return 0 so the heading is treated as not nested.
77
77
  */
78
78
  private getWrapperLevel;
79
- /** Extract root and set to state */
79
+ /** Extract root and extract headings */
80
80
  private extractRoot;
81
81
  /** Query root node */
82
82
  handleRootSelectorChange(): void;
83
- handleRootChange(): void;
84
83
  /**
85
84
  * Setup the MutationObserver safely without recursion
86
85
  */
@@ -37,7 +37,7 @@ export default class CxAssetTransformationDialog extends CortexElement {
37
37
  'cx-typography': typeof CxTypography;
38
38
  };
39
39
  private readonly localize;
40
- private readonly fetchAssetController;
40
+ private fetchAssetController?;
41
41
  private readonly hasSlotController;
42
42
  private apiGetAvailableProxies;
43
43
  /** Stores the accessible trigger element for focus return and ARIA updates. */
@@ -72,6 +72,8 @@ export default class CxAssetTransformationDialog extends CortexElement {
72
72
  noRotate: boolean;
73
73
  /** Show a Reset button inside cx-asset-link-format that clears all transformations. */
74
74
  canReset: boolean;
75
+ /** When true, uses the Site Builder search endpoint for asset fetching. */
76
+ isSiteBuilder: boolean;
75
77
  /** Asset data fetched on cx-show. */
76
78
  private asset;
77
79
  /** Available proxy formats fetched alongside the asset. */
@@ -83,8 +85,9 @@ export default class CxAssetTransformationDialog extends CortexElement {
83
85
  * For cx-button/cx-icon-button, ARIA is set on the inner <button> so screen readers
84
86
  * announce the correct role/state rather than the custom-element host. */
85
87
  private updateAccessibleTrigger;
88
+ runFirstUpdated(): void;
86
89
  /** Fetches the asset and its available proxies when the dialog opens.
87
- * Guards on `result.id` because `fetchAssetByIDViaContentSdk` returns `{}` on network error. */
90
+ * Guards on `result.id` because `fetchAssetByID` returns `{}` on network error. */
88
91
  private handleDialogShow;
89
92
  private handleTriggerClick;
90
93
  private handleTriggerKeyDown;
@@ -80,7 +80,6 @@ export default class CxGalleryConfig extends CortexElement {
80
80
  get galleryPickerDialogTitle(): string;
81
81
  constructor();
82
82
  private apiGetTeamSpaceSpaceList;
83
- private apiGetAssets;
84
83
  private apiGetPagesAndLinks;
85
84
  fetchSelectedPage(): Promise<void>;
86
85
  /**
@@ -23,7 +23,6 @@ export default class CxPagePicker extends CortexElement {
23
23
  'cx-typography': typeof CxTypography;
24
24
  };
25
25
  private readonly localize;
26
- private apiGetAssets;
27
26
  dialog: CxDialog;
28
27
  selectEl: CxFolderSelect;
29
28
  /**
@@ -11,6 +11,7 @@ type Attribute = {
11
11
  'format-label'?: string;
12
12
  'format-src'?: string;
13
13
  name: CxSbAudio['name'];
14
+ 'parent-record-id'?: string;
14
15
  'record-id'?: string;
15
16
  'resize-direction': CxSbAudio['resizeDirection'];
16
17
  src: CxSbAudio['src'];
@@ -17,6 +17,7 @@ export default class ConfigsController {
17
17
  'format-label'?: string;
18
18
  'format-src'?: string;
19
19
  name: import('./blocks/audio/audio').default["name"];
20
+ 'parent-record-id'?: string;
20
21
  'record-id'?: string;
21
22
  'resize-direction': import('./blocks/audio/audio').default["resizeDirection"];
22
23
  src: import('./blocks/audio/audio').default["src"];
@@ -307,6 +308,7 @@ export default class ConfigsController {
307
308
  'format-label'?: string;
308
309
  'format-src'?: string;
309
310
  name: import('./blocks/audio/audio').default["name"];
311
+ 'parent-record-id'?: string;
310
312
  'record-id'?: string;
311
313
  'resize-direction': import('./blocks/audio/audio').default["resizeDirection"];
312
314
  src: import('./blocks/audio/audio').default["src"];
@@ -128,6 +128,7 @@ export default class StyleController {
128
128
  accepts?: string[];
129
129
  multiple?: boolean;
130
130
  nameKey?: string;
131
+ parentAssetIdKey?: string;
131
132
  recordIdKey?: string;
132
133
  representativeKey?: string;
133
134
  };
@@ -1,4 +1,4 @@
1
- import { GetAllFormatCodesResponse, GetAssetsInFolderRequest, GetAssetsInFolderResponse, GetAssetsRequest, GetAssetsResponse, GetAvailableProxiesResponse, GetCropZoneSuggestionRequest, GetCropZoneSuggestionResponse, GetFolderContentRequest, GetTransformAssetLinkResponse, SearchAssetsParams, SearchAssetsResponse } from './asset.types';
1
+ import { GetAllFormatCodesResponse, GetAssetsInFolderRequest, GetAssetsInFolderResponse, GetAssetsRequest, GetAssetsResponse, GetAvailableProxiesResponse, GetCropZoneSuggestionRequest, GetCropZoneSuggestionResponse, 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";
@@ -21,13 +21,16 @@ export declare const FIELD_LARGE_SIZE_PREVIEW_ID = "Document.DocumentDirectRepre
21
21
  export declare const LIBRARY_NAME = "Library";
22
22
  export declare const MESSAGE_NEW_LINE = "\n";
23
23
  export declare const ORIGINAL_VIEW_SIZE = "CoreField.OriginalPreview";
24
+ export declare const FIELD_DOC_SUBTYPE = "Document.DocSubType";
25
+ export declare const FIELD_IN_POINT = "Document.InPoint";
26
+ export declare const FIELD_OUT_POINT = "Document.OutPoint";
24
27
  export declare const SEARCH_FIELDS: {
25
28
  DEFAULT_VIEW_SIZE: string;
26
29
  FIELD_TITLE_WITH_FALLBACK: string;
27
30
  ORIGINAL_VIEW_SIZE: string;
28
31
  };
29
32
  export declare function resolveAssetExtraFilters(selectedFacets?: Record<string, string[]>): Record<string, string[]>;
30
- export declare function apiSearchAssets({ countPerPage, fields, getPermanentAssetsPaths, pageNumber, query, securityByPassToken, siteUrl, sort, token, useSession, }: SearchAssetsParams): Promise<SearchAssetsResponse>;
33
+ export declare function apiSearchAssets({ countPerPage, fields, getPermanentAssetsPaths, isSiteBuilder, pageNumber, query, securityByPassToken, siteUrl, sort, token, useSession, }: SearchAssetsParams): Promise<SearchAssetsResponse>;
31
34
  export declare function apiGetTransformAssetLink({ assetId, extension, format, siteUrl, token, transformations, useSession, }: {
32
35
  assetId: string;
33
36
  extension?: string;
@@ -37,10 +40,8 @@ export declare function apiGetTransformAssetLink({ assetId, extension, format, s
37
40
  transformations?: string;
38
41
  useSession?: string;
39
42
  }): Promise<GetTransformAssetLinkResponse | null>;
40
- export declare function apiGetAssets({ extraFields, getPermanentAssetsPaths, recordIds, securityByPassToken, token, }: GetAssetsRequest): Promise<GetAssetsResponse>;
41
- export declare function apiGetAssetsViaContentSdk({ extraFields, recordIds, }: GetAssetsRequest): Promise<GetAssetsResponse>;
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>;
43
+ export declare function apiGetAssets({ extraFields, getPermanentAssetsPaths, isSiteBuilder, recordIds, securityByPassToken, token, }: GetAssetsRequest): Promise<GetAssetsResponse>;
44
+ export declare function apiGetAssetsInFolder({ countPerPage, directParentFolderIdentifier, extraFields, getPermanentAssetsPaths, isSiteBuilder, limitedDocTypes, pageNumber, parentFolderIdentifier, searchTerm, securityByPassToken, sortOrder, token, }: GetAssetsInFolderRequest): Promise<GetAssetsInFolderResponse>;
44
45
  export declare function apiGetCropFocusMode({ autoCropMode, cropHeight, cropWidth, imageUrl, useSession, }: GetCropZoneSuggestionRequest): Promise<GetCropZoneSuggestionResponse | null>;
45
46
  export declare function apiGetAvailableProxies({ assetRecordId, siteUrl, token, useSession, }: {
46
47
  assetRecordId: string;
@@ -9,8 +9,6 @@ export declare enum TEAMSPACE_API_ENDPOINT {
9
9
  GET_USER_ROLE = "webapi/objectmanagement/teamspaces/getuserroles_41E7_v1"
10
10
  }
11
11
  export declare enum ASSET_API_ENDPOINT {
12
- GET_CONTENT_V1 = "webapi/extensibility/integrations/contentBrowserSDK/getcontent_4bw_v1",
13
- GET_CONTENT_V3 = "webapi/extensibility/integrations/contentBrowserSDK/getcontent_4bw_v3",
14
12
  GET_CROP_ZONE_SUGGESTION = "webapi/mediafile/assettransformation/getcropzonesuggestion_41UP_v1",
15
13
  GET_LARGEST_DOWNLOAD_LINK = "webapi/objectmanagement/share/getlargestdownloadlink_46X_v1",
16
14
  GET_TRANSFORM_ASSET_LINK = "webapi/mediafile/assettransformation/transformasset_41E6_v1",
@@ -43,7 +41,8 @@ export declare enum CMS5_API_ENDPOINT {
43
41
  GET_CAN_CREATE_BLOCK_TEMPLATE = "webapi/cms/cms5/blocktemplate/cancreatenewblocktemplate_41cs_v1",
44
42
  GET_PAGES_FOR_BLOCK_TEMPLATE = "webapi/cms/cms5/blocktemplate/getpagesforblocktemplate_41ig_v1",
45
43
  GET_PERMISSION = "webapi/cms/cms5/blocktemplate/getpermission_419r_v1",
46
- LIST_BLOCK_TEMPLATES = "webapi/cms/cms5/blocktemplate/getlisttemplates_428o_v1"
44
+ LIST_BLOCK_TEMPLATES = "webapi/cms/cms5/blocktemplate/getlisttemplates_428o_v1",
45
+ SEARCH_ASSETS = "webapi/cms/cms5/search_42QJ_v1"
47
46
  }
48
47
  export declare enum PARAMETER_API_ENDPOINT {
49
48
  GET_PARAMETER_VALUES = "webapi/configuration/parameters/get_45F_v1"
@@ -1,21 +1,20 @@
1
1
  import { ReactiveController, ReactiveElement } from 'lit';
2
2
 
3
+ type FetchAssetControllerOptions = {
4
+ isSiteBuilder?: boolean;
5
+ };
3
6
  export declare class FetchAssetController implements ReactiveController {
4
7
  private readonly host;
5
8
  private data;
6
- private apiGetAssetsViaContentSdk;
7
- private apiGetAssets;
8
- constructor(host: ReactiveElement);
9
+ private readonly isSiteBuilder;
10
+ constructor(host: ReactiveElement, options?: FetchAssetControllerOptions);
9
11
  fetchAssetByID({ extraFields, recordId, securityByPassToken, token, }: {
10
12
  extraFields?: string[];
11
13
  recordId: string;
12
14
  securityByPassToken?: string;
13
15
  token?: string;
14
16
  }): Promise<Record<string, string>>;
15
- fetchAssetByIDViaContentSdk({ extraFields, recordId, }: {
16
- extraFields?: string[];
17
- recordId: string;
18
- }): Promise<Record<string, string>>;
19
17
  hostConnected?(): void;
20
18
  hostDisconnected?(): void;
21
19
  }
20
+ export {};
@@ -6,6 +6,7 @@ export type ExtendedGalleryItem = GalleryItem & {
6
6
  [key: string]: string | undefined;
7
7
  };
8
8
  type FetchImageControllerOptions = {
9
+ isSiteBuilder?: boolean;
9
10
  maxEnd?: number;
10
11
  pageSize?: number;
11
12
  securityByPassToken?: string;
@@ -22,22 +23,19 @@ export declare class FetchImageController implements ReactiveController {
22
23
  private pageSize;
23
24
  private readonly authToken;
24
25
  private securityByPassToken;
26
+ private readonly isSiteBuilder;
25
27
  private requestEpoch;
26
- private apiGetAssets;
27
- private apiGetAssetsInFolder;
28
- private apiGetAssetsInFolderViaContentSdk;
29
28
  constructor(host: ReactiveElement, options?: FetchImageControllerOptions);
30
29
  get totalDataCount(): number;
31
30
  setSecurityByPassToken(token: string | undefined): void;
32
- fetchImages({ end, extraFields, format, start, transformations, useContentSdk, }: {
31
+ fetchImages({ end, extraFields, format, start, transformations, }: {
33
32
  end: number;
34
33
  extraFields: string[];
35
34
  format?: string;
36
35
  start: number;
37
36
  transformations?: Transformation[];
38
- useContentSdk?: boolean;
39
37
  }): Promise<ExtendedGalleryItem[] | undefined>;
40
- fetchImagesInFolderBySlide({ activeSlide, extraFields, folderId, forceRefetch, format, minLimit, noPlaceholders, transformations, useContentSdk, }: {
38
+ fetchImagesInFolderBySlide({ activeSlide, extraFields, folderId, forceRefetch, format, minLimit, noPlaceholders, transformations, }: {
41
39
  activeSlide: number;
42
40
  extraFields?: string[];
43
41
  folderId: string;
@@ -46,7 +44,6 @@ export declare class FetchImageController implements ReactiveController {
46
44
  minLimit?: number;
47
45
  noPlaceholders?: boolean;
48
46
  transformations?: Transformation[];
49
- useContentSdk?: boolean;
50
47
  }): Promise<ExtendedGalleryItem[]>;
51
48
  fetchImagesByIDs({ extraFields, format, recordIds, transformations, }: {
52
49
  extraFields?: string[];
@@ -54,7 +51,7 @@ export declare class FetchImageController implements ReactiveController {
54
51
  recordIds: string[];
55
52
  transformations?: Transformation[];
56
53
  }): Promise<ExtendedGalleryItem[]>;
57
- fetchImagesInFolderByPage({ extraFields, folderId, forceRefetch, format, noPlaceholders, page, pageSize, transformations, useContentSdk, }: {
54
+ fetchImagesInFolderByPage({ extraFields, folderId, forceRefetch, format, noPlaceholders, page, pageSize, transformations, }: {
58
55
  extraFields?: string[];
59
56
  folderId: string;
60
57
  forceRefetch?: boolean;
@@ -63,9 +60,8 @@ export declare class FetchImageController implements ReactiveController {
63
60
  page: number;
64
61
  pageSize?: number;
65
62
  transformations?: Transformation[];
66
- useContentSdk?: boolean;
67
63
  }): Promise<ExtendedGalleryItem[]>;
68
- fetchImagesInFolderByChunk({ chunkSize: rawChunkSize, end, extraFields, folderId, forceRefetch, format, start, transformations, useContentSdk, }: {
64
+ fetchImagesInFolderByChunk({ chunkSize: rawChunkSize, end, extraFields, folderId, forceRefetch, format, start, transformations, }: {
69
65
  chunkSize?: number;
70
66
  end?: number;
71
67
  extraFields?: string[];
@@ -74,7 +70,6 @@ export declare class FetchImageController implements ReactiveController {
74
70
  format?: string;
75
71
  start?: number;
76
72
  transformations?: Transformation[];
77
- useContentSdk?: boolean;
78
73
  }): AsyncGenerator<ExtendedGalleryItem[], void, unknown>;
79
74
  hostConnected?(): void;
80
75
  hostDisconnected?(): void;
@@ -22,6 +22,7 @@ export type Proxy = {
22
22
  export declare enum MediaType {
23
23
  Album = "Album",
24
24
  Audio = "Audio",
25
+ AudioSegment = "Audio segment",
25
26
  Image = "Image",
26
27
  Multimedia = "Multimedia",
27
28
  ProjectDocument = "ProjectDocument",
@@ -138,6 +138,8 @@ export type PropertyConfig<T = Record<string, any>> = Omit<TraitProperties, 'opt
138
138
  multiple?: boolean;
139
139
  /** The block-attribute key that stores the asset name. Defaults to 'name'. */
140
140
  nameKey?: string;
141
+ /** The block-attribute key that holds the parent asset ID. */
142
+ parentAssetIdKey?: string;
141
143
  /** The block-attribute key that stores the selected asset's record ID. Defaults to 'record-id'. */
142
144
  recordIdKey?: string;
143
145
  representativeKey?: string;
@@ -199,6 +201,8 @@ export type Asset = {
199
201
  id: string;
200
202
  identifier?: string;
201
203
  name: string;
204
+ /** DO_VirtualCopyOf from docInfo */
205
+ parentAssetID?: string;
202
206
  /** Representative (thumbnail/preview) URL fetched from the API. */
203
207
  representative?: string;
204
208
  src: string;