* It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z'] * * @param {string} name - The name of the property to get. * * @returns An array of strings.
(name)
| 10 | * @returns An array of strings. |
| 11 | */ |
| 12 | function parsePropPath(name) { |
| 13 | // foo[x][y][z] |
| 14 | // foo.x.y.z |
| 15 | // foo-x-y-z |
| 16 | // foo x y z |
| 17 | return utils.matchAll(/\w+|\[(\w*)]/g, name).map(match => { |
| 18 | return match[0] === '[]' ? '' : match[1] || match[0]; |
| 19 | }); |
| 20 | } |
| 21 | |
| 22 | /** |
| 23 | * Convert an array to an object. |