@erudit-js/prose 4.0.0-dev.4 → 4.0.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 (83) hide show
  1. package/dist/app/default/Inliners.vue +11 -11
  2. package/dist/app/default/Mix.vue +11 -11
  3. package/dist/app/default/Text.vue +25 -25
  4. package/dist/app/shared/Prose.vue +40 -40
  5. package/dist/app/shared/Render.vue +51 -51
  6. package/dist/app/shared/block/AsideMenu.vue +44 -44
  7. package/dist/app/shared/block/AsideMenuButton.vue +51 -53
  8. package/dist/app/shared/block/AsideMenuCopyLink.vue +40 -40
  9. package/dist/app/shared/block/AsideMenuSeparator.vue +3 -3
  10. package/dist/app/shared/block/Block.vue +270 -275
  11. package/dist/app/shared/inliner/Inliner.vue +11 -11
  12. package/dist/app/shared/photoswipe/style.css +22 -26
  13. package/dist/elements/accent/Accent.vue +88 -92
  14. package/dist/elements/accent/AccentColumnSection.vue +61 -61
  15. package/dist/elements/accent/AccentRowSections.vue +64 -65
  16. package/dist/elements/callout/Callout.vue +81 -85
  17. package/dist/elements/callout/_global.d.ts +15 -15
  18. package/dist/elements/caption/Caption.vue +44 -47
  19. package/dist/elements/caption/_global.d.ts +26 -26
  20. package/dist/elements/details/Details.vue +49 -50
  21. package/dist/elements/details/_global.d.ts +27 -27
  22. package/dist/elements/diagram/Diagram.vue +360 -374
  23. package/dist/elements/diagram/_global.d.ts +19 -19
  24. package/dist/elements/diagram/core.d.ts +0 -4
  25. package/dist/elements/diagram/core.js +1 -7
  26. package/dist/elements/emphasis/Emphasis.vue +25 -25
  27. package/dist/elements/emphasis/_global.d.ts +18 -18
  28. package/dist/elements/flex/Flex.vue +36 -38
  29. package/dist/elements/flex/_global.d.ts +23 -23
  30. package/dist/elements/gallery/Gallery.vue +56 -56
  31. package/dist/elements/gallery/_global.d.ts +18 -18
  32. package/dist/elements/heading/Heading.vue +44 -44
  33. package/dist/elements/heading/_global.d.ts +42 -45
  34. package/dist/elements/heading/core.js +7 -14
  35. package/dist/elements/horizontalLine/HorizontalLine.vue +6 -6
  36. package/dist/elements/horizontalLine/_global.d.ts +17 -17
  37. package/dist/elements/image/Image.vue +15 -15
  38. package/dist/elements/image/ImageElement.vue +80 -80
  39. package/dist/elements/image/_global.d.ts +18 -18
  40. package/dist/elements/lineBreak/LineBreak.vue +3 -3
  41. package/dist/elements/lineBreak/_global.d.ts +18 -18
  42. package/dist/elements/link/BlockLink.vue +108 -110
  43. package/dist/elements/link/Link.vue +92 -96
  44. package/dist/elements/link/dependency/_global.d.ts +47 -47
  45. package/dist/elements/link/reference/_global.d.ts +49 -49
  46. package/dist/elements/list/List.vue +58 -65
  47. package/dist/elements/list/_global.d.ts +50 -50
  48. package/dist/elements/math/_global.d.ts +72 -72
  49. package/dist/elements/math/_global.ts +3 -3
  50. package/dist/elements/math/components/BlockMath.vue +30 -30
  51. package/dist/elements/math/components/InlinerMath.vue +65 -65
  52. package/dist/elements/math/components/Katex.vue +88 -89
  53. package/dist/elements/math/components/MathGroup.vue +41 -41
  54. package/dist/elements/math/katex.js +17 -6
  55. package/dist/elements/paragraph/Paragraph.vue +25 -27
  56. package/dist/elements/paragraph/_global.d.ts +27 -27
  57. package/dist/elements/problem/_global.d.ts +112 -112
  58. package/dist/elements/problem/components/Problem.vue +22 -22
  59. package/dist/elements/problem/components/ProblemButton.vue +20 -21
  60. package/dist/elements/problem/components/ProblemContainer.vue +8 -8
  61. package/dist/elements/problem/components/ProblemContent.vue +356 -371
  62. package/dist/elements/problem/components/ProblemExpander.vue +7 -7
  63. package/dist/elements/problem/components/ProblemExpanderSection.vue +57 -57
  64. package/dist/elements/problem/components/ProblemHeader.vue +100 -102
  65. package/dist/elements/problem/components/Problems.vue +83 -87
  66. package/dist/elements/problem/components/SubProblem.vue +14 -14
  67. package/dist/elements/problem/components/expanders/Check.vue +153 -150
  68. package/dist/elements/problem/components/expanders/Checks.vue +146 -83
  69. package/dist/elements/problem/components/expanders/DefaultPlusSections.vue +38 -38
  70. package/dist/elements/problem/components/expanders/Hint.vue +26 -26
  71. package/dist/elements/problem/core.d.ts +23 -23
  72. package/dist/elements/problem/problemContent.d.ts +134 -30
  73. package/dist/elements/problem/problemContent.js +157 -197
  74. package/dist/elements/problem/problemScript.d.ts +2 -2
  75. package/dist/elements/problem/problemScript.js +2 -2
  76. package/dist/elements/problem/rng.d.ts +1 -1
  77. package/dist/elements/problem/rng.js +1 -1
  78. package/dist/elements/table/Table.vue +100 -102
  79. package/dist/elements/table/_global.d.ts +36 -36
  80. package/dist/elements/video/Video.vue +110 -109
  81. package/dist/elements/video/_global.d.ts +18 -18
  82. package/package.json +42 -43
  83. package/types.d.ts +4 -4
