@ajf/material 15.2.3 → 15.2.5

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 (46) hide show
  1. package/esm2020/form-builder/condition-editor-dialog.mjs +7 -4
  2. package/esm2020/form-builder/condition-editor.mjs +20 -128
  3. package/esm2020/form-builder/form-builder-module.mjs +3 -7
  4. package/esm2020/form-builder/form-builder-service.mjs +3 -2
  5. package/esm2020/form-builder/node-properties.mjs +9 -4
  6. package/esm2020/form-builder/validation-condition-editor-dialog.mjs +7 -4
  7. package/esm2020/form-builder/warning-condition-editor-dialog.mjs +7 -4
  8. package/esm2020/forms/field-service.mjs +3 -3
  9. package/fesm2015/ajf-material-form-builder.mjs +55 -153
  10. package/fesm2015/ajf-material-form-builder.mjs.map +1 -1
  11. package/fesm2015/ajf-material-forms.mjs +2 -2
  12. package/fesm2015/ajf-material-forms.mjs.map +1 -1
  13. package/fesm2020/ajf-material-form-builder.mjs +55 -153
  14. package/fesm2020/ajf-material-form-builder.mjs.map +1 -1
  15. package/fesm2020/ajf-material-forms.mjs +2 -2
  16. package/fesm2020/ajf-material-forms.mjs.map +1 -1
  17. package/form-builder/condition-editor-dialog.d.ts +1 -0
  18. package/form-builder/condition-editor.d.ts +5 -8
  19. package/form-builder/form-builder-module.d.ts +25 -26
  20. package/form-builder/validation-condition-editor-dialog.d.ts +1 -0
  21. package/form-builder/warning-condition-editor-dialog.d.ts +1 -0
  22. package/package.json +2 -10
  23. package/esm2020/monaco-editor/ajf-material-monaco-editor.mjs +0 -5
  24. package/esm2020/monaco-editor/auto-complete-item-model.mjs +0 -49
  25. package/esm2020/monaco-editor/autocomplete-singleton-model.mjs +0 -135
  26. package/esm2020/monaco-editor/editor-language-model.mjs +0 -60
  27. package/esm2020/monaco-editor/editor-options-model.mjs +0 -37
  28. package/esm2020/monaco-editor/editor-scrollbar-options.mjs +0 -23
  29. package/esm2020/monaco-editor/editor-theme.mjs +0 -30
  30. package/esm2020/monaco-editor/monaco-editor-module.mjs +0 -37
  31. package/esm2020/monaco-editor/monaco-editor.mjs +0 -451
  32. package/esm2020/monaco-editor/public_api.mjs +0 -24
  33. package/fesm2015/ajf-material-monaco-editor.mjs +0 -791
  34. package/fesm2015/ajf-material-monaco-editor.mjs.map +0 -1
  35. package/fesm2020/ajf-material-monaco-editor.mjs +0 -791
  36. package/fesm2020/ajf-material-monaco-editor.mjs.map +0 -1
  37. package/monaco-editor/auto-complete-item-model.d.ts +0 -35
  38. package/monaco-editor/autocomplete-singleton-model.d.ts +0 -55
  39. package/monaco-editor/editor-language-model.d.ts +0 -59
  40. package/monaco-editor/editor-options-model.d.ts +0 -334
  41. package/monaco-editor/editor-scrollbar-options.d.ts +0 -83
  42. package/monaco-editor/editor-theme.d.ts +0 -29
  43. package/monaco-editor/index.d.ts +0 -5
  44. package/monaco-editor/monaco-editor-module.d.ts +0 -7
  45. package/monaco-editor/monaco-editor.d.ts +0 -155
  46. package/monaco-editor/public_api.d.ts +0 -23
