photon-grid-core 0.0.2 → 1.0.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 (201) hide show
  1. package/README.md +304 -304
  2. package/chart/chart-config/chart-controls.d.ts +49 -0
  3. package/chart/chart-config/chart-controls.d.ts.map +1 -0
  4. package/chart/chart-config/chart-controls.js +229 -0
  5. package/chart/chart-config/chart-controls.js.map +1 -0
  6. package/chart/chart-config/chart-tool-panel.d.ts +86 -0
  7. package/chart/chart-config/chart-tool-panel.d.ts.map +1 -0
  8. package/chart/chart-config/chart-tool-panel.js +402 -0
  9. package/chart/chart-config/chart-tool-panel.js.map +1 -0
  10. package/chart/chart-panel.d.ts +97 -0
  11. package/chart/chart-panel.d.ts.map +1 -1
  12. package/chart/chart-panel.js +211 -58
  13. package/chart/chart-panel.js.map +1 -1
  14. package/chart/chart-renderer.d.ts +97 -0
  15. package/chart/chart-renderer.d.ts.map +1 -1
  16. package/chart/chart-renderer.js +335 -72
  17. package/chart/chart-renderer.js.map +1 -1
  18. package/chart/chart-theme.d.ts +38 -0
  19. package/chart/chart-theme.d.ts.map +1 -0
  20. package/chart/chart-theme.js +47 -0
  21. package/chart/chart-theme.js.map +1 -0
  22. package/chart/model/chart-model-mapper.d.ts +38 -0
  23. package/chart/model/chart-model-mapper.d.ts.map +1 -0
  24. package/chart/model/chart-model-mapper.js +128 -0
  25. package/chart/model/chart-model-mapper.js.map +1 -0
  26. package/chart/model/chart-model.d.ts +153 -0
  27. package/chart/model/chart-model.d.ts.map +1 -0
  28. package/chart/model/chart-model.js +79 -0
  29. package/chart/model/chart-model.js.map +1 -0
  30. package/chart/range-chart-controller.d.ts +68 -0
  31. package/chart/range-chart-controller.d.ts.map +1 -0
  32. package/chart/range-chart-controller.js +209 -0
  33. package/chart/range-chart-controller.js.map +1 -0
  34. package/chart/range-chart-service.d.ts +78 -0
  35. package/chart/range-chart-service.d.ts.map +1 -0
  36. package/chart/range-chart-service.js +162 -0
  37. package/chart/range-chart-service.js.map +1 -0
  38. package/core/grid-api.d.ts +20 -0
  39. package/core/grid-api.d.ts.map +1 -1
  40. package/core/grid-api.js +41 -0
  41. package/core/grid-api.js.map +1 -1
  42. package/core/grid-context.d.ts +7 -0
  43. package/core/grid-context.d.ts.map +1 -1
  44. package/core/grid-core.d.ts.map +1 -1
  45. package/core/grid-core.js +21 -9
  46. package/core/grid-core.js.map +1 -1
  47. package/icons/icon-sets/core-icons.js +1 -1
  48. package/icons/icon-sets/core-icons.js.map +1 -1
  49. package/index.d.ts +1 -0
  50. package/index.d.ts.map +1 -1
  51. package/package.json +57 -70
  52. package/renderer/body-renderer.d.ts.map +1 -1
  53. package/renderer/body-renderer.js +21 -4
  54. package/renderer/body-renderer.js.map +1 -1
  55. package/renderer/cell-renderer.js +1 -1
  56. package/renderer/cell-renderer.js.map +1 -1
  57. package/renderer/column-menu.js +24 -25
  58. package/renderer/column-menu.js.map +1 -1
  59. package/renderer/column-style-manager.d.ts.map +1 -1
  60. package/renderer/column-style-manager.js +11 -2
  61. package/renderer/column-style-manager.js.map +1 -1
  62. package/renderer/grid-renderer.js +1 -1
  63. package/renderer/grid-renderer.js.map +1 -1
  64. package/renderer/header-renderer.d.ts.map +1 -1
  65. package/renderer/header-renderer.js +17 -3
  66. package/renderer/header-renderer.js.map +1 -1
  67. package/renderer/row-drag-renderer.d.ts +18 -0
  68. package/renderer/row-drag-renderer.d.ts.map +1 -1
  69. package/renderer/row-drag-renderer.js +53 -0
  70. package/renderer/row-drag-renderer.js.map +1 -1
  71. package/styles/base/cells.css.d.ts +9 -0
  72. package/styles/base/cells.css.d.ts.map +1 -0
  73. package/styles/base/cells.css.js +233 -0
  74. package/styles/base/cells.css.js.map +1 -0
  75. package/styles/base/chart-config.css.d.ts +10 -0
  76. package/styles/base/chart-config.css.d.ts.map +1 -0
  77. package/styles/base/chart-config.css.js +126 -0
  78. package/styles/base/chart-config.css.js.map +1 -0
  79. package/styles/base/chart-controls.css.d.ts +7 -0
  80. package/styles/base/chart-controls.css.d.ts.map +1 -0
  81. package/styles/base/chart-controls.css.js +165 -0
  82. package/styles/base/chart-controls.css.js.map +1 -0
  83. package/styles/base/chart-panel.css.d.ts +9 -0
  84. package/styles/base/chart-panel.css.d.ts.map +1 -0
  85. package/styles/base/chart-panel.css.js +148 -0
  86. package/styles/base/chart-panel.css.js.map +1 -0
  87. package/styles/base/column-context-menu.css.d.ts +9 -0
  88. package/styles/base/column-context-menu.css.d.ts.map +1 -0
  89. package/styles/base/column-context-menu.css.js +153 -0
  90. package/styles/base/column-context-menu.css.js.map +1 -0
  91. package/styles/base/column-group-header.css.d.ts +9 -0
  92. package/styles/base/column-group-header.css.d.ts.map +1 -0
  93. package/styles/base/column-group-header.css.js +270 -0
  94. package/styles/base/column-group-header.css.js.map +1 -0
  95. package/styles/base/context-menu.css.d.ts +9 -0
  96. package/styles/base/context-menu.css.d.ts.map +1 -0
  97. package/styles/base/context-menu.css.js +103 -0
  98. package/styles/base/context-menu.css.js.map +1 -0
  99. package/styles/base/editors.css.d.ts +9 -0
  100. package/styles/base/editors.css.d.ts.map +1 -0
  101. package/styles/base/editors.css.js +291 -0
  102. package/styles/base/editors.css.js.map +1 -0
  103. package/styles/base/filter.css.d.ts +9 -0
  104. package/styles/base/filter.css.d.ts.map +1 -0
  105. package/styles/base/filter.css.js +312 -0
  106. package/styles/base/filter.css.js.map +1 -0
  107. package/styles/base/footer.css.d.ts +9 -0
  108. package/styles/base/footer.css.d.ts.map +1 -0
  109. package/styles/base/footer.css.js +78 -0
  110. package/styles/base/footer.css.js.map +1 -0
  111. package/styles/base/group-bar-search.css.d.ts +9 -0
  112. package/styles/base/group-bar-search.css.d.ts.map +1 -0
  113. package/styles/base/group-bar-search.css.js +86 -0
  114. package/styles/base/group-bar-search.css.js.map +1 -0
  115. package/styles/base/group-drop-zone.css.d.ts +9 -0
  116. package/styles/base/group-drop-zone.css.d.ts.map +1 -0
  117. package/styles/base/group-drop-zone.css.js +173 -0
  118. package/styles/base/group-drop-zone.css.js.map +1 -0
  119. package/styles/base/header.css.d.ts +9 -0
  120. package/styles/base/header.css.d.ts.map +1 -0
  121. package/styles/base/header.css.js +206 -0
  122. package/styles/base/header.css.js.map +1 -0
  123. package/styles/base/master-detail.css.d.ts +9 -0
  124. package/styles/base/master-detail.css.d.ts.map +1 -0
  125. package/styles/base/master-detail.css.js +202 -0
  126. package/styles/base/master-detail.css.js.map +1 -0
  127. package/styles/base/misc.css.d.ts +9 -0
  128. package/styles/base/misc.css.d.ts.map +1 -0
  129. package/styles/base/misc.css.js +65 -0
  130. package/styles/base/misc.css.js.map +1 -0
  131. package/styles/base/panels.css.d.ts +9 -0
  132. package/styles/base/panels.css.d.ts.map +1 -0
  133. package/styles/base/panels.css.js +162 -0
  134. package/styles/base/panels.css.js.map +1 -0
  135. package/styles/base/photon-ai.css.d.ts +9 -0
  136. package/styles/base/photon-ai.css.d.ts.map +1 -0
  137. package/styles/base/photon-ai.css.js +200 -0
  138. package/styles/base/photon-ai.css.js.map +1 -0
  139. package/styles/base/root.css.d.ts +9 -0
  140. package/styles/base/root.css.d.ts.map +1 -0
  141. package/styles/base/root.css.js +56 -0
  142. package/styles/base/root.css.js.map +1 -0
  143. package/styles/base/row-drag.css.d.ts +9 -0
  144. package/styles/base/row-drag.css.d.ts.map +1 -0
  145. package/styles/base/row-drag.css.js +93 -0
  146. package/styles/base/row-drag.css.js.map +1 -0
  147. package/styles/base/row-group.css.d.ts +9 -0
  148. package/styles/base/row-group.css.d.ts.map +1 -0
  149. package/styles/base/row-group.css.js +79 -0
  150. package/styles/base/row-group.css.js.map +1 -0
  151. package/styles/base/rows.css.d.ts +9 -0
  152. package/styles/base/rows.css.d.ts.map +1 -0
  153. package/styles/base/rows.css.js +83 -0
  154. package/styles/base/rows.css.js.map +1 -0
  155. package/styles/base/scrollbars.css.d.ts +9 -0
  156. package/styles/base/scrollbars.css.d.ts.map +1 -0
  157. package/styles/base/scrollbars.css.js +56 -0
  158. package/styles/base/scrollbars.css.js.map +1 -0
  159. package/styles/base/sparkline.css.d.ts +9 -0
  160. package/styles/base/sparkline.css.d.ts.map +1 -0
  161. package/styles/base/sparkline.css.js +109 -0
  162. package/styles/base/sparkline.css.js.map +1 -0
  163. package/styles/base/tooltip.css.d.ts +9 -0
  164. package/styles/base/tooltip.css.d.ts.map +1 -0
  165. package/styles/base/tooltip.css.js +39 -0
  166. package/styles/base/tooltip.css.js.map +1 -0
  167. package/styles/base/tree.css.d.ts +9 -0
  168. package/styles/base/tree.css.d.ts.map +1 -0
  169. package/styles/base/tree.css.js +78 -0
  170. package/styles/base/tree.css.js.map +1 -0
  171. package/styles/base-styles.d.ts.map +1 -1
  172. package/styles/base-styles.js +60 -3026
  173. package/styles/base-styles.js.map +1 -1
  174. package/styles/themes/theme-alpine.d.ts +1 -1
  175. package/styles/themes/theme-alpine.d.ts.map +1 -1
  176. package/styles/themes/theme-alpine.js +1 -1
  177. package/styles/themes/theme-balham.d.ts +1 -1
  178. package/styles/themes/theme-balham.d.ts.map +1 -1
  179. package/styles/themes/theme-balham.js +0 -1
  180. package/styles/themes/theme-balham.js.map +1 -1
  181. package/styles/themes/theme-dark.d.ts +1 -1
  182. package/styles/themes/theme-dark.d.ts.map +1 -1
  183. package/styles/themes/theme-dark.js +1 -1
  184. package/styles/themes/theme-material.d.ts +1 -1
  185. package/styles/themes/theme-material.d.ts.map +1 -1
  186. package/styles/themes/theme-material.js +0 -1
  187. package/styles/themes/theme-material.js.map +1 -1
  188. package/styles/themes/theme-quartz.d.ts +1 -1
  189. package/styles/themes/theme-quartz.d.ts.map +1 -1
  190. package/styles/themes/theme-quartz.js +1 -1
  191. package/types/event.types.d.ts +29 -0
  192. package/types/event.types.d.ts.map +1 -1
  193. package/types/event.types.js +1 -0
  194. package/types/event.types.js.map +1 -1
  195. package/types/grid.types.d.ts +51 -0
  196. package/types/grid.types.d.ts.map +1 -1
  197. package/LICENSE +0 -1
  198. package/chart/chart-analyzer.d.ts +0 -12
  199. package/chart/chart-analyzer.d.ts.map +0 -1
  200. package/chart/chart-analyzer.js +0 -77
  201. package/chart/chart-analyzer.js.map +0 -1
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Photon Grid base styles — context-menu section.
3
+ *
4
+ * Auto-split from base-styles.ts. Concatenated back (in order) by
5
+ * base-styles.ts; edit here, not there. Order is preserved because CSS
6
+ * cascade depends on it.
7
+ */
8
+ export const contextMenuCss = `/* ─── Context menu ─── */
9
+ .pg-context-menu {
10
+ position: fixed;
11
+ z-index: 999999;
12
+ display: none;
13
+ min-width: 192px;
14
+ padding: 4px 0;
15
+ background: var(--pg-colors-surface, #fff);
16
+ border: 1px solid var(--pg-colors-border, #e2e8f0);
17
+ border-radius: var(--pg-borders-radius-md, 6px);
18
+ box-shadow: var(--pg-shadows-dropdown, 0 8px 24px rgba(0,0,0,0.12), 0 2px 6px rgba(0,0,0,0.07));
19
+ font-family: var(--pg-typography-font-family, system-ui, sans-serif);
20
+ font-size: var(--pg-typography-font-size-md, 13px);
21
+ }
22
+ .pg-context-menu--visible { display: block; }
23
+ .pg-context-menu__item {
24
+ display: flex;
25
+ align-items: center;
26
+ width: 100%;
27
+ padding: 7px 14px;
28
+ border: none;
29
+ background: transparent;
30
+ cursor: pointer;
31
+ text-align: left;
32
+ color: var(--pg-colors-text-primary, #0f172a);
33
+ gap: 0;
34
+ transition: background 80ms;
35
+ }
36
+ .pg-context-menu__item:hover { background: var(--pg-colors-background-alt, #f1f5f9); }
37
+ .pg-context-menu__item:active { background: var(--pg-colors-border, #e2e8f0); }
38
+ .pg-context-menu__label { flex: 1; }
39
+ .pg-context-menu__kbd {
40
+ font-size: var(--pg-typography-font-size-sm, 11px);
41
+ color: var(--pg-colors-text-disabled, #94a3b8);
42
+ letter-spacing: 0.01em;
43
+ }
44
+ .pg-context-menu__sep {
45
+ margin: 4px 0;
46
+ border-top: 1px solid var(--pg-colors-border-ctxt-menu, #e2e8f0);
47
+ background: var(--pg-colors-border, #e2e8f0);
48
+ }
49
+
50
+ .pg-cell__inner {
51
+ display: flex;
52
+ align-items: center;
53
+ width: 100%;
54
+ height: 100%;
55
+ padding: 0 12px;
56
+ overflow: hidden;
57
+ }
58
+ .pg-cell__value {
59
+ flex: 1;
60
+ min-width: 0;
61
+ overflow: hidden;
62
+ text-overflow: ellipsis;
63
+ white-space: nowrap;
64
+ line-height: var(--pg-typography-line-height-base, 1.5);
65
+ }
66
+ .pg-cell--checkbox {
67
+ width: 44px;
68
+ min-width: 44px;
69
+ max-width: 44px;
70
+ justify-content: center;
71
+ flex-shrink: 0;
72
+ border-right: 1px solid var(--pg-colors-border, #e2e8f0);
73
+ }
74
+ .pg-cell--serial {
75
+ width: 52px;
76
+ min-width: 52px;
77
+ max-width: 52px;
78
+ justify-content: center;
79
+ flex-shrink: 0;
80
+ border-right: 1px solid var(--pg-colors-border, #e2e8f0);
81
+ color: var(--pg-colors-text-secondary, #475569);
82
+ font-size: var(--pg-typography-font-size-sm, 12px);
83
+ }
84
+ .pg-cell__serial { font-variant-numeric: tabular-nums; }
85
+ .pg-cell--bool-true { color: var(--pg-colors-success, #16a34a); }
86
+ .pg-cell--bool-false { color: var(--pg-colors-text-disabled, #94a3b8); }
87
+ .pg-cell__image { border-radius: var(--pg-borders-radius-sm, 4px); object-fit: cover; }
88
+ .pg-badge {
89
+ display: inline-flex;
90
+ align-items: center;
91
+ padding: 2px 8px;
92
+ border-radius: var(--pg-borders-radius-pill, 9999px);
93
+ font-size: var(--pg-typography-font-size-xs, 11px);
94
+ font-weight: var(--pg-typography-font-weight-medium, 500);
95
+ white-space: nowrap;
96
+ }
97
+ .pg-cell--range-selected { background: var(--pg-colors-selection-background, rgba(37,99,235,0.08)); }
98
+ .pg-cell--editing { padding: 0;border-radius: 4px }
99
+ .pg-cell--editing .pg-cell__inner { padding: 0; overflow: visible; }
100
+ .pg-selection-canvas { position: absolute; top: 0; left: 0; pointer-events: none; z-index: 10; }
101
+
102
+ `;
103
+ //# sourceMappingURL=context-menu.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-menu.css.js","sourceRoot":"","sources":["../../../src/styles/base/context-menu.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8F7B,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Photon Grid base styles — editors section.
3
+ *
4
+ * Auto-split from base-styles.ts. Concatenated back (in order) by
5
+ * base-styles.ts; edit here, not there. Order is preserved because CSS
6
+ * cascade depends on it.
7
+ */
8
+ export declare const editorsCss = "/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Editors \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-editor {\n width: 100%;\n height: 100%;\n padding: 0 12px;\n border: none;\n outline: none;\n font-size: inherit;\n font-family: inherit;\n background: var(--pg-colors-cell-edit-background, #fff);\n color: inherit;\n box-sizing: border-box;\n}\n.pg-editor:focus { outline: none; box-shadow: inset 0 0 0 2px var(--pg-colors-primary, #2563eb); }\n.pg-editor--select { cursor: pointer; padding-right: 8px; }\n.pg-editor--checkbox { width: auto; height: auto; margin: auto; cursor: pointer; }\n\n/* \u2500\u2500 Multi-select (array) editor \u2500\u2500 */\n.pg-editor--multiselect {\n position: relative;\n display: flex;\n align-items: center;\n height: 100%;\n padding: 0;\n cursor: pointer;\n background: var(--pg-colors-cell-edit-background, #fff);\n}\n.pg-editor__ms-trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n height: 100%;\n padding: 0 8px 0 12px;\n user-select: none;\n gap: 6px;\n}\n.pg-editor__ms-text {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: inherit;\n color: inherit;\n}\n.pg-editor__ms-arrow {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--pg-colors-text-secondary, #64748b);\n}\n.pg-editor__ms-arrow::after {\n content: '';\n display: block;\n width: 0;\n height: 0;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n border-top: 5px solid currentColor;\n}\n.pg-editor__ms-panel {\n display: none;\n position: absolute;\n top: calc(100% + 2px);\n left: 0;\n min-width: 100%;\n max-height: 220px;\n overflow-y: auto;\n background: var(--pg-colors-surface, #fff);\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: 6px;\n box-shadow: 0 8px 24px rgba(0,0,0,0.12), 0 2px 6px rgba(0,0,0,0.06);\n z-index: 9999;\n padding: 4px;\n}\n.pg-editor__ms-panel--open { display: block; }\n.pg-editor__ms-option {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 6px 10px;\n border-radius: 4px;\n cursor: pointer;\n transition: background 80ms;\n font-size: inherit;\n font-family: inherit;\n color: var(--pg-colors-text-primary, #0f172a);\n}\n.pg-editor__ms-option:hover { background: var(--pg-colors-background-alt, #f1f5f9); }\n.pg-editor__ms-check {\n flex-shrink: 0;\n width: 14px;\n height: 14px;\n cursor: pointer;\n accent-color: var(--pg-colors-primary, #2563eb);\n}\n.pg-editor__ms-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* \u2500\u2500 Custom dropdown editor \u2500\u2500 */\n.pg-dropdown-editor__trigger {\n display: flex;\n align-items: center;\n width: 100%;\n height: 100%;\n padding: 0 6px 0 12px;\n gap: 6px;\n cursor: default;\n}\n.pg-dropdown-editor__trigger-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: inherit;\n color: inherit;\n}\n.pg-dropdown-editor__arrow {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--pg-colors-text-secondary, #64748b);\n}\n.pg-dropdown-editor__arrow::after {\n content: '';\n display: block;\n width: 0;\n height: 0;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n border-top: 5px solid currentColor;\n}\n/* Panel \u2014 position:fixed, appended to document.body */\n.pg-dropdown-editor__panel {\n position: fixed;\n z-index: 99999;\n background: var(--pg-colors-surface, #fff);\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: 8px;\n box-shadow: 0 8px 32px rgba(0,0,0,0.13), 0 2px 8px rgba(0,0,0,0.07);\n overflow: hidden;\n opacity: 0;\n transform: scaleY(0.94) translateY(-4px);\n transform-origin: top center;\n transition: opacity 130ms ease, transform 130ms ease;\n}\n.pg-dropdown-editor__panel--visible {\n opacity: 1;\n transform: scaleY(1) translateY(0);\n}\n.pg-dropdown-editor__panel--above {\n transform-origin: bottom center;\n transform: scaleY(0.94) translateY(4px);\n}\n.pg-dropdown-editor__panel--above.pg-dropdown-editor__panel--visible {\n transform: scaleY(1) translateY(0);\n}\n/* Scrollable list */\n.pg-dropdown-editor__scroll {\n overflow-y: auto;\n overflow-x: hidden;\n outline: none;\n}\n.pg-dropdown-editor__scroll::-webkit-scrollbar { width: 5px; }\n.pg-dropdown-editor__scroll::-webkit-scrollbar-track { background: transparent; }\n.pg-dropdown-editor__scroll::-webkit-scrollbar-thumb {\n background: var(--pg-colors-border, #e2e8f0);\n border-radius: 3px;\n}\n/* Virtual scroll layout */\n.pg-dropdown-editor__spacer { position: relative; }\n.pg-dropdown-editor__items { position: absolute; left: 0; right: 0; top: 0; }\n/* Option rows \u2014 height must equal CustomDropdownEditor.ITEM_HEIGHT (34px) */\n.pg-dropdown-editor__option {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 0 10px;\n height: 34px;\n cursor: pointer;\n transition: background 60ms;\n color: var(--pg-colors-text-primary, #0f172a);\n font-family: var(--pg-typography-font-family, system-ui, sans-serif);\n font-size: 13px;\n}\n.pg-dropdown-editor__option:hover,\n.pg-dropdown-editor__option--highlighted {\n background: var(--pg-colors-background-alt, #f1f5f9);\n}\n.pg-dropdown-editor__option--selected {\n background: var(--pg-colors-primary-subtle, #eff6ff);\n color: var(--pg-colors-primary, #2563eb);\n font-weight: 500;\n}\n.pg-dropdown-editor__option--selected.pg-dropdown-editor__option--highlighted {\n background: var(--pg-colors-primary-subtle-hover, #dbeafe);\n}\n/* Icon / image before label */\n.pg-dropdown-editor__opt-icon {\n flex-shrink: 0;\n width: 20px;\n height: 20px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n border-radius: 3px;\n}\n.pg-dropdown-editor__opt-icon img {\n width: 20px;\n height: 20px;\n object-fit: cover;\n border-radius: 2px;\n display: block;\n}\n.pg-dropdown-editor__opt-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n/* Checkmark for the currently selected option */\n.pg-dropdown-editor__opt-check {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--pg-colors-primary, #2563eb);\n}\n.pg-dropdown-editor__opt-check::after {\n content: '';\n display: block;\n width: 5px;\n height: 9px;\n border-right: 2px solid currentColor;\n border-bottom: 2px solid currentColor;\n transform: rotate(45deg) translate(-1px, -1px);\n}\n/* Empty state */\n.pg-dropdown-editor__empty {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 48px;\n color: var(--pg-colors-text-secondary, #64748b);\n font-size: 13px;\n font-family: var(--pg-typography-font-family, system-ui, sans-serif);\n}\n\n/* \u2500\u2500 Array cell tag display \u2500\u2500 */\n.pg-cell__value--tags {\n display: flex;\n align-items: center;\n gap: 4px;\n flex-wrap: nowrap;\n overflow: hidden;\n flex: 1;\n min-width: 0;\n}\n.pg-badge--overflow {\n background: var(--pg-colors-background-alt, #f1f5f9);\n color: var(--pg-colors-text-secondary, #64748b);\n font-size: 10px;\n flex-shrink: 0;\n}\n\n";
9
+ //# sourceMappingURL=editors.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editors.css.d.ts","sourceRoot":"","sources":["../../../src/styles/base/editors.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,8gPA0RtB,CAAC"}
@@ -0,0 +1,291 @@
1
+ /**
2
+ * Photon Grid base styles — editors section.
3
+ *
4
+ * Auto-split from base-styles.ts. Concatenated back (in order) by
5
+ * base-styles.ts; edit here, not there. Order is preserved because CSS
6
+ * cascade depends on it.
7
+ */
8
+ export const editorsCss = `/* ──────────────────── Editors ──────────────────── */
9
+ .pg-editor {
10
+ width: 100%;
11
+ height: 100%;
12
+ padding: 0 12px;
13
+ border: none;
14
+ outline: none;
15
+ font-size: inherit;
16
+ font-family: inherit;
17
+ background: var(--pg-colors-cell-edit-background, #fff);
18
+ color: inherit;
19
+ box-sizing: border-box;
20
+ }
21
+ .pg-editor:focus { outline: none; box-shadow: inset 0 0 0 2px var(--pg-colors-primary, #2563eb); }
22
+ .pg-editor--select { cursor: pointer; padding-right: 8px; }
23
+ .pg-editor--checkbox { width: auto; height: auto; margin: auto; cursor: pointer; }
24
+
25
+ /* ── Multi-select (array) editor ── */
26
+ .pg-editor--multiselect {
27
+ position: relative;
28
+ display: flex;
29
+ align-items: center;
30
+ height: 100%;
31
+ padding: 0;
32
+ cursor: pointer;
33
+ background: var(--pg-colors-cell-edit-background, #fff);
34
+ }
35
+ .pg-editor__ms-trigger {
36
+ display: flex;
37
+ align-items: center;
38
+ justify-content: space-between;
39
+ width: 100%;
40
+ height: 100%;
41
+ padding: 0 8px 0 12px;
42
+ user-select: none;
43
+ gap: 6px;
44
+ }
45
+ .pg-editor__ms-text {
46
+ flex: 1;
47
+ min-width: 0;
48
+ overflow: hidden;
49
+ text-overflow: ellipsis;
50
+ white-space: nowrap;
51
+ font-size: inherit;
52
+ color: inherit;
53
+ }
54
+ .pg-editor__ms-arrow {
55
+ flex-shrink: 0;
56
+ width: 16px;
57
+ height: 16px;
58
+ display: flex;
59
+ align-items: center;
60
+ justify-content: center;
61
+ color: var(--pg-colors-text-secondary, #64748b);
62
+ }
63
+ .pg-editor__ms-arrow::after {
64
+ content: '';
65
+ display: block;
66
+ width: 0;
67
+ height: 0;
68
+ border-left: 4px solid transparent;
69
+ border-right: 4px solid transparent;
70
+ border-top: 5px solid currentColor;
71
+ }
72
+ .pg-editor__ms-panel {
73
+ display: none;
74
+ position: absolute;
75
+ top: calc(100% + 2px);
76
+ left: 0;
77
+ min-width: 100%;
78
+ max-height: 220px;
79
+ overflow-y: auto;
80
+ background: var(--pg-colors-surface, #fff);
81
+ border: 1px solid var(--pg-colors-border, #e2e8f0);
82
+ border-radius: 6px;
83
+ box-shadow: 0 8px 24px rgba(0,0,0,0.12), 0 2px 6px rgba(0,0,0,0.06);
84
+ z-index: 9999;
85
+ padding: 4px;
86
+ }
87
+ .pg-editor__ms-panel--open { display: block; }
88
+ .pg-editor__ms-option {
89
+ display: flex;
90
+ align-items: center;
91
+ gap: 8px;
92
+ padding: 6px 10px;
93
+ border-radius: 4px;
94
+ cursor: pointer;
95
+ transition: background 80ms;
96
+ font-size: inherit;
97
+ font-family: inherit;
98
+ color: var(--pg-colors-text-primary, #0f172a);
99
+ }
100
+ .pg-editor__ms-option:hover { background: var(--pg-colors-background-alt, #f1f5f9); }
101
+ .pg-editor__ms-check {
102
+ flex-shrink: 0;
103
+ width: 14px;
104
+ height: 14px;
105
+ cursor: pointer;
106
+ accent-color: var(--pg-colors-primary, #2563eb);
107
+ }
108
+ .pg-editor__ms-label {
109
+ flex: 1;
110
+ min-width: 0;
111
+ overflow: hidden;
112
+ text-overflow: ellipsis;
113
+ white-space: nowrap;
114
+ }
115
+
116
+ /* ── Custom dropdown editor ── */
117
+ .pg-dropdown-editor__trigger {
118
+ display: flex;
119
+ align-items: center;
120
+ width: 100%;
121
+ height: 100%;
122
+ padding: 0 6px 0 12px;
123
+ gap: 6px;
124
+ cursor: default;
125
+ }
126
+ .pg-dropdown-editor__trigger-label {
127
+ flex: 1;
128
+ min-width: 0;
129
+ overflow: hidden;
130
+ text-overflow: ellipsis;
131
+ white-space: nowrap;
132
+ font-size: inherit;
133
+ color: inherit;
134
+ }
135
+ .pg-dropdown-editor__arrow {
136
+ flex-shrink: 0;
137
+ width: 16px;
138
+ height: 16px;
139
+ display: flex;
140
+ align-items: center;
141
+ justify-content: center;
142
+ color: var(--pg-colors-text-secondary, #64748b);
143
+ }
144
+ .pg-dropdown-editor__arrow::after {
145
+ content: '';
146
+ display: block;
147
+ width: 0;
148
+ height: 0;
149
+ border-left: 4px solid transparent;
150
+ border-right: 4px solid transparent;
151
+ border-top: 5px solid currentColor;
152
+ }
153
+ /* Panel — position:fixed, appended to document.body */
154
+ .pg-dropdown-editor__panel {
155
+ position: fixed;
156
+ z-index: 99999;
157
+ background: var(--pg-colors-surface, #fff);
158
+ border: 1px solid var(--pg-colors-border, #e2e8f0);
159
+ border-radius: 8px;
160
+ box-shadow: 0 8px 32px rgba(0,0,0,0.13), 0 2px 8px rgba(0,0,0,0.07);
161
+ overflow: hidden;
162
+ opacity: 0;
163
+ transform: scaleY(0.94) translateY(-4px);
164
+ transform-origin: top center;
165
+ transition: opacity 130ms ease, transform 130ms ease;
166
+ }
167
+ .pg-dropdown-editor__panel--visible {
168
+ opacity: 1;
169
+ transform: scaleY(1) translateY(0);
170
+ }
171
+ .pg-dropdown-editor__panel--above {
172
+ transform-origin: bottom center;
173
+ transform: scaleY(0.94) translateY(4px);
174
+ }
175
+ .pg-dropdown-editor__panel--above.pg-dropdown-editor__panel--visible {
176
+ transform: scaleY(1) translateY(0);
177
+ }
178
+ /* Scrollable list */
179
+ .pg-dropdown-editor__scroll {
180
+ overflow-y: auto;
181
+ overflow-x: hidden;
182
+ outline: none;
183
+ }
184
+ .pg-dropdown-editor__scroll::-webkit-scrollbar { width: 5px; }
185
+ .pg-dropdown-editor__scroll::-webkit-scrollbar-track { background: transparent; }
186
+ .pg-dropdown-editor__scroll::-webkit-scrollbar-thumb {
187
+ background: var(--pg-colors-border, #e2e8f0);
188
+ border-radius: 3px;
189
+ }
190
+ /* Virtual scroll layout */
191
+ .pg-dropdown-editor__spacer { position: relative; }
192
+ .pg-dropdown-editor__items { position: absolute; left: 0; right: 0; top: 0; }
193
+ /* Option rows — height must equal CustomDropdownEditor.ITEM_HEIGHT (34px) */
194
+ .pg-dropdown-editor__option {
195
+ display: flex;
196
+ align-items: center;
197
+ gap: 8px;
198
+ padding: 0 10px;
199
+ height: 34px;
200
+ cursor: pointer;
201
+ transition: background 60ms;
202
+ color: var(--pg-colors-text-primary, #0f172a);
203
+ font-family: var(--pg-typography-font-family, system-ui, sans-serif);
204
+ font-size: 13px;
205
+ }
206
+ .pg-dropdown-editor__option:hover,
207
+ .pg-dropdown-editor__option--highlighted {
208
+ background: var(--pg-colors-background-alt, #f1f5f9);
209
+ }
210
+ .pg-dropdown-editor__option--selected {
211
+ background: var(--pg-colors-primary-subtle, #eff6ff);
212
+ color: var(--pg-colors-primary, #2563eb);
213
+ font-weight: 500;
214
+ }
215
+ .pg-dropdown-editor__option--selected.pg-dropdown-editor__option--highlighted {
216
+ background: var(--pg-colors-primary-subtle-hover, #dbeafe);
217
+ }
218
+ /* Icon / image before label */
219
+ .pg-dropdown-editor__opt-icon {
220
+ flex-shrink: 0;
221
+ width: 20px;
222
+ height: 20px;
223
+ display: inline-flex;
224
+ align-items: center;
225
+ justify-content: center;
226
+ overflow: hidden;
227
+ border-radius: 3px;
228
+ }
229
+ .pg-dropdown-editor__opt-icon img {
230
+ width: 20px;
231
+ height: 20px;
232
+ object-fit: cover;
233
+ border-radius: 2px;
234
+ display: block;
235
+ }
236
+ .pg-dropdown-editor__opt-label {
237
+ flex: 1;
238
+ min-width: 0;
239
+ overflow: hidden;
240
+ text-overflow: ellipsis;
241
+ white-space: nowrap;
242
+ }
243
+ /* Checkmark for the currently selected option */
244
+ .pg-dropdown-editor__opt-check {
245
+ flex-shrink: 0;
246
+ width: 16px;
247
+ height: 16px;
248
+ display: flex;
249
+ align-items: center;
250
+ justify-content: center;
251
+ color: var(--pg-colors-primary, #2563eb);
252
+ }
253
+ .pg-dropdown-editor__opt-check::after {
254
+ content: '';
255
+ display: block;
256
+ width: 5px;
257
+ height: 9px;
258
+ border-right: 2px solid currentColor;
259
+ border-bottom: 2px solid currentColor;
260
+ transform: rotate(45deg) translate(-1px, -1px);
261
+ }
262
+ /* Empty state */
263
+ .pg-dropdown-editor__empty {
264
+ display: flex;
265
+ align-items: center;
266
+ justify-content: center;
267
+ height: 48px;
268
+ color: var(--pg-colors-text-secondary, #64748b);
269
+ font-size: 13px;
270
+ font-family: var(--pg-typography-font-family, system-ui, sans-serif);
271
+ }
272
+
273
+ /* ── Array cell tag display ── */
274
+ .pg-cell__value--tags {
275
+ display: flex;
276
+ align-items: center;
277
+ gap: 4px;
278
+ flex-wrap: nowrap;
279
+ overflow: hidden;
280
+ flex: 1;
281
+ min-width: 0;
282
+ }
283
+ .pg-badge--overflow {
284
+ background: var(--pg-colors-background-alt, #f1f5f9);
285
+ color: var(--pg-colors-text-secondary, #64748b);
286
+ font-size: 10px;
287
+ flex-shrink: 0;
288
+ }
289
+
290
+ `;
291
+ //# sourceMappingURL=editors.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editors.css.js","sourceRoot":"","sources":["../../../src/styles/base/editors.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0RzB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Photon Grid base styles — filter section.
3
+ *
4
+ * Auto-split from base-styles.ts. Concatenated back (in order) by
5
+ * base-styles.ts; edit here, not there. Order is preserved because CSS
6
+ * cascade depends on it.
7
+ */
8
+ export declare const filterCss = "/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Filter Row \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-drag-preview {\n position: fixed;\n pointer-events: none;\n z-index: 99999;\n display: flex;\n align-items: center;\n gap: var(--pg-drag-preview-gap, 8px);\n padding: var(--pg-drag-preview-padding, 6px 12px);\n border-radius: var(--pg-borders-radius-md, 6px);\n box-shadow: var(--pg-shadows-drag-preview, 0 4px 16px rgba(0,0,0,0.18));\n font-size: var(--pg-typography-font-size-md, 13px);\n font-weight: var(--pg-typography-font-weight-medium, 500);\n white-space: nowrap;\n will-change: transform;\n background: var(--pg-colors-drag-preview-background, var(--pg-drag-preview-bg, #fff));\n border: 1px solid var(--pg-colors-drag-preview-border, var(--pg-drag-preview-border, #e0e0e0));\n color: var(--pg-colors-text-primary, var(--pg-text-primary, #222));\n top: 0;\n left: 0;\n transform: translate(-9999px, -9999px);\n}\n.pg-drag-preview__avatar {\n width: var(--pg-drag-preview-avatar-size, 24px);\n height: var(--pg-drag-preview-avatar-size, 24px);\n background: var(--pg-colors-primary, var(--pg-primary, #2563eb));\n overflow: hidden;\n flex-shrink: 0;\n}\n.pg-drag-preview__avatar--circle { border-radius: 50%; }\n.pg-drag-preview__avatar--square { border-radius: var(--pg-borders-radius-sm, 4px); }\n.pg-drag-preview__avatar-img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n.pg-drag-preview__label {\n flex: 1;\n min-width: 0;\n}\n.pg-drag-preview__badge {\n background: var(--pg-colors-primary, var(--pg-primary, #2563eb));\n color: var(--pg-colors-primary-contrast, #fff);\n border-radius: var(--pg-borders-radius-pill, 999px);\n padding: 1px 7px;\n font-size: var(--pg-typography-font-size-xs, 11px);\n font-weight: var(--pg-typography-font-weight-semi-bold, 600);\n min-width: 20px;\n text-align: center;\n}\n\n.pg-filter-cell {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n padding: 0 6px;\n border-right: 1px solid var(--pg-colors-border, #e2e8f0);\n}\n.pg-filter-cell:last-child { border-right: none; }\n.pg-filter-cell--checkbox {\n width: 44px;\n min-width: 44px;\n max-width: 44px;\n flex-shrink: 0;\n}\n.pg-filter-cell--serial {\n width: 52px;\n min-width: 52px;\n max-width: 52px;\n flex-shrink: 0;\n}\n.pg-filter-input {\n width: 100%;\n height: 24px;\n padding: 0 8px;\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-sm, 4px);\n font-size: var(--pg-typography-font-size-sm, 12px);\n font-family: inherit;\n background: var(--pg-colors-surface, #fff);\n color: inherit;\n outline: none;\n transition: border-color var(--pg-transitions-duration-fast, 100ms);\n}\n.pg-filter-input:focus { border-color: var(--pg-colors-border-focus, #2563eb); }\n\n/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Filter Panel \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-filter-panel {\n position: absolute;\n z-index: var(--pg-z-index-filter-panel, 200);\n min-width: 270px;\n max-width: 320px;\n width: max-content;\n background: var(--pg-colors-surface, #fff);\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-md, 6px);\n box-shadow: var(--pg-shadows-lg, 0 8px 24px rgba(0,0,0,.12));\n overflow: hidden;\n font-size: var(--pg-typography-font-size-sm, 13px);\n color: var(--pg-colors-text, #1e293b);\n user-select: none;\n}\n\n/* \u2500\u2500 Condition filter \u2500\u2500 */\n.pg-filter-cond-wrap { padding: 10px; display: flex; flex-direction: column; gap: 6px; }\n\n.pg-filter-cond__row { display: flex; flex-direction: column; gap: 4px; }\n.pg-filter-cond__row--hidden { display: none; }\n\n.pg-filter-cond__select {\n width: 100%;\n height: 30px;\n padding: 0 8px;\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-sm, 4px);\n background: var(--pg-colors-surface, #fff);\n color: var(--pg-colors-text, #1e293b);\n font-size: inherit;\n font-family: inherit;\n cursor: pointer;\n outline: none;\n transition: border-color var(--pg-transitions-duration-fast, 100ms);\n}\n.pg-filter-cond__select:focus { border-color: var(--pg-colors-border-focus, #2563eb); }\n\n.pg-filter-cond__inputs { display: flex; align-items: center; gap: 4px; }\n.pg-filter-cond__inputs--hidden { display: none; }\n/* Stack inputs vertically in range (Between) mode so the panel never overflows horizontally */\n.pg-filter-cond__inputs--range { flex-direction: column; align-items: stretch; gap: 4px; }\n.pg-filter-cond__inputs--range .pg-filter-cond__range-sep {\n text-align: center;\n padding: 2px 0;\n color: var(--pg-colors-text-secondary, #64748b);\n font-size: var(--pg-typography-font-size-xs, 11px);\n font-weight: 500;\n}\n\n.pg-filter-cond__input {\n flex: 1;\n height: 30px;\n padding: 0 8px;\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-sm, 4px);\n background: var(--pg-colors-surface, #fff);\n color: var(--pg-colors-text, #1e293b);\n font-size: inherit;\n font-family: inherit;\n outline: none;\n padding: 6px;\n transition: border-color var(--pg-transitions-duration-fast, 100ms);\n}\n.pg-filter-cond__input:focus { border-color: var(--pg-colors-border-focus, #2563eb); }\n.pg-filter-cond__input--hidden { display: none; }\n\n.pg-filter-cond__range-sep {\n flex-shrink: 0;\n font-size: var(--pg-typography-font-size-xs, 11px);\n color: var(--pg-colors-text-secondary, #475569);\n padding: 0 2px;\n}\n.pg-filter-cond__range-sep--hidden { display: none; }\n\n/* \u2500\u2500 Logic toggle row (AND / OR / None) \u2500\u2500 */\n.pg-filter-logic {\n display: flex;\n gap: 4px;\n padding: 4px 0 2px;\n}\n.pg-filter-logic--hidden { display: none; }\n\n.pg-filter-logic__btn {\n flex: 1;\n height: 26px;\n padding: 0 6px;\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-sm, 4px);\n background: var(--pg-colors-surface, #fff);\n color: var(--pg-colors-text-secondary, #475569);\n font-size: var(--pg-typography-font-size-xs, 11px);\n font-family: inherit;\n font-weight: 500;\n cursor: pointer;\n text-align: center;\n transition: background var(--pg-transitions-duration-fast, 100ms),\n color var(--pg-transitions-duration-fast, 100ms),\n border-color var(--pg-transitions-duration-fast, 100ms);\n}\n.pg-filter-logic__btn:hover { background: var(--pg-colors-background-alt, #f1f5f9); }\n.pg-filter-logic__btn--active {\n background: var(--pg-colors-primary, #2563eb);\n color: #fff;\n border-color: var(--pg-colors-primary, #2563eb);\n}\n\n/* \u2500\u2500 Set filter (dropdown / array) \u2500\u2500 */\n.pg-filter-set { display: flex; flex-direction: column; }\n\n.pg-filter-set__search {\n padding: 8px 10px 4px;\n}\n.pg-filter-set__search-input {\n width: 100%;\n height: 30px;\n padding: 0 10px;\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-sm, 4px);\n background: var(--pg-colors-surface, #fff);\n color: var(--pg-colors-text, #1e293b);\n font-size: inherit;\n font-family: inherit;\n box-sizing: border-box;\n outline: none;\n transition: border-color var(--pg-transitions-duration-fast, 100ms);\n}\n.pg-filter-set__search-input:focus { border-color: var(--pg-colors-border-focus, #2563eb); }\n\n.pg-filter-set__divider {\n height: 1px;\n background: var(--pg-colors-border, #e2e8f0);\n margin: 2px 0;\n}\n\n/* Select All item */\n.pg-filter-set__item {\n display: flex;\n align-items: center;\n gap: 8px;\n height: 28px;\n padding: 0 10px;\n cursor: pointer;\n transition: background var(--pg-transitions-duration-fast, 100ms);\n box-sizing: border-box;\n position: absolute;\n left: 0;\n right: 0;\n}\n.pg-filter-set__item:hover { background: var(--pg-colors-background-alt, #f1f5f9); }\n.pg-filter-set__item--select-all {\n position: static;\n font-weight: 500;\n color: var(--pg-colors-text, #1e293b);\n}\n.pg-filter-set__item-label {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.pg-filter-set__item-label--blank { color: var(--pg-colors-text-disabled, #94a3b8); font-style: italic; }\n\n.pg-filter-set__checkbox {\n flex-shrink: 0;\n width: 14px;\n height: 14px;\n cursor: pointer;\n accent-color: var(--pg-colors-primary, #2563eb);\n}\n\n/* Virtual scroll containers */\n.pg-filter-set__list {\n overflow-y: auto;\n overflow-x: hidden;\n position: relative;\n scrollbar-width: thin;\n scrollbar-color: var(--pg-colors-border, #e2e8f0) transparent;\n}\n.pg-filter-set__list::-webkit-scrollbar { width: 6px; }\n.pg-filter-set__list::-webkit-scrollbar-track { background: transparent; }\n.pg-filter-set__list::-webkit-scrollbar-thumb {\n background: var(--pg-colors-border, #e2e8f0);\n border-radius: 3px;\n}\n.pg-filter-set__list-inner { position: relative; width: 100%; }\n\n/* \u2500\u2500 Panel footer \u2500\u2500 */\n.pg-filter-panel__footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n padding: 8px 10px;\n // border-top: 1px solid var(--pg-colors-border, #e2e8f0);\n // background: var(--pg-colors-background, #f8fafc);\n}\n\n.pg-filter-panel__clear-btn {\n height: 28px;\n padding: 0 14px;\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-sm, 4px);\n background: var(--pg-colors-surface, #fff);\n color: var(--pg-colors-text-secondary, #475569);\n font-size: var(--pg-typography-font-size-sm, 12px);\n font-family: inherit;\n cursor: pointer;\n transition: background var(--pg-transitions-duration-fast, 100ms),\n border-color var(--pg-transitions-duration-fast, 100ms),\n color var(--pg-transitions-duration-fast, 100ms);\n}\n.pg-filter-panel__clear-btn:hover {\n background: var(--pg-colors-background-alt, #f1f5f9);\n border-color: var(--pg-colors-text-secondary, #475569);\n color: var(--pg-colors-text, #1e293b);\n}\n\n";
9
+ //# sourceMappingURL=filter.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.css.d.ts","sourceRoot":"","sources":["../../../src/styles/base/filter.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,8kUA+SrB,CAAC"}