gx
chenyc
2025-06-12 7b72ac13a83764a662159d4a49b7fffb90476ecb
1
2
3
4
5
6
7
8
9
10
11
12
'use strict';
 
/**
 * For consistency's sake, we replace positional operator `$` and array filters
 * `$[]` and `$[foo]` with `0` when looking up schema paths.
 */
 
module.exports = function cleanPositionalOperators(path) {
  return path.
    replace(/\.\$(\[[^\]]*\])?(?=\.)/g, '.0').
    replace(/\.\$(\[[^\]]*\])?$/g, '.0');
};