- 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
17 lines
713 B
JavaScript
17 lines
713 B
JavaScript
import { safeToUpperCase, safeToLowerCase, BigInt, Error } from '../utils/globals.js';
|
|
import { MixedCaseArbitrary } from './_internals/MixedCaseArbitrary.js';
|
|
function defaultToggleCase(rawChar) {
|
|
const upper = safeToUpperCase(rawChar);
|
|
if (upper !== rawChar)
|
|
return upper;
|
|
return safeToLowerCase(rawChar);
|
|
}
|
|
export function mixedCase(stringArb, constraints) {
|
|
if (typeof BigInt === 'undefined') {
|
|
throw new Error(`mixedCase requires BigInt support`);
|
|
}
|
|
const toggleCase = (constraints && constraints.toggleCase) || defaultToggleCase;
|
|
const untoggleAll = constraints && constraints.untoggleAll;
|
|
return new MixedCaseArbitrary(stringArb, toggleCase, untoggleAll);
|
|
}
|