feat: Add folder view to view folder media (#2077)

- Closes: #2068

Note: Renames existing `folder` view to `folders` [experimental
functionality]
This commit is contained in:
Dermot Duffy
2025-05-31 17:13:39 -07:00
committed by GitHub
parent 1901475065
commit 956a2e523c
30 changed files with 246 additions and 132 deletions
+10 -7
View File
@@ -2,7 +2,7 @@ import { CardActionsAPI } from '../card-controller/types.js';
import { ZoomSettingsBase } from '../components-lib/zoom/types.js';
import { CameraSelectActionConfig } from '../config/schema/actions/custom/camera-select.js';
import { DisplayModeActionConfig } from '../config/schema/actions/custom/display-mode.js';
import { FolderActionConfig } from '../config/schema/actions/custom/folder.js';
import { FoldersViewActionConfig } from '../config/schema/actions/custom/folders-view.js';
import {
AdvancedCameraCardGeneralAction,
GeneralActionConfig,
@@ -47,7 +47,7 @@ export function createGeneralAction(
}
export function createViewAction(
action: Exclude<AdvancedCameraCardUserSpecifiedView, 'folder'>,
action: Exclude<AdvancedCameraCardUserSpecifiedView, 'folder' | 'folders'>,
options?: {
cardID?: string;
},
@@ -74,13 +74,16 @@ export function createCameraAction(
};
}
export function createFolderAction(options?: {
cardID?: string;
folderID?: string;
}): FolderActionConfig {
export function createFoldersViewAction(
view: 'folder' | 'folders',
options?: {
cardID?: string;
folderID?: string;
},
): FoldersViewActionConfig {
return {
action: 'fire-dom-event',
advanced_camera_card_action: 'folder',
advanced_camera_card_action: view,
...(options?.folderID && { folder: options.folderID }),
...(options?.cardID && { card_id: options.cardID }),
};