@fieldia/widgets 0.11.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/package.json +2 -2
  2. package/src/index.d.mts +2 -0
  3. package/src/index.d.ts +2 -0
  4. package/src/index.js +6 -1
  5. package/src/index.js.map +1 -1
  6. package/src/index.mjs +2 -0
  7. package/src/index.mjs.map +1 -1
  8. package/src/lib/badge.d.mts +8 -0
  9. package/src/lib/badge.d.ts +8 -0
  10. package/src/lib/badge.js +37 -0
  11. package/src/lib/badge.js.map +1 -0
  12. package/src/lib/badge.mjs +33 -0
  13. package/src/lib/badge.mjs.map +1 -0
  14. package/src/lib/calendar.d.mts +3 -1
  15. package/src/lib/calendar.d.ts +3 -1
  16. package/src/lib/calendar.js +17 -1
  17. package/src/lib/calendar.js.map +1 -1
  18. package/src/lib/calendar.mjs +17 -1
  19. package/src/lib/calendar.mjs.map +1 -1
  20. package/src/lib/cards.js +12 -4
  21. package/src/lib/cards.js.map +1 -1
  22. package/src/lib/cards.mjs +13 -5
  23. package/src/lib/cards.mjs.map +1 -1
  24. package/src/lib/choice-images.js +1 -1
  25. package/src/lib/choice-images.js.map +1 -1
  26. package/src/lib/choice-images.mjs +1 -1
  27. package/src/lib/choice-images.mjs.map +1 -1
  28. package/src/lib/choice-tags.js +6 -4
  29. package/src/lib/choice-tags.js.map +1 -1
  30. package/src/lib/choice-tags.mjs +6 -4
  31. package/src/lib/choice-tags.mjs.map +1 -1
  32. package/src/lib/colour.d.mts +11 -0
  33. package/src/lib/colour.d.ts +11 -0
  34. package/src/lib/colour.js +114 -0
  35. package/src/lib/colour.js.map +1 -0
  36. package/src/lib/colour.mjs +110 -0
  37. package/src/lib/colour.mjs.map +1 -0
  38. package/src/lib/copy.d.mts +8 -0
  39. package/src/lib/copy.d.ts +8 -0
  40. package/src/lib/copy.js +58 -0
  41. package/src/lib/copy.js.map +1 -0
  42. package/src/lib/copy.mjs +54 -0
  43. package/src/lib/copy.mjs.map +1 -0
  44. package/src/lib/date-range.d.mts +2 -0
  45. package/src/lib/date-range.d.ts +2 -0
  46. package/src/lib/date-range.js +220 -0
  47. package/src/lib/date-range.js.map +1 -0
  48. package/src/lib/date-range.mjs +216 -0
  49. package/src/lib/date-range.mjs.map +1 -0
  50. package/src/lib/display.d.mts +25 -1
  51. package/src/lib/display.d.ts +25 -1
  52. package/src/lib/display.js +42 -2
  53. package/src/lib/display.js.map +1 -1
  54. package/src/lib/display.mjs +39 -2
  55. package/src/lib/display.mjs.map +1 -1
  56. package/src/lib/distribution.d.mts +13 -0
  57. package/src/lib/distribution.d.ts +13 -0
  58. package/src/lib/distribution.js +159 -0
  59. package/src/lib/distribution.js.map +1 -0
  60. package/src/lib/distribution.mjs +152 -0
  61. package/src/lib/distribution.mjs.map +1 -0
  62. package/src/lib/duration.d.mts +18 -0
  63. package/src/lib/duration.d.ts +18 -0
  64. package/src/lib/duration.js +137 -0
  65. package/src/lib/duration.js.map +1 -0
  66. package/src/lib/duration.mjs +128 -0
  67. package/src/lib/duration.mjs.map +1 -0
  68. package/src/lib/embed.d.mts +3 -0
  69. package/src/lib/embed.d.ts +3 -0
  70. package/src/lib/embed.js +97 -0
  71. package/src/lib/embed.js.map +1 -0
  72. package/src/lib/embed.mjs +92 -0
  73. package/src/lib/embed.mjs.map +1 -0
  74. package/src/lib/extras.js +6 -0
  75. package/src/lib/extras.js.map +1 -1
  76. package/src/lib/extras.mjs +6 -0
  77. package/src/lib/extras.mjs.map +1 -1
  78. package/src/lib/files.d.mts +11 -0
  79. package/src/lib/files.d.ts +11 -0
  80. package/src/lib/files.js +19 -0
  81. package/src/lib/files.js.map +1 -1
  82. package/src/lib/files.mjs +18 -0
  83. package/src/lib/files.mjs.map +1 -1
  84. package/src/lib/float.d.mts +14 -0
  85. package/src/lib/float.d.ts +14 -0
  86. package/src/lib/float.js +91 -0
  87. package/src/lib/float.js.map +1 -0
  88. package/src/lib/float.mjs +88 -0
  89. package/src/lib/float.mjs.map +1 -0
  90. package/src/lib/kind-parts.d.mts +4 -3
  91. package/src/lib/kind-parts.d.ts +4 -3
  92. package/src/lib/kind-parts.js +5 -3
  93. package/src/lib/kind-parts.js.map +1 -1
  94. package/src/lib/kind-parts.mjs +5 -3
  95. package/src/lib/kind-parts.mjs.map +1 -1
  96. package/src/lib/labels.d.mts +39 -0
  97. package/src/lib/labels.d.ts +39 -0
  98. package/src/lib/labels.js +29 -0
  99. package/src/lib/labels.js.map +1 -1
  100. package/src/lib/labels.mjs +29 -0
  101. package/src/lib/labels.mjs.map +1 -1
  102. package/src/lib/layout-styles.d.mts +1 -1
  103. package/src/lib/layout-styles.d.ts +1 -1
  104. package/src/lib/layout-styles.js +12 -5
  105. package/src/lib/layout-styles.js.map +1 -1
  106. package/src/lib/layout-styles.mjs +12 -5
  107. package/src/lib/layout-styles.mjs.map +1 -1
  108. package/src/lib/lines.d.mts +12 -2
  109. package/src/lib/lines.d.ts +12 -2
  110. package/src/lib/lines.js +372 -25
  111. package/src/lib/lines.js.map +1 -1
  112. package/src/lib/lines.mjs +371 -26
  113. package/src/lib/lines.mjs.map +1 -1
  114. package/src/lib/links-table.d.mts +11 -0
  115. package/src/lib/links-table.d.ts +11 -0
  116. package/src/lib/links-table.js +116 -0
  117. package/src/lib/links-table.js.map +1 -0
  118. package/src/lib/links-table.mjs +112 -0
  119. package/src/lib/links-table.mjs.map +1 -0
  120. package/src/lib/locales/ar.js +29 -0
  121. package/src/lib/locales/ar.js.map +1 -1
  122. package/src/lib/locales/ar.mjs +29 -0
  123. package/src/lib/locales/ar.mjs.map +1 -1
  124. package/src/lib/locales/de.js +29 -0
  125. package/src/lib/locales/de.js.map +1 -1
  126. package/src/lib/locales/de.mjs +29 -0
  127. package/src/lib/locales/de.mjs.map +1 -1
  128. package/src/lib/locales/fr.js +29 -0
  129. package/src/lib/locales/fr.js.map +1 -1
  130. package/src/lib/locales/fr.mjs +29 -0
  131. package/src/lib/locales/fr.mjs.map +1 -1
  132. package/src/lib/numbers.d.mts +5 -1
  133. package/src/lib/numbers.d.ts +5 -1
  134. package/src/lib/numbers.js +15 -2
  135. package/src/lib/numbers.js.map +1 -1
  136. package/src/lib/numbers.mjs +13 -2
  137. package/src/lib/numbers.mjs.map +1 -1
  138. package/src/lib/payments.d.mts +2 -0
  139. package/src/lib/payments.d.ts +2 -0
  140. package/src/lib/payments.js +94 -0
  141. package/src/lib/payments.js.map +1 -0
  142. package/src/lib/payments.mjs +90 -0
  143. package/src/lib/payments.mjs.map +1 -0
  144. package/src/lib/popup.d.mts +11 -0
  145. package/src/lib/popup.d.ts +11 -0
  146. package/src/lib/popup.js +48 -0
  147. package/src/lib/popup.js.map +1 -0
  148. package/src/lib/popup.mjs +45 -0
  149. package/src/lib/popup.mjs.map +1 -0
  150. package/src/lib/priority.d.mts +10 -0
  151. package/src/lib/priority.d.ts +10 -0
  152. package/src/lib/priority.js +59 -0
  153. package/src/lib/priority.js.map +1 -0
  154. package/src/lib/priority.mjs +55 -0
  155. package/src/lib/priority.mjs.map +1 -0
  156. package/src/lib/progress.js +3 -0
  157. package/src/lib/progress.js.map +1 -1
  158. package/src/lib/progress.mjs +3 -0
  159. package/src/lib/progress.mjs.map +1 -1
  160. package/src/lib/properties.js +100 -9
  161. package/src/lib/properties.js.map +1 -1
  162. package/src/lib/properties.mjs +100 -9
  163. package/src/lib/properties.mjs.map +1 -1
  164. package/src/lib/read-text.d.mts +25 -0
  165. package/src/lib/read-text.d.ts +25 -0
  166. package/src/lib/read-text.js +102 -0
  167. package/src/lib/read-text.js.map +1 -0
  168. package/src/lib/read-text.mjs +98 -0
  169. package/src/lib/read-text.mjs.map +1 -0
  170. package/src/lib/relations.d.mts +12 -0
  171. package/src/lib/relations.d.ts +12 -0
  172. package/src/lib/relations.js +110 -10
  173. package/src/lib/relations.js.map +1 -1
  174. package/src/lib/relations.mjs +108 -10
  175. package/src/lib/relations.mjs.map +1 -1
  176. package/src/lib/slider.js +1 -1
  177. package/src/lib/slider.js.map +1 -1
  178. package/src/lib/slider.mjs +1 -1
  179. package/src/lib/slider.mjs.map +1 -1
  180. package/src/lib/state-dot.d.mts +2 -0
  181. package/src/lib/state-dot.d.ts +2 -0
  182. package/src/lib/state-dot.js +107 -0
  183. package/src/lib/state-dot.js.map +1 -0
  184. package/src/lib/state-dot.mjs +103 -0
  185. package/src/lib/state-dot.mjs.map +1 -0
  186. package/src/lib/statusbar.js +151 -14
  187. package/src/lib/statusbar.js.map +1 -1
  188. package/src/lib/statusbar.mjs +151 -14
  189. package/src/lib/statusbar.mjs.map +1 -1
  190. package/src/lib/styles-business.d.mts +8 -0
  191. package/src/lib/styles-business.d.ts +8 -0
  192. package/src/lib/styles-business.js +120 -0
  193. package/src/lib/styles-business.js.map +1 -0
  194. package/src/lib/styles-business.mjs +117 -0
  195. package/src/lib/styles-business.mjs.map +1 -0
  196. package/src/lib/styles-inputs.d.mts +1 -1
  197. package/src/lib/styles-inputs.d.ts +1 -1
  198. package/src/lib/styles-inputs.js +2 -0
  199. package/src/lib/styles-inputs.js.map +1 -1
  200. package/src/lib/styles-inputs.mjs +2 -0
  201. package/src/lib/styles-inputs.mjs.map +1 -1
  202. package/src/lib/styles-kinds.d.mts +1 -1
  203. package/src/lib/styles-kinds.d.ts +1 -1
  204. package/src/lib/styles-kinds.js +2 -2
  205. package/src/lib/styles-kinds.mjs +2 -2
  206. package/src/lib/styles-sheet.d.mts +6 -0
  207. package/src/lib/styles-sheet.d.ts +6 -0
  208. package/src/lib/styles-sheet.js +139 -0
  209. package/src/lib/styles-sheet.js.map +1 -0
  210. package/src/lib/styles-sheet.mjs +136 -0
  211. package/src/lib/styles-sheet.mjs.map +1 -0
  212. package/src/lib/styles.js +223 -27
  213. package/src/lib/styles.js.map +1 -1
  214. package/src/lib/styles.mjs +223 -27
  215. package/src/lib/styles.mjs.map +1 -1
  216. package/src/lib/tax-totals.d.mts +2 -0
  217. package/src/lib/tax-totals.d.ts +2 -0
  218. package/src/lib/tax-totals.js +92 -0
  219. package/src/lib/tax-totals.js.map +1 -0
  220. package/src/lib/tax-totals.mjs +88 -0
  221. package/src/lib/tax-totals.mjs.map +1 -0
  222. package/src/lib/themes.d.mts +29 -0
  223. package/src/lib/themes.d.ts +29 -0
  224. package/src/lib/themes.js +180 -0
  225. package/src/lib/themes.js.map +1 -0
  226. package/src/lib/themes.mjs +177 -0
  227. package/src/lib/themes.mjs.map +1 -0
  228. package/src/lib/timer.d.mts +4 -0
  229. package/src/lib/timer.d.ts +4 -0
  230. package/src/lib/timer.js +62 -0
  231. package/src/lib/timer.js.map +1 -0
  232. package/src/lib/timer.mjs +57 -0
  233. package/src/lib/timer.mjs.map +1 -0
  234. package/src/lib/widgets.d.mts +18 -3
  235. package/src/lib/widgets.d.ts +18 -3
  236. package/src/lib/widgets.js +89 -10
  237. package/src/lib/widgets.js.map +1 -1
  238. package/src/lib/widgets.mjs +90 -11
  239. package/src/lib/widgets.mjs.map +1 -1
  240. package/src/lib/yes-no.js +1 -1
  241. package/src/lib/yes-no.js.map +1 -1
  242. package/src/lib/yes-no.mjs +1 -1
  243. package/src/lib/yes-no.mjs.map +1 -1
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.timerWidget = void 0;
4
+ exports.formatClock = formatClock;
5
+ const kind_parts_1 = require("./kind-parts");
6
+ /**
7
+ * A live timer: Flectra's mrp_timer, and the legal timer. On a number, the
8
+ * time logged — hours, or minutes with `options.unit: "minutes"` — and, while
9
+ * the date and time `options.startField` names is set, the time since then on
10
+ * top of it, ticking each second. On a date and time, the time since it.
11
+ * Never typed: the page's buttons start and stop it, setting the start and
12
+ * logging the time, as Flectra's do.
13
+ */
14
+ const pad = (n) => String(n).padStart(2, '0');
15
+ /** Seconds as HH:MM:SS. */
16
+ function formatClock(seconds) {
17
+ const s = Math.max(0, Math.floor(seconds));
18
+ return `${pad(Math.floor(s / 3600))}:${pad(Math.floor((s % 3600) / 60))}:${pad(s % 60)}`;
19
+ }
20
+ const instant = (value) => {
21
+ if (typeof value !== 'string' || !value)
22
+ return null;
23
+ const t = new Date(value).getTime();
24
+ return Number.isNaN(t) ? null : t;
25
+ };
26
+ const timerWidget = ({ field, node, id, document }) => {
27
+ const make = (0, kind_parts_1.maker)(document);
28
+ const own = field.type === 'datetime';
29
+ const startField = !own && typeof node.options?.['startField'] === 'string' ? node.options['startField'] : null;
30
+ const perSecond = node.options?.['unit'] === 'minutes' ? 60 : 3600;
31
+ const time = make('span', { class: 'fd-timer-time' });
32
+ const element = make('span', { id, role: 'timer', class: 'fd-timer' }, make('span', { class: 'fd-timer-dot', 'aria-hidden': 'true' }), time);
33
+ (0, kind_parts_1.setAttr)(element, 'aria-label', field.label);
34
+ let logged = 0;
35
+ let start = null;
36
+ let ticking;
37
+ const show = () => (0, kind_parts_1.setText)(time, formatClock(logged + (start === null ? 0 : (Date.now() - start) / 1000)));
38
+ const stop = () => {
39
+ clearInterval(ticking);
40
+ ticking = undefined;
41
+ };
42
+ return {
43
+ element,
44
+ focus: () => undefined,
45
+ destroy: stop,
46
+ update(state) {
47
+ logged = !own && typeof state.value === 'number' ? state.value * perSecond : 0;
48
+ start = own ? instant(state.value) : startField ? instant(state.values[startField]) : null;
49
+ if (start !== null)
50
+ element.dataset['running'] = 'true';
51
+ else
52
+ delete element.dataset['running'];
53
+ show();
54
+ if (start === null)
55
+ stop();
56
+ else if (!ticking)
57
+ ticking = setInterval(() => (element.isConnected ? show() : stop()), 1000);
58
+ },
59
+ };
60
+ };
61
+ exports.timerWidget = timerWidget;
62
+ //# sourceMappingURL=timer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timer.js","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/timer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { maker, setAttr, setText } from './kind-parts.mjs';
2
+ /**
3
+ * A live timer: Flectra's mrp_timer, and the legal timer. On a number, the
4
+ * time logged — hours, or minutes with `options.unit: "minutes"` — and, while
5
+ * the date and time `options.startField` names is set, the time since then on
6
+ * top of it, ticking each second. On a date and time, the time since it.
7
+ * Never typed: the page's buttons start and stop it, setting the start and
8
+ * logging the time, as Flectra's do.
9
+ */
10
+ const pad = (n) => String(n).padStart(2, '0');
11
+ /** Seconds as HH:MM:SS. */
12
+ export function formatClock(seconds) {
13
+ const s = Math.max(0, Math.floor(seconds));
14
+ return `${pad(Math.floor(s / 3600))}:${pad(Math.floor((s % 3600) / 60))}:${pad(s % 60)}`;
15
+ }
16
+ const instant = (value) => {
17
+ if (typeof value !== 'string' || !value)
18
+ return null;
19
+ const t = new Date(value).getTime();
20
+ return Number.isNaN(t) ? null : t;
21
+ };
22
+ export const timerWidget = ({ field, node, id, document }) => {
23
+ const make = maker(document);
24
+ const own = field.type === 'datetime';
25
+ const startField = !own && typeof node.options?.['startField'] === 'string' ? node.options['startField'] : null;
26
+ const perSecond = node.options?.['unit'] === 'minutes' ? 60 : 3600;
27
+ const time = make('span', { class: 'fd-timer-time' });
28
+ const element = make('span', { id, role: 'timer', class: 'fd-timer' }, make('span', { class: 'fd-timer-dot', 'aria-hidden': 'true' }), time);
29
+ setAttr(element, 'aria-label', field.label);
30
+ let logged = 0;
31
+ let start = null;
32
+ let ticking;
33
+ const show = () => setText(time, formatClock(logged + (start === null ? 0 : (Date.now() - start) / 1000)));
34
+ const stop = () => {
35
+ clearInterval(ticking);
36
+ ticking = undefined;
37
+ };
38
+ return {
39
+ element,
40
+ focus: () => undefined,
41
+ destroy: stop,
42
+ update(state) {
43
+ logged = !own && typeof state.value === 'number' ? state.value * perSecond : 0;
44
+ start = own ? instant(state.value) : startField ? instant(state.values[startField]) : null;
45
+ if (start !== null)
46
+ element.dataset['running'] = 'true';
47
+ else
48
+ delete element.dataset['running'];
49
+ show();
50
+ if (start === null)
51
+ stop();
52
+ else if (!ticking)
53
+ ticking = setInterval(() => (element.isConnected ? show() : stop()), 1000);
54
+ },
55
+ };
56
+ };
57
+ //# sourceMappingURL=timer.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timer.mjs","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/timer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Field, FieldNode, Form, Locale, RecordId, RelatedRecord, Value, Values } from '@fieldia/core';
1
+ import type { Field, FieldNode, Form, LayoutNode, LineField, 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
  /**
@@ -30,13 +30,18 @@ export interface WidgetDialogs {
30
30
  canOpen(model: string): boolean;
31
31
  /**
32
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.
33
+ * starts as `name`. Resolves with the record once saved, or null; asked
34
+ * `withValues`, with its values as its page saved them too.
34
35
  */
35
36
  openRecord(model: string, request: {
36
37
  recordId?: RecordId;
37
38
  name?: string;
38
39
  title: string;
39
- }): Promise<RelatedRecord | null>;
40
+ values?: Values;
41
+ withValues?: boolean;
42
+ }): Promise<(RelatedRecord & {
43
+ values?: Values;
44
+ }) | null>;
40
45
  /** Pick a record from a searchable list. */
