@fieldia/widgets 0.3.0 → 0.5.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.
- package/package.json +2 -2
- package/src/index.d.mts +6 -0
- package/src/index.d.ts +6 -0
- package/src/index.js +6 -0
- package/src/index.js.map +1 -1
- package/src/index.mjs +6 -0
- package/src/index.mjs.map +1 -1
- package/src/lib/calendar.d.mts +11 -0
- package/src/lib/calendar.d.ts +11 -0
- package/src/lib/calendar.js +242 -0
- package/src/lib/calendar.js.map +1 -0
- package/src/lib/calendar.mjs +238 -0
- package/src/lib/calendar.mjs.map +1 -0
- package/src/lib/display.d.mts +2 -2
- package/src/lib/display.d.ts +2 -2
- package/src/lib/display.js +5 -4
- package/src/lib/display.js.map +1 -1
- package/src/lib/display.mjs +5 -4
- package/src/lib/display.mjs.map +1 -1
- package/src/lib/extras.d.mts +3 -1
- package/src/lib/extras.d.ts +3 -1
- package/src/lib/extras.js +187 -5
- package/src/lib/extras.js.map +1 -1
- package/src/lib/extras.mjs +186 -5
- package/src/lib/extras.mjs.map +1 -1
- package/src/lib/label.d.mts +2 -0
- package/src/lib/label.d.ts +2 -0
- package/src/lib/label.js +47 -0
- package/src/lib/label.js.map +1 -0
- package/src/lib/label.mjs +43 -0
- package/src/lib/label.mjs.map +1 -0
- package/src/lib/labels.d.mts +33 -0
- package/src/lib/labels.d.ts +33 -0
- package/src/lib/labels.js +108 -0
- package/src/lib/labels.js.map +1 -1
- package/src/lib/labels.mjs +108 -0
- package/src/lib/labels.mjs.map +1 -1
- package/src/lib/lines.js +5 -3
- package/src/lib/lines.js.map +1 -1
- package/src/lib/lines.mjs +5 -3
- package/src/lib/lines.mjs.map +1 -1
- package/src/lib/numbers.d.mts +8 -0
- package/src/lib/numbers.d.ts +8 -0
- package/src/lib/numbers.js +47 -0
- package/src/lib/numbers.js.map +1 -0
- package/src/lib/numbers.mjs +43 -0
- package/src/lib/numbers.mjs.map +1 -0
- package/src/lib/progress.d.mts +2 -0
- package/src/lib/progress.d.ts +2 -0
- package/src/lib/progress.js +73 -0
- package/src/lib/progress.js.map +1 -0
- package/src/lib/progress.mjs +69 -0
- package/src/lib/progress.mjs.map +1 -0
- package/src/lib/properties.d.mts +2 -0
- package/src/lib/properties.d.ts +2 -0
- package/src/lib/properties.js +86 -0
- package/src/lib/properties.js.map +1 -0
- package/src/lib/properties.mjs +82 -0
- package/src/lib/properties.mjs.map +1 -0
- package/src/lib/relations.d.mts +7 -0
- package/src/lib/relations.d.ts +7 -0
- package/src/lib/relations.js +199 -26
- package/src/lib/relations.js.map +1 -1
- package/src/lib/relations.mjs +197 -25
- package/src/lib/relations.mjs.map +1 -1
- package/src/lib/statusbar.d.mts +2 -0
- package/src/lib/statusbar.d.ts +2 -0
- package/src/lib/statusbar.js +61 -0
- package/src/lib/statusbar.js.map +1 -0
- package/src/lib/statusbar.mjs +57 -0
- package/src/lib/statusbar.mjs.map +1 -0
- package/src/lib/styles.d.mts +1 -1
- package/src/lib/styles.d.ts +1 -1
- package/src/lib/styles.js +114 -2
- package/src/lib/styles.js.map +1 -1
- package/src/lib/styles.mjs +114 -2
- package/src/lib/styles.mjs.map +1 -1
- package/src/lib/widgets.d.mts +35 -1
- package/src/lib/widgets.d.ts +35 -1
- package/src/lib/widgets.js +57 -12
- package/src/lib/widgets.js.map +1 -1
- package/src/lib/widgets.mjs +58 -13
- package/src/lib/widgets.mjs.map +1 -1
package/src/lib/styles.mjs
CHANGED
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
* form mirrors without a second stylesheet.
|
|
13
13
|
*/
|
|
14
14
|
export const FIELDIA_CSS = /* css */ `
|
|
15
|
-
.fd-form
|
|
15
|
+
/* .fd-theme carries the same tokens for things outside a form, such as a dialog over the page. */
|
|
16
|
+
.fd-form, .fd-theme {
|
|
16
17
|
--fd-font: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Noto Sans Arabic", sans-serif;
|
|
17
18
|
--fd-text: #212529;
|
|
18
19
|
--fd-muted: #6b7280;
|
|
@@ -48,7 +49,7 @@ export const FIELDIA_CSS = /* css */ `
|
|
|
48
49
|
color: var(--fd-text);
|
|
49
50
|
-webkit-text-size-adjust: 100%;
|
|
50
51
|
}
|
|
51
|
-
.fd-form[data-fd-skin="outlined"] {
|
|
52
|
+
.fd-form[data-fd-skin="outlined"], .fd-theme[data-fd-skin="outlined"] {
|
|
52
53
|
--fd-text: rgba(0, 0, 0, 0.88);
|
|
53
54
|
--fd-muted: rgba(0, 0, 0, 0.55);
|
|
54
55
|
--fd-page: #f5f5f5;
|
|
@@ -149,6 +150,12 @@ export const FIELDIA_CSS = /* css */ `
|
|
|
149
150
|
.fd-number { display: flex; align-items: baseline; gap: 6px; }
|
|
150
151
|
.fd-number-input { font-variant-numeric: tabular-nums; }
|
|
151
152
|
.fd-currency { color: var(--fd-muted); font-size: 12.5px; font-weight: 600; }
|
|
153
|
+
/* With the currency after it, the amount ends right beside it. */
|
|
154
|
+
.fd-currency-after > .fd-number-input { text-align: end; }
|
|
155
|
+
/* A picked currency is a small box of its own beside the amount. */
|
|
156
|
+
.fd-currency-picked { align-items: center; }
|
|
157
|
+
.fd-currency-picked > :not(.fd-number-input) { flex: 0 0 104px; min-width: 0; }
|
|
158
|
+
.fd-currency-picked > .fd-number-input { flex: 1 1 auto; min-width: 0; }
|
|
152
159
|
.fd-pending { color: var(--fd-muted); font-style: italic; }
|
|
153
160
|
.fd-pending:empty::before { content: "—"; }
|
|
154
161
|
|
|
@@ -186,6 +193,13 @@ export const FIELDIA_CSS = /* css */ `
|
|
|
186
193
|
font-size: 16px; line-height: 1; padding: 2px 6px; border-radius: 4px;
|
|
187
194
|
}
|
|
188
195
|
.fd-combo-clear:hover { color: var(--fd-text); background: var(--fd-page); }
|
|
196
|
+
/* A link that can be opened has its open button beside the clear button. */
|
|
197
|
+
.fd-combo:has(> .fd-combo-open:not([hidden])) .fd-combo-input { padding-inline-end: 52px; }
|
|
198
|
+
.fd-combo-open {
|
|
199
|
+
position: absolute; inset-inline-end: 28px; border: none; background: none; cursor: pointer; color: var(--fd-accent);
|
|
200
|
+
font-size: 14px; line-height: 1; padding: 2px 6px; border-radius: 4px;
|
|
201
|
+
}
|
|
202
|
+
.fd-combo-open:hover { background: var(--fd-page); }
|
|
189
203
|
.fd-listbox {
|
|
190
204
|
position: absolute; inset-inline: 0; inset-block-start: calc(100% + 2px); z-index: 20; margin: 0; padding: 4px 0;
|
|
191
205
|
list-style: none; background: var(--fd-surface); border: 1px solid var(--fd-border); border-radius: max(var(--fd-control-radius), 4px);
|
|
@@ -193,6 +207,7 @@ export const FIELDIA_CSS = /* css */ `
|
|
|
193
207
|
}
|
|
194
208
|
.fd-option { padding: 6px 12px; cursor: pointer; }
|
|
195
209
|
.fd-option:hover, .fd-option.fd-active { background: var(--fd-accent-soft); }
|
|
210
|
+
.fd-option-create { color: var(--fd-accent); border-block-start: 1px solid var(--fd-border); }
|
|
196
211
|
.fd-empty { padding: 6px 12px; color: var(--fd-muted); font-style: italic; }
|
|
197
212
|
.fd-tags { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; min-width: 0; }
|
|
198
213
|
.fd-chips { display: contents; list-style: none; margin: 0; padding: 0; }
|
|
@@ -243,6 +258,24 @@ export const FIELDIA_CSS = /* css */ `
|
|
|
243
258
|
.fd-avatar .fd-image-pick { width: 88px; height: 88px; }
|
|
244
259
|
.fd-image-preview { max-width: 160px; max-height: 160px; border-radius: var(--fd-control-radius); border: 1px solid var(--fd-border); object-fit: cover; background: var(--fd-page); }
|
|
245
260
|
.fd-richtext { min-height: 96px; line-height: 1.5; overflow-wrap: anywhere; }
|
|
261
|
+
.fd-richtext-box { display: grid; gap: 0; min-width: 0; }
|
|
262
|
+
.fd-richtext-box > .fd-richtext { border-start-start-radius: 0; border-start-end-radius: 0; }
|
|
263
|
+
.fd-richtext-bar {
|
|
264
|
+
display: flex; flex-wrap: wrap; align-items: center; gap: 2px; padding: 4px; min-width: 0;
|
|
265
|
+
border: 1px solid var(--fd-border); border-block-end: none; border-start-start-radius: var(--fd-control-radius); border-start-end-radius: var(--fd-control-radius);
|
|
266
|
+
background: var(--fd-page);
|
|
267
|
+
}
|
|
268
|
+
.fd-richtext-style { font: inherit; font-size: 12.5px; padding: 3px 6px; margin-inline-end: 4px; border: 1px solid var(--fd-border); border-radius: 4px; background: var(--fd-surface); color: var(--fd-text); }
|
|
269
|
+
.fd-richtext-tool {
|
|
270
|
+
display: grid; place-items: center; width: 28px; height: 28px; padding: 0; border: none; border-radius: 4px;
|
|
271
|
+
background: none; cursor: pointer; color: var(--fd-text); font: inherit; font-size: 14px;
|
|
272
|
+
}
|
|
273
|
+
.fd-richtext-tool:hover { background: var(--fd-surface); }
|
|
274
|
+
.fd-richtext-tool[aria-pressed="true"] { background: var(--fd-accent-soft); color: var(--fd-accent); }
|
|
275
|
+
.fd-richtext-tool svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.3; stroke-linecap: round; }
|
|
276
|
+
.fd-richtext-tool svg circle { fill: currentColor; stroke: none; }
|
|
277
|
+
.fd-link-row { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; padding: 6px; border: 1px solid var(--fd-border); border-block-end: none; background: var(--fd-surface); }
|
|
278
|
+
.fd-link-row > .fd-input { flex: 1 1 200px; min-width: 0; }
|
|
246
279
|
.fd-richtext[contenteditable="false"] { background: transparent; border-color: transparent; padding-inline: 0; min-height: 0; }
|
|
247
280
|
.fd-richtext p { margin: 0 0 6px; }
|
|
248
281
|
.fd-code { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size: 12.5px; min-height: 96px; }
|
|
@@ -376,6 +409,53 @@ export const FIELDIA_CSS = /* css */ `
|
|
|
376
409
|
.fd-wizard { display: grid; gap: 20px; }
|
|
377
410
|
.fd-progress { display: grid; gap: 8px; }
|
|
378
411
|
.fd-progress-text { color: var(--fd-muted); font-size: 13px; }
|
|
412
|
+
.fd-value-text { display: block; padding-block: 6px; font-variant-numeric: tabular-nums; }
|
|
413
|
+
.fd-date-pick { position: relative; display: flex; align-items: center; gap: 6px; min-width: 0; }
|
|
414
|
+
.fd-date-pick > .fd-input { flex: 1 1 auto; min-width: 0; }
|
|
415
|
+
.fd-calendar-button {
|
|
416
|
+
flex: 0 0 auto; display: grid; place-items: center; width: 32px; height: 32px; padding: 0; cursor: pointer;
|
|
417
|
+
border: 1px solid var(--fd-border); border-radius: var(--fd-control-radius); background: var(--fd-surface); color: var(--fd-muted);
|
|
418
|
+
}
|
|
419
|
+
.fd-calendar-button:hover, .fd-calendar-button[aria-expanded="true"] { color: var(--fd-text); background: var(--fd-page); }
|
|
420
|
+
.fd-calendar-button svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; }
|
|
421
|
+
.fd-calendar {
|
|
422
|
+
position: absolute; inset-block-start: calc(100% + 4px); inset-inline-end: 0; z-index: 30; padding: 8px;
|
|
423
|
+
background: var(--fd-surface); border: 1px solid var(--fd-border); border-radius: max(var(--fd-control-radius), 6px);
|
|
424
|
+
box-shadow: 0 8px 24px rgba(15, 20, 25, 0.14);
|
|
425
|
+
}
|
|
426
|
+
.fd-calendar-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 2px 4px 6px; }
|
|
427
|
+
.fd-calendar-head button { border: none; background: none; cursor: pointer; font-size: 18px; line-height: 1; padding: 4px 8px; border-radius: 4px; color: var(--fd-text); }
|
|
428
|
+
.fd-calendar-head button:hover { background: var(--fd-page); }
|
|
429
|
+
.fd-calendar-title { font-weight: 600; }
|
|
430
|
+
.fd-calendar-grid { border-collapse: collapse; font-variant-numeric: tabular-nums; }
|
|
431
|
+
.fd-calendar-grid th { font-size: 11.5px; font-weight: 600; color: var(--fd-muted); padding: 4px 0; width: 34px; text-align: center; }
|
|
432
|
+
.fd-calendar-grid .fd-week { color: var(--fd-accent); font-weight: 600; border-inline-end: 1px solid var(--fd-border); }
|
|
433
|
+
.fd-calendar-grid td { padding: 1px; }
|
|
434
|
+
.fd-calendar-grid td button {
|
|
435
|
+
width: 32px; height: 30px; border: none; border-radius: 4px; background: none; cursor: pointer; color: var(--fd-text); font: inherit; font-size: 13px;
|
|
436
|
+
}
|
|
437
|
+
.fd-calendar-grid td button:hover { background: var(--fd-accent-soft); }
|
|
438
|
+
.fd-calendar-grid td button.fd-outside { color: var(--fd-muted); opacity: 0.6; }
|
|
439
|
+
.fd-calendar-grid td button[aria-current="date"] { box-shadow: inset 0 0 0 1px var(--fd-accent); }
|
|
440
|
+
.fd-calendar-grid td button[aria-selected="true"] { background: var(--fd-accent); color: var(--fd-accent-text); font-weight: 600; }
|
|
441
|
+
.fd-calendar-grid td button:focus-visible { outline: 2px solid var(--fd-focus); outline-offset: 1px; }
|
|
442
|
+
.fd-properties { display: grid; gap: 8px; min-width: 0; }
|
|
443
|
+
.fd-property { display: grid; grid-template-columns: minmax(120px, 30%) minmax(0, 1fr); align-items: center; gap: 12px; min-width: 0; }
|
|
444
|
+
.fd-property > label { color: var(--fd-muted); font-size: 13px; }
|
|
445
|
+
.fd-property[data-type="boolean"] > :last-child { justify-self: start; }
|
|
446
|
+
@container (max-width: 520px) { .fd-property { grid-template-columns: minmax(0, 1fr); gap: 4px; } }
|
|
447
|
+
.fd-progressbar {
|
|
448
|
+
position: relative; height: 22px; min-width: 120px; border-radius: 999px; overflow: hidden;
|
|
449
|
+
background: var(--fd-page); border: 1px solid var(--fd-border); font-variant-numeric: tabular-nums;
|
|
450
|
+
}
|
|
451
|
+
.fd-progressbar-fill { height: 100%; background: var(--fd-success); transition: width 0.2s ease; }
|
|
452
|
+
.fd-progressbar[data-tone="warning"] .fd-progressbar-fill { background: #d97706; }
|
|
453
|
+
.fd-progressbar[data-tone="danger"] .fd-progressbar-fill { background: var(--fd-error); }
|
|
454
|
+
.fd-progressbar[data-tone="info"] .fd-progressbar-fill { background: var(--fd-info); }
|
|
455
|
+
.fd-progressbar-text { position: absolute; inset: 0; display: grid; place-items: center; font-size: 12px; font-weight: 600; color: var(--fd-text); }
|
|
456
|
+
.fd-progressbar-edit { display: flex; align-items: center; gap: 12px; min-width: 0; }
|
|
457
|
+
.fd-progressbar-edit > .fd-progressbar { flex: 1 1 auto; }
|
|
458
|
+
.fd-progressbar-edit > .fd-input { flex: 0 0 96px; }
|
|
379
459
|
.fd-progress-bar { height: 4px; background: var(--fd-border); border-radius: 999px; overflow: hidden; }
|
|
380
460
|
.fd-progress-bar > span { display: block; height: 100%; background: var(--fd-accent); transition: width 0.25s ease; }
|
|
381
461
|
.fd-step { display: grid; gap: 18px; }
|
|
@@ -400,6 +480,38 @@ export const FIELDIA_CSS = /* css */ `
|
|
|
400
480
|
padding: 20px 22px; display: grid; gap: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.2); font-family: var(--fd-font);
|
|
401
481
|
}
|
|
402
482
|
.fd-dialog p { margin: 0; }
|
|
483
|
+
/* A page in a dialog: a head with its title and ×, a body that scrolls, a foot with Discard and Save & Close. */
|
|
484
|
+
.fd-form-dialog {
|
|
485
|
+
display: flex; flex-direction: column; width: 100%; max-height: min(90vh, 100%); min-height: 0;
|
|
486
|
+
background: var(--fd-page); color: var(--fd-text); border-radius: max(var(--fd-radius), 8px);
|
|
487
|
+
box-shadow: 0 24px 64px rgba(15, 20, 25, 0.3); overflow: hidden;
|
|
488
|
+
}
|
|
489
|
+
.fd-form-dialog:focus { outline: none; }
|
|
490
|
+
.fd-form-dialog.fd-size-small { max-width: 440px; }
|
|
491
|
+
.fd-form-dialog.fd-size-medium { max-width: 760px; }
|
|
492
|
+
.fd-form-dialog.fd-size-large { max-width: 1080px; }
|
|
493
|
+
.fd-form-dialog-backdrop:has(> .fd-size-full) { padding: 0; }
|
|
494
|
+
.fd-form-dialog.fd-size-full { max-width: none; max-height: none; height: 100%; border-radius: 0; }
|
|
495
|
+
.fd-form-dialog-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; border-block-end: 1px solid var(--fd-border); background: var(--fd-surface); }
|
|
496
|
+
.fd-form-dialog-title { margin: 0; font-size: 16px; font-weight: 600; }
|
|
497
|
+
.fd-dialog-close { border: none; background: none; cursor: pointer; font-size: 22px; line-height: 1; padding: 2px 8px; border-radius: 4px; color: var(--fd-muted); }
|
|
498
|
+
.fd-dialog-close:hover { background: var(--fd-page); color: var(--fd-text); }
|
|
499
|
+
.fd-form-dialog-body { flex: 1 1 auto; min-height: 0; overflow: auto; container-type: inline-size; }
|
|
500
|
+
.fd-form-dialog-body .fd-sheet-layout { margin-block-start: 12px; }
|
|
501
|
+
/* The dialog's head names the page; a record in a dialog leaves its side panel (the chatter) to the full page. */
|
|
502
|
+
.fd-form-dialog-body .fd-page-title { display: none; }
|
|
503
|
+
.fd-form-dialog-body .fd-page-head:not(:has(.fd-page-description)) { display: none; }
|
|
504
|
+
.fd-form-dialog-body .fd-sheet-layout.fd-has-side { grid-template-columns: minmax(0, 1fr); }
|
|
505
|
+
.fd-form-dialog-body .fd-side { display: none; }
|
|
506
|
+
/* Search more…: a search box over a list of rows. */
|
|
507
|
+
.fd-search-body { display: grid; gap: 12px; align-content: start; }
|
|
508
|
+
.fd-search-list { list-style: none; margin: 0; padding: 0; border: 1px solid var(--fd-border); border-radius: var(--fd-control-radius); overflow: auto; max-height: min(60vh, 520px); }
|
|
509
|
+
.fd-search-list .fd-option { padding: 8px 12px; }
|
|
510
|
+
.fd-search-list .fd-option + .fd-option { border-block-start: 1px solid var(--fd-border); }
|
|
511
|
+
.fd-search-list .fd-empty { padding: 10px 12px; color: var(--fd-muted); }
|
|
512
|
+
/* A page with no sheet of its own sits on the dialog's surface, clear of its edges. */
|
|
513
|
+
.fd-form-dialog-body:not(:has(.fd-sheet-layout)) { background: var(--fd-surface); padding: 16px 20px 20px; }
|
|
514
|
+
.fd-form-dialog-foot { padding: 12px 16px; border-block-start: 1px solid var(--fd-border); background: var(--fd-surface); margin: 0; }
|
|
403
515
|
@media (prefers-reduced-motion: reduce) { .fd-form *, .fd-form *::before, .fd-form *::after { transition: none !important; } }
|
|
404
516
|
`;
|
|
405
517
|
const STYLE_ID = 'fieldia-styles';
|
package/src/lib/styles.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.mjs","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC
|
|
1
|
+
{"version":3,"file":"styles.mjs","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsfpC,CAAC;AAEF,MAAM,QAAQ,GAAG,gBAAgB,CAAC;AAElC,oDAAoD;AACpD,MAAM,UAAU,aAAa,CAAC,QAAkB;IAC9C,IAAI,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC;QAAE,OAAO;IAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,GAAG,QAAQ,CAAC;IACpB,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;IAChC,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC"}
|
package/src/lib/widgets.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Field, FieldNode, Form, Value, Values } from '@fieldia/core';
|
|
1
|
+
import type { Field, FieldNode, Form, Locale, RecordId, RelatedRecord, Value, Values } from '@fieldia/core';
|
|
2
2
|
import type { PreferenceStore } from './preferences.mjs';
|
|
3
3
|
import type { WidgetLabels } from './labels.mjs';
|
|
4
4
|
/**
|
|
@@ -19,6 +19,40 @@ export interface WidgetContext {
|
|
|
19
19
|
labels?: WidgetLabels;
|
|
20
20
|
/** Where to keep a person's choices about how the widget looks, such as a table's columns. */
|
|
21
21
|
preferences?: PreferenceStore;
|
|
22
|
+
/** The page's language: numbers and dates are written as its readers write them. English when left out. */
|
|
23
|
+
locale?: Locale;
|
|
24
|
+
/** Dialogs the page can open: a related record, a searchable list, values to edit. Left out, widgets offer none. */
|
|
25
|
+
dialogs?: WidgetDialogs;
|
|
26
|
+
}
|
|
27
|
+
/** What a widget may ask of the page around it in a dialog. The viewer provides these. */
|
|
28
|
+
export interface WidgetDialogs {
|
|
29
|
+
/** Whether a record of this model can be shown in a dialog: the app gave a page for it. */
|
|
30
|
+
canOpen(model: string): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* A record in a dialog: an existing one (`recordId`) or a new one, whose name
|
|
33
|
+
* starts as `name`. Resolves with the record once saved, or null.
|
|
34
|
+
*/
|
|
35
|
+
openRecord(model: string, request: {
|
|
36
|
+
recordId?: RecordId;
|
|
37
|
+
name?: string;
|
|
38
|
+
title: string;
|
|
39
|
+
}): Promise<RelatedRecord | null>;
|
|
40
|
+
/** Pick a record from a searchable list. */
|
|
41
|
+
searchMore(request: {
|
|
42
|
+
title: string;
|
|
43
|
+
search(query: string, limit: number): Promise<RelatedRecord[]>;
|
|
44
|
+
}): Promise<RelatedRecord | null>;
|
|
45
|
+
/**
|
|
46
|
+
* Values edited in a form made of these fields. Resolves with the new values,
|
|
47
|
+
* or null. `recompute` recalculates them as they change, as a line's onchange.
|
|
48
|
+
*/
|
|
49
|
+
editValues(request: {
|
|
50
|
+
title: string;
|
|
51
|
+
fields: Record<string, Field>;
|
|
52
|
+
values: Values;
|
|
53
|
+
readonly?: boolean;
|
|
54
|
+
recompute?: (values: Values) => Promise<Values>;
|
|
55
|
+
}): Promise<Values | null>;
|
|
22
56
|
}
|
|
23
57
|
export interface WidgetState {
|
|
24
58
|
value: Value | undefined;
|
package/src/lib/widgets.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Field, FieldNode, Form, Value, Values } from '@fieldia/core';
|
|
1
|
+
import type { Field, FieldNode, Form, Locale, RecordId, RelatedRecord, Value, Values } from '@fieldia/core';
|
|
2
2
|
import type { PreferenceStore } from './preferences';
|
|
3
3
|
import type { WidgetLabels } from './labels';
|
|
4
4
|
/**
|
|
@@ -19,6 +19,40 @@ export interface WidgetContext {
|
|
|
19
19
|
labels?: WidgetLabels;
|
|
20
20
|
/** Where to keep a person's choices about how the widget looks, such as a table's columns. */
|
|
21
21
|
preferences?: PreferenceStore;
|
|
22
|
+
/** The page's language: numbers and dates are written as its readers write them. English when left out. */
|
|
23
|
+
locale?: Locale;
|
|
24
|
+
/** Dialogs the page can open: a related record, a searchable list, values to edit. Left out, widgets offer none. */
|
|
25
|
+
dialogs?: WidgetDialogs;
|
|
26
|
+
}
|
|
27
|
+
/** What a widget may ask of the page around it in a dialog. The viewer provides these. */
|
|
28
|
+
export interface WidgetDialogs {
|
|
29
|
+
/** Whether a record of this model can be shown in a dialog: the app gave a page for it. */
|
|
30
|
+
canOpen(model: string): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* A record in a dialog: an existing one (`recordId`) or a new one, whose name
|
|
33
|
+
* starts as `name`. Resolves with the record once saved, or null.
|
|
34
|
+
*/
|
|
35
|
+
openRecord(model: string, request: {
|
|
36
|
+
recordId?: RecordId;
|
|
37
|
+
name?: string;
|
|
38
|
+
title: string;
|
|
39
|
+
}): Promise<RelatedRecord | null>;
|
|
40
|
+
/** Pick a record from a searchable list. */
|
|
41
|
+
searchMore(request: {
|
|
42
|
+
title: string;
|
|
43
|
+
search(query: string, limit: number): Promise<RelatedRecord[]>;
|
|
44
|
+
}): Promise<RelatedRecord | null>;
|
|
45
|
+
/**
|
|
46
|
+
* Values edited in a form made of these fields. Resolves with the new values,
|
|
47
|
+
* or null. `recompute` recalculates them as they change, as a line's onchange.
|
|
48
|
+
*/
|
|
49
|
+
editValues(request: {
|
|
50
|
+
title: string;
|
|
51
|
+
fields: Record<string, Field>;
|
|
52
|
+
values: Values;
|
|
53
|
+
readonly?: boolean;
|
|
54
|
+
recompute?: (values: Values) => Promise<Values>;
|
|
55
|
+
}): Promise<Values | null>;
|
|
22
56
|
}
|
|
23
57
|
export interface WidgetState {
|
|
24
58
|
value: Value | undefined;
|
package/src/lib/widgets.js
CHANGED
|
@@ -3,9 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.builtInWidgets = void 0;
|
|
4
4
|
exports.createWidget = createWidget;
|
|
5
5
|
exports.summary = summary;
|
|
6
|
+
const numbers_1 = require("./numbers");
|
|
6
7
|
const relations_1 = require("./relations");
|
|
7
8
|
const lines_1 = require("./lines");
|
|
8
9
|
const files_1 = require("./files");
|
|
10
|
+
const progress_1 = require("./progress");
|
|
11
|
+
const label_1 = require("./label");
|
|
12
|
+
const statusbar_1 = require("./statusbar");
|
|
13
|
+
const calendar_1 = require("./calendar");
|
|
14
|
+
const properties_1 = require("./properties");
|
|
9
15
|
const extras_1 = require("./extras");
|
|
10
16
|
/**
|
|
11
17
|
* Pick the widget for a field: the app's or the built-in one for
|
|
@@ -86,16 +92,23 @@ const textareaWidget = ({ form, name, field, node, id, document }) => {
|
|
|
86
92
|
};
|
|
87
93
|
const NUMBER = /^-?(\d+\.?\d*|\.\d+)$/;
|
|
88
94
|
const UNFINISHED = /^-?\.?$/;
|
|
89
|
-
/**
|
|
95
|
+
/**
|
|
96
|
+
* Numbers are written as readers of the page's language write them, grouped,
|
|
97
|
+
* with the field's decimals, and read back the same way. What is typed stays
|
|
98
|
+
* as typed while focused: "1." means 1 now and 1.5 a keystroke later. The box
|
|
99
|
+
* keeps its spelling when entered, so a selection made on the way in holds.
|
|
100
|
+
*/
|
|
90
101
|
const numberWidget = (context) => {
|
|
91
|
-
const { form, name, field, node, id, document } = context;
|
|
102
|
+
const { form, name, field, node, id, document, locale = 'en' } = context;
|
|
92
103
|
const integer = field.type === 'integer';
|
|
104
|
+
const decimals = integer ? 0 : (field.type === 'float' || field.type === 'monetary' ? field.digits?.[1] : undefined) ?? 2;
|
|
105
|
+
const shown = (value) => (typeof value === 'number' ? (0, numbers_1.formatNumber)(value, decimals, locale) : textOf(value));
|
|
93
106
|
const input = make(document, 'input', { id, type: 'text', class: 'fd-input fd-number-input', autocomplete: 'off' });
|
|
94
107
|
input.inputMode = integer ? 'numeric' : 'decimal';
|
|
95
108
|
if (node.placeholder)
|
|
96
109
|
input.placeholder = node.placeholder;
|
|
97
110
|
const parse = (raw) => {
|
|
98
|
-
const text = raw.trim();
|
|
111
|
+
const text = (0, numbers_1.normalizeNumber)(raw.trim(), locale);
|
|
99
112
|
if (text === '')
|
|
100
113
|
return null;
|
|
101
114
|
if (NUMBER.test(text))
|
|
@@ -110,10 +123,26 @@ const numberWidget = (context) => {
|
|
|
110
123
|
form.setValue(name, value);
|
|
111
124
|
});
|
|
112
125
|
input.addEventListener('blur', () => {
|
|
113
|
-
input.value =
|
|
126
|
+
input.value = shown(form.getState().values[name]);
|
|
114
127
|
});
|
|
115
|
-
|
|
116
|
-
|
|
128
|
+
// Money shows its currency beside the amount (options.symbol "after" puts it
|
|
129
|
+
// after), or with options.pickCurrency the currency field's own widget, to change it.
|
|
130
|
+
const options = node.options ?? {};
|
|
131
|
+
const currencyField = field.type === 'monetary' ? field.currencyField : undefined;
|
|
132
|
+
const currencyDef = currencyField ? form.page.fields[currencyField] : undefined;
|
|
133
|
+
const picker = currencyField && currencyDef && options['pickCurrency'] === true
|
|
134
|
+
? createWidget({ ...context, name: currencyField, field: currencyDef, node: { type: 'field', id: `${node.id}.currency`, field: currencyField }, id: `${id}-currency` })
|
|
135
|
+
: null;
|
|
136
|
+
if (picker && currencyDef)
|
|
137
|
+
picker.element.querySelector('input, select')?.setAttribute('aria-label', currencyDef.label);
|
|
138
|
+
if (picker?.element.matches('input, select') && currencyDef)
|
|
139
|
+
picker.element.setAttribute('aria-label', currencyDef.label);
|
|
140
|
+
const currency = field.type === 'monetary' && !picker ? make(document, 'span', { class: 'fd-currency', 'aria-hidden': 'true' }) : null;
|
|
141
|
+
const side = picker?.element ?? currency;
|
|
142
|
+
const after = options['symbol'] === 'after';
|
|
143
|
+
const element = side
|
|
144
|
+
? make(document, 'span', { class: `fd-number${after ? ' fd-currency-after' : ''}${picker ? ' fd-currency-picked' : ''}` }, ...(after ? [input, side] : [side, input]))
|
|
145
|
+
: input;
|
|
117
146
|
return {
|
|
118
147
|
element,
|
|
119
148
|
focus: () => input.focus(),
|
|
@@ -122,12 +151,15 @@ const numberWidget = (context) => {
|
|
|
122
151
|
const parsed = parse(input.value);
|
|
123
152
|
const showsSame = parsed === undefined || parsed === state.value;
|
|
124
153
|
if (!(typing && showsSame)) {
|
|
125
|
-
const text =
|
|
154
|
+
const text = shown(state.value);
|
|
126
155
|
if (input.value !== text)
|
|
127
156
|
input.value = text;
|
|
128
157
|
}
|
|
129
158
|
input.readOnly = state.readonly;
|
|
130
159
|
describe(input, state);
|
|
160
|
+
if (picker && currencyField) {
|
|
161
|
+
picker.update({ value: state.values[currencyField], values: state.values, readonly: state.readonly, required: false, invalid: false });
|
|
162
|
+
}
|
|
131
163
|
if (currency && field.type === 'monetary') {
|
|
132
164
|
const holder = field.currencyField ? state.values[field.currencyField] : null;
|
|
133
165
|
currency.textContent =
|
|
@@ -245,10 +277,11 @@ function pointsWidget(style) {
|
|
|
245
277
|
};
|
|
246
278
|
};
|
|
247
279
|
}
|
|
248
|
-
const dateWidget = (
|
|
280
|
+
const dateWidget = (context) => {
|
|
281
|
+
const { form, name, id, document, node } = context;
|
|
249
282
|
const input = make(document, 'input', { id, type: 'date', class: 'fd-input fd-date' });
|
|
250
283
|
input.addEventListener('input', () => form.setValue(name, input.value || null));
|
|
251
|
-
|
|
284
|
+
const widget = {
|
|
252
285
|
element: input,
|
|
253
286
|
focus: () => input.focus(),
|
|
254
287
|
update(state) {
|
|
@@ -259,10 +292,12 @@ const dateWidget = ({ form, name, id, document }) => {
|
|
|
259
292
|
describe(input, state);
|
|
260
293
|
},
|
|
261
294
|
};
|
|
295
|
+
return node.options?.['weekNumbers'] === true ? (0, calendar_1.withCalendar)(widget, context, 'date') : widget;
|
|
262
296
|
};
|
|
263
297
|
const pad = (n) => String(n).padStart(2, '0');
|
|
264
298
|
/** Shown in local time, stored as an ISO instant in UTC. */
|
|
265
|
-
const dateTimeWidget = (
|
|
299
|
+
const dateTimeWidget = (context) => {
|
|
300
|
+
const { form, name, id, document, node } = context;
|
|
266
301
|
const input = make(document, 'input', { id, type: 'datetime-local', class: 'fd-input fd-datetime' });
|
|
267
302
|
const local = (iso) => {
|
|
268
303
|
if (typeof iso !== 'string' || !iso)
|
|
@@ -277,7 +312,7 @@ const dateTimeWidget = ({ form, name, id, document }) => {
|
|
|
277
312
|
if (!Number.isNaN(d.getTime()))
|
|
278
313
|
form.setValue(name, d.toISOString());
|
|
279
314
|
});
|
|
280
|
-
|
|
315
|
+
const widget = {
|
|
281
316
|
element: input,
|
|
282
317
|
focus: () => input.focus(),
|
|
283
318
|
update(state) {
|
|
@@ -288,6 +323,7 @@ const dateTimeWidget = ({ form, name, id, document }) => {
|
|
|
288
323
|
describe(input, state);
|
|
289
324
|
},
|
|
290
325
|
};
|
|
326
|
+
return node.options?.['weekNumbers'] === true ? (0, calendar_1.withCalendar)(widget, context, 'datetime') : widget;
|
|
291
327
|
};
|
|
292
328
|
/** Until a type has its own editor (Phase 5), show what it holds. */
|
|
293
329
|
function pendingWidget({ field, id, document }) {
|
|
@@ -328,20 +364,29 @@ exports.builtInWidgets = {
|
|
|
328
364
|
'char.phone': textWidget('tel'),
|
|
329
365
|
'char.url': textWidget('url'),
|
|
330
366
|
'char.password': textWidget('password'),
|
|
367
|
+
'char.tags': relations_1.charTagsWidget,
|
|
331
368
|
text: textareaWidget,
|
|
332
369
|
integer: numberWidget,
|
|
333
370
|
float: numberWidget,
|
|
334
371
|
monetary: numberWidget,
|
|
335
372
|
'integer.rating': pointsWidget('rating'),
|
|
336
373
|
'integer.scale': pointsWidget('scale'),
|
|
374
|
+
'integer.progressbar': progress_1.progressbarWidget,
|
|
375
|
+
'integer.label': label_1.labelWidget,
|
|
376
|
+
'float.label': label_1.labelWidget,
|
|
377
|
+
'monetary.label': label_1.labelWidget,
|
|
378
|
+
'float.progressbar': progress_1.progressbarWidget,
|
|
379
|
+
'monetary.progressbar': progress_1.progressbarWidget,
|
|
337
380
|
boolean: checkboxWidget(),
|
|
338
381
|
'boolean.toggle': checkboxWidget('switch'),
|
|
339
382
|
selection: selectWidget,
|
|
340
383
|
'selection.radio': choiceGroup('radio'),
|
|
341
384
|
'selection.checkboxes': choiceGroup('checkbox'),
|
|
385
|
+
'selection.statusbar': statusbar_1.statusbarWidget,
|
|
342
386
|
date: dateWidget,
|
|
343
387
|
datetime: dateTimeWidget,
|
|
344
388
|
many2one: relations_1.many2oneWidget,
|
|
389
|
+
'many2one.statusbar': statusbar_1.statusbarWidget,
|
|
345
390
|
many2many: relations_1.tagsWidget,
|
|
346
391
|
'many2many.tags': relations_1.tagsWidget,
|
|
347
392
|
'many2many.checkboxes': relations_1.linkCheckboxesWidget,
|
|
@@ -351,6 +396,6 @@ exports.builtInWidgets = {
|
|
|
351
396
|
image: files_1.imageWidget,
|
|
352
397
|
html: extras_1.htmlWidget,
|
|
353
398
|
json: extras_1.jsonWidget,
|
|
354
|
-
properties:
|
|
399
|
+
properties: properties_1.propertiesWidget,
|
|
355
400
|
};
|
|
356
401
|
//# sourceMappingURL=widgets.js.map
|
package/src/lib/widgets.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widgets.js","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/widgets.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"widgets.js","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/widgets.ts"],"names":[],"mappings":"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"}
|