Files
nimbus/resources/js/config/key-value-parameters.ts
Mazen Touati c2aa6895d6 feat: initial alpha release
This commit represents the complete foundational codebase for Nimbus Alpha, a Laravel package that provides an integrated, in-browser API client with automatic schema discovery from validation rules.

IMPORTANT: This is a squashed commit representing the culmination of extensive development, refactoring, and architectural iterations. All previous commit history has been intentionally removed to provide a clean foundation for the public alpha release.

The development of Nimbus involved:
- Multiple architectural refactorings
- Significant structural changes
- Experimental approaches that were later abandoned
- Learning iterations on the core concept
- Migration between different design patterns

This messy history would:
- Make git blame confusing and unhelpful
- Obscure the actual intent behind current implementation
- Create noise when reviewing changes
- Reference deleted or refactored code

If git blame brought you to this commit, it means you're looking at code that was part of the initial alpha release. Here's what to do:

1. Check Current Documentation
   - See `/wiki/contribution-guide/README.md` for architecture details
   - Review the specific module's README if available
   - Look for inline comments explaining the reasoning

2. Look for Related Code
   - Check other files in the same module
   - Look for tests that demonstrate intended behavior
   - Review interfaces and contracts

3. Context Matters
   - This code may have been updated since alpha
   - Check git log for subsequent changes to this file
   - Look for related issues or PRs on GitHub

---

This commit marks the beginning of Nimbus's public journey. All future
commits will build upon this foundation with clear, traceable history.

Thank you for using or contributing to Nimbus!
2025-10-23 00:16:28 +02:00

29 lines
932 B
TypeScript

/**
* Key-value parameters configuration
*
* This configuration defines timing settings for parameter manipulation
* and synchronization to provide smooth user interactions.
*/
export const keyValueParametersConfig = {
/**
* Deletion confirmation timeout in milliseconds (1.2 seconds).
*
* Time window for users to cancel parameter deletion after clicking delete.
* Provides safety mechanism to prevent accidental data loss.
*/
DELETION_CONFIRMATION_TIMEOUT: 1200,
/**
* Sync debounce delay in milliseconds (300ms).
*
* Delay before synchronizing parameter changes back to the parent model.
* Prevents excessive updates during rapid user input and improves performance.
*/
SYNC_DEBOUNCE_DELAY: 300,
} satisfies KeyValueParametersConfig;
export interface KeyValueParametersConfig {
DELETION_CONFIRMATION_TIMEOUT: number;
SYNC_DEBOUNCE_DELAY: number;
}