41
46
  searchMore(request: {
42
47
  title: string;
@@ -52,12 +57,22 @@ export interface WidgetDialogs {
52
57
  values: Values;
53
58
  readonly?: boolean;
54
59
  recompute?: (values: Values) => Promise<Values>;
60
+ /** How the form is laid out (a table's `lineForm`): its parts, as a page's; every field in two columns when left out. */
61
+ layout?: LayoutNode[];
62
+ /** The record the values are a line of, read by the form's conditions and filters as `parent`. */
63
+ parent?: {
64
+ values: Readonly<Values>;
65
+ fields: Readonly<Record<string, Field | LineField>>;
66
+ id?: RecordId | null;
67
+ };
55
68
  }): Promise<Values | null>;
56
69
  }
57
70
  export interface WidgetState {
58
71
  value: Value | undefined;
59
72
  /** Every value of the record, for widgets that show one field beside another. */
60
73
  values: Readonly<Values>;
74
+ /** In a cell of a table's line: the values of the record the line is on, for money in its currency (`parent.currency_id`). */
75
+ parent?: Readonly<Values>;
61
76
  readonly: boolean;
62
77
  required: boolean;
63
78
  invalid: boolean;
@@ -1,4 +1,4 @@
1
- import type { Field, FieldNode, Form, Locale, RecordId, RelatedRecord, Value, Values } from '@fieldia/core';
1
+ import type { Field, FieldNode, Form, LayoutNode, LineField, Locale, RecordId, RelatedRecord, Value, Values } from '@fieldia/core';
2
2
  import type { PreferenceStore } from './preferences';
3
3
  import type { WidgetLabels } from './labels';
4
4
  /**
@@ -30,13 +30,18 @@ export interface WidgetDialogs {
30
30
  canOpen(model: string): boolean;
31
31
  /**
32
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.
33
+ * starts as `name`. Resolves with the record once saved, or null; asked
34
+ * `withValues`, with its values as its page saved them too.
34
35
  */
35
36
  openRecord(model: string, request: {
36
37
  recordId?: RecordId;
37
38
  name?: string;
38
39
  title: string;
39
- }): Promise<RelatedRecord | null>;
40
+ values?: Values;
41
+ withValues?: boolean;
42
+ }): Promise<(RelatedRecord & {
43
+ values?: Values;
44
+ }) | null>;
40
45
  /** Pick a record from a searchable list. */
