importargparseimportsysfromoffice365.sharepoint.client_contextimportClientContextfromoffice365.sharepoint.sitescripts.utilityimportSiteScriptUtilityfromtests.settingsimportclient_id,password,site_url,tenant,usernamedefmain():parser=argparse.ArgumentParser(description="Get site design metadata")parser.add_argument("--design-id",default=None,help="site design id (default: first design)")args=parser.parse_args()ctx=ClientContext(site_url).with_username_and_password(tenant=tenant,client_id=client_id,username=username,password=password)designs=SiteScriptUtility.get_site_designs(ctx).execute_query()ifnotdesigns.value:sys.exit("No site designs found.")ifargs.design_id:target=next((dfordindesigns.valueifstr(d.Id)==args.design_id),designs.value[0])else:target=designs.value[0]asserttarget.IdisnotNonedetail=SiteScriptUtility.get_site_design_metadata(ctx,str(target.Id)).execute_query()print(f"Title: {detail.value.Title}")print(f"Description: {detail.value.Description}")print(f"WebTemplate: {detail.value.WebTemplate}")print(f"SiteScriptIds:{detail.value.SiteScriptIds}")print(f"Id: {detail.value.Id}")if__name__=="__main__":main()