@fieldia/widgets 0.9.1 → 0.10.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 (211) 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 +4 -0
  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/address.d.mts +4 -0
  9. package/src/lib/address.d.ts +4 -0
  10. package/src/lib/address.js +105 -0
  11. package/src/lib/address.js.map +1 -0
  12. package/src/lib/address.mjs +100 -0
  13. package/src/lib/address.mjs.map +1 -0
  14. package/src/lib/cards.d.mts +2 -0
  15. package/src/lib/cards.d.ts +2 -0
  16. package/src/lib/cards.js +152 -0
  17. package/src/lib/cards.js.map +1 -0
  18. package/src/lib/cards.mjs +148 -0
  19. package/src/lib/cards.mjs.map +1 -0
  20. package/src/lib/choice-images.d.mts +2 -0
  21. package/src/lib/choice-images.d.ts +2 -0
  22. package/src/lib/choice-images.js +99 -0
  23. package/src/lib/choice-images.js.map +1 -0
  24. package/src/lib/choice-images.mjs +95 -0
  25. package/src/lib/choice-images.mjs.map +1 -0
  26. package/src/lib/choice-rules.d.mts +22 -0
  27. package/src/lib/choice-rules.d.ts +22 -0
  28. package/src/lib/choice-rules.js +46 -0
  29. package/src/lib/choice-rules.js.map +1 -0
  30. package/src/lib/choice-rules.mjs +41 -0
  31. package/src/lib/choice-rules.mjs.map +1 -0
  32. package/src/lib/choice-tags.d.mts +17 -0
  33. package/src/lib/choice-tags.d.ts +17 -0
  34. package/src/lib/choice-tags.js +187 -0
  35. package/src/lib/choice-tags.js.map +1 -0
  36. package/src/lib/choice-tags.mjs +182 -0
  37. package/src/lib/choice-tags.mjs.map +1 -0
  38. package/src/lib/choices-from.d.mts +8 -0
  39. package/src/lib/choices-from.d.ts +8 -0
  40. package/src/lib/choices-from.js +63 -0
  41. package/src/lib/choices-from.js.map +1 -0
  42. package/src/lib/choices-from.mjs +60 -0
  43. package/src/lib/choices-from.mjs.map +1 -0
  44. package/src/lib/display.js +4 -3
  45. package/src/lib/display.js.map +1 -1
  46. package/src/lib/display.mjs +5 -4
  47. package/src/lib/display.mjs.map +1 -1
  48. package/src/lib/extras.js +8 -4
  49. package/src/lib/extras.js.map +1 -1
  50. package/src/lib/extras.mjs +8 -4
  51. package/src/lib/extras.mjs.map +1 -1
  52. package/src/lib/files.d.mts +2 -0
  53. package/src/lib/files.d.ts +2 -0
  54. package/src/lib/files.js +180 -80
  55. package/src/lib/files.js.map +1 -1
  56. package/src/lib/files.mjs +179 -80
  57. package/src/lib/files.mjs.map +1 -1
  58. package/src/lib/focus-trap.d.mts +7 -0
  59. package/src/lib/focus-trap.d.ts +7 -0
  60. package/src/lib/focus-trap.js +26 -0
  61. package/src/lib/focus-trap.js.map +1 -0
  62. package/src/lib/focus-trap.mjs +23 -0
  63. package/src/lib/focus-trap.mjs.map +1 -0
  64. package/src/lib/icons.js +1 -0
  65. package/src/lib/icons.js.map +1 -1
  66. package/src/lib/icons.mjs +1 -0
  67. package/src/lib/icons.mjs.map +1 -1
  68. package/src/lib/kind-parts.d.mts +56 -0
  69. package/src/lib/kind-parts.d.ts +56 -0
  70. package/src/lib/kind-parts.js +121 -0
  71. package/src/lib/kind-parts.js.map +1 -0
  72. package/src/lib/kind-parts.mjs +107 -0
  73. package/src/lib/kind-parts.mjs.map +1 -0
  74. package/src/lib/labels.d.mts +80 -0
  75. package/src/lib/labels.d.ts +80 -0
  76. package/src/lib/labels.js +107 -189
  77. package/src/lib/labels.js.map +1 -1
  78. package/src/lib/labels.mjs +107 -189
  79. package/src/lib/labels.mjs.map +1 -1
  80. package/src/lib/layout-styles.d.mts +11 -0
  81. package/src/lib/layout-styles.d.ts +11 -0
  82. package/src/lib/layout-styles.js +176 -0
  83. package/src/lib/layout-styles.js.map +1 -0
  84. package/src/lib/layout-styles.mjs +173 -0
  85. package/src/lib/layout-styles.mjs.map +1 -0
  86. package/src/lib/limits.d.mts +20 -0
  87. package/src/lib/limits.d.ts +20 -0
  88. package/src/lib/limits.js +71 -0
  89. package/src/lib/limits.js.map +1 -0
  90. package/src/lib/limits.mjs +66 -0
  91. package/src/lib/limits.mjs.map +1 -0
  92. package/src/lib/line-moves.d.mts +8 -0
  93. package/src/lib/line-moves.d.ts +8 -0
  94. package/src/lib/line-moves.js +20 -0
  95. package/src/lib/line-moves.js.map +1 -0
  96. package/src/lib/line-moves.mjs +17 -0
  97. package/src/lib/line-moves.mjs.map +1 -0
  98. package/src/lib/lines.js +85 -7
  99. package/src/lib/lines.js.map +1 -1
  100. package/src/lib/lines.mjs +86 -8
  101. package/src/lib/lines.mjs.map +1 -1
  102. package/src/lib/locales/all.d.mts +8 -0
  103. package/src/lib/locales/all.d.ts +8 -0
  104. package/src/lib/locales/all.js +13 -0
  105. package/src/lib/locales/all.js.map +1 -0
  106. package/src/lib/locales/all.mjs +10 -0
  107. package/src/lib/locales/all.mjs.map +1 -0
  108. package/src/lib/locales/ar.d.mts +3 -0
  109. package/src/lib/locales/ar.d.ts +3 -0
  110. package/src/lib/locales/ar.js +104 -0
  111. package/src/lib/locales/ar.js.map +1 -0
  112. package/src/lib/locales/ar.mjs +101 -0
  113. package/src/lib/locales/ar.mjs.map +1 -0
  114. package/src/lib/locales/de.d.mts +3 -0
  115. package/src/lib/locales/de.d.ts +3 -0
  116. package/src/lib/locales/de.js +104 -0
  117. package/src/lib/locales/de.js.map +1 -0
  118. package/src/lib/locales/de.mjs +101 -0
  119. package/src/lib/locales/de.mjs.map +1 -0
  120. package/src/lib/locales/fr.d.mts +3 -0
  121. package/src/lib/locales/fr.d.ts +3 -0
  122. package/src/lib/locales/fr.js +104 -0
  123. package/src/lib/locales/fr.js.map +1 -0
  124. package/src/lib/locales/fr.mjs +101 -0
  125. package/src/lib/locales/fr.mjs.map +1 -0
  126. package/src/lib/matrix.d.mts +10 -0
  127. package/src/lib/matrix.d.ts +10 -0
  128. package/src/lib/matrix.js +86 -0
  129. package/src/lib/matrix.js.map +1 -0
  130. package/src/lib/matrix.mjs +82 -0
  131. package/src/lib/matrix.mjs.map +1 -0
  132. package/src/lib/numbers.d.mts +7 -0
  133. package/src/lib/numbers.d.ts +7 -0
  134. package/src/lib/numbers.js +15 -0
  135. package/src/lib/numbers.js.map +1 -1
  136. package/src/lib/numbers.mjs +14 -0
  137. package/src/lib/numbers.mjs.map +1 -1
  138. package/src/lib/progress.js +8 -4
  139. package/src/lib/progress.js.map +1 -1
  140. package/src/lib/progress.mjs +8 -4
  141. package/src/lib/progress.mjs.map +1 -1
  142. package/src/lib/ranking.d.mts +2 -0
  143. package/src/lib/ranking.d.ts +2 -0
  144. package/src/lib/ranking.js +172 -0
  145. package/src/lib/ranking.js.map +1 -0
  146. package/src/lib/ranking.mjs +168 -0
  147. package/src/lib/ranking.mjs.map +1 -0
  148. package/src/lib/relations.d.mts +1 -1
  149. package/src/lib/relations.d.ts +1 -1
  150. package/src/lib/relations.js +43 -18
  151. package/src/lib/relations.js.map +1 -1
  152. package/src/lib/relations.mjs +43 -18
  153. package/src/lib/relations.mjs.map +1 -1
  154. package/src/lib/shuffle.d.mts +7 -0
  155. package/src/lib/shuffle.d.ts +7 -0
  156. package/src/lib/shuffle.js +60 -0
  157. package/src/lib/shuffle.js.map +1 -0
  158. package/src/lib/shuffle.mjs +57 -0
  159. package/src/lib/shuffle.mjs.map +1 -0
  160. package/src/lib/signature.d.mts +2 -0
  161. package/src/lib/signature.d.ts +2 -0
  162. package/src/lib/signature.js +223 -0
  163. package/src/lib/signature.js.map +1 -0
  164. package/src/lib/signature.mjs +219 -0
  165. package/src/lib/signature.mjs.map +1 -0
  166. package/src/lib/slider.d.mts +10 -0
  167. package/src/lib/slider.d.ts +10 -0
  168. package/src/lib/slider.js +57 -0
  169. package/src/lib/slider.js.map +1 -0
  170. package/src/lib/slider.mjs +53 -0
  171. package/src/lib/slider.mjs.map +1 -0
  172. package/src/lib/styles-choices.d.mts +7 -0
  173. package/src/lib/styles-choices.d.ts +7 -0
  174. package/src/lib/styles-choices.js +47 -0
  175. package/src/lib/styles-choices.js.map +1 -0
  176. package/src/lib/styles-choices.mjs +44 -0
  177. package/src/lib/styles-choices.mjs.map +1 -0
  178. package/src/lib/styles-inputs.d.mts +9 -0
  179. package/src/lib/styles-inputs.d.ts +9 -0
  180. package/src/lib/styles-inputs.js +41 -0
  181. package/src/lib/styles-inputs.js.map +1 -0
  182. package/src/lib/styles-inputs.mjs +38 -0
  183. package/src/lib/styles-inputs.mjs.map +1 -0
  184. package/src/lib/styles-kinds.d.mts +7 -0
  185. package/src/lib/styles-kinds.d.ts +7 -0
  186. package/src/lib/styles-kinds.js +119 -0
  187. package/src/lib/styles-kinds.js.map +1 -0
  188. package/src/lib/styles-kinds.mjs +116 -0
  189. package/src/lib/styles-kinds.mjs.map +1 -0
  190. package/src/lib/styles.d.mts +2 -14
  191. package/src/lib/styles.d.ts +2 -14
  192. package/src/lib/styles.js +180 -66
  193. package/src/lib/styles.js.map +1 -1
  194. package/src/lib/styles.mjs +180 -66
  195. package/src/lib/styles.mjs.map +1 -1
  196. package/src/lib/units.d.mts +10 -0
  197. package/src/lib/units.d.ts +10 -0
  198. package/src/lib/units.js +19 -0
  199. package/src/lib/units.js.map +1 -0
  200. package/src/lib/units.mjs +16 -0
  201. package/src/lib/units.mjs.map +1 -0
  202. package/src/lib/widgets.js +215 -57
  203. package/src/lib/widgets.js.map +1 -1
  204. package/src/lib/widgets.mjs +215 -57
  205. package/src/lib/widgets.mjs.map +1 -1
  206. package/src/lib/yes-no.d.mts +9 -0
  207. package/src/lib/yes-no.d.ts +9 -0
  208. package/src/lib/yes-no.js +58 -0
  209. package/src/lib/yes-no.js.map +1 -0
  210. package/src/lib/yes-no.mjs +54 -0
  211. package/src/lib/yes-no.mjs.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"display.mjs","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/display.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"display.mjs","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/display.ts"],"names":[],"mappings":"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"}
