@adcops/autocore-react 3.5.9 → 3.5.11

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 (76) hide show
  1. package/dist/components/index.d.ts +4 -0
  2. package/dist/components/index.d.ts.map +1 -1
  3. package/dist/components/index.js +1 -1
  4. package/dist/components/tis-editor/TisConfigEditor.css +11 -0
  5. package/dist/components/tis-editor/TisConfigEditor.d.ts.map +1 -1
  6. package/dist/components/tis-editor/TisConfigEditor.js +1 -1
  7. package/dist/components/tis-editor/editor/AuthoringContext.d.ts +37 -0
  8. package/dist/components/tis-editor/editor/AuthoringContext.d.ts.map +1 -0
  9. package/dist/components/tis-editor/editor/AuthoringContext.js +1 -0
  10. package/dist/components/tis-editor/editor/ChartViewDialog.d.ts +11 -0
  11. package/dist/components/tis-editor/editor/ChartViewDialog.d.ts.map +1 -1
  12. package/dist/components/tis-editor/editor/ChartViewDialog.js +1 -1
  13. package/dist/components/tis-editor/editor/FieldArrayEditor.d.ts.map +1 -1
  14. package/dist/components/tis-editor/editor/FieldArrayEditor.js +1 -1
  15. package/dist/components/tis-editor/editor/RawDataEditor.d.ts.map +1 -1
  16. package/dist/components/tis-editor/editor/RawDataEditor.js +1 -1
  17. package/dist/components/tis-editor/editor/TestFieldDialog.d.ts +7 -0
  18. package/dist/components/tis-editor/editor/TestFieldDialog.d.ts.map +1 -1
  19. package/dist/components/tis-editor/editor/TestFieldDialog.js +1 -1
  20. package/dist/components/tis-editor/editor/ViewsEditor.d.ts.map +1 -1
  21. package/dist/components/tis-editor/editor/ViewsEditor.js +1 -1
  22. package/dist/components/varpick/VariableInput.d.ts +41 -0
  23. package/dist/components/varpick/VariableInput.d.ts.map +1 -0
  24. package/dist/components/varpick/VariableInput.js +1 -0
  25. package/dist/components/varpick/VariablePicker.d.ts +45 -0
  26. package/dist/components/varpick/VariablePicker.d.ts.map +1 -0
  27. package/dist/components/varpick/VariablePicker.js +1 -0
  28. package/dist/components/varpick/index.d.ts +16 -0
  29. package/dist/components/varpick/index.d.ts.map +1 -0
  30. package/dist/components/varpick/index.js +1 -0
  31. package/dist/components/varpick/tisCatalogs.d.ts +85 -0
  32. package/dist/components/varpick/tisCatalogs.d.ts.map +1 -0
  33. package/dist/components/varpick/tisCatalogs.js +1 -0
  34. package/dist/components/varpick/varpick.css +167 -0
  35. package/dist/core/AutoCoreTagContext.d.ts.map +1 -1
  36. package/dist/core/AutoCoreTagContext.js +1 -1
  37. package/dist/core/AutoCoreTagTypes.d.ts +13 -0
  38. package/dist/core/AutoCoreTagTypes.d.ts.map +1 -1
  39. package/dist/hooks/index.d.ts +4 -0
  40. package/dist/hooks/index.d.ts.map +1 -1
  41. package/dist/hooks/index.js +1 -1
  42. package/dist/hooks/useGmVariables.d.ts +57 -0
  43. package/dist/hooks/useGmVariables.d.ts.map +1 -0
  44. package/dist/hooks/useGmVariables.js +1 -0
  45. package/dist/hooks/useSequenceProducers.d.ts +38 -0
  46. package/dist/hooks/useSequenceProducers.d.ts.map +1 -0
  47. package/dist/hooks/useSequenceProducers.js +1 -0
  48. package/package.json +5 -2
  49. package/src/components/index.ts +17 -0
  50. package/src/components/tis-editor/TisConfigEditor.css +11 -0
  51. package/src/components/tis-editor/TisConfigEditor.tsx +31 -0
  52. package/src/components/tis-editor/editor/AuthoringContext.tsx +43 -0
  53. package/src/components/tis-editor/editor/ChartViewDialog.tsx +24 -7
  54. package/src/components/tis-editor/editor/FieldArrayEditor.tsx +1 -0
  55. package/src/components/tis-editor/editor/RawDataEditor.tsx +7 -2
  56. package/src/components/tis-editor/editor/TestFieldDialog.tsx +66 -12
  57. package/src/components/tis-editor/editor/ViewsEditor.tsx +25 -0
  58. package/src/components/varpick/VariableInput.tsx +126 -0
  59. package/src/components/varpick/VariablePicker.tsx +168 -0
  60. package/src/components/varpick/index.ts +22 -0
  61. package/src/components/varpick/tisCatalogs.ts +235 -0
  62. package/src/components/varpick/varpick.css +167 -0
  63. package/src/core/AutoCoreTagContext.tsx +3 -1
  64. package/src/core/AutoCoreTagTypes.ts +14 -0
  65. package/src/hooks/index.ts +11 -0
  66. package/src/hooks/useGmVariables.ts +142 -0
  67. package/src/hooks/useSequenceProducers.ts +104 -0
  68. package/tools/tests/dist/TestFieldDialog-C4mKVh7q.js +32817 -0
  69. package/tools/tests/dist/autocore-react.css +257 -0
  70. package/tools/tests/dist/tis-editor.entry.js +8431 -40567
  71. package/tools/tests/dist/varpick.entry.js +113 -0
  72. package/tools/tests/live-server.probe.mjs +172 -0
  73. package/tools/tests/varpick.entry.tsx +81 -0
  74. package/tools/tests/varpick.test.mjs +208 -0
  75. package/tools/tests/vite.config.mjs +7 -2
  76. package/tools/tests/dist/tis-editor.entry.css +0 -90
