photon-grid-core 0.0.1 → 0.0.3
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/README.md +305 -0
- package/icons/icon-sets/core-icons.js +1 -1
- package/icons/icon-sets/core-icons.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.d.ts.map +1 -1
- package/package.json +22 -16
- package/renderer/body-renderer.d.ts.map +1 -1
- package/renderer/body-renderer.js +21 -4
- package/renderer/body-renderer.js.map +1 -1
- package/renderer/cell-renderer.js +1 -1
- package/renderer/cell-renderer.js.map +1 -1
- package/renderer/column-menu.js +24 -25
- package/renderer/column-menu.js.map +1 -1
- package/renderer/column-style-manager.d.ts.map +1 -1
- package/renderer/column-style-manager.js +11 -2
- package/renderer/column-style-manager.js.map +1 -1
- package/renderer/grid-renderer.js +1 -1
- package/renderer/grid-renderer.js.map +1 -1
- package/renderer/header-renderer.d.ts.map +1 -1
- package/renderer/header-renderer.js +17 -3
- package/renderer/header-renderer.js.map +1 -1
- package/renderer/row-drag-renderer.d.ts +18 -0
- package/renderer/row-drag-renderer.d.ts.map +1 -1
- package/renderer/row-drag-renderer.js +53 -0
- package/renderer/row-drag-renderer.js.map +1 -1
- package/styles/base/cells.css.d.ts +9 -0
- package/styles/base/cells.css.d.ts.map +1 -0
- package/styles/base/cells.css.js +233 -0
- package/styles/base/cells.css.js.map +1 -0
- package/styles/base/chart-panel.css.d.ts +9 -0
- package/styles/base/chart-panel.css.d.ts.map +1 -0
- package/styles/base/chart-panel.css.js +140 -0
- package/styles/base/chart-panel.css.js.map +1 -0
- package/styles/base/column-context-menu.css.d.ts +9 -0
- package/styles/base/column-context-menu.css.d.ts.map +1 -0
- package/styles/base/column-context-menu.css.js +153 -0
- package/styles/base/column-context-menu.css.js.map +1 -0
- package/styles/base/column-group-header.css.d.ts +9 -0
- package/styles/base/column-group-header.css.d.ts.map +1 -0
- package/styles/base/column-group-header.css.js +270 -0
- package/styles/base/column-group-header.css.js.map +1 -0
- package/styles/base/context-menu.css.d.ts +9 -0
- package/styles/base/context-menu.css.d.ts.map +1 -0
- package/styles/base/context-menu.css.js +103 -0
- package/styles/base/context-menu.css.js.map +1 -0
- package/styles/base/editors.css.d.ts +9 -0
- package/styles/base/editors.css.d.ts.map +1 -0
- package/styles/base/editors.css.js +291 -0
- package/styles/base/editors.css.js.map +1 -0
- package/styles/base/filter.css.d.ts +9 -0
- package/styles/base/filter.css.d.ts.map +1 -0
- package/styles/base/filter.css.js +312 -0
- package/styles/base/filter.css.js.map +1 -0
- package/styles/base/footer.css.d.ts +9 -0
- package/styles/base/footer.css.d.ts.map +1 -0
- package/styles/base/footer.css.js +78 -0
- package/styles/base/footer.css.js.map +1 -0
- package/styles/base/group-bar-search.css.d.ts +9 -0
- package/styles/base/group-bar-search.css.d.ts.map +1 -0
- package/styles/base/group-bar-search.css.js +86 -0
- package/styles/base/group-bar-search.css.js.map +1 -0
- package/styles/base/group-drop-zone.css.d.ts +9 -0
- package/styles/base/group-drop-zone.css.d.ts.map +1 -0
- package/styles/base/group-drop-zone.css.js +173 -0
- package/styles/base/group-drop-zone.css.js.map +1 -0
- package/styles/base/header.css.d.ts +9 -0
- package/styles/base/header.css.d.ts.map +1 -0
- package/styles/base/header.css.js +206 -0
- package/styles/base/header.css.js.map +1 -0
- package/styles/base/master-detail.css.d.ts +9 -0
- package/styles/base/master-detail.css.d.ts.map +1 -0
- package/styles/base/master-detail.css.js +202 -0
- package/styles/base/master-detail.css.js.map +1 -0
- package/styles/base/misc.css.d.ts +9 -0
- package/styles/base/misc.css.d.ts.map +1 -0
- package/styles/base/misc.css.js +65 -0
- package/styles/base/misc.css.js.map +1 -0
- package/styles/base/panels.css.d.ts +9 -0
- package/styles/base/panels.css.d.ts.map +1 -0
- package/styles/base/panels.css.js +162 -0
- package/styles/base/panels.css.js.map +1 -0
- package/styles/base/photon-ai.css.d.ts +9 -0
- package/styles/base/photon-ai.css.d.ts.map +1 -0
- package/styles/base/photon-ai.css.js +200 -0
- package/styles/base/photon-ai.css.js.map +1 -0
- package/styles/base/root.css.d.ts +9 -0
- package/styles/base/root.css.d.ts.map +1 -0
- package/styles/base/root.css.js +56 -0
- package/styles/base/root.css.js.map +1 -0
- package/styles/base/row-drag.css.d.ts +9 -0
- package/styles/base/row-drag.css.d.ts.map +1 -0
- package/styles/base/row-drag.css.js +93 -0
- package/styles/base/row-drag.css.js.map +1 -0
- package/styles/base/row-group.css.d.ts +9 -0
- package/styles/base/row-group.css.d.ts.map +1 -0
- package/styles/base/row-group.css.js +79 -0
- package/styles/base/row-group.css.js.map +1 -0
- package/styles/base/rows.css.d.ts +9 -0
- package/styles/base/rows.css.d.ts.map +1 -0
- package/styles/base/rows.css.js +83 -0
- package/styles/base/rows.css.js.map +1 -0
- package/styles/base/scrollbars.css.d.ts +9 -0
- package/styles/base/scrollbars.css.d.ts.map +1 -0
- package/styles/base/scrollbars.css.js +56 -0
- package/styles/base/scrollbars.css.js.map +1 -0
- package/styles/base/sparkline.css.d.ts +9 -0
- package/styles/base/sparkline.css.d.ts.map +1 -0
- package/styles/base/sparkline.css.js +109 -0
- package/styles/base/sparkline.css.js.map +1 -0
- package/styles/base/tooltip.css.d.ts +9 -0
- package/styles/base/tooltip.css.d.ts.map +1 -0
- package/styles/base/tooltip.css.js +39 -0
- package/styles/base/tooltip.css.js.map +1 -0
- package/styles/base/tree.css.d.ts +9 -0
- package/styles/base/tree.css.d.ts.map +1 -0
- package/styles/base/tree.css.js +78 -0
- package/styles/base/tree.css.js.map +1 -0
- package/styles/base-styles.d.ts.map +1 -1
- package/styles/base-styles.js +56 -3026
- package/styles/base-styles.js.map +1 -1
- package/styles/themes/theme-alpine.d.ts +1 -1
- package/styles/themes/theme-alpine.d.ts.map +1 -1
- package/styles/themes/theme-alpine.js +1 -1
- package/styles/themes/theme-balham.d.ts +1 -1
- package/styles/themes/theme-balham.d.ts.map +1 -1
- package/styles/themes/theme-balham.js +0 -1
- package/styles/themes/theme-balham.js.map +1 -1
- package/styles/themes/theme-dark.d.ts +1 -1
- package/styles/themes/theme-dark.d.ts.map +1 -1
- package/styles/themes/theme-dark.js +1 -1
- package/styles/themes/theme-material.d.ts +1 -1
- package/styles/themes/theme-material.d.ts.map +1 -1
- package/styles/themes/theme-material.js +0 -1
- package/styles/themes/theme-material.js.map +1 -1
- package/styles/themes/theme-quartz.d.ts +1 -1
- package/styles/themes/theme-quartz.d.ts.map +1 -1
- package/styles/themes/theme-quartz.js +1 -1
- package/LICENSE +0 -1
- package/chart/chart-analyzer.d.ts +0 -12
- package/chart/chart-analyzer.d.ts.map +0 -1
- package/chart/chart-analyzer.js +0 -77
- package/chart/chart-analyzer.js.map +0 -1
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — photon-ai 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 photonAiCss = `/* ──────────────────── Photon AI ────────────────────
|
|
9
|
+
Floating command bar, anchored to the grid body's bottom-right corner.
|
|
10
|
+
Mounted as a sibling of the pinned-column panels (see PhotonAIPanel.mount /
|
|
11
|
+
GridRenderer.buildLayout) so it floats independently of virtualization and
|
|
12
|
+
scroll; the grid body's own overflow: hidden is what keeps it inside the
|
|
13
|
+
grid container per spec, without this component needing to enforce that
|
|
14
|
+
itself. */
|
|
15
|
+
.pg-ai-launcher {
|
|
16
|
+
position: absolute;
|
|
17
|
+
bottom: 16px;
|
|
18
|
+
right: 16px;
|
|
19
|
+
z-index: 201;
|
|
20
|
+
display: flex;
|
|
21
|
+
align-items: center;
|
|
22
|
+
justify-content: center;
|
|
23
|
+
width: 44px;
|
|
24
|
+
height: 44px;
|
|
25
|
+
border: none;
|
|
26
|
+
border-radius: var(--pg-borders-radius-pill, 9999px);
|
|
27
|
+
background: var(--pg-colors-primary, #2563eb);
|
|
28
|
+
color: var(--pg-colors-primary-text, #ffffff);
|
|
29
|
+
box-shadow: var(--pg-shadows-lg, 0 8px 24px rgba(15, 23, 42, 0.16));
|
|
30
|
+
cursor: pointer;
|
|
31
|
+
transition:
|
|
32
|
+
transform var(--pg-transitions-duration-base, 150ms) var(--pg-transitions-easing-base, ease),
|
|
33
|
+
opacity var(--pg-transitions-duration-base, 150ms) var(--pg-transitions-easing-base, ease),
|
|
34
|
+
background var(--pg-transitions-duration-fast, 100ms);
|
|
35
|
+
}
|
|
36
|
+
.pg-ai-launcher:hover {
|
|
37
|
+
background: var(--pg-colors-primary-hover, #1d4ed8);
|
|
38
|
+
transform: scale(1.06);
|
|
39
|
+
}
|
|
40
|
+
.pg-ai-launcher:active {
|
|
41
|
+
background: var(--pg-colors-primary-active, #1e40af);
|
|
42
|
+
transform: scale(0.97);
|
|
43
|
+
}
|
|
44
|
+
.pg-ai-launcher--hidden {
|
|
45
|
+
opacity: 0;
|
|
46
|
+
transform: scale(0.7);
|
|
47
|
+
pointer-events: none;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.pg-ai-panel {
|
|
51
|
+
position: absolute;
|
|
52
|
+
top: 12px;
|
|
53
|
+
right: 12px;
|
|
54
|
+
bottom: 12px;
|
|
55
|
+
z-index: 201;
|
|
56
|
+
width: min(360px, calc(100% - 24px));
|
|
57
|
+
display: none;
|
|
58
|
+
flex-direction: column;
|
|
59
|
+
background: var(--pg-colors-surface, #ffffff);
|
|
60
|
+
border: var(--pg-borders-width-thin, 1px) solid var(--pg-colors-border, #e2e8f0);
|
|
61
|
+
border-radius: var(--pg-borders-radius-lg, 10px);
|
|
62
|
+
box-shadow: var(--pg-shadows-dropdown, 0 16px 48px rgba(15, 23, 42, 0.24));
|
|
63
|
+
font-family: var(--pg-typography-font-family, system-ui, sans-serif);
|
|
64
|
+
color: var(--pg-colors-text-primary, #0f172a);
|
|
65
|
+
}
|
|
66
|
+
.pg-ai-panel--open {
|
|
67
|
+
display: flex;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.pg-ai-panel__header {
|
|
71
|
+
flex-shrink: 0;
|
|
72
|
+
display: flex;
|
|
73
|
+
align-items: center;
|
|
74
|
+
justify-content: space-between;
|
|
75
|
+
padding: 10px 12px;
|
|
76
|
+
border-bottom: var(--pg-borders-width-thin, 1px) solid var(--pg-colors-border, #e2e8f0);
|
|
77
|
+
}
|
|
78
|
+
.pg-ai-panel__title {
|
|
79
|
+
display: flex;
|
|
80
|
+
align-items: center;
|
|
81
|
+
gap: 6px;
|
|
82
|
+
font-size: var(--pg-typography-font-size-sm, 13px);
|
|
83
|
+
font-weight: var(--pg-typography-font-weight-semi-bold, 600);
|
|
84
|
+
color: var(--pg-colors-primary, #2563eb);
|
|
85
|
+
}
|
|
86
|
+
.pg-ai-panel__close {
|
|
87
|
+
display: flex;
|
|
88
|
+
align-items: center;
|
|
89
|
+
justify-content: center;
|
|
90
|
+
width: 20px;
|
|
91
|
+
height: 20px;
|
|
92
|
+
border: none;
|
|
93
|
+
border-radius: var(--pg-borders-radius-sm, 4px);
|
|
94
|
+
background: transparent;
|
|
95
|
+
color: var(--pg-colors-text-secondary, #64748b);
|
|
96
|
+
cursor: pointer;
|
|
97
|
+
transition: background var(--pg-transitions-duration-fast, 100ms);
|
|
98
|
+
}
|
|
99
|
+
.pg-ai-panel__close:hover {
|
|
100
|
+
background: var(--pg-colors-background-alt, #f1f5f9);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.pg-ai-panel__log {
|
|
104
|
+
flex: 1 1 0;
|
|
105
|
+
min-height: 0;
|
|
106
|
+
overflow-y: auto;
|
|
107
|
+
display: flex;
|
|
108
|
+
flex-direction: column;
|
|
109
|
+
gap: 10px;
|
|
110
|
+
padding: 14px;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
.pg-ai-panel__message {
|
|
114
|
+
max-width: 85%;
|
|
115
|
+
padding: 8px 12px;
|
|
116
|
+
border-radius: var(--pg-borders-radius-lg, 10px);
|
|
117
|
+
font-size: var(--pg-typography-font-size-sm, 13px);
|
|
118
|
+
line-height: 1.45;
|
|
119
|
+
white-space: pre-wrap;
|
|
120
|
+
word-break: break-word;
|
|
121
|
+
}
|
|
122
|
+
.pg-ai-panel__message--user {
|
|
123
|
+
align-self: flex-end;
|
|
124
|
+
background: var(--pg-colors-primary, #2563eb);
|
|
125
|
+
color: var(--pg-colors-primary-text, #ffffff);
|
|
126
|
+
border-bottom-right-radius: var(--pg-borders-radius-sm, 4px);
|
|
127
|
+
}
|
|
128
|
+
.pg-ai-panel__message--assistant {
|
|
129
|
+
align-self: flex-start;
|
|
130
|
+
background: var(--pg-colors-background-alt, #f1f5f9);
|
|
131
|
+
color: var(--pg-colors-text-primary, #0f172a);
|
|
132
|
+
border-bottom-left-radius: var(--pg-borders-radius-sm, 4px);
|
|
133
|
+
}
|
|
134
|
+
.pg-ai-panel__message--assistant.pg-ai-panel__message--error {
|
|
135
|
+
background: var(--pg-colors-error-subtle, #fef2f2);
|
|
136
|
+
color: var(--pg-colors-error, #dc2626);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.pg-ai-panel__input-wrap {
|
|
140
|
+
position: relative;
|
|
141
|
+
flex-shrink: 0;
|
|
142
|
+
display: flex;
|
|
143
|
+
padding: 10px 12px 12px;
|
|
144
|
+
border-top: var(--pg-borders-width-thin, 1px) solid var(--pg-colors-border, #e2e8f0);
|
|
145
|
+
}
|
|
146
|
+
.pg-ai-panel__input {
|
|
147
|
+
flex: 1 1 0;
|
|
148
|
+
width: 100%;
|
|
149
|
+
min-height: 36px;
|
|
150
|
+
max-height: 120px;
|
|
151
|
+
padding: 8px 40px 8px 12px;
|
|
152
|
+
border: var(--pg-borders-width-thin, 1px) solid var(--pg-colors-border, #e2e8f0);
|
|
153
|
+
border-radius: var(--pg-borders-radius-md, 6px);
|
|
154
|
+
background: var(--pg-colors-surface, #ffffff);
|
|
155
|
+
color: var(--pg-colors-text-primary, #0f172a);
|
|
156
|
+
font-family: var(--pg-typography-font-family, system-ui, sans-serif);
|
|
157
|
+
font-size: var(--pg-typography-font-size-sm, 13px);
|
|
158
|
+
line-height: 1.4;
|
|
159
|
+
resize: none;
|
|
160
|
+
outline: none;
|
|
161
|
+
transition: border-color var(--pg-transitions-duration-fast, 100ms);
|
|
162
|
+
}
|
|
163
|
+
.pg-ai-panel__input::placeholder {
|
|
164
|
+
color: var(--pg-colors-text-disabled, #94a3b8);
|
|
165
|
+
}
|
|
166
|
+
.pg-ai-panel__input:focus {
|
|
167
|
+
border-color: var(--pg-colors-border-focus, #2563eb);
|
|
168
|
+
}
|
|
169
|
+
.pg-ai-panel__send {
|
|
170
|
+
position: absolute;
|
|
171
|
+
right: 20px;
|
|
172
|
+
bottom: 17px;
|
|
173
|
+
display: flex;
|
|
174
|
+
align-items: center;
|
|
175
|
+
justify-content: center;
|
|
176
|
+
width: 26px;
|
|
177
|
+
height: 26px;
|
|
178
|
+
flex-shrink: 0;
|
|
179
|
+
border: none;
|
|
180
|
+
border-radius: var(--pg-borders-radius-pill, 9999px);
|
|
181
|
+
background: var(--pg-colors-primary, #2563eb);
|
|
182
|
+
color: var(--pg-colors-primary-text, #ffffff);
|
|
183
|
+
cursor: pointer;
|
|
184
|
+
transition:
|
|
185
|
+
background var(--pg-transitions-duration-fast, 100ms),
|
|
186
|
+
transform var(--pg-transitions-duration-fast, 100ms),
|
|
187
|
+
opacity var(--pg-transitions-duration-fast, 100ms);
|
|
188
|
+
}
|
|
189
|
+
.pg-ai-panel__send:hover:not(:disabled) {
|
|
190
|
+
background: var(--pg-colors-primary-hover, #1d4ed8);
|
|
191
|
+
transform: scale(1.08);
|
|
192
|
+
}
|
|
193
|
+
.pg-ai-panel__send:disabled {
|
|
194
|
+
background: var(--pg-colors-text-disabled, #94a3b8);
|
|
195
|
+
opacity: 0.5;
|
|
196
|
+
cursor: default;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
`;
|
|
200
|
+
//# sourceMappingURL=photon-ai.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"photon-ai.css.js","sourceRoot":"","sources":["../../../src/styles/base/photon-ai.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+L1B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — root 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 rootCss = "\n/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Root \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-grid {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n overflow: hidden;\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-md, 6px);\n background: var(--pg-colors-row-background, #fff);\n color: var(--pg-colors-text-primary, #0f172a);\n font-family: var(--pg-typography-font-family, \"Inter\", system-ui, sans-serif);\n font-size: var(--pg-typography-font-size-md, 0.8rem);\n text-fit: width; \n font-weight: var(--pg-typography-font-weight-normal, 400);\n box-sizing: border-box;\n position: relative;\n --pg-scroll-x: 0px;\n --pg-scroll-y: 0px;\n --pg-content-height: 0px;\n --pg-center-content-width: 0px;\n --pg-left-panel-width: auto;\n --pg-right-panel-width: auto;\n --pg-header-row-height: 44px;\n --pg-filter-row-height: 36px;\n}\n.pg-grid *, .pg-grid *::before, .pg-grid *::after { box-sizing: border-box; }\n\n/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Outer flex-row / main flex-col wrappers \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-grid-outer {\n display: flex;\n flex-direction: row;\n flex: 1 1 0;\n min-height: 0;\n overflow: hidden;\n}\n.pg-grid-main {\n display: flex;\n flex-direction: column;\n flex: 1 1 0;\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n position: relative;\n}\n\n";
|
|
9
|
+
//# sourceMappingURL=root.css.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"root.css.d.ts","sourceRoot":"","sources":["../../../src/styles/base/root.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,utDA+CnB,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — root 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 rootCss = `
|
|
9
|
+
/* ──────────────────── Root ──────────────────── */
|
|
10
|
+
.pg-grid {
|
|
11
|
+
display: flex;
|
|
12
|
+
flex-direction: column;
|
|
13
|
+
width: 100%;
|
|
14
|
+
height: 100%;
|
|
15
|
+
overflow: hidden;
|
|
16
|
+
border: 1px solid var(--pg-colors-border, #e2e8f0);
|
|
17
|
+
border-radius: var(--pg-borders-radius-md, 6px);
|
|
18
|
+
background: var(--pg-colors-row-background, #fff);
|
|
19
|
+
color: var(--pg-colors-text-primary, #0f172a);
|
|
20
|
+
font-family: var(--pg-typography-font-family, "Inter", system-ui, sans-serif);
|
|
21
|
+
font-size: var(--pg-typography-font-size-md, 0.8rem);
|
|
22
|
+
text-fit: width;
|
|
23
|
+
font-weight: var(--pg-typography-font-weight-normal, 400);
|
|
24
|
+
box-sizing: border-box;
|
|
25
|
+
position: relative;
|
|
26
|
+
--pg-scroll-x: 0px;
|
|
27
|
+
--pg-scroll-y: 0px;
|
|
28
|
+
--pg-content-height: 0px;
|
|
29
|
+
--pg-center-content-width: 0px;
|
|
30
|
+
--pg-left-panel-width: auto;
|
|
31
|
+
--pg-right-panel-width: auto;
|
|
32
|
+
--pg-header-row-height: 44px;
|
|
33
|
+
--pg-filter-row-height: 36px;
|
|
34
|
+
}
|
|
35
|
+
.pg-grid *, .pg-grid *::before, .pg-grid *::after { box-sizing: border-box; }
|
|
36
|
+
|
|
37
|
+
/* ──────────────────── Outer flex-row / main flex-col wrappers ──────────────────── */
|
|
38
|
+
.pg-grid-outer {
|
|
39
|
+
display: flex;
|
|
40
|
+
flex-direction: row;
|
|
41
|
+
flex: 1 1 0;
|
|
42
|
+
min-height: 0;
|
|
43
|
+
overflow: hidden;
|
|
44
|
+
}
|
|
45
|
+
.pg-grid-main {
|
|
46
|
+
display: flex;
|
|
47
|
+
flex-direction: column;
|
|
48
|
+
flex: 1 1 0;
|
|
49
|
+
min-height: 0;
|
|
50
|
+
min-width: 0;
|
|
51
|
+
overflow: hidden;
|
|
52
|
+
position: relative;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
`;
|
|
56
|
+
//# sourceMappingURL=root.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"root.css.js","sourceRoot":"","sources":["../../../src/styles/base/root.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+CtB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — row-drag 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 rowDragCss = "/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Row Drag \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-grid__body { position: relative; }\n\n.pg-row-drag-handle {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 16px;\n height: 100%;\n flex-shrink: 0;\n cursor: grab;\n opacity: 0.35;\n color: var(--pg-colors-text-secondary, #475569);\n margin-right: 4px;\n}\n.pg-row-drag-handle:hover { opacity: 0.7; }\n.pg-row-drag-handle:active { cursor: grabbing; }\n\n.pg-row-drag-ghost {\n position: fixed;\n pointer-events: none;\n z-index: 9999;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 5px 10px;\n border-radius: var(--pg-borders-radius-md, 6px);\n border: 1.5px solid var(--pg-colors-primary, #2563eb);\n background: var(--pg-colors-surface, #fff);\n color: var(--pg-colors-primary, #2563eb);\n font-size: var(--pg-typography-font-size-sm, 12px);\n font-weight: 500;\n box-shadow: 0 6px 24px rgba(37,99,235,0.13), 0 2px 8px rgba(37,99,235,0.12);\n transform: translate(12px, -50%);\n white-space: nowrap;\n max-width: 240px;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.pg-row-drag-ghost__icon { display: inline-flex; align-items: center; opacity: 0.8; }\n.pg-row-drag-ghost__icon--block { display: none; }\n.pg-row-drag-ghost__label { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; }\n\n.pg-row-drag-ghost--outside {\n border-color: var(--pg-colors-danger, #ef4444);\n box-shadow: 0 6px 24px rgba(239,68,68,0.13), 0 2px 8px rgba(239,68,68,0.12);\n color: var(--pg-colors-danger, #ef4444);\n}\n.pg-row-drag-ghost--outside .pg-row-drag-ghost__icon--drag { display: none; }\n.pg-row-drag-ghost--outside .pg-row-drag-ghost__icon--block { display: inline-flex; }\n\n.pg-row-drop-indicator {\n position: absolute;\n left: 0;\n right: 0;\n height: 2px;\n background: var(--pg-colors-primary, #2563eb);\n pointer-events: none;\n z-index: 100;\n border-radius: 1px;\n}\n.pg-row-drop-indicator::before {\n content: '';\n position: absolute;\n left: -3px;\n top: -3px;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: var(--pg-colors-primary, #2563eb);\n}\n\n/* The dragged row: semi-transparent, moves to virtual landing position */\n.pg-row--row-dragging { opacity: 0.4; }\n\n/* During row drag: kill hover/click on all rows; animate top changes.\n Uses top (not transform) so rows stay within panel overflow:hidden bounds. */\n.pg-grid--row-dragging .pg-row {\n pointer-events: none;\n will-change: top;\n transition: background var(--pg-transitions-duration-fast, 100ms),\n top 130ms cubic-bezier(0.2, 0, 0, 1);\n}\n\n";
|
|
9
|
+
//# sourceMappingURL=row-drag.css.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"row-drag.css.d.ts","sourceRoot":"","sources":["../../../src/styles/base/row-drag.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,0xFAoFtB,CAAC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — row-drag 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 rowDragCss = `/* ──────────────────── Row Drag ──────────────────── */
|
|
9
|
+
.pg-grid__body { position: relative; }
|
|
10
|
+
|
|
11
|
+
.pg-row-drag-handle {
|
|
12
|
+
display: inline-flex;
|
|
13
|
+
align-items: center;
|
|
14
|
+
justify-content: center;
|
|
15
|
+
width: 16px;
|
|
16
|
+
height: 100%;
|
|
17
|
+
flex-shrink: 0;
|
|
18
|
+
cursor: grab;
|
|
19
|
+
opacity: 0.35;
|
|
20
|
+
color: var(--pg-colors-text-secondary, #475569);
|
|
21
|
+
margin-right: 4px;
|
|
22
|
+
}
|
|
23
|
+
.pg-row-drag-handle:hover { opacity: 0.7; }
|
|
24
|
+
.pg-row-drag-handle:active { cursor: grabbing; }
|
|
25
|
+
|
|
26
|
+
.pg-row-drag-ghost {
|
|
27
|
+
position: fixed;
|
|
28
|
+
pointer-events: none;
|
|
29
|
+
z-index: 9999;
|
|
30
|
+
display: inline-flex;
|
|
31
|
+
align-items: center;
|
|
32
|
+
gap: 6px;
|
|
33
|
+
padding: 5px 10px;
|
|
34
|
+
border-radius: var(--pg-borders-radius-md, 6px);
|
|
35
|
+
border: 1.5px solid var(--pg-colors-primary, #2563eb);
|
|
36
|
+
background: var(--pg-colors-surface, #fff);
|
|
37
|
+
color: var(--pg-colors-primary, #2563eb);
|
|
38
|
+
font-size: var(--pg-typography-font-size-sm, 12px);
|
|
39
|
+
font-weight: 500;
|
|
40
|
+
box-shadow: 0 6px 24px rgba(37,99,235,0.13), 0 2px 8px rgba(37,99,235,0.12);
|
|
41
|
+
transform: translate(12px, -50%);
|
|
42
|
+
white-space: nowrap;
|
|
43
|
+
max-width: 240px;
|
|
44
|
+
overflow: hidden;
|
|
45
|
+
text-overflow: ellipsis;
|
|
46
|
+
}
|
|
47
|
+
.pg-row-drag-ghost__icon { display: inline-flex; align-items: center; opacity: 0.8; }
|
|
48
|
+
.pg-row-drag-ghost__icon--block { display: none; }
|
|
49
|
+
.pg-row-drag-ghost__label { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
|
|
50
|
+
|
|
51
|
+
.pg-row-drag-ghost--outside {
|
|
52
|
+
border-color: var(--pg-colors-danger, #ef4444);
|
|
53
|
+
box-shadow: 0 6px 24px rgba(239,68,68,0.13), 0 2px 8px rgba(239,68,68,0.12);
|
|
54
|
+
color: var(--pg-colors-danger, #ef4444);
|
|
55
|
+
}
|
|
56
|
+
.pg-row-drag-ghost--outside .pg-row-drag-ghost__icon--drag { display: none; }
|
|
57
|
+
.pg-row-drag-ghost--outside .pg-row-drag-ghost__icon--block { display: inline-flex; }
|
|
58
|
+
|
|
59
|
+
.pg-row-drop-indicator {
|
|
60
|
+
position: absolute;
|
|
61
|
+
left: 0;
|
|
62
|
+
right: 0;
|
|
63
|
+
height: 2px;
|
|
64
|
+
background: var(--pg-colors-primary, #2563eb);
|
|
65
|
+
pointer-events: none;
|
|
66
|
+
z-index: 100;
|
|
67
|
+
border-radius: 1px;
|
|
68
|
+
}
|
|
69
|
+
.pg-row-drop-indicator::before {
|
|
70
|
+
content: '';
|
|
71
|
+
position: absolute;
|
|
72
|
+
left: -3px;
|
|
73
|
+
top: -3px;
|
|
74
|
+
width: 8px;
|
|
75
|
+
height: 8px;
|
|
76
|
+
border-radius: 50%;
|
|
77
|
+
background: var(--pg-colors-primary, #2563eb);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/* The dragged row: semi-transparent, moves to virtual landing position */
|
|
81
|
+
.pg-row--row-dragging { opacity: 0.4; }
|
|
82
|
+
|
|
83
|
+
/* During row drag: kill hover/click on all rows; animate top changes.
|
|
84
|
+
Uses top (not transform) so rows stay within panel overflow:hidden bounds. */
|
|
85
|
+
.pg-grid--row-dragging .pg-row {
|
|
86
|
+
pointer-events: none;
|
|
87
|
+
will-change: top;
|
|
88
|
+
transition: background var(--pg-transitions-duration-fast, 100ms),
|
|
89
|
+
top 130ms cubic-bezier(0.2, 0, 0, 1);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
`;
|
|
93
|
+
//# sourceMappingURL=row-drag.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"row-drag.css.js","sourceRoot":"","sources":["../../../src/styles/base/row-drag.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoFzB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — row-group 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 rowGroupCss = "/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Checkbox \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-checkbox {\n width: var(--pg-sizing-checkbox-size, 16px);\n height: var(--pg-sizing-checkbox-size, 16px);\n accent-color: var(--pg-colors-primary, #2563eb);\n cursor: pointer;\n flex-shrink: 0;\n}\n\n/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Row Group \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n/* Inner layout cell \u2014 carries level-based left padding */\n.pg-row-group__cell {\n display: flex;\n align-items: center;\n gap: var(--pg-group-row-gap, 6px);\n flex: 1;\n min-width: 0;\n overflow: hidden;\n padding-right: var(--pg-group-row-padding-right, 16px);\n}\n\n/* Level-based indentation (data-level set by the renderer, no inline style) */\n.pg-row--group[data-level=\"0\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-0, 8px); }\n.pg-row--group[data-level=\"1\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-1, 28px); }\n.pg-row--group[data-level=\"2\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-2, 48px); }\n.pg-row--group[data-level=\"3\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-3, 68px); }\n.pg-row--group[data-level=\"4\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-4, 88px); }\n.pg-row--group[data-level=\"5\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-5, 108px); }\n\n/* Toggle button \u2014 a themed wrapper, not the raw icon element */\n.pg-row-group__toggle {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n width: var(--pg-group-toggle-size, 24px);\n height: var(--pg-group-toggle-size, 24px);\n border-radius: var(--pg-borders-radius-sm, 4px);\n color: var(--pg-colors-text-secondary, #64748b);\n background: transparent;\n transition:\n background var(--pg-transitions-duration-fast, 100ms),\n color var(--pg-transitions-duration-fast, 100ms);\n}\n\n.pg-row-group__label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: var(--pg-colors-group-row-text, inherit);\n}\n\n.pg-row-group__count {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: var(--pg-group-count-min-width, 24px);\n padding: var(--pg-group-count-padding, 1px 8px);\n border-radius: var(--pg-borders-radius-pill, 9999px);\n background: var(--pg-colors-badge-background, #dbeafe);\n color: var(--pg-colors-badge-text, #1e40af);\n font-size: var(--pg-typography-font-size-xs, 11px);\n font-weight: var(--pg-typography-font-weight-semi-bold, 600);\n flex-shrink: 0;\n letter-spacing: 0.02em;\n}\n\n";
|
|
9
|
+
//# sourceMappingURL=row-group.css.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"row-group.css.d.ts","sourceRoot":"","sources":["../../../src/styles/base/row-group.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,o7FAsEvB,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — row-group 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 rowGroupCss = `/* ──────────────────── Checkbox ──────────────────── */
|
|
9
|
+
.pg-checkbox {
|
|
10
|
+
width: var(--pg-sizing-checkbox-size, 16px);
|
|
11
|
+
height: var(--pg-sizing-checkbox-size, 16px);
|
|
12
|
+
accent-color: var(--pg-colors-primary, #2563eb);
|
|
13
|
+
cursor: pointer;
|
|
14
|
+
flex-shrink: 0;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/* ──────────────────── Row Group ──────────────────── */
|
|
18
|
+
|
|
19
|
+
/* Inner layout cell — carries level-based left padding */
|
|
20
|
+
.pg-row-group__cell {
|
|
21
|
+
display: flex;
|
|
22
|
+
align-items: center;
|
|
23
|
+
gap: var(--pg-group-row-gap, 6px);
|
|
24
|
+
flex: 1;
|
|
25
|
+
min-width: 0;
|
|
26
|
+
overflow: hidden;
|
|
27
|
+
padding-right: var(--pg-group-row-padding-right, 16px);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/* Level-based indentation (data-level set by the renderer, no inline style) */
|
|
31
|
+
.pg-row--group[data-level="0"] .pg-row-group__cell { padding-left: var(--pg-group-indent-0, 8px); }
|
|
32
|
+
.pg-row--group[data-level="1"] .pg-row-group__cell { padding-left: var(--pg-group-indent-1, 28px); }
|
|
33
|
+
.pg-row--group[data-level="2"] .pg-row-group__cell { padding-left: var(--pg-group-indent-2, 48px); }
|
|
34
|
+
.pg-row--group[data-level="3"] .pg-row-group__cell { padding-left: var(--pg-group-indent-3, 68px); }
|
|
35
|
+
.pg-row--group[data-level="4"] .pg-row-group__cell { padding-left: var(--pg-group-indent-4, 88px); }
|
|
36
|
+
.pg-row--group[data-level="5"] .pg-row-group__cell { padding-left: var(--pg-group-indent-5, 108px); }
|
|
37
|
+
|
|
38
|
+
/* Toggle button — a themed wrapper, not the raw icon element */
|
|
39
|
+
.pg-row-group__toggle {
|
|
40
|
+
display: inline-flex;
|
|
41
|
+
align-items: center;
|
|
42
|
+
justify-content: center;
|
|
43
|
+
flex-shrink: 0;
|
|
44
|
+
width: var(--pg-group-toggle-size, 24px);
|
|
45
|
+
height: var(--pg-group-toggle-size, 24px);
|
|
46
|
+
border-radius: var(--pg-borders-radius-sm, 4px);
|
|
47
|
+
color: var(--pg-colors-text-secondary, #64748b);
|
|
48
|
+
background: transparent;
|
|
49
|
+
transition:
|
|
50
|
+
background var(--pg-transitions-duration-fast, 100ms),
|
|
51
|
+
color var(--pg-transitions-duration-fast, 100ms);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.pg-row-group__label {
|
|
55
|
+
flex: 1;
|
|
56
|
+
min-width: 0;
|
|
57
|
+
overflow: hidden;
|
|
58
|
+
text-overflow: ellipsis;
|
|
59
|
+
white-space: nowrap;
|
|
60
|
+
color: var(--pg-colors-group-row-text, inherit);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.pg-row-group__count {
|
|
64
|
+
display: inline-flex;
|
|
65
|
+
align-items: center;
|
|
66
|
+
justify-content: center;
|
|
67
|
+
min-width: var(--pg-group-count-min-width, 24px);
|
|
68
|
+
padding: var(--pg-group-count-padding, 1px 8px);
|
|
69
|
+
border-radius: var(--pg-borders-radius-pill, 9999px);
|
|
70
|
+
background: var(--pg-colors-badge-background, #dbeafe);
|
|
71
|
+
color: var(--pg-colors-badge-text, #1e40af);
|
|
72
|
+
font-size: var(--pg-typography-font-size-xs, 11px);
|
|
73
|
+
font-weight: var(--pg-typography-font-weight-semi-bold, 600);
|
|
74
|
+
flex-shrink: 0;
|
|
75
|
+
letter-spacing: 0.02em;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
`;
|
|
79
|
+
//# sourceMappingURL=row-group.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"row-group.css.js","sourceRoot":"","sources":["../../../src/styles/base/row-group.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsE1B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — rows 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 rowsCss = "/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Rows \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-row {\n display: flex;\n align-items: stretch;\n position: absolute;\n left: 0;\n width: 100%;\n border-bottom: 1px solid var(--pg-colors-border, #e2e8f0);\n background: var(--pg-colors-row-background, #fff);\n transition: background var(--pg-transitions-duration-fast, 100ms);\n}\n.pg-row--hover { background: var(--pg-colors-row-hover, #f0f7ff) !important; }\n.pg-row--alt { background: var(--pg-colors-row-background-alt, #f8fafc); }\n.pg-row--selected {\n background: var(--pg-colors-row-selected, #eff6ff) !important;\n outline: none;\n}\n.pg-row--selected .pg-cell { color: inherit; }\n.pg-row--group {\n background: var(--pg-colors-group-row-background, #f8fafc);\n font-weight: var(--pg-typography-font-weight-semi-bold, 600);\n // border-left: var(--pg-group-row-border-width, 3px) solid var(--pg-colors-primary, #2563eb);\n cursor: pointer;\n}\n.pg-row--group:hover,\n.pg-row--group.pg-row--hover {\n background: var(--pg-colors-group-row-hover, #eff2ff) !important;\n}\n.pg-row--group:hover .pg-row-group__toggle,\n.pg-row--group.pg-row--hover .pg-row-group__toggle {\n background: var(--pg-colors-group-toggle-hover, rgba(37, 99, 235, 0.1));\n color: var(--pg-colors-primary, #2563eb);\n}\n\n/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Group footer row \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n/*\n * Appears below the last leaf child of each expanded group.\n * Shows the same aggregate values as the group header row (AG Grid groupIncludeFooter).\n * Cells are fully selectable and copyable; editing is blocked because values are computed.\n */\n.pg-row--group-footer {\n background: var(--pg-colors-group-footer-background, #eef2fa);\n font-style: italic;\n font-weight: var(--pg-typography-font-weight-semi-bold, 600);\n border-bottom: 2px solid var(--pg-colors-primary-light, #bfdbfe);\n cursor: default;\n}\n.pg-row--group-footer:hover,\n.pg-row--group-footer.pg-row--hover {\n background: var(--pg-colors-group-footer-hover, #e0e9f8) !important;\n}\n/* Level-based indentation mirrors the group header rules */\n.pg-row--group-footer[data-level=\"0\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-0, 8px); }\n.pg-row--group-footer[data-level=\"1\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-1, 28px); }\n.pg-row--group-footer[data-level=\"2\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-2, 48px); }\n.pg-row--group-footer[data-level=\"3\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-3, 68px); }\n.pg-row--group-footer[data-level=\"4\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-4, 88px); }\n.pg-row--group-footer[data-level=\"5\"] .pg-row-group__cell { padding-left: var(--pg-group-indent-5, 108px); }\n.pg-row--group-footer .pg-row-group__label {\n color: var(--pg-colors-text-secondary, #475569);\n}\n/* Dark-mode overrides */\n.pg-grid[data-theme=\"dark\"] .pg-row--group-footer {\n background: var(--pg-colors-group-footer-background, rgba(37, 99, 235, 0.06));\n border-bottom-color: rgba(96, 165, 250, 0.28);\n}\n.pg-grid[data-theme=\"dark\"] .pg-row--group-footer:hover,\n.pg-grid[data-theme=\"dark\"] .pg-row--group-footer.pg-row--hover {\n background: var(--pg-colors-group-footer-hover, rgba(37, 99, 235, 0.11)) !important;\n}\n.pg-grid[data-theme=\"dark\"] .pg-row--group-footer .pg-row-group__label {\n color: var(--pg-colors-text-secondary, #94a3b8);\n}\n\n";
|
|
9
|
+
//# sourceMappingURL=rows.css.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rows.css.d.ts","sourceRoot":"","sources":["../../../src/styles/base/rows.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,0uHA0EnB,CAAC"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — rows 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 rowsCss = `/* ──────────────────── Rows ──────────────────── */
|
|
9
|
+
.pg-row {
|
|
10
|
+
display: flex;
|
|
11
|
+
align-items: stretch;
|
|
12
|
+
position: absolute;
|
|
13
|
+
left: 0;
|
|
14
|
+
width: 100%;
|
|
15
|
+
border-bottom: 1px solid var(--pg-colors-border, #e2e8f0);
|
|
16
|
+
background: var(--pg-colors-row-background, #fff);
|
|
17
|
+
transition: background var(--pg-transitions-duration-fast, 100ms);
|
|
18
|
+
}
|
|
19
|
+
.pg-row--hover { background: var(--pg-colors-row-hover, #f0f7ff) !important; }
|
|
20
|
+
.pg-row--alt { background: var(--pg-colors-row-background-alt, #f8fafc); }
|
|
21
|
+
.pg-row--selected {
|
|
22
|
+
background: var(--pg-colors-row-selected, #eff6ff) !important;
|
|
23
|
+
outline: none;
|
|
24
|
+
}
|
|
25
|
+
.pg-row--selected .pg-cell { color: inherit; }
|
|
26
|
+
.pg-row--group {
|
|
27
|
+
background: var(--pg-colors-group-row-background, #f8fafc);
|
|
28
|
+
font-weight: var(--pg-typography-font-weight-semi-bold, 600);
|
|
29
|
+
// border-left: var(--pg-group-row-border-width, 3px) solid var(--pg-colors-primary, #2563eb);
|
|
30
|
+
cursor: pointer;
|
|
31
|
+
}
|
|
32
|
+
.pg-row--group:hover,
|
|
33
|
+
.pg-row--group.pg-row--hover {
|
|
34
|
+
background: var(--pg-colors-group-row-hover, #eff2ff) !important;
|
|
35
|
+
}
|
|
36
|
+
.pg-row--group:hover .pg-row-group__toggle,
|
|
37
|
+
.pg-row--group.pg-row--hover .pg-row-group__toggle {
|
|
38
|
+
background: var(--pg-colors-group-toggle-hover, rgba(37, 99, 235, 0.1));
|
|
39
|
+
color: var(--pg-colors-primary, #2563eb);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/* ──────────────────── Group footer row ──────────────────── */
|
|
43
|
+
/*
|
|
44
|
+
* Appears below the last leaf child of each expanded group.
|
|
45
|
+
* Shows the same aggregate values as the group header row (AG Grid groupIncludeFooter).
|
|
46
|
+
* Cells are fully selectable and copyable; editing is blocked because values are computed.
|
|
47
|
+
*/
|
|
48
|
+
.pg-row--group-footer {
|
|
49
|
+
background: var(--pg-colors-group-footer-background, #eef2fa);
|
|
50
|
+
font-style: italic;
|
|
51
|
+
font-weight: var(--pg-typography-font-weight-semi-bold, 600);
|
|
52
|
+
border-bottom: 2px solid var(--pg-colors-primary-light, #bfdbfe);
|
|
53
|
+
cursor: default;
|
|
54
|
+
}
|
|
55
|
+
.pg-row--group-footer:hover,
|
|
56
|
+
.pg-row--group-footer.pg-row--hover {
|
|
57
|
+
background: var(--pg-colors-group-footer-hover, #e0e9f8) !important;
|
|
58
|
+
}
|
|
59
|
+
/* Level-based indentation mirrors the group header rules */
|
|
60
|
+
.pg-row--group-footer[data-level="0"] .pg-row-group__cell { padding-left: var(--pg-group-indent-0, 8px); }
|
|
61
|
+
.pg-row--group-footer[data-level="1"] .pg-row-group__cell { padding-left: var(--pg-group-indent-1, 28px); }
|
|
62
|
+
.pg-row--group-footer[data-level="2"] .pg-row-group__cell { padding-left: var(--pg-group-indent-2, 48px); }
|
|
63
|
+
.pg-row--group-footer[data-level="3"] .pg-row-group__cell { padding-left: var(--pg-group-indent-3, 68px); }
|
|
64
|
+
.pg-row--group-footer[data-level="4"] .pg-row-group__cell { padding-left: var(--pg-group-indent-4, 88px); }
|
|
65
|
+
.pg-row--group-footer[data-level="5"] .pg-row-group__cell { padding-left: var(--pg-group-indent-5, 108px); }
|
|
66
|
+
.pg-row--group-footer .pg-row-group__label {
|
|
67
|
+
color: var(--pg-colors-text-secondary, #475569);
|
|
68
|
+
}
|
|
69
|
+
/* Dark-mode overrides */
|
|
70
|
+
.pg-grid[data-theme="dark"] .pg-row--group-footer {
|
|
71
|
+
background: var(--pg-colors-group-footer-background, rgba(37, 99, 235, 0.06));
|
|
72
|
+
border-bottom-color: rgba(96, 165, 250, 0.28);
|
|
73
|
+
}
|
|
74
|
+
.pg-grid[data-theme="dark"] .pg-row--group-footer:hover,
|
|
75
|
+
.pg-grid[data-theme="dark"] .pg-row--group-footer.pg-row--hover {
|
|
76
|
+
background: var(--pg-colors-group-footer-hover, rgba(37, 99, 235, 0.11)) !important;
|
|
77
|
+
}
|
|
78
|
+
.pg-grid[data-theme="dark"] .pg-row--group-footer .pg-row-group__label {
|
|
79
|
+
color: var(--pg-colors-text-secondary, #94a3b8);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
`;
|
|
83
|
+
//# sourceMappingURL=rows.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rows.css.js","sourceRoot":"","sources":["../../../src/styles/base/rows.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0EtB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Photon Grid base styles — scrollbars 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 scrollbarsCss = "/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Scrollbars \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n/* Native vertical scrollbar \u2014 flex item that lives beside the center panel.\n It is NOT absolutely positioned so it never overlaps cell content; the center\n panel shrinks to make room for it, keeping every cell border fully visible. */\n.pg-scrollbar-v-native {\n flex-shrink: 0;\n overflow-y: scroll;\n overflow-x: hidden;\n background: var(--pg-colors-scrollbar-bg, #fff);\n}\n.pg-scrollbar-v-spacer {\n width: 1px;\n pointer-events: none;\n}\n/* Horizontal row: sits below the body */\n.pg-scrollbar-h-row {\n display: flex;\n flex-direction: row;\n flex-shrink: 0;\n border-top: 1px solid var(--pg-colors-border, #e2e8f0);\n}\n.pg-scrollbar-h-spacer { flex-shrink: 0; background: var(--pg-colors-scrollbar-bg, #fff); }\n.pg-scrollbar-h-spacer--left { width: var(--pg-left-panel-width, 0px); overflow: scroll; }\n.pg-scrollbar-h-spacer--right { width: var(--pg-right-panel-width, 0px); overflow: scroll; }\n/* Aligns the h-scroll track with the narrowed center panel (which is now\n offset by the vertical scrollbar width captured in --pg-scrollbar-v-width). */\n.pg-scrollbar-h-spacer--vscroll {\n flex-shrink: 0;\n width: 0px;\n background: var(--pg-colors-scrollbar-bg, #fff);\n}\n/* Native horizontal scrollbar container */\n.pg-scrollbar-h-native {\n flex: 1 1 0;\n min-width: 0;\n overflow-x: scroll;\n overflow-y: hidden;\n background: var(--pg-colors-scrollbar-bg, #fff);\n}\n.pg-scrollbar-h-content {\n height: 1px;\n pointer-events: none;\n}\n/* Hidden state \u2014 applied to wraps */\n.pg-scrollbar--hidden { display: none; }\n\n";
|
|
9
|
+
//# sourceMappingURL=scrollbars.css.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scrollbars.css.d.ts","sourceRoot":"","sources":["../../../src/styles/base/scrollbars.css.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,qzDA+CzB,CAAC"}
|