bmewburn / vscode-intelephense

PHP intellisense for Visual Studio Code
https://intelephense.com
Other
1.61k stars 94 forks source link

Shortcut to folding all Attribute Block #2784

Open xsben2 opened 8 months ago

xsben2 commented 8 months ago

Feature description or problem with existing feature With Attributes (Swagger-PHP in my case), I have large block of attributes. So the important code (functions themself) is lost between attributes sections.

Describe the solution you'd like Offer the possibility to fold all attributes sections with shortcut.

Additional context Exemple:

  #[OA\Get(
     path: '/api/users',
     description: "Get users",
     requestBody: new OA\RequestBody(
      content: new OA\JsonContent(
        description: "...",
        items: new OA\Items(
          example: '[{"id":3,"name": "John"}]'
        )
      )
    ),
      responses: [
          new OA\Response(response: 200, description: 'OK'),
          new OA\Response(response: 401, description: 'Not allowed'),
      ]
  )]
  public function users() { 
      //
  }

  #[OA\Get(
     path: '/api/groups',
     description: "Get groups of users",
     requestBody: new OA\RequestBody(
      content: new OA\JsonContent(
        description: "...",
        items: new OA\Items(
          example: '[{"id": 1,"name": "Group 1"}]'
        )
      )
    ),
      responses: [
          new OA\Response(response: 200, description: 'OK'),
          new OA\Response(response: 401, description: 'Not allowed'),
      ]
  )]
  public function groups() { 
      //
  }

After folding:

+#[OA\Get(
  )]
  public function users() { 
      //
  }

+#[OA\Get(
  )]
  public function groups() { 
      //
  }