[BUG] Serialization and deserialization of optional collections produce `[null]` when `null` passed
### Describe the bug

If the model has `@CollectionOf` on optional property and `null` is passed to that property then it is coerced to an array with single `null` while previously it was not coerced and remained `null`.

Based on that discussion https://github.com/tsedio/tsed/issues/2355 seems like this is a bug.


### To Reproduce

Install version 7.20.0 

Run this snippet
```typescript
import { CollectionOf } from '@tsed/schema';
import { deserialize } from '@tsed/json-mapper';

class Model {
   @CollectionOf(String)
   public bars?: string[];
}

const payload = { bars: null };

deserialize(payload, {type: Model});
```

Re-run snippet with version 7.36.5 installed

### Expected behavior

The property should not be coerced and remain as `null`

### Code snippets

_No response_

### Repository URL example

_No response_

### OS

any

### Node version

18.17.1

### Library version

7.46.5

### Additional context

_No response_