glib-web 0.5.77 → 0.5.78

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 (130) hide show
  1. package/README.md +0 -0
  2. package/action.js +167 -167
  3. package/actions/analytics/logEvent.js +0 -0
  4. package/actions/cables/push.js +0 -0
  5. package/actions/dialogs/notification.js +0 -0
  6. package/actions/http/patch.js +0 -0
  7. package/actions/panels/scrollTo.js +18 -18
  8. package/actions/panels/scrollToBottom.js +0 -0
  9. package/actions/timeouts/set.js +20 -20
  10. package/actions/windows/close.js +0 -0
  11. package/actions/windows/closeAll.js +0 -0
  12. package/actions/windows/closeWithReload.js +0 -0
  13. package/actions/windows/refreshState.js +5 -5
  14. package/actions/windows/reload.js +0 -0
  15. package/actions/ws/push.js +0 -0
  16. package/app.vue +180 -180
  17. package/components/_button.vue +101 -101
  18. package/components/_dropdownMenu.vue +76 -76
  19. package/components/_icon.vue +50 -50
  20. package/components/avatar.vue +16 -16
  21. package/components/banners/alert.vue +0 -0
  22. package/components/banners/select.vue +82 -82
  23. package/components/component.vue +222 -222
  24. package/components/fields/_patternText.vue +61 -61
  25. package/components/fields/_select.vue +86 -86
  26. package/components/fields/autocomplete.vue +73 -73
  27. package/components/fields/check.vue +104 -104
  28. package/components/fields/creditCard.vue +0 -0
  29. package/components/fields/dynamicGroup.vue +0 -0
  30. package/components/fields/hidden.vue +0 -0
  31. package/components/fields/location.vue +0 -0
  32. package/components/fields/newRichText.vue +0 -0
  33. package/components/fields/phone/countries.js +315 -315
  34. package/components/fields/phone/field.vue +348 -348
  35. package/components/fields/phone/sprite.css +1071 -1071
  36. package/components/fields/radio.vue +64 -64
  37. package/components/fields/radioGroup.vue +0 -0
  38. package/components/fields/rating.vue +0 -0
  39. package/components/fields/richText.vue +0 -0
  40. package/components/fields/select.vue +17 -17
  41. package/components/fields/stripe/stripeFields.vue +93 -93
  42. package/components/fields/stripe/stripeIndividualFields.vue +207 -207
  43. package/components/fields/stripeExternalAccount.vue +135 -135
  44. package/components/fields/text.vue +0 -0
  45. package/components/fields/textarea.vue +0 -0
  46. package/components/fields/timeZone.vue +22 -22
  47. package/components/fields/timer.vue +83 -83
  48. package/components/h1.vue +28 -28
  49. package/components/h2.vue +20 -20
  50. package/components/h3.vue +22 -22
  51. package/components/h4.vue +20 -20
  52. package/components/h5.vue +20 -20
  53. package/components/h6.vue +20 -20
  54. package/components/icon.vue +25 -25
  55. package/components/label.vue +62 -62
  56. package/components/map.vue +0 -0
  57. package/components/mixins/events.js +178 -178
  58. package/components/mixins/generic.js +0 -0
  59. package/components/mixins/list/autoload.js +0 -0
  60. package/components/mixins/styles.js +221 -221
  61. package/components/mixins/table/autoload.js +0 -0
  62. package/components/mixins/text.js +20 -20
  63. package/components/mixins/ws/actionCable.js +48 -48
  64. package/components/mixins/ws/phoenixSocket.js +0 -0
  65. package/components/panels/carousel.vue +55 -55
  66. package/components/panels/flow.vue +81 -81
  67. package/components/panels/form.vue +126 -126
  68. package/components/panels/list.vue +0 -0
  69. package/components/panels/scroll.vue +0 -0
  70. package/components/panels/table.vue +0 -0
  71. package/components/panels/ul.vue +34 -34
  72. package/components/panels/vertical.vue +0 -0
  73. package/components/panels/web.vue +11 -11
  74. package/components/spacer.vue +0 -0
  75. package/components/switch.vue +42 -42
  76. package/extensions/string.js +21 -21
  77. package/index.js +195 -195
  78. package/nav/content.vue +0 -0
  79. package/nav/dialog.vue +127 -127
  80. package/nav/snackbar.vue +0 -0
  81. package/package.json +42 -42
  82. package/static/plugins/alignment/alignment.js +0 -0
  83. package/static/plugins/alignment/alignment.min.js +0 -0
  84. package/static/plugins/beyondgrammar/beyondgrammar.js +0 -0
  85. package/static/plugins/beyondgrammar/beyondgrammar.min.js +0 -0
  86. package/static/plugins/blockcode/blockcode.js +0 -0
  87. package/static/plugins/blockcode/blockcode.min.js +0 -0
  88. package/static/plugins/clips/clips.js +0 -0
  89. package/static/plugins/clips/clips.min.js +0 -0
  90. package/static/plugins/counter/counter.js +0 -0
  91. package/static/plugins/counter/counter.min.js +0 -0
  92. package/static/plugins/definedlinks/definedlinks.js +0 -0
  93. package/static/plugins/definedlinks/definedlinks.min.js +0 -0
  94. package/static/plugins/handle/handle.js +0 -0
  95. package/static/plugins/handle/handle.min.js +0 -0
  96. package/static/plugins/icons/icons.js +0 -0
  97. package/static/plugins/icons/icons.min.js +0 -0
  98. package/static/plugins/imageposition/imageposition.js +0 -0
  99. package/static/plugins/imageposition/imageposition.min.js +0 -0
  100. package/static/plugins/inlineformat/inlineformat.js +0 -0
  101. package/static/plugins/inlineformat/inlineformat.min.js +0 -0
  102. package/static/plugins/removeformat/removeformat.js +0 -0
  103. package/static/plugins/removeformat/removeformat.min.js +0 -0
  104. package/static/plugins/selector/selector.js +0 -0
  105. package/static/plugins/selector/selector.min.js +0 -0
  106. package/static/plugins/specialchars/specialchars.js +0 -0
  107. package/static/plugins/specialchars/specialchars.min.js +0 -0
  108. package/static/plugins/textdirection/textdirection.js +0 -0
  109. package/static/plugins/textdirection/textdirection.min.js +0 -0
  110. package/static/plugins/textexpander/textexpander.js +0 -0
  111. package/static/plugins/textexpander/textexpander.min.js +0 -0
  112. package/static/plugins/underline/underline.js +0 -0
  113. package/static/plugins/underline/underline.min.js +0 -0
  114. package/static/redactorx.css +0 -0
  115. package/static/redactorx.js +0 -0
  116. package/static/redactorx.min.css +0 -0
  117. package/static/redactorx.min.js +0 -0
  118. package/static/redactorx.usm.min.js +0 -0
  119. package/templates/_menu.vue +38 -38
  120. package/templates/comment.vue +202 -202
  121. package/templates/featured.vue +32 -32
  122. package/templates/thumbnail.vue +138 -138
  123. package/templates/unsupported.vue +12 -12
  124. package/utils/app.js +0 -0
  125. package/utils/hash.js +0 -0
  126. package/utils/helper.js +0 -0
  127. package/utils/history.js +70 -70
  128. package/utils/http.js +209 -209
  129. package/utils/launch.js +135 -135
  130. package/utils/private/ws.js +0 -0
