Member Junction
    Preparing search index...

    Inline preview for audio artifacts. Embeds the generic MJMediaPlayerComponent (mj-media-player) in a compact, thumbnail-sized configuration inside the conversation message card. Click events are stopped from propagating so using the transport controls does NOT open the full-size viewer.

    Compact gating: only play/pause + scrubber + time are shown. Transcript, waveform, speed, skip, volume and fullscreen chrome are turned OFF so the player reads cleanly at preview size.

    Hierarchy (View Summary)

    Implements

    • OnInit
    Index

    Constructors

    Properties

    artifactVersion: MJArtifactVersionEntity

    The artifact version to preview. Set by the resolver before the component renders.

    audioUrl: string = ''

    Resolved URL — data URI (inline) or pre-auth URL (file). Funneled through setAudioUrl.

    errorMessage: string = ''

    Non-empty hides the player and shows a compact error line.

    fileService: ArtifactFileService = ...

    Shared service used by both previews and full viewers to fetch file-mode download URLs.

    isLoading: boolean = true

    True until resolveContentUrl has settled, one way or the other.

    Owned here, not per subclass, so that every media preview has a loading state by construction. Each preview used to carry its own copy of this flag — or, before that, no loading branch at all, which rendered nothing while the URL resolved and made a generated image read as "never arrived". resolveContentUrl is async even for inline content, and for ContentMode === 'File' it is a network round trip before the media fetch even starts.

    MediaTracks: MediaTrack[] = []

    Single-track input for the generic MJMediaPlayerComponent. Rebuilt in lockstep with audioUrl via setAudioUrl; [] until a URL exists so the player shows its empty state.

    Provider: IMetadataProvider | null

    If specified, this provider will be used for communication and for all metadata purposes. By default, if not provided, the Metadata and RunView classes are used for this and the default GraphQLDataProvider is used which is connected to the same back-end MJAPI instance as the Metadata and RunView classes. If you want to have this component connect to a different MJAPI back-end, create an instance of a ProviderBase sub-class like GraphQLDataProvider/etc, and configure it as appropriate to connect to the MJAPI back-end you want to use, and then pass it in here.

    "ɵdir": unknown
    "ɵfac": ɵɵFactoryDeclaration<BaseAngularComponent, never>

    Accessors

    • get ProviderToUse(): IMetadataProvider

      Returns either the default Metadata provider or the one specified in the Provider property, if it was specified

      Returns IMetadataProvider

    • get RunQueryToUse(): IRunQueryProvider

      Returns either the default RunQuery provider or the one specified in the Provider property, if it was specified

      Returns IRunQueryProvider

    • get RunViewToUse(): IRunViewProvider

      Returns either the default RunView provider or the one specified in the Provider property, if it was specified

      Returns IRunViewProvider

    Methods

    • A callback method that is invoked immediately after the default change detector has checked the directive's data-bound properties for the first time, and before any of the view or content children have been checked. It is invoked only once when the directive is instantiated.

      Returns Promise<void>

    • Resolve a URL to bind to a media element (<img>, <video>, <audio>):

      • ContentMode === 'File' → fetch a pre-authenticated download URL from MJStorage.
      • otherwise ('Text') → Content is already a data:<mime>;base64,… URI; bind directly.

      Returns null when there is no usable content (caller should show its own empty/error state). Clears isLoading on every exit, including a throw, so a subclass cannot leave the indicator spinning beside an error.

      Returns Promise<string | null>