@audiotool/nexus - v0.0.12
    Preparing search index...

    Class ProjectGenerated

    Project is a resource representing a single Project.

    from message audiotool.project.v1.Project

    Hierarchy

    Index

    Constructors

    Properties

    bpm: number = 0

    Beats per minute of the project which will be the track bpm.

    Refers to track.bpm on sync.

    from field: double bpm = 16;

    copyAllowed: boolean = false

    Whether copying is allowed for users not having a role in the project.

    If this is set to true and the project is published as a track, the tracks remix_allowed is set to true. The tracks bool flag remix_allowed is used to determine if a track can be copied by users not having a role in the project and takes precedence over this value. To override this value, the metadata of the track must be updated / synced again.

    from field: bool copy_allowed = 19;

    copyOfProjectCommitIndex: number = 0

    If the project was copied/remixed from a track, this will be the commit_index of the track. For legacy projects the commit can be empty, even if the copy_of_project_name is set.

    At create time the caller will enforce a copy of a project at an exact point in time by setting this value. If the value is not set, and copy_of_project_name is specified the latest commit of the project will be used and set.

    from field: uint32 copy_of_project_commit_index = 7;

    copyOfProjectName: string = ""

    If the project was copied from another project, this will be the name of the project.

    At create time the caller will enforce a copy of a project by setting this value. The project must have copy_allowed set to true or the calling user must have a role in the project.

    Historical data of the project will not be copied, only the current state of the project.

    If remix_of_track_name is set, this value is ignored.

    from field: string copy_of_project_name = 6;

    coverUrl: string = ""

    The cover art URL of the project.

    ?width=256&height=256&fit=cover&format=webp can be appended to the URL for resizing (current restriction - this is only able for for CDNs > 2)

    The cover_url must be uploaded due ProjectService.UploadCover.

    Refers to track.cover_url on sync.

    from field: string cover_url = 14;

    createTime?: Timestamp

    Output only. Timestamp when this Project was created.

    from field: google.protobuf.Timestamp create_time = 10;

    creatorName: string = ""

    The creator of the project.

    The owner of the project can be handed over to another user. The creator_name will stay the same.

    from field: string creator_name = 3;

    description: string = ""

    The Description of the Project.

    Refers to track.description on sync.

    from field: string description = 9;

    displayName: string = ""

    The Project name.

    A random name will be generated if not provided.

    Refers to track.display_name on sync.

    from field: string display_name = 8;

    downloadAllowed: boolean = false

    Whether a simple download is allowed for the user. API implementers must respect this value.

    Refers to track.download_allowerd on sync.

    from field: bool download_allowed = 18;

    genreName: string = ""

    The genre name of the project, which becomes the track genre on publish.

    Refers to track.genre_name on sync.

    from field: string genre_name = 17;

    license: TrackLicense = TrackLicense.UNSPECIFIED

    The license of the Project.

    Refers to track.license on sync.

    from field: audiotool.project.v1.TrackLicense license = 20;

    name: string = ""

    The name of the Project.

    from field: string name = 1;

    playDuration?: Duration

    The duration of the Project.

    Refers to track.play_duration on sync.

    from field: google.protobuf.Duration play_duration = 12;

    remixOfTrackName: string = ""

    If the project was remixed from a track, this will be the name of the track.

    If this value is specified, the value of copy_of_project_name and copy_of_project_commit_index is ignored and the project of the Track message is used. remix_allowed must be set to true.

    The resulting project will have the copy_of_project_name set to the name of the remixed track and the copy_of_project_commit_index set to the commit index.

    Historical data of the project will not be copied, only the current state of the project.

    from field: string remix_of_track_name = 5;

    snapshotUrl: string = ""

    The snapshot of the DAW configuration of the project.

    ?width=256&height=256&fit=cover&format=webp can be appended to the URL for resizing (current restriction - this is only able for for CDNs > 2)

    Refers to track.cover_url on sync.

    from field: string snapshot_url = 15;

    tags: string[] = []

    The tags of the Project.

    Refers to track.tags on sync.

    from field: repeated string tags = 13;

    trackName: string = ""

    The track_name of the project (this is set when a the project has been published as a track).

    from field: string track_name = 4;

    updateTime?: Timestamp

    Output only. Timestamp when this Project was last updated.

    from field: google.protobuf.Timestamp update_time = 11;

    userNames: string[] = []

    The list of users having a role in the project.

    The user_names are the user names of the users having a role in the project.

    The ProjectRoles can be managed by the ProjectRoleService.

    from field: repeated string user_names = 2;

    fields: FieldList = ...
    runtime: ProtoRuntime = proto3
    typeName: "audiotool.project.v1.Project"

    Methods

    • Create a deep copy.

      Returns Project

    • Compare with a message of the same type. Note that this function disregards extensions and unknown fields.

      Parameters

      Returns boolean

    • Parse from binary data, merging fields.

      Repeated fields are appended. Map entries are added, overwriting existing keys.

      If a message field is already present, it will be merged with the new data.

      Parameters

      Returns this

    • Parse a message from a JSON value.

      Parameters

      • jsonValue: JsonValue
      • Optionaloptions: Partial<JsonReadOptions>

      Returns this

    • Parse a message from a JSON string.

      Parameters

      • jsonString: string
      • Optionaloptions: Partial<JsonReadOptions>

      Returns this

    • Retrieve the MessageType of this message - a singleton that represents the protobuf message declaration and provides metadata for reflection- based operations.

      Returns MessageType<Project>

    • Serialize the message to binary data.

      Parameters

      • Optionaloptions: Partial<BinaryWriteOptions>

      Returns Uint8Array

    • Serialize the message to a JSON value, a JavaScript value that can be passed to JSON.stringify().

      Parameters

      • Optionaloptions: Partial<JsonWriteOptions>

      Returns JsonValue

    • Override for serialization behavior. This will be invoked when calling JSON.stringify on this message (i.e. JSON.stringify(msg)).

      Note that this will not serialize google.protobuf.Any with a packed message because the protobuf JSON format specifies that it needs to be unpacked, and this is only possible with a type registry to look up the message type. As a result, attempting to serialize a message with this type will throw an Error.

      This method is protected because you should not need to invoke it directly -- instead use JSON.stringify or toJsonString for stringified JSON. Alternatively, if actual JSON is desired, you should use toJson.

      Returns JsonValue

    • Serialize the message to a JSON string.

      Parameters

      • Optionaloptions: Partial<JsonWriteStringOptions>

      Returns string