@@ -1,791 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, ViewChild, NgModule } from '@angular/core';
3
-
4
- /**
5
- * @license
6
- * Copyright (C) Gnucoop soc. coop.
7
- *
8
- * This file is part of the Advanced JSON forms (ajf).
9
- *
10
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
11
- * modify it under the terms of the GNU Affero General Public License as
12
- * published by the Free Software Foundation, either version 3 of the License,
13
- * or (at your option) any later version.
14
- *
15
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
16
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
17
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
18
- * General Public License for more details.
19
- *
20
- * You should have received a copy of the GNU Affero General Public License
21
- * along with Advanced JSON forms (ajf).
22
- * If not, see http://www.gnu.org/licenses/.
23
- *
24
- */
25
- /**
26
- * Representation of AutoCompleteItem
27
- */
28
- class AutoCompleteItem {
29
- constructor() {
30
- this.label = '';
31
- this.kind = 0;
32
- this.documentation = '';
33
- this.insertText = '';
34
- }
35
- setLabel(label) {
36
- this.label = label;
37
- return this;
38
- }
39
- setKind(kind) {
40
- this.kind = kind;
41
- return this;
42
- }
43
- setDocumentation(documentation) {
44
- this.documentation = documentation;
45
- return this;
46
- }
47
- setInsertText(insertText) {
48
- this.insertText = insertText;
49
- return this;
50
- }
51
- }
52
-
53
- /**
54
- * @license
55
- * Copyright (C) Gnucoop soc. coop.
56
- *
57
- * This file is part of the Advanced JSON forms (ajf).
58
- *
59
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
60
- * modify it under the terms of the GNU Affero General Public License as
61
- * published by the Free Software Foundation, either version 3 of the License,
62
- * or (at your option) any later version.
63
- *
64
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
65
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
66
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
67
- * General Public License for more details.
68
- *
69
- * You should have received a copy of the GNU Affero General Public License
70
- * along with Advanced JSON forms (ajf).
71
- * If not, see http://www.gnu.org/licenses/.
72
- *
73
- */
74
- /**
75
- * List of dev language avalaible in Monaco Editor
76
- */
77
- class IEditorLanguage {
78
- }
79
- IEditorLanguage.BAT = 'bat';
80
- IEditorLanguage.C = 'c';
81
- IEditorLanguage.CPP = 'cpp';
82
- IEditorLanguage.CSHARP = 'csharp';
83
- IEditorLanguage.CSS = 'css';
84
- IEditorLanguage.DOCKERFILE = 'dockerfile';
85
- IEditorLanguage.FSHARP = 'fsharp';
86
- IEditorLanguage.GO = 'go';
87
- IEditorLanguage.HANDLEBARS = 'handlebars';
88
- IEditorLanguage.HTML = 'html';
89
- IEditorLanguage.INI = 'ini';
90
- IEditorLanguage.JADE = 'jade';
91
- IEditorLanguage.JAVASCRIPT = 'javascript';
92
- IEditorLanguage.JSON = 'json';
93
- IEditorLanguage.LESS = 'less';
94
- IEditorLanguage.LUA = 'lua';
95
- IEditorLanguage.MARKDOWN = 'markdown';
96
- IEditorLanguage.OBJECTIVEC = 'objective-c';
97
- IEditorLanguage.PHP = 'php';
98
- IEditorLanguage.PLAINTEXT = 'plaintext';
99
- IEditorLanguage.POSTIATS = 'postiats';
100
- IEditorLanguage.POWERSHELL = 'powershell';
101
- IEditorLanguage.PYTHON = 'python';
102
- IEditorLanguage.R = 'r';
103
- IEditorLanguage.RAZOR = 'razor';
104
- IEditorLanguage.RUBY = 'ruby';
105
- IEditorLanguage.SCSS = 'scss';
106
- IEditorLanguage.SQL = 'sql';
107
- IEditorLanguage.SWIFT = 'swift';
108
- IEditorLanguage.TYPESCRIPT = 'typescript';
109
- IEditorLanguage.VB = 'vb';
110
- IEditorLanguage.XML = 'xml';
111
- IEditorLanguage.YAML = 'yaml';
112
-
113
- /**
114
- * @license
115
- * Copyright (C) Gnucoop soc. coop.
116
- *
117
- * This file is part of the Advanced JSON forms (ajf).
118
- *
119
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
120
- * modify it under the terms of the GNU Affero General Public License as
121
- * published by the Free Software Foundation, either version 3 of the License,
122
- * or (at your option) any later version.
123
- *
124
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
125
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
126
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
127
- * General Public License for more details.
128
- *
129
- * You should have received a copy of the GNU Affero General Public License
130
- * along with Advanced JSON forms (ajf).
131
- * If not, see http://www.gnu.org/licenses/.
132
- *
133
- */
134
- /**
135
- * Manage the autoCompletion for all instances of the editors
136
- */
137
- class AutoCompleteSingleton {
138
- constructor() {
139
- this._autoCompleteValues = {};
140
- }
141
- /**
142
- * We use a singleton, because this class can be call from all the Monaco Editor Components
143
- */
144
- static getInstance() {
145
- if (!AutoCompleteSingleton._instance) {
146
- AutoCompleteSingleton._instance = new AutoCompleteSingleton();
147
- }
148
- return AutoCompleteSingleton._instance;
149
- }
150
- get autoCompleteValues() {
151
- return this._autoCompleteValues;
152
- }
153
- /**
154
- * Init autoComplete for language passed in param if is not already done.
155
- * @param language
156
- */
157
- initAutoComplete(language) {
158
- if (this._autoCompleteValues[language.toString()]) {
159
- return;
160
- }
161
- this._autoCompleteValues[language.toString()] = [];
162
- // This event is fired when the user press Ctrl + Space, to show Intelissense (Autocomplete)
163
- monaco.languages.registerCompletionItemProvider(language, {
164
- provideCompletionItems: function (model) {
165
- // Get new autoComplete list for the current content
166
- AutoCompleteSingleton.getInstance().parseAutoCompleteValues(language, model.getValue());
167
- return AutoCompleteSingleton.getInstance().autoCompleteValues[language.toString()];
168
- },
169
- });
170
- }
171
- /**
172
- * Parse the content passed in param for the language passed in param
173
- * @param language
174
- * @param content
175
- */
176
- parseAutoCompleteValues(language, content) {
177
- switch (language) {
178
- case IEditorLanguage.XML:
179
- return this._parseXmlAutoComplete(content);
180
- case IEditorLanguage.JSON:
181
- return this._parseJsonAutoComplete(content);
182
- default:
183
- return [];
184
- }
185
- }
186
- /**
187
- * Parse the XML content and add all tags in AutoComplete for XML Language
188
- * @param content
189
- */
190
- _parseXmlAutoComplete(content) {
191
- let tempList = [];
192
- let parser = new DOMParser();
193
- let tags = parser.parseFromString(content, 'text/xml').getElementsByTagName('*');
194
- for (let i = 0; i < tags.length; i++) {
195
- // Add TAG only if it not already existing in autoComplete list and in tempList
196
- if (!this._autoCompleteValues[IEditorLanguage.XML].find(obj => obj.label === tags[i].tagName) &&
197
- !tempList.find(obj => obj.label === tags[i].tagName)) {
198
- // Create autoComplete object
199
- let obj = new AutoCompleteItem()
200
- .setLabel(tags[i].tagName)
201
- .setKind(monaco.languages.CompletionItemKind.Function)
202
- .setDocumentation('')
203
- .setInsertText(`<${tags[i].tagName}><${tags[i].tagName}>`);
204
- tempList.push(obj);
205
- }
206
- }
207
- // Add tempList list in the _autoCompleteValues, to maintain a list updated
208
- if (tempList.length > 0) {
209
- this._autoCompleteValues[IEditorLanguage.XML.toString()] =
210
- this._autoCompleteValues[IEditorLanguage.XML.toString()].concat(tempList);
211
- }
212
- return tempList;
213
- }
214
- _parseJsonAutoComplete(content) {
215
- /* tslint:disable-next-line */
216
- const regex = /(?:\'|\')([^']*)(?:\'|\')(?=:)(?:\:\s*)(?:\'|\')?(true|false|[0-9a-zA-Z\+\-\,\.\$]*)/g;
217
- let tempList = [];
218
- let m;
219
- while ((m = regex.exec(content)) !== null) {
220
- // This is necessary to avoid infinite loops with zero-width matches
221
- if (m.index === regex.lastIndex) {
222
- regex.lastIndex++;
223
- }
224
- // Add Element only if it not already existing in autoComplete list and in tempList
225
- if (m[1] &&
226
- !this._autoCompleteValues[IEditorLanguage.JSON].find(obj => obj.label === m[1]) &&
227
- !tempList.find(obj => obj.label === m[1])) {
228
- let obj = new AutoCompleteItem()
229
- .setLabel(m[1])
230
- .setKind(monaco.languages.CompletionItemKind.Value)
231
- .setDocumentation('')
232
- .setInsertText(`'${m[1]}':`);
233
- tempList.push(obj);
234
- }
235
- }
236
- // Add tempList list in the _autoCompleteValues, to maintain a list updated
237
- if (tempList.length > 0) {
238
- this._autoCompleteValues[IEditorLanguage.JSON.toString()] =
239
- this._autoCompleteValues[IEditorLanguage.JSON.toString()].concat(tempList);
240
- }
241
- return tempList;
242
- }
243
- }
244
- AutoCompleteSingleton._instance = null;
245
-
246
- /**
247
- * @license
248
- * Copyright (C) Gnucoop soc. coop.
249
- *
250
- * This file is part of the Advanced JSON forms (ajf).
251
- *
252
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
253
- * modify it under the terms of the GNU Affero General Public License as
254
- * published by the Free Software Foundation, either version 3 of the License,
255
- * or (at your option) any later version.
256
- *
257
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
258
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
259
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
260
- * General Public License for more details.
261
- *
262
- * You should have received a copy of the GNU Affero General Public License
263
- * along with Advanced JSON forms (ajf).
264
- * If not, see http://www.gnu.org/licenses/.
265
- *
266
- */
267
- /**
268
- * Configuration options for the editor.
269
- */
270
- class IEditorOptions {
271
- constructor() {
272
- /**
273
- * Content to show
274
- */
275
- this.value = '';
276
- /**
277
- * Language of content to show
278
- */
279
- this.language = 'en';
280
- }
281
- }
282
-
283
- /**
284
- * @license
285
- * Copyright (C) Gnucoop soc. coop.
286
- *
287
- * This file is part of the Advanced JSON forms (ajf).
288
- *
289
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
290
- * modify it under the terms of the GNU Affero General Public License as
291
- * published by the Free Software Foundation, either version 3 of the License,
292
- * or (at your option) any later version.
293
- *
294
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
295
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
296
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
297
- * General Public License for more details.
298
- *
299
- * You should have received a copy of the GNU Affero General Public License
300
- * along with Advanced JSON forms (ajf).
301
- * If not, see http://www.gnu.org/licenses/.
302
- *
303
- */
304
- class AjfMonacoEditor {
305
- constructor() {
306
- this.language = 'en';
307
- this.disableAutocomplete = false;
308
- this.autoFormatOnLoad = true;
309
- this.monacoLibPath = 'vs/loader.js';
310
- this.valueChange = new EventEmitter();
311
- this.valueToCompareChange = new EventEmitter();
312
- this.init = new EventEmitter();
313
- this._value = '';
314
- this._valueToCompare = '';
315
- }
316
- set valueToCompare(v) {
317
- if (v !== this._valueToCompare) {
318
- this._valueToCompare = v;
319
- if (this._valueToCompare === void 0 || !this._valueToCompare || !this._editor) {
320
- if (this._editor && this._editor.getEditorType() !== 'vs.editor.ICodeEditor') {
321
- this._initEditor();
322
- return;
323
- }
324
- return;
325
- }
326
- if (!this._value) {
327
- this._value = '';
328
- }
329
- if (this._editor.getEditorType() === 'vs.editor.ICodeEditor') {
330
- this._initEditor();
331
- return;
332
- }
333
- }
334
- }
335
- set value(v) {
336
- if (v !== this._value) {
337
- this._value = v;
338
- if (this._value === void 0 || !this._editor) {
339
- return;
340
- }
341
- if (this._editor.getEditorType() !== 'vs.editor.ICodeEditor') {
342
- this._initEditor();
343
- return;
344
- }
345
- this._editor.setValue(this._value);
346
- }
347
- }
348
- get editor() {
349
- return this._editor;
350
- }
351
- /**
352
- * load Monaco lib
353
- */
354
- ngAfterViewInit() {
355
- let onGotAmdLoader = () => {
356
- // Load monaco
357
- window.require(['vs/editor/editor.main'], () => {
358
- this._initMonaco();
359
- });
360
- };
361
- // Load AMD loader if necessary
362
- if (!window.require) {
363
- let loaderScript = document.createElement('script');
364
- loaderScript.type = 'text/javascript';
365
- loaderScript.src = this.monacoLibPath;
366
- loaderScript.addEventListener('load', onGotAmdLoader);
367
- document.body.appendChild(loaderScript);
368
- }
369
- else {
370
- onGotAmdLoader();
371
- }
372
- }
373
- /**
374
- * Upon destruction of the component we make sure to dispose both the editor and
375
- * the extra libs that we might've loaded
376
- */
377
- ngOnDestroy() {
378
- this.dispose();
379
- }
380
- ngOnChanges(_changes) {
381
- if (this._editor) {
382
- this._editor.updateOptions(this._getOptions());
383
- }
384
- }
385
- /**
386
- * Destroy the monaco componenent
387
- */
388
- dispose() {
389
- let myDiv = this.editorContent.nativeElement;
390
- if (this._editor) {
391
- this._editor.dispose();
392
- while (myDiv.hasChildNodes()) {
393
- if (myDiv.firstChild != null) {
394
- myDiv.firstChild.remove();
395
- }
396
- }
397
- this._editor = null;
398
- }
399
- }
400
- /**
401
- * Triggered when windows is resized
402
- * @param event
403
- */
404
- onResize(_event) {
405
- // Manually set monaco size because MonacoEditor doesn't work with Flexbox css
406
- let myDiv = this.editorContent.nativeElement;
407
- if (myDiv == null || myDiv.parentElement == null) {
408
- return;
409
- }
410
- myDiv.setAttribute('style', `height: ${myDiv.parentElement.offsetHeight}px; width:100%;`);
411
- }
412
- /**
413
- * Init editor
414
- * Is called once monaco library is available
415
- */
416
- _initMonaco() {
417
- this._initEditor();
418
- this.init.emit();
419
- }
420
- _initEditor() {
421
- let myDiv = this.editorContent.nativeElement;
422
- let options = this._getOptions();
423
- this.dispose();
424
- if (!this._valueToCompare) {
425
- this._editor = this._initSimpleEditor(myDiv, options);
426
- }
427
- else {
428
- this._editor = this._initDiffEditor(myDiv, options);
429
- }
430
- // Manually set monaco size because MonacoEditor doesn't work with Flexbox css
431
- if (myDiv != null && myDiv.parentElement != null) {
432
- myDiv.setAttribute('style', `height: ${myDiv.parentElement.offsetHeight}px; width:100%;`);
433
- }
434
- // Init Autocomplete if not disabled
435
- if (!this.disableAutocomplete) {
436
- AutoCompleteSingleton.getInstance().initAutoComplete(this.language);
437
- }
438
- // When content is loaded, scrollChange is trigerred,
439
- // We can only force auto format at this moment, because editor
440
- // doesn't have onReady event ...
441
- // this._editor.onDidScrollChange(() => {
442
- // if (this.autoFormatOnLoad && !this._isCodeFormatted) {
443
- // this._editor.getAction('editor.action.format').run();
444
- // this._isCodeFormatted = true;
445
- // }
446
- // });
447
- // Trigger on change event for simple editor
448
- this._getOriginalModel().onDidChangeContent((_e) => {
449
- let newVal = this._getOriginalModel().getValue();
450
- if (this._value !== newVal) {
451
- this._updateValue(newVal);
452
- }
453
- });
454
- // Trigger on change event for diff editor
455
- if (this._getModifiedModel()) {
456
- this._getModifiedModel().onDidChangeContent((_e) => {
457
- let newVal = this._getModifiedModel().getValue();
458
- if (this._valueToCompare !== newVal) {
459
- this._updateValueToCompare(newVal);
460
- }
461
- });
462
- }
463
- }
464
- /**
465
- * Create a simple editor text
466
- * @param div
467
- * @param options
468
- */
469
- _initSimpleEditor(div, options) {
470
- return monaco.editor.create(div, options);
471
- }
472
- /**
473
- * Create a diff editor to compare two string (_value and _valueToCompare)
474
- * @param div
475
- */
476
- _initDiffEditor(div, options) {
477
- let originalModel = monaco.editor.createModel(this._value, this.language);
478
- let modifiedModel = monaco.editor.createModel(this._valueToCompare, this.language);
479
- let diffEditor = monaco.editor.createDiffEditor(div, options);
480
- diffEditor.setModel({
481
- modified: modifiedModel,
482
- original: originalModel,
483
- });
484
- return diffEditor;
485
- }
486
- _getOptions() {
487
- let options = new IEditorOptions();
488
- options.experimentalScreenReader = this.experimentalScreenReader;
489
- options.ariaLabel = this.ariaLabel;
490
- options.rulers = this.rulers;
491
- options.wordSeparators = this.wordSeparators;
492
- options.selectionClipboard = this.selectionClipboard;
493
- options.lineNumbers = this.lineNumbers;
494
- options.selectOnLineNumbers = this.selectOnLineNumbers;
495
- options.lineNumbersMinChars = this.lineNumbersMinChars;
496
- options.glyphMargin = this.glyphMargin;
497
- options.lineDecorationsWidth = this.lineDecorationsWidth;
498
- options.revealHorizontalRightPadding = this.revealHorizontalRightPadding;
499
- options.roundedSelection = this.roundedSelection;
500
- options.theme = this.theme;
501
- options.readOnly = this.readOnly;
502
- options.scrollbar = this.scrollbar;
503
- options.overviewRulerLanes = this.overviewRulerLanes;
504
- options.cursorBlinking = this.cursorBlinking;
505
- options.mouseWheelZoom = this.mouseWheelZoom;
506
- options.cursorStyle = this.cursorStyle;
507
- options.mouseWheelZoom = this.mouseWheelZoom;
508
- options.fontLigatures = this.fontLigatures;
509
- options.disableTranslate3d = this.disableTranslate3d;
510
- options.hideCursorInOverviewRuler = this.hideCursorInOverviewRuler;
511
- options.scrollBeyondLastLine = this.scrollBeyondLastLine;
512
- options.automaticLayout = this.automaticLayout;
513
- options.wrappingColumn = this.wrappingColumn;
514
- options.wordWrap = this.wordWrap;
515
- options.wrappingIndent = this.wrappingIndent;
516
- options.wordWrapBreakBeforeCharacters = this.wordWrapBreakBeforeCharacters;
517
- options.wordWrapBreakAfterCharacters = this.wordWrapBreakAfterCharacters;
518
- options.wordWrapBreakObtrusiveCharacters = this.wordWrapBreakObtrusiveCharacters;
519
- options.stopRenderingLineAfter = this.stopRenderingLineAfter;
520
- options.hover = this.hover;
521
- options.contextmenu = this.contextmenu;
522
- options.mouseWheelScrollSensitivity = this.mouseWheelScrollSensitivity;
523
- options.quickSuggestions = this.quickSuggestions;
524
- options.quickSuggestionsDelay = this.quickSuggestionsDelay;
525
- options.parameterHints = this.parameterHints;
526
- options.iconsInSuggestions = this.iconsInSuggestions;
527
- options.autoClosingBrackets = this.autoClosingBrackets;
528
- options.formatOnType = this.formatOnType;
529
- options.suggestOnTriggerCharacters = this.suggestOnTriggerCharacters;
530
- options.acceptSuggestionOnEnter = this.acceptSuggestionOnEnter;
531
- options.snippetSuggestions = this.snippetSuggestions;
532
- options.tabCompletion = this.tabCompletion;
533
- options.wordBasedSuggestions = this.wordBasedSuggestions;
534
- options.selectionHighlight = this.selectionHighlight;
535
- options.codeLens = this.codeLens;
536
- options.folding = this.folding;
537
- options.renderWhitespace = this.renderWhitespace;
538
- options.renderControlCharacters = this.renderControlCharacters;
539
- options.renderIndentGuides = this.renderIndentGuides;
540
- options.renderLineHighlight = this.renderLineHighlight;
541
- options.useTabStops = this.useTabStops;
542
- options.fontFamily = this.fontFamily;
543
- options.fontWeight = this.fontWeight;
544
- options.fontSize = this.fontSize;
545
- options.lineHeight = this.lineHeight;
546
- options.value = this._value;
547
- options.language = this.language;
548
- Object.keys(options).forEach(key => {
549
- if (options[key] === undefined) {
550
- delete options[key]; // Remove all undefined properties
551
- }
552
- });
553
- return options;
554
- }
555
- /**
556
- * UpdateValue
557
- *
558
- * @param value
559
- */
560
- _updateValue(value) {
561
- this.value = value;
562
- this._value = value;
563
- this.valueChange.emit(value);
564
- }
565
- /**
566
- * UpdateValue
567
- *
568
- * @param value
569
- */
570
- _updateValueToCompare(value) {
571
- this.valueToCompare = value;
572
- this._valueToCompare = value;
573
- this.valueToCompareChange.emit(value);
574
- }
575
- _getOriginalModel() {
576
- if (this._editor) {
577
- let model = this._editor.getModel();
578
- return model.original ? model.original : model;
579
- }
580
- }
581
- _getModifiedModel() {
582
- if (this._editor) {
583
- let model = this._editor.getModel();
584
- return model.modified ? model.modified : null;
585
- }
586
- }
587
- }
588
- AjfMonacoEditor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AjfMonacoEditor, deps: [], target: i0.ɵɵFactoryTarget.Component });
589
- AjfMonacoEditor.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AjfMonacoEditor, selector: "ajf-monaco-editor", inputs: { experimentalScreenReader: "experimentalScreenReader", ariaLabel: "ariaLabel", rulers: "rulers", wordSeparators: "wordSeparators", selectionClipboard: "selectionClipboard", lineNumbers: "lineNumbers", selectOnLineNumbers: "selectOnLineNumbers", lineNumbersMinChars: "lineNumbersMinChars", glyphMargin: "glyphMargin", lineDecorationsWidth: "lineDecorationsWidth", revealHorizontalRightPadding: "revealHorizontalRightPadding", roundedSelection: "roundedSelection", theme: "theme", readOnly: "readOnly", scrollbar: "scrollbar", overviewRulerLanes: "overviewRulerLanes", cursorBlinking: "cursorBlinking", mouseWheelZoom: "mouseWheelZoom", cursorStyle: "cursorStyle", fontLigatures: "fontLigatures", disableTranslate3d: "disableTranslate3d", hideCursorInOverviewRuler: "hideCursorInOverviewRuler", scrollBeyondLastLine: "scrollBeyondLastLine", automaticLayout: "automaticLayout", wrappingColumn: "wrappingColumn", wordWrap: "wordWrap", wrappingIndent: "wrappingIndent", wordWrapBreakBeforeCharacters: "wordWrapBreakBeforeCharacters", wordWrapBreakAfterCharacters: "wordWrapBreakAfterCharacters", wordWrapBreakObtrusiveCharacters: "wordWrapBreakObtrusiveCharacters", stopRenderingLineAfter: "stopRenderingLineAfter", hover: "hover", contextmenu: "contextmenu", mouseWheelScrollSensitivity: "mouseWheelScrollSensitivity", quickSuggestions: "quickSuggestions", quickSuggestionsDelay: "quickSuggestionsDelay", parameterHints: "parameterHints", iconsInSuggestions: "iconsInSuggestions", autoClosingBrackets: "autoClosingBrackets", formatOnType: "formatOnType", suggestOnTriggerCharacters: "suggestOnTriggerCharacters", acceptSuggestionOnEnter: "acceptSuggestionOnEnter", snippetSuggestions: "snippetSuggestions", tabCompletion: "tabCompletion", wordBasedSuggestions: "wordBasedSuggestions", selectionHighlight: "selectionHighlight", codeLens: "codeLens", folding: "folding", renderWhitespace: "renderWhitespace", renderControlCharacters: "renderControlCharacters", renderIndentGuides: "renderIndentGuides", renderLineHighlight: "renderLineHighlight", useTabStops: "useTabStops", fontFamily: "fontFamily", fontWeight: "fontWeight", fontSize: "fontSize", lineHeight: "lineHeight", language: "language", disableAutocomplete: "disableAutocomplete", autoFormatOnLoad: "autoFormatOnLoad", monacoLibPath: "monacoLibPath", valueToCompare: "valueToCompare", value: "value" }, outputs: { valueChange: "valueChange", valueToCompareChange: "valueToCompareChange", init: "init" }, host: { listeners: { "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "editorContent", first: true, predicate: ["editor"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div #editor class=\"ajf-monaco-editor\"></div>\n", styles: ["ajf-monaco-editor{display:flex;align-items:stretch;overflow:hidden}ajf-monaco-editor .ajf-monaco-editor{flex:1 0 auto}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
590
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AjfMonacoEditor, decorators: [{
591
- type: Component,
592
- args: [{ encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ajf-monaco-editor', host: { '(window:resize)': 'onResize($event)' }, template: "<div #editor class=\"ajf-monaco-editor\"></div>\n", styles: ["ajf-monaco-editor{display:flex;align-items:stretch;overflow:hidden}ajf-monaco-editor .ajf-monaco-editor{flex:1 0 auto}\n"] }]
593
- }], ctorParameters: function () { return []; }, propDecorators: { experimentalScreenReader: [{
594
- type: Input
595
- }], ariaLabel: [{
596
- type: Input
597
- }], rulers: [{
598
- type: Input
599
- }], wordSeparators: [{
600
- type: Input
601
- }], selectionClipboard: [{
602
- type: Input
603
- }], lineNumbers: [{
604
- type: Input
605
- }], selectOnLineNumbers: [{
606
- type: Input
607
- }], lineNumbersMinChars: [{
608
- type: Input
609
- }], glyphMargin: [{
610
- type: Input
611
- }], lineDecorationsWidth: [{
612
- type: Input
613
- }], revealHorizontalRightPadding: [{
614
- type: Input
615
- }], roundedSelection: [{
616
- type: Input
617
- }], theme: [{
618
- type: Input
619
- }], readOnly: [{
620
- type: Input
621
- }], scrollbar: [{
622
- type: Input
623
- }], overviewRulerLanes: [{
624
- type: Input
625
- }], cursorBlinking: [{
626
- type: Input
627
- }], mouseWheelZoom: [{
628
- type: Input
629
- }], cursorStyle: [{
630
- type: Input
631
- }], fontLigatures: [{
632
- type: Input
633
- }], disableTranslate3d: [{
634
- type: Input
635
- }], hideCursorInOverviewRuler: [{
636
- type: Input
637
- }], scrollBeyondLastLine: [{
638
- type: Input
639
- }], automaticLayout: [{
640
- type: Input
641
- }], wrappingColumn: [{
642
- type: Input
643
- }], wordWrap: [{
644
- type: Input
645
- }], wrappingIndent: [{
646
- type: Input
647
- }], wordWrapBreakBeforeCharacters: [{
648
- type: Input
649
- }], wordWrapBreakAfterCharacters: [{
650
- type: Input
651
- }], wordWrapBreakObtrusiveCharacters: [{
652
- type: Input
653
- }], stopRenderingLineAfter: [{
654
- type: Input
655
- }], hover: [{
656
- type: Input
657
- }], contextmenu: [{
658
- type: Input
659
- }], mouseWheelScrollSensitivity: [{
660
- type: Input
661
- }], quickSuggestions: [{
662
- type: Input
663
- }], quickSuggestionsDelay: [{
664
- type: Input
665
- }], parameterHints: [{
666
- type: Input
667
- }], iconsInSuggestions: [{
668
- type: Input
669
- }], autoClosingBrackets: [{
670
- type: Input
671
- }], formatOnType: [{
672
- type: Input
673
- }], suggestOnTriggerCharacters: [{
674
- type: Input
675
- }], acceptSuggestionOnEnter: [{
676
- type: Input
677
- }], snippetSuggestions: [{
678
- type: Input
679
- }], tabCompletion: [{
680
- type: Input
681
- }], wordBasedSuggestions: [{
682
- type: Input
683
- }], selectionHighlight: [{
684
- type: Input
685
- }], codeLens: [{
686
- type: Input
687
- }], folding: [{
688
- type: Input
689
- }], renderWhitespace: [{
690
- type: Input
691
- }], renderControlCharacters: [{
692
- type: Input
693
- }], renderIndentGuides: [{
694
- type: Input
695
- }], renderLineHighlight: [{
696
- type: Input
697
- }], useTabStops: [{
698
- type: Input
699
- }], fontFamily: [{
700
- type: Input
701
- }], fontWeight: [{
702
- type: Input
703
- }], fontSize: [{
704
- type: Input
705
- }], lineHeight: [{
706
- type: Input
707
- }], language: [{
708
- type: Input
709
- }], disableAutocomplete: [{
710
- type: Input
711
- }], autoFormatOnLoad: [{
712
- type: Input
713
- }], monacoLibPath: [{
714
- type: Input
715
- }], valueToCompare: [{
716
- type: Input
717
- }], value: [{
718
- type: Input
719
- }], valueChange: [{
720
- type: Output
721
- }], valueToCompareChange: [{
722
- type: Output
723
- }], init: [{
724
- type: Output
725
- }], editorContent: [{
726
- type: ViewChild,
727
- args: ['editor', { static: true }]
728
- }] } });
729
-
730
- /**
731
- * @license
732
- * Copyright (C) Gnucoop soc. coop.
733
- *
734
- * This file is part of the Advanced JSON forms (ajf).
735
- *
736
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
737
- * modify it under the terms of the GNU Affero General Public License as
738
- * published by the Free Software Foundation, either version 3 of the License,
739
- * or (at your option) any later version.
740
- *
741
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
742
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
743
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
744
- * General Public License for more details.
745
- *
746
- * You should have received a copy of the GNU Affero General Public License
747
- * along with Advanced JSON forms (ajf).
748
- * If not, see http://www.gnu.org/licenses/.
749
- *
750
- */
751
- class AjfMonacoEditorModule {
752
- }
753
- AjfMonacoEditorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AjfMonacoEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
754
- AjfMonacoEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: AjfMonacoEditorModule, declarations: [AjfMonacoEditor], exports: [AjfMonacoEditor] });
755
- AjfMonacoEditorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AjfMonacoEditorModule });
756
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AjfMonacoEditorModule, decorators: [{
757
- type: NgModule,
758
- args: [{
759
- declarations: [AjfMonacoEditor],
760
- exports: [AjfMonacoEditor],
761
- }]
762
- }] });
763
-
764
- /**
765
- * @license
766
- * Copyright (C) Gnucoop soc. coop.
767
- *
768
- * This file is part of the Advanced JSON forms (ajf).
769
- *
770
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
771
- * modify it under the terms of the GNU Affero General Public License as
772
- * published by the Free Software Foundation, either version 3 of the License,
773
- * or (at your option) any later version.
774
- *
775
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
776
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
777
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
778
- * General Public License for more details.
779
- *
780
- * You should have received a copy of the GNU Affero General Public License
781
- * along with Advanced JSON forms (ajf).
782
- * If not, see http://www.gnu.org/licenses/.
783
- *
784
- */
785
-
786
- /**
787
- * Generated bundle index. Do not edit.
788
- */
789
-
790
- export { AjfMonacoEditor, AjfMonacoEditorModule };
791
- //# sourceMappingURL=ajf-material-monaco-editor.mjs.map