@sysdoc/sharepoint-util
Version:
A utility library for SharePoint solutions
45 lines (43 loc) • 2.21 kB
text/xml
{% from 'Macros.html' import Field,ContentType,WebSettings,SiteSecurity,RegionalSettings,ProvisioningTemplate,Navigation,TermGroup,List,File,Page,Sequence,Directory,AuditSettings %}
<pnp:Provisioning xmlns:pnp="http://schemas.dev.office.com/PnP/2018/01/ProvisioningSchema">
{% set prefs = getAttr(template,'preferences')|default({}) %}
<pnp:Preferences Author="{{getAttr(prefs,'author')}}"
Version="{{getAttr(prefs,'version')|default('1.0')}}"
Generator="Sysdoc CLI">
{% if hasAttr(template,'preferences') %}{{log('Provisioning Template','Creating preferences')}}
{% if hasAttr(prefs,'parameters','params') %}
{% set params = getAttr(prefs,'parameters','params') %}
<pnp:Parameters>
{% for key,val in params %}
{% if key == 'CodeProvidedParam' %}
<pnp:Parameter Key="{{key}}" Required="true" />
{% else %}
<pnp:Parameter Key="{{key}}">{{val}}</pnp:Parameter>
{% endif %}
{% endfor %}
</pnp:Parameters>
{% endif %}
{% if hasAttr(prefs,'prefs','preferences') %}
{% set params = getAttr(prefs,'prefs','preferences') %}
{% for key,val in params %}
<pnp:Preference Key="{{key}}">{{val}}</pnp:Preference>
{% endfor %}
{% endif %}
{% endif %}
</pnp:Preferences>
{% if hasAttr(template,'localizations') and hasItems(template,'localizations') %}{{log('Provisioning Template','Creating localizations')}}
<pnp:Localizations>
{% for item in getAttr(template,'localizations') %}
<pnp:Localization LCID="{{getAttr(item,'lcid')}}" Name="{{getAttr(item,'name')}}" ResourceFile="{{getAttr(item,'resourceFile','file','src')}}" />
{% endfor %}
</pnp:Localizations>
{% endif %}
<pnp:Templates ID="{{getAttr(template,'templatesId')|default('BasicTemplates')}}">
{{ProvisioningTemplate(template)}}
</pnp:Templates>
{% if hasAttr(template,'sequences') %}
{% for seq in getAttr(template,'sequences') %}
{{Sequence(seq)}}
{% endfor %}
{% endif %}
</pnp:Provisioning>