@stratusjs/angular 0.4.3 → 0.4.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 (101) hide show
  1. package/package.json +1 -1
  2. package/src/angular.modules.js.map +1 -1
  3. package/src/app.module.js.map +1 -1
  4. package/src/backend.service.js.map +1 -1
  5. package/src/base/base.component.js.map +1 -1
  6. package/src/changeset-viewer/changeset-viewer-dialog.component.js +62 -0
  7. package/src/changeset-viewer/changeset-viewer-dialog.component.js.map +1 -0
  8. package/src/changeset-viewer/changeset-viewer-dialog.component.min.js +1 -0
  9. package/src/changeset-viewer/changeset-viewer-dialog.css +2 -0
  10. package/src/changeset-viewer/changeset-viewer-dialog.css.map +1 -0
  11. package/src/changeset-viewer/changeset-viewer-dialog.min.css +0 -0
  12. package/src/changeset-viewer/changeset-viewer.component.css +4 -0
  13. package/src/changeset-viewer/changeset-viewer.component.css.map +1 -0
  14. package/src/changeset-viewer/changeset-viewer.component.js +127 -0
  15. package/src/changeset-viewer/changeset-viewer.component.js.map +1 -0
  16. package/src/changeset-viewer/changeset-viewer.component.min.css +1 -0
  17. package/src/changeset-viewer/changeset-viewer.component.min.js +1 -0
  18. package/src/confirm-dialog/confirm-dialog.component.js.map +1 -1
  19. package/src/editor/citation-dialog.component.html +11 -8
  20. package/src/editor/citation-dialog.component.js +12 -26
  21. package/src/editor/citation-dialog.component.js.map +1 -1
  22. package/src/editor/citation-dialog.component.min.html +1 -1
  23. package/src/editor/citation-dialog.component.min.js +1 -1
  24. package/src/editor/citation-dialog.component.ts +16 -34
  25. package/src/editor/code-view-dialog.component.js.map +1 -1
  26. package/src/editor/editor.component.css +0 -5
  27. package/src/editor/editor.component.css.map +1 -1
  28. package/src/editor/editor.component.js +11 -5
  29. package/src/editor/editor.component.js.map +1 -1
  30. package/src/editor/editor.component.min.css +1 -1
  31. package/src/editor/editor.component.min.js +1 -1
  32. package/src/editor/editor.component.scss +0 -6
  33. package/src/editor/editor.component.ts +12 -6
  34. package/src/editor/link-dialog.component.html +52 -0
  35. package/src/editor/link-dialog.component.js +62 -11
  36. package/src/editor/link-dialog.component.js.map +1 -1
  37. package/src/editor/link-dialog.component.min.html +1 -1
  38. package/src/editor/link-dialog.component.min.js +1 -1
  39. package/src/editor/link-dialog.component.ts +97 -14
  40. package/src/editor/media-dialog.component.js.map +1 -1
  41. package/src/froala/plugins/citationManager.css +7 -18
  42. package/src/froala/plugins/citationManager.css.map +1 -1
  43. package/src/froala/plugins/citationManager.js +9 -106
  44. package/src/froala/plugins/citationManager.js.map +1 -1
  45. package/src/froala/plugins/citationManager.min.css +1 -1
  46. package/src/froala/plugins/citationManager.min.js +1 -1
  47. package/src/froala/plugins/citationManager.scss +7 -18
  48. package/src/froala/plugins/citationManager.ts +13 -166
  49. package/src/froala/plugins/inputButton.js +2 -2
  50. package/src/froala/plugins/inputButton.js.map +1 -1
  51. package/src/froala/plugins/inputButton.min.js +1 -1
  52. package/src/froala/plugins/inputButton.ts +2 -2
  53. package/src/froala/plugins/linkManager.js +12 -3
  54. package/src/froala/plugins/linkManager.js.map +1 -1
  55. package/src/froala/plugins/linkManager.min.js +1 -1
  56. package/src/froala/plugins/linkManager.ts +16 -6
  57. package/src/material.js.map +1 -1
  58. package/src/media-selector/media-selector.component.js.map +1 -1
  59. package/src/selector/selector.component.js.map +1 -1
  60. package/src/test/test.directive.js.map +1 -1
  61. package/src/tree/tree-dialog.component.html +2 -2
  62. package/src/tree/tree-dialog.component.js.map +1 -1
  63. package/src/tree/tree-dialog.component.min.html +1 -1
  64. package/src/tree/tree-node.component.js.map +1 -1
  65. package/src/tree/tree.component.js.map +1 -1
  66. package/src/editor/quill-break-blot.plugin.js +0 -38
  67. package/src/editor/quill-break-blot.plugin.js.map +0 -1
  68. package/src/editor/quill-break-blot.plugin.min.js +0 -1
  69. package/src/editor/quill-html-edit.plugin.js +0 -164
  70. package/src/editor/quill-html-edit.plugin.js.map +0 -1
  71. package/src/editor/quill-html-edit.plugin.min.js +0 -1
  72. package/src/editor/quill-image-format.plugin.js +0 -50
  73. package/src/editor/quill-image-format.plugin.js.map +0 -1
  74. package/src/editor/quill-image-format.plugin.min.js +0 -1
  75. package/src/editor/quill-input-button.plugin.js +0 -98
  76. package/src/editor/quill-input-button.plugin.js.map +0 -1
  77. package/src/editor/quill-input-button.plugin.min.js +0 -1
  78. package/src/froala/editor/froala-editor.directive.js +0 -328
  79. package/src/froala/editor/froala-editor.directive.js.map +0 -1
  80. package/src/froala/editor/froala-editor.directive.min.js +0 -1
  81. package/src/froala/editor/froala-editor.module.js +0 -37
  82. package/src/froala/editor/froala-editor.module.js.map +0 -1
  83. package/src/froala/editor/froala-editor.module.min.js +0 -1
  84. package/src/froala/editor/index.js +0 -22
  85. package/src/froala/editor/index.js.map +0 -1
  86. package/src/froala/editor/index.min.js +0 -1
  87. package/src/froala/plugins/image_manager.js +0 -364
  88. package/src/froala/plugins/image_manager.js.map +0 -1
  89. package/src/froala/plugins/image_manager.min.js +0 -1
  90. package/src/froala/view/froala-view.directive.js +0 -49
  91. package/src/froala/view/froala-view.directive.js.map +0 -1
  92. package/src/froala/view/froala-view.directive.min.js +0 -1
  93. package/src/froala/view/froala-view.module.js +0 -37
  94. package/src/froala/view/froala-view.module.js.map +0 -1
  95. package/src/froala/view/froala-view.module.min.js +0 -1
  96. package/src/froala/view/index.js +0 -22
  97. package/src/froala/view/index.js.map +0 -1
  98. package/src/froala/view/index.min.js +0 -1
  99. package/src/root/root.component.js +0 -43
  100. package/src/root/root.component.js.map +0 -1
  101. package/src/root/root.component.min.js +0 -1
