@lblod/ember-rdfa-editor-lblod-plugins 25.2.2 → 26.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.
- package/CHANGELOG.md +36 -0
- package/addon/components/lmb-plugin/insert.ts +17 -5
- package/addon/components/lmb-plugin/list.hbs +16 -22
- package/addon/components/lmb-plugin/search-modal.ts +11 -11
- package/addon/components/location-plugin/insert.gts +2 -0
- package/addon/components/mandatee-table-plugin/node.gts +13 -4
- package/addon/components/structure-plugin/_private/structure.gts +1 -16
- package/addon/components/variable-plugin/address/insert-variable.ts +2 -0
- package/addon/components/variable-plugin/address/insert.ts +2 -0
- package/addon/components/variable-plugin/address/utils.ts +7 -2
- package/addon/components/variable-plugin/autofilled/insert.gts +7 -2
- package/addon/components/variable-plugin/codelist/insert.ts +7 -2
- package/addon/components/variable-plugin/date/insert-variable.ts +7 -2
- package/addon/components/variable-plugin/date/insert.ts +7 -3
- package/addon/components/variable-plugin/insert-variable-card.hbs +1 -0
- package/addon/components/variable-plugin/location/insert.ts +7 -2
- package/addon/components/variable-plugin/number/insert.ts +7 -2
- package/addon/components/variable-plugin/person/edit.ts +12 -12
- package/addon/components/variable-plugin/person/insert.ts +7 -2
- package/addon/components/variable-plugin/person/nodeview.ts +7 -7
- package/addon/components/variable-plugin/text/insert.ts +7 -2
- package/addon/models/electee.ts +22 -0
- package/addon/plugins/lmb-plugin/index.ts +7 -9
- package/addon/plugins/lmb-plugin/utils/fetchElectees.ts +163 -0
- package/addon/plugins/location-plugin/utils/node-utils.ts +7 -3
- package/addon/plugins/variable-plugin/recreateUuidsOnPaste.ts +11 -3
- package/addon/plugins/variable-plugin/variables/person.ts +31 -11
- package/app/styles/mandatee-table-plugin.scss +5 -2
- package/app/styles/structure-plugin.scss +0 -12
- package/declarations/addon/components/lmb-plugin/insert.d.ts +3 -2
- package/declarations/addon/components/lmb-plugin/search-modal.d.ts +6 -6
- package/declarations/addon/components/location-plugin/insert.d.ts +1 -0
- package/declarations/addon/components/structure-plugin/_private/structure.d.ts +0 -1
- package/declarations/addon/components/variable-plugin/address/insert-variable.d.ts +1 -0
- package/declarations/addon/components/variable-plugin/address/insert.d.ts +1 -0
- package/declarations/addon/components/variable-plugin/address/utils.d.ts +1 -1
- package/declarations/addon/components/variable-plugin/autofilled/insert.d.ts +1 -0
- package/declarations/addon/components/variable-plugin/codelist/insert.d.ts +1 -0
- package/declarations/addon/components/variable-plugin/date/insert-variable.d.ts +1 -0
- package/declarations/addon/components/variable-plugin/date/insert.d.ts +1 -0
- package/declarations/addon/components/variable-plugin/location/insert.d.ts +1 -0
- package/declarations/addon/components/variable-plugin/number/insert.d.ts +1 -0
- package/declarations/addon/components/variable-plugin/person/edit.d.ts +2 -2
- package/declarations/addon/components/variable-plugin/person/insert.d.ts +1 -0
- package/declarations/addon/components/variable-plugin/person/nodeview.d.ts +2 -2
- package/declarations/addon/components/variable-plugin/text/insert.d.ts +1 -0
- package/declarations/addon/models/electee.d.ts +10 -0
- package/declarations/addon/plugins/lmb-plugin/index.d.ts +2 -2
- package/declarations/addon/plugins/lmb-plugin/utils/{fetchMandatees.d.ts → fetchElectees.d.ts} +4 -4
- package/declarations/addon/plugins/location-plugin/utils/node-utils.d.ts +1 -1
- package/declarations/addon/plugins/variable-plugin/variables/person.d.ts +5 -0
- package/package.json +1 -1
- package/translations/en-US.yaml +8 -7
- package/translations/nl-BE.yaml +5 -7
- package/addon/models/mandatee.ts +0 -35
- package/addon/plugins/lmb-plugin/utils/fetchMandatees.ts +0 -143
- package/declarations/addon/models/mandatee.d.ts +0 -13
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,41 @@
|
|
|
1
1
|
# @lblod/ember-rdfa-editor-lblod-plugins
|
|
2
2
|
|
|
3
|
+
## 26.0.0
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- [#504](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/pull/504) [`82dd848`](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/commit/82dd848062665bf907055d47231beaa156ec243c) Thanks [@elpoelma](https://github.com/elpoelma)! - Adjustments to `lmb-plugin`:
|
|
8
|
+
|
|
9
|
+
- Rework `fetchMandatees` queries into `fetchElectees`
|
|
10
|
+
- Fetches all electees for a certain legislation period + all non-elected people with a mandate
|
|
11
|
+
- Replace `Mandatee` model by simpler `Electee` model
|
|
12
|
+
- Adjust UI components to reflect the `Mandatee` to `Electee` change
|
|
13
|
+
|
|
14
|
+
- [#504](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/pull/504) [`82dd848`](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/commit/82dd848062665bf907055d47231beaa156ec243c) Thanks [@elpoelma](https://github.com/elpoelma)! - Adjustments to `person` variable:
|
|
15
|
+
- Removal of unused `content` attribute
|
|
16
|
+
- Removal of `mandatee` attribute. Replaced by `value` attribute which contains an object of type `Person`.
|
|
17
|
+
```ts
|
|
18
|
+
type Person = {
|
|
19
|
+
uri: string;
|
|
20
|
+
firstName: string;
|
|
21
|
+
lastName: string;
|
|
22
|
+
};
|
|
23
|
+
```
|
|
24
|
+
- Adjust parsing rules of `person_variable` nodespec to work with old and new serializations
|
|
25
|
+
- Is now more generic, instead of relying on `Mandatee` instances
|
|
26
|
+
|
|
27
|
+
### Minor Changes
|
|
28
|
+
|
|
29
|
+
- [#509](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/pull/509) [`092cc56`](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/commit/092cc569ef130e65611bb6de0e45c6d73f9c3718) Thanks [@elpoelma](https://github.com/elpoelma)! - Mandatee table plugin: ensure synchronisation warning shown in mandatee tables is clearer/more explicit
|
|
30
|
+
|
|
31
|
+
### Patch Changes
|
|
32
|
+
|
|
33
|
+
- [#504](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/pull/504) [`c5d4e05`](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/commit/c5d4e05c9b1e7a37bba6f79df862d5505aebbd47) Thanks [@elpoelma](https://github.com/elpoelma)! - person-variable plugin: remove unused `content` node-attribute
|
|
34
|
+
|
|
35
|
+
- [#505](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/pull/505) [`0cb4f55`](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/commit/0cb4f555effe599d6e481d14bfcb6de7ac15fb66) Thanks [@lagartoverde](https://github.com/lagartoverde)! - Use new template uris on variables
|
|
36
|
+
|
|
37
|
+
- [#508](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/pull/508) [`05f5e77`](https://github.com/lblod/ember-rdfa-editor-lblod-plugins/commit/05f5e7711f7062132f1912f6675b8fd440d54daf) Thanks [@elpoelma](https://github.com/elpoelma)! - Decision article structures: remove unnecessary css placeholder from content section
|
|
38
|
+
|
|
3
39
|
## 25.2.2
|
|
4
40
|
|
|
5
41
|
### Patch Changes
|
|
@@ -5,7 +5,7 @@ import { AddIcon } from '@appuniversum/ember-appuniversum/components/icons/add';
|
|
|
5
5
|
|
|
6
6
|
import { SayController } from '@lblod/ember-rdfa-editor';
|
|
7
7
|
import { LmbPluginConfig } from '@lblod/ember-rdfa-editor-lblod-plugins/plugins/lmb-plugin';
|
|
8
|
-
import
|
|
8
|
+
import Electee from '@lblod/ember-rdfa-editor-lblod-plugins/models/electee';
|
|
9
9
|
import { v4 as uuidv4 } from 'uuid';
|
|
10
10
|
import {
|
|
11
11
|
DCT,
|
|
@@ -16,10 +16,12 @@ import { replaceSelectionWithAndSelectNode } from '@lblod/ember-rdfa-editor-lblo
|
|
|
16
16
|
import { service } from '@ember/service';
|
|
17
17
|
import IntlService from 'ember-intl/services/intl';
|
|
18
18
|
import { sayDataFactory } from '@lblod/ember-rdfa-editor/core/say-data-factory';
|
|
19
|
+
import { Person } from '@lblod/ember-rdfa-editor-lblod-plugins/plugins/variable-plugin/variables';
|
|
19
20
|
|
|
20
21
|
interface Args {
|
|
21
22
|
controller: SayController;
|
|
22
23
|
config: LmbPluginConfig;
|
|
24
|
+
templateMode?: boolean;
|
|
23
25
|
}
|
|
24
26
|
|
|
25
27
|
export default class LmbPluginInsertComponent extends Component<Args> {
|
|
@@ -44,11 +46,21 @@ export default class LmbPluginInsertComponent extends Component<Args> {
|
|
|
44
46
|
}
|
|
45
47
|
|
|
46
48
|
@action
|
|
47
|
-
onInsert(
|
|
48
|
-
const mappingSubject = `http://data.lblod.info/mappings/${
|
|
49
|
-
|
|
49
|
+
onInsert(electee: Electee) {
|
|
50
|
+
const mappingSubject = `http://data.lblod.info/mappings/${
|
|
51
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
52
|
+
}${uuidv4()}`;
|
|
53
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
54
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
55
|
+
}${uuidv4()}`;
|
|
50
56
|
const variableId = uuidv4();
|
|
51
57
|
|
|
58
|
+
const person: Person = {
|
|
59
|
+
uri: electee.uri,
|
|
60
|
+
firstName: electee.firstName,
|
|
61
|
+
lastName: electee.lastName,
|
|
62
|
+
};
|
|
63
|
+
|
|
52
64
|
const label = this.intl.t('variable.person.label', {
|
|
53
65
|
locale: this.controller.documentLanguage,
|
|
54
66
|
});
|
|
@@ -56,7 +68,7 @@ export default class LmbPluginInsertComponent extends Component<Args> {
|
|
|
56
68
|
subject: mappingSubject,
|
|
57
69
|
rdfaNodeType: 'resource',
|
|
58
70
|
__rdfaId: variableId,
|
|
59
|
-
|
|
71
|
+
value: person,
|
|
60
72
|
properties: [
|
|
61
73
|
{
|
|
62
74
|
predicate: RDF('type').full,
|
|
@@ -11,24 +11,8 @@
|
|
|
11
11
|
</th>
|
|
12
12
|
<th>
|
|
13
13
|
<Common::Sort::SortableTableHeader
|
|
14
|
-
@field='
|
|
15
|
-
@label={{t 'lmb-plugin.modal.fields.
|
|
16
|
-
@sort={{@sort}}
|
|
17
|
-
@setSort={{@setSort}}
|
|
18
|
-
/>
|
|
19
|
-
</th>
|
|
20
|
-
<th>
|
|
21
|
-
<Common::Sort::SortableTableHeader
|
|
22
|
-
@field='fractie'
|
|
23
|
-
@label={{t 'lmb-plugin.modal.fields.fractie'}}
|
|
24
|
-
@sort={{@sort}}
|
|
25
|
-
@setSort={{@setSort}}
|
|
26
|
-
/>
|
|
27
|
-
</th>
|
|
28
|
-
<th>
|
|
29
|
-
<Common::Sort::SortableTableHeader
|
|
30
|
-
@field='role'
|
|
31
|
-
@label={{t 'lmb-plugin.modal.fields.role'}}
|
|
14
|
+
@field='kandidatenlijst'
|
|
15
|
+
@label={{t 'lmb-plugin.modal.fields.kandidatenlijst'}}
|
|
32
16
|
@sort={{@sort}}
|
|
33
17
|
@setSort={{@setSort}}
|
|
34
18
|
/>
|
|
@@ -39,7 +23,7 @@
|
|
|
39
23
|
<:body>
|
|
40
24
|
{{#if @services.isRunning}}
|
|
41
25
|
<tr>
|
|
42
|
-
<td colspan='
|
|
26
|
+
<td colspan='100%'>
|
|
43
27
|
<AuLoader @centered={{true}}>
|
|
44
28
|
{{t 'common.search.loading'}}
|
|
45
29
|
</AuLoader>
|
|
@@ -50,9 +34,13 @@
|
|
|
50
34
|
{{#each @services.value.results as |row|}}
|
|
51
35
|
<tr>
|
|
52
36
|
<td>{{row.fullName}}</td>
|
|
53
|
-
<td>
|
|
54
|
-
|
|
55
|
-
|
|
37
|
+
<td>
|
|
38
|
+
{{#if row.kandidatenlijst}}
|
|
39
|
+
{{row.kandidatenlijst}}
|
|
40
|
+
{{else}}
|
|
41
|
+
<span class='au-u-italic'>{{t 'common.not-applicable'}}</span>
|
|
42
|
+
{{/if}}
|
|
43
|
+
</td>
|
|
56
44
|
<td class='au-u-text-center'>
|
|
57
45
|
<AuButton {{on 'click' (fn @insert row)}}>
|
|
58
46
|
{{t 'lmb-plugin.modal.insert'}}
|
|
@@ -60,6 +48,12 @@
|
|
|
60
48
|
</td>
|
|
61
49
|
</tr>
|
|
62
50
|
{{/each}}
|
|
51
|
+
{{else}}
|
|
52
|
+
<tr>
|
|
53
|
+
<td colspan='100%'>
|
|
54
|
+
{{t 'common.search.no-results'}}
|
|
55
|
+
</td>
|
|
56
|
+
</tr>
|
|
63
57
|
{{/if}}
|
|
64
58
|
{{/if}}
|
|
65
59
|
</:body>
|
|
@@ -6,24 +6,24 @@ import { restartableTask, timeout } from 'ember-concurrency';
|
|
|
6
6
|
import { task as trackedTask } from 'reactiveweb/ember-concurrency';
|
|
7
7
|
import { LmbPluginConfig } from '@lblod/ember-rdfa-editor-lblod-plugins/plugins/lmb-plugin';
|
|
8
8
|
|
|
9
|
-
import
|
|
9
|
+
import Electee from '@lblod/ember-rdfa-editor-lblod-plugins/models/electee';
|
|
10
10
|
import {
|
|
11
11
|
FetchMandateesArgs,
|
|
12
|
-
|
|
13
|
-
} from '@lblod/ember-rdfa-editor-lblod-plugins/plugins/lmb-plugin/utils/
|
|
12
|
+
fetchElectees,
|
|
13
|
+
} from '@lblod/ember-rdfa-editor-lblod-plugins/plugins/lmb-plugin/utils/fetchElectees';
|
|
14
14
|
import {
|
|
15
15
|
BESTUURSPERIODES,
|
|
16
16
|
BestuursperiodeLabel,
|
|
17
17
|
BestuursperiodeURI,
|
|
18
18
|
} from '@lblod/ember-rdfa-editor-lblod-plugins/utils/constants';
|
|
19
19
|
import { isSome } from '@lblod/ember-rdfa-editor/utils/_private/option';
|
|
20
|
-
export type SearchSort = [keyof
|
|
20
|
+
export type SearchSort = [keyof Electee, 'ASC' | 'DESC'] | false;
|
|
21
21
|
|
|
22
22
|
interface Args {
|
|
23
23
|
config: LmbPluginConfig;
|
|
24
24
|
open: boolean;
|
|
25
25
|
closeModal: () => void;
|
|
26
|
-
onInsert: (
|
|
26
|
+
onInsert: (electee: Electee) => void;
|
|
27
27
|
}
|
|
28
28
|
interface AdminPeriodOption {
|
|
29
29
|
label: BestuursperiodeLabel;
|
|
@@ -118,7 +118,7 @@ export default class LmbPluginSearchModalComponent extends Component<Args> {
|
|
|
118
118
|
}
|
|
119
119
|
|
|
120
120
|
try {
|
|
121
|
-
const result = await
|
|
121
|
+
const result = await fetchElectees({
|
|
122
122
|
endpoint,
|
|
123
123
|
searchString,
|
|
124
124
|
page,
|
|
@@ -127,14 +127,14 @@ export default class LmbPluginSearchModalComponent extends Component<Args> {
|
|
|
127
127
|
period,
|
|
128
128
|
adminUnitSearch,
|
|
129
129
|
});
|
|
130
|
-
const { count,
|
|
130
|
+
const { count, electees } = result;
|
|
131
131
|
|
|
132
132
|
return {
|
|
133
|
-
results:
|
|
133
|
+
results: electees,
|
|
134
134
|
totalCount: count,
|
|
135
135
|
};
|
|
136
136
|
} catch (err) {
|
|
137
|
-
console.error('Got an error fetching
|
|
137
|
+
console.error('Got an error fetching electees', err);
|
|
138
138
|
this.error = err;
|
|
139
139
|
}
|
|
140
140
|
return {
|
|
@@ -182,8 +182,8 @@ export default class LmbPluginSearchModalComponent extends Component<Args> {
|
|
|
182
182
|
++this.pageNumber;
|
|
183
183
|
}
|
|
184
184
|
@action
|
|
185
|
-
async onInsert(
|
|
186
|
-
this.args.onInsert(
|
|
185
|
+
async onInsert(electee: Electee) {
|
|
186
|
+
this.args.onInsert(electee);
|
|
187
187
|
await this.closeModal();
|
|
188
188
|
}
|
|
189
189
|
}
|
|
@@ -54,6 +54,7 @@ interface Signature {
|
|
|
54
54
|
controller: SayController;
|
|
55
55
|
config: LocationPluginConfig;
|
|
56
56
|
defaultMunicipality?: string;
|
|
57
|
+
templateMode?: boolean;
|
|
57
58
|
};
|
|
58
59
|
Element: HTMLLIElement;
|
|
59
60
|
}
|
|
@@ -194,6 +195,7 @@ export default class LocationPluginInsertComponent extends Component<Signature>
|
|
|
194
195
|
this.intl.t('location-plugin.default-label', {
|
|
195
196
|
locale: this.documentLanguage,
|
|
196
197
|
}),
|
|
198
|
+
this.args.templateMode,
|
|
197
199
|
);
|
|
198
200
|
}
|
|
199
201
|
this.modalOpen = true;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import AuAlert from '@appuniversum/ember-appuniversum/components/au-alert';
|
|
1
2
|
import AuIcon from '@appuniversum/ember-appuniversum/components/au-icon';
|
|
3
|
+
import { AlertTriangleIcon } from '@appuniversum/ember-appuniversum/components/icons/alert-triangle';
|
|
2
4
|
|
|
3
5
|
import { UserIcon } from '@appuniversum/ember-appuniversum/components/icons/user';
|
|
4
6
|
import { service } from '@ember/service';
|
|
@@ -45,12 +47,19 @@ export default class MandateeTableNode extends Component<Sig> {
|
|
|
45
47
|
/>
|
|
46
48
|
<div>
|
|
47
49
|
<h6 class='say-mandatee-table__title'>{{this.title}}</h6>
|
|
48
|
-
<p class='say-mandatee-table__warning'>
|
|
49
|
-
{{this.warning}}
|
|
50
|
-
</p>
|
|
51
50
|
</div>
|
|
52
51
|
</div>
|
|
53
|
-
<div class='say-mandatee-table-content'>
|
|
52
|
+
<div class='say-mandatee-table-content'>
|
|
53
|
+
<AuAlert
|
|
54
|
+
class='say-mandatee-table__warning'
|
|
55
|
+
@icon={{AlertTriangleIcon}}
|
|
56
|
+
@skin='warning'
|
|
57
|
+
@size='small'
|
|
58
|
+
>
|
|
59
|
+
{{this.warning}}
|
|
60
|
+
</AuAlert>
|
|
61
|
+
{{yield}}
|
|
62
|
+
</div>
|
|
54
63
|
</div>
|
|
55
64
|
</template>
|
|
56
65
|
}
|
|
@@ -5,7 +5,6 @@ import { tracked } from '@glimmer/tracking';
|
|
|
5
5
|
import { SayView, Schema } from '@lblod/ember-rdfa-editor';
|
|
6
6
|
import { redacted } from '@lblod/ember-rdfa-editor-lblod-plugins/plugins/confidentiality-plugin';
|
|
7
7
|
import NestedProsemirror from '@lblod/ember-rdfa-editor-lblod-plugins/utils/nested-prosemirror';
|
|
8
|
-
import { unwrap } from '@lblod/ember-rdfa-editor-lblod-plugins/utils/option';
|
|
9
8
|
import { color } from '@lblod/ember-rdfa-editor/plugins/color/marks/color';
|
|
10
9
|
import { highlight } from '@lblod/ember-rdfa-editor/plugins/highlight/marks/highlight';
|
|
11
10
|
import {
|
|
@@ -75,20 +74,6 @@ export default class Structure extends Component<Sig> {
|
|
|
75
74
|
return this.args.node;
|
|
76
75
|
}
|
|
77
76
|
|
|
78
|
-
get isEmpty() {
|
|
79
|
-
if (this.node.childCount > 1) {
|
|
80
|
-
return false;
|
|
81
|
-
}
|
|
82
|
-
const firstChild = unwrap(this.node.firstChild);
|
|
83
|
-
if (!firstChild.isTextblock) {
|
|
84
|
-
return false;
|
|
85
|
-
}
|
|
86
|
-
if (firstChild.childCount > 0) {
|
|
87
|
-
return false;
|
|
88
|
-
}
|
|
89
|
-
return true;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
77
|
get tag() {
|
|
93
78
|
return 'div';
|
|
94
79
|
}
|
|
@@ -188,7 +173,7 @@ export default class Structure extends Component<Sig> {
|
|
|
188
173
|
</Tag>
|
|
189
174
|
{{/let}}
|
|
190
175
|
</div>
|
|
191
|
-
<div class='say-structure__content
|
|
176
|
+
<div class='say-structure__content'>
|
|
192
177
|
{{yield}}
|
|
193
178
|
</div>
|
|
194
179
|
</div>
|
|
@@ -8,6 +8,7 @@ import IntlService from 'ember-intl/services/intl';
|
|
|
8
8
|
|
|
9
9
|
type Args = {
|
|
10
10
|
controller: SayController;
|
|
11
|
+
templateMode?: boolean;
|
|
11
12
|
};
|
|
12
13
|
|
|
13
14
|
export default class VariablePluginAddressInsertVariableComponent extends Component<Args> {
|
|
@@ -35,6 +36,7 @@ export default class VariablePluginAddressInsertVariableComponent extends Compon
|
|
|
35
36
|
this.intl.t('variable.address.label', {
|
|
36
37
|
locale: this.documentLanguage,
|
|
37
38
|
}),
|
|
39
|
+
this.args.templateMode,
|
|
38
40
|
);
|
|
39
41
|
}
|
|
40
42
|
}
|
|
@@ -9,6 +9,7 @@ import { replaceSelectionWithAddress } from './utils';
|
|
|
9
9
|
|
|
10
10
|
type Args = {
|
|
11
11
|
controller: SayController;
|
|
12
|
+
templateMode?: boolean;
|
|
12
13
|
};
|
|
13
14
|
|
|
14
15
|
export default class InsertAddressComponent extends Component<Args> {
|
|
@@ -31,6 +32,7 @@ export default class InsertAddressComponent extends Component<Args> {
|
|
|
31
32
|
this.intl.t('variable.address.label', {
|
|
32
33
|
locale: this.documentLanguage,
|
|
33
34
|
}),
|
|
35
|
+
this.args.templateMode,
|
|
34
36
|
);
|
|
35
37
|
}
|
|
36
38
|
|
|
@@ -10,9 +10,14 @@ import { v4 as uuidv4 } from 'uuid';
|
|
|
10
10
|
export function replaceSelectionWithAddress(
|
|
11
11
|
controller: SayController,
|
|
12
12
|
label?: string,
|
|
13
|
+
templateMode?: boolean,
|
|
13
14
|
) {
|
|
14
|
-
const mappingResource = `http://data.lblod.info/mappings/${
|
|
15
|
-
|
|
15
|
+
const mappingResource = `http://data.lblod.info/mappings/${
|
|
16
|
+
templateMode ? '--ref-uuid4-' : ''
|
|
17
|
+
}${uuidv4()}`;
|
|
18
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
19
|
+
templateMode ? '--ref-uuid4-' : ''
|
|
20
|
+
}${uuidv4()}`;
|
|
16
21
|
|
|
17
22
|
controller.withTransaction((tr) => {
|
|
18
23
|
tr.replaceSelectionWith(
|
|
@@ -23,6 +23,7 @@ import LabelInput from '@lblod/ember-rdfa-editor-lblod-plugins/components/variab
|
|
|
23
23
|
|
|
24
24
|
type Args = {
|
|
25
25
|
controller: SayController;
|
|
26
|
+
templateMode?: boolean;
|
|
26
27
|
};
|
|
27
28
|
|
|
28
29
|
export default class AutoFilledVariableInsertComponent extends Component<Args> {
|
|
@@ -60,8 +61,12 @@ export default class AutoFilledVariableInsertComponent extends Component<Args> {
|
|
|
60
61
|
|
|
61
62
|
@action
|
|
62
63
|
insert() {
|
|
63
|
-
const mappingSubject = `http://data.lblod.info/mappings/${
|
|
64
|
-
|
|
64
|
+
const mappingSubject = `http://data.lblod.info/mappings/${
|
|
65
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
66
|
+
}${uuidv4()}`;
|
|
67
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
68
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
69
|
+
}${uuidv4()}`;
|
|
65
70
|
const variableId = uuidv4();
|
|
66
71
|
|
|
67
72
|
const placeholder = this.intl.t('variable.autofilled.label', {
|
|
@@ -26,6 +26,7 @@ export type CodelistInsertOptions = {
|
|
|
26
26
|
type Args = {
|
|
27
27
|
controller: SayController;
|
|
28
28
|
options: CodelistInsertOptions;
|
|
29
|
+
templateMode?: boolean;
|
|
29
30
|
};
|
|
30
31
|
|
|
31
32
|
interface SelectStyle {
|
|
@@ -88,8 +89,12 @@ export default class CodelistInsertComponent extends Component<Args> {
|
|
|
88
89
|
|
|
89
90
|
@action
|
|
90
91
|
insert() {
|
|
91
|
-
const mappingResource = `http://data.lblod.info/mappings/${
|
|
92
|
-
|
|
92
|
+
const mappingResource = `http://data.lblod.info/mappings/${
|
|
93
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
94
|
+
}${uuidv4()}`;
|
|
95
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
96
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
97
|
+
}${uuidv4()}`;
|
|
93
98
|
const codelistResource = this.selectedCodelist?.uri;
|
|
94
99
|
const label =
|
|
95
100
|
this.label ??
|
|
@@ -16,6 +16,7 @@ import { replaceSelectionWithAndSelectNode } from '@lblod/ember-rdfa-editor-lblo
|
|
|
16
16
|
|
|
17
17
|
type Args = {
|
|
18
18
|
controller: SayController;
|
|
19
|
+
templateMode?: boolean;
|
|
19
20
|
};
|
|
20
21
|
|
|
21
22
|
export default class DateInsertVariableComponent extends Component<Args> {
|
|
@@ -41,8 +42,12 @@ export default class DateInsertVariableComponent extends Component<Args> {
|
|
|
41
42
|
|
|
42
43
|
@action
|
|
43
44
|
insert() {
|
|
44
|
-
const mappingResource = `http://data.lblod.info/mappings/${
|
|
45
|
-
|
|
45
|
+
const mappingResource = `http://data.lblod.info/mappings/${
|
|
46
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
47
|
+
}${uuidv4()}`;
|
|
48
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
49
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
50
|
+
}${uuidv4()}`;
|
|
46
51
|
|
|
47
52
|
const defaultLabel = this.intl.t('variable.date.label', {
|
|
48
53
|
locale: this.documentLanguage,
|
|
@@ -15,6 +15,7 @@ import { AddIcon } from '@appuniversum/ember-appuniversum/components/icons/add';
|
|
|
15
15
|
|
|
16
16
|
type Args = {
|
|
17
17
|
controller: SayController;
|
|
18
|
+
templateMode?: boolean;
|
|
18
19
|
};
|
|
19
20
|
|
|
20
21
|
export default class DateInsertComponent extends Component<Args> {
|
|
@@ -36,9 +37,12 @@ export default class DateInsertComponent extends Component<Args> {
|
|
|
36
37
|
|
|
37
38
|
@action
|
|
38
39
|
insert() {
|
|
39
|
-
const mappingResource = `http://data.lblod.info/mappings/${
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
const mappingResource = `http://data.lblod.info/mappings/${
|
|
41
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
42
|
+
}${uuidv4()}`;
|
|
43
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
44
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
45
|
+
}${uuidv4()}`;
|
|
42
46
|
const defaultLabel = this.intl.t('variable.date.label', {
|
|
43
47
|
locale: this.documentLanguage,
|
|
44
48
|
});
|
|
@@ -14,6 +14,7 @@ export type LocationInsertOptions = {
|
|
|
14
14
|
type Args = {
|
|
15
15
|
controller: SayController;
|
|
16
16
|
options: LocationInsertOptions;
|
|
17
|
+
templateMode?: boolean;
|
|
17
18
|
};
|
|
18
19
|
|
|
19
20
|
export default class LocationInsertComponent extends Component<Args> {
|
|
@@ -44,8 +45,12 @@ export default class LocationInsertComponent extends Component<Args> {
|
|
|
44
45
|
|
|
45
46
|
@action
|
|
46
47
|
insert() {
|
|
47
|
-
const mappingResource = `http://data.lblod.info/mappings/${
|
|
48
|
-
|
|
48
|
+
const mappingResource = `http://data.lblod.info/mappings/${
|
|
49
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
50
|
+
}${uuidv4()}`;
|
|
51
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
52
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
53
|
+
}${uuidv4()}`;
|
|
49
54
|
|
|
50
55
|
const placeholder = this.intl.t('variable.location.label', {
|
|
51
56
|
locale: this.documentLanguage,
|
|
@@ -17,6 +17,7 @@ import { replaceSelectionWithAndSelectNode } from '@lblod/ember-rdfa-editor-lblo
|
|
|
17
17
|
|
|
18
18
|
type Args = {
|
|
19
19
|
controller: SayController;
|
|
20
|
+
templateMode?: boolean;
|
|
20
21
|
};
|
|
21
22
|
|
|
22
23
|
export default class NumberInsertComponent extends Component<Args> {
|
|
@@ -85,9 +86,13 @@ export default class NumberInsertComponent extends Component<Args> {
|
|
|
85
86
|
insert() {
|
|
86
87
|
if (this.numberVariableError !== '') return;
|
|
87
88
|
|
|
88
|
-
const mappingResource = `http://data.lblod.info/mappings/${
|
|
89
|
+
const mappingResource = `http://data.lblod.info/mappings/${
|
|
90
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
91
|
+
}${uuidv4()}`;
|
|
92
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
93
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
94
|
+
}${uuidv4()}`;
|
|
89
95
|
const subject = mappingResource;
|
|
90
|
-
const variableInstance = `http://data.lblod.info/variables/${uuidv4()}`;
|
|
91
96
|
|
|
92
97
|
const defaultLabel = this.intl.t('variable.number.label', {
|
|
93
98
|
locale: this.documentLanguage,
|
|
@@ -4,7 +4,8 @@ import { SayController, PNode } from '@lblod/ember-rdfa-editor';
|
|
|
4
4
|
import { NodeSelection } from '@lblod/ember-rdfa-editor';
|
|
5
5
|
import { tracked } from '@glimmer/tracking';
|
|
6
6
|
import { LmbPluginConfig } from '@lblod/ember-rdfa-editor-lblod-plugins/plugins/lmb-plugin';
|
|
7
|
-
import
|
|
7
|
+
import Electee from '@lblod/ember-rdfa-editor-lblod-plugins/models/electee';
|
|
8
|
+
import { Person } from '@lblod/ember-rdfa-editor-lblod-plugins/plugins/variable-plugin/variables/person';
|
|
8
9
|
|
|
9
10
|
type Args = {
|
|
10
11
|
controller: SayController;
|
|
@@ -44,12 +45,11 @@ export default class PersonEditComponent extends Component<Args> {
|
|
|
44
45
|
|
|
45
46
|
get isEditing() {
|
|
46
47
|
const personNode = this.selectedPersonNode;
|
|
47
|
-
return !!personNode?.node.attrs.
|
|
48
|
+
return !!personNode?.node.attrs.value;
|
|
48
49
|
}
|
|
49
50
|
|
|
50
51
|
@action
|
|
51
52
|
openModal() {
|
|
52
|
-
console.log('Open modal!!!');
|
|
53
53
|
this.controller.focus();
|
|
54
54
|
this.showModal = true;
|
|
55
55
|
}
|
|
@@ -59,16 +59,16 @@ export default class PersonEditComponent extends Component<Args> {
|
|
|
59
59
|
this.showModal = false;
|
|
60
60
|
}
|
|
61
61
|
@action
|
|
62
|
-
onInsert(
|
|
62
|
+
onInsert(electee: Electee) {
|
|
63
63
|
const personNode = this.selectedPersonNode as PersonNode;
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
)
|
|
71
|
-
|
|
64
|
+
const person: Person = {
|
|
65
|
+
uri: electee.uri,
|
|
66
|
+
firstName: electee.firstName,
|
|
67
|
+
lastName: electee.lastName,
|
|
68
|
+
};
|
|
69
|
+
this.controller.withTransaction((tr) =>
|
|
70
|
+
tr.setNodeAttribute(personNode.pos, 'value', person),
|
|
71
|
+
);
|
|
72
72
|
this.closeModal();
|
|
73
73
|
}
|
|
74
74
|
}
|
|
@@ -15,6 +15,7 @@ import { replaceSelectionWithAndSelectNode } from '@lblod/ember-rdfa-editor-lblo
|
|
|
15
15
|
|
|
16
16
|
type Args = {
|
|
17
17
|
controller: SayController;
|
|
18
|
+
templateMode?: boolean;
|
|
18
19
|
};
|
|
19
20
|
|
|
20
21
|
export default class PersonVariableInsertComponent extends Component<Args> {
|
|
@@ -40,8 +41,12 @@ export default class PersonVariableInsertComponent extends Component<Args> {
|
|
|
40
41
|
|
|
41
42
|
@action
|
|
42
43
|
insert() {
|
|
43
|
-
const mappingSubject = `http://data.lblod.info/mappings/${
|
|
44
|
-
|
|
44
|
+
const mappingSubject = `http://data.lblod.info/mappings/${
|
|
45
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
46
|
+
}${uuidv4()}`;
|
|
47
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
48
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
49
|
+
}${uuidv4()}`;
|
|
45
50
|
const variableId = uuidv4();
|
|
46
51
|
|
|
47
52
|
const placeholder = this.intl.t('variable.person.label', {
|
|
@@ -3,7 +3,7 @@ import Component from '@glimmer/component';
|
|
|
3
3
|
import { PNode, SayController } from '@lblod/ember-rdfa-editor';
|
|
4
4
|
import { getOutgoingTriple } from '@lblod/ember-rdfa-editor-lblod-plugins/utils/namespace';
|
|
5
5
|
import { EXT } from '@lblod/ember-rdfa-editor-lblod-plugins/utils/constants';
|
|
6
|
-
import
|
|
6
|
+
import { Person } from '@lblod/ember-rdfa-editor-lblod-plugins/plugins/variable-plugin/variables';
|
|
7
7
|
|
|
8
8
|
type Args = {
|
|
9
9
|
getPos: () => number | undefined;
|
|
@@ -20,22 +20,22 @@ export default class PersonNodeviewComponent extends Component<Args> {
|
|
|
20
20
|
return this.args.node;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
get
|
|
24
|
-
return this.node.attrs.
|
|
23
|
+
get person() {
|
|
24
|
+
return this.node.attrs.value as Person | null;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
get label() {
|
|
28
|
-
if (this.
|
|
28
|
+
if (this.person) return '';
|
|
29
29
|
return getOutgoingTriple(this.node.attrs, EXT('label'))?.object.value;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
get filled() {
|
|
33
|
-
return !!this.
|
|
33
|
+
return !!this.person;
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
get content() {
|
|
37
|
-
if (this.
|
|
38
|
-
return this.
|
|
37
|
+
if (this.person) {
|
|
38
|
+
return `${this.person.firstName} ${this.person.lastName}`;
|
|
39
39
|
} else {
|
|
40
40
|
return this.label;
|
|
41
41
|
}
|
|
@@ -15,6 +15,7 @@ import { replaceSelectionWithAndSelectNode } from '@lblod/ember-rdfa-editor-lblo
|
|
|
15
15
|
|
|
16
16
|
type Args = {
|
|
17
17
|
controller: SayController;
|
|
18
|
+
templateMode?: boolean;
|
|
18
19
|
};
|
|
19
20
|
|
|
20
21
|
export default class TextVariableInsertComponent extends Component<Args> {
|
|
@@ -40,8 +41,12 @@ export default class TextVariableInsertComponent extends Component<Args> {
|
|
|
40
41
|
|
|
41
42
|
@action
|
|
42
43
|
insert() {
|
|
43
|
-
const mappingSubject = `http://data.lblod.info/mappings/${
|
|
44
|
-
|
|
44
|
+
const mappingSubject = `http://data.lblod.info/mappings/${
|
|
45
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
46
|
+
}${uuidv4()}`;
|
|
47
|
+
const variableInstance = `http://data.lblod.info/variables/${
|
|
48
|
+
this.args.templateMode ? '--ref-uuid4-' : ''
|
|
49
|
+
}${uuidv4()}`;
|
|
45
50
|
const variableId = uuidv4();
|
|
46
51
|
|
|
47
52
|
const placeholder = this.intl.t('variable.text.label', {
|