{
  "bundles": [
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-user-profile-jsf",
      "artifactVersion": "2021.64.6",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.ecm.user.center",
          "org.nuxeo.ecm.user.center.dashboard",
          "org.nuxeo.ecm.user.center.dashboard.jsf",
          "org.nuxeo.ecm.user.center.notification",
          "org.nuxeo.ecm.user.center.oauth",
          "org.nuxeo.ecm.user.center.profile",
          "org.nuxeo.ecm.user.center.profile.jsf",
          "org.nuxeo.ecm.user.invite",
          "org.nuxeo.ecm.user.registration",
          "org.nuxeo.ecm.user.registration.web"
        ],
        "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user",
        "id": "grp:org.nuxeo.ecm.user",
        "name": "org.nuxeo.ecm.user",
        "parentIds": [
          "grp:org.nuxeo.ecm.platform"
        ],
        "readmes": [],
        "version": "2021.64"
      },
      "bundleId": "org.nuxeo.ecm.user.center.profile.jsf",
      "components": [
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.actions.ActionService--actions",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.actions/Contributions/org.nuxeo.ecm.user.center.profile.actions--actions",
              "id": "org.nuxeo.ecm.user.center.profile.actions--actions",
              "registrationOrder": 53,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.actions.ActionService",
                "name": "org.nuxeo.ecm.platform.actions.ActionService",
                "type": "service"
              },
              "version": "2021.64.6",
              "xml": "<extension point=\"actions\" target=\"org.nuxeo.ecm.platform.actions.ActionService\">\n\n    <action icon=\"/icons/profile.png\" id=\"Profile\" label=\"user.center.profile\" link=\"/user_center_fragment.xhtml\" order=\"20\">\n      <category>USER_CENTER</category>\n      <filter-id>not_anonymous</filter-id>\n      <filter-id>not_transient_user</filter-id>\n    </action>\n\n    <action id=\"ProfileView\" label=\"user.center.profile.tab.view\" link=\"/incl/userprofile/user_profile.xhtml\" order=\"10\">\n      <category>Profile_sub_tab</category>\n    </action>\n\n    <action icon=\"/icons/preferences.png\" id=\"Preferences\" label=\"user.center.preferences\" link=\"/user_center_fragment.xhtml\" order=\"30\">\n      <category>USER_CENTER</category>\n      <filter-id>not_anonymous</filter-id>\n      <filter-id>not_transient_user</filter-id>\n    </action>\n\n    <action id=\"PreferencesView\" label=\"user.center.preferences.tab.view\" link=\"/incl/userprofile/user_preferences.xhtml\" order=\"20\">\n      <category>Preferences_sub_tab</category>\n    </action>\n\n    <action enabled=\"true\" id=\"PreferencesAction\" label=\"user.center.preferences\" link=\"#{userPreferencesActions.navigateToPreferencesPage}\" order=\"70\">\n      <category>USER_MENU_ACTIONS</category>\n      <filter-id>not_transient_user</filter-id>\n    </action>\n\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.actions",
          "name": "org.nuxeo.ecm.user.center.profile.actions",
          "requirements": [],
          "resolutionOrder": 927,
          "services": [],
          "startOrder": 628,
          "version": "2021.64.6",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.user.center.profile.actions\">\n\n  <extension target=\"org.nuxeo.ecm.platform.actions.ActionService\"\n    point=\"actions\">\n\n    <action id=\"Profile\" link=\"/user_center_fragment.xhtml\" label=\"user.center.profile\"\n      icon=\"/icons/profile.png\" order=\"20\">\n      <category>USER_CENTER</category>\n      <filter-id>not_anonymous</filter-id>\n      <filter-id>not_transient_user</filter-id>\n    </action>\n\n    <action id=\"ProfileView\" link=\"/incl/userprofile/user_profile.xhtml\"\n      label=\"user.center.profile.tab.view\" order=\"10\">\n      <category>Profile_sub_tab</category>\n    </action>\n\n    <action id=\"Preferences\" link=\"/user_center_fragment.xhtml\"\n      label=\"user.center.preferences\" icon=\"/icons/preferences.png\"\n      order=\"30\">\n      <category>USER_CENTER</category>\n      <filter-id>not_anonymous</filter-id>\n      <filter-id>not_transient_user</filter-id>\n    </action>\n\n    <action id=\"PreferencesView\" link=\"/incl/userprofile/user_preferences.xhtml\"\n      label=\"user.center.preferences.tab.view\" order=\"20\">\n      <category>Preferences_sub_tab</category>\n    </action>\n\n    <action id=\"PreferencesAction\" enabled=\"true\" label=\"user.center.preferences\"\n      link=\"#{userPreferencesActions.navigateToPreferencesPage}\"\n      order=\"70\">\n      <category>USER_MENU_ACTIONS</category>\n      <filter-id>not_transient_user</filter-id>\n    </action>\n\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/actions-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager--widgettypes",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.layouts/Contributions/org.nuxeo.ecm.user.center.profile.layouts--widgettypes",
              "id": "org.nuxeo.ecm.user.center.profile.layouts--widgettypes",
              "registrationOrder": 28,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "name": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "type": "service"
              },
              "version": "2021.64.6",
              "xml": "<extension point=\"widgettypes\" target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\">\n    <widgetType name=\"summary_user_profile\">\n      <configuration>\n        <sinceVersion>5.5</sinceVersion>\n        <deprecatedVersion>5.9.2</deprecatedVersion>\n        <title>User Profile Summary</title>\n        <description>\n          <p>This widget displays the user profile layout.</p>\n        </description>\n        <categories>\n          <category>configuration_not_ready</category>\n        </categories>\n        <properties>\n          <defaultValues mode=\"any\">\n            <property name=\"name\">user,userprofile</property>\n          </defaultValues>\n        </properties>\n        <supportedModes>\n          <mode>view</mode>\n        </supportedModes>\n        <!-- no configurable properties -->\n      </configuration>\n      <handler-class>\n        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.LayoutWidgetTypeHandler\n      </handler-class>\n    </widgetType>\n\n    <widgetType name=\"avatar\">\n      <configuration>\n        <sinceVersion>5.5</sinceVersion>\n        <title>User Profile Avatar</title>\n        <description>\n          Widget allowing to upload a picture for the user\n          avatar.\n        </description>\n        <categories>\n          <category>configuration_not_ready</category>\n        </categories>\n      </configuration>\n      <handler-class>\n        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler\n      </handler-class>\n      <property name=\"template\">\n        /widgets/avatar_widget_template.xhtml\n      </property>\n    </widgetType>\n    <widgetType name=\"summary_user_preferences\">\n      <configuration>\n        <sinceVersion>5.6</sinceVersion>\n        <title>User Profile Summary</title>\n        <description>\n          <p>This widget displays the user preferences layout.</p>\n        </description>\n        <categories>\n          <category>configuration_not_ready</category>\n        </categories>\n        <supportedModes>\n          <mode>view</mode>\n        </supportedModes>\n        <!-- no configurable properties -->\n      </configuration>\n      <handler-class>\n        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler\n      </handler-class>\n      <property name=\"template\">\n        /widgets/summary/user_preferences_widget_template.xhtml\n      </property>\n    </widgetType>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager--widgets",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.layouts/Contributions/org.nuxeo.ecm.user.center.profile.layouts--widgets",
              "id": "org.nuxeo.ecm.user.center.profile.layouts--widgets",
              "registrationOrder": 37,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "name": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "type": "service"
              },
              "version": "2021.64.6",
              "xml": "<extension point=\"widgets\" target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\">\n\n    <widget name=\"summary_user_profile\" type=\"summary_user_profile\"/>\n\n    <widget name=\"summary_user_preferences\" type=\"summary_user_preferences\"/>\n\n    <widget name=\"avatar\" type=\"avatar\">\n      <labels>\n        <label mode=\"any\">label.userprofile.avatar</label>\n      </labels>\n      <translated>true</translated>\n      <helpLabels>\n        <label mode=\"edit\">\n          helplabel.userprofile.avatar\n        </label>\n      </helpLabels>\n      <fields>\n        <field/>\n        <field>userprofile:avatar</field>\n      </fields>\n      <properties mode=\"any\">\n        <property name=\"file_property_name\">userprofile:avatar</property>\n      </properties>\n    </widget>\n\n    <widget name=\"birthdate\" type=\"datetime\">\n      <labels>\n        <label mode=\"any\">label.userprofile.birthdate</label>\n      </labels>\n      <translated>true</translated>\n      <helpLabels>\n        <label mode=\"edit\">\n          helplabel.userprofile.birthdate\n        </label>\n      </helpLabels>\n      <fields>\n        <field>userprofile:birthdate</field>\n      </fields>\n      <properties widgetMode=\"any\">\n        <property name=\"pattern\">#{nxu:basicDateFormatter()}</property>\n      </properties>\n      <properties widgetMode=\"edit\">\n        <property name=\"format\">#{nxu:basicDateFormatter()}</property>\n      </properties>\n    </widget>\n\n    <widget name=\"phonenumber\" type=\"text\">\n      <labels>\n        <label mode=\"any\">label.userprofile.phonenumber</label>\n      </labels>\n      <translated>true</translated>\n      <fields>\n        <field>userprofile:phonenumber</field>\n      </fields>\n      <properties widgetMode=\"edit\">\n        <property name=\"styleClass\">dataInputText</property>\n      </properties>\n    </widget>\n\n    <widget name=\"gender\" type=\"template\">\n      <labels>\n        <label mode=\"any\">label.userprofile.gender</label>\n      </labels>\n      <translated>true</translated>\n      <fields>\n        <field>userprofile:gender</field>\n      </fields>\n      <properties mode=\"any\">\n        <property name=\"template\">/widgets/gender_widget_template.xhtml\n        </property>\n      </properties>\n    </widget>\n\n    <widget name=\"locale_view\" type=\"text\">\n      <labels>\n        <label mode=\"any\">label.userpreferences.locale</label>\n      </labels>\n      <translated>true</translated>\n      <fields>\n        <field>userprofile:locale</field>\n      </fields>\n      <widgetModes>\n        <mode value=\"view\">view</mode>\n        <mode value=\"any\">hidden</mode>\n      </widgetModes>\n    </widget>\n\n    <widget name=\"locale\" type=\"selectOneMenu\">\n      <labels>\n        <label mode=\"any\">label.userpreferences.locale</label>\n      </labels>\n      <translated>true</translated>\n      <fields>\n        <field>userprofile:locale</field>\n      </fields>\n      <properties widgetMode=\"any\">\n        <property name=\"notDisplayDefaultOption\">false</property>\n      </properties>\n      <selectOptions>\n        <options itemLabel=\"#{item.label}\" itemValue=\"#{item.value}\" ordering=\"label\" value=\"#{localeSelector.supportedLocales}\" var=\"item\"/>\n      </selectOptions>\n      <widgetModes>\n        <mode value=\"edit\">edit</mode>\n        <mode value=\"any\">hidden</mode>\n      </widgetModes>\n    </widget>\n\n    <widget name=\"timezone\" type=\"template\">\n      <labels>\n        <label mode=\"any\">label.userpreferences.timezone</label>\n      </labels>\n      <translated>true</translated>\n      <widgetModes>\n        <mode value=\"view\">view</mode>\n        <mode value=\"any\">hidden</mode>\n      </widgetModes>\n      <properties mode=\"any\">\n        <property name=\"template\">/widgets/timezone_widget_template.xhtml\n        </property>\n      </properties>\n    </widget>\n\n    <widget name=\"userProfile\" type=\"layout\">\n      <properties widgetMode=\"any\">\n        <property name=\"name\">userprofile</property>\n      </properties>\n    </widget>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.actions.ActionService--actions",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.layouts/Contributions/org.nuxeo.ecm.user.center.profile.layouts--actions",
              "id": "org.nuxeo.ecm.user.center.profile.layouts--actions",
              "registrationOrder": 54,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.actions.ActionService",
                "name": "org.nuxeo.ecm.platform.actions.ActionService",
                "type": "service"
              },
              "version": "2021.64.6",
              "xml": "<extension point=\"actions\" target=\"org.nuxeo.ecm.platform.actions.ActionService\">\n\n    <action id=\"userProfile\" order=\"200\" type=\"widget\">\n      <category>USER_PANEL_LEFT</category>\n      <properties>\n        <property name=\"widgetName\">userProfile</property>\n      </properties>\n    </action>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager--layouts",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.layouts/Contributions/org.nuxeo.ecm.user.center.profile.layouts--layouts",
              "id": "org.nuxeo.ecm.user.center.profile.layouts--layouts",
              "registrationOrder": 35,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "name": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "type": "service"
              },
              "version": "2021.64.6",
              "xml": "<extension point=\"layouts\" target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\">\n\n    <!-- deprecated since 5.9.2, use a grid layout now -->\n    <layout name=\"summary_user_profile_layout\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_summary_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>summary_user_profile</widget>\n        </row>\n      </rows>\n    </layout>\n\n    <layout name=\"userprofile\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>avatar</widget>\n        </row>\n        <row>\n          <widget>birthdate</widget>\n        </row>\n        <row>\n          <widget>phonenumber</widget>\n        </row>\n        <row>\n          <widget>gender</widget>\n        </row>\n      </rows>\n    </layout>\n\n    <layout name=\"summary_user_preferences_layout\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_summary_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>summary_user_preferences</widget>\n        </row>\n      </rows>\n    </layout>\n\n    <layout name=\"userpreferences\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>locale_view</widget>\n        </row>\n        <row>\n          <widget>locale</widget>\n        </row>\n        <row>\n          <widget>timezone</widget>\n        </row>\n      </rows>\n    </layout>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.layouts",
          "name": "org.nuxeo.ecm.user.center.profile.layouts",
          "requirements": [
            "org.nuxeo.ecm.platform.forms.layouts.webapp"
          ],
          "resolutionOrder": 928,
          "services": [],
          "startOrder": 633,
          "version": "2021.64.6",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.user.center.profile.layouts\">\n\n  <require>org.nuxeo.ecm.platform.forms.layouts.webapp</require>\n\n  <extension target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\"\n    point=\"widgettypes\">\n    <widgetType name=\"summary_user_profile\">\n      <configuration>\n        <sinceVersion>5.5</sinceVersion>\n        <deprecatedVersion>5.9.2</deprecatedVersion>\n        <title>User Profile Summary</title>\n        <description>\n          <p>This widget displays the user profile layout.</p>\n        </description>\n        <categories>\n          <category>configuration_not_ready</category>\n        </categories>\n        <properties>\n          <defaultValues mode=\"any\">\n            <property name=\"name\">user,userprofile</property>\n          </defaultValues>\n        </properties>\n        <supportedModes>\n          <mode>view</mode>\n        </supportedModes>\n        <!-- no configurable properties -->\n      </configuration>\n      <handler-class>\n        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.LayoutWidgetTypeHandler\n      </handler-class>\n    </widgetType>\n\n    <widgetType name=\"avatar\">\n      <configuration>\n        <sinceVersion>5.5</sinceVersion>\n        <title>User Profile Avatar</title>\n        <description>\n          Widget allowing to upload a picture for the user\n          avatar.\n        </description>\n        <categories>\n          <category>configuration_not_ready</category>\n        </categories>\n      </configuration>\n      <handler-class>\n        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler\n      </handler-class>\n      <property name=\"template\">\n        /widgets/avatar_widget_template.xhtml\n      </property>\n    </widgetType>\n    <widgetType name=\"summary_user_preferences\">\n      <configuration>\n        <sinceVersion>5.6</sinceVersion>\n        <title>User Profile Summary</title>\n        <description>\n          <p>This widget displays the user preferences layout.</p>\n        </description>\n        <categories>\n          <category>configuration_not_ready</category>\n        </categories>\n        <supportedModes>\n          <mode>view</mode>\n        </supportedModes>\n        <!-- no configurable properties -->\n      </configuration>\n      <handler-class>\n        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler\n      </handler-class>\n      <property name=\"template\">\n        /widgets/summary/user_preferences_widget_template.xhtml\n      </property>\n    </widgetType>\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\"\n    point=\"widgets\">\n\n    <widget name=\"summary_user_profile\" type=\"summary_user_profile\" />\n\n    <widget name=\"summary_user_preferences\" type=\"summary_user_preferences\" />\n\n    <widget name=\"avatar\" type=\"avatar\">\n      <labels>\n        <label mode=\"any\">label.userprofile.avatar</label>\n      </labels>\n      <translated>true</translated>\n      <helpLabels>\n        <label mode=\"edit\">\n          helplabel.userprofile.avatar\n        </label>\n      </helpLabels>\n      <fields>\n        <field></field>\n        <field>userprofile:avatar</field>\n      </fields>\n      <properties mode=\"any\">\n        <property name=\"file_property_name\">userprofile:avatar</property>\n      </properties>\n    </widget>\n\n    <widget name=\"birthdate\" type=\"datetime\">\n      <labels>\n        <label mode=\"any\">label.userprofile.birthdate</label>\n      </labels>\n      <translated>true</translated>\n      <helpLabels>\n        <label mode=\"edit\">\n          helplabel.userprofile.birthdate\n        </label>\n      </helpLabels>\n      <fields>\n        <field>userprofile:birthdate</field>\n      </fields>\n      <properties widgetMode=\"any\">\n        <property name=\"pattern\">#{nxu:basicDateFormatter()}</property>\n      </properties>\n      <properties widgetMode=\"edit\">\n        <property name=\"format\">#{nxu:basicDateFormatter()}</property>\n      </properties>\n    </widget>\n\n    <widget name=\"phonenumber\" type=\"text\">\n      <labels>\n        <label mode=\"any\">label.userprofile.phonenumber</label>\n      </labels>\n      <translated>true</translated>\n      <fields>\n        <field>userprofile:phonenumber</field>\n      </fields>\n      <properties widgetMode=\"edit\">\n        <property name=\"styleClass\">dataInputText</property>\n      </properties>\n    </widget>\n\n    <widget name=\"gender\" type=\"template\">\n      <labels>\n        <label mode=\"any\">label.userprofile.gender</label>\n      </labels>\n      <translated>true</translated>\n      <fields>\n        <field>userprofile:gender</field>\n      </fields>\n      <properties mode=\"any\">\n        <property name=\"template\">/widgets/gender_widget_template.xhtml\n        </property>\n      </properties>\n    </widget>\n\n    <widget name=\"locale_view\" type=\"text\">\n      <labels>\n        <label mode=\"any\">label.userpreferences.locale</label>\n      </labels>\n      <translated>true</translated>\n      <fields>\n        <field>userprofile:locale</field>\n      </fields>\n      <widgetModes>\n        <mode value=\"view\">view</mode>\n        <mode value=\"any\">hidden</mode>\n      </widgetModes>\n    </widget>\n\n    <widget name=\"locale\" type=\"selectOneMenu\">\n      <labels>\n        <label mode=\"any\">label.userpreferences.locale</label>\n      </labels>\n      <translated>true</translated>\n      <fields>\n        <field>userprofile:locale</field>\n      </fields>\n      <properties widgetMode=\"any\">\n        <property name=\"notDisplayDefaultOption\">false</property>\n      </properties>\n      <selectOptions>\n        <options value=\"#{localeSelector.supportedLocales}\" var=\"item\"\n          itemValue=\"#{item.value}\" itemLabel=\"#{item.label}\" ordering=\"label\" />\n      </selectOptions>\n      <widgetModes>\n        <mode value=\"edit\">edit</mode>\n        <mode value=\"any\">hidden</mode>\n      </widgetModes>\n    </widget>\n\n    <widget name=\"timezone\" type=\"template\">\n      <labels>\n        <label mode=\"any\">label.userpreferences.timezone</label>\n      </labels>\n      <translated>true</translated>\n      <widgetModes>\n        <mode value=\"view\">view</mode>\n        <mode value=\"any\">hidden</mode>\n      </widgetModes>\n      <properties mode=\"any\">\n        <property name=\"template\">/widgets/timezone_widget_template.xhtml\n        </property>\n      </properties>\n    </widget>\n\n    <widget name=\"userProfile\" type=\"layout\">\n      <properties widgetMode=\"any\">\n        <property name=\"name\">userprofile</property>\n      </properties>\n    </widget>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.platform.actions.ActionService\"\n    point=\"actions\">\n\n    <action id=\"userProfile\" type=\"widget\" order=\"200\">\n      <category>USER_PANEL_LEFT</category>\n      <properties>\n        <property name=\"widgetName\">userProfile</property>\n      </properties>\n    </action>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\"\n    point=\"layouts\">\n\n    <!-- deprecated since 5.9.2, use a grid layout now -->\n    <layout name=\"summary_user_profile_layout\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_summary_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>summary_user_profile</widget>\n        </row>\n      </rows>\n    </layout>\n\n    <layout name=\"userprofile\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>avatar</widget>\n        </row>\n        <row>\n          <widget>birthdate</widget>\n        </row>\n        <row>\n          <widget>phonenumber</widget>\n        </row>\n        <row>\n          <widget>gender</widget>\n        </row>\n      </rows>\n    </layout>\n\n    <layout name=\"summary_user_preferences_layout\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_summary_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>summary_user_preferences</widget>\n        </row>\n      </rows>\n    </layout>\n\n    <layout name=\"userpreferences\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>locale_view</widget>\n        </row>\n        <row>\n          <widget>locale</widget>\n        </row>\n        <row>\n          <widget>timezone</widget>\n        </row>\n      </rows>\n    </layout>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/layouts-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.event.EventServiceComponent--listener",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.jsf.listeners.contrib/Contributions/org.nuxeo.ecm.user.center.profile.jsf.listeners.contrib--listener",
              "id": "org.nuxeo.ecm.user.center.profile.jsf.listeners.contrib--listener",
              "registrationOrder": 53,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.event.EventServiceComponent",
                "name": "org.nuxeo.ecm.core.event.EventServiceComponent",
                "type": "service"
              },
              "version": "2021.64.6",
              "xml": "<extension point=\"listener\" target=\"org.nuxeo.ecm.core.event.EventServiceComponent\">\n\n    <listener class=\"org.nuxeo.ecm.user.center.profile.localeProvider.UserLocaleSelectorListener\" name=\"timezoneSelector\" priority=\"200\">\n      <event>documentModified</event>\n      <event>documentCreated</event>\n    </listener>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.jsf.listeners.contrib",
          "name": "org.nuxeo.ecm.user.center.profile.jsf.listeners.contrib",
          "requirements": [],
          "resolutionOrder": 929,
          "services": [],
          "startOrder": 632,
          "version": "2021.64.6",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.user.center.profile.jsf.listeners.contrib\">\n  <extension target=\"org.nuxeo.ecm.core.event.EventServiceComponent\"\n    point=\"listener\">\n\n    <listener name=\"timezoneSelector\"\n      class=\"org.nuxeo.ecm.user.center.profile.localeProvider.UserLocaleSelectorListener\"\n      priority=\"200\">\n      <event>documentModified</event>\n      <event>documentCreated</event>\n    </listener>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/listeners-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.theme.styling.service--pages",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.theme/Contributions/org.nuxeo.ecm.user.center.profile.theme--pages",
              "id": "org.nuxeo.ecm.user.center.profile.theme--pages",
              "registrationOrder": 5,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.theme.styling.service",
                "name": "org.nuxeo.theme.styling.service",
                "type": "service"
              },
              "version": "2021.64.6",
              "xml": "<extension point=\"pages\" target=\"org.nuxeo.theme.styling.service\">\n\n    <themePage name=\"userCenter/default\">\n      <resources append=\"true\">\n        <resource>user_profile.scss</resource>\n      </resources>\n    </themePage>\n    <themePage name=\"admin/default\">\n      <resources append=\"true\">\n        <resource>user_profile.scss</resource>\n      </resources>\n    </themePage>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.WebResources--resources",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.theme/Contributions/org.nuxeo.ecm.user.center.profile.theme--resources",
              "id": "org.nuxeo.ecm.user.center.profile.theme--resources",
              "registrationOrder": 15,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.WebResources",
                "name": "org.nuxeo.ecm.platform.WebResources",
                "type": "service"
              },
              "version": "2021.64.6",
              "xml": "<extension point=\"resources\" target=\"org.nuxeo.ecm.platform.WebResources\">\n\n    <resource name=\"user_profile.scss\" type=\"css\">\n      <path>themes/sass/user_profile.scss</path>\n      <processors>\n        <processor>sassCss</processor>\n      </processors>\n    </resource>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf/org.nuxeo.ecm.user.center.profile.theme",
          "name": "org.nuxeo.ecm.user.center.profile.theme",
          "requirements": [
            "org.nuxeo.ecm.user.center.theme",
            "org.nuxeo.ecm.admin.center.theme"
          ],
          "resolutionOrder": 930,
          "services": [],
          "startOrder": 637,
          "version": "2021.64.6",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.user.center.profile.theme\">\n\n  <require>org.nuxeo.ecm.user.center.theme</require>\n  <require>org.nuxeo.ecm.admin.center.theme</require>\n\n  <extension target=\"org.nuxeo.theme.styling.service\" point=\"pages\">\n\n    <themePage name=\"userCenter/default\">\n      <resources append=\"true\">\n        <resource>user_profile.scss</resource>\n      </resources>\n    </themePage>\n    <themePage name=\"admin/default\">\n      <resources append=\"true\">\n        <resource>user_profile.scss</resource>\n      </resources>\n    </themePage>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.platform.WebResources\" point=\"resources\">\n\n    <resource name=\"user_profile.scss\" type=\"css\">\n      <path>themes/sass/user_profile.scss</path>\n      <processors>\n        <processor>sassCss</processor>\n      </processors>\n    </resource>\n\n  </extension>\n\n</component>",
          "xmlFileName": "/OSGI-INF/theme-contrib.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-user-profile-jsf-2021.64.6.jar",
      "groupId": "org.nuxeo.ecm.platform",
      "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.user/org.nuxeo.ecm.user.center.profile.jsf",
      "id": "org.nuxeo.ecm.user.center.profile.jsf",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: root\r\nBuild-Jdk: 11.0.24\r\nBundle-ManifestVersion: 1\r\nBundle-Version: 0.0.1\r\nBundle-Name: Nuxeo User Profile JSF UI\r\nBundle-SymbolicName: org.nuxeo.ecm.user.center.profile.jsf;singleton:=\r\n true\r\nBundle-Vendor: Nuxeo\r\nNuxeo-Component: OSGI-INF/actions-contrib.xml,OSGI-INF/layouts-contrib\r\n .xml,OSGI-INF/listeners-contrib.xml,OSGI-INF/theme-contrib.xml\r\n\r\n",
      "maxResolutionOrder": 930,
      "minResolutionOrder": 927,
      "packages": [
        "nuxeo-jsf-ui"
      ],
      "requirements": [],
      "version": "2021.64.6"
    }
  ],
  "creationDate": 1734363736555,
  "key": "Nuxeo Platform-2021.64",
  "name": "Nuxeo Platform",
  "operations": [],
  "packages": [
    {
      "@type": "NXPackage",
      "bundles": [
        "org.nuxeo.admin.center.analytics.dashboards",
        "org.nuxeo.admin.center.jsf",
        "org.nuxeo.admin.center.monitoring",
        "org.nuxeo.admin.center.oauth.opensocial",
        "org.nuxeo.ecm.automation.jsf",
        "org.nuxeo.elasticsearch.web",
        "org.nuxeo.ecm.localconf.web",
        "org.nuxeo.ecm.actions.jsf",
        "org.nuxeo.ecm.platform.audio.jsf",
        "org.nuxeo.ecm.platform.audit.web",
        "org.nuxeo.ecm.platform.comment.web",
        "org.nuxeo.ecm.platform.contentview.jsf",
        "org.nuxeo.ecm.directory.web",
        "org.nuxeo.ecm.platform.forms.layout.client",
        "org.nuxeo.ecm.platform.forms.layout.io",
        "org.nuxeo.ecm.platform.forms.layout.io.plugins",
        "org.nuxeo.ecm.platform.picture.jsf",
        "org.nuxeo.ecm.platform.io.web",
        "org.nuxeo.ecm.platform.login.token.jsf",
        "org.nuxeo.ecm.platform.notification.web",
        "org.nuxeo.ecm.platform.publisher.web",
        "org.nuxeo.ecm.relations.web",
        "org.nuxeo.ecm.platform.rendition.web",
        "org.nuxeo.ecm.platform.suggestbox.jsf",
        "org.nuxeo.ecm.platform.tag.web",
        "org.nuxeo.ecm.platform.task.web",
        "org.nuxeo.ecm.platform.ui.select2",
        "org.nuxeo.ecm.platform.ui",
        "org.nuxeo.ecm.platform.userworkspace.web",
        "org.nuxeo.ecm.platform.video.jsf",
        "org.nuxeo.ecm.webapp.ui",
        "org.nuxeo.ecm.webapp.base",
        "org.nuxeo.ecm.webapp.core",
        "org.nuxeo.ecm.platform.preview.jsf",
        "org.nuxeo.ecm.platform.routing.dashboard",
        "org.nuxeo.ecm.platform.routing.default.jsf",
        "org.nuxeo.ecm.platform.routing.dm",
        "org.nuxeo.ecm.platform.routing.web",
        "org.nuxeo.search.ui",
        "org.nuxeo.theme.migration",
        "org.nuxeo.ecm.user.center",
        "org.nuxeo.ecm.user.center.dashboard",
        "org.nuxeo.ecm.user.center.dashboard.jsf",
        "org.nuxeo.ecm.user.center.notification",
        "org.nuxeo.ecm.user.center.oauth",
        "org.nuxeo.ecm.user.center.profile.jsf",
        "org.nuxeo.web.resources.jsf"
      ],
      "conflicts": [],
      "dependencies": [],
      "hierarchyPath": "/nuxeo-jsf-ui-2021.64.6",
      "id": "nuxeo-jsf-ui-2021.64.6",
      "name": "nuxeo-jsf-ui",
      "optionalDependencies": [],
      "packageType": "addon",
      "title": "Nuxeo JSF UI",
      "version": "2021.64.6"
    }
  ],
  "pluginSnapshots": {},
  "releaseDate": 1734363736555,
  "version": "2021.64"
}