diff --git a/src/components/app-form/AppFormElement.ts b/src/components/app-form/AppFormElement.ts index e213aa5..ed946f3 100644 --- a/src/components/app-form/AppFormElement.ts +++ b/src/components/app-form/AppFormElement.ts @@ -35,7 +35,7 @@ class AppFormElement extends BaseComponentElement { }; public onSubmit = (e) => { - e.preventDefault(); + //e.preventDefault(); if (!this.isValid) { return; } @@ -135,7 +135,13 @@ class AppFormElement extends BaseComponentElement { return html`
-
+ ${this.renderInput ? this.customRender() : html``} ${renderError(this.error)}
diff --git a/src/components/app-loader/AppLoaderElement.ts b/src/components/app-loader/AppLoaderElement.ts index eb64eca..61a9cc4 100644 --- a/src/components/app-loader/AppLoaderElement.ts +++ b/src/components/app-loader/AppLoaderElement.ts @@ -51,7 +51,9 @@ class AppLoaderElement extends BaseComponentElement { } return html``; }; - return html`${renderLoader(this.finished, this.loading)}`; + return html`
+
${renderLoader(this.finished, this.loading)}
+
`; }; } diff --git a/src/components/app-pagination/AppPaginationElement.ts b/src/components/app-pagination/AppPaginationElement.ts index 11aa89e..fd91bdf 100644 --- a/src/components/app-pagination/AppPaginationElement.ts +++ b/src/components/app-pagination/AppPaginationElement.ts @@ -142,18 +142,28 @@ class AppPaginationElement extends BaseComponentElement { (${items?.length}) / ${totalItems} Total Items
`; @@ -161,9 +171,10 @@ class AppPaginationElement extends BaseComponentElement { }; return html`
- +
${renderItems()} ${renderPagination()}
+ ${this.loader && this.loader.loading ? html`` : html``}
`; }; } diff --git a/src/components/input-field/InputFieldElement.ts b/src/components/input-field/InputFieldElement.ts index 60e0cbf..29ccb62 100644 --- a/src/components/input-field/InputFieldElement.ts +++ b/src/components/input-field/InputFieldElement.ts @@ -33,7 +33,7 @@ class InputFieldElement extends BaseComponentElement { this.validator = new Validator(this, this.appForm, this.rules); this.randId = `${name}${randomId()}`; this.update(); - this.validate(); + //this.validate(); }; setError = (error) => { @@ -83,11 +83,12 @@ class InputFieldElement extends BaseComponentElement { if (!this.changed && e?.target?.value) { this.changed = true; } - this.validate(); + //this.validate(); this.appForm?.inputChange(e); }; render = (): TemplateResult => { + console.log('e'); const renderMessage = (label: string) => { if (this.label) { return html``; @@ -105,19 +106,20 @@ class InputFieldElement extends BaseComponentElement { const renderInput = (type) => { if (this.pattern) { return html` `; } return html` { + return html` + + `; + }; + render = (): TemplateResult => { return html` - - - - +
diff --git a/src/styles/app-loader/app-loader.scss b/src/styles/app-loader/app-loader.scss index 2614f49..f6415e2 100644 --- a/src/styles/app-loader/app-loader.scss +++ b/src/styles/app-loader/app-loader.scss @@ -1,27 +1,42 @@ -.loader { - position: absolute; - top: 0; - left: 0; - height: 5px; - width: 0; - background-color: $blue-09; - z-index: 2000; - &.--loading { - animation: animateBar 5s linear; - } +.loader-wrapper { + position: absolute; + width: 100%; + left: 0; + right: 0; + height: 5px; + .loader-relative { + position: relative; + height: 5px; + width: 100%; + overflow: hidden; + .loader { + position: absolute; + top: 0; + left: -30%; + height: 5px; + width: 30%; + background-color: $blue-09; + z-index: 2000; + &.--loading { + animation: animateBar 2s linear infinite; + } - &.--removing { - width: 100%; - } + &.--removing { + width: 100%; + } + } + } } .progress .progress-bar { } @keyframes animateBar { - 0% { - width: 0; - } - 100% { - width: 100%; - } + 0%, + 100% { + left: -30%; + } + + 100% { + left: 100%; + } } diff --git a/src/styles/app-pagination/app-pagination.scss b/src/styles/app-pagination/app-pagination.scss index eab5a90..ff587bf 100644 --- a/src/styles/app-pagination/app-pagination.scss +++ b/src/styles/app-pagination/app-pagination.scss @@ -1,5 +1,11 @@ app-pagination { .app-pagination { + position: relative; + circle-loader > .circle-loader { + position: absolute; + inset: 0; + margin: auto; + } table.transactions-table { margin: 0 0 3em 0; padding: 0; @@ -8,6 +14,14 @@ app-pagination { border: 1px solid $gray-09; border-radius: 4px; display: block; + &.--loading { + min-height: 80px; + tr { + td { + visibility: hidden; + } + } + } tr { background-color: $gray-07; padding: 4px 12px;