@orangelogic/design-system 2.122.0 → 2.124.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.CU8RMG1j.js → asset.D_VITxRH.js} +8 -8
- package/library/chunks/{button.Dywe7ISx.js → button.DcInI7IV.js} +1 -1
- package/library/chunks/{color-swatch-group.BC9ngh5N.js → color-swatch-group.CQlKsT07.js} +1 -1
- package/library/chunks/{confirm-popover.De_xPl8d.js → confirm-popover.DfAd2F8S.js} +1 -1
- package/library/chunks/{document-viewer.DGZz29hY.js → document-viewer.VVTf0dxG.js} +3 -3
- package/library/chunks/{dom.0RpWet6y.js → dom.BXeuEG1b.js} +1 -1
- package/library/chunks/{file-on-demand.BRiAUyT3.js → file-on-demand.Dr05DdkU.js} +5 -5
- package/library/chunks/{folder-select.XxXNhi7f.js → folder-select.CDFQfcrG.js} +3 -3
- package/library/chunks/{form.B-5nQJva.js → form.3af0bYrm.js} +1 -1
- package/library/chunks/{input.Btrs8GEH.js → input.BRgVRr2i.js} +1 -1
- package/library/chunks/{list-editor.BPWtSAl3.js → list-editor.DOob19sH.js} +5 -5
- package/library/chunks/{pagination.CiG6ZZM7.js → pagination.tSkuYrqk.js} +2 -2
- package/library/chunks/{string.DUgD4c9f.js → string.CbnVBzsd.js} +6 -6
- package/library/chunks/{tab-group.DmWrx5El.js → tab-group.GA4X3LL2.js} +2 -2
- package/library/chunks/{table.BAbKrno5.js → table.CipCH4U5.js} +14 -14
- package/library/components/asset-link-format.js +3 -3
- package/library/components/atoms.js +6 -6
- package/library/components/border-input-group.js +1 -1
- package/library/components/button.js +2 -2
- package/library/components/checkbox.js +1 -1
- package/library/components/color-picker.js +3 -3
- package/library/components/color-swatch-group.js +2 -2
- package/library/components/confirm-popover.js +2 -2
- package/library/components/corner-position-input-group.js +1 -1
- package/library/components/diff.js +1 -1
- package/library/components/document-viewer.js +1 -1
- package/library/components/dropdown.js +11 -11
- package/library/components/dynamic-select.js +1 -1
- package/library/components/element-clamp.js +1 -1
- package/library/components/file-on-demand.js +6 -6
- package/library/components/folder-select.js +2 -2
- package/library/components/input.js +2 -2
- package/library/components/line-clamp.js +1 -1
- package/library/components/list-editor.js +4 -4
- package/library/components/molecules.js +3 -3
- package/library/components/organisms.js +2 -2
- package/library/components/padding-input-group.js +1 -1
- package/library/components/pagination.js +3 -3
- package/library/components/radio-group.js +1 -1
- package/library/components/range.js +1 -1
- package/library/components/select.js +1 -1
- package/library/components/shadow-input-group.js +1 -1
- package/library/components/share-option-list.js +1 -1
- package/library/components/size-input-group.js +1 -1
- package/library/components/switch.js +1 -1
- package/library/components/tab-group.js +3 -3
- package/library/components/table.js +3 -3
- package/library/components/textarea.js +1 -1
- package/library/components/timecode.js +1 -1
- package/library/components/types.js +49158 -45959
- package/library/package.json +1 -1
- package/library/packages/atoms/src/components/table/components/table-toolbar/table-toolbar.d.ts +7 -0
- package/library/packages/atoms/src/components/table/table.d.ts +1 -1
- package/library/packages/events/src/events.d.ts +0 -1
- package/library/packages/molecules/src/annotator/annotator.constants.d.ts +17 -0
- package/library/packages/molecules/src/annotator/annotator.d.ts +88 -0
- package/library/packages/molecules/src/annotator/annotator.styles.d.ts +2 -0
- package/library/packages/molecules/src/annotator/components/annotator-color.d.ts +32 -0
- package/library/packages/molecules/src/annotator/components/annotator-line-weight.d.ts +34 -0
- package/library/packages/molecules/src/annotator/markers/arrow.marker.d.ts +6 -0
- package/library/packages/molecules/src/annotator/markers/freehand.marker.d.ts +6 -0
- package/library/packages/molecules/src/annotator/markers/index.d.ts +4 -0
- package/library/packages/molecules/src/annotator/markers/line.marker.d.ts +6 -0
- package/library/packages/molecules/src/annotator/markers/rectangle.marker.d.ts +7 -0
- package/library/packages/molecules/src/annotator/utils/define-markerjs3-global.d.ts +1 -0
- package/library/packages/molecules/src/asset-format-picker/asset-format-picker.d.ts +9 -3
- package/library/packages/molecules/src/dynamic-select/dynamic-select.d.ts +1 -1
- package/library/packages/molecules/src/index.d.ts +1 -0
- package/library/packages/organisms/src/_v1/comment/comment.d.ts +67 -0
- package/library/packages/organisms/src/_v1/comment/components/comment-menu/comment-menu.d.ts +32 -0
- package/library/packages/organisms/src/{comment → _v1/comment}/extensions/time.d.ts +1 -1
- package/library/packages/organisms/src/comment/comment.d.ts +7 -33
- package/library/packages/organisms/src/comment/components/comment-menu/comment-menu.d.ts +20 -19
- package/library/packages/organisms/src/content-builder/configs/audio.d.ts +0 -1
- package/library/packages/organisms/src/content-builder/configs/video.d.ts +0 -1
- package/library/packages/organisms/src/content-builder/configs-controller.d.ts +0 -4
- package/library/packages/organisms/src/content-builder/styleController.d.ts +1 -1
- package/library/packages/organisms/src/index.d.ts +1 -0
- package/library/packages/types/src/annotator.d.ts +19 -0
- package/library/packages/types/src/asset-format-picker.d.ts +0 -1
- package/library/packages/types/src/comment.d.ts +15 -0
- package/library/packages/types/src/content-builder.d.ts +2 -2
- package/library/react-web-component.d.ts +40 -30
- package/library/utils.js +5 -5
- package/package.json +1 -1
- package/library/packages/events/src/cx-asset-format-picker-delete.d.ts +0 -6
- package/library/packages/organisms/src/comment/extensions/index.d.ts +0 -1
package/library/package.json
CHANGED
package/library/packages/atoms/src/components/table/components/table-toolbar/table-toolbar.d.ts
CHANGED
|
@@ -26,6 +26,8 @@ import { default as CxTableSavedSearchDropdown } from './table-saved-search-drop
|
|
|
26
26
|
* @event cx-table-advanced-search-click - Emitted when the advanced search action is clicked.
|
|
27
27
|
* @event cx-add - Emitted when the add action is clicked.
|
|
28
28
|
* @event {{ type: 'csv' | 'xml' | 'custom' | 'report' }} cx-table-export - Emitted when an export action is selected.
|
|
29
|
+
*
|
|
30
|
+
* @cssproperty [--header-pagination-min-height=var(--cx-input-height-medium)] - Reserved height for the label/pagination row when pagination is enabled.
|
|
29
31
|
*/
|
|
30
32
|
export default class CxTableToolbar extends CortexElement {
|
|
31
33
|
static readonly styles: CSSResultGroup;
|
|
@@ -118,6 +120,11 @@ export default class CxTableToolbar extends CortexElement {
|
|
|
118
120
|
* paginator inside this toolbar; the value drives the header alignment.
|
|
119
121
|
*/
|
|
120
122
|
paginationPlacement: PaginationPlacement;
|
|
123
|
+
/**
|
|
124
|
+
* Whether pagination is enabled on the table. Reserves stable height for the
|
|
125
|
+
* height when pagination moves between `top-*`/`bottom-*` placements.
|
|
126
|
+
*/
|
|
127
|
+
pagination: boolean;
|
|
121
128
|
private handleSearchSubmit;
|
|
122
129
|
private handleAdvancedSearchClick;
|
|
123
130
|
private handleClearSearch;
|
|
@@ -58,6 +58,7 @@ import { CxTableFooter, CxTableRowActions, CxTableToolbar } from './components';
|
|
|
58
58
|
* @cssproperty [--table-active-cell-border-color=var(--cx-color-neutral-200)] - The border color of the active/hover range overlay cell outline.
|
|
59
59
|
* @cssproperty [--table-selected-cell-border-width=1px] - The border width of the active selected cell.
|
|
60
60
|
* @cssproperty [--table-selected-cell-border-style=solid] - The border style of the active selected cell.
|
|
61
|
+
* @cssproperty [--header-pagination-min-height=var(--cx-input-height-medium)] - Reserved height for the toolbar's label/pagination row (`cx-table-toolbar`) when `pagination` is enabled, regardless of `pagination-placement`. Set to `0` to remove the reservation.
|
|
61
62
|
*
|
|
62
63
|
* @event {{ args: any[] }} cx-table.[event_name] - Emitted when the event with such name is emitted on the table.
|
|
63
64
|
* Must register the event listener on the table element to receive the event.
|
|
@@ -704,7 +705,6 @@ export default class CxTable extends CortexElement {
|
|
|
704
705
|
get initialized(): boolean | undefined;
|
|
705
706
|
get searchValue(): string;
|
|
706
707
|
get isBottomPlacement(): boolean;
|
|
707
|
-
get showToolbarPagination(): boolean;
|
|
708
708
|
get showPaginationFooter(): boolean;
|
|
709
709
|
get showTableToolbar(): string | boolean;
|
|
710
710
|
get clipboardOption(): Options['clipboard'];
|
|
@@ -63,7 +63,6 @@ export * from './cx-dot-status-click';
|
|
|
63
63
|
export * from './cx-download-format-picker-delete';
|
|
64
64
|
export * from './cx-download-format-picker-select';
|
|
65
65
|
export * from './cx-download-format-request-status';
|
|
66
|
-
export * from './cx-asset-format-picker-delete';
|
|
67
66
|
export * from './cx-asset-format-picker-select';
|
|
68
67
|
export * from './cx-drag-end';
|
|
69
68
|
export * from './cx-drag-start';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const COLOR_OPTIONS: string[];
|
|
2
|
+
export declare const LINE_WEIGHT_OPTIONS: number[];
|
|
3
|
+
/**
|
|
4
|
+
* Default stroke color applied to newly created markers (arrow, freehand, line, rectangle).
|
|
5
|
+
*/
|
|
6
|
+
export declare const DEFAULT_STROKE_COLOR = "#FACC15";
|
|
7
|
+
/**
|
|
8
|
+
* MarkerJS requires an image URL to work properly. As we annotate directly on top of a video and doesn't need image rasterization,
|
|
9
|
+
* we use a dummy image instead. Below is a 1x1 pixel fully transparent PNG image.
|
|
10
|
+
*/
|
|
11
|
+
export declare const PLACEHOLDER_IMAGE_URL = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";
|
|
12
|
+
export declare const defaultAnnotationState: {
|
|
13
|
+
height: number;
|
|
14
|
+
markers: never[];
|
|
15
|
+
version: number;
|
|
16
|
+
width: number;
|
|
17
|
+
};
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { AnnotationState, MarkerArea } from '@markerjs/markerjs3';
|
|
2
|
+
import { default as CxIconButton } from '../../../atoms/src/components/icon-button/icon-button.ts';
|
|
3
|
+
import { default as CxTooltip } from '../../../atoms/src/components/tooltip/tooltip.ts';
|
|
4
|
+
import { default as CortexElement } from '../../../base/src/cortex-element.ts';
|
|
5
|
+
import { CSSResultGroup } from 'lit';
|
|
6
|
+
import { default as CxAnnotatorColor } from './components/annotator-color';
|
|
7
|
+
import { default as CxAnnotatorLineWeight } from './components/annotator-line-weight';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @summary CxAnnotator - A component that allows users to annotate a specific element.
|
|
11
|
+
*/
|
|
12
|
+
export default class CxAnnotator extends CortexElement {
|
|
13
|
+
static readonly styles: CSSResultGroup;
|
|
14
|
+
static readonly dependencies: {
|
|
15
|
+
'cx-annotator-color': typeof CxAnnotatorColor;
|
|
16
|
+
'cx-annotator-line-weight': typeof CxAnnotatorLineWeight;
|
|
17
|
+
'cx-icon-button': typeof CxIconButton;
|
|
18
|
+
'cx-tooltip': typeof CxTooltip;
|
|
19
|
+
};
|
|
20
|
+
private readonly localize;
|
|
21
|
+
annotatorColor: CxAnnotatorColor;
|
|
22
|
+
annotatorLineWeight: CxAnnotatorLineWeight;
|
|
23
|
+
/**
|
|
24
|
+
* The element to annotate. The marker are component `mjs-marker-area` will be
|
|
25
|
+
* instantiated inside the element and also matches its dimensions.
|
|
26
|
+
*/
|
|
27
|
+
annotationEl: HTMLElement;
|
|
28
|
+
/**
|
|
29
|
+
* List of marker type names that should continue drawing after creation.
|
|
30
|
+
* Valid values: "arrow-marker", "line-marker", "rectangle-marker", "freehand-marker".
|
|
31
|
+
* Set via HTML attribute as a space-separated string, or via JS as an array.
|
|
32
|
+
* e.g. attribute: `continuous-creation-tools="freehand-marker arrow-marker"`
|
|
33
|
+
* e.g. property: `el.continuousCreationTools = ['freehand-marker', 'arrow-marker']`
|
|
34
|
+
*/
|
|
35
|
+
continuousCreationTools: string[];
|
|
36
|
+
set annotationState(value: AnnotationState | null);
|
|
37
|
+
get annotationState(): AnnotationState;
|
|
38
|
+
markerArea: MarkerArea | null;
|
|
39
|
+
color: string;
|
|
40
|
+
lineWeight: number;
|
|
41
|
+
/** Internal cache of the latest annotation state, kept in sync with the marker area. */
|
|
42
|
+
private annotationStateValue;
|
|
43
|
+
private resizeObserver;
|
|
44
|
+
get currentMarker(): import('@markerjs/markerjs3').MarkerBase | undefined;
|
|
45
|
+
get currentMarkerType(): string | undefined;
|
|
46
|
+
private get isDrawMode();
|
|
47
|
+
get state(): AnnotationState | undefined;
|
|
48
|
+
constructor();
|
|
49
|
+
runFirstUpdated(): void;
|
|
50
|
+
connectedCallback(): void;
|
|
51
|
+
disconnectedCallback(): void;
|
|
52
|
+
handleAnnotationElChange(): void;
|
|
53
|
+
private setupResizeObserver;
|
|
54
|
+
private destroyResizeObserver;
|
|
55
|
+
private handleAnnotationElResize;
|
|
56
|
+
private destroyMarkerArea;
|
|
57
|
+
private initMarkerArea;
|
|
58
|
+
private restoreAnnotationState;
|
|
59
|
+
private handleAreaStateChange;
|
|
60
|
+
private handleMarkerAreaShow;
|
|
61
|
+
/**
|
|
62
|
+
* Creates a marker of the given type and sets the color and line weight
|
|
63
|
+
* @param markerTypeName - The type of marker to create
|
|
64
|
+
* @returns
|
|
65
|
+
*/
|
|
66
|
+
private createMarker;
|
|
67
|
+
undo(): void;
|
|
68
|
+
redo(): void;
|
|
69
|
+
switchToSelectMode(): void;
|
|
70
|
+
private handleMarkerCreating;
|
|
71
|
+
private handleMarkerCreate;
|
|
72
|
+
private handleMarkerChange;
|
|
73
|
+
private handleMarkerDelete;
|
|
74
|
+
private handleKeydown;
|
|
75
|
+
private handleToolClick;
|
|
76
|
+
private handleAddArrowClick;
|
|
77
|
+
private handleLineClick;
|
|
78
|
+
private handleFreehandClick;
|
|
79
|
+
private handleRectangleClick;
|
|
80
|
+
private handleLineWeightChange;
|
|
81
|
+
private handleColorChange;
|
|
82
|
+
render(): import('lit').TemplateResult<1>;
|
|
83
|
+
}
|
|
84
|
+
declare global {
|
|
85
|
+
interface HTMLElementTagNameMap {
|
|
86
|
+
'cx-annotator': CxAnnotator;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { default as CxButton } from '../../../../atoms/src/components/button/button.ts';
|
|
2
|
+
import { default as CxDropdown } from '../../../../atoms/src/components/dropdown/dropdown.ts';
|
|
3
|
+
import { default as CxMenu } from '../../../../atoms/src/components/menu/menu.ts';
|
|
4
|
+
import { default as CxMenuItem } from '../../../../atoms/src/components/menu-item/menu-item.ts';
|
|
5
|
+
import { default as CxTooltip } from '../../../../atoms/src/components/tooltip/tooltip.ts';
|
|
6
|
+
import { default as CortexElement } from '../../../../base/src/cortex-element.ts';
|
|
7
|
+
import { CSSResultGroup } from 'lit';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @summary CxAnnotatorColor - A component that allows users to select a color for the annotator.
|
|
11
|
+
*/
|
|
12
|
+
export default class CxAnnotatorColor extends CortexElement {
|
|
13
|
+
static readonly styles: CSSResultGroup;
|
|
14
|
+
static readonly dependencies: {
|
|
15
|
+
'cx-button': typeof CxButton;
|
|
16
|
+
'cx-dropdown': typeof CxDropdown;
|
|
17
|
+
'cx-menu': typeof CxMenu;
|
|
18
|
+
'cx-menu-item': typeof CxMenuItem;
|
|
19
|
+
'cx-tooltip': typeof CxTooltip;
|
|
20
|
+
};
|
|
21
|
+
private readonly localize;
|
|
22
|
+
protected createRenderRoot(): this;
|
|
23
|
+
colors: string[];
|
|
24
|
+
value: string;
|
|
25
|
+
private handleColorSelect;
|
|
26
|
+
render(): import('lit').TemplateResult<1>;
|
|
27
|
+
}
|
|
28
|
+
declare global {
|
|
29
|
+
interface HTMLElementTagNameMap {
|
|
30
|
+
'cx-annotator-color': CxAnnotatorColor;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { default as CxDropdown } from '../../../../atoms/src/components/dropdown/dropdown.ts';
|
|
2
|
+
import { default as CxIconButton } from '../../../../atoms/src/components/icon-button/icon-button.ts';
|
|
3
|
+
import { default as CxMenu } from '../../../../atoms/src/components/menu/menu.ts';
|
|
4
|
+
import { default as CxMenuItem } from '../../../../atoms/src/components/menu-item/menu-item.ts';
|
|
5
|
+
import { default as CxSpace } from '../../../../atoms/src/components/space/space.ts';
|
|
6
|
+
import { default as CxTooltip } from '../../../../atoms/src/components/tooltip/tooltip.ts';
|
|
7
|
+
import { default as CortexElement } from '../../../../base/src/cortex-element.ts';
|
|
8
|
+
import { CSSResultGroup } from 'lit';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @summary CxAnnotatorLineWeight - A component that allows users to select a line weight for the annotator.
|
|
12
|
+
*/
|
|
13
|
+
export default class CxAnnotatorLineWeight extends CortexElement {
|
|
14
|
+
static readonly styles: CSSResultGroup;
|
|
15
|
+
static readonly dependencies: {
|
|
16
|
+
'cx-dropdown': typeof CxDropdown;
|
|
17
|
+
'cx-icon-button': typeof CxIconButton;
|
|
18
|
+
'cx-menu': typeof CxMenu;
|
|
19
|
+
'cx-menu-item': typeof CxMenuItem;
|
|
20
|
+
'cx-space': typeof CxSpace;
|
|
21
|
+
'cx-tooltip': typeof CxTooltip;
|
|
22
|
+
};
|
|
23
|
+
private readonly localize;
|
|
24
|
+
lineWeightOptions: number[];
|
|
25
|
+
value: number;
|
|
26
|
+
private handleLineWeightSelect;
|
|
27
|
+
protected createRenderRoot(): this;
|
|
28
|
+
render(): import('lit').TemplateResult<1>;
|
|
29
|
+
}
|
|
30
|
+
declare global {
|
|
31
|
+
interface HTMLElementTagNameMap {
|
|
32
|
+
'cx-annotator-line-weight': CxAnnotatorLineWeight;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ShapeOutlineMarkerBase } from '@markerjs/markerjs3';
|
|
2
|
+
|
|
3
|
+
export declare class RectangleMarker extends ShapeOutlineMarkerBase {
|
|
4
|
+
static readonly typeName = "RectangleMarker";
|
|
5
|
+
constructor(container: SVGGElement);
|
|
6
|
+
protected getPath(width?: number, height?: number): string;
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -11,11 +11,11 @@ import { CSSResultGroup } from 'lit';
|
|
|
11
11
|
* @summary The `cx-asset-format-picker` component lets users choose and clear an asset display format.
|
|
12
12
|
* Works for any asset type (video, audio, etc.) based on the callback provided.
|
|
13
13
|
*
|
|
14
|
-
* @event cx-asset-format-select - Emitted when a format is selected. Detail is an `AssetFormatValue`.
|
|
15
|
-
* @event cx-asset-format-delete - Emitted when the selected format is cleared.
|
|
14
|
+
* @event cx-asset-format-select - Emitted when a format is selected or reset to its default. Detail is an `AssetFormatValue`.
|
|
16
15
|
* @event cx-asset-request-status - Emitted when the format request status changes.
|
|
17
16
|
*/
|
|
18
17
|
export default class CxAssetFormatPicker extends CortexElement {
|
|
18
|
+
#private;
|
|
19
19
|
static readonly styles: CSSResultGroup;
|
|
20
20
|
static readonly dependencies: {
|
|
21
21
|
'cx-button': typeof CxButton;
|
|
@@ -25,6 +25,7 @@ export default class CxAssetFormatPicker extends CortexElement {
|
|
|
25
25
|
'cx-typography': typeof CxTypography;
|
|
26
26
|
};
|
|
27
27
|
private readonly localize;
|
|
28
|
+
private apiGetAvailableProxies;
|
|
28
29
|
inputEl?: CxInput;
|
|
29
30
|
/** The currently selected asset format value. */
|
|
30
31
|
value: AssetFormatValue | undefined;
|
|
@@ -36,6 +37,8 @@ export default class CxAssetFormatPicker extends CortexElement {
|
|
|
36
37
|
required: boolean;
|
|
37
38
|
/** Disables the picker. */
|
|
38
39
|
disabled: boolean;
|
|
40
|
+
/** The format code to reset to when the user clicks the reset button (e.g. 'Web', 'WebHigh'). */
|
|
41
|
+
defaultFormat: string;
|
|
39
42
|
/**
|
|
40
43
|
* A callback invoked when the user requests to select an asset format.
|
|
41
44
|
* It receives the asset ID and the current value, and should return a
|
|
@@ -43,8 +46,11 @@ export default class CxAssetFormatPicker extends CortexElement {
|
|
|
43
46
|
*/
|
|
44
47
|
onRequestAssetFormat: ((assetId: string, value?: AssetFormatValue) => Promise<AssetFormatValue | null | undefined>) | undefined;
|
|
45
48
|
private get hasValue();
|
|
49
|
+
private get resolvedLabel();
|
|
50
|
+
private get canReset();
|
|
46
51
|
private handleRequestFormatClick;
|
|
47
|
-
private
|
|
52
|
+
private handleResetClick;
|
|
53
|
+
handleAssetIdChange(): Promise<void>;
|
|
48
54
|
handleValueChange(): Promise<void>;
|
|
49
55
|
private renderFormatDisplay;
|
|
50
56
|
render(): import('lit').TemplateResult<1>;
|
|
@@ -218,7 +218,7 @@ export default class CxDynamicSelect extends CortexElement {
|
|
|
218
218
|
private handleLoadMore;
|
|
219
219
|
private handleCustomChange;
|
|
220
220
|
private renderTableOptions;
|
|
221
|
-
render(): import('lit
|
|
221
|
+
render(): import('lit/directive').DirectiveResult<typeof import('lit/directives/keyed.js').Keyed>;
|
|
222
222
|
}
|
|
223
223
|
declare global {
|
|
224
224
|
interface HTMLElementTagNameMap {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { default as Cx3dViewer } from './3d-viewer/3d-viewer';
|
|
2
|
+
export { default as CxAnnotator } from './annotator/annotator';
|
|
2
3
|
export { default as CxAssetDataDisplay } from './asset-data-display/asset-data-display';
|
|
3
4
|
export { default as CxAssetPicker } from './asset-picker/asset-picker';
|
|
4
5
|
export { default as CxBicolorPicker } from './bicolor-picker/bicolor-picker';
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { CxTimeBasedChangeEvent } from '../../../../events/src/cx-time-based-change';
|
|
2
|
+
import { default as CxComment } from '../../comment/comment.ts';
|
|
3
|
+
import { TimecodeMode } from '../../../../types/src/video-editor';
|
|
4
|
+
import { default as CxCommentMenuV1 } from './components/comment-menu/comment-menu';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @summary CxCommentV1 - Temporary fork of `cx-comment` that restores the time-based/timecode
|
|
8
|
+
* feature removed from `cx-comment` by the cx-annotator refactor. Kept for Cortex core
|
|
9
|
+
* compatibility until core migrates off the old timecode API; remove once no longer needed.
|
|
10
|
+
*/
|
|
11
|
+
export default class CxCommentV1 extends CxComment {
|
|
12
|
+
static readonly dependencies: {
|
|
13
|
+
'cx-comment-menu-v1': typeof CxCommentMenuV1;
|
|
14
|
+
'cx-comment-menu': typeof import('../../comment/components/comment-menu/comment-menu').default;
|
|
15
|
+
'cx-dialog': typeof import('../../../../atoms/src/index.ts').CxDialog;
|
|
16
|
+
'cx-mentions': typeof import('../../../../molecules/src/index.ts').CxMentions;
|
|
17
|
+
'cx-popup': typeof import('../../../../atoms/src/index.ts').CxPopup;
|
|
18
|
+
'cx-space': typeof import('../../../../atoms/src/index.ts').CxSpace;
|
|
19
|
+
'cx-timecode': typeof import('../../../../atoms/src/index.ts').CxTimecode;
|
|
20
|
+
};
|
|
21
|
+
readonly commentMenu: CxCommentMenuV1;
|
|
22
|
+
/**
|
|
23
|
+
* Whether the time based button should be shown in the comment menu.
|
|
24
|
+
*/
|
|
25
|
+
canUseTimeBased: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* When true, hides the time based icon button in the comment menu while
|
|
28
|
+
* still allowing the time based feature to function (e.g. `timeBased`
|
|
29
|
+
* state is still respected). Useful when the parent wants to enable the
|
|
30
|
+
* feature without exposing the toggle button to end users.
|
|
31
|
+
*/
|
|
32
|
+
hideTimeBasedIcon: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Whether the time based feature is enabled.
|
|
35
|
+
*/
|
|
36
|
+
timeBased: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* The time values for the time based feature.
|
|
39
|
+
*/
|
|
40
|
+
time: number[];
|
|
41
|
+
/**
|
|
42
|
+
* The timecode mode for the time based feature.
|
|
43
|
+
*/
|
|
44
|
+
timecodeMode: TimecodeMode;
|
|
45
|
+
/**
|
|
46
|
+
* The frame rate for the time based feature.
|
|
47
|
+
*/
|
|
48
|
+
frameRate: number;
|
|
49
|
+
/**
|
|
50
|
+
* Legacy alias for `disabledFullscreen` using the pre-rename attribute name
|
|
51
|
+
* (`disable-fullscreen`) that Cortex core still sets. Setting this also sets
|
|
52
|
+
* `disabledFullscreen`, which is what `cx-comment` actually acts on.
|
|
53
|
+
*/
|
|
54
|
+
disableFullscreen: boolean;
|
|
55
|
+
handleDisableFullscreenChange(): void;
|
|
56
|
+
runFirstUpdated(): void;
|
|
57
|
+
handleTimeChange(): void;
|
|
58
|
+
handleTimeBasedChange(event: CxTimeBasedChangeEvent): void;
|
|
59
|
+
/** Shared timecode config for both the initial extension and `setTime` updates. */
|
|
60
|
+
private get timecodeOptions();
|
|
61
|
+
protected renderMenu(): import('lit').TemplateResult<1>;
|
|
62
|
+
}
|
|
63
|
+
declare global {
|
|
64
|
+
interface HTMLElementTagNameMap {
|
|
65
|
+
'cx-comment-v1': CxCommentV1;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { default as CxCommentMenu } from '../../../../comment/components/comment-menu/comment-menu';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @summary CxCommentMenuV1 - Temporary fork of `cx-comment-menu` that restores the time-based/timecode
|
|
5
|
+
* toggle button removed by the cx-annotator refactor. Used only by `cx-comment-v1`.
|
|
6
|
+
*/
|
|
7
|
+
export default class CxCommentMenuV1 extends CxCommentMenu {
|
|
8
|
+
static readonly dependencies: {
|
|
9
|
+
'cx-button': typeof import('../../../../../../atoms/src/index.ts').CxButton;
|
|
10
|
+
'cx-card': typeof import('../../../../../../atoms/src/index.ts').CxCard;
|
|
11
|
+
'cx-icon-button': typeof import('../../../../../../atoms/src/index.ts').CxIconButton;
|
|
12
|
+
'cx-input': typeof import('../../../../../../atoms/src/index.ts').CxInput;
|
|
13
|
+
'cx-popup': typeof import('../../../../../../atoms/src/index.ts').CxPopup;
|
|
14
|
+
'cx-space': typeof import('../../../../../../atoms/src/index.ts').CxSpace;
|
|
15
|
+
'cx-tooltip': typeof import('../../../../../../atoms/src/index.ts').CxTooltip;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Whether the time based button should be shown in the comment menu.
|
|
19
|
+
*/
|
|
20
|
+
canUseTimeBased: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Whether the time based feature is enabled.
|
|
23
|
+
*/
|
|
24
|
+
timeBased: boolean;
|
|
25
|
+
protected handleTimeBasedClick(): void;
|
|
26
|
+
protected renderRightActions(): import('lit').TemplateResult<1>;
|
|
27
|
+
}
|
|
28
|
+
declare global {
|
|
29
|
+
interface HTMLElementTagNameMap {
|
|
30
|
+
'cx-comment-menu-v1': CxCommentMenuV1;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Extension } from '@tiptap/core';
|
|
2
2
|
import { PluginKey } from '@tiptap/pm/state';
|
|
3
|
-
import { TimecodeMode } from '
|
|
3
|
+
import { TimecodeMode } from '../../../../../types/src/video-editor';
|
|
4
4
|
|
|
5
5
|
export interface TimeOptions {
|
|
6
6
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Editor } from '@tiptap/core';
|
|
1
|
+
import { Editor, Extensions } from '@tiptap/core';
|
|
2
2
|
import { default as CxDialog } from '../../../atoms/src/components/dialog/dialog.ts';
|
|
3
3
|
import { default as CxPopup } from '../../../atoms/src/components/popup/popup.ts';
|
|
4
4
|
import { default as CxSpace } from '../../../atoms/src/components/space/space.ts';
|
|
@@ -6,8 +6,9 @@ import { default as CxTimecode } from '../../../atoms/src/components/timecode/ti
|
|
|
6
6
|
import { default as CortexElement } from '../../../base/src/cortex-element.ts';
|
|
7
7
|
import { default as CxMentions } from '../../../molecules/src/mentions/mentions.ts';
|
|
8
8
|
import { AutocompleteItem } from '../../../types/src/comment';
|
|
9
|
-
import { TimecodeMode } from '../../../types/src/video-editor';
|
|
10
9
|
import { TemplateResult } from 'lit';
|
|
10
|
+
import { DirectiveResult } from 'lit/directive';
|
|
11
|
+
import { GuardDirective } from 'lit/directives/guard';
|
|
11
12
|
import { default as CxCommentMenu } from './components/comment-menu/comment-menu';
|
|
12
13
|
|
|
13
14
|
export type CxCommentChangeEvent = CustomEvent<{
|
|
@@ -63,43 +64,17 @@ export default class CxComment extends CortexElement {
|
|
|
63
64
|
originalContainer: Element | null;
|
|
64
65
|
editor: Editor;
|
|
65
66
|
fullscreen: boolean;
|
|
66
|
-
/**
|
|
67
|
-
* Whether the time based button should be shown in the comment menu.
|
|
68
|
-
*/
|
|
69
|
-
canUseTimeBased: boolean;
|
|
70
|
-
/**
|
|
71
|
-
* Whether the time based feature is enabled.
|
|
72
|
-
*/
|
|
73
|
-
timeBased: boolean;
|
|
74
|
-
/**
|
|
75
|
-
* When true, hides the time based icon button in the comment menu while
|
|
76
|
-
* still allowing the time based feature to function (e.g. `timeBased`
|
|
77
|
-
* state is still respected). Useful when the parent wants to enable the
|
|
78
|
-
* feature without exposing the toggle button to end users.
|
|
79
|
-
*/
|
|
80
|
-
hideTimeBasedIcon: boolean;
|
|
81
67
|
/**
|
|
82
68
|
* When true, hides the fullscreen icon button and prevents entering
|
|
83
69
|
* fullscreen. `toggleFullscreen()` becomes a no-op when not already
|
|
84
70
|
* fullscreen, but still allows exiting fullscreen if currently open.
|
|
85
71
|
*/
|
|
86
|
-
|
|
87
|
-
/**
|
|
88
|
-
* The time values for the time based feature.
|
|
89
|
-
*/
|
|
90
|
-
time: number[];
|
|
91
|
-
/**
|
|
92
|
-
* The timecode mode for the time based feature.
|
|
93
|
-
*/
|
|
94
|
-
timecodeMode: TimecodeMode;
|
|
95
|
-
/**
|
|
96
|
-
* The frame rate for the time based feature.
|
|
97
|
-
*/
|
|
98
|
-
frameRate: number;
|
|
72
|
+
disabledFullscreen: boolean;
|
|
99
73
|
/**
|
|
100
74
|
* The placeholder for the comment editor.
|
|
101
75
|
*/
|
|
102
76
|
placeholder: string;
|
|
77
|
+
protected extensions: Extensions;
|
|
103
78
|
constructor();
|
|
104
79
|
connectedCallback(): void;
|
|
105
80
|
disconnectedCallback(): void;
|
|
@@ -108,7 +83,7 @@ export default class CxComment extends CortexElement {
|
|
|
108
83
|
private fetchAutocompleteItems;
|
|
109
84
|
getMentionItems(queryString: string): Promise<AutocompleteItem[]>;
|
|
110
85
|
resetMention(): void;
|
|
111
|
-
|
|
86
|
+
protected handleMenuItemClick(): void;
|
|
112
87
|
private handleFullscreenClick;
|
|
113
88
|
toggleFullscreen(): void;
|
|
114
89
|
private readonly debouncedFetch;
|
|
@@ -121,11 +96,10 @@ export default class CxComment extends CortexElement {
|
|
|
121
96
|
runFirstUpdated(): void;
|
|
122
97
|
private handleCommentMousedown;
|
|
123
98
|
handleEditableChange(): void;
|
|
124
|
-
handleTimeChange(): void;
|
|
125
99
|
handlePlaceholderChange(): void;
|
|
126
100
|
handleFullscreenChange(): void;
|
|
127
101
|
private handleRequestClose;
|
|
128
|
-
|
|
102
|
+
protected renderMenu(): TemplateResult | DirectiveResult<typeof GuardDirective>;
|
|
129
103
|
render(): TemplateResult;
|
|
130
104
|
}
|
|
131
105
|
declare global {
|
|
@@ -7,6 +7,7 @@ import { default as CxPopup } from '../../../../../atoms/src/components/popup/po
|
|
|
7
7
|
import { default as CxSpace } from '../../../../../atoms/src/components/space/space.ts';
|
|
8
8
|
import { default as CxTooltip } from '../../../../../atoms/src/components/tooltip/tooltip.ts';
|
|
9
9
|
import { default as CortexElement } from '../../../../../base/src/cortex-element.ts';
|
|
10
|
+
import { LocalizeController } from '../../../../../utils/src/custom-element/i18n';
|
|
10
11
|
import { nothing } from 'lit';
|
|
11
12
|
|
|
12
13
|
export type CxAttachmentUploadEvent = CustomEvent<Record<PropertyKey, never>>;
|
|
@@ -15,7 +16,7 @@ export type CxStopRecordingEvent = CustomEvent<Record<PropertyKey, never>>;
|
|
|
15
16
|
export type CxCommentFullscreenToggleEvent = CustomEvent<Record<PropertyKey, never>>;
|
|
16
17
|
export default class CxCommentMenu extends CortexElement {
|
|
17
18
|
static readonly styles: import('lit').CSSResult[];
|
|
18
|
-
|
|
19
|
+
protected readonly localize: LocalizeController;
|
|
19
20
|
static readonly dependencies: {
|
|
20
21
|
'cx-button': typeof CxButton;
|
|
21
22
|
'cx-card': typeof CxCard;
|
|
@@ -34,13 +35,11 @@ export default class CxCommentMenu extends CortexElement {
|
|
|
34
35
|
canUseAIAssistant: boolean;
|
|
35
36
|
recording: boolean;
|
|
36
37
|
/**
|
|
37
|
-
*
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Whether the time based feature is enabled.
|
|
38
|
+
* When true, hides the fullscreen icon button and disables fullscreen
|
|
39
|
+
* toggling entirely. Both the menu button and programmatic calls to
|
|
40
|
+
* `toggleFullscreen()` become no-ops.
|
|
42
41
|
*/
|
|
43
|
-
|
|
42
|
+
disabledFullscreen: boolean;
|
|
44
43
|
/**
|
|
45
44
|
* When true, hides the time based icon button in the menu while still
|
|
46
45
|
* allowing the time based feature to function (e.g. `timeBased` state
|
|
@@ -49,17 +48,16 @@ export default class CxCommentMenu extends CortexElement {
|
|
|
49
48
|
* expose the time based feature without showing the toggle button.
|
|
50
49
|
*/
|
|
51
50
|
hideTimeBasedIcon: boolean;
|
|
52
|
-
/**
|
|
53
|
-
* When true, hides the fullscreen icon button and disables fullscreen
|
|
54
|
-
* toggling entirely. Both the menu button and programmatic calls to
|
|
55
|
-
* `toggleFullscreen()` become no-ops.
|
|
56
|
-
*/
|
|
57
|
-
disableFullscreen: boolean;
|
|
58
51
|
private showTextFormats;
|
|
59
52
|
private showLinkPopup;
|
|
60
53
|
private linkTextValue;
|
|
61
54
|
private linkUrlValue;
|
|
62
55
|
private selection;
|
|
56
|
+
/**
|
|
57
|
+
* The currently active menu to be displayed on the right actions.
|
|
58
|
+
* If null, no menu is active.
|
|
59
|
+
*/
|
|
60
|
+
activeMenu: string | null;
|
|
63
61
|
constructor();
|
|
64
62
|
private handlePopupOpened;
|
|
65
63
|
private resetLinkValues;
|
|
@@ -77,16 +75,19 @@ export default class CxCommentMenu extends CortexElement {
|
|
|
77
75
|
private handleLinkTextInputChange;
|
|
78
76
|
private handleLinkInputKeyDown;
|
|
79
77
|
private handleLinkUrlInputChange;
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
private handleAttachmentClick;
|
|
78
|
+
protected handleTextFormatsClick(): void;
|
|
79
|
+
protected handleFullscreenClick(event: MouseEvent): void;
|
|
80
|
+
protected handleOpenAIAssistantClick(event: MouseEvent): void;
|
|
81
|
+
protected handleRecordingClick(event: MouseEvent): void;
|
|
82
|
+
protected handleAttachmentClick(event: MouseEvent): void;
|
|
86
83
|
private handleLinkPopupCancel;
|
|
87
84
|
handleEditorChange(): void;
|
|
88
85
|
runConnectedCallback(): void;
|
|
89
86
|
disconnectedCallback(): void;
|
|
87
|
+
renderTextFormatMenu(): import('lit').TemplateResult<1>;
|
|
88
|
+
protected renderLeftMenu(): import('lit').TemplateResult<1>;
|
|
89
|
+
protected renderRightActions(): import('lit').TemplateResult<1>;
|
|
90
|
+
protected renderRightMenu(): import('lit').TemplateResult<1>;
|
|
90
91
|
render(): import('lit').TemplateResult<1> | typeof nothing;
|
|
91
92
|
}
|
|
92
93
|
declare global {
|
|
@@ -25,7 +25,6 @@ type Attribute = {
|
|
|
25
25
|
'download-names'?: CxVideo['downloadNames'];
|
|
26
26
|
'download-src'?: CxVideo['downloadSrc'];
|
|
27
27
|
'format': string;
|
|
28
|
-
'format-label'?: string;
|
|
29
28
|
'format-src': string;
|
|
30
29
|
'header-source-field': CxVideo['headerSourceField'];
|
|
31
30
|
height: CxVideo['height'];
|