This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /** | |
| * @type {EntityData} | |
| * A record structure for storing entities by their IDs and maintaining a list of all IDs. | |
| * | |
| * @template T The type of the items in the entity data. | |
| * @template K The type of the keys used to identify items. Defaults to `string`. | |
| * | |
| * @property {Record<K, T>} byId - A mapping of entity IDs to their corresponding items. | |
| * @property {K[]} allIds - An array of all entity IDs. | |
| */ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /** | |
| * arrayUnique - Removes duplicate items from an array based on a comparison function. | |
| * | |
| * @param items The array to filter. | |
| * @param compare A function to compare two items for equality. | |
| * @returns A new array with duplicate items removed. | |
| * | |
| * Usage example: | |
| * const uniqueItems = arrayUnique<Item>(items, (a, b) => a.id === b.id); | |
| */ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const naturalCompare = (a: string, b: string): number => { | |
| const locales = new Set<string>([...navigator.languages, 'en-US', 'ja-JP']); | |
| return new Intl.Collator(Array.from(locales), { | |
| sensitivity: 'variant', | |
| numeric: true, | |
| }).compare(a, b); | |
| }; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /** | |
| * A concurrency‑controlled task queue. | |
| * | |
| * It uses `eventemitter3` for signalling when all queued work has finished. | |
| * | |
| * Usage: | |
| * const queue = new TaskQueue(10); | |
| * queue.enqueue(() => doSomething()); | |
| * await queue.waitAll(); // resolves when nothing is left | |
| */ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const hasDuplicate = <T,>(items: T[], func: (a: T, b: T) => boolean = (a, b) => a === b): boolean => { | |
| return items.find((item, idx) => items.some((item2, idx2) => func(item, item2) && idx !== idx2)) != null; | |
| }; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| for cmd in docker jq; do | |
| if ! command -v ${cmd} > /dev/null; then | |
| echo "Error: ${cmd} is required." 1>&2 | |
| exit 1 | |
| fi | |
| done | |
| COMPOSE_FILE="$1" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| for cmd in docker curl jq; do | |
| if ! command -v ${cmd} > /dev/null; then | |
| echo "Error: ${cmd} is required to setup docker compose plugin." 1>&2 | |
| exit 1 | |
| fi | |
| done | |
| DOCKER_COMPOSE="${HOME}/.docker/cli-plugins/docker-compose" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| REQUIRED_COMMANDS=("skopeo" "jq" "basename") | |
| for COMMAND in "${REQUIRED_COMMANDS}"; do | |
| if ! command -v ${COMMAND} > /dev/null; then | |
| echo "Error: ${COMMAND} command is required." 1>&2 | |
| exit 2 | |
| fi | |
| done |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| # VERSION:20211203 | |
| _uid=$(id -u) | |
| if test $_uid -ne 0; then | |
| echo "Error : This script have to run as root" | |
| exit 1 | |
| fi |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <?php | |
| declare(strict_types=1); | |
| $config = new PhpCsFixer\Config(); | |
| return $config | |
| ->setRiskyAllowed(true) | |
| ->setRules([ | |
| '@Symfony' => true, |
NewerOlder