Plone 6 classic custom add/edit form

I was trying to change the Title label on Add content form by injecting some javascripts.

I followed from this doc but doesn't seem to work on Plone6. (works on my other Plone4)
https://docs.plone.org/4/en/external/plone.app.dexterity/docs/advanced/custom-add-and-edit-forms.html

configure.zcml

  <adapter
    for="Products.CMFCore.interfaces.IFolderish
         zope.publisher.interfaces.browser.IDefaultBrowserLayer
         plone.dexterity.interfaces.IDexterityFTI"
    provides="zope.publisher.interfaces.browser.IBrowserPage"
    factory=".contact_view.AddView"
    name="mypack.core.content.contact"
    />
  <class class=".contact_view.AddView">
    <require
      permission="cmf.AddPortalContent"
      interface="zope.publisher.interfaces.browser.IBrowserPage"
      />
  </class>

contact_view.py

class AddForm(DefaultAddForm):
    portal_type = 'Contact'
    template = ViewPageTemplateFile('contact_add.pt')

    def __init__(self, context, request):
        print('=========AddForm', context)
        super(AddForm, self).__init__(context, request)


class AddView(DefaultAddView):
    form = AddForm

Thanks in advance.

This does the job in plone6 for me:

<!-- collection.xml in profile/default/types-->

<!--
Name of add_view_expression must be match with the Name of the Adapter 
-->

<!-- View information -->
<property name="add_view_expr">string:${folder_url}/++add++Collection</property>
<!-- configure.zcml -->
<!-- Register custom AddForm for Collection Type -->
  <adapter
    for="Products.CMFCore.interfaces.IFolderish
      zope.publisher.interfaces.browser.IDefaultBrowserLayer
      plone.dexterity.interfaces.IDexterityFTI"
    name="Collection"
    provides="zope.publisher.interfaces.browser.IBrowserPage"
    factory=".views.CollectionAddFormView" />
# yourformviews.py
from plone.dexterity.browser.add import DefaultAddView
from plone.dexterity.browser.add import DefaultAddForm

class CollectionAddFormView(DefaultAddView):

    form = CollectionAddForm

    index = ViewPageTemplateFile("templates/collection_add_edit_form.pt")

class CollectionAddForm(DefaultAddForm):

    portal_type = "Collection"

   def updateFields(self):
        super(CollectionAddForm, self).updateFields()

   def update(self):
        super(CollectionAddForm, self).update()

Yes this solved the issue, adapter name must match the content type name, thanks.

Basically I am trying to reuse Title field as Name.
My changes as below, no more javascript injects, z3c.form is powerful:

configure.zcml

  <adapter
    for="Products.CMFCore.interfaces.IFolderish
         zope.publisher.interfaces.browser.IDefaultBrowserLayer
         plone.dexterity.interfaces.IDexterityFTI"
    provides="zope.publisher.interfaces.browser.IBrowserPage"
    factory=".contact_view.AddView"
    name="Contact"
    />
  <class class=".contact_view.AddView">
    <require
      permission="cmf.AddPortalContent"
      interface="zope.publisher.interfaces.browser.IBrowserPage"
      />
  </class>

contact_view.py

class AddForm(DefaultAddForm):
    portal_type = 'Contact'
    
    def __init__(self, context, request):
        super(AddForm, self).__init__(context, request)

    def updateFields(self):
        super(AddForm, self).updateFields()
        
    def updateWidgets(self):
        super(AddForm, self).updateWidgets()
        self.widgets['IBasic.title'].field.title = 'Name'

    def update(self):
        super(AddForm, self).update()

        
class AddView(DefaultAddView):
    form = AddForm