- 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
42 lines
978 B
JavaScript
42 lines
978 B
JavaScript
import * as Versioned from "./versioned.js";
|
|
/** @internal */
|
|
export const make = (ref, isNew) => ({
|
|
ref,
|
|
isNew,
|
|
isChanged: false,
|
|
expected: ref.versioned,
|
|
newValue: ref.versioned.value
|
|
});
|
|
export const unsafeGet = self => {
|
|
return self.newValue;
|
|
};
|
|
/** @internal */
|
|
export const unsafeSet = (self, value) => {
|
|
self.isChanged = true;
|
|
self.newValue = value;
|
|
};
|
|
/** @internal */
|
|
export const commit = self => {
|
|
self.ref.versioned = new Versioned.Versioned(self.newValue);
|
|
};
|
|
/** @internal */
|
|
export const copy = self => ({
|
|
ref: self.ref,
|
|
isNew: self.isNew,
|
|
isChanged: self.isChanged,
|
|
expected: self.expected,
|
|
newValue: self.newValue
|
|
});
|
|
/** @internal */
|
|
export const isValid = self => {
|
|
return self.ref.versioned === self.expected;
|
|
};
|
|
/** @internal */
|
|
export const isInvalid = self => {
|
|
return self.ref.versioned !== self.expected;
|
|
};
|
|
/** @internal */
|
|
export const isChanged = self => {
|
|
return self.isChanged;
|
|
};
|
|
//# sourceMappingURL=entry.js.map
|