<?xml version="1.0"?>
<pnp:Provisioning xmlns:pnp="http://schemas.dev.office.com/PnP/2021/03/ProvisioningSchema">
<pnp:Preferences Generator="PnP.Framework, Version=1.10.2.0, Culture=neutral, PublicKeyToken=0d501f89f11b748c">
<pnp:Parameters>
<pnp:Parameter Key="ListTitle" Required="true"/>
<pnp:Parameter Key="ListDescription" Required="true"/>
<pnp:Parameter Key="ListUrl" Required="true"/>
</pnp:Parameters>
</pnp:Preferences>
<pnp:Templates ID="CONTAINER-TEMPLATE-B33BF441C6C6498A9AEBF10E1384F24B">
<pnp:ProvisioningTemplate ID="TEMPLATE-B33BF441C6C6498A9AEBF10E1384F24B" Version="1" BaseSiteTemplate="SITEPAGEPUBLISHING#0" Scope="RootSite">
<pnp:Lists>
<pnp:ListInstance Title="{parameter:ListTitle}" Description="{parameter:ListUrl}" DocumentTemplate="" OnQuickLaunch="true" TemplateType="100" Url="Lists/{parameter:ListUrl}" EnableVersioning="true" MinorVersionLimit="0" MaxVersionLimit="50" DraftVersionVisibility="0" TemplateFeatureID="00bfea71-de22-43b2-a848-c05709900100" EnableFolderCreation="false" DefaultDisplayFormUrl="{site}/Lists/{parameter:ListUrl}/DispForm.aspx" DefaultEditFormUrl="{site}/Lists/{parameter:ListUrl}/EditForm.aspx" DefaultNewFormUrl="{site}/Lists/{parameter:ListUrl}/NewForm.aspx" ImageUrl="/_layouts/15/images/itgen.png?rev=47" IrmExpire="false" IrmReject="false" IsApplicationList="false" ValidationFormula="" ValidationMessage="">
<pnp:ContentTypeBindings>
<pnp:ContentTypeBinding ContentTypeID="0x01" Default="true" />
<pnp:ContentTypeBinding ContentTypeID="0x0120" />
</pnp:ContentTypeBindings>
<pnp:Views>
<View Name="{3F903B97-75AD-4955-8DDB-D3C365D0EFA7}" DefaultView="TRUE" MobileView="TRUE" MobileDefaultView="TRUE" Type="HTML" DisplayName="Playlist" Url="{site}/Lists/{parameter:ListUrl}/AllItems.aspx" Level="1" BaseViewID="1" ContentTypeID="0x" ImageUrl="/_layouts/15/images/generic.png?rev=47">
<Query>
<OrderBy>
<FieldRef Name="Created" Ascending="FALSE" />
</OrderBy>
</Query>
<ViewFields>
<FieldRef Name="Thumbnail" />
<FieldRef Name="LinkTitle" />
<FieldRef Name="Owner" />
<FieldRef Name="Duration" />
</ViewFields>
<RowLimit Paged="TRUE">30</RowLimit>
<JSLink>clienttemplates.js</JSLink>
<ViewType2>PLAYLISTPLAYBACK</ViewType2>
</View>
<View Name="{FA64DCC3-1F08-409C-9632-ECB9A0CC3251}" MobileView="TRUE" Type="HTML" DisplayName="All Items" Url="{site}/Lists/{parameter:ListUrl}/All Items.aspx" Level="1" ContentTypeID="0x">
<Query>
<OrderBy>
<FieldRef Name="Created" Ascending="FALSE" />
</OrderBy>
</Query>
<ViewFields>
<FieldRef Name="Thumbnail" />
<FieldRef Name="LinkTitle" />
<FieldRef Name="Owner" />
<FieldRef Name="Duration" />
</ViewFields>
<RowLimit Paged="TRUE">30</RowLimit>
</View>
</pnp:Views>
<pnp:Fields>
<Field ID="{3189069f-ce6f-43cb-9a76-b61111da91e4}" DisplayName="VideoIdentifiers" Description="This field contains video identifiers deemed important for the rendering the videos in the playlist" Name="VideoIdentifiers" Title="VideoIdentifiers" Type="Note" CanToggleHidden="FALSE" Hidden="TRUE" StaticName="VideoIdentifiers" ColName="ntext3" RowOrdinal="0" SourceID="{{listid:{parameter:ListTitle}}}" />
<Field ID="{abbe9246-93ad-46e0-92c8-f256ac745319}" DisplayName="Thumbnail" Description="The thumbnail of the video" Name="Thumbnail" Title="Thumbnail" Type="Note" ReadOnlyEnforced="TRUE" StaticName="Thumbnail" CustomFormatter="{
 "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
 "elmType": "div",
 "style": {
 "display": "flex",
 "flex-direction": "column",
 "height": "100%",
 "justify-content": "center",
 "width": "100%"
 },
 "children": [{
 "elmType": "div",
 "style": {
 "width": "100%",
 "height": "80%",
 "display": "flex",
 "flex-direction": "row",
 "justify-content": "center"
 },
 "children": [
 {
 "elmType": "img",
 "style": {
 "height": "100%",
 "width": "100%",
 "border-radius": "2px",
 "margin": "4px"
 },
 "attributes": {
 "src": "[$Thumbnail]"
 }
 }
 ]
 }]
}" ColName="ntext2" RowOrdinal="0" SourceID="{{listid:{parameter:ListTitle}}}">
<FieldRefs>
<FieldRef Name="VideoIdentifiers" />
</FieldRefs>
</Field>
<Field ID="{1df873df-63c7-49fa-9b42-b474355686bf}" DisplayName="Owner" Description="The owner of the video" Name="Owner" Title="Owner" Type="User" StaticName="Owner" ReadOnlyEnforced="TRUE" UserDisplayOptions="NamePhoto" CustomFormatter="{
 "$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
 "elmType": "div",
 "style": {
 "flex-direction": "column",
 "align-items": "flex-start",
 "margin-top": "6px",
 "padding-right": "8px",
 "width": "100%",
 "overflow": "hidden"
 },
 "children": [{
 "forEach": "personIterator in @currentField",
 "elmType": "div",
 "attributes": {
 "class": "ms-bgColor-neutralLight ms-fontColor-neutralSecondary"
 },
 "style": {
 "display": "inline-flex",
 "align-items": "center",
 "height": "28px",
 "overflow": "hidden",
 "border-radius": "12px",
 "padding-right": "8px",
 "margin": "2px"
 },
 "children": [
 {
 "elmType": "img",
 "attributes": {
 "src": "='/_layouts/15/userphoto.aspx?size=S&accountname=' + [$personIterator.email]",
 "title": "[$personIterator.title]"
 },
 "style": {
 "width": "28px",
 "height": "28px",
 "display": "block",
 "border-radius": "50%"
 }
 },
 {
 "elmType": "div",
 "txtContent": "[$personIterator.title]",
 "attributes": {
 "title": "[$personIterator.title]",
 "class": "nameplate-title"
 },
 "style": {
 "padding-left": "5px",
 "white-space": "nowrap",
 "font-size": "12px"
 }
 }
 ],
 "defaultHoverField": "[$personIterator]"
 }]
}" ColName="int1" RowOrdinal="0" SourceID="{{listid:{parameter:ListTitle}}}" />
<Field ID="{790d4860-6fe4-4674-a608-bf7fbc86be3b}" AllowGridEditing="TRUE" AutoHyperLink="TRUE" ClientSideComponentId="00000000-0000-0000-0000-000000000000" DisplayName="Duration" FieldType="Text" Format="Text" Name="Duration" RealFieldName="Duration" StaticName="Duration" ShowInFiltersPane="Auto" Type="Text" ariaLabel="Duration" role="Text" ColName="nvarchar4" RowOrdinal="0" SourceID="{0795F799-8A73-4FCB-987C-7FD77F5C7D1A}">
<Validation Message="Invalid format. Duration format should be in hh:mm:ss">=IF(ISBLANK([Duration]),TRUE, OR(AND(LEN([Duration])=5,MID([Duration],3,1)=":",ISNUMBER(MID([Duration],1,2)+0),ISNUMBER(MID([Duration],4,2)+0),CODE(MID([Duration],1,1))<54,CODE(MID([Duration],4,1))<54),AND(LEN([Duration])=8,MID([Duration],3,1)=":",MID([Duration],6,1)=":",ISNUMBER(MID([Duration],1,2)+0),ISNUMBER(MID([Duration],4,2)+0),ISNUMBER(MID([Duration],7,2)+0),CODE(MID([Duration],4,1))<54,CODE(MID([Duration],7,1))<54)))</Validation>
</Field>
</pnp:Fields>
</pnp:ListInstance>
</pnp:Lists>
</pnp:ProvisioningTemplate>
</pnp:Templates>
</pnp:Provisioning>
.