- Delete old Vite+Svelte frontend - Initialize new SvelteKit project with TypeScript - Configure Tailwind CSS v4 + DaisyUI - Implement JWT authentication with auto-refresh - Create login page with form validation (Zod) - Add protected route guards - Update Docker configuration for single-stage build - Add E2E tests with Playwright (6/11 passing) - Fix Svelte 5 reactivity with $state() runes Known issues: - 5 E2E tests failing (timing/async issues) - Token refresh implementation needs debugging - Validation error display timing
16 lines
555 B
JavaScript
16 lines
555 B
JavaScript
import assertString from './util/assertString';
|
|
import { CountryCodes } from './isISO31661Alpha2';
|
|
|
|
// https://en.wikipedia.org/wiki/ISO_9362
|
|
var isBICReg = /^[A-Za-z]{6}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$/;
|
|
export default function isBIC(str) {
|
|
assertString(str);
|
|
|
|
// toUpperCase() should be removed when a new major version goes out that changes
|
|
// the regex to [A-Z] (per the spec).
|
|
var countryCode = str.slice(4, 6).toUpperCase();
|
|
if (!CountryCodes.has(countryCode) && countryCode !== 'XK') {
|
|
return false;
|
|
}
|
|
return isBICReg.test(str);
|
|
} |