@@ -1,6 +1,6 @@
1
- System.register(["@stratusjs/core/environment", "@stratusjs/runtime/stratus", "lodash", "@stratusjs/angular/froala/plugins/inputButton", "froala-editor"], function (exports_1, context_1) {
1
+ System.register(["@stratusjs/core/environment", "@stratusjs/runtime/stratus", "@stratusjs/angular/froala/plugins/inputButton", "froala-editor"], function (exports_1, context_1) {
2
2
  "use strict";
3
- var environment_1, stratus_1, lodash_1, inputButton_1, froala_editor_1, systemDir, moduleName, parentModuleName, min, localDir;
3
+ var environment_1, stratus_1, inputButton_1, froala_editor_1, systemDir, moduleName, parentModuleName, min, localDir;
4
4
  var __moduleName = context_1 && context_1.id;
5
5
  return {
6
6
  setters: [
@@ -10,9 +10,6 @@ System.register(["@stratusjs/core/environment", "@stratusjs/runtime/stratus", "l
10
10
  function (stratus_1_1) {
11
11
  stratus_1 = stratus_1_1;
12
12
  },
13
- function (lodash_1_1) {
14
- lodash_1 = lodash_1_1;
15
- },
16
13
  function (inputButton_1_1) {
17
14
  inputButton_1 = inputButton_1_1;
18
15
  },
@@ -26,15 +23,12 @@ System.register(["@stratusjs/core/environment", "@stratusjs/runtime/stratus", "l
26
23
  parentModuleName = 'froala/plugins';
27
24
  min = !environment_1.cookie('env') ? '.min' : '';
28
25
  localDir = `${stratus_1.Stratus.BaseUrl}${boot.configuration.paths[`${systemDir}/*`].replace(/[^/]*$/, '')}`;
29
- lodash_1.extend(froala_editor_1.default.POPUP_TEMPLATES, {
30
- 'citationManager.toolbar': '[_BUTTONS_]'
31
- });
32
- lodash_1.extend(froala_editor_1.default.DEFAULTS, {
33
- citationToolbarButtons: ['citationEdit', 'citationDelete']
26
+ froala_editor_1.default.DEFAULTS = Object.assign(froala_editor_1.default.DEFAULTS, {
27
+ endpoint: '/Api/Content'
34
28
  });
35
29
  froala_editor_1.default.PLUGINS.citationManager = function citationManager(editor) {
36
30
  let inputButton;
37
- const debug = false;
31
+ const debug = true;
38
32
  function _init() {
39
33
  stratus_1.Stratus.Internals.CssLoader(`${localDir}${parentModuleName}/${moduleName}${min}.css`);
40
34
  inputButton = new inputButton_1.InputButtonPlugin({
@@ -47,19 +41,10 @@ System.register(["@stratusjs/core/environment", "@stratusjs/runtime/stratus", "l
47
41
  });
48
42
  if (debug) {
49
43
  console.log('initialized:', {
44
+ options: editor.opts.endpoint,
50
45
  instance: this
51
46
  });
52
47
  }
53
- editor.events.on('click', (clickEvent) => {
54
- if (clickEvent.hasOwnProperty('target') &&
55
- (clickEvent.target.nodeName === 'STRATUS-CITATION' ||
56
- clickEvent.target.nodeName === 'STRATUS-CITATION-TITLE')) {
57
- const citation = getSelectedCitation();
58
- if (citation) {
59
- editor.citationManager.showToolbar(clickEvent, citation);
60
- }
61
- }
62
- });
63
48
  }
64
49
  function onClick() {
65
50
  if (!editor.el) {
@@ -68,80 +53,12 @@ System.register(["@stratusjs/core/environment", "@stratusjs/runtime/stratus", "l
68
53
  }
69
54
  inputButton.onClick(editor.el);
70
55
  }
71
- function getSelectedCitation() {
72
- let containedElement = editor.selection.endElement();
73
- if (containedElement.tagName === 'STRATUS-CITATION') {
74
- return containedElement;
75
- }
76
- containedElement = editor.selection.element();
77
- if (containedElement.tagName === 'STRATUS-CITATION') {
78
- return containedElement;
79
- }
80
- containedElement = containedElement.parentElement;
81
- if (containedElement.tagName === 'STRATUS-CITATION') {
82
- return containedElement;
83
- }
84
- return null;
85
- }
86
- function getLastKnownCitation() {
87
- return editor.citationManager.lastCitation || null;
88
- }
89
- function setLastKnownCitation(el) {
90
- editor.citationManager.lastCitation = el;
91
- }
92
- function initToolbar() {
93
- let citationToolbarButtons = '';
94
- if (editor.opts.citationToolbarButtons.length > 1) {
95
- citationToolbarButtons += '<div class="fr-buttons">';
96
- citationToolbarButtons += editor.button.buildList(editor.opts.citationToolbarButtons);
97
- citationToolbarButtons += '</div>';
98
- }
99
- const template = {
100
- buttons: citationToolbarButtons
101
- };
102
- return editor.popups.create('citationManager.toolbar', template);
103
- }
104
- function showToolbar(clickEvent, citation) {
105
- const popup = editor.popups.get('citationManager.toolbar');
106
- if (!popup)
107
- initToolbar();
108
- editor.popups.setContainer('citationManager.toolbar', editor.$tb);
109
- const btn = editor.$tb.find('.fr-command[data-cmd="myButton"]');
110
- const left = clickEvent.pageX;
111
- const top = clickEvent.pageY;
112
- editor.popups.show('citationManager.toolbar', left, top, btn.outerHeight());
113
- editor.citationManager.setLastKnownCitation(citation);
114
- }
115
- function hideToolbar() {
116
- editor.citationManager.setLastKnownCitation(null);
117
- editor.popups.hide('citationManager.toolbar');
118
- }
119
56
  return {
120
57
  _init,
121
- onClick,
122
- showToolbar,
123
- hideToolbar,
124
- getSelectedCitation,
125
- getLastKnownCitation,
126
- setLastKnownCitation
58
+ onClick
127
59
  };
128
60
  };
129
- froala_editor_1.default.DefineIcon('citationDelete', { NAME: 'citationDelete', SVG_KEY: 'remove' });
130
- froala_editor_1.default.RegisterCommand('citationDelete', {
131
- title: 'Delete Citation',
132
- undo: false,
133
- focus: false,
134
- callback() {
135
- const containedElement = this.citationManager.getSelectedCitation();
136
- if (containedElement) {
137
- containedElement.remove();
138
- }
139
- this.citationManager.hideToolbar();
140
- }
141
- });
142
- froala_editor_1.default.DefineIcon('citationManager', { NAME: 'citationManager', SVG_KEY: 'imageCaption' });
143
- froala_editor_1.default.RegisterCommand('citationInsert', {
144
- icon: 'citationManager',
61
+ froala_editor_1.default.RegisterCommand('citationManager', {
145
62
  title: 'Insert Citation',
146
63
  undo: false,
147
64
  focus: false,
@@ -155,21 +72,7 @@ System.register(["@stratusjs/core/environment", "@stratusjs/runtime/stratus", "l
155
72
  },
156
73
  plugin: 'citationManager',
157
74
  });
158
- froala_editor_1.default.RegisterCommand('citationEdit', {
159
- icon: 'citationManager',
160
- title: 'Edit Citation',
161
- undo: false,
162
- focus: false,
163
- modal: true,
164
- callback(cmd, _val, _params) {
165
- const debug = false;
166
- if (debug) {
167
- console.log('clicked:', this.citationManager);
168
- }
169
- this.citationManager.onClick();
170
- },
171
- plugin: 'citationManager',
172
- });
75
+ froala_editor_1.default.DefineIcon('citationManager', { NAME: 'folder', SVG_KEY: 'imageCaption' });
173
76
  froala_editor_1.default.RegisterQuickInsertButton('citation', {
174
77
  icon: 'citationManager',
175
78
  title: 'Insert Citation',
@@ -1 +1 @@
1
- {"version":3,"sources":["citationManager.ts"],"names":[],"mappings":"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","file":"citationManager.js"}
1
+ {"version":3,"sources":["citationManager.ts"],"names":[],"mappings":"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","file":"citationManager.js"}
@@ -1 +1 @@
1
- .editor-component{counter-reset:stratus-citation-counter}.editor-component stratus-citation{position:relative;display:inline-block;border-style:dotted;border-color:#6495ed;border-width:2px;color:#f85b3b;cursor:pointer;min-height:17px;min-width:20px}.editor-component stratus-citation stratus-citation-content{display:none}.editor-component stratus-citation stratus-citation-title{display:block;position:relative;top:-4px;margin-bottom:-6px;padding-top:4px;padding-right:1px;font-size:.75em}.editor-component stratus-citation stratus-citation-notitle::before{counter-increment:stratus-citation-counter;content:counter(stratus-citation-counter);position:absolute;left:2px;font-size:.75em}
1
+ .editor-component{counter-reset:stratus-citation-counter}.editor-component stratus-citation{position:relative;display:inline-block;counter-increment:stratus-citation-counter;color:transparent;border-style:dotted;border-color:#6495ed;cursor:pointer;height:20px;width:20px;overflow:hidden}.editor-component stratus-citation::before{content:counter(stratus-citation-counter);position:absolute;left:2px;font-size:.75em;color:#f85b3b}
@@ -1 +1 @@
1
- System.register(["@stratusjs/core/environment","@stratusjs/runtime/stratus","lodash","@stratusjs/angular/froala/plugins/inputButton","froala-editor"],function(t,n){"use strict";var a,e,i,o,c,r,l;n&&n.id;return{setters:[function(t){a=t},function(t){e=t},function(t){i=t},function(t){o=t},function(t){c=t}],execute:function(){"@stratusjs/angular","citationManager","froala/plugins",r=a.cookie("env")?"":".min",l=`${e.Stratus.BaseUrl}${boot.configuration.paths["@stratusjs/angular/*"].replace(/[^/]*$/,"")}`,i.extend(c.default.POPUP_TEMPLATES,{"citationManager.toolbar":"[_BUTTONS_]"}),i.extend(c.default.DEFAULTS,{citationToolbarButtons:["citationEdit","citationDelete"]}),c.default.PLUGINS.citationManager=function(t){let n;function a(){let n=t.selection.endElement();return"STRATUS-CITATION"===n.tagName?n:(n=t.selection.element(),"STRATUS-CITATION"===n.tagName?n:(n=n.parentElement,"STRATUS-CITATION"===n.tagName?n:null))}return{_init:function(){e.Stratus.Internals.CssLoader(`${l}froala/plugins/citationManager${r}.css`),n=new o.InputButtonPlugin({name:"Citation Manager",eventName:"citation-input",editor:t,autoSaveSelection:!0,autoRestoreSelection:!0,debug:false}),t.events.on("click",n=>{if(n.hasOwnProperty("target")&&("STRATUS-CITATION"===n.target.nodeName||"STRATUS-CITATION-TITLE"===n.target.nodeName)){const e=a();e&&t.citationManager.showToolbar(n,e)}})},onClick:function(){t.el?n.onClick(t.el):console.warn("citationManager.onClick(): unable to find element")},showToolbar:function(n,a){t.popups.get("citationManager.toolbar")||function(){let n="";t.opts.citationToolbarButtons.length>1&&(n+='<div class="fr-buttons">',n+=t.button.buildList(t.opts.citationToolbarButtons),n+="</div>");const a={buttons:n};t.popups.create("citationManager.toolbar",a)}(),t.popups.setContainer("citationManager.toolbar",t.$tb);const e=t.$tb.find('.fr-command[data-cmd="myButton"]'),i=n.pageX,o=n.pageY;t.popups.show("citationManager.toolbar",i,o,e.outerHeight()),t.citationManager.setLastKnownCitation(a)},hideToolbar:function(){t.citationManager.setLastKnownCitation(null),t.popups.hide("citationManager.toolbar")},getSelectedCitation:a,getLastKnownCitation:function(){return t.citationManager.lastCitation||null},setLastKnownCitation:function(n){t.citationManager.lastCitation=n}}},c.default.DefineIcon("citationDelete",{NAME:"citationDelete",SVG_KEY:"remove"}),c.default.RegisterCommand("citationDelete",{title:"Delete Citation",undo:!1,focus:!1,callback(){const t=this.citationManager.getSelectedCitation();t&&t.remove(),this.citationManager.hideToolbar()}}),c.default.DefineIcon("citationManager",{NAME:"citationManager",SVG_KEY:"imageCaption"}),c.default.RegisterCommand("citationInsert",{icon:"citationManager",title:"Insert Citation",undo:!1,focus:!1,modal:!0,callback(t,n,a){this.citationManager.onClick()},plugin:"citationManager"}),c.default.RegisterCommand("citationEdit",{icon:"citationManager",title:"Edit Citation",undo:!1,focus:!1,modal:!0,callback(t,n,a){this.citationManager.onClick()},plugin:"citationManager"}),c.default.RegisterQuickInsertButton("citation",{icon:"citationManager",title:"Insert Citation",callback:function(){const t=new o.InputButtonPlugin({name:"Citation Manager",eventName:"citation-input",editor:this,autoSaveSelection:!0,autoRestoreSelection:!0,debug:!1});this.el?t.onClick(this.el):console.warn("citationManager.onClick(): unable to find element")},undo:!0})}}});
1
+ System.register(["@stratusjs/core/environment","@stratusjs/runtime/stratus","@stratusjs/angular/froala/plugins/inputButton","froala-editor"],function(t,n){"use strict";var e,i,a,o,u,r;n&&n.id;return{setters:[function(t){e=t},function(t){i=t},function(t){a=t},function(t){o=t}],execute:function(){"@stratusjs/angular","citationManager","froala/plugins",u=e.cookie("env")?"":".min",r=`${i.Stratus.BaseUrl}${boot.configuration.paths["@stratusjs/angular/*"].replace(/[^/]*$/,"")}`,o.default.DEFAULTS=Object.assign(o.default.DEFAULTS,{endpoint:"/Api/Content"}),o.default.PLUGINS.citationManager=function(t){let n;return{_init:function(){i.Stratus.Internals.CssLoader(`${r}froala/plugins/citationManager${u}.css`),n=new a.InputButtonPlugin({name:"Citation Manager",eventName:"citation-input",editor:t,autoSaveSelection:!0,autoRestoreSelection:!0,debug:true}),console.log("initialized:",{options:t.opts.endpoint,instance:this})},onClick:function(){t.el?n.onClick(t.el):console.warn("citationManager.onClick(): unable to find element")}}},o.default.RegisterCommand("citationManager",{title:"Insert Citation",undo:!1,focus:!1,modal:!0,callback(t,n,e){this.citationManager.onClick()},plugin:"citationManager"}),o.default.DefineIcon("citationManager",{NAME:"folder",SVG_KEY:"imageCaption"}),o.default.RegisterQuickInsertButton("citation",{icon:"citationManager",title:"Insert Citation",callback:function(){const t=new a.InputButtonPlugin({name:"Citation Manager",eventName:"citation-input",editor:this,autoSaveSelection:!0,autoRestoreSelection:!0,debug:!1});this.el?t.onClick(this.el):console.warn("citationManager.onClick(): unable to find element")},undo:!0})}}});
@@ -3,31 +3,20 @@
3
3
  stratus-citation {
4
4
  position: relative;
5
5
  display: inline-block;
6
+ counter-increment: stratus-citation-counter;
7
+ color: transparent;
6
8
  border-style: dotted;
7
9
  border-color: cornflowerblue;
8
- border-width: 2px;
9
- color: #f85b3b; /* handle generic color better */
10
10
  cursor: pointer;
11
- min-height: 17px;
12
- min-width: 20px;
13
- stratus-citation-content {
14
- display: none;
15
- }
16
- stratus-citation-title {
17
- display: block;
18
- position: relative;
19
- top: -4px;
20
- margin-bottom: -6px;
21
- padding-top: 4px;
22
- padding-right: 1px;
23
- font-size: 0.75em;
24
- }
25
- stratus-citation-notitle::before {
26
- counter-increment: stratus-citation-counter;
11
+ height: 20px;
12
+ width: 20px;
13
+ overflow: hidden;
14
+ &::before {
27
15
  content: counter(stratus-citation-counter);
28
16
  position: absolute;
29
17
  left: 2px;
30
18
  font-size: 0.75em;
19
+ color: #f85b3b; /* handle generic color better */
31
20
  }
32
21
  }
33
22
  }
@@ -1,6 +1,5 @@
1
1
  import {cookie} from '@stratusjs/core/environment'
2
2
  import {Stratus} from '@stratusjs/runtime/stratus'
3
- import {extend} from 'lodash'
4
3
  // Universal Button
5
4
  import {
6
5
  InputButtonPlugin
@@ -19,23 +18,18 @@ const parentModuleName = 'froala/plugins'
19
18
  const min = !cookie('env') ? '.min' : ''
20
19
  const localDir = `${Stratus.BaseUrl}${boot.configuration.paths[`${systemDir}/*`].replace(/[^/]*$/, '')}`
21
20
 
22
- // Define toolbar template.
23
- extend(FroalaEditor.POPUP_TEMPLATES,{
24
- 'citationManager.toolbar': '[_BUTTONS_]'
21
+ // Plugin Options
22
+ FroalaEditor.DEFAULTS = Object.assign(FroalaEditor.DEFAULTS, {
23
+ endpoint: '/Api/Content'
25
24
  })
26
25
 
27
- // Define toolbar buttons.
28
- extend(FroalaEditor.DEFAULTS,{
29
- citationToolbarButtons: ['citationEdit', 'citationDelete']
30
- })
31
-
32
- /*
26
+ /**
33
27
  * @param editor The Froala instance
34
28
  */
35
- FroalaEditor.PLUGINS.citationManager = function citationManager(editor: any) {
29
+ FroalaEditor.PLUGINS.citationManager = function citationManager (editor: any) {
36
30
  let inputButton: InputButtonPlugin
37
31
 
38
- const debug = false
32
+ const debug = true // needs false
39
33
 
40
34
  // When the plugin is initialized,this will be called.
41
35
  function _init() {
@@ -51,6 +45,7 @@ FroalaEditor.PLUGINS.citationManager = function citationManager(editor: any) {
51
45
 
52
46
  if (debug) {
53
47
  console.log('initialized:', {
48
+ options: editor.opts.endpoint,
54
49
  instance: this
55
50
  })
56
51
  }
@@ -59,21 +54,7 @@ FroalaEditor.PLUGINS.citationManager = function citationManager(editor: any) {
59
54
  // editor.methodName(params);
60
55
 
61
56
  // Event listeners
62
- editor.events.on('click', (clickEvent: MouseEvent) => {
63
- if (
64
- clickEvent.hasOwnProperty('target') &&
65
- // clickEvent.target.hasOwnProperty('nodeName') &&
66
- (
67
- (clickEvent.target as Element).nodeName === 'STRATUS-CITATION' ||
68
- (clickEvent.target as Element).nodeName === 'STRATUS-CITATION-TITLE'
69
- )
70
- ) {
71
- const citation = getSelectedCitation() // If citation isn't fully grabbed, will not attempt
72
- if (citation) {
73
- editor.citationManager.showToolbar(clickEvent, citation)
74
- }
75
- }
76
- })
57
+ // editor.events.add('contentChanged', function (params) {});
77
58
  }
78
59
 
79
60
  function onClick() {
@@ -84,136 +65,17 @@ FroalaEditor.PLUGINS.citationManager = function citationManager(editor: any) {
84
65
  inputButton.onClick(editor.el)
85
66
  }
86
67
 
87
- function getSelectedCitation(): Element | null {
88
- let containedElement = editor.selection.endElement()
89
- if (containedElement.tagName === 'STRATUS-CITATION') {
90
- // console.log('returning endElement', containedElement.tagName)
91
- return containedElement
92
- }
93
-
94
- // console.log('endElement was a ', containedElement.tagName, containedElement)
95
- containedElement = editor.selection.element()
96
- if (containedElement.tagName === 'STRATUS-CITATION') {
97
- // console.log('returning element', containedElement.tagName)
98
- return containedElement
99
- }
100
-
101
- // console.log('element was a ', containedElement.tagName, containedElement)
102
- // Check the parent just to be sure
103
- containedElement = containedElement.parentElement
104
- if (containedElement.tagName === 'STRATUS-CITATION') {
105
- // console.log('returning parent element', containedElement.tagName)
106
- return containedElement
107
- }
108
- // console.log('parent element was a ', containedElement.tagName, containedElement, 'returning nothing')
109
-
110
- return null
111
- }
112
-
113
- function getLastKnownCitation() {
114
- // console.log('returning last citation', editor.citationManager.lastCitation)
115
- return editor.citationManager.lastCitation || null
116
- }
117
-
118
- function setLastKnownCitation(el: Element | null) {
119
- // console.log('setting last citation to', el)
120
- editor.citationManager.lastCitation = el
121
- }
122
-
123
- // Create custom inline toolbar.
124
- function initToolbar() {
125
- // Toolbar buttons.
126
- let citationToolbarButtons = ''
127
- // Create the list of buttons.
128
- if (editor.opts.citationToolbarButtons.length > 1) {
129
- citationToolbarButtons += '<div class="fr-buttons">'
130
- citationToolbarButtons += editor.button.buildList(editor.opts.citationToolbarButtons)
131
- citationToolbarButtons += '</div>'
132
- }
133
- // Load popup template.
134
- const template = {
135
- buttons: citationToolbarButtons
136
- }
137
- // Create popup.
138
- return editor.popups.create('citationManager.toolbar', template)
139
- }
140
-
141
- // Show the toolbar
142
- function showToolbar(clickEvent: MouseEvent, citation: Element) {
143
- // Get the popup object defined above.
144
- const popup = editor.popups.get('citationManager.toolbar')
145
- // If popup doesn't exist then create it.
146
- // To improve performance it is best to create the popup when it is first needed
147
- // and not when the editor is initialized.
148
- if (!popup) initToolbar()
149
-
150
- // Set the editor toolbar as the popup's container.
151
- editor.popups.setContainer('citationManager.toolbar', editor.$tb)
152
- // This will trigger the refresh event assigned to the popup.
153
- // editor.popups.refresh('citationManager.toolbar');
154
- // This custom popup is opened by pressing a button from the editor's toolbar.
155
- // Get the button's object in order to place the popup relative to it.
156
- const btn = editor.$tb.find('.fr-command[data-cmd="myButton"]')
157
- // Set the popup's position.
158
- const left = clickEvent.pageX
159
- const top = clickEvent.pageY
160
- // Show the custom toolbar.
161
- // The button's outerHeight is required in case the popup needs to be displayed above it.
162
- editor.popups.show('citationManager.toolbar', left, top, btn.outerHeight())
163
- // Hold onto this lastKnown for the dialog to use -this- element
164
- editor.citationManager.setLastKnownCitation(citation)
165
- }
166
-
167
- // Hide the custom popup.
168
- function hideToolbar() {
169
- editor.citationManager.setLastKnownCitation(null)
170
- editor.popups.hide('citationManager.toolbar')
171
- }
172
-
173
68
  // Expose public methods.
174
69
  // Public methods can be accessed through the editor API:
175
70
  // editor.myPlugin.publicMethod();
176
71
  return {
177
72
  // If _init is not public then the plugin won't be initialized.
178
73
  _init,
179
- onClick,
180
- showToolbar,
181
- hideToolbar,
182
- getSelectedCitation,
183
- getLastKnownCitation,
184
- setLastKnownCitation
74
+ onClick
185
75
  }
186
76
  }
187
- export type CitationManager = {
188
- hideToolbar(): void
189
- showToolbar(): void
190
- getSelectedCitation(): Element | null
191
- getLastKnownCitation(): Element | null
192
- setLastKnownCitation(el: Element | null): void
193
- }
194
-
195
- FroalaEditor.DefineIcon('citationDelete',{NAME: 'citationDelete', SVG_KEY: 'remove'})
196
- FroalaEditor.RegisterCommand('citationDelete', {
197
- title: 'Delete Citation',
198
- undo: false,
199
- focus: false,
200
- callback() {
201
- /// only grab the selectedCitation
202
- const containedElement = this.citationManager.getSelectedCitation()
203
- if (containedElement) {
204
- (containedElement as Element).remove()
205
- }
206
- this.citationManager.hideToolbar()
207
- }
208
- })
209
77
 
210
- // Define button icons
211
- FroalaEditor.DefineIcon('citationManager', {NAME: 'citationManager', SVG_KEY: 'imageCaption'})
212
- // See https://froala.com/wysiwyg-editor/docs/concepts/custom/icon/ for making new icons
213
-
214
- // Define a insert button
215
- FroalaEditor.RegisterCommand('citationInsert', {
216
- icon: 'citationManager',
78
+ FroalaEditor.RegisterCommand('citationManager', {
217
79
  title: 'Insert Citation',
218
80
  undo: false,
219
81
  focus: false,
@@ -231,24 +93,9 @@ FroalaEditor.RegisterCommand('citationInsert', {
231
93
  plugin: 'citationManager',
232
94
  })
233
95
 
234
- // Define a edit button
235
- FroalaEditor.RegisterCommand('citationEdit', {
236
- icon: 'citationManager',
237
- title: 'Edit Citation',
238
- undo: false,
239
- focus: false,
240
- modal: true,
241
- callback(cmd: unknown, _val: unknown, _params: unknown) {
242
- const debug = false
243
- if (debug) {
244
- console.log('clicked:', this.citationManager)
245
- }
246
- this.citationManager.onClick()
247
- },
248
- plugin: 'citationManager',
249
- })
250
-
251
-
96
+ // Define button icons
97
+ FroalaEditor.DefineIcon('citationManager', {NAME: 'folder', SVG_KEY: 'imageCaption'})
98
+ // See https://froala.com/wysiwyg-editor/docs/concepts/custom/icon/ for making new icons
252
99
 
253
100
  // Define a quick insert button
254
101
  FroalaEditor.RegisterQuickInsertButton('citation', {
@@ -48,7 +48,7 @@ System.register(["@stratusjs/runtime/stratus", "lodash"], function (exports_1, c
48
48
  }
49
49
  return stratus_1.Stratus.Instances[uid];
50
50
  }
51
- onClick(el) {
51
+ onClick(el, data) {
52
52
  const uid = this.findUID(el);
53
53
  const instance = this.getInstance(uid);
54
54
  if (!instance) {
@@ -58,7 +58,7 @@ System.register(["@stratusjs/runtime/stratus", "lodash"], function (exports_1, c
58
58
  this.saveSelection();
59
59
  }
60
60
  this.updateSnapshot();
61
- instance.trigger(this.eventName, null, this);
61
+ instance.trigger(this.eventName, data, this);
62
62
  }
63
63
  trigger(name, data, callee) {
64
64
  if (this.debug) {
@@ -1 +1 @@
1
- {"version":3,"sources":["inputButton.ts"],"names":[],"mappings":"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","file":"inputButton.js"}
1
+ {"version":3,"sources":["inputButton.ts"],"names":[],"mappings":"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","file":"inputButton.js"}
@@ -1 +1 @@
1
- System.register(["@stratusjs/runtime/stratus","lodash"],function(t,e){"use strict";var i,s;e&&e.id;return{setters:[function(t){i=t},function(t){s=t}],execute:function(){t("InputButtonPlugin",class{constructor(t){this.debug=!1,this.name="inputButton",this.eventName="input-button",this.autoRestoreSelection=!1,this.autoSaveSelection=!1,this.maintainSelection=!1,this.maintainSnapshot=!1,this.uid=s.default.uniqueId("input_button_"),i.Stratus.Instances[this.uid]=this,this.debug=t&&t.debug,t&&"object"==typeof t||(t={}),this.name=t.name||this.name,this.eventName=t.eventName||this.eventName,this.editor=t.editor||null,this.insert=t.insert||null,this.autoRestoreSelection=t.autoRestoreSelection||null,this.autoSaveSelection=t.autoSaveSelection||null,this.maintainSelection=t.maintainSelection||null,this.maintainSnapshot=t.maintainSnapshot||null}findUID(t){return"uid"in t.dataset?t.dataset.uid:this.findUID(t.parentElement)}getInstance(t){if(t in i.Stratus.Instances)return i.Stratus.Instances[t]}onClick(t){const e=this.findUID(t),i=this.getInstance(e);i&&(this.autoSaveSelection&&this.saveSelection(),this.updateSnapshot(),i.trigger(this.eventName,null,this))}trigger(t,e,i){this.debug&&console.log(`${this.name}.trigger():`,t,e,i),s.default.isEmpty(e)?console.warn(`${this.name}.trigger():`,e,"is not valid data."):this.editor?"insert"===t?this.restoreSnapshot()&&(this.autoRestoreSelection&&this.restoreSelection(),this.insert?this.insert(e):this.editor.html.insert(e),this.updateSnapshot(),this.maintainSelection&&this.saveSelection()):console.warn(`${this.name}.trigger():`,t,"event is not supported."):console.warn(`${this.name}.trigger(): unable to inject html without a set editor.`)}restoreSnapshot(){return!this.maintainSnapshot||(this.snapshot?(this.editor.events.focus(),this.editor.snapshot.restore(this.snapshot),!0):(console.warn(`${this.name}.restoreSnapshot(): unable to restore editor session without a snapshot.`),!1))}updateSnapshot(){if(!this.maintainSnapshot)return!0;this.snapshot=this.editor.snapshot.get()}restoreSelection(){return this.editor.selection?(this.editor.events.focus(),this.editor.selection.restore(),!0):(console.warn(`${this.name}.restoreSelection(): unable to restore editor selection.`),!1)}saveSelection(){return this.editor.selection?(this.editor.selection.save(),!0):(console.warn(`${this.name}.saveSelection(): unable to save editor selection.`),!1)}clearSelection(){return this.editor.selection?(this.editor.selection.clear(),!0):(console.warn(`${this.name}.clearSelection(): unable to clear editor selection.`),!1)}})}}});
1
+ System.register(["@stratusjs/runtime/stratus","lodash"],function(t,e){"use strict";var i,s;e&&e.id;return{setters:[function(t){i=t},function(t){s=t}],execute:function(){t("InputButtonPlugin",class{constructor(t){this.debug=!1,this.name="inputButton",this.eventName="input-button",this.autoRestoreSelection=!1,this.autoSaveSelection=!1,this.maintainSelection=!1,this.maintainSnapshot=!1,this.uid=s.default.uniqueId("input_button_"),i.Stratus.Instances[this.uid]=this,this.debug=t&&t.debug,t&&"object"==typeof t||(t={}),this.name=t.name||this.name,this.eventName=t.eventName||this.eventName,this.editor=t.editor||null,this.insert=t.insert||null,this.autoRestoreSelection=t.autoRestoreSelection||null,this.autoSaveSelection=t.autoSaveSelection||null,this.maintainSelection=t.maintainSelection||null,this.maintainSnapshot=t.maintainSnapshot||null}findUID(t){return"uid"in t.dataset?t.dataset.uid:this.findUID(t.parentElement)}getInstance(t){if(t in i.Stratus.Instances)return i.Stratus.Instances[t]}onClick(t,e){const i=this.findUID(t),s=this.getInstance(i);s&&(this.autoSaveSelection&&this.saveSelection(),this.updateSnapshot(),s.trigger(this.eventName,e,this))}trigger(t,e,i){this.debug&&console.log(`${this.name}.trigger():`,t,e,i),s.default.isEmpty(e)?console.warn(`${this.name}.trigger():`,e,"is not valid data."):this.editor?"insert"===t?this.restoreSnapshot()&&(this.autoRestoreSelection&&this.restoreSelection(),this.insert?this.insert(e):this.editor.html.insert(e),this.updateSnapshot(),this.maintainSelection&&this.saveSelection()):console.warn(`${this.name}.trigger():`,t,"event is not supported."):console.warn(`${this.name}.trigger(): unable to inject html without a set editor.`)}restoreSnapshot(){return!this.maintainSnapshot||(this.snapshot?(this.editor.events.focus(),this.editor.snapshot.restore(this.snapshot),!0):(console.warn(`${this.name}.restoreSnapshot(): unable to restore editor session without a snapshot.`),!1))}updateSnapshot(){if(!this.maintainSnapshot)return!0;this.snapshot=this.editor.snapshot.get()}restoreSelection(){return this.editor.selection?(this.editor.events.focus(),this.editor.selection.restore(),!0):(console.warn(`${this.name}.restoreSelection(): unable to restore editor selection.`),!1)}saveSelection(){return this.editor.selection?(this.editor.selection.save(),!0):(console.warn(`${this.name}.saveSelection(): unable to save editor selection.`),!1)}clearSelection(){return this.editor.selection?(this.editor.selection.clear(),!0):(console.warn(`${this.name}.clearSelection(): unable to clear editor selection.`),!1)}})}}});
@@ -67,7 +67,7 @@ export class InputButtonPlugin<EventData = string|LooseObject> implements Trigge
67
67
  return Stratus.Instances[uid]
68
68
  }
69
69
 
70
- onClick(el: HTMLElement) {
70
+ onClick(el: HTMLElement, data?: any) {
71
71
  const uid = this.findUID(el)
72
72
  const instance = this.getInstance(uid)
73
73
  if (!instance) {
@@ -79,7 +79,7 @@ export class InputButtonPlugin<EventData = string|LooseObject> implements Trigge
79
79
  }
80
80
  // Get snapshot before passing off event
81
81
  this.updateSnapshot()
82
- instance.trigger(this.eventName, null, this)
82
+ instance.trigger(this.eventName, data, this)
83
83
  }
84
84
 
85
85
  trigger(name: string, data: EventData, callee: TriggerInterface) {
@@ -17,6 +17,7 @@ System.register(["@stratusjs/angular/froala/plugins/inputButton", "froala-editor
17
17
  });
18
18
  froala_editor_1.default.PLUGINS.linkManager = function linkManager(editor) {
19
19
  let inputButton;
20
+ const linkPlugin = froala_editor_1.default.PLUGINS.link(editor);
20
21
  const debug = false;
21
22
  function _init() {
22
23
  inputButton = new inputButton_1.InputButtonPlugin({
@@ -24,7 +25,14 @@ System.register(["@stratusjs/angular/froala/plugins/inputButton", "froala-editor
24
25
  eventName: 'link-library',
25
26
  editor,
26
27
  insert: (link) => {
27
- froala_editor_1.default.PLUGINS.link(editor).insert(link.url, '', { 'aria-label': link.title });
28
+ const attrs = {};
29
+ if (link.id) {
30
+ attrs['data-content-id'] = link.id;
31
+ }
32
+ if (link.target) {
33
+ attrs.target = '_blank';
34
+ }
35
+ linkPlugin.insert(link.url, link.text, attrs);
28
36
  },
29
37
  autoSaveSelection: true,
30
38
  autoRestoreSelection: true,
@@ -42,7 +50,7 @@ System.register(["@stratusjs/angular/froala/plugins/inputButton", "froala-editor
42
50
  console.warn('linkManager.onClick(): unable to find element');
43
51
  return;
44
52
  }
45
- inputButton.onClick(editor.el);
53
+ inputButton.onClick(editor.el, linkPlugin.get());
46
54
  }
47
55
  return {
48
56
  _init,
@@ -59,11 +67,12 @@ System.register(["@stratusjs/angular/froala/plugins/inputButton", "froala-editor
59
67
  if (debug) {
60
68
  console.log('clicked:', this.linkManager);
61
69
  }
62
- this.linkManager.onClick();
70
+ this.linkManager.onClick(undefined, froala_editor_1.default.PLUGINS.link(this).get());
63
71
  },
64
72
  plugin: 'linkManager',
65
73
  }),
66
74
  froala_editor_1.default.DefineIcon('linkManager', { NAME: 'folder', SVG_KEY: 'insertLink' }),
75
+ froala_editor_1.default.DefineIcon('linkManagerEdit', { NAME: 'edit', SVG_KEY: 'edit' }),
67
76
  froala_editor_1.default.DefineIcon('linkManagerInsert', { NAME: 'plus', SVG_KEY: 'add' }),
68
77
  froala_editor_1.default.DefineIcon('linkManagerDelete', { NAME: 'trash', SVG_KEY: 'remove' });
69
78
  froala_editor_1.default.RegisterQuickInsertButton('link', {
@@ -1 +1 @@
1
- {"version":3,"sources":["linkManager.ts"],"names":[],"mappings":"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","file":"linkManager.js"}
1
+ {"version":3,"sources":["linkManager.ts"],"names":[],"mappings":"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","file":"linkManager.js"}
@@ -1 +1 @@
1
- System.register(["@stratusjs/angular/froala/plugins/inputButton","froala-editor"],function(n,e){"use strict";var t,i;e&&e.id;return{setters:[function(n){t=n},function(n){i=n}],execute:function(){i.default.DEFAULTS=Object.assign(i.default.DEFAULTS,{endpoint:"/Api/Content"}),i.default.PLUGINS.linkManager=function(n){let e;return{_init:function(){e=new t.InputButtonPlugin({name:"Link Manager",eventName:"link-library",editor:n,insert:e=>{i.default.PLUGINS.link(n).insert(e.url,"",{"aria-label":e.title})},autoSaveSelection:!0,autoRestoreSelection:!0,debug:false})},onClick:function(){n.el?e.onClick(n.el):console.warn("linkManager.onClick(): unable to find element")}}},i.default.RegisterCommand("linkManager",{title:"Insert from Link Library",undo:!1,focus:!1,modal:!0,callback(){this.linkManager.onClick()},plugin:"linkManager"}),i.default.DefineIcon("linkManager",{NAME:"folder",SVG_KEY:"insertLink"}),i.default.DefineIcon("linkManagerInsert",{NAME:"plus",SVG_KEY:"add"}),i.default.DefineIcon("linkManagerDelete",{NAME:"trash",SVG_KEY:"remove"}),i.default.RegisterQuickInsertButton("link",{icon:"linkManager",title:"Insert from Link Library",callback:function(){const n=new t.InputButtonPlugin({name:"Link Manager",eventName:"link-library",editor:this,insert:n=>{i.default.PLUGINS.link(this).insert(n.url,"",{"aria-label":n.title})},autoSaveSelection:!0,autoRestoreSelection:!0,debug:!1});this.el?n.onClick(this.el):console.warn("linkManager.onClick(): unable to find element")},undo:!0})}}});
1
+ System.register(["@stratusjs/angular/froala/plugins/inputButton","froala-editor"],function(n,e){"use strict";var t,i;e&&e.id;return{setters:[function(n){t=n},function(n){i=n}],execute:function(){i.default.DEFAULTS=Object.assign(i.default.DEFAULTS,{endpoint:"/Api/Content"}),i.default.PLUGINS.linkManager=function(n){let e;const a=i.default.PLUGINS.link(n);return{_init:function(){e=new t.InputButtonPlugin({name:"Link Manager",eventName:"link-library",editor:n,insert:n=>{const e={};n.id&&(e["data-content-id"]=n.id),n.target&&(e.target="_blank"),a.insert(n.url,n.text,e)},autoSaveSelection:!0,autoRestoreSelection:!0,debug:false})},onClick:function(){n.el?e.onClick(n.el,a.get()):console.warn("linkManager.onClick(): unable to find element")}}},i.default.RegisterCommand("linkManager",{title:"Insert from Link Library",undo:!1,focus:!1,modal:!0,callback(){this.linkManager.onClick(void 0,i.default.PLUGINS.link(this).get())},plugin:"linkManager"}),i.default.DefineIcon("linkManager",{NAME:"folder",SVG_KEY:"insertLink"}),i.default.DefineIcon("linkManagerEdit",{NAME:"edit",SVG_KEY:"edit"}),i.default.DefineIcon("linkManagerInsert",{NAME:"plus",SVG_KEY:"add"}),i.default.DefineIcon("linkManagerDelete",{NAME:"trash",SVG_KEY:"remove"}),i.default.RegisterQuickInsertButton("link",{icon:"linkManager",title:"Insert from Link Library",callback:function(){const n=new t.InputButtonPlugin({name:"Link Manager",eventName:"link-library",editor:this,insert:n=>{i.default.PLUGINS.link(this).insert(n.url,"",{"aria-label":n.title})},autoSaveSelection:!0,autoRestoreSelection:!0,debug:!1});this.el?n.onClick(this.el):console.warn("linkManager.onClick(): unable to find element")},undo:!0})}}});