feat: Advanced filtering system v1.4.1.2
''
This commit is contained in:
BIN
backend/.coverage
Normal file
BIN
backend/.coverage
Normal file
Binary file not shown.
@@ -59,7 +59,6 @@
|
|||||||
<button
|
<button
|
||||||
on:click={toggleMenu}
|
on:click={toggleMenu}
|
||||||
class="flex items-center space-x-2 text-gray-700 hover:text-primary-600 focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2 rounded-md p-2"
|
class="flex items-center space-x-2 text-gray-700 hover:text-primary-600 focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2 rounded-md p-2"
|
||||||
role="button"
|
|
||||||
tabindex="0"
|
tabindex="0"
|
||||||
on:keydown={(e) => e.key === 'Enter' && toggleMenu()}
|
on:keydown={(e) => e.key === 'Enter' && toggleMenu()}
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -174,5 +174,6 @@
|
|||||||
-webkit-line-clamp: 2;
|
-webkit-line-clamp: 2;
|
||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
line-clamp: 2; /* Propiedad estándar para compatibilidad */
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -214,7 +214,6 @@
|
|||||||
maxlength="6"
|
maxlength="6"
|
||||||
required
|
required
|
||||||
disabled={isLoading}
|
disabled={isLoading}
|
||||||
autofocus
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -461,8 +461,9 @@
|
|||||||
<h3 class="font-medium text-gray-900 mb-4">Información General</h3>
|
<h3 class="font-medium text-gray-900 mb-4">Información General</h3>
|
||||||
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
|
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">Razón Social</label>
|
<label class="form-label" for="business_name">Razón Social</label>
|
||||||
<input
|
<input
|
||||||
|
id="business_name"
|
||||||
type="text"
|
type="text"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
bind:value={businessProfile.business_name}
|
bind:value={businessProfile.business_name}
|
||||||
@@ -471,8 +472,9 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">Nombre Comercial</label>
|
<label class="form-label" for="commercial_name">Nombre Comercial</label>
|
||||||
<input
|
<input
|
||||||
|
id="commercial_name"
|
||||||
type="text"
|
type="text"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
bind:value={businessProfile.commercial_name}
|
bind:value={businessProfile.commercial_name}
|
||||||
@@ -481,8 +483,9 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">Clave de Cliente</label>
|
<label class="form-label" for="client_code">Clave de Cliente</label>
|
||||||
<input
|
<input
|
||||||
|
id="client_code"
|
||||||
type="text"
|
type="text"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
bind:value={businessProfile.client_code}
|
bind:value={businessProfile.client_code}
|
||||||
@@ -491,7 +494,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">Tipo de Cliente</label>
|
<label class="form-label" for="client_type">Tipo de Cliente</label>
|
||||||
<select class="form-input" bind:value={businessProfile.client_type}>
|
<select class="form-input" bind:value={businessProfile.client_type}>
|
||||||
<option value="">Seleccionar...</option>
|
<option value="">Seleccionar...</option>
|
||||||
<option value="corporativo">Corporativo</option>
|
<option value="corporativo">Corporativo</option>
|
||||||
@@ -503,8 +506,9 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">RFC</label>
|
<label class="form-label" for="rfc">RFC</label>
|
||||||
<input
|
<input
|
||||||
|
id="rfc"
|
||||||
type="text"
|
type="text"
|
||||||
class="form-input {businessProfileErrors.rfc ? 'border-red-300' : ''}"
|
class="form-input {businessProfileErrors.rfc ? 'border-red-300' : ''}"
|
||||||
bind:value={businessProfile.rfc}
|
bind:value={businessProfile.rfc}
|
||||||
@@ -518,8 +522,9 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">ID Fiscal (Otros países)</label>
|
<label class="form-label" for="tax_id">ID Fiscal (Otros países)</label>
|
||||||
<input
|
<input
|
||||||
|
id="tax_id"
|
||||||
type="text"
|
type="text"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
bind:value={businessProfile.tax_id}
|
bind:value={businessProfile.tax_id}
|
||||||
@@ -619,8 +624,9 @@
|
|||||||
<h3 class="font-medium text-gray-900 mb-4">Representantes</h3>
|
<h3 class="font-medium text-gray-900 mb-4">Representantes</h3>
|
||||||
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
|
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">Encargado/Representante</label>
|
<label class="form-label" for="company_representative">Encargado/Representante</label>
|
||||||
<input
|
<input
|
||||||
|
id="company_representative"
|
||||||
type="text"
|
type="text"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
bind:value={businessProfile.company_representative}
|
bind:value={businessProfile.company_representative}
|
||||||
@@ -629,8 +635,9 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">Representante Legal</label>
|
<label class="form-label" for="legal_representative">Representante Legal</label>
|
||||||
<input
|
<input
|
||||||
|
id="legal_representative"
|
||||||
type="text"
|
type="text"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
bind:value={businessProfile.legal_representative}
|
bind:value={businessProfile.legal_representative}
|
||||||
@@ -645,7 +652,7 @@
|
|||||||
<h3 class="font-medium text-gray-900 mb-4">Configuración</h3>
|
<h3 class="font-medium text-gray-900 mb-4">Configuración</h3>
|
||||||
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
|
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">Moneda Preferida</label>
|
<label class="form-label" for="preferred_currency">Moneda Preferida</label>
|
||||||
<select class="form-input" bind:value={businessProfile.preferred_currency}>
|
<select class="form-input" bind:value={businessProfile.preferred_currency}>
|
||||||
<option value="MXN">MXN - Peso Mexicano</option>
|
<option value="MXN">MXN - Peso Mexicano</option>
|
||||||
<option value="USD">USD - Dólar Americano</option>
|
<option value="USD">USD - Dólar Americano</option>
|
||||||
@@ -654,12 +661,12 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<label class="form-label">Nacionalidad</label>
|
<label class="form-label" for="nationality">Nacionalidad</label>
|
||||||
<input type="text" class="form-input" bind:value={businessProfile.nationality} />
|
<input type="text" class="form-input" bind:value={businessProfile.nationality} />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="md:col-span-2">
|
<div class="md:col-span-2">
|
||||||
<label class="form-label">Notas Adicionales</label>
|
<label class="form-label" for="notes">Notas Adicionales</label>
|
||||||
<textarea
|
<textarea
|
||||||
class="form-input"
|
class="form-input"
|
||||||
rows="3"
|
rows="3"
|
||||||
|
|||||||
@@ -473,7 +473,7 @@
|
|||||||
{#if showCloseDialog}
|
{#if showCloseDialog}
|
||||||
<div class="fixed inset-0 z-50 overflow-y-auto">
|
<div class="fixed inset-0 z-50 overflow-y-auto">
|
||||||
<div class="flex items-center justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0">
|
<div class="flex items-center justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0">
|
||||||
<div class="fixed inset-0 transition-opacity" on:click={cancelCloseTicket}>
|
<div class="fixed inset-0 transition-opacity" role="dialog" tabindex="0" on:click={cancelCloseTicket} on:keydown={(e) => e.key === 'Escape' && cancelCloseTicket()}>
|
||||||
<div class="absolute inset-0 bg-gray-500 opacity-75"></div>
|
<div class="absolute inset-0 bg-gray-500 opacity-75"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,8 @@
|
|||||||
"DOM.Iterable"
|
"DOM.Iterable"
|
||||||
],
|
],
|
||||||
"allowSyntheticDefaultImports": true,
|
"allowSyntheticDefaultImports": true,
|
||||||
"isolatedModules": true
|
"isolatedModules": true,
|
||||||
|
"verbatimModuleSyntax": true
|
||||||
},
|
},
|
||||||
"include": [
|
"include": [
|
||||||
"src/**/*",
|
"src/**/*",
|
||||||
|
|||||||
@@ -84,6 +84,9 @@
|
|||||||
{#if isMenuOpen}
|
{#if isMenuOpen}
|
||||||
<div
|
<div
|
||||||
class="fixed inset-0 z-40 lg:hidden"
|
class="fixed inset-0 z-40 lg:hidden"
|
||||||
|
role="dialog"
|
||||||
|
tabindex="0"
|
||||||
on:click={() => isMenuOpen = false}
|
on:click={() => isMenuOpen = false}
|
||||||
|
on:keydown={(e) => e.key === 'Escape' && (isMenuOpen = false)}
|
||||||
></div>
|
></div>
|
||||||
{/if}
|
{/if}
|
||||||
@@ -78,7 +78,7 @@
|
|||||||
<!-- Mobile sidebar backdrop -->
|
<!-- Mobile sidebar backdrop -->
|
||||||
{#if open}
|
{#if open}
|
||||||
<div class="fixed inset-0 z-40 lg:hidden">
|
<div class="fixed inset-0 z-40 lg:hidden">
|
||||||
<div class="fixed inset-0 bg-gray-600 bg-opacity-75" on:click={() => open = false}></div>
|
<div class="fixed inset-0 bg-gray-600 bg-opacity-75" role="dialog" tabindex="0" on:click={() => open = false} on:keydown={(e) => e.key === 'Escape' && (open = false)}></div>
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,8 @@
|
|||||||
"DOM.Iterable"
|
"DOM.Iterable"
|
||||||
],
|
],
|
||||||
"allowSyntheticDefaultImports": true,
|
"allowSyntheticDefaultImports": true,
|
||||||
"isolatedModules": true
|
"isolatedModules": true,
|
||||||
|
"verbatimModuleSyntax": true
|
||||||
},
|
},
|
||||||
"include": [
|
"include": [
|
||||||
"src/**/*",
|
"src/**/*",
|
||||||
|
|||||||
Reference in New Issue
Block a user