@k-table/report 1.0.8 → 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
@@ -51,18 +51,14 @@ html:has([data-kt-root]) body {
51
51
  height: 100%;
52
52
  }
53
53
 
54
- /* kt 自己的 antd App 是 root 的直接子节点;宿主深层的 .ant-app 不受影响 */
55
- [data-kt-root] > .ant-app {
56
- flex: 1 1 auto;
57
- min-height: 0;
58
- height: 100%;
59
- display: flex;
60
- flex-direction: column;
61
- }
62
-
63
- [data-kt-root] .kt-fill-page,
64
- [data-kt-root] .kt-fill-layout,
65
- [data-kt-root] .kt-report-designer-page {
54
+ /* kt 的 antd 作用域(KtAntdScope)用 <App component={false}>,不产生 .ant-app DOM;
55
+ 这里不再写任何 .ant-app 规则,避免影响宿主自己的 antd App 布局。 */
56
+
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 {
66
62
  flex: 1 1 auto;
67
63
  min-height: 0;
68
64
  height: 100%;
@@ -104,19 +100,19 @@ html:has([data-kt-root]) body {
104
100
  margin-left: auto;
105
101
  }
106
102
 
107
- [data-kt-root] .kt-paper-island {
108
- background: var(--kt-forms-canvas-pad, var(--kt-page-bg));
109
- 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));
110
106
  }
111
107
 
112
- [data-kt-root] .kt-paper-island[data-tone="preview"],
113
- [data-kt-root] .kt-preview-stage {
114
- 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));
115
111
  }
116
112
 
