PHP 7.4.33
Preview: matchSubpathPattern.js.flow Size: 958 B
/var/www/uibuilder.cmshelp.dk/httpdocs/node_modules/metro-resolver/src/utils/matchSubpathPattern.js.flow
/**
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 * @flow strict
 * @format
 * @oncall react_native
 */

/**
 * If a subpath pattern expands to the passed subpath, return the subpath match
 * (value to substitute for '*'). Otherwise, return `null`.
 *
 * See https://nodejs.org/docs/latest-v19.x/api/packages.html#subpath-patterns.
 */
export function matchSubpathPattern(
  subpathPattern: string,
  subpath: string,
): string | null {
  const [patternBase, patternTrailer] = subpathPattern.split('*');

  if (
    subpath.startsWith(patternBase) &&
    (patternTrailer.length === 0 ||
      (subpath.endsWith(patternTrailer) &&
        subpath.length >= subpathPattern.length))
  ) {
    return subpath.substring(
      patternBase.length,
      subpath.length - patternTrailer.length,
    );
  }

  return null;
}

Directory Contents

Dirs: 0 × Files: 12
Name Size Perms Modified Actions
562 B lrw-r--r-- 2025-03-28 11:04:32
Edit Download
742 B lrw-r--r-- 2025-03-28 11:04:32
Edit Download
557 B lrw-r--r-- 2025-03-28 11:04:32
Edit Download
1018 B lrw-r--r-- 2025-03-28 11:04:32
Edit Download
1.61 KB lrw-r--r-- 2025-03-28 11:04:32
Edit Download
2.58 KB lrw-r--r-- 2025-03-28 11:04:32
Edit Download
565 B lrw-r--r-- 2025-03-28 11:04:32
Edit Download
958 B lrw-r--r-- 2025-03-28 11:04:32
Edit Download
1.24 KB lrw-r--r-- 2025-03-28 11:04:32
Edit Download
2.52 KB lrw-r--r-- 2025-03-28 11:04:32
Edit Download
593 B lrw-r--r-- 2025-03-28 11:04:32
Edit Download
724 B lrw-r--r-- 2025-03-28 11:04:32
Edit Download
If ZipArchive is unavailable, a .tar will be created (no compression).