@k-table/report 1.0.9 → 1.0.10

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/styles.css CHANGED
@@ -54,9 +54,11 @@ html:has([data-kt-root]) body {
54
54
  /* kt 的 antd 作用域(KtAntdScope)用 <App component={false}>,不产生 .ant-app DOM;
55
55
  这里不再写任何 .ant-app 规则,避免影响宿主自己的 antd App 布局。 */
56
56
 
57
- [data-kt-root] .kt-fill-page,
58
- [data-kt-root] .kt-fill-layout,
59
- [data-kt-root] .kt-report-designer-page {
57
+ /* kt 自有类(kt-* / data-kt-paper)不挂 [data-kt-root]:界面可能被宿主弹窗 portal 到 body,
58
+ 变量由 surface 根节点内联带入(useKtSurfaceProps),选择器保持位置无关。 */
59
+ .kt-fill-page,
60
+ .kt-fill-layout,
61
+ .kt-report-designer-page {
60
62
  flex: 1 1 auto;
61
63
  min-height: 0;
62
64
  height: 100%;
@@ -98,19 +100,19 @@ html:has([data-kt-root]) body {
98
100
  margin-left: auto;
99
101
  }
100
102
 
101
- [data-kt-root] .kt-paper-island {
102
- background: var(--kt-forms-canvas-pad, var(--kt-page-bg));
103
- color: var(--kt-forms-text, var(--kt-text));
103
+ .kt-paper-island {
104
+ background: var(--kt-forms-canvas-pad, var(--kt-page-bg, #d4e4f5));
105
+ color: var(--kt-forms-text, var(--kt-text, #1d3a5c));
104
106
  }
105
107
 
106
- [data-kt-root] .kt-paper-island[data-tone="preview"],
107
- [data-kt-root] .kt-preview-stage {
108
- background: var(--kt-forms-preview-host, var(--kt-page-bg));
108
+ .kt-paper-island[data-tone="preview"],
109
+ .kt-preview-stage {
110
+ background: var(--kt-forms-preview-host, var(--kt-page-bg, #dce8f6));
109
111
  }
110
112
 
111
- [data-kt-root] [data-kt-paper],
112
- [data-kt-root] .kt-report-page,
113
- [data-kt-root] .klab-fill-sheet {
113
+ [data-kt-paper],
114
+ .kt-report-page,
115
+ .klab-fill-sheet {
114
116
  color-scheme: light;
115
117
  background: var(--kt-paper-bg, #fff);
116
118
  color: #1d2129;
@@ -121,7 +123,7 @@ html:has([data-kt-root]) body {
121
123
  --ant-color-border: #d9d9d9;
122
124
  }
123
125
 
124
- [data-kt-root] .kt-chrome {
126
+ .kt-chrome {
125
127
  display: flex;
126
128
  align-items: center;
127
129
  flex-wrap: wrap;
@@ -130,52 +132,52 @@ html:has([data-kt-root]) body {
130
132
  min-height: 40px;
131
133
  padding: 6px 12px;
132
134
  line-height: 1;
133
- border-bottom: 1px solid var(--kt-forms-border, var(--kt-border));
134
- background: var(--kt-forms-chrome-bar, var(--kt-header-bg));
135
- color: var(--kt-forms-text, var(--kt-text));
135
+ border-bottom: 1px solid var(--kt-forms-border, var(--kt-border, #c5d6ee));
136
+ background: var(--kt-forms-chrome-bar, var(--kt-header-bg, #dce8f6));
137
+ color: var(--kt-forms-text, var(--kt-text, #1d3a5c));
136
138
  }
137
139
 
138
140
  /* 铬层不跟 density 的 32/36 控件高走;疏密只影响工作区。 */
139
- [data-kt-root] .kt-chrome .ant-btn {
141
+ .kt-chrome .ant-btn {
140
142
  height: 28px;
141
143
  padding-inline: 10px;
142
144
  font-size: 12px;
143
145
  }
144
146
 
145
- [data-kt-root] .kt-chrome .ant-btn.ant-btn-icon-only {
147
+ .kt-chrome .ant-btn.ant-btn-icon-only {
146
148
  width: 28px;
147
149
  padding-inline: 0;
148
150
  }
149
151
 
150
- [data-kt-root] .kt-chrome .ant-select {
152
+ .kt-chrome .ant-select {
151
153
  font-size: 12px;
152
154
  }
153
155
 
154
- [data-kt-root] .kt-chrome .ant-select-selector {
156
+ .kt-chrome .ant-select-selector {
155
157
  min-height: 28px !important;
156
158
  }
157
159
 
158
- [data-kt-root] .kt-report-print-hide .ant-btn {
160
+ .kt-report-print-hide .ant-btn {
159
161
  height: 28px;
160
162
  padding-inline: 10px;
161
163
  font-size: 12px;
162
164
  }
163
165
 
164
- [data-kt-root] .kt-chrome-sub {
165
- background: var(--kt-forms-header-bg, var(--kt-header-bg));
166
- border-bottom: 1px solid var(--kt-forms-border, var(--kt-border));
167
- color: var(--kt-forms-text, var(--kt-text));
166
+ .kt-chrome-sub {
167
+ background: var(--kt-forms-header-bg, var(--kt-header-bg, #f3f7fd));
168
+ border-bottom: 1px solid var(--kt-forms-border, var(--kt-border, #c5d6ee));
169
+ color: var(--kt-forms-text, var(--kt-text, #1d3a5c));
168
170
  }
169
171
 
170
- [data-kt-root] .kt-chrome-tab {
171
- background: var(--kt-forms-chrome-tab);
172
- border: 1px solid var(--kt-forms-border);
173
- color: var(--kt-forms-text-secondary);
172
+ .kt-chrome-tab {
173
+ background: var(--kt-forms-chrome-tab, #d0deef);
174
+ border: 1px solid var(--kt-forms-border, #c5d6ee);
175
+ color: var(--kt-forms-text-secondary, #4e6a8a);
174
176
  }
175
177
 
176
- [data-kt-root] .kt-workspace {
178
+ .kt-workspace {
177
179
  min-height: 480px;
178
- background: var(--kt-forms-canvas-pad, var(--kt-page-bg));
180
+ background: var(--kt-forms-canvas-pad, var(--kt-page-bg, #d4e4f5));
179
181
  }
180
182
 
181
183
  [data-kt-root] .kt-theme-bar {
@@ -264,11 +266,12 @@ html:has([data-kt-root]) body {
264
266
  cursor: pointer;
265
267
  }
266
268
 
267
- [data-kt-root][data-kt-style="arco"] [data-kt-surface] .ant-btn,
268
- [data-kt-root][data-kt-style="arco"] [data-kt-surface] .ant-input,
269
- [data-kt-root][data-kt-style="arco"] [data-kt-surface] .ant-input-affix-wrapper,
270
- [data-kt-root][data-kt-style="arco"] [data-kt-surface] .ant-select-selector,
271
- [data-kt-root][data-kt-style="arco"] [data-kt-surface] .ant-radio-button-wrapper {
269
+ /* surface 根节点自带 data-kt-style(useKtSurfaceProps),portal 到 body 也能命中 */
270
+ [data-kt-surface][data-kt-style="arco"] .ant-btn,
271
+ [data-kt-surface][data-kt-style="arco"] .ant-input,
272
+ [data-kt-surface][data-kt-style="arco"] .ant-input-affix-wrapper,
273
+ [data-kt-surface][data-kt-style="arco"] .ant-select-selector,
274
+ [data-kt-surface][data-kt-style="arco"] .ant-radio-button-wrapper {
272
275
  border-radius: 2px;
273
276
  }
274
277
 
@@ -330,9 +333,9 @@ html:has([data-kt-root]) body {
330
333
  color: var(--kt-forms-text, var(--kt-text)) !important;
331
334
  }
332
335
 
333
- [data-kt-root] .kt-chrome-meta,
336
+ .kt-chrome-meta,
334
337
  [data-kt-surface] .ant-typography-secondary.kt-chrome-meta {
335
- color: var(--kt-forms-text-secondary, var(--kt-text-secondary)) !important;
338
+ color: var(--kt-forms-text-secondary, var(--kt-text-secondary, #4e6a8a)) !important;
336
339
  }
337
340
 
338
341
  [data-kt-surface] .ant-typography-secondary,
@@ -348,55 +351,55 @@ html:has([data-kt-root]) body {
348
351
  color: var(--kt-primary) !important;
349
352
  }
350
353
 
351
- [data-kt-root] [data-kt-paper] .ant-input,
352
- [data-kt-root] [data-kt-paper] .ant-input-outlined,
353
- [data-kt-root] [data-kt-paper] .ant-input-affix-wrapper,
354
- [data-kt-root] [data-kt-paper] textarea.ant-input,
355
- [data-kt-root] [data-kt-paper] .ant-picker,
356
- [data-kt-root] [data-kt-paper] .ant-select-selector,
357
- [data-kt-root] [data-kt-paper] .ant-input-number,
358
- [data-kt-root] [data-kt-paper] .ant-btn-default,
359
- [data-kt-root] .kt-report-page .ant-input,
360
- [data-kt-root] .kt-report-page .ant-select-selector,
361
- [data-kt-root] .klab-fill-sheet .ant-input,
362
- [data-kt-root] .klab-fill-sheet .ant-input-outlined,
363
- [data-kt-root] .klab-fill-sheet .ant-input-affix-wrapper,
364
- [data-kt-root] .klab-fill-sheet textarea.ant-input,
365
- [data-kt-root] .klab-fill-sheet .ant-select-selector,
366
- [data-kt-root] .klab-fill-sheet .ant-btn-default {
354
+ [data-kt-paper] .ant-input,
355
+ [data-kt-paper] .ant-input-outlined,
356
+ [data-kt-paper] .ant-input-affix-wrapper,
357
+ [data-kt-paper] textarea.ant-input,
358
+ [data-kt-paper] .ant-picker,
359
+ [data-kt-paper] .ant-select-selector,
360
+ [data-kt-paper] .ant-input-number,
361
+ [data-kt-paper] .ant-btn-default,
362
+ .kt-report-page .ant-input,
363
+ .kt-report-page .ant-select-selector,
364
+ .klab-fill-sheet .ant-input,
365
+ .klab-fill-sheet .ant-input-outlined,
366
+ .klab-fill-sheet .ant-input-affix-wrapper,
367
+ .klab-fill-sheet textarea.ant-input,
368
+ .klab-fill-sheet .ant-select-selector,
369
+ .klab-fill-sheet .ant-btn-default {
367
370
  background: var(--kt-paper-bg, #fff) !important;
368
371
  color: #1d2129 !important;
369
372
  border-color: #d9d9d9 !important;
370
373
  }
371
374
 
372
- [data-kt-root] [data-kt-paper] .ant-select-selection-item,
373
- [data-kt-root] [data-kt-paper] .ant-select-arrow,
374
- [data-kt-root] [data-kt-paper] .ant-select-selection-search-input,
375
- [data-kt-root] [data-kt-paper] .ant-picker-input > input,
376
- [data-kt-root] .klab-fill-sheet .ant-select-selection-item,
377
- [data-kt-root] .klab-fill-sheet .ant-select-arrow,
378
- [data-kt-root] .klab-fill-sheet .ant-select-selection-search-input {
375
+ [data-kt-paper] .ant-select-selection-item,
376
+ [data-kt-paper] .ant-select-arrow,
377
+ [data-kt-paper] .ant-select-selection-search-input,
378
+ [data-kt-paper] .ant-picker-input > input,
379
+ .klab-fill-sheet .ant-select-selection-item,
380
+ .klab-fill-sheet .ant-select-arrow,
381
+ .klab-fill-sheet .ant-select-selection-search-input {
379
382
  color: #1d2129 !important;
380
383
  }
381
384
 
382
- [data-kt-root] [data-kt-paper] .ant-typography,
383
- [data-kt-root] .kt-report-page .ant-typography,
384
- [data-kt-root] .klab-fill-sheet .ant-typography {
385
+ [data-kt-paper] .ant-typography,
386
+ .kt-report-page .ant-typography,
387
+ .klab-fill-sheet .ant-typography {
385
388
  color: #1d2129 !important;
386
389
  }
387
390
 
388
- [data-kt-root] [data-kt-paper] .ant-typography-secondary,
389
- [data-kt-root] .klab-fill-sheet .ant-typography-secondary {
391
+ [data-kt-paper] .ant-typography-secondary,
392
+ .klab-fill-sheet .ant-typography-secondary {
390
393
  color: #4e5969 !important;
391
394
  }
392
395
 
393
- [data-kt-root] [data-kt-paper] .ant-input::placeholder,
394
- [data-kt-root] .klab-fill-sheet .ant-input::placeholder,
395
- [data-kt-root] .klab-fill-sheet .ant-select-selection-placeholder {
396
+ [data-kt-paper] .ant-input::placeholder,
397
+ .klab-fill-sheet .ant-input::placeholder,
398
+ .klab-fill-sheet .ant-select-selection-placeholder {
396
399
  color: #8c8c8c !important;
397
400
  }
398
401
 
399
- [data-kt-root] .kt-preview-stage {
402
+ .kt-preview-stage {
400
403
  box-sizing: border-box;
401
404
  display: flex;
402
405
  flex-direction: column;
@@ -407,70 +410,70 @@ html:has([data-kt-root]) body {
407
410
  }
408
411
 
409
412
  /* antd 6 外壳是 .ant-modal-container(不再用 .ant-modal-content),两套都写以免回退。 */
410
- [data-kt-root] .kt-preview-modal .ant-modal-content,
411
- [data-kt-root] .kt-preview-modal .ant-modal-container {
413
+ .kt-preview-modal .ant-modal-content,
414
+ .kt-preview-modal .ant-modal-container {
412
415
  display: flex;
413
416
  flex-direction: column;
414
417
  max-height: calc(100vh - 72px);
415
418
  padding: 0;
416
419
  overflow: hidden;
417
- background: var(--kt-forms-preview-host, var(--kt-page-bg));
420
+ background: var(--kt-forms-preview-host, var(--kt-page-bg, #dce8f6));
418
421
  color: var(--kt-forms-text, var(--kt-text));
419
422
  border: 1px solid var(--kt-forms-border, var(--kt-border));
420
423
  box-sizing: border-box;
421
424
  }
422
425
 
423
- [data-kt-root] .kt-preview-modal .ant-modal-header {
426
+ .kt-preview-modal .ant-modal-header {
424
427
  flex-shrink: 0;
425
428
  margin-bottom: 0;
426
429
  padding: 10px 16px;
427
- background: var(--kt-forms-chrome-bar, var(--kt-header-bg));
428
- border-bottom: 1px solid var(--kt-forms-border, var(--kt-border));
430
+ background: var(--kt-forms-chrome-bar, var(--kt-header-bg, #dce8f6));
431
+ border-bottom: 1px solid var(--kt-forms-border, var(--kt-border, #c5d6ee));
429
432
  }
430
433
 
431
- [data-kt-root] .kt-preview-modal .ant-modal-title,
432
- [data-kt-root] .kt-preview-modal .ant-modal-close {
433
- color: var(--kt-forms-text, var(--kt-text));
434
+ .kt-preview-modal .ant-modal-title,
435
+ .kt-preview-modal .ant-modal-close {
436
+ color: var(--kt-forms-text, var(--kt-text, #1d3a5c));
434
437
  }
435
438
 
436
- [data-kt-root] .kt-preview-modal .ant-modal-body {
439
+ .kt-preview-modal .ant-modal-body {
437
440
  flex: 1 1 auto;
438
441
  min-height: 0;
439
- background: var(--kt-forms-preview-host, var(--kt-page-bg));
442
+ background: var(--kt-forms-preview-host, var(--kt-page-bg, #dce8f6));
440
443
  padding: 8px 16px 16px;
441
444
  max-height: none;
442
445
  overflow: auto;
443
446
  }
444
447
 
445
- [data-kt-root] .kt-preview-modal .kt-preview,
446
- [data-kt-root] .kt-preview-modal .kt-preview--modal {
448
+ .kt-preview-modal .kt-preview,
449
+ .kt-preview-modal .kt-preview--modal {
447
450
  display: flex;
448
451
  flex-direction: column;
449
452
  min-width: 0;
450
453
  min-height: 0;
451
454
  }
452
455
 
453
- [data-kt-root] .kt-preview-modal .kt-preview-print-bar {
456
+ .kt-preview-modal .kt-preview-print-bar {
454
457
  position: sticky;
455
458
  top: 0;
456
459
  z-index: 2;
457
460
  margin-bottom: 8px;
458
- background: var(--kt-forms-preview-host, var(--kt-page-bg));
461
+ background: var(--kt-forms-preview-host, var(--kt-page-bg, #dce8f6));
459
462
  }
460
463
 
461
- [data-kt-root] .kt-preview-modal .kt-report-preview-host {
464
+ .kt-preview-modal .kt-report-preview-host {
462
465
  padding: 8px 0 0;
463
466
  background: transparent;
464
467
  }
465
468
 
466
- [data-kt-root] .kt-preview-print-bar .ant-btn,
467
- [data-kt-root] .kt-preview--modal .ant-btn {
469
+ .kt-preview-print-bar .ant-btn,
470
+ .kt-preview--modal .ant-btn {
468
471
  height: 28px;
469
472
  padding-inline: 10px;
470
473
  font-size: 12px;
471
474
  }
472
475
 
473
- [data-kt-root] .kt-preview-print-bar .ant-select-selector {
476
+ .kt-preview-print-bar .ant-select-selector {
474
477
  min-height: 28px !important;
475
478
  }
476
479
 
@@ -491,18 +494,36 @@ html:has([data-kt-root]) body {
491
494
  background: #fff;
492
495
  }
493
496
 
494
- [data-kt-root] .kt-paper-island,
495
- [data-kt-root] [data-kt-paper],
496
- [data-kt-root] .kt-report-page,
497
- [data-kt-root] .klab-fill-sheet {
497
+ /* surface 根节点内联了主题变量(useKtSurfaceProps),打印时用 !important 强制浅色,
498
+ 对 portal 到 body 的界面同样生效 */
499
+ [data-kt-surface] {
500
+ --kt-text: #1d2129 !important;
501
+ --kt-text-secondary: #4e5969 !important;
502
+ --kt-header-bg: #fff !important;
503
+ --kt-border: #e5e6eb !important;
504
+ --kt-page-bg: #fff !important;
505
+ --kt-forms-page-bg: #fff !important;
506
+ --kt-forms-header-bg: #fff !important;
507
+ --kt-forms-border: #e5e6eb !important;
508
+ --kt-forms-text: #1d2129 !important;
509
+ --kt-forms-canvas-pad: #fff !important;
510
+ --kt-forms-preview-host: #fff !important;
511
+ color: #1d2129 !important;
512
+ background: #fff !important;
513
+ }
514
+
515
+ .kt-paper-island,
516
+ [data-kt-paper],
517
+ .kt-report-page,
518
+ .klab-fill-sheet {
498
519
  color-scheme: light !important;
499
520
  background: #fff !important;
500
521
  color: #1d2129 !important;
501
522
  }
502
523
 
503
- [data-kt-root] .kt-brand,
504
- [data-kt-root] .kt-chrome,
505
- [data-kt-root] .kt-report-print-hide {
524
+ .kt-brand,
525
+ .kt-chrome,
526
+ .kt-report-print-hide {
506
527
  display: none !important;
507
528
  }
508
529
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@k-table/report",
3
- "version": "1.0.9",
3
+ "version": "1.0.10",
4
4
  "publishConfig": { "access": "public" },
5
5
  "license": "UNLICENSED",
6
6
  "description": "KT报表产品包:设计 / 拼接 / 预览 / 版本 / 主题",
@@ -35,11 +35,11 @@
35
35
  "clean": "rimraf dist"
36
36
  },
37
37
  "dependencies": {
38
- "@k-table/ktl": "^1.0.9",
39
- "@k-table/sheet-canvas": "^1.0.9",
40
- "@k-table/sheet-core": "^1.0.9",
41
- "@k-table/sheet-host": "^1.0.9",
42
- "@k-table/sheet-report": "^1.0.9"
38
+ "@k-table/ktl": "^1.0.10",
39
+ "@k-table/sheet-canvas": "^1.0.10",
40
+ "@k-table/sheet-core": "^1.0.10",
41
+ "@k-table/sheet-host": "^1.0.10",
42
+ "@k-table/sheet-report": "^1.0.10"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "@ant-design/icons": ">=5",