117
- [data-kt-root] [data-kt-paper],
118
- [data-kt-root] .kt-report-page,
119
- [data-kt-root] .klab-fill-sheet {
113
+ [data-kt-paper],
114
+ .kt-report-page,
115
+ .klab-fill-sheet {
120
116
  color-scheme: light;
121
117
  background: var(--kt-paper-bg, #fff);
122
118
  color: #1d2129;
@@ -127,7 +123,7 @@ html:has([data-kt-root]) body {
127
123
  --ant-color-border: #d9d9d9;
128
124
  }
129
125
 
130
- [data-kt-root] .kt-chrome {
126
+ .kt-chrome {
131
127
  display: flex;
132
128
  align-items: center;
133
129
  flex-wrap: wrap;
@@ -136,52 +132,52 @@ html:has([data-kt-root]) body {
136
132
  min-height: 40px;
137
133
  padding: 6px 12px;
138
134
  line-height: 1;
139
- border-bottom: 1px solid var(--kt-forms-border, var(--kt-border));
140
- background: var(--kt-forms-chrome-bar, var(--kt-header-bg));
141
- 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));
142
138
  }
143
139
 
144
140
  /* 铬层不跟 density 的 32/36 控件高走;疏密只影响工作区。 */
145
- [data-kt-root] .kt-chrome .ant-btn {
141
+ .kt-chrome .ant-btn {
146
142
  height: 28px;
147
143
  padding-inline: 10px;
148
144
  font-size: 12px;
149
145
  }
150
146
 
151
- [data-kt-root] .kt-chrome .ant-btn.ant-btn-icon-only {
147
+ .kt-chrome .ant-btn.ant-btn-icon-only {
152
148
  width: 28px;
153
149
  padding-inline: 0;
154
150
  }
155
151
 
156
- [data-kt-root] .kt-chrome .ant-select {
152
+ .kt-chrome .ant-select {
157
153
  font-size: 12px;
158
154
  }
159
155
 
160
- [data-kt-root] .kt-chrome .ant-select-selector {
156
+ .kt-chrome .ant-select-selector {
161
157
  min-height: 28px !important;
162
158
  }
163
159
 
164
- [data-kt-root] .kt-report-print-hide .ant-btn {
160
+ .kt-report-print-hide .ant-btn {
165
161
  height: 28px;
166
162
  padding-inline: 10px;
167
163
  font-size: 12px;
168
164
  }
169
165
 
170
- [data-kt-root] .kt-chrome-sub {
171
- background: var(--kt-forms-header-bg, var(--kt-header-bg));
172
- border-bottom: 1px solid var(--kt-forms-border, var(--kt-border));
173
- 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));
174
170
  }
175
171
 
176
- [data-kt-root] .kt-chrome-tab {
177
- background: var(--kt-forms-chrome-tab);
178
- border: 1px solid var(--kt-forms-border);
179
- 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);
180
176
  }
181
177
 
182
- [data-kt-root] .kt-workspace {
178
+ .kt-workspace {
183
179
  min-height: 480px;
184
- background: var(--kt-forms-canvas-pad, var(--kt-page-bg));
180
+ background: var(--kt-forms-canvas-pad, var(--kt-page-bg, #d4e4f5));
185
181
  }
186
182
 
187
183
  [data-kt-root] .kt-theme-bar {
@@ -270,11 +266,12 @@ html:has([data-kt-root]) body {
270
266
  cursor: pointer;
271
267
  }
272
268
 
273
- [data-kt-root][data-kt-style="arco"] [data-kt-surface] .ant-btn,
274
- [data-kt-root][data-kt-style="arco"] [data-kt-surface] .ant-input,
275
- [data-kt-root][data-kt-style="arco"] [data-kt-surface] .ant-input-affix-wrapper,
276
- [data-kt-root][data-kt-style="arco"] [data-kt-surface] .ant-select-selector,
277
- [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 {
278
275
  border-radius: 2px;
279
276
  }
280
277
 
@@ -336,9 +333,9 @@ html:has([data-kt-root]) body {
336
333
  color: var(--kt-forms-text, var(--kt-text)) !important;
337
334
  }
338
335
 
339
- [data-kt-root] .kt-chrome-meta,
336
+ .kt-chrome-meta,
340
337
  [data-kt-surface] .ant-typography-secondary.kt-chrome-meta {
341
- color: var(--kt-forms-text-secondary, var(--kt-text-secondary)) !important;
338
+ color: var(--kt-forms-text-secondary, var(--kt-text-secondary, #4e6a8a)) !important;
342
339
  }
343
340
 
344
341
  [data-kt-surface] .ant-typography-secondary,
@@ -354,55 +351,55 @@ html:has([data-kt-root]) body {
354
351
  color: var(--kt-primary) !important;
355
352
  }
356
353
 
357
- [data-kt-root] [data-kt-paper] .ant-input,
358
- [data-kt-root] [data-kt-paper] .ant-input-outlined,
359
- [data-kt-root] [data-kt-paper] .ant-input-affix-wrapper,
360
- [data-kt-root] [data-kt-paper] textarea.ant-input,
361
- [data-kt-root] [data-kt-paper] .ant-picker,
362
- [data-kt-root] [data-kt-paper] .ant-select-selector,
363
- [data-kt-root] [data-kt-paper] .ant-input-number,
364
- [data-kt-root] [data-kt-paper] .ant-btn-default,
365
- [data-kt-root] .kt-report-page .ant-input,
366
- [data-kt-root] .kt-report-page .ant-select-selector,
367
- [data-kt-root] .klab-fill-sheet .ant-input,
368
- [data-kt-root] .klab-fill-sheet .ant-input-outlined,
369
- [data-kt-root] .klab-fill-sheet .ant-input-affix-wrapper,
370
- [data-kt-root] .klab-fill-sheet textarea.ant-input,
371
- [data-kt-root] .klab-fill-sheet .ant-select-selector,
372
- [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 {
373
370
  background: var(--kt-paper-bg, #fff) !important;
374
371
  color: #1d2129 !important;
375
372
  border-color: #d9d9d9 !important;
376
373
  }
377
374
 
378
- [data-kt-root] [data-kt-paper] .ant-select-selection-item,
379
- [data-kt-root] [data-kt-paper] .ant-select-arrow,
380
- [data-kt-root] [data-kt-paper] .ant-select-selection-search-input,
381
- [data-kt-root] [data-kt-paper] .ant-picker-input > input,
382
- [data-kt-root] .klab-fill-sheet .ant-select-selection-item,
383
- [data-kt-root] .klab-fill-sheet .ant-select-arrow,
384
- [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 {
385
382
  color: #1d2129 !important;
386
383
  }
387
384
 
388
- [data-kt-root] [data-kt-paper] .ant-typography,
389
- [data-kt-root] .kt-report-page .ant-typography,
390
- [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 {
391
388
  color: #1d2129 !important;
392
389
  }
393
390
 
394
- [data-kt-root] [data-kt-paper] .ant-typography-secondary,
395
- [data-kt-root] .klab-fill-sheet .ant-typography-secondary {
391
+ [data-kt-paper] .ant-typography-secondary,
392
+ .klab-fill-sheet .ant-typography-secondary {
396
393
  color: #4e5969 !important;
397
394
  }
398
395
 
399
- [data-kt-root] [data-kt-paper] .ant-input::placeholder,
400
- [data-kt-root] .klab-fill-sheet .ant-input::placeholder,
401
- [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 {
402
399
  color: #8c8c8c !important;
403
400
  }
404
401
 
405
- [data-kt-root] .kt-preview-stage {
402
+ .kt-preview-stage {
406
403
  box-sizing: border-box;
407
404
  display: flex;
408
405
  flex-direction: column;
@@ -413,70 +410,70 @@ html:has([data-kt-root]) body {
413
410
  }
414
411
 
415
412
  /* antd 6 外壳是 .ant-modal-container(不再用 .ant-modal-content),两套都写以免回退。 */
416
- [data-kt-root] .kt-preview-modal .ant-modal-content,
417
- [data-kt-root] .kt-preview-modal .ant-modal-container {
413
+ .kt-preview-modal .ant-modal-content,
414
+ .kt-preview-modal .ant-modal-container {
418
415
  display: flex;
419
416
  flex-direction: column;
420
417
  max-height: calc(100vh - 72px);
421
418
  padding: 0;
422
419
  overflow: hidden;
423
- background: var(--kt-forms-preview-host, var(--kt-page-bg));
420
+ background: var(--kt-forms-preview-host, var(--kt-page-bg, #dce8f6));
424
421
  color: var(--kt-forms-text, var(--kt-text));
425
422
  border: 1px solid var(--kt-forms-border, var(--kt-border));
426
423
  box-sizing: border-box;
427
424
  }
428
425
 
429
- [data-kt-root] .kt-preview-modal .ant-modal-header {
426
+ .kt-preview-modal .ant-modal-header {
430
427
  flex-shrink: 0;
431
428
  margin-bottom: 0;
432
429
  padding: 10px 16px;
433
- background: var(--kt-forms-chrome-bar, var(--kt-header-bg));
434
- 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));
435
432
  }
436
433
 
437
- [data-kt-root] .kt-preview-modal .ant-modal-title,
438
- [data-kt-root] .kt-preview-modal .ant-modal-close {
439
- 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));
440
437
  }
441
438
 
442
- [data-kt-root] .kt-preview-modal .ant-modal-body {
439
+ .kt-preview-modal .ant-modal-body {
443
440
  flex: 1 1 auto;
444
441
  min-height: 0;
445
- background: var(--kt-forms-preview-host, var(--kt-page-bg));
442
+ background: var(--kt-forms-preview-host, var(--kt-page-bg, #dce8f6));
446
443
  padding: 8px 16px 16px;
447
444
  max-height: none;
448
445
  overflow: auto;
449
446
  }
450
447
 
451
- [data-kt-root] .kt-preview-modal .kt-preview,
452
- [data-kt-root] .kt-preview-modal .kt-preview--modal {
448
+ .kt-preview-modal .kt-preview,
449
+ .kt-preview-modal .kt-preview--modal {
453
450
  display: flex;
454
451
  flex-direction: column;
455
452
  min-width: 0;
456
453
  min-height: 0;
457
454
  }
458
455
 
459
- [data-kt-root] .kt-preview-modal .kt-preview-print-bar {
456
+ .kt-preview-modal .kt-preview-print-bar {
460
457
  position: sticky;
461
458
  top: 0;
462
459
  z-index: 2;
463
460
  margin-bottom: 8px;
464
- background: var(--kt-forms-preview-host, var(--kt-page-bg));
461
+ background: var(--kt-forms-preview-host, var(--kt-page-bg, #dce8f6));
465
462
  }
466
463
 
467
- [data-kt-root] .kt-preview-modal .kt-report-preview-host {
464
+ .kt-preview-modal .kt-report-preview-host {
468
465
  padding: 8px 0 0;
469
466
  background: transparent;
470
467
  }
471
468
 
472
- [data-kt-root] .kt-preview-print-bar .ant-btn,
473
- [data-kt-root] .kt-preview--modal .ant-btn {
469
+ .kt-preview-print-bar .ant-btn,
470
+ .kt-preview--modal .ant-btn {
474
471
  height: 28px;
475
472
  padding-inline: 10px;
476
473
  font-size: 12px;
477
474
  }
478
475
 
479
- [data-kt-root] .kt-preview-print-bar .ant-select-selector {
476
+ .kt-preview-print-bar .ant-select-selector {
480
477
  min-height: 28px !important;
481
478
  }
482
479
 
@@ -497,18 +494,36 @@ html:has([data-kt-root]) body {
497
494
  background: #fff;
498
495
  }
499
496
 
500
- [data-kt-root] .kt-paper-island,
501
- [data-kt-root] [data-kt-paper],
502
- [data-kt-root] .kt-report-page,
503
- [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 {
504
519
  color-scheme: light !important;
505
520
  background: #fff !important;
506
521
  color: #1d2129 !important;
507
522
  }
508
523
 
509
- [data-kt-root] .kt-brand,
510
- [data-kt-root] .kt-chrome,
511
- [data-kt-root] .kt-report-print-hide {
524
+ .kt-brand,
525
+ .kt-chrome,
526
+ .kt-report-print-hide {
512
527
  display: none !important;
513
528
  }
514
529
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@k-table/report",
3
- "version": "1.0.8",
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.8",
39
- "@k-table/sheet-canvas": "^1.0.8",
40
- "@k-table/sheet-core": "^1.0.8",
41
- "@k-table/sheet-host": "^1.0.8",
42
- "@k-table/sheet-report": "^1.0.8"
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",