@@ -1,26 +1,26 @@
1
- <script lang="ts" setup>
2
- import type { ProseElement } from '@jsprose/core';
3
-
4
- import type { problemHintSchema } from '../../problemContent.js';
5
- import { useProblemPhrase } from '../../composables/phrase.js';
6
- import ProblemExpander from '../ProblemExpander.vue';
7
- import Render from '../../../../app/shared/Render.vue';
8
- import ProblemExpanderSection from '../ProblemExpanderSection.vue';
9
-
10
- defineProps<{ value: ProseElement<typeof problemHintSchema>[] }>();
11
- const phrase = await useProblemPhrase();
12
- </script>
13
-
14
- <template>
15
- <ProblemExpander>
16
- <div v-if="value.length === 1" class="py-(--proseAsideWidth)">
17
- <Render v-for="child of value[0]!.children" :element="child" />
18
- </div>
19
- <ProblemExpanderSection
20
- v-else
21
- v-for="(hint, i) of value"
22
- :title="phrase.action_hint + ' ' + (i + 1)"
23
- :element="hint"
24
- />
25
- </ProblemExpander>
26
- </template>
1
+ <script lang="ts" setup>
2
+ import type { ProseElement } from '@jsprose/core';
3
+
4
+ import type { problemHintSchema } from '../../problemContent.js';
5
+ import { useProblemPhrase } from '../../composables/phrase.js';
6
+ import ProblemExpander from '../ProblemExpander.vue';
7
+ import Render from '../../../../app/shared/Render.vue';
8
+ import ProblemExpanderSection from '../ProblemExpanderSection.vue';
9
+
10
+ defineProps<{ value: ProseElement<typeof problemHintSchema>[] }>();
11
+ const phrase = await useProblemPhrase();
12
+ </script>
13
+
14
+ <template>
15
+ <ProblemExpander>
16
+ <div v-if="value.length === 1" class="py-(--proseAsideWidth)">
17
+ <Render v-for="child of value[0]!.children" :element="child" />
18
+ </div>
19
+ <ProblemExpanderSection
20
+ v-else
21
+ v-for="(hint, i) of value"
22
+ :title="phrase.action_hint + ' ' + (i + 1)"
23
+ :element="hint"
24
+ />
25
+ </ProblemExpander>
26
+ </template>
@@ -109,54 +109,54 @@ declare const _default: [{
109
109
  hint?: string;
110
110
  placeholder?: string;
111
111
  } & (((Pick<{
112
- answer: string | number | RegExp;
113
- answers: (string | number | RegExp)[];
114
- set: (string | number | RegExp | (string | number | RegExp)[])[] | {
112
+ answer: string | number | RegExp | undefined;
113
+ answers: (string | number | RegExp | undefined)[];
114
+ set: ((string | number | RegExp | undefined) | (string | number | RegExp | undefined)[])[] | {
115
115
  separator: string;
116
- values: (string | number | RegExp | (string | number | RegExp)[])[];
116
+ values: ((string | number | RegExp | undefined) | (string | number | RegExp | undefined)[])[];
117
117
  };
118
118
  script: string;
119
119
  }, "answer"> & {
120
- answers?: undefined;
121
120
  set?: undefined;
121
+ answers?: undefined;
122
122
  script?: undefined;
123
123
  }) | (Pick<{
124
- answer: string | number | RegExp;
125
- answers: (string | number | RegExp)[];
126
- set: (string | number | RegExp | (string | number | RegExp)[])[] | {
124
+ answer: string | number | RegExp | undefined;
125
+ answers: (string | number | RegExp | undefined)[];
126
+ set: ((string | number | RegExp | undefined) | (string | number | RegExp | undefined)[])[] | {
127
127
  separator: string;
128
- values: (string | number | RegExp | (string | number | RegExp)[])[];
128
+ values: ((string | number | RegExp | undefined) | (string | number | RegExp | undefined)[])[];
129
129
  };
130
130
  script: string;
131
- }, "answers"> & {
131
+ }, "set"> & {
132
132
  answer?: undefined;
133
- set?: undefined;
133
+ answers?: undefined;
134
134
  script?: undefined;
135
135
  }) | (Pick<{
136
- answer: string | number | RegExp;
137
- answers: (string | number | RegExp)[];
138
- set: (string | number | RegExp | (string | number | RegExp)[])[] | {
136
+ answer: string | number | RegExp | undefined;
137
+ answers: (string | number | RegExp | undefined)[];
138
+ set: ((string | number | RegExp | undefined) | (string | number | RegExp | undefined)[])[] | {
139
139
  separator: string;
140
- values: (string | number | RegExp | (string | number | RegExp)[])[];
140
+ values: ((string | number | RegExp | undefined) | (string | number | RegExp | undefined)[])[];
141
141
  };
142
142
  script: string;
143
- }, "set"> & {
143
+ }, "answers"> & {
144
144
  answer?: undefined;
145
- answers?: undefined;
145
+ set?: undefined;
146
146
  script?: undefined;
147
147
  }) | (Pick<{
148
- answer: string | number | RegExp;
149
- answers: (string | number | RegExp)[];
150
- set: (string | number | RegExp | (string | number | RegExp)[])[] | {
148
+ answer: string | number | RegExp | undefined;
149
+ answers: (string | number | RegExp | undefined)[];
150
+ set: ((string | number | RegExp | undefined) | (string | number | RegExp | undefined)[])[] | {
151
151
  separator: string;
152
- values: (string | number | RegExp | (string | number | RegExp)[])[];
152
+ values: ((string | number | RegExp | undefined) | (string | number | RegExp | undefined)[])[];
153
153
  };
154
154
  script: string;
155
155
  }, "script"> & {
156
156
  answer?: undefined;
157
- answers?: undefined;
158
157
  set?: undefined;
159
- })) & import("@jsprose/core").NoTagChildren)) & {}>;
158
+ answers?: undefined;
159
+ })) & (import("@jsprose/core").TagChildren | import("@jsprose/core").NoTagChildren))) & {}>;
160
160
  }, undefined>;
