ReRegisterHooks constructor

ReRegisterHooks({
  1. String? pathToHooksDir,
})

Implementation

ReRegisterHooks({String? pathToHooksDir})
  : super(
      name: 'Re-register hooks',
      include: [
        if (pathToHooksDir case final String path)
          Glob('$path/**.{dart,sh}')
        else
          Glob('hooks/**.{dart,sh}'),
      ],
      commands: (_) {
        final changeDir = switch (pathToHooksDir) {
          String() => 'cd $pathToHooksDir || exit 1;',
          _ => '',
        };

        const package = 'hooksman';

        return [
          '''
# Running hooksman register
$changeDir
if dart pub deps | grep -q "$package "; then
dart run hooksman register
elif dart pub global list | grep -q "^$package "; then
dart run hooksman register
else
echo "Not installed"
exit 1
fi
''',
        ];
      },
    );