diff --git a/packages/design-system/src/new-ui/Icons/Download02.tsx b/packages/design-system/src/new-ui/Icons/Download02.tsx new file mode 100644 index 0000000000..ab31ab5e5c --- /dev/null +++ b/packages/design-system/src/new-ui/Icons/Download02.tsx @@ -0,0 +1,27 @@ +"use client"; + +import * as React from "react"; +import { IconBase, IconBaseProps } from "./IconBase"; + +export const Download02 = React.forwardRef< + SVGSVGElement, + Omit +>((props, ref) => { + const { className, ...passThrough } = props; + return ( + + + + ); +}); +Download02.displayName = "Download02"; diff --git a/packages/design-system/src/new-ui/Icons/FastBackward.tsx b/packages/design-system/src/new-ui/Icons/FastBackward.tsx new file mode 100644 index 0000000000..fe2235c2f3 --- /dev/null +++ b/packages/design-system/src/new-ui/Icons/FastBackward.tsx @@ -0,0 +1,33 @@ +"use client"; + +import * as React from "react"; +import { IconBase, IconBaseProps } from "./IconBase"; + +export const FastBackward = React.forwardRef< + SVGSVGElement, + Omit +>((props, ref) => { + const { className, ...passThrough } = props; + return ( + + + + + ); +}); +FastBackward.displayName = "FastBackward"; diff --git a/packages/design-system/src/new-ui/Icons/FastForward.tsx b/packages/design-system/src/new-ui/Icons/FastForward.tsx new file mode 100644 index 0000000000..6690debe60 --- /dev/null +++ b/packages/design-system/src/new-ui/Icons/FastForward.tsx @@ -0,0 +1,33 @@ +"use client"; + +import * as React from "react"; +import { IconBase, IconBaseProps } from "./IconBase"; + +export const FastForward = React.forwardRef< + SVGSVGElement, + Omit +>((props, ref) => { + const { className, ...passThrough } = props; + return ( + + + + + ); +}); +FastForward.displayName = "FastForward"; diff --git a/packages/design-system/src/new-ui/Icons/VolumeMax.tsx b/packages/design-system/src/new-ui/Icons/VolumeMax.tsx new file mode 100644 index 0000000000..25f11f2fea --- /dev/null +++ b/packages/design-system/src/new-ui/Icons/VolumeMax.tsx @@ -0,0 +1,27 @@ +"use client"; + +import * as React from "react"; +import { IconBase, IconBaseProps } from "./IconBase"; + +export const VolumeMax = React.forwardRef< + SVGSVGElement, + Omit +>((props, ref) => { + const { className, ...passThrough } = props; + return ( + + + + ); +}); +VolumeMax.displayName = "VolumeMax"; diff --git a/packages/design-system/src/new-ui/Icons/VolumeX.tsx b/packages/design-system/src/new-ui/Icons/VolumeX.tsx new file mode 100644 index 0000000000..8380dc0d4a --- /dev/null +++ b/packages/design-system/src/new-ui/Icons/VolumeX.tsx @@ -0,0 +1,27 @@ +"use client"; + +import * as React from "react"; +import { IconBase, IconBaseProps } from "./IconBase"; + +export const VolumeX = React.forwardRef< + SVGSVGElement, + Omit +>((props, ref) => { + const { className, ...passThrough } = props; + return ( + + + + ); +}); +VolumeX.displayName = "VolumeX"; diff --git a/packages/design-system/src/new-ui/Icons/index.ts b/packages/design-system/src/new-ui/Icons/index.ts index 6fa188b970..01f201fc38 100644 --- a/packages/design-system/src/new-ui/Icons/index.ts +++ b/packages/design-system/src/new-ui/Icons/index.ts @@ -35,6 +35,7 @@ import { Chip02 } from "./Chip02"; import { Cube01 } from "./Cube01"; import { CubeOutline } from "./CubeOutline"; import { Database01 } from "./Database01"; +import { Download02 } from "./Download02"; import { DotsHorizontal } from "./DotsHorizontal"; import { DotsVertical } from "./DotsVertical"; import { DownloadCloud01 } from "./DownloadCloud01"; @@ -43,6 +44,8 @@ import { Edit05 } from "./Edit05"; import { File02 } from "./File02"; import { File04 } from "./File04"; import { File05 } from "./File05"; +import { FastBackward } from "./FastBackward"; +import { FastForward } from "./FastForward"; import { FileMinus01 } from "./FileMinus01"; import { FilePlus01 } from "./FilePlus01"; import { FilePlus02 } from "./FilePlus02"; @@ -102,6 +105,8 @@ import { User01 } from "./User01"; import { User02 } from "./User02"; import { UserPlus01 } from "./UserPlus01"; import { Video } from "./Video"; +import { VolumeMax } from "./VolumeMax"; +import { VolumeX } from "./VolumeX"; import { VideoRecorder } from "./VideoRecorder"; import { Visa } from "./Visa"; import { VisualQuestionAnswering } from "./VisualQuestionAnswering"; @@ -145,6 +150,7 @@ export const Icons = { Cube01, CubeOutline, Database01, + Download02, DotsHorizontal, DotsVertical, DownloadCloud01, @@ -157,6 +163,8 @@ export const Icons = { FilePlus01, FilePlus02, FilterLines, + FastBackward, + FastForward, Gear01, Globe01, HelpCircle, @@ -212,6 +220,8 @@ export const Icons = { User02, UserPlus01, Video, + VolumeMax, + VolumeX, VideoRecorder, Visa, VisualQuestionAnswering, diff --git a/packages/design-system/src/new-ui/Icons/test.svg b/packages/design-system/src/new-ui/Icons/test.svg new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/toolkit/src/lib/use-instill-form/components/component-output/AudioField.tsx b/packages/toolkit/src/lib/use-instill-form/components/component-output/AudioField.tsx index 283b8bd2f4..ecbca56831 100644 --- a/packages/toolkit/src/lib/use-instill-form/components/component-output/AudioField.tsx +++ b/packages/toolkit/src/lib/use-instill-form/components/component-output/AudioField.tsx @@ -2,6 +2,8 @@ import { Nullable } from "../../../type"; import { ComponentOutputFieldBaseProps } from "../../types"; +import AudioPlayer from "./AudioPlayer"; +import { DownloadButton } from "./DownloadButton"; import { FieldRoot } from "./FieldRoot"; export type AudioFieldProps = { @@ -14,8 +16,17 @@ export const AudioField = (props: AudioFieldProps) => { return ( {audio && !hideField ? ( -
-