fair-plugin/bin/update-browsers.sh
Ryan McCue 583d434505 Initial export of the repository
Signed-off-by: Ryan McCue <me@ryanmccue.info>
2025-06-05 11:51:30 +02:00

26 lines
868 B
Bash
Executable file

#!/bin/bash
#
# Update the browser regex in the version check script.
#
# Uses a browserslist query to generate this data.
set -eo pipefail
BROWSER_QUERY="defaults, unreleased versions"
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
VERSION_CHECK_FOO="$SCRIPT_DIR/../inc/version-check/foo.txt"
VERSION_CHECK_FILE="$SCRIPT_DIR/../inc/version-check/namespace.php"
LINE_START="const BROWSER_REGEX = ";
echo "Fetching regex for query: '$BROWSER_QUERY'" >&2
REGEX=$(npx browserslist-useragent-regexp "$BROWSER_QUERY")
echo " $REGEX" >&2
# Double-escape backslashes.
ESCAPED="$(printf '%s\n' "$REGEX" | sed 's/\\/\\\\/g')"
# Replace the line in the file.
echo "Updating $VERSION_CHECK_FILE" >&2
sed -i.bak "s#$LINE_START.*#$LINE_START'$ESCAPED';#g" "$VERSION_CHECK_FILE"
echo "Updated! (Backup saved to $VERSION_CHECK_FILE.bak)" >&2