package/src/lib/extras.js CHANGED
@@ -72,6 +72,8 @@ const TOOLS = [
72
72
  ['bold', 'bold', '<b>B</b>'],
73
73
  ['italic', 'italic', '<i>I</i>'],
74
74
  ['underline', 'underline', '<u>U</u>'],
75
+ // A heading, or back to words: the text style list's first two, in one press.
76
+ ['heading', 'heading', '<b>H</b>'],
75
77
  ['bulletList', 'insertUnorderedList', '<svg viewBox="0 0 16 16"><circle cx="3" cy="4" r="1.2"/><circle cx="3" cy="8" r="1.2"/><circle cx="3" cy="12" r="1.2"/><path d="M6 4h8M6 8h8M6 12h8"/></svg>'],
76
78
  ['numberList', 'insertOrderedList', '<svg viewBox="0 0 16 16"><path d="M2.5 3h1v3M2 10.5c.5-.8 2-.8 2 .2 0 .8-2 1.3-2 2.3h2M6 4h8M6 8h8M6 12h8"/></svg>'],
77
79
  ['alignLeft', 'justifyLeft', '<svg viewBox="0 0 16 16"><path d="M2 3.5h12M2 6.5h8M2 9.5h12M2 12.5h8"/></svg>'],
@@ -220,11 +222,13 @@ function formattingToolbar(area, doc, labels) {
220
222
  button.title = labels[key];
221
223
  button.innerHTML = icon;
222
224
  button.querySelector('svg')?.setAttribute('aria-hidden', 'true');
223
- if (['bold', 'italic', 'underline'].includes(command))
225
+ if (['bold', 'italic', 'underline', 'heading'].includes(command))
224
226
  button.setAttribute('aria-pressed', 'false');
225
227
  // Keep the text's selection when the button is pressed.
226
228
  button.addEventListener('mousedown', (event) => event.preventDefault());
227
229
  button.addEventListener('click', () => {
230
+ if (command === 'heading')
231
+ return run('formatBlock', style.value === 'h2' ? '<p>' : '<h2>');
228
232
  if (command !== 'createLink')
229
233
  return run(command);
230
234
  linkRow.hidden = false;
@@ -256,13 +260,13 @@ function formattingToolbar(area, doc, labels) {
256
260
  if (!selection || !selection.rangeCount || !area.contains(selection.anchorNode))
257
261
  return;
258
262
  lastRange = selection.getRangeAt(0).cloneRange();
263
+ const block = String(doc.queryCommandValue?.('formatBlock') ?? '').toLowerCase().replace(/[<>]/g, '');
264
+ style.value = block === 'h2' || block === 'h3' ? block : 'p';
259
265
  for (const button of buttons) {
260
266
  const command = TOOLS[buttons.indexOf(button)][1];
261
267
  if (button.hasAttribute('aria-pressed'))
262
- button.setAttribute('aria-pressed', String(doc.queryCommandState?.(command) ?? false));
268
+ button.setAttribute('aria-pressed', String(command === 'heading' ? block === 'h2' : (doc.queryCommandState?.(command) ?? false)));
263
269
  }
264
- const block = String(doc.queryCommandValue?.('formatBlock') ?? '').toLowerCase().replace(/[<>]/g, '');
265
- style.value = block === 'h2' || block === 'h3' ? block : 'p';
266
270
  };
267
271
  doc.addEventListener('selectionchange', reflect);
268
272
  return { bar, linkRow, destroy: () => doc.removeEventListener('selectionchange', reflect) };
@@ -1 +1 @@
1
- {"version":3,"file":"extras.js","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/extras.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extras.js","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/extras.ts"],"names":[],"mappings":"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"}
@@ -67,6 +67,8 @@ const TOOLS = [
67
67
  ['bold', 'bold', '<b>B</b>'],
68
68
  ['italic', 'italic', '<i>I</i>'],
69
69
  ['underline', 'underline', '<u>U</u>'],
70
+ // A heading, or back to words: the text style list's first two, in one press.
71
+ ['heading', 'heading', '<b>H</b>'],
70
72
  ['bulletList', 'insertUnorderedList', '<svg viewBox="0 0 16 16"><circle cx="3" cy="4" r="1.2"/><circle cx="3" cy="8" r="1.2"/><circle cx="3" cy="12" r="1.2"/><path d="M6 4h8M6 8h8M6 12h8"/></svg>'],
71
73
  ['numberList', 'insertOrderedList', '<svg viewBox="0 0 16 16"><path d="M2.5 3h1v3M2 10.5c.5-.8 2-.8 2 .2 0 .8-2 1.3-2 2.3h2M6 4h8M6 8h8M6 12h8"/></svg>'],
72
74
  ['alignLeft', 'justifyLeft', '<svg viewBox="0 0 16 16"><path d="M2 3.5h12M2 6.5h8M2 9.5h12M2 12.5h8"/></svg>'],
@@ -214,11 +216,13 @@ function formattingToolbar(area, doc, labels) {
214
216
  button.title = labels[key];
215
217
  button.innerHTML = icon;
216
218
  button.querySelector('svg')?.setAttribute('aria-hidden', 'true');
217
- if (['bold', 'italic', 'underline'].includes(command))
219
+ if (['bold', 'italic', 'underline', 'heading'].includes(command))
218
220
  button.setAttribute('aria-pressed', 'false');
219
221
  // Keep the text's selection when the button is pressed.
220
222
  button.addEventListener('mousedown', (event) => event.preventDefault());
221
223
  button.addEventListener('click', () => {
224
+ if (command === 'heading')
225
+ return run('formatBlock', style.value === 'h2' ? '<p>' : '<h2>');
222
226
  if (command !== 'createLink')
223
227
  return run(command);
224
228
  linkRow.hidden = false;
@@ -250,13 +254,13 @@ function formattingToolbar(area, doc, labels) {
250
254
  if (!selection || !selection.rangeCount || !area.contains(selection.anchorNode))
251
255
  return;
252
256
  lastRange = selection.getRangeAt(0).cloneRange();
257
+ const block = String(doc.queryCommandValue?.('formatBlock') ?? '').toLowerCase().replace(/[<>]/g, '');
258
+ style.value = block === 'h2' || block === 'h3' ? block : 'p';
253
259
  for (const button of buttons) {
254
260
  const command = TOOLS[buttons.indexOf(button)][1];
255
261
  if (button.hasAttribute('aria-pressed'))
256
- button.setAttribute('aria-pressed', String(doc.queryCommandState?.(command) ?? false));
262
+ button.setAttribute('aria-pressed', String(command === 'heading' ? block === 'h2' : (doc.queryCommandState?.(command) ?? false)));
257
263
  }
258
- const block = String(doc.queryCommandValue?.('formatBlock') ?? '').toLowerCase().replace(/[<>]/g, '');
259
- style.value = block === 'h2' || block === 'h3' ? block : 'p';
260
264
  };
261
265
  doc.addEventListener('selectionchange', reflect);
262
266
  return { bar, linkRow, destroy: () => doc.removeEventListener('selectionchange', reflect) };
@@ -1 +1 @@
1
- {"version":3,"file":"extras.mjs","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/extras.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extras.mjs","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/extras.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { type FileValue } from '@fieldia/core';
1
2
  import type { WidgetFactory } from './widgets.mjs';
3
+ export declare const readFile: (file: File) => Promise<FileValue>;
2
4
  export declare const binaryWidget: WidgetFactory;
3
5
  export declare const imageWidget: WidgetFactory;
@@ -1,3 +1,5 @@
1
+ import { type FileValue } from '@fieldia/core';
1
2
  import type { WidgetFactory } from './widgets';
3
+ export declare const readFile: (file: File) => Promise<FileValue>;
2
4
  export declare const binaryWidget: WidgetFactory;
3
5
  export declare const imageWidget: WidgetFactory;
package/src/lib/files.js CHANGED
@@ -1,73 +1,94 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.imageWidget = exports.binaryWidget = void 0;
3
+ exports.imageWidget = exports.binaryWidget = exports.readFile = void 0;
4
4
  const core_1 = require("@fieldia/core");
5
- const labels_1 = require("./labels");
6
- /**
7
- * File and image fields. A chosen or dropped file is read into the value as
8
- * base64, the way a backend's binary fields carry it; a stored one may carry
9
- * a `url` instead. Size and type limits are checked by the field's validation.
10
- */
11
- function read(file) {
12
- return new Promise((resolve, reject) => {
13
- const reader = new FileReader();
14
- reader.onload = () => {
15
- const url = String(reader.result ?? '');
16
- resolve({ name: file.name, type: file.type, size: file.size, data: url.slice(url.indexOf(',') + 1) });
17
- };
18
- reader.onerror = () => reject(reader.error);
19
- reader.readAsDataURL(file);
20
- });
5
+ const focus_trap_1 = require("./focus-trap");
6
+ const kind_parts_1 = require("./kind-parts");
7
+ const readFile = (file) => new Promise((resolve, reject) => {
8
+ const reader = new FileReader();
9
+ reader.onload = () => {
10
+ const url = String(reader.result ?? '');
11
+ resolve({ name: file.name, type: file.type, size: file.size, data: url.slice(url.indexOf(',') + 1) });
12
+ };
13
+ reader.onerror = () => reject(reader.error);
14
+ reader.readAsDataURL(file);
15
+ });
16
+ exports.readFile = readFile;
17
+ const extension = (name) => (/\.(\w{1,5})$/.exec(name)?.[1] ?? '').toUpperCase();
18
+ /** What a file is, for its icon and its preview: by its media type, else its extension. */
19
+ function kindOf(file) {
20
+ const of = `${file.type} ${extension(file.name)}`.toLowerCase();
21
+ return /^image\//.test(of) ? 'image' : /pdf/.test(of) ? 'pdf' : /sheet|excel|csv|xlsx?$|ods$/.test(of) ? 'sheet' : /zip|rar|7z|tar|gz/.test(of) ? 'zip' : /word|opendocument|^text|docx?$|odt$|rtf$/.test(of) ? 'doc' : 'file';
21
22
  }
23
+ const asText = (file) => /^text\/|json|xml|csv/.test(file.type);
24
+ /** Where a file's picture is: its data, or where it is stored. */
25
+ const source = (file) => (file.data ? `data:${file.type};base64,${file.data}` : (file.url ?? ''));
26
+ const bytes = (data) => Uint8Array.from(atob(data), (c) => c.charCodeAt(0));
27
+ const icon = (make, file) => make('span', { class: 'fd-file-icon', 'data-kind': kindOf(file), 'aria-hidden': 'true' }, extension(file.name) || '?');
28
+ /** A name cut in the middle where it must be: its start may end in an ellipsis, its last characters — the extension — stay. */
29
+ const named = (make, name) => make('span', { class: 'fd-file-name', dir: 'auto', title: name }, make('span', {}, name.slice(0, -9)), name.slice(-9));
22
30
  function fileWidget(kind) {
23
- return ({ form, name, field, id, document, labels = labels_1.WIDGET_LABELS.en }) => {
24
- const element = document.createElement('div');
25
- element.className = `fd-file fd-file-${kind}`;
26
- const input = document.createElement('input');
27
- input.type = 'file';
28
- input.id = id;
29
- input.className = 'fd-sr-only';
30
- const accept = field.type === 'binary' ? field.accept : kind === 'image' ? ['image/*'] : undefined;
31
- if (accept)
32
- input.accept = accept.join(',');
33
- const preview = document.createElement('img');
34
- preview.className = 'fd-image-preview';
35
- preview.alt = field.label;
36
- preview.hidden = true;
37
- const pick = document.createElement('label');
38
- pick.className = kind === 'image' ? 'fd-file-pick fd-image-pick' : 'fd-file-pick';
39
- pick.htmlFor = id;
40
- const pickText = document.createElement('span');
41
- pickText.className = 'fd-button';
42
- pickText.textContent = kind === 'image' ? labels.uploadImage : labels.upload;
43
- const hint = document.createElement('span');
44
- hint.className = 'fd-help';
45
- hint.textContent = labels.dropHere;
46
- pick.append(pickText, hint);
47
- const chosen = document.createElement('div');
48
- chosen.className = 'fd-file-chosen';
49
- const fileName = document.createElement('span');
50
- fileName.className = 'fd-file-name';
51
- const replace = document.createElement('button');
52
- replace.type = 'button';
53
- replace.className = 'fd-button fd-button-link';
54
- replace.textContent = labels.replace;
31
+ return ({ form, name, field: def, node, id, document: doc, labels, locale = 'en' }) => {
32
+ const field = def;
33
+ const words = (0, kind_parts_1.wordsFor)(labels, locale);
34
+ const messages = core_1.MESSAGES[locale] ?? core_1.MESSAGES.en;
35
+ const make = (0, kind_parts_1.maker)(doc);
36
+ const several = field.multiple === true;
37
+ const most = several ? (field.maxFiles ?? Infinity) : 1;
38
+ const image = kind === 'image';
39
+ const thumbs = (node.options?.['files'] ?? (image ? 'thumbnails' : 'list')) === 'thumbnails';
40
+ const camera = node.options?.['camera'];
41
+ const accept = field.type === 'binary' ? field.accept : ['image/*'];
42
+ const element = make('div', { class: `fd-file fd-file-${kind} fd-files-${thumbs ? 'thumbs' : 'list'}` });
43
+ const input = make('input', { type: 'file', id, class: 'fd-sr-only', accept: accept?.join(','), capture: camera ? (camera === 'user' ? 'user' : 'environment') : undefined });
44
+ input.multiple = several;
45
+ // The limits, said before anyone tries.
46
+ const limits = [
47
+ !image && accept ? (0, core_1.describeTypes)(accept, messages.or) : '',
48
+ field.maxSize ? (0, core_1.fill)(several ? words.upToEach : words.upToSize, { size: (0, core_1.formatBytes)(field.maxSize) }) : '',
49
+ several && field.maxFiles ? (0, core_1.fill)(words.upToFiles, { max: field.maxFiles }) : '',
50
+ ].filter(Boolean);
51
+ // A tile among the thumbnails, a drop zone over the list.
52
+ const pick = make('label', { class: `fd-file-pick${thumbs ? ' fd-image-pick' : ''}`, for: id }, make('span', { class: 'fd-button' }, several ? (image ? words.addPhotos : words.addFiles) : image ? words.uploadImage : words.upload), make('span', { class: 'fd-help' }, several ? words.dropThem : words.dropHere));
53
+ const limited = make('span', { class: 'fd-help fd-file-limits' }, limits.join(' · '));
54
+ const count = several ? make('span', { class: 'fd-help fd-file-count' }) : null;
55
+ const list = make('ul', { class: 'fd-files', role: 'list' });
56
+ const replace = make('button', { type: 'button', class: 'fd-button fd-button-link' }, words.replace);
55
57
  replace.addEventListener('click', () => input.click());
56
- const remove = document.createElement('button');
57
- remove.type = 'button';
58
- remove.className = 'fd-button fd-button-link';
59
- remove.textContent = labels.removeFile;
60
- remove.addEventListener('click', () => form.setValue(name, null));
61
- chosen.append(fileName, replace, remove);
62
- element.append(input, ...(kind === 'image' ? [preview] : []), pick, chosen);
58
+ // Removing asks first, in place: "Remove report.pdf? Remove · Keep".
59
+ const confirm = (0, kind_parts_1.askFirst)(make, words);
60
+ // Why files were not added, and one removed: said politely, and shown.
61
+ const note = make('div', { class: 'fd-help fd-file-note', role: 'status' });
62
+ element.append(input, pick, ...(limits.length ? [limited] : []), ...(count ? [count] : []), list, replace, confirm.element, note);
63
63
  let readonly = false;
64
- const take = async (file) => {
65
- if (!file || readonly)
64
+ let files = [];
65
+ let shown;
66
+ const say = (lines) => note.replaceChildren(...lines.map((line) => make('div', {}, line)));
67
+ const take = async (chosen) => {
68
+ if (readonly || !chosen.length)
66
69
  return;
67
- form.setValue(name, await read(file));
70
+ const kept = [];
71
+ const lines = [];
72
+ let over = 0;
73
+ for (const file of chosen) {
74
+ const problem = (0, core_1.fileProblem)(field, file, messages) ?? (several && [...files, ...kept].some((f) => f.name === file.name) ? (0, core_1.fill)(words.alreadyAdded, { name: file.name }) : undefined);
75
+ if (problem)
76
+ lines.push(problem);
77
+ else if ((several ? files.length : 0) + kept.length < most)
78
+ kept.push(file);
79
+ else
80
+ over++;
81
+ }
82
+ if (over && several)
83
+ lines.push((0, core_1.fill)(words.tooMany, { max: most, n: over }));
84
+ say(lines);
85
+ if (!kept.length)
86
+ return;
87
+ const added = await Promise.all(kept.map(exports.readFile));
88
+ form.setValue(name, several ? [...files, ...added] : added[0]);
68
89
  };
69
90
  input.addEventListener('change', () => {
70
- void take(input.files?.[0]);
91
+ void take([...(input.files ?? [])]);
71
92
  input.value = '';
72
93
  });
73
94
  element.addEventListener('dragover', (event) => {
@@ -80,32 +101,111 @@ function fileWidget(kind) {
80
101
  element.addEventListener('drop', (event) => {
81
102
  event.preventDefault();
82
103
  element.classList.remove('fd-dragging');
83
- void take(event.dataTransfer?.files?.[0]);
104
+ void take([...(event.dataTransfer?.files ?? [])]);
84
105
  });
106
+ list.addEventListener('click', (event) => {
107
+ const button = event.target.closest('button');
108
+ const at = Number(button?.dataset['at']);
109
+ if (!button)
110
+ return;
111
+ if (button.classList.contains('fd-file-open'))
112
+ return view(at, button);
113
+ confirm.ask((0, core_1.fill)(words.removeAsk, { name: files[at].name }), (remove) => {
114
+ const gone = files[at];
115
+ if (remove) {
116
+ form.setValue(name, several ? files.filter((_, i) => i !== at) : null);
117
+ say([(0, core_1.fill)(words.removed, { name: gone.name })]);
118
+ }
119
+ (list.querySelectorAll('.fd-file-remove')[remove ? Math.min(at, files.length - 1) : at] ?? (pick.hidden ? replace : input)).focus();
120
+ });
121
+ });
122
+ /** A file open in a dialog, the arrows and Previous and Next going through them all. */
123
+ function view(at, opener) {
124
+ const all = files;
125
+ let url = '';
126
+ const title = make('h2', { id: `${id}-view`, class: 'fd-form-dialog-title' });
127
+ const meta = make('span', { class: 'fd-help' });
128
+ const step = (by, words, arrow) => {
129
+ const button = make('button', { type: 'button', class: 'fd-button fd-file-step', 'aria-label': words }, arrow);
130
+ button.hidden = all.length < 2;
131
+ button.addEventListener('click', () => show(at + by));
132
+ return button;
133
+ };
134
+ const download = make('a', { class: 'fd-button' }, words.download);
135
+ const close = make('button', { type: 'button', class: 'fd-dialog-close', 'aria-label': words.close }, '×');
136
+ const body = make('div', { class: 'fd-file-viewer-body' });
137
+ const box = make('div',
138
+ // A page's dialog, as the viewer's are.
139
+ { class: 'fd-form-dialog fd-file-viewer', role: 'dialog', 'aria-modal': 'true', 'aria-labelledby': title.id, tabindex: '-1' }, make('div', { class: 'fd-form-dialog-head' }, title, meta, step(-1, words.previous, '‹'), step(1, words.next, '›'), download, close), body);
140
+ const backdrop = make('div', { class: 'fd-dialog-backdrop' }, box);
141
+ const free = () => url.startsWith('blob:') && URL.revokeObjectURL(url);
142
+ const none = (file) => make('div', { class: 'fd-file-none' }, icon(make, file), make('strong', {}, file.name), (0, core_1.formatBytes)(file.size), make('p', {}, words.noPreview));
143
+ function show(to) {
144
+ at = (to + all.length) % all.length;
145
+ const file = all[at];
146
+ free();
147
+ const data = file.data ? bytes(file.data) : null;
148
+ url = data ? URL.createObjectURL(new Blob([data], { type: file.type })) : (file.url ?? '');
149
+ title.textContent = file.name;
150
+ meta.replaceChildren(make('span', { class: 'fd-file-size' }, (0, core_1.formatBytes)(file.size)), all.length > 1 ? ` · ${(0, core_1.fill)(words.fileAt, { n: at + 1, total: all.length })}` : '');
151
+ download.href = url;
152
+ download.download = file.name;
153
+ const kind = kindOf(file);
154
+ if (kind === 'image')
155
+ return body.replaceChildren(make('img', { src: url, alt: file.name }));
156
+ if (kind === 'pdf')
157
+ return body.replaceChildren(make('iframe', { src: url, title: file.name }));
158
+ if (!asText(file))
159
+ return body.replaceChildren(none(file));
160
+ const pre = make('pre', { tabindex: '0' });
161
+ body.replaceChildren(pre);
162
+ // The first 200 KB: enough to see what it is.
163
+ (data ? Promise.resolve(new TextDecoder().decode(data.subarray(0, 2e5))) : fetch(url).then((r) => r.text())).then((words) => (pre.textContent = words.slice(0, 2e5)), () => pre.replaceWith(none(file)));
164
+ }
165
+ const done = () => {
166
+ free();
167
+ backdrop.remove();
168
+ (opener.isConnected ? opener : list.querySelectorAll('.fd-file-open')[at])?.focus();
169
+ };
170
+ close.addEventListener('click', done);
171
+ backdrop.addEventListener('click', (event) => event.target === backdrop && done());
172
+ box.addEventListener('keydown', (event) => {
173
+ const by = { ArrowLeft: -1, ArrowRight: 1 }[event.key];
174
+ if (event.key === 'Escape')
175
+ done();
176
+ else if (by && all.length > 1 && event.target.tagName !== 'PRE')
177
+ show(at + ((0, kind_parts_1.rightToLeft)(element) ? -by : by));
178
+ else
179
+ (0, focus_trap_1.keepTabIn)(box, event);
180
+ });
181
+ show(at);
182
+ // Over the page, wearing the form's skin, scheme and direction.
183
+ (element.closest('.fd-form') ?? doc.body).append(backdrop);
184
+ box.focus();
185
+ }
85
186
  return {
86
187
  element,
87
- focus: () => (pick.hidden ? replace : input).focus(),
188
+ focus: () => (list.querySelector('button') ?? (pick.hidden ? replace : input)).focus(),
88
189
  update(state) {
89
190
  readonly = state.readonly;
90
- const file = state.value;
91
- pick.hidden = !!file || readonly;
92
- chosen.hidden = !file;
93
- replace.hidden = remove.hidden = readonly;
191
+ const value = state.value;
192
+ files = Array.isArray(value) ? value : value ? [value] : [];
193
+ const full = files.length >= most;
194
+ (0, kind_parts_1.setHidden)(pick, full || readonly);
195
+ (0, kind_parts_1.setHidden)(limited, readonly);
94
196
  input.disabled = readonly;
95
- input.setAttribute('aria-invalid', String(state.invalid));
96
- if (state.describedBy)
97
- input.setAttribute('aria-describedby', state.describedBy);
98
- fileName.textContent = file ? `${file.name} · ${(0, core_1.formatBytes)(file.size)}` : '';
99
- if (kind === 'image') {
100
- const src = file ? (file.data ? `data:${file.type};base64,${file.data}` : file.url ?? '') : '';
101
- preview.hidden = !src;
102
- if (preview.getAttribute('src') !== src) {
103
- if (src)
104
- preview.src = src;
105
- else
106
- preview.removeAttribute('src');
107
- }
108
- }
197
+ input.hidden = pick.hidden;
198
+ (0, kind_parts_1.setHidden)(replace, several || !files.length || readonly);
199
+ if (count)
200
+ (0, kind_parts_1.setText)(count, !files.length ? '' : several && field.maxFiles ? (0, core_1.fill)(words.fileCountOf, { n: files.length, max: field.maxFiles }) : files.length === 1 ? words.oneFile : (0, core_1.fill)(words.fileCount, { n: files.length }));
201
+ (0, kind_parts_1.describeState)(input, state);
202
+ if (shown === value && list.dataset['readonly'] === String(readonly))
203
+ return;
204
+ shown = value;
205
+ list.dataset['readonly'] = String(readonly);
206
+ list.replaceChildren(...files.map((file, at) => make('li', { class: 'fd-file-item' }, make('button',
207
+ // Named whole: the name's two parts would be read as two words.
208
+ { type: 'button', class: 'fd-file-open', 'data-at': String(at), 'aria-haspopup': 'dialog', 'aria-label': `${file.name}, ${(0, core_1.formatBytes)(file.size)}` }, kindOf(file) === 'image' && source(file) ? make('img', { class: 'fd-file-thumb', src: source(file), alt: '' }) : icon(make, file), named(make, file.name), make('span', { class: 'fd-file-size' }, (0, core_1.formatBytes)(file.size))), ...(readonly ? [] : [make('button', { type: 'button', class: 'fd-file-remove', 'data-at': String(at), 'aria-label': (0, core_1.fill)(words.remove, { name: file.name }) }, '×')]))));
109
209
  },
110
210
  };
111
211
  };
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../../../../libs/widgets/src/lib/files.ts"],"names":[],"mappings":"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"}