"""Append existing whole MediaPoolItems to an EMPTY test timeline. Plan by default."""
import argparse
from resolve_api_connection import connect
from resolve_api_media import context, select_ids, append_once, add_write_arguments, expected_from, output


def main(argv=None):
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument("item_ids", nargs="+", help="Media Pool IDs from the properties report, in order")
    add_write_arguments(parser, timeline=True)
    args = parser.parse_args(argv)
    ctx = context(connect(), need_timeline=True)
    items = select_ids(ctx, args.item_ids)
    # Already-imported items only. No implicit ImportMedia/CreateEmptyTimeline.
    output(append_once(ctx, items, args.apply, expected_from(args, timeline=True)))
    # A/V may produce more timeline objects than source items.
    # No source-frame ranges, recordFrame arithmetic or guessed FPS conversions.


if __name__ == "__main__":
    main()