41
46
  searchMore(request: {
42
47
  title: string;
@@ -52,12 +57,22 @@ export interface WidgetDialogs {
52
57
  values: Values;
53
58
  readonly?: boolean;
54
59
  recompute?: (values: Values) => Promise<Values>;
60
+ /** How the form is laid out (a table's `lineForm`): its parts, as a page's; every field in two columns when left out. */
61
+ layout?: LayoutNode[];
62
+ /** The record the values are a line of, read by the form's conditions and filters as `parent`. */
63
+ parent?: {
64
+ values: Readonly<Values>;
65
+ fields: Readonly<Record<string, Field | LineField>>;
66
+ id?: RecordId | null;
67
+ };
55
68
  }): Promise<Values | null>;
56
69
  }
57
70
  export interface WidgetState {
58
71
  value: Value | undefined;
59
72
  /** Every value of the record, for widgets that show one field beside another. */
60
73
  values: Readonly<Values>;
74
+ /** In a cell of a table's line: the values of the record the line is on, for money in its currency (`parent.currency_id`). */
75
+ parent?: Readonly<Values>;
61
76
  readonly: boolean;
62
77
  required: boolean;
63
78
  invalid: boolean;
@@ -25,10 +25,24 @@ const kind_parts_1 = require("./kind-parts");
25
25
  const shuffle_1 = require("./shuffle");
26
26
  const limits_1 = require("./limits");
27
27
  const units_1 = require("./units");
28
+ const display_1 = require("./display");
28
29
  const icons_1 = require("./icons");
29
30
  const choices_from_1 = require("./choices-from");
30
31
  const yes_no_1 = require("./yes-no");
32
+ const badge_1 = require("./badge");
33
+ const links_table_1 = require("./links-table");
31
34
  const choice_rules_1 = require("./choice-rules");
35
+ const duration_1 = require("./duration");
36
+ const priority_1 = require("./priority");
37
+ const state_dot_1 = require("./state-dot");
38
+ const colour_1 = require("./colour");
39
+ const copy_1 = require("./copy");
40
+ const date_range_1 = require("./date-range");
41
+ const timer_1 = require("./timer");
42
+ const embed_1 = require("./embed");
43
+ const distribution_1 = require("./distribution");
44
+ const tax_totals_1 = require("./tax-totals");
45
+ const payments_1 = require("./payments");
32
46
  /**
33
47
  * Pick the widget for a field: the app's or the built-in one for
34
48
  * `type.widget` (such as `selection.radio`), then for the type alone. A type
@@ -39,6 +53,8 @@ function createWidget(context, registry = {}) {
39
53
  const keys = [
40
54
  node.widget ? `${field.type}.${node.widget}` : null,
41
55
  field.type === 'selection' && field.multiple ? 'selection.checkboxes' : null,
56
+ // A many2many with columns is a table of its records, as Flectra's list of them.
57
+ field.type === 'many2many' && node.columns?.length ? 'many2many.table' : null,
42
58
  field.type,
43
59
  ].filter((key) => key !== null);
44
60
  for (const key of keys) {
@@ -122,9 +138,11 @@ const NUMBER = /^-?(\d+\.?\d*|\.\d+)$/;
122
138
  const UNFINISHED = /^-?\.?$/;
123
139
  /**
124
140
  * Numbers are written as readers of the page's language write them, grouped,
125
- * with the field's decimals, and read back the same way. What is typed stays
126
- * as typed while focused: "1." means 1 now and 1.5 a keystroke later. The box
127
- * keeps its spelling when entered, so a selection made on the way in holds.
141
+ * with the field's decimals, and read back the same way. Entered, the box
142
+ * shows the plain number, no grouping marks — a digit typed mid-number would
143
+ * leave them in the wrong places ("600,1000.00") — and a whole-text selection
144
+ * made on the way in holds, so typing replaces it. What is typed stays as
145
+ * typed while focused: "1." means 1 now and 1.5 a keystroke later.
128
146
  */
129
147
  const numberWidget = (context) => {
130
148
  const { form, name, field, node, id, document, locale = 'en' } = context;
@@ -150,6 +168,21 @@ const numberWidget = (context) => {
150
168
  if (value !== undefined)
151
169
  form.setValue(name, value);
152
170
  });
171
+ input.addEventListener('focus', () => {
172
+ // Once the browser has put its selection in the box: a selection made before focus() is put back only after
173
+ // the focus event, and a click places its caret after it, against the plain words.
174
+ queueMicrotask(() => {
175
+ const value = form.getState().values[name];
176
+ if (document.activeElement !== input || input.readOnly || typeof value !== 'number' || input.value !== shown(value))
177
+ return;
178
+ const grouped = input.value;
179
+ const [start, end] = [input.selectionStart ?? grouped.length, input.selectionEnd ?? grouped.length];
180
+ // Where the selection stands among the digits, the grouping marks taken out.
181
+ const at = (index) => (0, numbers_1.ungroup)(grouped.slice(0, index), locale).length;
182
+ input.value = (0, numbers_1.ungroup)(grouped, locale);
183
+ input.setSelectionRange(at(start), at(end));
184
+ });
185
+ });
153
186
  input.addEventListener('blur', () => {
154
187
  input.value = shown(form.getState().values[name]);
155
188
  });
@@ -184,7 +217,8 @@ const numberWidget = (context) => {
184
217
  const parsed = parse(input.value);
185
218
  const showsSame = parsed === undefined || parsed === state.value;
186
219
  if (!(typing && showsSame)) {
187
- const text = shown(state.value);
220
+ // A value changed under the person editing it shows as they edit: plain.
221
+ const text = typing && !state.readonly && typeof state.value === 'number' ? (0, numbers_1.formatPlain)(state.value, decimals, locale) : shown(state.value);
188
222
  if (input.value !== text)
189
223
  input.value = text;
190
224
  }
@@ -195,8 +229,7 @@ const numberWidget = (context) => {
195
229
  picker.update({ value: state.values[currencyField], values: state.values, readonly: state.readonly, required: false, invalid: false });
196
230
  }
197
231
  if (currency && field.type === 'monetary') {
198
- const holder = field.currencyField ? state.values[field.currencyField] : null;
199
- const code = holder && typeof holder === 'object' && 'label' in holder ? holder.label : (typeof holder === 'string' ? holder : field.currency ?? '');
232
+ const code = (0, display_1.currencyOf)(field, state.values, state.parent) ?? '';
200
233
  (0, kind_parts_1.setText)(currency, /^[A-Z]{3}$/.test(code) ? (0, units_1.currencySymbol)(code, locale).text : code);
201
234
  }
202
235
  // Room in the box for its units, as wide as their words.
@@ -234,7 +267,8 @@ const selectWidget = (context) => {
234
267
  if (search === true || (search !== false && options(field).length > 15))
235
268
  return (0, choice_tags_1.searchWidget)(context);
236
269
  const choices = (0, shuffle_1.shownOptions)(options(field), form, name, node);
237
- const select = make(document, 'select', { id, class: 'fd-input fd-select' }, make(document, 'option', { value: '' }));
270
+ const blank = make(document, 'option', { value: '' });
271
+ const select = make(document, 'select', { id, class: 'fd-input fd-select' }, blank);
238
272
  choices.forEach((option, i) => select.append(make(document, 'option', { value: String(i) }, option.label)));
239
273
  select.addEventListener('change', () => form.setValue(name, select.value === '' ? null : choices[Number(select.value)].value));
240
274
  return {
@@ -243,6 +277,8 @@ const selectWidget = (context) => {
243
277
  update(state) {
244
278
  const index = choices.findIndex((option) => option.value === state.value);
245
279
  select.value = index === -1 ? '' : String(index);
280
+ // A required choice made is never taken back to nothing from its list, as Flectra hides the blank.
281
+ blank.hidden = state.required && index !== -1;
246
282
  if (select.disabled !== state.readonly)
247
283
  select.disabled = state.readonly;
248
284
  describe(select, state);
@@ -315,7 +351,7 @@ function choiceGroup(kind) {
315
351
  form.setValue(name, null);
316
352
  // The link goes; the cursor stays in the question.
317
353
  (inputs[0] ?? otherChoice)?.focus();
318
- })
354
+ }, node)
319
355
  : null;
320
356
  return {
321
357
  element: clear ? make(document, 'div', { class: 'fd-choices-box' }, group, clear.button) : group,
@@ -365,13 +401,18 @@ function pointsWidget(style) {
365
401
  const nps = style === 'scale' && node.options?.['nps'] === true && min === 0 && max === 10;
366
402
  const group = make(document, 'div', { id, class: `fd-points fd-${filling ? 'rating' : 'scale'}${filling ? ` fd-rating-${icon ?? 'star'}` : ''}${nps ? ' fd-nps' : ''}`, role: 'radiogroup' });
367
403
  const points = [];
404
+ // One star, as an ERP's priority, or stars without "Clear selection" (options.clear false): the star
405
+ // picked, clicked again, takes the answer away — so one star needs no "Clear selection".
406
+ const single = style === 'rating' && min === max;
407
+ const toggles = style === 'rating' && (single || node.options?.clear === false);
408
+ let required = false;
368
409
  for (let n = min; n <= max; n++) {
369
410
  const point = make(document, 'button', { type: 'button', role: 'radio', 'aria-label': (0, kind_parts_1.fillIn)(words.ofMax, { n, max }), 'data-value': String(n) }, icon === 'thumb' ? (0, icons_1.drawIcon)(document, 'thumb') : icon === 'heart' ? '♥' : filling ? '★' : String(n));
370
411
  if (style === 'scale')
371
412
  point.removeAttribute('aria-label');
372
413
  if (nps)
373
414
  point.dataset['tone'] = n < 7 ? 'low' : n < 9 ? 'mid' : 'high';
374
- point.addEventListener('click', () => form.setValue(name, n));
415
+ point.addEventListener('click', () => form.setValue(name, toggles && !required && form.getState().values[name] === n ? null : n));
375
416
  points.push(point);
376
417
  group.append(point);
377
418
  }
@@ -391,7 +432,7 @@ function pointsWidget(style) {
391
432
  const clear = (0, kind_parts_1.clearSelection)(document, words, () => {
392
433
  form.setValue(name, null);
393
434
  points[0]?.focus();
394
- });
435
+ }, node, !single);
395
436
  const shown = ends.some(Boolean)
396
437
  ? make(document, 'div', { class: 'fd-scale-box' }, group, make(document, 'div', { class: 'fd-scale-ends', 'aria-hidden': 'true' }, make(document, 'span', {}, ends[0]), make(document, 'span', {}, ends[1])))
397
438
  : group;
@@ -402,6 +443,7 @@ function pointsWidget(style) {
402
443
  focus: () => (points.find((p) => p.getAttribute('aria-checked') === 'true') ?? points[0])?.focus(),
403
444
  update(state) {
404
445
  const value = typeof state.value === 'number' ? state.value : null;
446
+ required = state.required;
405
447
  points.forEach((point, i) => {
406
448
  const n = min + i;
407
449
  (0, kind_parts_1.setAttr)(point, 'aria-checked', String(n === value));
@@ -433,6 +475,8 @@ const dateWidget = (context) => {
433
475
  input.value = text;
434
476
  if (input.readOnly !== state.readonly)
435
477
  input.readOnly = state.readonly;
478
+ // Empty, its mask is no answer: read-only, it is not drawn.
479
+ input.classList.toggle('fd-blank', !text);
436
480
  describe(input, state);
437
481
  },
438
482
  };
@@ -466,6 +510,7 @@ const dateTimeWidget = (context) => {
466
510
  input.value = text;
467
511
  if (input.readOnly !== state.readonly)
468
512
  input.readOnly = state.readonly;
513
+ input.classList.toggle('fd-blank', !text);
469
514
  describe(input, state);
470
515
  },
471
516
  };
@@ -525,11 +570,40 @@ exports.builtInWidgets = {
525
570
  'float.label': label_1.labelWidget,
526
571
  'monetary.label': label_1.labelWidget,
527
572
  'float.progressbar': progress_1.progressbarWidget,
573
+ // Hours as HH:MM (Flectra's float_time), a fraction as a per cent (its percentage).
574
+ 'float.duration': duration_1.durationWidget,
575
+ 'float.percentage': duration_1.percentageWidget,
528
576
  'monetary.progressbar': progress_1.progressbarWidget,
529
577
  boolean: checkboxWidget(),
530
578
  'boolean.toggle': checkboxWidget('switch'),
531
579
  'boolean.tick': checkboxWidget('tick'),
532
580
  'boolean.buttons': yes_no_1.yesNoWidget,
581
+ // Stars over a selection, the first option none, or one over a yes or no: Flectra's priority.
582
+ 'boolean.priority': priority_1.priorityWidget,
583
+ 'selection.priority': priority_1.priorityWidget,
584
+ // A grey, red or green dot with a menu of the states: Flectra's state_selection.
585
+ 'selection.dot': state_dot_1.stateDotWidget,
586
+ // A tag colour from Flectra's twelve (0 none … 11), or a colour as #rrggbb.
587
+ 'integer.color': colour_1.colourWidget,
588
+ 'char.color': colour_1.colourWidget,
589
+ // A value and a button that copies it: Flectra's CopyClipboardChar and CopyClipboardText.
590
+ 'char.copy': copy_1.copyWidget,
591
+ 'text.copy': copy_1.copyWidget,
592
+ // One box from → to, a range picked on a calendar, writing two date fields: Flectra's daterange.
593
+ 'date.daterange': date_range_1.dateRangeWidget,
594
+ 'datetime.daterange': date_range_1.dateRangeWidget,
595
+ // A live timer, the time logged and the time running from a start: Flectra's mrp_timer.
596
+ 'float.timer': timer_1.timerWidget,
597
+ 'datetime.timer': timer_1.timerWidget,
598
+ // A PDF, or a web page at an address, shown inline: Flectra's pdf_viewer and embed_viewer.
599
+ 'binary.pdf': embed_1.pdfWidget,
600
+ 'char.embed': embed_1.embedWidget,
601
+ // Shares of accounts, {accountId: percent}, as lines adding up to 100 %: Flectra's analytic_distribution.
602
+ 'json.distribution': distribution_1.distributionWidget,
603
+ // Untaxed amount, a line per tax group, the total, from a value the app works out: Flectra's tax_totals.
604
+ 'json.tax-totals': tax_totals_1.taxTotalsWidget,
605
+ // Each payment's date and amount, its details in a popover: Flectra's invoice_payments_widget.
606
+ 'json.payments': payments_1.paymentsWidget,
533
607
  selection: selectWidget,
534
608
  'selection.radio': choiceGroup('radio'),
535
609
  'selection.checkboxes': choiceGroup('checkbox'),
@@ -544,6 +618,7 @@ exports.builtInWidgets = {
544
618
  many2many: relations_1.tagsWidget,
545
619
  'many2many.tags': relations_1.tagsWidget,
546
620
  'many2many.checkboxes': relations_1.linkCheckboxesWidget,
621
+ 'many2many.table': links_table_1.linksTableWidget,
547
622
  reference: relations_1.referenceWidget,
548
623
  one2many: lines_1.linesWidget,
549
624
  'one2many.cards': cards_1.cardsWidget,
@@ -555,5 +630,9 @@ exports.builtInWidgets = {
555
630
  'json.address': address_1.addressWidget,
556
631
  properties: properties_1.propertiesWidget,
557
632
  matrix: matrix_1.matrixWidget,
633
+ // A value as a pill in its tone: Flectra's widget="badge".
634
+ 'char.badge': badge_1.badgeWidget,
635
+ 'selection.badge': badge_1.badgeWidget,
636
+ 'many2one.badge': badge_1.badgeWidget,
558
637
  };
559
638
  //# sourceMappingURL=widgets.js.map
@@ -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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"}