@@ -1,178 +1,178 @@
1
- import Action from "../../action";
2
- import UrlUtils from "../../utils/url";
3
- import TypeUtils from "../../utils/type";
4
-
5
- export default {
6
- data() {
7
- return {
8
- // TODO: Consider replacing with an enum, e.g. executing with predefined values ('post', 'get', null)
9
- // The complexity with this is that 'get' that comes after 'post' needs to show an indicator, e.g.
10
- // Submit button needs to be disabled when redirecting after form submission
11
- _isBusy: false,
12
- _events: [],
13
- _typingTimer: null
14
- };
15
- },
16
- computed: {
17
- _pageBody() {
18
- return document.getElementById("page_body");
19
- },
20
- $isBusy() {
21
- // Properties starting with $ or _ can only be accessed via $data
22
- return this.$data._isBusy;
23
- },
24
- $isReady() {
25
- return this.$data._events === null;
26
- }
27
- },
28
- mounted() {
29
- this._executeIfReady(false);
30
- this.$mounted();
31
- },
32
- updated() {
33
- this._executeIfReady(true);
34
- this.$updated();
35
- },
36
- destroyed() {
37
- this.$tearDown();
38
- },
39
- watch: {
40
- // See Utils.http
41
- "$root.vueApp.isStale": function(val, oldVal) {
42
- // Make sure $ready() will be called in the next update
43
- this._mountedUrl = null;
44
- }
45
- },
46
- methods: {
47
- $href: function(spec) {
48
- const properties = spec || this.spec;
49
- const onClick = properties.onClick;
50
- if (TypeUtils.isObject(onClick)) {
51
- switch (onClick.action) {
52
- case "windows/open-v1":
53
- case "windows/openWeb-v1":
54
- case "windows/reload-v1":
55
- return UrlUtils.htmlUrl(onClick.url);
56
- }
57
- }
58
- return null;
59
- },
60
- $onClick: function(explicitEvent, spec) {
61
- const properties = spec || this.spec;
62
- const e = explicitEvent || event;
63
-
64
- if (!properties.onClick) {
65
- return; // Avoid blocking the event for parents.
66
- }
67
-
68
- // Ignore middle/right clicks
69
- if (!e.metaKey && !e.ctrlKey && e.button === 0) {
70
- e.preventDefault();
71
- e.stopPropagation();
72
- // Action.execute(properties.onClick, target || event.target, this);
73
- Action.execute(properties.onClick, null, this);
74
- }
75
- },
76
- $rel: function(spec) {
77
- const properties = spec || this.spec;
78
- const onClick = properties.onClick;
79
- if (TypeUtils.isObject(onClick)) {
80
- if (onClick.action === "windows/openWeb-v1") {
81
- return "nofollow";
82
- }
83
- }
84
- return null;
85
- },
86
- // Can be used for optimization, but not needed for now.
87
- // $onLongPressFunction() {
88
- // return this.spec.onLongPress ? this.$onLongPress : null;
89
- // },
90
- $onLongPress() {
91
- GLib.action.execute(this.spec.onLongPress, null, this);
92
- },
93
- $addViewportChangeListeners: function(handler) {
94
- window.addEventListener("load", handler);
95
- window.addEventListener("resize", handler);
96
- this._pageBody.addEventListener("scroll", handler);
97
- },
98
- $removeViewportChangeListeners: function(handler) {
99
- window.removeEventListener("load", handler);
100
- window.removeEventListener("resize", handler);
101
- this._pageBody.removeEventListener("scroll", handler);
102
- },
103
- _executeIfReady(updated) {
104
- if (updated) {
105
- if (!this._renderingTheSamePage()) {
106
- this.$tearDown();
107
- this._ready();
108
- }
109
- } else {
110
- this._ready();
111
- }
112
- },
113
- _renderingTheSamePage() {
114
- return this._mountedUrl === window.location.href;
115
- },
116
- _ready() {
117
- this._mountedUrl = window.location.href;
118
- this._updatedAt = new Date().getTime();
119
-
120
- this.$data._events = [];
121
-
122
- // Has to be executed before $ready()
123
- this._linkFieldModels();
124
-
125
- this.$ready();
126
-
127
- // Make sure events are dispatched after $ready(). Dispatching them during $ready() causes errors.
128
- for (const event of this.$data._events) {
129
- // Execute later to ensure the parent has registered its event listener
130
- // setTimeout(() => {
131
- this.$el.dispatchEvent(event);
132
- // }, 100)
133
- }
134
- this.$data._events = null;
135
- },
136
- $ready() {
137
- // To be overridden
138
- },
139
- $tearDown() {
140
- // To be overridden
141
- },
142
- $mounted() {
143
- // To be overridden
144
- },
145
- $updated() {
146
- // To be overridden
147
- },
148
- $dispatchEvent(name, data) {
149
- const event = new Event(name, { bubbles: true });
150
-
151
- // TODO: Deprecate
152
- event.spec = data;
153
-
154
- event.data = data;
155
-
156
- if (this.$data._events) {
157
- this.$data._events.push(event);
158
- } else {
159
- this.$el.dispatchEvent(event);
160
- }
161
- },
162
- $onEvent(name, handler) {
163
- this.$el.addEventListener(name, handler);
164
- },
165
- $onTyping({ duration = 2000 }) {
166
- GLib.action.execute(this.spec.onTypeStart, null, this);
167
- clearTimeout(this.timer);
168
-
169
- this.timer = setTimeout(() => {
170
- this._typingTimer = null;
171
- GLib.action.execute(this.spec.onTypeEnd, null, this);
172
- }, duration);
173
- }
174
- // $onZero() {
175
- // GLib.action.execute(this.spec.onZero, null, this);
176
- // },
177
- }
178
- };
1
+ import Action from "../../action";
2
+ import UrlUtils from "../../utils/url";
3
+ import TypeUtils from "../../utils/type";
4
+
5
+ export default {
6
+ data() {
7
+ return {
8
+ // TODO: Consider replacing with an enum, e.g. executing with predefined values ('post', 'get', null)
9
+ // The complexity with this is that 'get' that comes after 'post' needs to show an indicator, e.g.
10
+ // Submit button needs to be disabled when redirecting after form submission
11
+ _isBusy: false,
12
+ _events: [],
13
+ _typingTimer: null
14
+ };
15
+ },
16
+ computed: {
17
+ _pageBody() {
18
+ return document.getElementById("page_body");
19
+ },
20
+ $isBusy() {
21
+ // Properties starting with $ or _ can only be accessed via $data
22
+ return this.$data._isBusy;
23
+ },
24
+ $isReady() {
25
+ return this.$data._events === null;
26
+ }
27
+ },
28
+ mounted() {
29
+ this._executeIfReady(false);
30
+ this.$mounted();
31
+ },
32
+ updated() {
33
+ this._executeIfReady(true);
34
+ this.$updated();
35
+ },
36
+ destroyed() {
37
+ this.$tearDown();
38
+ },
39
+ watch: {
40
+ // See Utils.http
41
+ "$root.vueApp.isStale": function(val, oldVal) {
42
+ // Make sure $ready() will be called in the next update
43
+ this._mountedUrl = null;
44
+ }
45
+ },
46
+ methods: {
47
+ $href: function(spec) {
48
+ const properties = spec || this.spec;
49
+ const onClick = properties.onClick;
50
+ if (TypeUtils.isObject(onClick)) {
51
+ switch (onClick.action) {
52
+ case "windows/open-v1":
53
+ case "windows/openWeb-v1":
54
+ case "windows/reload-v1":
55
+ return UrlUtils.htmlUrl(onClick.url);
56
+ }
57
+ }
58
+ return null;
59
+ },
60
+ $onClick: function(explicitEvent, spec) {
61
+ const properties = spec || this.spec;
62
+ const e = explicitEvent || event;
63
+
64
+ if (!properties.onClick) {
65
+ return; // Avoid blocking the event for parents.
66
+ }
67
+
68
+ // Ignore middle/right clicks
69
+ if (!e.metaKey && !e.ctrlKey && e.button === 0) {
70
+ e.preventDefault();
71
+ e.stopPropagation();
72
+ // Action.execute(properties.onClick, target || event.target, this);
73
+ Action.execute(properties.onClick, null, this);
74
+ }
75
+ },
76
+ $rel: function(spec) {
77
+ const properties = spec || this.spec;
78
+ const onClick = properties.onClick;
79
+ if (TypeUtils.isObject(onClick)) {
80
+ if (onClick.action === "windows/openWeb-v1") {
81
+ return "nofollow";
82
+ }
83
+ }
84
+ return null;
85
+ },
86
+ // Can be used for optimization, but not needed for now.
87
+ // $onLongPressFunction() {
88
+ // return this.spec.onLongPress ? this.$onLongPress : null;
89
+ // },
90
+ $onLongPress() {
91
+ GLib.action.execute(this.spec.onLongPress, null, this);
92
+ },
93
+ $addViewportChangeListeners: function(handler) {
94
+ window.addEventListener("load", handler);
95
+ window.addEventListener("resize", handler);
96
+ this._pageBody.addEventListener("scroll", handler);
97
+ },
98
+ $removeViewportChangeListeners: function(handler) {
99
+ window.removeEventListener("load", handler);
100
+ window.removeEventListener("resize", handler);
101
+ this._pageBody.removeEventListener("scroll", handler);
102
+ },
103
+ _executeIfReady(updated) {
104
+ if (updated) {
105
+ if (!this._renderingTheSamePage()) {
106
+ this.$tearDown();
107
+ this._ready();
108
+ }
109
+ } else {
110
+ this._ready();
111
+ }
112
+ },
113
+ _renderingTheSamePage() {
114
+ return this._mountedUrl === window.location.href;
115
+ },
116
+ _ready() {
117
+ this._mountedUrl = window.location.href;
118
+ this._updatedAt = new Date().getTime();
119
+
120
+ this.$data._events = [];
121
+
122
+ // Has to be executed before $ready()
123
+ this._linkFieldModels();
124
+
125
+ this.$ready();
126
+
127
+ // Make sure events are dispatched after $ready(). Dispatching them during $ready() causes errors.
128
+ for (const event of this.$data._events) {
129
+ // Execute later to ensure the parent has registered its event listener
130
+ // setTimeout(() => {
131
+ this.$el.dispatchEvent(event);
132
+ // }, 100)
133
+ }
134
+ this.$data._events = null;
135
+ },
136
+ $ready() {
137
+ // To be overridden
138
+ },
139
+ $tearDown() {
140
+ // To be overridden
141
+ },
142
+ $mounted() {
143
+ // To be overridden
144
+ },
145
+ $updated() {
146
+ // To be overridden
147
+ },
148
+ $dispatchEvent(name, data) {
149
+ const event = new Event(name, { bubbles: true });
150
+
151
+ // TODO: Deprecate
152
+ event.spec = data;
153
+
154
+ event.data = data;
155
+
156
+ if (this.$data._events) {
157
+ this.$data._events.push(event);
158
+ } else {
159
+ this.$el.dispatchEvent(event);
160
+ }
161
+ },
162
+ $onEvent(name, handler) {
163
+ this.$el.addEventListener(name, handler);
164
+ },
165
+ $onTyping({ duration = 2000 }) {
166
+ GLib.action.execute(this.spec.onTypeStart, null, this);
167
+ clearTimeout(this.timer);
168
+
169
+ this.timer = setTimeout(() => {
170
+ this._typingTimer = null;
171
+ GLib.action.execute(this.spec.onTypeEnd, null, this);
172
+ }, duration);
173
+ }
174
+ // $onZero() {
175
+ // GLib.action.execute(this.spec.onZero, null, this);
176
+ // },
177
+ }
178
+ };
File without changes
File without changes