Suppose if i have an input data like:
[
      {
      name: 'rohan',
      subName: [
        {
          name: 'rohan_abc',
          subName: [
            {
              name: 'rohan_abc_abc',
              subName: []
            }]
        },
          {
          name: 'rohan_abc',
          subName: []
        },{
          name: 'rohan_abc_abc',
          subName: []
        }]
    },
    {
      name: 'rohan',
      subName: [
        {
          name: 'rohan_abc',
          subName: [
            {
              name: 'rohan_abc_abc',
              subName: [{
                    name: 'rohan_abc_abc_abc',
                    subName: []
                  }]
            }]
        },
          {
          name: 'rohan_bcd',
          subName: []
        },{
          name: 'rohan_abc_abc',
          subName: []
        }]
    }]
The output should be like
[
  {
  name: 'rohan',
  count: 2,
  subName: [
    {
      name: 'rohan_abc',
      count: 3,
      subName: [
        {
          name: 'rohan_abc_abc',
          count: 2
          subName: [
            {
              name: 'rohan_abc_abc_abc',
              count: 1
            }]
        }]
    },
     {
      name: 'rohan_abc_abc',
      count: 2
      subName: []
    },
    {
      name: 'rohan_bcd',
      count: 1
    }]
}]
if the same name is repeated in the same layer then the count should increase. Otherwise, the count should remain 1.
In above example: rohan_abc_abc is occurred at 2 different levels so that they have different count at respective level. Hoping to get positive feedbacks. Thank you!!!
