@nubitio/react-admin 0.7.4 → 0.8.0

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.
Files changed (2) hide show
  1. package/dist/style.css +183 -2
  2. package/package.json +7 -7
package/dist/style.css CHANGED
@@ -8980,7 +8980,7 @@ html[data-density=comfortable] {
8980
8980
  grid-template-columns: minmax(0, 1fr);
8981
8981
  }
8982
8982
  .nb-dashboard-section--grid {
8983
- grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
8983
+ grid-template-columns: var(--nb-dashboard-columns, repeat(auto-fit, minmax(220px, 1fr)));
8984
8984
  }
8985
8985
 
8986
8986
  @media (max-width: 1100px) {
@@ -8990,12 +8990,102 @@ html[data-density=comfortable] {
8990
8990
  .nb-dashboard-section--charts {
8991
8991
  grid-template-columns: minmax(0, 1fr);
8992
8992
  }
8993
+ .nb-dashboard-section--grid {
8994
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
8995
+ }
8993
8996
  }
8994
8997
  @media (max-width: 640px) {
8995
- .nb-dashboard-section--stats {
8998
+ .nb-dashboard-section--stats,
8999
+ .nb-dashboard-section--grid {
8996
9000
  grid-template-columns: minmax(0, 1fr);
8997
9001
  }
8998
9002
  }
9003
+ .nb-dashboard-layout-controls {
9004
+ align-items: center;
9005
+ display: flex;
9006
+ gap: var(--space-1);
9007
+ }
9008
+
9009
+ .nb-dashboard-layout-controls__hidden-list {
9010
+ display: flex;
9011
+ flex-direction: column;
9012
+ gap: var(--space-2);
9013
+ list-style: none;
9014
+ margin: 0;
9015
+ min-width: 200px;
9016
+ padding: 0;
9017
+ }
9018
+ .nb-dashboard-layout-controls__hidden-list li {
9019
+ align-items: center;
9020
+ display: flex;
9021
+ justify-content: space-between;
9022
+ gap: var(--space-3);
9023
+ }
9024
+
9025
+ .nb-dashboard-layout-controls__show-btn {
9026
+ background: none;
9027
+ border: none;
9028
+ color: var(--accent-color);
9029
+ cursor: pointer;
9030
+ font-size: var(--font-size-sm);
9031
+ font-weight: var(--font-weight-medium);
9032
+ padding: 0;
9033
+ }
9034
+ .nb-dashboard-layout-controls__show-btn:hover {
9035
+ text-decoration: underline;
9036
+ }
9037
+
9038
+ .nb-dashboard-widget-slot {
9039
+ border: 1px dashed var(--border-color);
9040
+ border-radius: var(--radius-lg);
9041
+ padding: var(--space-2);
9042
+ position: relative;
9043
+ }
9044
+ .nb-dashboard-widget-slot__controls {
9045
+ display: flex;
9046
+ gap: var(--space-1);
9047
+ justify-content: flex-end;
9048
+ padding-bottom: var(--space-1);
9049
+ }
9050
+ .nb-dashboard-widget-slot__btn {
9051
+ align-items: center;
9052
+ background: var(--surface-2, var(--surface-1));
9053
+ border: 1px solid var(--border-color);
9054
+ border-radius: var(--radius-sm);
9055
+ color: var(--text-secondary);
9056
+ cursor: pointer;
9057
+ display: inline-flex;
9058
+ height: 24px;
9059
+ justify-content: center;
9060
+ width: 24px;
9061
+ }
9062
+ .nb-dashboard-widget-slot__btn:hover {
9063
+ background: var(--surface-3);
9064
+ }
9065
+ .nb-dashboard-widget-slot__btn--hide:hover {
9066
+ background: color-mix(in srgb, var(--error-color) 14%, transparent);
9067
+ color: var(--error-color);
9068
+ }
9069
+ .nb-dashboard-widget-slot__body {
9070
+ pointer-events: none;
9071
+ }
9072
+
9073
+ .nb-dashboard-widget-slot__error {
9074
+ background: color-mix(in srgb, var(--error-color) 10%, transparent);
9075
+ border-radius: var(--radius-md);
9076
+ color: var(--error-color);
9077
+ font-size: var(--font-size-xs);
9078
+ margin-bottom: var(--space-2);
9079
+ padding: var(--space-2) var(--space-3);
9080
+ }
9081
+
9082
+ .nb-dashboard-period-filter {
9083
+ align-items: center;
9084
+ display: flex;
9085
+ flex-wrap: wrap;
9086
+ gap: var(--space-2);
9087
+ }
9088
+
8999
9089
  .nb-dashboard-widget__subtitle {
9000
9090
  color: var(--text-tertiary);
9001
9091
  font-size: var(--font-size-xs);
@@ -9175,6 +9265,97 @@ html[data-density=comfortable] {
9175
9265
  font-weight: var(--font-weight-medium);
9176
9266
  }
9177
9267
 
9268
+ .nb-dashboard-chart-tooltip {
9269
+ background: var(--surface-1, var(--surface-0));
9270
+ border: 1px solid var(--border-color);
9271
+ border-radius: var(--radius-md);
9272
+ box-shadow: var(--shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));
9273
+ font-size: var(--font-size-xs);
9274
+ padding: var(--space-2) var(--space-3);
9275
+ }
9276
+ .nb-dashboard-chart-tooltip__label {
9277
+ color: var(--text-tertiary);
9278
+ font-weight: var(--font-weight-medium);
9279
+ margin-bottom: var(--space-1);
9280
+ }
9281
+ .nb-dashboard-chart-tooltip__items {
9282
+ display: flex;
9283
+ flex-direction: column;
9284
+ gap: var(--space-1);
9285
+ list-style: none;
9286
+ margin: 0;
9287
+ padding: 0;
9288
+ }
9289
+ .nb-dashboard-chart-tooltip__item {
9290
+ align-items: center;
9291
+ display: grid;
9292
+ gap: var(--space-2);
9293
+ grid-template-columns: 8px 1fr auto;
9294
+ }
9295
+ .nb-dashboard-chart-tooltip__swatch {
9296
+ border-radius: 2px;
9297
+ height: 8px;
9298
+ width: 8px;
9299
+ }
9300
+ .nb-dashboard-chart-tooltip__name {
9301
+ color: var(--text-secondary);
9302
+ overflow: hidden;
9303
+ text-overflow: ellipsis;
9304
+ white-space: nowrap;
9305
+ }
9306
+ .nb-dashboard-chart-tooltip__value {
9307
+ color: var(--text-primary);
9308
+ font-family: var(--font-family-mono);
9309
+ font-weight: var(--font-weight-medium);
9310
+ }
9311
+
9312
+ .nb-dashboard-progress .nb-stat-card__body {
9313
+ display: flex;
9314
+ flex-direction: column;
9315
+ gap: var(--space-2);
9316
+ padding-top: var(--space-2);
9317
+ }
9318
+ .nb-dashboard-progress__meter {
9319
+ background: var(--surface-3);
9320
+ border-radius: var(--radius-full, 999px);
9321
+ height: 8px;
9322
+ overflow: hidden;
9323
+ width: 100%;
9324
+ }
9325
+ .nb-dashboard-progress__fill {
9326
+ background: var(--accent-color);
9327
+ border-radius: inherit;
9328
+ height: 100%;
9329
+ transition: width 0.3s ease;
9330
+ }
9331
+ .nb-dashboard-progress__labels {
9332
+ align-items: baseline;
9333
+ display: flex;
9334
+ gap: var(--space-1);
9335
+ }
9336
+ .nb-dashboard-progress__value {
9337
+ color: var(--text-primary);
9338
+ font-family: var(--font-family-mono);
9339
+ font-size: var(--font-size-lg);
9340
+ font-weight: var(--font-weight-bold);
9341
+ }
9342
+ .nb-dashboard-progress__max {
9343
+ color: var(--text-tertiary);
9344
+ font-size: var(--font-size-xs);
9345
+ }
9346
+ .nb-dashboard-progress--success .nb-dashboard-progress__fill {
9347
+ background: var(--success-color);
9348
+ }
9349
+ .nb-dashboard-progress--warning .nb-dashboard-progress__fill {
9350
+ background: var(--warning-color);
9351
+ }
9352
+ .nb-dashboard-progress--danger .nb-dashboard-progress__fill {
9353
+ background: var(--error-color);
9354
+ }
9355
+ .nb-dashboard-progress--info .nb-dashboard-progress__fill {
9356
+ background: var(--info-color, var(--accent-color));
9357
+ }
9358
+
9178
9359
  .nb-dashboard-table-card .nb-stat-card__header > div:first-child {
9179
9360
  align-items: center;
9180
9361
  display: flex;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nubitio/react-admin",
3
- "version": "0.7.4",
3
+ "version": "0.8.0",
4
4
  "type": "module",
5
5
  "description": "Batteries-included admin stack: core runtime, CRUD, Hydra adapter, and AdminShell.",
6
6
  "license": "MIT",
@@ -50,12 +50,12 @@
50
50
  "access": "public"
51
51
  },
52
52
  "dependencies": {
53
- "@nubitio/admin": "^0.7.4",
54
- "@nubitio/core": "^0.7.4",
55
- "@nubitio/crud": "^0.7.4",
56
- "@nubitio/hydra": "^0.7.4",
57
- "@nubitio/dashboard": "^0.7.4",
58
- "@nubitio/ui": "^0.7.4"
53
+ "@nubitio/hydra": "^0.8.0",
54
+ "@nubitio/admin": "^0.8.0",
55
+ "@nubitio/crud": "^0.8.0",
56
+ "@nubitio/dashboard": "^0.8.0",
57
+ "@nubitio/ui": "^0.8.0",
58
+ "@nubitio/core": "^0.8.0"
59
59
  },
60
60
  "peerDependencies": {
61
61
  "@tanstack/react-query": "^5.0.0",