@@ -0,0 +1,257 @@
1
+ .ac-formsection {
2
+ border: 1px solid var(--surface-d, #e2e8f0);
3
+ border-radius: 6px;
4
+ background: var(--surface-card, #fff);
5
+ margin-bottom: 1rem;
6
+ }
7
+
8
+ .ac-formsection__header {
9
+ display: flex;
10
+ align-items: flex-start;
11
+ justify-content: space-between;
12
+ padding: 0.5rem 1rem;
13
+ border-bottom: 1px solid var(--surface-d, #e2e8f0);
14
+ background: var(--surface-b, #f8fafc);
15
+ border-top-left-radius: 6px;
16
+ border-top-right-radius: 6px;
17
+ }
18
+
19
+ .ac-formsection__title {
20
+ margin: 0;
21
+ font-size: 0.95rem;
22
+ font-weight: 600;
23
+ }
24
+
25
+ .ac-formsection__desc {
26
+ color: var(--text-color-secondary, #64748b);
27
+ display: block;
28
+ margin-top: 0.15rem;
29
+ }
30
+
31
+ .ac-formsection__actions {
32
+ display: flex;
33
+ gap: 0.5rem;
34
+ }
35
+
36
+ .ac-formsection__body {
37
+ padding: 0.75rem 1rem;
38
+ display: flex;
39
+ flex-direction: column;
40
+ gap: 0.5rem;
41
+ }
42
+
43
+ .ac-formrow {
44
+ display: grid;
45
+ grid-template-columns: minmax(8rem, 14rem) 1fr;
46
+ gap: 0.5rem 1rem;
47
+ align-items: start;
48
+ }
49
+
50
+ .ac-formrow--error .ac-formrow__field input,
51
+ .ac-formrow--error .ac-formrow__field .p-inputtext {
52
+ border-color: #dc2626;
53
+ }
54
+
55
+ .ac-formrow__label {
56
+ font-weight: 500;
57
+ padding-top: 0.4rem;
58
+ display: flex;
59
+ flex-direction: column;
60
+ }
61
+
62
+ .ac-formrow__required {
63
+ color: #dc2626;
64
+ }
65
+
66
+ .ac-formrow__hint {
67
+ color: var(--text-color-secondary, #64748b);
68
+ font-weight: 400;
69
+ font-size: 0.75rem;
70
+ margin-top: 0.15rem;
71
+ }
72
+
73
+ .ac-formrow__field {
74
+ display: flex;
75
+ flex-direction: column;
76
+ gap: 0.25rem;
77
+ }
78
+
79
+ .ac-formrow__field > input,
80
+ .ac-formrow__field > .p-inputtext,
81
+ .ac-formrow__field > .p-dropdown,
82
+ .ac-formrow__field > .p-inputtextarea {
83
+ width: 100%;
84
+ }
85
+
86
+ .ac-formrow__error {
87
+ color: #dc2626;
88
+ font-size: 0.75rem;
89
+ }
90
+ /*
91
+ * Variable picker.
92
+ *
93
+ * Colours come from the PrimeReact theme's variables so the dialog matches
94
+ * whatever theme the machine is running, light or dark. Every value has a
95
+ * literal fallback: an un-themed host (the playground, a test harness) must
96
+ * still render legible text rather than black on black.
97
+ */
98
+
99
+ .ac-varpick__input {
100
+ display: flex;
101
+ align-items: stretch;
102
+ gap: 0;
103
+ min-width: 0;
104
+ }
105
+
106
+ .ac-varpick__input .p-inputtext {
107
+ flex: 1 1 auto;
108
+ min-width: 0;
109
+ border-top-right-radius: 0;
110
+ border-bottom-right-radius: 0;
111
+ }
112
+
113
+ /* Sized to the full control height, not shrunk to fit: these screens are
114
+ * touchscreens, and a button an operator has to aim at is one they mis-tap. */
115
+ .ac-varpick__input > .p-button {
116
+ flex: 0 0 auto;
117
+ border-top-left-radius: 0;
118
+ border-bottom-left-radius: 0;
119
+ margin-left: -1px;
120
+ }
121
+
122
+ .ac-varpick__hint {
123
+ font-size: 0.8125rem;
124
+ color: var(--text-color-secondary, #6b7280);
125
+ margin-bottom: 0.75rem;
126
+ line-height: 1.4;
127
+ }
128
+
129
+ .ac-varpick__search { width: 100%; }
130
+
131
+ .ac-varpick__empty {
132
+ padding: 1.5rem 0.25rem;
133
+ color: var(--text-color-secondary, #6b7280);
134
+ font-size: 0.875rem;
135
+ }
136
+
137
+ .ac-varpick__list {
138
+ display: flex;
139
+ flex-direction: column;
140
+ gap: 1rem;
141
+ margin-top: 0.75rem;
142
+ /* Bounded so the search box and the footer stay put while the list moves. */
143
+ max-height: 55vh;
144
+ overflow-y: auto;
145
+ }
146
+
147
+ .ac-varpick__group { display: flex; flex-direction: column; gap: 2px; }
148
+
149
+ .ac-varpick__grouphead {
150
+ display: flex;
151
+ flex-wrap: wrap;
152
+ align-items: baseline;
153
+ gap: 0.5rem;
154
+ padding-bottom: 0.25rem;
155
+ margin-bottom: 0.25rem;
156
+ border-bottom: 1px solid var(--surface-border, rgba(127, 127, 127, 0.25));
157
+ position: sticky;
158
+ top: 0;
159
+ background: var(--surface-overlay, #ffffff);
160
+ z-index: 1;
161
+ }
162
+
163
+ .ac-varpick__grouptitle {
164
+ font-size: 0.75rem;
165
+ font-weight: 700;
166
+ letter-spacing: 0.04em;
167
+ text-transform: uppercase;
168
+ color: var(--text-color-secondary, #6b7280);
169
+ }
170
+
171
+ .ac-varpick__grouphint {
172
+ font-size: 0.75rem;
173
+ color: var(--text-color-secondary, #8b95a1);
174
+ }
175
+
176
+ /*
177
+ * Two lines by design — the identifier, then what it MEANS. A one-line list of
178
+ * identifiers is the problem this dialog exists to solve, so the description is
179
+ * never truncated and never hidden behind a hover: there is no hover on a
180
+ * touchscreen.
181
+ */
182
+ .ac-varpick__row {
183
+ display: flex;
184
+ flex-direction: column;
185
+ align-items: flex-start;
186
+ gap: 2px;
187
+ width: 100%;
188
+ text-align: left;
189
+ min-height: 2.25rem;
190
+ padding: 0.375rem 0.75rem;
191
+ border: 1px solid transparent;
192
+ border-radius: 3px;
193
+ background: transparent;
194
+ color: var(--text-color, #111827);
195
+ font: inherit;
196
+ cursor: pointer;
197
+ }
198
+
199
+ .ac-varpick__row:hover { background: var(--surface-hover, rgba(127, 127, 127, 0.08)); }
200
+
201
+ .ac-varpick__row:focus-visible {
202
+ outline: 2px solid var(--primary-color, #2563eb);
203
+ outline-offset: -2px;
204
+ }
205
+
206
+ .ac-varpick__row--on {
207
+ background: var(--highlight-bg, rgba(37, 99, 235, 0.14));
208
+ border-color: var(--primary-color, #2563eb);
209
+ }
210
+
211
+ .ac-varpick__row--off { opacity: 0.55; cursor: default; }
212
+
213
+ .ac-varpick__line {
214
+ display: flex;
215
+ flex-wrap: wrap;
216
+ align-items: baseline;
217
+ gap: 0.5rem;
218
+ min-width: 0;
219
+ }
220
+
221
+ .ac-varpick__name {
222
+ font-family: var(--font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
223
+ font-weight: 600;
224
+ }
225
+
226
+ .ac-varpick__label { font-size: 0.875rem; }
227
+
228
+ .ac-varpick__chip {
229
+ font-size: 0.75rem;
230
+ padding: 0 6px;
231
+ border-radius: 999px;
232
+ background: var(--surface-100, rgba(127, 127, 127, 0.12));
233
+ border: 1px solid var(--surface-border, rgba(127, 127, 127, 0.25));
234
+ color: var(--text-color-secondary, #6b7280);
235
+ /* A unit symbol's case is meaningful: "mm/s", "N", "MPa". */
236
+ text-transform: none;
237
+ }
238
+
239
+ /* The current reading. Nothing turns an unfamiliar name into an obvious one
240
+ * faster than seeing what it says right now. */
241
+ .ac-varpick__live {
242
+ font-family: var(--font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
243
+ font-size: 0.75rem;
244
+ color: var(--green-600, #15803d);
245
+ }
246
+
247
+ .ac-varpick__desc {
248
+ font-size: 0.8125rem;
249
+ color: var(--text-color-secondary, #6b7280);
250
+ line-height: 1.35;
251
+ }
252
+
253
+ .ac-varpick__why { font-size: 0.8125rem; color: var(--orange-600, #b45309); }
254
+ .ac-varpick__note { font-size: 0.8125rem; color: var(--blue-600, #0369a1); }
255
+
256
+ .ac-varpick__foot { display: flex; justify-content: flex-end; gap: 0.5rem; }
257
+ /*$vite$:1*/