@lblod/ember-rdfa-editor-lblod-plugins 0.2.0 → 0.3.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/config/environment.js +4 -0
- package/dist/_app_/components/roadsign-regulation-plugin/expanded-measure.js +1 -0
- package/dist/_app_/components/roadsign-regulation-plugin/measure-template.js +1 -0
- package/dist/_app_/components/roadsign-regulation-plugin/roadsign-regulation-card.js +1 -0
- package/dist/_app_/components/roadsign-regulation-plugin/roadsigns-modal.js +1 -0
- package/dist/_app_/components/roadsign-regulation-plugin/roadsigns-pagination.js +1 -0
- package/dist/_app_/components/roadsign-regulation-plugin/roadsigns-table.js +1 -0
- package/dist/_app_/helpers/limit-text.js +1 -0
- package/dist/_app_/models/instruction.js +1 -0
- package/dist/_app_/models/measure.js +1 -0
- package/dist/_app_/models/sign.js +1 -0
- package/dist/_app_/services/roadsign-registry.js +1 -0
- package/dist/components/roadsign-regulation-plugin/expanded-measure.js +52 -0
- package/dist/components/roadsign-regulation-plugin/expanded-measure.js.map +1 -0
- package/dist/components/roadsign-regulation-plugin/measure-template.js +42 -0
- package/dist/components/roadsign-regulation-plugin/measure-template.js.map +1 -0
- package/dist/components/roadsign-regulation-plugin/roadsign-regulation-card.js +82 -0
- package/dist/components/roadsign-regulation-plugin/roadsign-regulation-card.js.map +1 -0
- package/dist/components/roadsign-regulation-plugin/roadsigns-modal.js +251 -0
- package/dist/components/roadsign-regulation-plugin/roadsigns-modal.js.map +1 -0
- package/dist/components/roadsign-regulation-plugin/roadsigns-pagination.js +71 -0
- package/dist/components/roadsign-regulation-plugin/roadsigns-pagination.js.map +1 -0
- package/dist/components/roadsign-regulation-plugin/roadsigns-table.js +36 -0
- package/dist/components/roadsign-regulation-plugin/roadsigns-table.js.map +1 -0
- package/dist/components/table-of-contents-plugin/inline-components/table-of-contents.js +1 -1
- package/dist/components/template-variable-plugin/template-variable-card.js +1 -1
- package/dist/{constants-ecdac21d.js → constants-c77fd478.js} +4 -2
- package/dist/{constants-ecdac21d.js.map → constants-c77fd478.js.map} +1 -1
- package/dist/helpers/limit-text.js +12 -0
- package/dist/helpers/limit-text.js.map +1 -0
- package/dist/includeInstructions-a32c24e6.js +10 -0
- package/dist/includeInstructions-a32c24e6.js.map +1 -0
- package/dist/initializers/plugin-initializer.js +30 -1
- package/dist/initializers/plugin-initializer.js.map +1 -1
- package/dist/models/instruction.js +18 -0
- package/dist/models/instruction.js.map +1 -0
- package/dist/models/measure.js +41 -0
- package/dist/models/measure.js.map +1 -0
- package/dist/models/sign.js +38 -0
- package/dist/models/sign.js.map +1 -0
- package/dist/services/roadsign-registry.js +294 -0
- package/dist/services/roadsign-registry.js.map +1 -0
- package/package.json +13 -1
package/config/environment.js
CHANGED
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
// eslint-disable-next-line no-undef
|
|
4
4
|
module.exports = function (/* environment, appConfig */) {
|
|
5
5
|
return {
|
|
6
|
+
roadsignRegulationPlugin: {
|
|
7
|
+
endpoint: 'https://dev.roadsigns.lblod.info/sparql',
|
|
8
|
+
imageBaseUrl: 'https://register.mobiliteit.vlaanderen.be/',
|
|
9
|
+
},
|
|
6
10
|
besluitTypePlugin: {
|
|
7
11
|
endpoint: 'https://centrale-vindplaats.lblod.info/sparql',
|
|
8
12
|
},
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/components/roadsign-regulation-plugin/expanded-measure";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/components/roadsign-regulation-plugin/measure-template";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/components/roadsign-regulation-plugin/roadsign-regulation-card";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/components/roadsign-regulation-plugin/roadsigns-modal";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/components/roadsign-regulation-plugin/roadsigns-pagination";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/components/roadsign-regulation-plugin/roadsigns-table";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/helpers/limit-text";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/models/instruction";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/models/measure";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/models/sign";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "@lblod/ember-rdfa-editor-lblod-plugins/services/roadsign-registry";
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { _ as _applyDecoratedDescriptor, a as _initializerDefineProperty, b as _defineProperty } from '../../_rollupPluginBabelHelpers-537ad14b.js';
|
|
2
|
+
import { setComponentTemplate } from '@ember/component';
|
|
3
|
+
import { hbs } from 'ember-cli-htmlbars';
|
|
4
|
+
import Component from '@glimmer/component';
|
|
5
|
+
import { tracked } from '@glimmer/tracking';
|
|
6
|
+
import { action } from '@ember/object';
|
|
7
|
+
import { Z as ZONAL_URI, N as NON_ZONAL_URI, P as POTENTIALLY_ZONAL_URI } from '../../constants-c77fd478.js';
|
|
8
|
+
|
|
9
|
+
var TEMPLATE = hbs("<tr class=\"au-c-data-table__detail\">\n <td colspan=\"5\" class=\"au-o-flow au-o-flow--small\">\n <AuHeading @level=\"6\" @skin=\"6\">Voeg maatregel in:</AuHeading>\n <p>\n <AuPill>\n <RoadsignRegulationPlugin::MeasureTemplate @measure={{@measure.uri}} @template={{@measure.template}} />\n </AuPill>\n </p>\n {{#if this.isPotentiallyZonal}}\n <AuHeading @level=\"6\" @skin=\"6\">Selecteer zonale geldigheid:</AuHeading>\n <div class=\"au-c-form\">\n <ul>\n <li>\n <AuControlRadio @label=\"Zonaal\" @name=\"zonal\" @value={{this.ZONAL_URI}} @identifier=\"zonal\" {{on \'change\' this.changeZonality}} />\n </li>\n <li>\n <AuControlRadio @label=\"Niet zonaal\" @name=\"zonal\" @value={{this.NON_ZONAL_URI}} @identifier=\"non-zonal\" {{on \'change\' this.changeZonality}} />\n </li>\n </ul>\n </div>\n {{/if}}\n {{#if @measure.temporal}}\n <AuHeading @level=\"6\" @skin=\"6\">Variabele signalisatie:</AuHeading>\n <div class=\"au-c-form\">\n <ul>\n <li>\n <AuControlRadio @label=\"Variabel\" @name=\"temporal\" @value={{true}} @identifier=\"true\" {{on \'change\' this.changeTemporality}} />\n </li>\n <li>\n <AuControlRadio @label=\"Niet variabel\" @name=\"temporal\" @value={{false}} @identifier=\"false\" {{on \'change\' this.changeTemporality}} />\n </li>\n </ul>\n </div>\n {{/if}}\n <AuButtonGroup>\n <AuButton {{on \'click\' this.insert}} @disabled={{this.insertButtonDisabled}}>\n Voeg in\n </AuButton>\n <AuButton @skin=\"secondary\" {{on \"click\" this.unselectRow }}>\n Annuleer\n </AuButton>\n </AuButtonGroup>\n </td>\n</tr>\n");
|
|
10
|
+
|
|
11
|
+
var _class, _descriptor, _descriptor2;
|
|
12
|
+
let ExpandedMeasureComponent = (_class = class ExpandedMeasureComponent extends Component {
|
|
13
|
+
constructor(...args) {
|
|
14
|
+
super(...args);
|
|
15
|
+
_initializerDefineProperty(this, "zonalityValue", _descriptor, this);
|
|
16
|
+
_initializerDefineProperty(this, "temporalValue", _descriptor2, this);
|
|
17
|
+
_defineProperty(this, "ZONAL_URI", ZONAL_URI);
|
|
18
|
+
_defineProperty(this, "NON_ZONAL_URI", NON_ZONAL_URI);
|
|
19
|
+
}
|
|
20
|
+
get isPotentiallyZonal() {
|
|
21
|
+
return this.args.measure.zonality === POTENTIALLY_ZONAL_URI;
|
|
22
|
+
}
|
|
23
|
+
get insertButtonDisabled() {
|
|
24
|
+
return this.isPotentiallyZonal && !this.zonalityValue;
|
|
25
|
+
}
|
|
26
|
+
changeZonality(e) {
|
|
27
|
+
this.zonalityValue = e.target.value;
|
|
28
|
+
}
|
|
29
|
+
changeTemporality(e) {
|
|
30
|
+
this.temporalValue = e.target.value;
|
|
31
|
+
}
|
|
32
|
+
insert() {
|
|
33
|
+
this.args.insert(this.args.measure, this.zonalityValue, this.temporalValue);
|
|
34
|
+
}
|
|
35
|
+
unselectRow() {
|
|
36
|
+
this.args.selectRow(this.args.measure.uri);
|
|
37
|
+
}
|
|
38
|
+
}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, "zonalityValue", [tracked], {
|
|
39
|
+
configurable: true,
|
|
40
|
+
enumerable: true,
|
|
41
|
+
writable: true,
|
|
42
|
+
initializer: null
|
|
43
|
+
}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, "temporalValue", [tracked], {
|
|
44
|
+
configurable: true,
|
|
45
|
+
enumerable: true,
|
|
46
|
+
writable: true,
|
|
47
|
+
initializer: null
|
|
48
|
+
}), _applyDecoratedDescriptor(_class.prototype, "changeZonality", [action], Object.getOwnPropertyDescriptor(_class.prototype, "changeZonality"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "changeTemporality", [action], Object.getOwnPropertyDescriptor(_class.prototype, "changeTemporality"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "insert", [action], Object.getOwnPropertyDescriptor(_class.prototype, "insert"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "unselectRow", [action], Object.getOwnPropertyDescriptor(_class.prototype, "unselectRow"), _class.prototype)), _class);
|
|
49
|
+
setComponentTemplate(TEMPLATE, ExpandedMeasureComponent);
|
|
50
|
+
|
|
51
|
+
export { ExpandedMeasureComponent as default };
|
|
52
|
+
//# sourceMappingURL=expanded-measure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expanded-measure.js","sources":["../../../src/components/roadsign-regulation-plugin/expanded-measure.hbs.js","../../../src/components/roadsign-regulation-plugin/expanded-measure.js"],"sourcesContent":["import { hbs } from 'ember-cli-htmlbars';\nexport default hbs(\"<tr class=\\\"au-c-data-table__detail\\\">\\n <td colspan=\\\"5\\\" class=\\\"au-o-flow au-o-flow--small\\\">\\n <AuHeading @level=\\\"6\\\" @skin=\\\"6\\\">Voeg maatregel in:</AuHeading>\\n <p>\\n <AuPill>\\n <RoadsignRegulationPlugin::MeasureTemplate @measure={{@measure.uri}} @template={{@measure.template}} />\\n </AuPill>\\n </p>\\n {{#if this.isPotentiallyZonal}}\\n <AuHeading @level=\\\"6\\\" @skin=\\\"6\\\">Selecteer zonale geldigheid:</AuHeading>\\n <div class=\\\"au-c-form\\\">\\n <ul>\\n <li>\\n <AuControlRadio @label=\\\"Zonaal\\\" @name=\\\"zonal\\\" @value={{this.ZONAL_URI}} @identifier=\\\"zonal\\\" {{on \\'change\\' this.changeZonality}} />\\n </li>\\n <li>\\n <AuControlRadio @label=\\\"Niet zonaal\\\" @name=\\\"zonal\\\" @value={{this.NON_ZONAL_URI}} @identifier=\\\"non-zonal\\\" {{on \\'change\\' this.changeZonality}} />\\n </li>\\n </ul>\\n </div>\\n {{/if}}\\n {{#if @measure.temporal}}\\n <AuHeading @level=\\\"6\\\" @skin=\\\"6\\\">Variabele signalisatie:</AuHeading>\\n <div class=\\\"au-c-form\\\">\\n <ul>\\n <li>\\n <AuControlRadio @label=\\\"Variabel\\\" @name=\\\"temporal\\\" @value={{true}} @identifier=\\\"true\\\" {{on \\'change\\' this.changeTemporality}} />\\n </li>\\n <li>\\n <AuControlRadio @label=\\\"Niet variabel\\\" @name=\\\"temporal\\\" @value={{false}} @identifier=\\\"false\\\" {{on \\'change\\' this.changeTemporality}} />\\n </li>\\n </ul>\\n </div>\\n {{/if}}\\n <AuButtonGroup>\\n <AuButton {{on \\'click\\' this.insert}} @disabled={{this.insertButtonDisabled}}>\\n Voeg in\\n </AuButton>\\n <AuButton @skin=\\\"secondary\\\" {{on \\\"click\\\" this.unselectRow }}>\\n Annuleer\\n </AuButton>\\n </AuButtonGroup>\\n </td>\\n</tr>\\n\")","import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport {\n NON_ZONAL_URI,\n POTENTIALLY_ZONAL_URI,\n ZONAL_URI,\n} from '../../constants';\n\nexport default class ExpandedMeasureComponent extends Component {\n @tracked zonalityValue;\n @tracked temporalValue;\n ZONAL_URI = ZONAL_URI;\n NON_ZONAL_URI = NON_ZONAL_URI;\n get isPotentiallyZonal() {\n return this.args.measure.zonality === POTENTIALLY_ZONAL_URI;\n }\n get insertButtonDisabled() {\n return this.isPotentiallyZonal && !this.zonalityValue;\n }\n\n @action\n changeZonality(e) {\n this.zonalityValue = e.target.value;\n }\n @action\n changeTemporality(e) {\n this.temporalValue = e.target.value;\n }\n @action\n insert() {\n this.args.insert(this.args.measure, this.zonalityValue, this.temporalValue);\n }\n @action\n unselectRow() {\n this.args.selectRow(this.args.measure.uri);\n }\n}\n"],"names":["hbs","ExpandedMeasureComponent","Component","ZONAL_URI","NON_ZONAL_URI","isPotentiallyZonal","args","measure","zonality","POTENTIALLY_ZONAL_URI","insertButtonDisabled","zonalityValue","changeZonality","e","target","value","changeTemporality","temporalValue","insert","unselectRow","selectRow","uri","tracked","action"],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { _ as _applyDecoratedDescriptor, a as _initializerDefineProperty } from '../../_rollupPluginBabelHelpers-537ad14b.js';
|
|
2
|
+
import { setComponentTemplate } from '@ember/component';
|
|
3
|
+
import { hbs } from 'ember-cli-htmlbars';
|
|
4
|
+
import Component from '@glimmer/component';
|
|
5
|
+
import { inject } from '@ember/service';
|
|
6
|
+
import { task } from 'ember-concurrency';
|
|
7
|
+
import { tracked } from '@glimmer/tracking';
|
|
8
|
+
import { i as includeInstructions } from '../../includeInstructions-a32c24e6.js';
|
|
9
|
+
|
|
10
|
+
var TEMPLATE = hbs("{{#if @limitText}}\n {{limit-text this.template}}\n{{else}}\n {{this.template}}\n{{/if}}\n");
|
|
11
|
+
|
|
12
|
+
var _class, _descriptor, _descriptor2;
|
|
13
|
+
let MeasureTemplateComponent = (_class = class MeasureTemplateComponent extends Component {
|
|
14
|
+
constructor() {
|
|
15
|
+
super(...arguments);
|
|
16
|
+
_initializerDefineProperty(this, "roadsignRegistry", _descriptor, this);
|
|
17
|
+
_initializerDefineProperty(this, "template", _descriptor2, this);
|
|
18
|
+
this.template = this.args.template;
|
|
19
|
+
this.fetchData.perform();
|
|
20
|
+
}
|
|
21
|
+
*fetchData() {
|
|
22
|
+
const instructions = yield this.roadsignRegistry.getInstructionsForMeasure.perform(this.args.measure);
|
|
23
|
+
let template = includeInstructions(this.args.template, instructions, this.args.annotated);
|
|
24
|
+
this.template = template;
|
|
25
|
+
}
|
|
26
|
+
}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, "roadsignRegistry", [inject], {
|
|
27
|
+
configurable: true,
|
|
28
|
+
enumerable: true,
|
|
29
|
+
writable: true,
|
|
30
|
+
initializer: null
|
|
31
|
+
}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, "template", [tracked], {
|
|
32
|
+
configurable: true,
|
|
33
|
+
enumerable: true,
|
|
34
|
+
writable: true,
|
|
35
|
+
initializer: function () {
|
|
36
|
+
return '';
|
|
37
|
+
}
|
|
38
|
+
}), _applyDecoratedDescriptor(_class.prototype, "fetchData", [task], Object.getOwnPropertyDescriptor(_class.prototype, "fetchData"), _class.prototype)), _class);
|
|
39
|
+
setComponentTemplate(TEMPLATE, MeasureTemplateComponent);
|
|
40
|
+
|
|
41
|
+
export { MeasureTemplateComponent as default };
|
|
42
|
+
//# sourceMappingURL=measure-template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"measure-template.js","sources":["../../../src/components/roadsign-regulation-plugin/measure-template.hbs.js","../../../src/components/roadsign-regulation-plugin/measure-template.js"],"sourcesContent":["import { hbs } from 'ember-cli-htmlbars';\nexport default hbs(\"{{#if @limitText}}\\n {{limit-text this.template}}\\n{{else}}\\n {{this.template}}\\n{{/if}}\\n\")","import Component from '@glimmer/component';\nimport { inject as service } from '@ember/service';\nimport { task } from 'ember-concurrency';\nimport { tracked } from '@glimmer/tracking';\nimport includeInstructions from '../../utils/roadsign-regulation-plugin/includeInstructions';\n\nexport default class MeasureTemplateComponent extends Component {\n @service roadsignRegistry;\n @tracked template = '';\n\n constructor() {\n super(...arguments);\n this.template = this.args.template;\n this.fetchData.perform();\n }\n\n @task\n *fetchData() {\n const instructions =\n yield this.roadsignRegistry.getInstructionsForMeasure.perform(\n this.args.measure\n );\n let template = includeInstructions(\n this.args.template,\n instructions,\n this.args.annotated\n );\n this.template = template;\n }\n}\n"],"names":["hbs","MeasureTemplateComponent","Component","constructor","arguments","template","args","fetchData","perform","instructions","roadsignRegistry","getInstructionsForMeasure","measure","includeInstructions","annotated","service","tracked","task"],"mappings":";;;;;;;;;AACA,eAAeA,GAAG,CAAC,8FAA8F,CAAC;;;ACGrB,IAExEC,wBAAwB,IAA9B,MAAA,GAAA,MAAMA,wBAAwB,SAASC,SAAS,CAAC;AAI9DC,EAAAA,WAAW,GAAG;IACZ,KAAK,CAAC,GAAGC,SAAS,CAAC,CAAA;AAAC,IAAA,0BAAA,CAAA,IAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,IAAA,CAAA,CAAA;AAAA,IAAA,0BAAA,CAAA,IAAA,EAAA,UAAA,EAAA,YAAA,EAAA,IAAA,CAAA,CAAA;AACpB,IAAA,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACC,IAAI,CAACD,QAAQ,CAAA;AAClC,IAAA,IAAI,CAACE,SAAS,CAACC,OAAO,EAAE,CAAA;AAC1B,GAAA;AAEA,EAAA,CACCD,SAAS,GAAG;AACX,IAAA,MAAME,YAAY,GAChB,MAAM,IAAI,CAACC,gBAAgB,CAACC,yBAAyB,CAACH,OAAO,CAC3D,IAAI,CAACF,IAAI,CAACM,OAAO,CAClB,CAAA;AACH,IAAA,IAAIP,QAAQ,GAAGQ,mBAAmB,CAChC,IAAI,CAACP,IAAI,CAACD,QAAQ,EAClBI,YAAY,EACZ,IAAI,CAACH,IAAI,CAACQ,SAAS,CACpB,CAAA;IACD,IAAI,CAACT,QAAQ,GAAGA,QAAQ,CAAA;AAC1B,GAAA;AACF,CAAC,kFAtBEU,MAAO,CAAA,EAAA;AAAA,EAAA,YAAA,EAAA,IAAA;AAAA,EAAA,UAAA,EAAA,IAAA;AAAA,EAAA,QAAA,EAAA,IAAA;AAAA,EAAA,WAAA,EAAA,IAAA;AAAA,CAAA,CAAA,EAAA,YAAA,GAAA,yBAAA,CAAA,MAAA,CAAA,SAAA,EAAA,UAAA,EAAA,CACPC,OAAO,CAAA,EAAA;AAAA,EAAA,YAAA,EAAA,IAAA;AAAA,EAAA,UAAA,EAAA,IAAA;AAAA,EAAA,QAAA,EAAA,IAAA;AAAA,EAAA,WAAA,EAAA,YAAA;AAAA,IAAA,OAAY,EAAE,CAAA;AAAA,GAAA;AAAA,CAAA,CAAA,EAAA,yBAAA,CAAA,MAAA,CAAA,SAAA,EAAA,WAAA,EAAA,CAQrBC,IAAI,CAAA,EAAA,MAAA,CAAA,wBAAA,CAAA,MAAA,CAAA,SAAA,EAAA,WAAA,CAAA,EAAA,MAAA,CAAA,SAAA,CAAA,GAAA,MAAA,EAAA;AAVsC,oBAAA,CAAA,QAAA,EAAA,wBAAA,CAAA;;;;"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { _ as _applyDecoratedDescriptor, a as _initializerDefineProperty } from '../../_rollupPluginBabelHelpers-537ad14b.js';
|
|
2
|
+
import { setComponentTemplate } from '@ember/component';
|
|
3
|
+
import { hbs } from 'ember-cli-htmlbars';
|
|
4
|
+
import { action } from '@ember/object';
|
|
5
|
+
import Component from '@glimmer/component';
|
|
6
|
+
import { tracked } from '@glimmer/tracking';
|
|
7
|
+
|
|
8
|
+
var TEMPLATE = hbs("<AuList::Item>\n <AuButton\n @skin=\"link\"\n @icon=\"add\"\n @iconAlignment=\"left\"\n @disabled={{if this.showCard false true}}\n {{on \"click\" this.toggleModal}}\n >\n Voeg mobiliteitsmaatregel in\n </AuButton>\n</AuList::Item>\n<RoadsignRegulationPlugin::RoadsignsModal @modalOpen={{this.modalOpen}} @closeModal={{this.toggleModal}} @controller={{@controller}} @insert={{this.insert}}/>\n");
|
|
9
|
+
|
|
10
|
+
var _class, _descriptor, _descriptor2;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Card displaying a hint of the Date plugin
|
|
14
|
+
*
|
|
15
|
+
* @module editor-roadsign-regulation-plugin
|
|
16
|
+
* @class RoadsignRegulationCard
|
|
17
|
+
* @extends Ember.Component
|
|
18
|
+
*/
|
|
19
|
+
const acceptedTypes = ['>https://data.vlaanderen.be/id/concept/BesluitType/4d8f678a-6fa4-4d5f-a2a1-80974e43bf34', '>https://data.vlaanderen.be/id/concept/BesluitType/7d95fd2e-3cc9-4a4c-a58e-0fbc408c2f9b', '>https://data.vlaanderen.be/id/concept/BesluitType/3bba9f10-faff-49a6-acaa-85af7f2199a3', '>https://data.vlaanderen.be/id/concept/BesluitType/0d1278af-b69e-4152-a418-ec5cfd1c7d0b', '>https://data.vlaanderen.be/id/concept/BesluitType/e8afe7c5-9640-4db8-8f74-3f023bec3241', '>https://data.vlaanderen.be/id/concept/BesluitType/256bd04a-b74b-4f2a-8f5d-14dda4765af9', '>https://data.vlaanderen.be/id/concept/BesluitType/67378dd0-5413-474b-8996-d992ef81637a'];
|
|
20
|
+
let RoadsignRegulationCard = (_class = class RoadsignRegulationCard extends Component {
|
|
21
|
+
constructor() {
|
|
22
|
+
super(...arguments);
|
|
23
|
+
_initializerDefineProperty(this, "modalOpen", _descriptor, this);
|
|
24
|
+
_initializerDefineProperty(this, "showCard", _descriptor2, this);
|
|
25
|
+
this.args.controller.onEvent('selectionChanged', this.selectionChanged);
|
|
26
|
+
}
|
|
27
|
+
toggleModal() {
|
|
28
|
+
this.modalOpen = !this.modalOpen;
|
|
29
|
+
}
|
|
30
|
+
insert(html) {
|
|
31
|
+
const selectedRange = this.args.controller.selection.lastRange;
|
|
32
|
+
if (!selectedRange) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const limitedDatastore = this.args.controller.datastore.limitToRange(selectedRange, 'rangeIsInside');
|
|
36
|
+
const besluit = limitedDatastore.match(null, 'a').transformDataset((dataset, termConverter) => {
|
|
37
|
+
return dataset.filter(quad => acceptedTypes.map(type => termConverter(type).value).includes(quad.object.value));
|
|
38
|
+
}).asSubjectNodes().next().value;
|
|
39
|
+
const besluitNode = [...besluit.nodes][0];
|
|
40
|
+
let articleContainerNode;
|
|
41
|
+
for (let child of besluitNode.children) {
|
|
42
|
+
if (child.attributeMap.get('property') === 'prov:value') {
|
|
43
|
+
articleContainerNode = child;
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
const range = this.args.controller.rangeFactory.fromInNode(articleContainerNode, articleContainerNode.getMaxOffset(), articleContainerNode.getMaxOffset());
|
|
48
|
+
this.args.controller.executeCommand('insert-html', html, range);
|
|
49
|
+
}
|
|
50
|
+
selectionChanged() {
|
|
51
|
+
const selectedRange = this.args.controller.selection.lastRange;
|
|
52
|
+
if (!selectedRange) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const limitedDatastore = this.args.controller.datastore.limitToRange(selectedRange, 'rangeIsInside');
|
|
56
|
+
const besluit = limitedDatastore.match(null, 'a').transformDataset((dataset, termConverter) => {
|
|
57
|
+
return dataset.filter(quad => acceptedTypes.map(type => termConverter(type).value).includes(quad.object.value));
|
|
58
|
+
}).asQuads().next().value;
|
|
59
|
+
if (besluit) {
|
|
60
|
+
this.showCard = true;
|
|
61
|
+
this.besluitUri = besluit.subject.value;
|
|
62
|
+
} else {
|
|
63
|
+
this.showCard = false;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, "modalOpen", [tracked], {
|
|
67
|
+
configurable: true,
|
|
68
|
+
enumerable: true,
|
|
69
|
+
writable: true,
|
|
70
|
+
initializer: null
|
|
71
|
+
}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, "showCard", [tracked], {
|
|
72
|
+
configurable: true,
|
|
73
|
+
enumerable: true,
|
|
74
|
+
writable: true,
|
|
75
|
+
initializer: function () {
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
}), _applyDecoratedDescriptor(_class.prototype, "toggleModal", [action], Object.getOwnPropertyDescriptor(_class.prototype, "toggleModal"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "insert", [action], Object.getOwnPropertyDescriptor(_class.prototype, "insert"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "selectionChanged", [action], Object.getOwnPropertyDescriptor(_class.prototype, "selectionChanged"), _class.prototype)), _class);
|
|
79
|
+
setComponentTemplate(TEMPLATE, RoadsignRegulationCard);
|
|
80
|
+
|
|
81
|
+
export { RoadsignRegulationCard as default };
|
|
82
|
+
//# sourceMappingURL=roadsign-regulation-card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"roadsign-regulation-card.js","sources":["../../../src/components/roadsign-regulation-plugin/roadsign-regulation-card.hbs.js","../../../src/components/roadsign-regulation-plugin/roadsign-regulation-card.js"],"sourcesContent":["import { hbs } from 'ember-cli-htmlbars';\nexport default hbs(\"<AuList::Item>\\n <AuButton\\n @skin=\\\"link\\\"\\n @icon=\\\"add\\\"\\n @iconAlignment=\\\"left\\\"\\n @disabled={{if this.showCard false true}}\\n {{on \\\"click\\\" this.toggleModal}}\\n >\\n Voeg mobiliteitsmaatregel in\\n </AuButton>\\n</AuList::Item>\\n<RoadsignRegulationPlugin::RoadsignsModal @modalOpen={{this.modalOpen}} @closeModal={{this.toggleModal}} @controller={{@controller}} @insert={{this.insert}}/>\\n\")","import { action } from '@ember/object';\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n\n/**\n * Card displaying a hint of the Date plugin\n *\n * @module editor-roadsign-regulation-plugin\n * @class RoadsignRegulationCard\n * @extends Ember.Component\n */\nconst acceptedTypes = [\n '>https://data.vlaanderen.be/id/concept/BesluitType/4d8f678a-6fa4-4d5f-a2a1-80974e43bf34',\n '>https://data.vlaanderen.be/id/concept/BesluitType/7d95fd2e-3cc9-4a4c-a58e-0fbc408c2f9b',\n '>https://data.vlaanderen.be/id/concept/BesluitType/3bba9f10-faff-49a6-acaa-85af7f2199a3',\n '>https://data.vlaanderen.be/id/concept/BesluitType/0d1278af-b69e-4152-a418-ec5cfd1c7d0b',\n '>https://data.vlaanderen.be/id/concept/BesluitType/e8afe7c5-9640-4db8-8f74-3f023bec3241',\n '>https://data.vlaanderen.be/id/concept/BesluitType/256bd04a-b74b-4f2a-8f5d-14dda4765af9',\n '>https://data.vlaanderen.be/id/concept/BesluitType/67378dd0-5413-474b-8996-d992ef81637a',\n];\n\nexport default class RoadsignRegulationCard extends Component {\n @tracked modalOpen;\n @tracked showCard = false;\n\n constructor() {\n super(...arguments);\n this.args.controller.onEvent('selectionChanged', this.selectionChanged);\n }\n\n @action\n toggleModal() {\n this.modalOpen = !this.modalOpen;\n }\n\n @action\n insert(html) {\n const selectedRange = this.args.controller.selection.lastRange;\n if (!selectedRange) {\n return;\n }\n const limitedDatastore = this.args.controller.datastore.limitToRange(\n selectedRange,\n 'rangeIsInside'\n );\n const besluit = limitedDatastore\n .match(null, 'a')\n .transformDataset((dataset, termConverter) => {\n return dataset.filter((quad) =>\n acceptedTypes\n .map((type) => termConverter(type).value)\n .includes(quad.object.value)\n );\n })\n .asSubjectNodes()\n .next().value;\n const besluitNode = [...besluit.nodes][0];\n let articleContainerNode;\n for (let child of besluitNode.children) {\n if (child.attributeMap.get('property') === 'prov:value') {\n articleContainerNode = child;\n break;\n }\n }\n const range = this.args.controller.rangeFactory.fromInNode(\n articleContainerNode,\n articleContainerNode.getMaxOffset(),\n articleContainerNode.getMaxOffset()\n );\n this.args.controller.executeCommand('insert-html', html, range);\n }\n\n @action\n selectionChanged() {\n const selectedRange = this.args.controller.selection.lastRange;\n if (!selectedRange) {\n return;\n }\n const limitedDatastore = this.args.controller.datastore.limitToRange(\n selectedRange,\n 'rangeIsInside'\n );\n const besluit = limitedDatastore\n .match(null, 'a')\n .transformDataset((dataset, termConverter) => {\n return dataset.filter((quad) =>\n acceptedTypes\n .map((type) => termConverter(type).value)\n .includes(quad.object.value)\n );\n })\n .asQuads()\n .next().value;\n if (besluit) {\n this.showCard = true;\n this.besluitUri = besluit.subject.value;\n } else {\n this.showCard = false;\n }\n }\n}\n"],"names":["hbs","acceptedTypes","RoadsignRegulationCard","Component","constructor","arguments","args","controller","onEvent","selectionChanged","toggleModal","modalOpen","insert","html","selectedRange","selection","lastRange","limitedDatastore","datastore","limitToRange","besluit","match","transformDataset","dataset","termConverter","filter","quad","map","type","value","includes","object","asSubjectNodes","next","besluitNode","nodes","articleContainerNode","child","children","attributeMap","get","range","rangeFactory","fromInNode","getMaxOffset","executeCommand","asQuads","showCard","besluitUri","subject","tracked","action"],"mappings":"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"}
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
import { _ as _applyDecoratedDescriptor, b as _defineProperty, a as _initializerDefineProperty } from '../../_rollupPluginBabelHelpers-537ad14b.js';
|
|
2
|
+
import { setComponentTemplate } from '@ember/component';
|
|
3
|
+
import { hbs } from 'ember-cli-htmlbars';
|
|
4
|
+
import { action } from '@ember/object';
|
|
5
|
+
import Component from '@glimmer/component';
|
|
6
|
+
import { tracked } from '@glimmer/tracking';
|
|
7
|
+
import { restartableTask } from 'ember-concurrency';
|
|
8
|
+
import { getOwner } from '@ember/application';
|
|
9
|
+
import { v4 } from 'uuid';
|
|
10
|
+
import { inject } from '@ember/service';
|
|
11
|
+
import { i as includeInstructions } from '../../includeInstructions-a32c24e6.js';
|
|
12
|
+
import { P as POTENTIALLY_ZONAL_URI, Z as ZONAL_URI, N as NON_ZONAL_URI } from '../../constants-c77fd478.js';
|
|
13
|
+
|
|
14
|
+
var TEMPLATE = hbs("<AuModal\n class=\"au-c-modal--flush\"\n @size=\"large\"\n @modalTitle=\"Mobiliteitsmaatregel toevoegen\"\n @modalOpen={{@modalOpen}}\n @closeModal={{this.closeModal}} as |Modal| >\n <Modal.Body>\n <div class=\"au-c-body-container\">\n <div class=\"au-o-box au-u-background-gray-100\">\n <div class=\"au-o-grid au-o-grid--tiny au-o-grid--bottom\">\n <div class=\"au-o-grid__item au-u-1-4\">\n <AuLabel>\n Filter op type\n </AuLabel>\n <PowerSelect\n @renderInPlace={{true}}\n @options={{this.typeOptions}}\n @verticalPosition=\"below\"\n @searchEnabled={{true}}\n @selected={{or this.typeSelected this.categorySelected}}\n @allowClear={{true}}\n @onChange={{this.selectTypeOrCategory}}\n as |option|>\n {{option.label}}\n </PowerSelect>\n </div>\n <div class=\"au-o-grid__item au-u-1-4\">\n <AuLabel>\n Filter op code\n </AuLabel>\n <PowerSelect\n @renderInPlace={{true}}\n @verticalPosition=\"below\"\n @searchEnabled={{true}}\n @search={{this.searchCodes}}\n @selected={{this.selectedCode}}\n @allowClear={{true}}\n @onChange={{this.changeCode}}\n as |option|>\n {{option.label}}\n </PowerSelect>\n </div>\n <div class=\"au-o-grid__item au-u-1-4\">\n <AuLabel>\n Combineer met code\n </AuLabel>\n <PowerSelectMultiple\n @renderInPlace={{true}}\n @verticalPosition=\"below\"\n @searchEnabled={{true}}\n @searchField=\"label\"\n @selected={{this.selectedCodeCombination}}\n @allowClear={{true}}\n @onChange={{this.changeCodeCombination}}\n @options={{this.codeCombinationOptions}}\n @disabled={{not this.selectedCode}}\n as |option|>\n {{option.label}}\n </PowerSelectMultiple>\n </div>\n <div class=\"au-o-grid__item au-u-1-4\">\n <AuLabel>\n Filter op zonale geldigheid\n </AuLabel>\n <PowerSelect\n @renderInPlace={{true}}\n @options={{this.zonalityOptions}}\n @verticalPosition=\"below\"\n @searchEnabled={{false}}\n @selected={{this.zonalitySelected}}\n @allowClear={{true}}\n @onChange={{this.selectZonality}}\n as |option|>\n {{option.label}}\n </PowerSelect>\n </div>\n </div>\n </div>\n <div class=\"au-c-body-container\">\n <RoadsignRegulationPlugin::RoadsignsTable\n @content={{this.tableData}}\n @isLoading={{this.fetchSigns.isRunning}}\n @insert={{this.insertHtml}}\n @count={{this.count}}\n @goToPage={{this.goToPage}}\n @pageSize={{this.pageSize}}\n @pageStart={{this.pageStart}}\n />\n </div>\n </div>\n </Modal.Body>\n</AuModal>\n");
|
|
15
|
+
|
|
16
|
+
var _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11;
|
|
17
|
+
const PAGE_SIZE = 10;
|
|
18
|
+
const SIGN_TYPE_URI = 'https://data.vlaanderen.be/ns/mobiliteit#Verkeersbordconcept';
|
|
19
|
+
const ROAD_MARKING_URI = 'https://data.vlaanderen.be/ns/mobiliteit#Wegmarkeringconcept';
|
|
20
|
+
const TRAFFIC_LIGHT_URI = 'https://data.vlaanderen.be/ns/mobiliteit#Verkeerslichtconcept';
|
|
21
|
+
const measureTypes = [SIGN_TYPE_URI, ROAD_MARKING_URI, TRAFFIC_LIGHT_URI];
|
|
22
|
+
let RoadsignRegulationCard = (_class = class RoadsignRegulationCard extends Component {
|
|
23
|
+
get isNotTypeSign() {
|
|
24
|
+
if (!this.typeSelected) return true;
|
|
25
|
+
return this.typeSelected.value !== SIGN_TYPE_URI;
|
|
26
|
+
}
|
|
27
|
+
constructor() {
|
|
28
|
+
super(...arguments);
|
|
29
|
+
_defineProperty(this, "endpoint", void 0);
|
|
30
|
+
_defineProperty(this, "pageSize", PAGE_SIZE);
|
|
31
|
+
_initializerDefineProperty(this, "roadsignRegistry", _descriptor, this);
|
|
32
|
+
_initializerDefineProperty(this, "typeSelected", _descriptor2, this);
|
|
33
|
+
_initializerDefineProperty(this, "categorySelected", _descriptor3, this);
|
|
34
|
+
_initializerDefineProperty(this, "zonalityOptions", _descriptor4, this);
|
|
35
|
+
_initializerDefineProperty(this, "zonalitySelected", _descriptor5, this);
|
|
36
|
+
_initializerDefineProperty(this, "selectedCode", _descriptor6, this);
|
|
37
|
+
_initializerDefineProperty(this, "selectedCodeCombination", _descriptor7, this);
|
|
38
|
+
_initializerDefineProperty(this, "codeCombinationOptions", _descriptor8, this);
|
|
39
|
+
_initializerDefineProperty(this, "tableData", _descriptor9, this);
|
|
40
|
+
_initializerDefineProperty(this, "count", _descriptor10, this);
|
|
41
|
+
_initializerDefineProperty(this, "pageStart", _descriptor11, this);
|
|
42
|
+
const config = getOwner(this).resolveRegistration('config:environment');
|
|
43
|
+
this.endpoint = config.roadsignRegulationPlugin.endpoint;
|
|
44
|
+
this.search();
|
|
45
|
+
}
|
|
46
|
+
selectTypeOrCategory(option) {
|
|
47
|
+
if (!option) {
|
|
48
|
+
this.typeSelected = undefined;
|
|
49
|
+
this.categorySelected = undefined;
|
|
50
|
+
} else {
|
|
51
|
+
if (measureTypes.includes(option.value)) {
|
|
52
|
+
this.typeSelected = option;
|
|
53
|
+
this.categorySelected = undefined;
|
|
54
|
+
} else {
|
|
55
|
+
this.typeSelected = undefined;
|
|
56
|
+
this.categorySelected = option;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
this.selectedCode = undefined;
|
|
60
|
+
this.selectedCodeCombination = undefined;
|
|
61
|
+
this.search();
|
|
62
|
+
}
|
|
63
|
+
changeCode(value) {
|
|
64
|
+
this.selectedCode = value;
|
|
65
|
+
this.selectedCodeCombination = undefined;
|
|
66
|
+
this.fetchCodeCombinations();
|
|
67
|
+
this.search();
|
|
68
|
+
}
|
|
69
|
+
changeCodeCombination(value) {
|
|
70
|
+
this.selectedCodeCombination = value;
|
|
71
|
+
this.fetchCodeCombinations();
|
|
72
|
+
this.search();
|
|
73
|
+
}
|
|
74
|
+
changeDescription(e) {
|
|
75
|
+
this.descriptionFilter = e.target.value;
|
|
76
|
+
this.search();
|
|
77
|
+
}
|
|
78
|
+
selectCategory(value) {
|
|
79
|
+
this.categorySelected = value;
|
|
80
|
+
this.search();
|
|
81
|
+
}
|
|
82
|
+
selectZonality(value) {
|
|
83
|
+
this.zonalitySelected = value;
|
|
84
|
+
this.search();
|
|
85
|
+
}
|
|
86
|
+
closeModal() {
|
|
87
|
+
this.args.closeModal();
|
|
88
|
+
}
|
|
89
|
+
searchCodes(term) {
|
|
90
|
+
const category = this.categorySelected ? this.categorySelected.value : undefined;
|
|
91
|
+
const type = this.typeSelected ? this.typeSelected.value : undefined;
|
|
92
|
+
return this.roadsignRegistry.searchCode.perform(term, category, type);
|
|
93
|
+
}
|
|
94
|
+
async fetchCodeCombinations() {
|
|
95
|
+
let signs = [this.selectedCode.value];
|
|
96
|
+
if (this.selectedCodeCombination) {
|
|
97
|
+
signs = [this.selectedCode.value, ...this.selectedCodeCombination.map(s => s.value)];
|
|
98
|
+
}
|
|
99
|
+
const codes = await this.roadsignRegistry.searchCode.perform(undefined, undefined, undefined, signs);
|
|
100
|
+
this.codeCombinationOptions = codes;
|
|
101
|
+
}
|
|
102
|
+
get typeOptions() {
|
|
103
|
+
return [{
|
|
104
|
+
groupName: 'Types',
|
|
105
|
+
options: [{
|
|
106
|
+
label: 'Verkeersborden',
|
|
107
|
+
value: SIGN_TYPE_URI
|
|
108
|
+
}, {
|
|
109
|
+
label: 'Wegmarkeringen',
|
|
110
|
+
value: 'https://data.vlaanderen.be/ns/mobiliteit#Wegmarkeringconcept'
|
|
111
|
+
}, {
|
|
112
|
+
label: 'Verkeerslichten',
|
|
113
|
+
value: 'https://data.vlaanderen.be/ns/mobiliteit#Verkeerslichtconcept'
|
|
114
|
+
}]
|
|
115
|
+
}, {
|
|
116
|
+
groupName: 'Categorieën',
|
|
117
|
+
options: this.roadsignRegistry.classifications
|
|
118
|
+
}];
|
|
119
|
+
}
|
|
120
|
+
*fetchSigns() {
|
|
121
|
+
let codes = [];
|
|
122
|
+
if (this.selectedCodeCombination) {
|
|
123
|
+
codes.push(...this.selectedCodeCombination);
|
|
124
|
+
}
|
|
125
|
+
if (this.selectedCode) {
|
|
126
|
+
codes.push(this.selectedCode);
|
|
127
|
+
}
|
|
128
|
+
const {
|
|
129
|
+
measures,
|
|
130
|
+
count
|
|
131
|
+
} = yield this.roadsignRegistry.fetchMeasures.perform({
|
|
132
|
+
zonality: this.zonalitySelected ? this.zonalitySelected.value : undefined,
|
|
133
|
+
type: this.typeSelected ? this.typeSelected.value : undefined,
|
|
134
|
+
codes: codes.length ? codes.map(code => code.value) : undefined,
|
|
135
|
+
category: this.categorySelected ? this.categorySelected.value : undefined,
|
|
136
|
+
pageStart: this.pageStart
|
|
137
|
+
});
|
|
138
|
+
this.tableData = measures;
|
|
139
|
+
this.count = count;
|
|
140
|
+
}
|
|
141
|
+
async insertHtml(measure, zonalityValue, temporalValue) {
|
|
142
|
+
const instructions = await this.roadsignRegistry.fetchInstructionsForMeasure.perform(measure.uri);
|
|
143
|
+
const zonality = zonalityValue ? zonalityValue : measure.zonality;
|
|
144
|
+
const html = includeInstructions(measure.annotatedTemplate, instructions, true);
|
|
145
|
+
const signsHTML = measure.signs.map(sign => {
|
|
146
|
+
const roadSignUri = 'http://data.lblod.info/verkeerstekens/' + v4();
|
|
147
|
+
return `<li style="margin-bottom:1rem;"><span property="mobiliteit:wordtAangeduidDoor" resource=${roadSignUri} typeof="mobiliteit:Verkeersbord-Verkeersteken">
|
|
148
|
+
<span property="mobiliteit:heeftVerkeersbordconcept" resource="${sign.uri}" typeof="mobiliteit:Verkeersbordconcept" style="display:flex;align-items:center;">
|
|
149
|
+
<span property="skos:prefLabel" style="padding-bottom:0;margin-left:0;margin-right:.4rem;">${sign.code}</span>
|
|
150
|
+
<span style="margin-left:0;margin-top:0;">${sign.zonality === POTENTIALLY_ZONAL_URI && zonality === ZONAL_URI ? 'met zonale geldigheid' : ''}
|
|
151
|
+
</span>
|
|
152
|
+
</span>
|
|
153
|
+
</span>
|
|
154
|
+
</li>`;
|
|
155
|
+
}).join('\n');
|
|
156
|
+
this.args.controller.executeCommand('insert-article', this.args.controller, `<div property="mobiliteit:heeftVerkeersmaatregel" typeof="mobiliteit:Mobiliteitsmaatregel" resource="http://data.lblod.info/mobiliteitsmaatregels/${v4()}">
|
|
157
|
+
<span style="display:none;" property="prov:wasDerivedFrom" resource="${measure.uri}"> </span>
|
|
158
|
+
<span style="display:none;" property="ext:zonality" resource="${zonality}"></span>
|
|
159
|
+
<span style="display:none;" property="ext:temporal" value="${measure.temporal}"></span>
|
|
160
|
+
<div property="dct:description">
|
|
161
|
+
${html}
|
|
162
|
+
<p>Dit wordt aangeduid door verkeerstekens:</p>
|
|
163
|
+
<ul style="list-style:none;">
|
|
164
|
+
${signsHTML}
|
|
165
|
+
</ul>
|
|
166
|
+
${temporalValue === 'true' ? 'Deze signalisatie is dynamisch.' : ''}
|
|
167
|
+
</div>
|
|
168
|
+
</div>
|
|
169
|
+
`);
|
|
170
|
+
this.args.closeModal();
|
|
171
|
+
}
|
|
172
|
+
goToPage(pageStart) {
|
|
173
|
+
this.pageStart = pageStart;
|
|
174
|
+
this.fetchSigns.perform();
|
|
175
|
+
}
|
|
176
|
+
search() {
|
|
177
|
+
this.pageStart = 0;
|
|
178
|
+
this.fetchSigns.perform();
|
|
179
|
+
}
|
|
180
|
+
}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, "roadsignRegistry", [inject], {
|
|
181
|
+
configurable: true,
|
|
182
|
+
enumerable: true,
|
|
183
|
+
writable: true,
|
|
184
|
+
initializer: null
|
|
185
|
+
}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, "typeSelected", [tracked], {
|
|
186
|
+
configurable: true,
|
|
187
|
+
enumerable: true,
|
|
188
|
+
writable: true,
|
|
189
|
+
initializer: null
|
|
190
|
+
}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, "categorySelected", [tracked], {
|
|
191
|
+
configurable: true,
|
|
192
|
+
enumerable: true,
|
|
193
|
+
writable: true,
|
|
194
|
+
initializer: null
|
|
195
|
+
}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, "zonalityOptions", [tracked], {
|
|
196
|
+
configurable: true,
|
|
197
|
+
enumerable: true,
|
|
198
|
+
writable: true,
|
|
199
|
+
initializer: function () {
|
|
200
|
+
return [{
|
|
201
|
+
label: 'Zonaal',
|
|
202
|
+
value: ZONAL_URI
|
|
203
|
+
}, {
|
|
204
|
+
label: 'Niet zonaal',
|
|
205
|
+
value: NON_ZONAL_URI
|
|
206
|
+
}];
|
|
207
|
+
}
|
|
208
|
+
}), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, "zonalitySelected", [tracked], {
|
|
209
|
+
configurable: true,
|
|
210
|
+
enumerable: true,
|
|
211
|
+
writable: true,
|
|
212
|
+
initializer: null
|
|
213
|
+
}), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, "selectedCode", [tracked], {
|
|
214
|
+
configurable: true,
|
|
215
|
+
enumerable: true,
|
|
216
|
+
writable: true,
|
|
217
|
+
initializer: null
|
|
218
|
+
}), _descriptor7 = _applyDecoratedDescriptor(_class.prototype, "selectedCodeCombination", [tracked], {
|
|
219
|
+
configurable: true,
|
|
220
|
+
enumerable: true,
|
|
221
|
+
writable: true,
|
|
222
|
+
initializer: null
|
|
223
|
+
}), _descriptor8 = _applyDecoratedDescriptor(_class.prototype, "codeCombinationOptions", [tracked], {
|
|
224
|
+
configurable: true,
|
|
225
|
+
enumerable: true,
|
|
226
|
+
writable: true,
|
|
227
|
+
initializer: null
|
|
228
|
+
}), _descriptor9 = _applyDecoratedDescriptor(_class.prototype, "tableData", [tracked], {
|
|
229
|
+
configurable: true,
|
|
230
|
+
enumerable: true,
|
|
231
|
+
writable: true,
|
|
232
|
+
initializer: function () {
|
|
233
|
+
return [];
|
|
234
|
+
}
|
|
235
|
+
}), _descriptor10 = _applyDecoratedDescriptor(_class.prototype, "count", [tracked], {
|
|
236
|
+
configurable: true,
|
|
237
|
+
enumerable: true,
|
|
238
|
+
writable: true,
|
|
239
|
+
initializer: null
|
|
240
|
+
}), _descriptor11 = _applyDecoratedDescriptor(_class.prototype, "pageStart", [tracked], {
|
|
241
|
+
configurable: true,
|
|
242
|
+
enumerable: true,
|
|
243
|
+
writable: true,
|
|
244
|
+
initializer: function () {
|
|
245
|
+
return 0;
|
|
246
|
+
}
|
|
247
|
+
}), _applyDecoratedDescriptor(_class.prototype, "selectTypeOrCategory", [action], Object.getOwnPropertyDescriptor(_class.prototype, "selectTypeOrCategory"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "changeCode", [action], Object.getOwnPropertyDescriptor(_class.prototype, "changeCode"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "changeCodeCombination", [action], Object.getOwnPropertyDescriptor(_class.prototype, "changeCodeCombination"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "changeDescription", [action], Object.getOwnPropertyDescriptor(_class.prototype, "changeDescription"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "selectCategory", [action], Object.getOwnPropertyDescriptor(_class.prototype, "selectCategory"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "selectZonality", [action], Object.getOwnPropertyDescriptor(_class.prototype, "selectZonality"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "closeModal", [action], Object.getOwnPropertyDescriptor(_class.prototype, "closeModal"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "searchCodes", [action], Object.getOwnPropertyDescriptor(_class.prototype, "searchCodes"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "fetchSigns", [restartableTask], Object.getOwnPropertyDescriptor(_class.prototype, "fetchSigns"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "insertHtml", [action], Object.getOwnPropertyDescriptor(_class.prototype, "insertHtml"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "goToPage", [action], Object.getOwnPropertyDescriptor(_class.prototype, "goToPage"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "search", [action], Object.getOwnPropertyDescriptor(_class.prototype, "search"), _class.prototype)), _class);
|
|
248
|
+
setComponentTemplate(TEMPLATE, RoadsignRegulationCard);
|
|
249
|
+
|
|
250
|
+
export { RoadsignRegulationCard as default };
|
|
251
|
+
//# sourceMappingURL=roadsigns-modal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"roadsigns-modal.js","sources":["../../../src/components/roadsign-regulation-plugin/roadsigns-modal.hbs.js","../../../src/components/roadsign-regulation-plugin/roadsigns-modal.js"],"sourcesContent":["import { hbs } from 'ember-cli-htmlbars';\nexport default hbs(\"<AuModal\\n class=\\\"au-c-modal--flush\\\"\\n @size=\\\"large\\\"\\n @modalTitle=\\\"Mobiliteitsmaatregel toevoegen\\\"\\n @modalOpen={{@modalOpen}}\\n @closeModal={{this.closeModal}} as |Modal| >\\n <Modal.Body>\\n <div class=\\\"au-c-body-container\\\">\\n <div class=\\\"au-o-box au-u-background-gray-100\\\">\\n <div class=\\\"au-o-grid au-o-grid--tiny au-o-grid--bottom\\\">\\n <div class=\\\"au-o-grid__item au-u-1-4\\\">\\n <AuLabel>\\n Filter op type\\n </AuLabel>\\n <PowerSelect\\n @renderInPlace={{true}}\\n @options={{this.typeOptions}}\\n @verticalPosition=\\\"below\\\"\\n @searchEnabled={{true}}\\n @selected={{or this.typeSelected this.categorySelected}}\\n @allowClear={{true}}\\n @onChange={{this.selectTypeOrCategory}}\\n as |option|>\\n {{option.label}}\\n </PowerSelect>\\n </div>\\n <div class=\\\"au-o-grid__item au-u-1-4\\\">\\n <AuLabel>\\n Filter op code\\n </AuLabel>\\n <PowerSelect\\n @renderInPlace={{true}}\\n @verticalPosition=\\\"below\\\"\\n @searchEnabled={{true}}\\n @search={{this.searchCodes}}\\n @selected={{this.selectedCode}}\\n @allowClear={{true}}\\n @onChange={{this.changeCode}}\\n as |option|>\\n {{option.label}}\\n </PowerSelect>\\n </div>\\n <div class=\\\"au-o-grid__item au-u-1-4\\\">\\n <AuLabel>\\n Combineer met code\\n </AuLabel>\\n <PowerSelectMultiple\\n @renderInPlace={{true}}\\n @verticalPosition=\\\"below\\\"\\n @searchEnabled={{true}}\\n @searchField=\\\"label\\\"\\n @selected={{this.selectedCodeCombination}}\\n @allowClear={{true}}\\n @onChange={{this.changeCodeCombination}}\\n @options={{this.codeCombinationOptions}}\\n @disabled={{not this.selectedCode}}\\n as |option|>\\n {{option.label}}\\n </PowerSelectMultiple>\\n </div>\\n <div class=\\\"au-o-grid__item au-u-1-4\\\">\\n <AuLabel>\\n Filter op zonale geldigheid\\n </AuLabel>\\n <PowerSelect\\n @renderInPlace={{true}}\\n @options={{this.zonalityOptions}}\\n @verticalPosition=\\\"below\\\"\\n @searchEnabled={{false}}\\n @selected={{this.zonalitySelected}}\\n @allowClear={{true}}\\n @onChange={{this.selectZonality}}\\n as |option|>\\n {{option.label}}\\n </PowerSelect>\\n </div>\\n </div>\\n </div>\\n <div class=\\\"au-c-body-container\\\">\\n <RoadsignRegulationPlugin::RoadsignsTable\\n @content={{this.tableData}}\\n @isLoading={{this.fetchSigns.isRunning}}\\n @insert={{this.insertHtml}}\\n @count={{this.count}}\\n @goToPage={{this.goToPage}}\\n @pageSize={{this.pageSize}}\\n @pageStart={{this.pageStart}}\\n />\\n </div>\\n </div>\\n </Modal.Body>\\n</AuModal>\\n\")","import { action } from '@ember/object';\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { restartableTask } from 'ember-concurrency';\nimport { getOwner } from '@ember/application';\nimport { v4 as uuid } from 'uuid';\nimport { inject as service } from '@ember/service';\nimport includeInstructions from '../../utils/roadsign-regulation-plugin/includeInstructions';\nimport {\n NON_ZONAL_URI,\n POTENTIALLY_ZONAL_URI,\n ZONAL_URI,\n} from '../../constants';\n\nconst PAGE_SIZE = 10;\nconst SIGN_TYPE_URI =\n 'https://data.vlaanderen.be/ns/mobiliteit#Verkeersbordconcept';\nconst ROAD_MARKING_URI =\n 'https://data.vlaanderen.be/ns/mobiliteit#Wegmarkeringconcept';\nconst TRAFFIC_LIGHT_URI =\n 'https://data.vlaanderen.be/ns/mobiliteit#Verkeerslichtconcept';\nconst measureTypes = [SIGN_TYPE_URI, ROAD_MARKING_URI, TRAFFIC_LIGHT_URI];\nexport default class RoadsignRegulationCard extends Component {\n endpoint;\n\n pageSize = PAGE_SIZE;\n @service roadsignRegistry;\n\n @tracked typeSelected;\n\n @tracked categorySelected;\n\n @tracked zonalityOptions = [\n {\n label: 'Zonaal',\n value: ZONAL_URI,\n },\n {\n label: 'Niet zonaal',\n value: NON_ZONAL_URI,\n },\n ];\n @tracked zonalitySelected;\n\n @tracked selectedCode;\n @tracked selectedCodeCombination;\n @tracked codeCombinationOptions;\n @tracked tableData = [];\n @tracked count;\n @tracked pageStart = 0;\n\n get isNotTypeSign() {\n if (!this.typeSelected) return true;\n return this.typeSelected.value !== SIGN_TYPE_URI;\n }\n\n constructor() {\n super(...arguments);\n const config = getOwner(this).resolveRegistration('config:environment');\n this.endpoint = config.roadsignRegulationPlugin.endpoint;\n this.search();\n }\n\n @action\n selectTypeOrCategory(option) {\n if (!option) {\n this.typeSelected = undefined;\n this.categorySelected = undefined;\n } else {\n if (measureTypes.includes(option.value)) {\n this.typeSelected = option;\n this.categorySelected = undefined;\n } else {\n this.typeSelected = undefined;\n this.categorySelected = option;\n }\n }\n this.selectedCode = undefined;\n this.selectedCodeCombination = undefined;\n this.search();\n }\n\n @action\n changeCode(value) {\n this.selectedCode = value;\n this.selectedCodeCombination = undefined;\n this.fetchCodeCombinations();\n this.search();\n }\n\n @action\n changeCodeCombination(value) {\n this.selectedCodeCombination = value;\n this.fetchCodeCombinations();\n this.search();\n }\n\n @action\n changeDescription(e) {\n this.descriptionFilter = e.target.value;\n this.search();\n }\n\n @action\n selectCategory(value) {\n this.categorySelected = value;\n this.search();\n }\n\n @action\n selectZonality(value) {\n this.zonalitySelected = value;\n this.search();\n }\n\n @action\n closeModal() {\n this.args.closeModal();\n }\n @action\n searchCodes(term) {\n const category = this.categorySelected\n ? this.categorySelected.value\n : undefined;\n const type = this.typeSelected ? this.typeSelected.value : undefined;\n return this.roadsignRegistry.searchCode.perform(term, category, type);\n }\n\n async fetchCodeCombinations() {\n let signs = [this.selectedCode.value];\n if (this.selectedCodeCombination) {\n signs = [\n this.selectedCode.value,\n ...this.selectedCodeCombination.map((s) => s.value),\n ];\n }\n const codes = await this.roadsignRegistry.searchCode.perform(\n undefined,\n undefined,\n undefined,\n signs\n );\n this.codeCombinationOptions = codes;\n }\n\n get typeOptions() {\n return [\n {\n groupName: 'Types',\n options: [\n {\n label: 'Verkeersborden',\n value: SIGN_TYPE_URI,\n },\n {\n label: 'Wegmarkeringen',\n value:\n 'https://data.vlaanderen.be/ns/mobiliteit#Wegmarkeringconcept',\n },\n {\n label: 'Verkeerslichten',\n value:\n 'https://data.vlaanderen.be/ns/mobiliteit#Verkeerslichtconcept',\n },\n ],\n },\n {\n groupName: 'Categorieën',\n options: this.roadsignRegistry.classifications,\n },\n ];\n }\n\n @restartableTask\n *fetchSigns() {\n let codes = [];\n if (this.selectedCodeCombination) {\n codes.push(...this.selectedCodeCombination);\n }\n if (this.selectedCode) {\n codes.push(this.selectedCode);\n }\n const { measures, count } =\n yield this.roadsignRegistry.fetchMeasures.perform({\n zonality: this.zonalitySelected\n ? this.zonalitySelected.value\n : undefined,\n type: this.typeSelected ? this.typeSelected.value : undefined,\n codes: codes.length ? codes.map((code) => code.value) : undefined,\n category: this.categorySelected\n ? this.categorySelected.value\n : undefined,\n pageStart: this.pageStart,\n });\n this.tableData = measures;\n this.count = count;\n }\n\n @action\n async insertHtml(measure, zonalityValue, temporalValue) {\n const instructions =\n await this.roadsignRegistry.fetchInstructionsForMeasure.perform(\n measure.uri\n );\n const zonality = zonalityValue ? zonalityValue : measure.zonality;\n const html = includeInstructions(\n measure.annotatedTemplate,\n instructions,\n true\n );\n const signsHTML = measure.signs\n .map((sign) => {\n const roadSignUri = 'http://data.lblod.info/verkeerstekens/' + uuid();\n return `<li style=\"margin-bottom:1rem;\"><span property=\"mobiliteit:wordtAangeduidDoor\" resource=${roadSignUri} typeof=\"mobiliteit:Verkeersbord-Verkeersteken\">\n <span property=\"mobiliteit:heeftVerkeersbordconcept\" resource=\"${\n sign.uri\n }\" typeof=\"mobiliteit:Verkeersbordconcept\" style=\"display:flex;align-items:center;\">\n <span property=\"skos:prefLabel\" style=\"padding-bottom:0;margin-left:0;margin-right:.4rem;\">${\n sign.code\n }</span>\n <span style=\"margin-left:0;margin-top:0;\">${\n sign.zonality === POTENTIALLY_ZONAL_URI && zonality === ZONAL_URI\n ? 'met zonale geldigheid'\n : ''\n }\n </span>\n </span>\n </span>\n </li>`;\n })\n .join('\\n');\n\n this.args.controller.executeCommand(\n 'insert-article',\n this.args.controller,\n `<div property=\"mobiliteit:heeftVerkeersmaatregel\" typeof=\"mobiliteit:Mobiliteitsmaatregel\" resource=\"http://data.lblod.info/mobiliteitsmaatregels/${uuid()}\">\n <span style=\"display:none;\" property=\"prov:wasDerivedFrom\" resource=\"${\n measure.uri\n }\"> </span>\n <span style=\"display:none;\" property=\"ext:zonality\" resource=\"${zonality}\"></span>\n <span style=\"display:none;\" property=\"ext:temporal\" value=\"${\n measure.temporal\n }\"></span>\n <div property=\"dct:description\">\n ${html}\n <p>Dit wordt aangeduid door verkeerstekens:</p>\n <ul style=\"list-style:none;\">\n ${signsHTML}\n </ul>\n ${temporalValue === 'true' ? 'Deze signalisatie is dynamisch.' : ''}\n </div>\n </div>\n `\n );\n this.args.closeModal();\n }\n\n @action\n goToPage(pageStart) {\n this.pageStart = pageStart;\n this.fetchSigns.perform();\n }\n @action\n search() {\n this.pageStart = 0;\n this.fetchSigns.perform();\n }\n}\n"],"names":["hbs","PAGE_SIZE","SIGN_TYPE_URI","ROAD_MARKING_URI","TRAFFIC_LIGHT_URI","measureTypes","RoadsignRegulationCard","Component","isNotTypeSign","typeSelected","value","constructor","arguments","config","getOwner","resolveRegistration","endpoint","roadsignRegulationPlugin","search","selectTypeOrCategory","option","undefined","categorySelected","includes","selectedCode","selectedCodeCombination","changeCode","fetchCodeCombinations","changeCodeCombination","changeDescription","e","descriptionFilter","target","selectCategory","selectZonality","zonalitySelected","closeModal","args","searchCodes","term","category","type","roadsignRegistry","searchCode","perform","signs","map","s","codes","codeCombinationOptions","typeOptions","groupName","options","label","classifications","fetchSigns","push","measures","count","fetchMeasures","zonality","length","code","pageStart","tableData","insertHtml","measure","zonalityValue","temporalValue","instructions","fetchInstructionsForMeasure","uri","html","includeInstructions","annotatedTemplate","signsHTML","sign","roadSignUri","uuid","POTENTIALLY_ZONAL_URI","ZONAL_URI","join","controller","executeCommand","temporal","goToPage","service","tracked","NON_ZONAL_URI","action","restartableTask"],"mappings":"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"}
|