161
161
  }, {
162
162
  registryItem: import("@jsprose/core").RegistryItem<{
@@ -1,4 +1,112 @@
1
1
  import { type AnySchema, type BlockSchema, type NormalizedChildren, type NoTagChildren, type TagChildren } from '@jsprose/core';
2
+ export declare const problemDescription: {
3
+ schema: {
4
+ name: "problemDescription";
5
+ type: "block";
6
+ linkable: false;
7
+ Data: undefined;
8
+ Storage: undefined;
9
+ Children: AnySchema[];
10
+ };
11
+ tag: import("@jsprose/core").Tag<"ProblemDescription", {
12
+ name: "problemDescription";
13
+ type: "block";
14
+ linkable: false;
15
+ Data: undefined;
16
+ Storage: undefined;
17
+ Children: AnySchema[];
18
+ }, TagChildren>;
19
+ registryItem: import("@jsprose/core").RegistryItem<{
20
+ name: "problemDescription";
21
+ type: "block";
22
+ linkable: false;
23
+ Data: undefined;
24
+ Storage: undefined;
25
+ Children: AnySchema[];
26
+ }, {
27
+ ProblemDescription: import("@jsprose/core").Tag<"ProblemDescription", {
28
+ name: "problemDescription";
29
+ type: "block";
30
+ linkable: false;
31
+ Data: undefined;
32
+ Storage: undefined;
33
+ Children: AnySchema[];
34
+ }, TagChildren>;
35
+ }, undefined>;
36
+ coreElement: {
37
+ registryItem: import("@jsprose/core").RegistryItem<{
38
+ name: "problemDescription";
39
+ type: "block";
40
+ linkable: false;
41
+ Data: undefined;
42
+ Storage: undefined;
43
+ Children: AnySchema[];
44
+ }, {
45
+ ProblemDescription: import("@jsprose/core").Tag<"ProblemDescription", {
46
+ name: "problemDescription";
47
+ type: "block";
48
+ linkable: false;
49
+ Data: undefined;
50
+ Storage: undefined;
51
+ Children: AnySchema[];
52
+ }, TagChildren>;
53
+ }, undefined>;
54
+ };
55
+ };
56
+ export declare const problemHint: {
57
+ schema: {
58
+ name: "problemHint";
59
+ type: "block";
60
+ linkable: false;
61
+ Data: undefined;
62
+ Storage: undefined;
63
+ Children: AnySchema[];
64
+ };
65
+ tag: import("@jsprose/core").Tag<"ProblemHint", {
66
+ name: "problemHint";
67
+ type: "block";
68
+ linkable: false;
69
+ Data: undefined;
70
+ Storage: undefined;
71
+ Children: AnySchema[];
72
+ }, TagChildren>;
73
+ registryItem: import("@jsprose/core").RegistryItem<{
74
+ name: "problemHint";
75
+ type: "block";
76
+ linkable: false;
77
+ Data: undefined;
78
+ Storage: undefined;
79
+ Children: AnySchema[];
80
+ }, {
81
+ ProblemHint: import("@jsprose/core").Tag<"ProblemHint", {
82
+ name: "problemHint";
83
+ type: "block";
84
+ linkable: false;
85
+ Data: undefined;
86
+ Storage: undefined;
87
+ Children: AnySchema[];
88
+ }, TagChildren>;
89
+ }, undefined>;
90
+ coreElement: {
91
+ registryItem: import("@jsprose/core").RegistryItem<{
92
+ name: "problemHint";
93
+ type: "block";
94
+ linkable: false;
95
+ Data: undefined;
96
+ Storage: undefined;
97
+ Children: AnySchema[];
98
+ }, {
99
+ ProblemHint: import("@jsprose/core").Tag<"ProblemHint", {
100
+ name: "problemHint";
101
+ type: "block";
102
+ linkable: false;
103
+ Data: undefined;
104
+ Storage: undefined;
105
+ Children: AnySchema[];
106
+ }, TagChildren>;
107
+ }, undefined>;
108
+ };
109
+ };
2
110
  export declare const problemDescriptionSchema: {
3
111
  name: "problemDescription";
4
112
  type: "block";
@@ -6,16 +114,14 @@ export declare const problemDescriptionSchema: {
6
114
  Data: undefined;
7
115
  Storage: undefined;
8
116
  Children: AnySchema[];
9
- };
10
- export declare const ProblemDescription: import("@jsprose/core").Tag<"ProblemDescription", {
117
+ }, ProblemDescription: import("@jsprose/core").Tag<"ProblemDescription", {
11
118
  name: "problemDescription";
12
119
  type: "block";
13
120
  linkable: false;
14
121
  Data: undefined;
15
122
  Storage: undefined;
16
123
  Children: AnySchema[];
17
- }, TagChildren>;
18
- export declare const problemDescriptionRegistryItem: import("@jsprose/core").RegistryItem<{
124
+ }, TagChildren>, problemDescriptionRegistryItem: import("@jsprose/core").RegistryItem<{
19
125
  name: "problemDescription";
20
126
  type: "block";
21
127
  linkable: false;
@@ -31,8 +137,7 @@ export declare const problemDescriptionRegistryItem: import("@jsprose/core").Reg
31
137
  Storage: undefined;
32
138
  Children: AnySchema[];
33
139
  }, TagChildren>;
34
- }, undefined>;
35
- export declare const problemDescriptionCoreElement: {
140
+ }, undefined>, problemDescriptionCoreElement: {
36
141
  registryItem: import("@jsprose/core").RegistryItem<{
37
142
  name: "problemDescription";
38
143
  type: "block";
@@ -58,16 +163,14 @@ export declare const problemHintSchema: {
58
163
  Data: undefined;
59
164
  Storage: undefined;
60
165
  Children: AnySchema[];
61
- };
62
- export declare const ProblemHint: import("@jsprose/core").Tag<"ProblemHint", {
166
+ }, ProblemHint: import("@jsprose/core").Tag<"ProblemHint", {
63
167
  name: "problemHint";
64
168
  type: "block";
65
169
  linkable: false;
66
170
  Data: undefined;
67
171
  Storage: undefined;
68
172
  Children: AnySchema[];
69
- }, TagChildren>;
70
- export declare const problemHintRegistryItem: import("@jsprose/core").RegistryItem<{
173
+ }, TagChildren>, problemHintRegistryItem: import("@jsprose/core").RegistryItem<{
71
174
  name: "problemHint";
72
175
  type: "block";
73
176
  linkable: false;
@@ -83,8 +186,7 @@ export declare const problemHintRegistryItem: import("@jsprose/core").RegistryIt
83
186
  Storage: undefined;
84
187
  Children: AnySchema[];
85
188
  }, TagChildren>;
86
- }, undefined>;
87
- export declare const problemHintCoreElement: {
189
+ }, undefined>, problemHintCoreElement: {
88
190
  registryItem: import("@jsprose/core").RegistryItem<{
89
191
  name: "problemHint";
90
192
  type: "block";
@@ -332,18 +434,20 @@ export interface ProblemCheckRegex {
332
434
  pattern: string;
333
435
  flags: string;
334
436
  }
335
- export type ProblemCheckValue = string | ProblemCheckRegex;
437
+ export type ProblemCheckValue = string | ProblemCheckRegex | undefined;
438
+ export type ProblemCheckSetValue = string | ProblemCheckRegex;
336
439
  export interface ProblemCheckData {
337
440
  label?: string;
338
441
  hint?: string;
339
442
  placeholder?: string;
443
+ answers?: ProblemCheckValue[];
340
444
  set?: {
341
445
  separator: string;
342
- values: (ProblemCheckValue | ProblemCheckValue[])[];
446
+ values: (ProblemCheckSetValue | ProblemCheckSetValue[])[];
343
447
  };
344
- answers?: ProblemCheckValue[];
345
448
  script?: string;
346
449
  }
450
+ type Answer = string | number | RegExp | undefined;
347
451
  export declare function checkValue(input: string | undefined, data: ProblemCheckData): boolean;
348
452
  export declare const problemCheckSchema: {
349
453
  name: "problemCheck";
@@ -371,14 +475,14 @@ export declare const ProblemCheck: import("@jsprose/core").Tag<"ProblemCheck", {
371
475
  hint?: string;
372
476
  placeholder?: string;
373
477
  } & (OneOf<{
374
- answer: string | number | RegExp;
375
- answers: (string | number | RegExp)[];
376
- set: (string | number | RegExp | (string | number | RegExp)[])[] | {
478
+ answer: Answer;
479
+ answers: Answer[];
480
+ set: (Answer | Answer[])[] | {
377
481
  separator: string;
378
- values: (string | number | RegExp | (string | number | RegExp)[])[];
482
+ values: (Answer | Answer[])[];
379
483
  };
380
484
  script: string;
381
- }> & NoTagChildren)) & {}>;
485
+ }> & (TagChildren | NoTagChildren))) & {}>;
382
486
  export declare const problemCheckRegistryItem: import("@jsprose/core").RegistryItem<{
383
487
  name: "problemCheck";
384
488
  type: "block";
@@ -399,14 +503,14 @@ export declare const problemCheckRegistryItem: import("@jsprose/core").RegistryI
399
503
  hint?: string;
400
504
  placeholder?: string;
401
505
  } & (OneOf<{
402
- answer: string | number | RegExp;
403
- answers: (string | number | RegExp)[];
404
- set: (string | number | RegExp | (string | number | RegExp)[])[] | {
506
+ answer: Answer;
507
+ answers: Answer[];
508
+ set: (Answer | Answer[])[] | {
405
509
  separator: string;
406
- values: (string | number | RegExp | (string | number | RegExp)[])[];
510
+ values: (Answer | Answer[])[];
407
511
  };
408
512
  script: string;
409
- }> & NoTagChildren)) & {}>;
513
+ }> & (TagChildren | NoTagChildren))) & {}>;
410
514
  }, undefined>;
411
515
  export declare const problemCheckCoreElement: {
412
516
  registryItem: import("@jsprose/core").RegistryItem<{
@@ -429,14 +533,14 @@ export declare const problemCheckCoreElement: {
429
533
  hint?: string;
430
534
  placeholder?: string;
431
535
  } & (OneOf<{
432
- answer: string | number | RegExp;
433
- answers: (string | number | RegExp)[];
434
- set: (string | number | RegExp | (string | number | RegExp)[])[] | {
536
+ answer: Answer;
537
+ answers: Answer[];
538
+ set: (Answer | Answer[])[] | {
435
539
  separator: string;
436
- values: (string | number | RegExp | (string | number | RegExp)[])[];
540
+ values: (Answer | Answer[])[];
437
541
  };
438
542
  script: string;
439
- }> & NoTagChildren)) & {}>;
543
+ }> & (TagChildren | NoTagChildren))) & {}>;
440
544
  }, undefined>;
441
545
  };
442
546
  export type ProblemContentChild = typeof problemDescriptionSchema | typeof problemHintSchema | typeof problemNote.schema | typeof problemSolution.schema | typeof problemAnswer.schema | typeof problemCheckSchema;