@erplora/outfitkit 0.1.10 → 0.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/ok-data-table.js
CHANGED
|
@@ -167,6 +167,10 @@ class OkDataTable extends LitElement {
|
|
|
167
167
|
:host([fill]) .card { flex: 1 1 auto; min-height: 0; }
|
|
168
168
|
:host([fill]) .bar, :host([fill]) .panel, :host([fill]) .pager { flex: 0 0 auto; }
|
|
169
169
|
:host([fill]) .scroll, :host([fill]) .cards-grid { flex: 1 1 auto; min-height: 0; overflow: auto; }
|
|
170
|
+
/* Sin filas, renderTable/renderCards devuelven SOLO el bloque .empty (sin .scroll). En modo
|
|
171
|
+
fill hay que estirarlo para que ocupe el hueco entre toolbar y pager y centre su contenido
|
|
172
|
+
(icono + mensaje) en vertical; si no, queda pegado arriba con el pager a media altura. */
|
|
173
|
+
:host([fill]) .empty { flex: 1 1 auto; min-height: 0; }
|
|
170
174
|
|
|
171
175
|
/* ── Topbar / cabecera (relieve) ─────────────────────────────────────────────────────── */
|
|
172
176
|
.bar { display: flex; flex-direction: column; gap: 0.6rem; padding: 0.65rem 1rem; border-bottom: 1px solid var(--border-color); background: var(--header-background); }
|
package/dist/ok-widget-board.js
CHANGED
|
@@ -137,11 +137,12 @@ class OkWidgetBoard extends LitElement {
|
|
|
137
137
|
const modal = make("ion-modal");
|
|
138
138
|
modal.initialBreakpoint = 0.9;
|
|
139
139
|
modal.breakpoints = [0, 0.9, 1];
|
|
140
|
-
const header = make("ion-header");
|
|
141
|
-
const tb = make("ion-toolbar");
|
|
140
|
+
const header = make("ion-header", { attrs: { class: "okwb-header ion-no-border" } });
|
|
141
|
+
const tb = make("ion-toolbar", { attrs: { class: "okwb-toolbar ion-padding" } });
|
|
142
142
|
tb.appendChild(make("ion-title", { text: t.customize }));
|
|
143
143
|
const endBtns = make("ion-buttons", { attrs: { slot: "end" } });
|
|
144
|
-
const closeBtn = make("ion-button", {
|
|
144
|
+
const closeBtn = make("ion-button", { attrs: { fill: "clear", "aria-label": t.close } });
|
|
145
|
+
closeBtn.appendChild(make("ion-icon", { attrs: { slot: "icon-only", name: "close" } }));
|
|
145
146
|
closeBtn.addEventListener("click", () => modal.dismiss?.());
|
|
146
147
|
endBtns.appendChild(closeBtn);
|
|
147
148
|
tb.appendChild(endBtns);
|
|
@@ -175,7 +176,7 @@ class OkWidgetBoard extends LitElement {
|
|
|
175
176
|
content.appendChild(make("div", { attrs: { class: "okwb-sub" }, text: t.available }));
|
|
176
177
|
const availList = make("ion-list");
|
|
177
178
|
content.appendChild(availList);
|
|
178
|
-
const style = make("style", { text: `.okwb-sub{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ion-color-medium);padding:12px 16px 4px}.okwb-presets{display:flex;gap:8px;flex-wrap:wrap;padding:12px 16px}` });
|
|
179
|
+
const style = make("style", { text: `.okwb-header{box-shadow:none}.okwb-header::after{display:none}.okwb-toolbar{--border-width:0;--border-color:transparent;box-shadow:none}.okwb-sub{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ion-color-medium);padding:12px 16px 4px}.okwb-presets{display:flex;gap:8px;flex-wrap:wrap;padding:12px 16px}` });
|
|
179
180
|
modal.appendChild(style);
|
|
180
181
|
modal.appendChild(content);
|
|
181
182
|
document.body.appendChild(modal);
|
package/dist/outfitkit.bundle.js
CHANGED
|
@@ -1092,6 +1092,10 @@ class _ extends g {
|
|
|
1092
1092
|
:host([fill]) .card { flex: 1 1 auto; min-height: 0; }
|
|
1093
1093
|
:host([fill]) .bar, :host([fill]) .panel, :host([fill]) .pager { flex: 0 0 auto; }
|
|
1094
1094
|
:host([fill]) .scroll, :host([fill]) .cards-grid { flex: 1 1 auto; min-height: 0; overflow: auto; }
|
|
1095
|
+
/* Sin filas, renderTable/renderCards devuelven SOLO el bloque .empty (sin .scroll). En modo
|
|
1096
|
+
fill hay que estirarlo para que ocupe el hueco entre toolbar y pager y centre su contenido
|
|
1097
|
+
(icono + mensaje) en vertical; si no, queda pegado arriba con el pager a media altura. */
|
|
1098
|
+
:host([fill]) .empty { flex: 1 1 auto; min-height: 0; }
|
|
1095
1099
|
|
|
1096
1100
|
/* ── Topbar / cabecera (relieve) ─────────────────────────────────────────────────────── */
|
|
1097
1101
|
.bar { display: flex; flex-direction: column; gap: 0.6rem; padding: 0.65rem 1rem; border-bottom: 1px solid var(--border-color); background: var(--header-background); }
|
|
@@ -3849,10 +3853,10 @@ class He extends g {
|
|
|
3849
3853
|
return k.text != null && ($.textContent = k.text), $;
|
|
3850
3854
|
}, r = t("ion-modal");
|
|
3851
3855
|
r.initialBreakpoint = 0.9, r.breakpoints = [0, 0.9, 1];
|
|
3852
|
-
const o = t("ion-header"), a = t("ion-toolbar");
|
|
3856
|
+
const o = t("ion-header", { attrs: { class: "okwb-header ion-no-border" } }), a = t("ion-toolbar", { attrs: { class: "okwb-toolbar ion-padding" } });
|
|
3853
3857
|
a.appendChild(t("ion-title", { text: e.customize }));
|
|
3854
|
-
const i = t("ion-buttons", { attrs: { slot: "end" } }), c = t("ion-button", {
|
|
3855
|
-
c.addEventListener("click", () => r.dismiss?.()), i.appendChild(c), a.appendChild(i), o.appendChild(a), r.appendChild(o);
|
|
3858
|
+
const i = t("ion-buttons", { attrs: { slot: "end" } }), c = t("ion-button", { attrs: { fill: "clear", "aria-label": e.close } });
|
|
3859
|
+
c.appendChild(t("ion-icon", { attrs: { slot: "icon-only", name: "close" } })), c.addEventListener("click", () => r.dismiss?.()), i.appendChild(c), a.appendChild(i), o.appendChild(a), r.appendChild(o);
|
|
3856
3860
|
const d = t("ion-content");
|
|
3857
3861
|
if (this.presets.length) {
|
|
3858
3862
|
d.appendChild(t("div", { attrs: { class: "okwb-sub" }, text: e.presets }));
|
|
@@ -3871,7 +3875,7 @@ class He extends g {
|
|
|
3871
3875
|
}), u.appendChild(h), d.appendChild(u), d.appendChild(t("div", { attrs: { class: "okwb-sub" }, text: e.available }));
|
|
3872
3876
|
const p = t("ion-list");
|
|
3873
3877
|
d.appendChild(p);
|
|
3874
|
-
const b = t("style", { text: ".okwb-sub{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ion-color-medium);padding:12px 16px 4px}.okwb-presets{display:flex;gap:8px;flex-wrap:wrap;padding:12px 16px}" });
|
|
3878
|
+
const b = t("style", { text: ".okwb-header{box-shadow:none}.okwb-header::after{display:none}.okwb-toolbar{--border-width:0;--border-color:transparent;box-shadow:none}.okwb-sub{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ion-color-medium);padding:12px 16px 4px}.okwb-presets{display:flex;gap:8px;flex-wrap:wrap;padding:12px 16px}" });
|
|
3875
3879
|
r.appendChild(b), r.appendChild(d), document.body.appendChild(r), this.modal = r, this.reorderEl = h, this.availEl = p, this.refreshModal();
|
|
3876
3880
|
}
|
|
3877
3881
|
/** Repinta las listas de activos/disponibles del modal según `value`. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@erplora/outfitkit",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.12",
|
|
4
4
|
"description": "OutfitKit — librería de Web Components (Lit) que CONSTRUYE lo que Ionic no tiene (tree, data-table rica, inline-feedback, kpi/stat, stepper/wizard, calendar, kanban…) sobre primitivos de Ionic. Ionic es la base; OutfitKit cubre los huecos. npm + CDN, imports individuales, CSP-safe. Tema vía tokens --ok-* (fallback a --ion-*).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|