appscms-tools-theme 4.0.2 → 4.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/_data/about/en/about.json +16 -16
  3. data/_data/blog/nav.json +13 -13
  4. data/_data/blog/relatedblogs.json +6932 -6932
  5. data/_data/download/en/download.json +73 -73
  6. data/_data/feature/en/3_shop_posters.json +361 -361
  7. data/_data/feature/en/allele-frequency.json +321 -321
  8. data/_data/feature/en/batch-conversion.json +153 -153
  9. data/_data/feature/en/compress-pdf.json +308 -308
  10. data/_data/feature/en/devtools.json +299 -299
  11. data/_data/feature/en/face-detection.json +123 -123
  12. data/_data/feature/en/split-pdf.json +176 -176
  13. data/_data/feature/en/theframe.json +126 -126
  14. data/_data/feature/hi/compress-pdf.json +162 -162
  15. data/_data/feature/tr/compress-pdf.json +161 -161
  16. data/_data/footer/en/data.json +167 -167
  17. data/_data/header/en/data.json +174 -174
  18. data/_data/home/en/en.json +381 -381
  19. data/_data/home/en/photoeffects.json +97 -97
  20. data/_data/home/en/posters.json +322 -322
  21. data/_data/home-1/en/en.json +308 -308
  22. data/_includes/appscms/customblog/pageRelatedPosts.html +84 -84
  23. data/_includes/appscms/customblog/recentposts.html +67 -67
  24. data/_includes/appscms/customblog/relatedBlogs.html +83 -83
  25. data/_includes/appscms/customblog/relatedposts.html +196 -200
  26. data/_includes/appscms/extras/appscms-postbox.html +65 -0
  27. data/_includes/appscms/featurePageAuthors/featurePageAuthors.html +97 -97
  28. data/_includes/appscms/featurehighlight/featurehighlight.html +1 -1
  29. data/_includes/appscms/head/bloghead.html +238 -238
  30. data/_includes/appscms/infographics/infographics.html +109 -109
  31. data/_includes/appscms/recent-posts/recent_posts.html +92 -90
  32. data/_includes/appscms/recent-posts/related_categories_post.html +198 -198
  33. data/_includes/author_bio.html +41 -41
  34. data/_includes/authorpagehead/index.html +47 -47
  35. data/_includes/authors/authors.html +117 -117
  36. data/_includes/batch-conversion.html +141 -141
  37. data/_includes/cssfile/links.html +54 -54
  38. data/_includes/custom-head.html +138 -138
  39. data/_includes/customCode.html +1 -1
  40. data/_includes/customScripts.html +1 -1
  41. data/_includes/customblog/pageRelatedPosts.html +87 -87
  42. data/_includes/customblog/relatedBlogs.html +86 -86
  43. data/_includes/dropdown/langdropdown.html +32 -32
  44. data/_includes/feature.html +39 -39
  45. data/_includes/featurePageAuthors/featurePageAuthors.html +97 -97
  46. data/_includes/footer/index.html +538 -538
  47. data/_includes/google-analytics.html +32 -32
  48. data/_includes/head/index.html +623 -623
  49. data/_includes/header/blogHeader.html +34 -34
  50. data/_includes/header/index.html +192 -192
  51. data/_includes/infographics/infographics.html +230 -230
  52. data/_includes/paginationBlogPage.html +70 -70
  53. data/_includes/script.html +557 -557
  54. data/_includes/share/socialshare.html +21 -21
  55. data/_includes/userTracking.html +43 -43
  56. data/_layouts/aboutUs.html +98 -98
  57. data/_layouts/allAuthors.html +131 -131
  58. data/_layouts/appscms-about.html +163 -163
  59. data/_layouts/appscms-audio.html +33 -33
  60. data/_layouts/appscms-author.html +408 -408
  61. data/_layouts/appscms-authors.html +132 -132
  62. data/_layouts/appscms-calculator.html +93 -93
  63. data/_layouts/appscms-categories.html +26 -0
  64. data/_layouts/appscms-contact.html +132 -132
  65. data/_layouts/appscms-disclaimer.html +124 -124
  66. data/_layouts/appscms-download.html +289 -289
  67. data/_layouts/appscms-feature-result.html +94 -94
  68. data/_layouts/appscms-help.html +25 -25
  69. data/_layouts/appscms-imagekit.html +113 -113
  70. data/_layouts/appscms-post.html +243 -243
  71. data/_layouts/appscms-privacy-policy.html +781 -781
  72. data/_layouts/appscms-terms-and-conditions.html +646 -646
  73. data/_layouts/appscms-video.html +33 -33
  74. data/_layouts/audio.html +33 -33
  75. data/_layouts/author.html +408 -408
  76. data/_layouts/batch.html +177 -177
  77. data/_layouts/blog.html +131 -131
  78. data/_layouts/calculator.html +99 -99
  79. data/_layouts/devtools.html +57 -57
  80. data/_layouts/feature-1.html +406 -406
  81. data/_layouts/feature.html +434 -434
  82. data/_layouts/featureResultPage.html +80 -80
  83. data/_layouts/frame.html +222 -222
  84. data/_layouts/home.html +300 -300
  85. data/_layouts/imagekit.html +303 -303
  86. data/_layouts/photo-effects-home.html +190 -190
  87. data/_layouts/post.html +233 -233
  88. data/assets/app.js +75 -75
  89. data/assets/css/appscms-blog.css +500 -500
  90. data/assets/css/appscms-home.css +5 -5
  91. data/assets/css/appscms-imagekit.css +854 -854
  92. data/assets/css/appscms-variables.css +18 -18
  93. data/assets/css/blog.css +509 -509
  94. data/assets/css/calculators.css +46 -46
  95. data/assets/css/devtools.css +105 -105
  96. data/assets/css/feature-1.css +293 -293
  97. data/assets/css/imagekit copy.css +848 -848
  98. data/assets/css/tools.css +1817 -1817
  99. data/assets/images/digipaint.svg +6 -6
  100. data/assets/images/logo.svg +2 -2
  101. data/assets/images/manthink.svg +3552 -3552
  102. data/assets/js/batch.js +256 -256
  103. data/assets/js/devtools.js +81 -81
  104. data/assets/js/sharePage.js +65 -65
  105. data/assets/js/usageTracking.js +143 -143
  106. data/assets/js/usageTrackingEvents.js +6 -6
  107. metadata +4 -2
@@ -1,557 +1,557 @@
1
- {%- if site.rollbarToken -%}
2
- <script>
3
- var _rollbarConfig = {
4
- accessToken: "{{site.rollbarToken}}",
5
- captureUncaught: true,
6
- captureUnhandledRejections: true,
7
- payload: {
8
- environment: "production",
9
- },
10
- };
11
- !(function (r) {
12
- var e = {};
13
- function o(n) {
14
- if (e[n]) return e[n].exports;
15
- var t = (e[n] = { i: n, l: !1, exports: {} });
16
- return r[n].call(t.exports, t, t.exports, o), (t.l = !0), t.exports;
17
- }
18
- (o.m = r),
19
- (o.c = e),
20
- (o.d = function (r, e, n) {
21
- o.o(r, e) || Object.defineProperty(r, e, { enumerable: !0, get: n });
22
- }),
23
- (o.r = function (r) {
24
- "undefined" != typeof Symbol &&
25
- Symbol.toStringTag &&
26
- Object.defineProperty(r, Symbol.toStringTag, { value: "Module" }),
27
- Object.defineProperty(r, "__esModule", { value: !0 });
28
- }),
29
- (o.t = function (r, e) {
30
- if ((1 & e && (r = o(r)), 8 & e)) return r;
31
- if (4 & e && "object" == typeof r && r && r.__esModule) return r;
32
- var n = Object.create(null);
33
- if (
34
- (o.r(n),
35
- Object.defineProperty(n, "default", { enumerable: !0, value: r }),
36
- 2 & e && "string" != typeof r)
37
- )
38
- for (var t in r)
39
- o.d(
40
- n,
41
- t,
42
- function (e) {
43
- return r[e];
44
- }.bind(null, t)
45
- );
46
- return n;
47
- }),
48
- (o.n = function (r) {
49
- var e =
50
- r && r.__esModule
51
- ? function () {
52
- return r.default;
53
- }
54
- : function () {
55
- return r;
56
- };
57
- return o.d(e, "a", e), e;
58
- }),
59
- (o.o = function (r, e) {
60
- return Object.prototype.hasOwnProperty.call(r, e);
61
- }),
62
- (o.p = ""),
63
- o((o.s = 0));
64
- })([
65
- function (r, e, o) {
66
- "use strict";
67
- var n = o(1),
68
- t = o(5);
69
- (_rollbarConfig = _rollbarConfig || {}),
70
- (_rollbarConfig.rollbarJsUrl =
71
- _rollbarConfig.rollbarJsUrl ||
72
- "https://cdn.rollbar.com/rollbarjs/refs/tags/v2.25.2/rollbar.min.js"),
73
- (_rollbarConfig.async =
74
- void 0 === _rollbarConfig.async || _rollbarConfig.async);
75
- var a = n.setupShim(window, _rollbarConfig),
76
- l = t(_rollbarConfig);
77
- (window.rollbar = n.Rollbar),
78
- a.loadFull(window, document, !_rollbarConfig.async, _rollbarConfig, l);
79
- },
80
- function (r, e, o) {
81
- "use strict";
82
- var n = o(2),
83
- t = o(3);
84
- function a(r) {
85
- return function () {
86
- try {
87
- return r.apply(this, arguments);
88
- } catch (r) {
89
- try {
90
- console.error("[Rollbar]: Internal error", r);
91
- } catch (r) {}
92
- }
93
- };
94
- }
95
- var l = 0;
96
- function i(r, e) {
97
- (this.options = r), (this._rollbarOldOnError = null);
98
- var o = l++;
99
- (this.shimId = function () {
100
- return o;
101
- }),
102
- "undefined" != typeof window &&
103
- window._rollbarShims &&
104
- (window._rollbarShims[o] = { handler: e, messages: [] });
105
- }
106
- var s = o(4),
107
- d = function (r, e) {
108
- return new i(r, e);
109
- },
110
- c = function (r) {
111
- return new s(d, r);
112
- };
113
- function u(r) {
114
- return a(function () {
115
- var e = this,
116
- o = Array.prototype.slice.call(arguments, 0),
117
- n = { shim: e, method: r, args: o, ts: new Date() };
118
- window._rollbarShims[this.shimId()].messages.push(n);
119
- });
120
- }
121
- (i.prototype.loadFull = function (r, e, o, n, t) {
122
- var l = !1,
123
- i = e.createElement("script"),
124
- s = e.getElementsByTagName("script")[0],
125
- d = s.parentNode;
126
- (i.crossOrigin = ""),
127
- (i.src = n.rollbarJsUrl),
128
- o || (i.async = !0),
129
- (i.onload = i.onreadystatechange =
130
- a(function () {
131
- if (
132
- !(
133
- l ||
134
- (this.readyState &&
135
- "loaded" !== this.readyState &&
136
- "complete" !== this.readyState)
137
- )
138
- ) {
139
- i.onload = i.onreadystatechange = null;
140
- try {
141
- d.removeChild(i);
142
- } catch (r) {}
143
- (l = !0),
144
- (function () {
145
- var e;
146
- if (void 0 === r._rollbarDidLoad) {
147
- e = new Error("rollbar.js did not load");
148
- for (var o, n, a, l, i = 0; (o = r._rollbarShims[i++]); )
149
- for (o = o.messages || []; (n = o.shift()); )
150
- for (a = n.args || [], i = 0; i < a.length; ++i)
151
- if ("function" == typeof (l = a[i])) {
152
- l(e);
153
- break;
154
- }
155
- }
156
- "function" == typeof t && t(e);
157
- })();
158
- }
159
- })),
160
- d.insertBefore(i, s);
161
- }),
162
- (i.prototype.wrap = function (r, e, o) {
163
- try {
164
- var n;
165
- if (
166
- ((n =
167
- "function" == typeof e
168
- ? e
169
- : function () {
170
- return e || {};
171
- }),
172
- "function" != typeof r)
173
- )
174
- return r;
175
- if (r._isWrap) return r;
176
- if (
177
- !r._rollbar_wrapped &&
178
- ((r._rollbar_wrapped = function () {
179
- o && "function" == typeof o && o.apply(this, arguments);
180
- try {
181
- return r.apply(this, arguments);
182
- } catch (o) {
183
- var e = o;
184
- throw (
185
- (e &&
186
- ("string" == typeof e && (e = new String(e)),
187
- (e._rollbarContext = n() || {}),
188
- (e._rollbarContext._wrappedSource = r.toString()),
189
- (window._rollbarWrappedError = e)),
190
- e)
191
- );
192
- }
193
- }),
194
- (r._rollbar_wrapped._isWrap = !0),
195
- r.hasOwnProperty)
196
- )
197
- for (var t in r)
198
- r.hasOwnProperty(t) && (r._rollbar_wrapped[t] = r[t]);
199
- return r._rollbar_wrapped;
200
- } catch (e) {
201
- return r;
202
- }
203
- });
204
- for (
205
- var p =
206
- "log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleAnonymousErrors,handleUnhandledRejection,captureEvent,captureDomContentLoaded,captureLoad".split(
207
- ","
208
- ),
209
- f = 0;
210
- f < p.length;
211
- ++f
212
- )
213
- i.prototype[p[f]] = u(p[f]);
214
- r.exports = {
215
- setupShim: function (r, e) {
216
- if (r) {
217
- var o = e.globalAlias || "Rollbar";
218
- if ("object" == typeof r[o]) return r[o];
219
- (r._rollbarShims = {}), (r._rollbarWrappedError = null);
220
- var l = new c(e);
221
- return a(function () {
222
- e.captureUncaught &&
223
- ((l._rollbarOldOnError = r.onerror),
224
- n.captureUncaughtExceptions(r, l, !0),
225
- e.wrapGlobalEventHandlers && t(r, l, !0)),
226
- e.captureUnhandledRejections &&
227
- n.captureUnhandledRejections(r, l, !0);
228
- var a = e.autoInstrument;
229
- return (
230
- !1 !== e.enabled &&
231
- (void 0 === a ||
232
- !0 === a ||
233
- (function (r) {
234
- return !(
235
- "object" != typeof r ||
236
- (void 0 !== r.page && !r.page)
237
- );
238
- })(a)) &&
239
- r.addEventListener &&
240
- (r.addEventListener("load", l.captureLoad.bind(l)),
241
- r.addEventListener(
242
- "DOMContentLoaded",
243
- l.captureDomContentLoaded.bind(l)
244
- )),
245
- (r[o] = l),
246
- l
247
- );
248
- })();
249
- }
250
- },
251
- Rollbar: c,
252
- };
253
- },
254
- function (r, e, o) {
255
- "use strict";
256
- function n(r, e, o, n) {
257
- r._rollbarWrappedError &&
258
- (n[4] || (n[4] = r._rollbarWrappedError),
259
- n[5] || (n[5] = r._rollbarWrappedError._rollbarContext),
260
- (r._rollbarWrappedError = null));
261
- var t = e.handleUncaughtException.apply(e, n);
262
- o && o.apply(r, n),
263
- "anonymous" === t && (e.anonymousErrorsPending += 1);
264
- }
265
- r.exports = {
266
- captureUncaughtExceptions: function (r, e, o) {
267
- if (r) {
268
- var t;
269
- if ("function" == typeof e._rollbarOldOnError)
270
- t = e._rollbarOldOnError;
271
- else if (r.onerror) {
272
- for (t = r.onerror; t._rollbarOldOnError; )
273
- t = t._rollbarOldOnError;
274
- e._rollbarOldOnError = t;
275
- }
276
- e.handleAnonymousErrors();
277
- var a = function () {
278
- var o = Array.prototype.slice.call(arguments, 0);
279
- n(r, e, t, o);
280
- };
281
- o && (a._rollbarOldOnError = t), (r.onerror = a);
282
- }
283
- },
284
- captureUnhandledRejections: function (r, e, o) {
285
- if (r) {
286
- "function" == typeof r._rollbarURH &&
287
- r._rollbarURH.belongsToShim &&
288
- r.removeEventListener("unhandledrejection", r._rollbarURH);
289
- var n = function (r) {
290
- var o, n, t;
291
- try {
292
- o = r.reason;
293
- } catch (r) {
294
- o = void 0;
295
- }
296
- try {
297
- n = r.promise;
298
- } catch (r) {
299
- n = "[unhandledrejection] error getting `promise` from event";
300
- }
301
- try {
302
- (t = r.detail), !o && t && ((o = t.reason), (n = t.promise));
303
- } catch (r) {}
304
- o ||
305
- (o = "[unhandledrejection] error getting `reason` from event"),
306
- e &&
307
- e.handleUnhandledRejection &&
308
- e.handleUnhandledRejection(o, n);
309
- };
310
- (n.belongsToShim = o),
311
- (r._rollbarURH = n),
312
- r.addEventListener("unhandledrejection", n);
313
- }
314
- },
315
- };
316
- },
317
- function (r, e, o) {
318
- "use strict";
319
- function n(r, e, o) {
320
- if (e.hasOwnProperty && e.hasOwnProperty("addEventListener")) {
321
- for (
322
- var n = e.addEventListener;
323
- n._rollbarOldAdd && n.belongsToShim;
324
-
325
- )
326
- n = n._rollbarOldAdd;
327
- var t = function (e, o, t) {
328
- n.call(this, e, r.wrap(o), t);
329
- };
330
- (t._rollbarOldAdd = n),
331
- (t.belongsToShim = o),
332
- (e.addEventListener = t);
333
- for (
334
- var a = e.removeEventListener;
335
- a._rollbarOldRemove && a.belongsToShim;
336
-
337
- )
338
- a = a._rollbarOldRemove;
339
- var l = function (r, e, o) {
340
- a.call(this, r, (e && e._rollbar_wrapped) || e, o);
341
- };
342
- (l._rollbarOldRemove = a),
343
- (l.belongsToShim = o),
344
- (e.removeEventListener = l);
345
- }
346
- }
347
- r.exports = function (r, e, o) {
348
- if (r) {
349
- var t,
350
- a,
351
- l =
352
- "EventTarget,Window,Node,ApplicationCache,AudioTrackList,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload".split(
353
- ","
354
- );
355
- for (t = 0; t < l.length; ++t)
356
- r[(a = l[t])] && r[a].prototype && n(e, r[a].prototype, o);
357
- }
358
- };
359
- },
360
- function (r, e, o) {
361
- "use strict";
362
- function n(r, e) {
363
- (this.impl = r(e, this)),
364
- (this.options = e),
365
- (function (r) {
366
- for (
367
- var e = function (r) {
368
- return function () {
369
- var e = Array.prototype.slice.call(arguments, 0);
370
- if (this.impl[r]) return this.impl[r].apply(this.impl, e);
371
- };
372
- },
373
- o =
374
- "log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleAnonymousErrors,handleUnhandledRejection,_createItem,wrap,loadFull,shimId,captureEvent,captureDomContentLoaded,captureLoad".split(
375
- ","
376
- ),
377
- n = 0;
378
- n < o.length;
379
- n++
380
- )
381
- r[o[n]] = e(o[n]);
382
- })(n.prototype);
383
- }
384
- (n.prototype._swapAndProcessMessages = function (r, e) {
385
- var o, n, t;
386
- for (this.impl = r(this.options); (o = e.shift()); )
387
- (n = o.method),
388
- (t = o.args),
389
- this[n] &&
390
- "function" == typeof this[n] &&
391
- ("captureDomContentLoaded" === n || "captureLoad" === n
392
- ? this[n].apply(this, [t[0], o.ts])
393
- : this[n].apply(this, t));
394
- return this;
395
- }),
396
- (r.exports = n);
397
- },
398
- function (r, e, o) {
399
- "use strict";
400
- r.exports = function (r) {
401
- return function (e) {
402
- if (!e && !window._rollbarInitialized) {
403
- for (
404
- var o,
405
- n,
406
- t = (r = r || {}).globalAlias || "Rollbar",
407
- a = window.rollbar,
408
- l = function (r) {
409
- return new a(r);
410
- },
411
- i = 0;
412
- (o = window._rollbarShims[i++]);
413
-
414
- )
415
- n || (n = o.handler),
416
- o.handler._swapAndProcessMessages(l, o.messages);
417
- (window[t] = n), (window._rollbarInitialized = !0);
418
- }
419
- };
420
- };
421
- },
422
- ]);
423
- </script>
424
- {%- endif -%} {%- include adblocker.html -%} {% assign scriptData =
425
- site.data.[page.folderName][lang][file] %} {%- assign dataAtt =
426
- "data-folderName='$folderName' data-lang='$lang' data-fileName='$fileName'
427
- data-tool='$tool'" -%} {%- assign $folderName = '$folderName' -%} {%- if
428
- site.removeJquery != true -%}
429
- <script
430
- defer
431
- src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"
432
- {%-
433
- if
434
- site.crossorigin
435
- -%}
436
- {{
437
- }}
438
- crossorigin
439
- {%-
440
- endif
441
- -%}
442
- ></script>
443
- {%- endif -%}
444
-
445
- <script defer src="/assets/js/theme.js" crossorigin="anonymous"></script>
446
- {%- if site.userTrackingCount -%} {%- include customScripts.html -%} {%- endif
447
- -%} {%- if site.userTrackingCount and page.layout == "feature" -%}
448
- <script defer src="/assets/js/usageTracking.js"></script>
449
- <script defer src="/assets/js/usageTrackingEvents.js"></script>
450
- <script defer src="/assets/js/sharePage.js"></script>
451
- {%- endif -%} {%- if site.removeBootstrapJs != true -%}
452
- <script
453
- defer="defer"
454
- src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js"
455
- integrity="sha384-Piv4xVNRyMGpqkS2by6br4gNJ7DXjqk09RmUpJ8jgGtD7zP9yug3goQfGII0yAns"
456
- crossorigin="anonymous"
457
- ></script>
458
- {%- endif -%} {{site.data.customcdns.customcdns.jsfiles}} {%- if
459
- scriptData.jsfilepaths -%} {%- for path in scriptData.jsfilepaths -%} {%- assign
460
- asset_dir = path -%} {%- if site.versioning and asset_dir != "" -%} {%- if
461
- asset_dir contains "https" and asset_dir contains "https://" -%}
462
- <script
463
- defer
464
- src="{{path}}"
465
- data-folderName="{{page.folderName}}"
466
- data-lang="{{page.lang}}"
467
- data-fileName="{{page.fileName}}"
468
- data-tool="{{page.tool}}"
469
- data-permalink="{{page.permalink}}"
470
- {%-
471
- if
472
- site.crossorigin
473
- -%}
474
- {{
475
- }}
476
- crossorigin
477
- {%-
478
- endif
479
- -%}
480
- ></script>
481
- {%- else -%}
482
- <script
483
- defer
484
- src="{% ministamp { source_path: '{{ asset_dir }}', destination_path: '{{ asset_dir }}' } %}"
485
- data-folderName="{{page.folderName}}"
486
- data-lang="{{page.lang}}"
487
- data-fileName="{{page.fileName}}"
488
- data-tool="{{page.tool}}"
489
- data-permalink="{{page.permalink}}"
490
- {%-
491
- if
492
- site.crossorigin
493
- -%}
494
- {{
495
- }}
496
- crossorigin
497
- {%-
498
- endif
499
- -%}
500
- ></script>
501
- {%- endif -%} {%- else -%}
502
- <script
503
- defer
504
- src="{{path}}"
505
- data-folderName="{{page.folderName}}"
506
- data-lang="{{page.lang}}"
507
- data-fileName="{{page.fileName}}"
508
- data-tool="{{page.tool}}"
509
- data-permalink="{{page.permalink}}"
510
- {%-
511
- if
512
- site.crossorigin
513
- -%}
514
- {{
515
- }}
516
- crossorigin
517
- {%-
518
- endif
519
- -%}
520
- ></script>
521
- {%- endif -%} {%- endfor -%} {%- endif -%} {%- if scriptData.jscdns -%} {%- for
522
- item in scriptData.jscdns -%} {{item | replace:"$folderName", page.folderName |
523
- replace: "$fileName", page.fileName | replace: "$lang", page.lang | replace:
524
- "$tool", page.tool }} {%- endfor -%} {%- endif -%} {%- if page.layout == "frame"
525
- -%} {%- assign font = "PT Sans" -%} {%- endif -%} {%- if page.layout ==
526
- "photo-effects-home" -%} {%- assign font = "PT Sans" -%} {%- endif -%} {%- if
527
- page.layout == "calculator" -%}
528
- <script defer src="/assets/js/calculator-tooltip.js"></script>
529
- {%- endif -%} {%- if page.layout == 'home-1' or page.layout == "feature-1" -%}
530
- {%- assign font = "Inter" -%} {%- endif -%} {%- if site.removeFontAwesome !=
531
- true -%}
532
- <link
533
- rel="stylesheet"
534
- href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css"
535
- integrity="sha512-iBBXm8fW90+nuLcSKlbmrPcLa0OT92xO1BIsZ+ywDWZCvqsWgccV3gFoRBv0z+8dLJgyAHIhR35VZc2oM/gI1w=="
536
- crossorigin="anonymous"
537
- referrerpolicy="no-referrer"
538
- />
539
- {%- endif -%} {%- if page.layout == "feature" -%}
540
- <script>
541
- const toaster = document.querySelector(".toaster");
542
- if (
543
- !/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(
544
- navigator.userAgent
545
- )
546
- ) {
547
- if (navigator.userAgent.indexOf("Mac OS X") != -1) {
548
- toaster.innerHTML = `Press Command + D to Bookmark this page`;
549
- } else {
550
- toaster.innerHTML = `Press Ctrl + D to Bookmark this page`;
551
- }
552
- }
553
- setTimeout(() => {
554
- toaster.style.display = "none";
555
- }, 20000);
556
- </script>
557
- {%- endif -%}
1
+ {%- if site.rollbarToken -%}
2
+ <script>
3
+ var _rollbarConfig = {
4
+ accessToken: "{{site.rollbarToken}}",
5
+ captureUncaught: true,
6
+ captureUnhandledRejections: true,
7
+ payload: {
8
+ environment: "production",
9
+ },
10
+ };
11
+ !(function (r) {
12
+ var e = {};
13
+ function o(n) {
14
+ if (e[n]) return e[n].exports;
15
+ var t = (e[n] = { i: n, l: !1, exports: {} });
16
+ return r[n].call(t.exports, t, t.exports, o), (t.l = !0), t.exports;
17
+ }
18
+ (o.m = r),
19
+ (o.c = e),
20
+ (o.d = function (r, e, n) {
21
+ o.o(r, e) || Object.defineProperty(r, e, { enumerable: !0, get: n });
22
+ }),
23
+ (o.r = function (r) {
24
+ "undefined" != typeof Symbol &&
25
+ Symbol.toStringTag &&
26
+ Object.defineProperty(r, Symbol.toStringTag, { value: "Module" }),
27
+ Object.defineProperty(r, "__esModule", { value: !0 });
28
+ }),
29
+ (o.t = function (r, e) {
30
+ if ((1 & e && (r = o(r)), 8 & e)) return r;
31
+ if (4 & e && "object" == typeof r && r && r.__esModule) return r;
32
+ var n = Object.create(null);
33
+ if (
34
+ (o.r(n),
35
+ Object.defineProperty(n, "default", { enumerable: !0, value: r }),
36
+ 2 & e && "string" != typeof r)
37
+ )
38
+ for (var t in r)
39
+ o.d(
40
+ n,
41
+ t,
42
+ function (e) {
43
+ return r[e];
44
+ }.bind(null, t)
45
+ );
46
+ return n;
47
+ }),
48
+ (o.n = function (r) {
49
+ var e =
50
+ r && r.__esModule
51
+ ? function () {
52
+ return r.default;
53
+ }
54
+ : function () {
55
+ return r;
56
+ };
57
+ return o.d(e, "a", e), e;
58
+ }),
59
+ (o.o = function (r, e) {
60
+ return Object.prototype.hasOwnProperty.call(r, e);
61
+ }),
62
+ (o.p = ""),
63
+ o((o.s = 0));
64
+ })([
65
+ function (r, e, o) {
66
+ "use strict";
67
+ var n = o(1),
68
+ t = o(5);
69
+ (_rollbarConfig = _rollbarConfig || {}),
70
+ (_rollbarConfig.rollbarJsUrl =
71
+ _rollbarConfig.rollbarJsUrl ||
72
+ "https://cdn.rollbar.com/rollbarjs/refs/tags/v2.25.2/rollbar.min.js"),
73
+ (_rollbarConfig.async =
74
+ void 0 === _rollbarConfig.async || _rollbarConfig.async);
75
+ var a = n.setupShim(window, _rollbarConfig),
76
+ l = t(_rollbarConfig);
77
+ (window.rollbar = n.Rollbar),
78
+ a.loadFull(window, document, !_rollbarConfig.async, _rollbarConfig, l);
79
+ },
80
+ function (r, e, o) {
81
+ "use strict";
82
+ var n = o(2),
83
+ t = o(3);
84
+ function a(r) {
85
+ return function () {
86
+ try {
87
+ return r.apply(this, arguments);
88
+ } catch (r) {
89
+ try {
90
+ console.error("[Rollbar]: Internal error", r);
91
+ } catch (r) {}
92
+ }
93
+ };
94
+ }
95
+ var l = 0;
96
+ function i(r, e) {
97
+ (this.options = r), (this._rollbarOldOnError = null);
98
+ var o = l++;
99
+ (this.shimId = function () {
100
+ return o;
101
+ }),
102
+ "undefined" != typeof window &&
103
+ window._rollbarShims &&
104
+ (window._rollbarShims[o] = { handler: e, messages: [] });
105
+ }
106
+ var s = o(4),
107
+ d = function (r, e) {
108
+ return new i(r, e);
109
+ },
110
+ c = function (r) {
111
+ return new s(d, r);
112
+ };
113
+ function u(r) {
114
+ return a(function () {
115
+ var e = this,
116
+ o = Array.prototype.slice.call(arguments, 0),
117
+ n = { shim: e, method: r, args: o, ts: new Date() };
118
+ window._rollbarShims[this.shimId()].messages.push(n);
119
+ });
120
+ }
121
+ (i.prototype.loadFull = function (r, e, o, n, t) {
122
+ var l = !1,
123
+ i = e.createElement("script"),
124
+ s = e.getElementsByTagName("script")[0],
125
+ d = s.parentNode;
126
+ (i.crossOrigin = ""),
127
+ (i.src = n.rollbarJsUrl),
128
+ o || (i.async = !0),
129
+ (i.onload = i.onreadystatechange =
130
+ a(function () {
131
+ if (
132
+ !(
133
+ l ||
134
+ (this.readyState &&
135
+ "loaded" !== this.readyState &&
136
+ "complete" !== this.readyState)
137
+ )
138
+ ) {
139
+ i.onload = i.onreadystatechange = null;
140
+ try {
141
+ d.removeChild(i);
142
+ } catch (r) {}
143
+ (l = !0),
144
+ (function () {
145
+ var e;
146
+ if (void 0 === r._rollbarDidLoad) {
147
+ e = new Error("rollbar.js did not load");
148
+ for (var o, n, a, l, i = 0; (o = r._rollbarShims[i++]); )
149
+ for (o = o.messages || []; (n = o.shift()); )
150
+ for (a = n.args || [], i = 0; i < a.length; ++i)
151
+ if ("function" == typeof (l = a[i])) {
152
+ l(e);
153
+ break;
154
+ }
155
+ }
156
+ "function" == typeof t && t(e);
157
+ })();
158
+ }
159
+ })),
160
+ d.insertBefore(i, s);
161
+ }),
162
+ (i.prototype.wrap = function (r, e, o) {
163
+ try {
164
+ var n;
165
+ if (
166
+ ((n =
167
+ "function" == typeof e
168
+ ? e
169
+ : function () {
170
+ return e || {};
171
+ }),
172
+ "function" != typeof r)
173
+ )
174
+ return r;
175
+ if (r._isWrap) return r;
176
+ if (
177
+ !r._rollbar_wrapped &&
178
+ ((r._rollbar_wrapped = function () {
179
+ o && "function" == typeof o && o.apply(this, arguments);
180
+ try {
181
+ return r.apply(this, arguments);
182
+ } catch (o) {
183
+ var e = o;
184
+ throw (
185
+ (e &&
186
+ ("string" == typeof e && (e = new String(e)),
187
+ (e._rollbarContext = n() || {}),
188
+ (e._rollbarContext._wrappedSource = r.toString()),
189
+ (window._rollbarWrappedError = e)),
190
+ e)
191
+ );
192
+ }
193
+ }),
194
+ (r._rollbar_wrapped._isWrap = !0),
195
+ r.hasOwnProperty)
196
+ )
197
+ for (var t in r)
198
+ r.hasOwnProperty(t) && (r._rollbar_wrapped[t] = r[t]);
199
+ return r._rollbar_wrapped;
200
+ } catch (e) {
201
+ return r;
202
+ }
203
+ });
204
+ for (
205
+ var p =
206
+ "log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleAnonymousErrors,handleUnhandledRejection,captureEvent,captureDomContentLoaded,captureLoad".split(
207
+ ","
208
+ ),
209
+ f = 0;
210
+ f < p.length;
211
+ ++f
212
+ )
213
+ i.prototype[p[f]] = u(p[f]);
214
+ r.exports = {
215
+ setupShim: function (r, e) {
216
+ if (r) {
217
+ var o = e.globalAlias || "Rollbar";
218
+ if ("object" == typeof r[o]) return r[o];
219
+ (r._rollbarShims = {}), (r._rollbarWrappedError = null);
220
+ var l = new c(e);
221
+ return a(function () {
222
+ e.captureUncaught &&
223
+ ((l._rollbarOldOnError = r.onerror),
224
+ n.captureUncaughtExceptions(r, l, !0),
225
+ e.wrapGlobalEventHandlers && t(r, l, !0)),
226
+ e.captureUnhandledRejections &&
227
+ n.captureUnhandledRejections(r, l, !0);
228
+ var a = e.autoInstrument;
229
+ return (
230
+ !1 !== e.enabled &&
231
+ (void 0 === a ||
232
+ !0 === a ||
233
+ (function (r) {
234
+ return !(
235
+ "object" != typeof r ||
236
+ (void 0 !== r.page && !r.page)
237
+ );
238
+ })(a)) &&
239
+ r.addEventListener &&
240
+ (r.addEventListener("load", l.captureLoad.bind(l)),
241
+ r.addEventListener(
242
+ "DOMContentLoaded",
243
+ l.captureDomContentLoaded.bind(l)
244
+ )),
245
+ (r[o] = l),
246
+ l
247
+ );
248
+ })();
249
+ }
250
+ },
251
+ Rollbar: c,
252
+ };
253
+ },
254
+ function (r, e, o) {
255
+ "use strict";
256
+ function n(r, e, o, n) {
257
+ r._rollbarWrappedError &&
258
+ (n[4] || (n[4] = r._rollbarWrappedError),
259
+ n[5] || (n[5] = r._rollbarWrappedError._rollbarContext),
260
+ (r._rollbarWrappedError = null));
261
+ var t = e.handleUncaughtException.apply(e, n);
262
+ o && o.apply(r, n),
263
+ "anonymous" === t && (e.anonymousErrorsPending += 1);
264
+ }
265
+ r.exports = {
266
+ captureUncaughtExceptions: function (r, e, o) {
267
+ if (r) {
268
+ var t;
269
+ if ("function" == typeof e._rollbarOldOnError)
270
+ t = e._rollbarOldOnError;
271
+ else if (r.onerror) {
272
+ for (t = r.onerror; t._rollbarOldOnError; )
273
+ t = t._rollbarOldOnError;
274
+ e._rollbarOldOnError = t;
275
+ }
276
+ e.handleAnonymousErrors();
277
+ var a = function () {
278
+ var o = Array.prototype.slice.call(arguments, 0);
279
+ n(r, e, t, o);
280
+ };
281
+ o && (a._rollbarOldOnError = t), (r.onerror = a);
282
+ }
283
+ },
284
+ captureUnhandledRejections: function (r, e, o) {
285
+ if (r) {
286
+ "function" == typeof r._rollbarURH &&
287
+ r._rollbarURH.belongsToShim &&
288
+ r.removeEventListener("unhandledrejection", r._rollbarURH);
289
+ var n = function (r) {
290
+ var o, n, t;
291
+ try {
292
+ o = r.reason;
293
+ } catch (r) {
294
+ o = void 0;
295
+ }
296
+ try {
297
+ n = r.promise;
298
+ } catch (r) {
299
+ n = "[unhandledrejection] error getting `promise` from event";
300
+ }
301
+ try {
302
+ (t = r.detail), !o && t && ((o = t.reason), (n = t.promise));
303
+ } catch (r) {}
304
+ o ||
305
+ (o = "[unhandledrejection] error getting `reason` from event"),
306
+ e &&
307
+ e.handleUnhandledRejection &&
308
+ e.handleUnhandledRejection(o, n);
309
+ };
310
+ (n.belongsToShim = o),
311
+ (r._rollbarURH = n),
312
+ r.addEventListener("unhandledrejection", n);
313
+ }
314
+ },
315
+ };
316
+ },
317
+ function (r, e, o) {
318
+ "use strict";
319
+ function n(r, e, o) {
320
+ if (e.hasOwnProperty && e.hasOwnProperty("addEventListener")) {
321
+ for (
322
+ var n = e.addEventListener;
323
+ n._rollbarOldAdd && n.belongsToShim;
324
+
325
+ )
326
+ n = n._rollbarOldAdd;
327
+ var t = function (e, o, t) {
328
+ n.call(this, e, r.wrap(o), t);
329
+ };
330
+ (t._rollbarOldAdd = n),
331
+ (t.belongsToShim = o),
332
+ (e.addEventListener = t);
333
+ for (
334
+ var a = e.removeEventListener;
335
+ a._rollbarOldRemove && a.belongsToShim;
336
+
337
+ )
338
+ a = a._rollbarOldRemove;
339
+ var l = function (r, e, o) {
340
+ a.call(this, r, (e && e._rollbar_wrapped) || e, o);
341
+ };
342
+ (l._rollbarOldRemove = a),
343
+ (l.belongsToShim = o),
344
+ (e.removeEventListener = l);
345
+ }
346
+ }
347
+ r.exports = function (r, e, o) {
348
+ if (r) {
349
+ var t,
350
+ a,
351
+ l =
352
+ "EventTarget,Window,Node,ApplicationCache,AudioTrackList,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload".split(
353
+ ","
354
+ );
355
+ for (t = 0; t < l.length; ++t)
356
+ r[(a = l[t])] && r[a].prototype && n(e, r[a].prototype, o);
357
+ }
358
+ };
359
+ },
360
+ function (r, e, o) {
361
+ "use strict";
362
+ function n(r, e) {
363
+ (this.impl = r(e, this)),
364
+ (this.options = e),
365
+ (function (r) {
366
+ for (
367
+ var e = function (r) {
368
+ return function () {
369
+ var e = Array.prototype.slice.call(arguments, 0);
370
+ if (this.impl[r]) return this.impl[r].apply(this.impl, e);
371
+ };
372
+ },
373
+ o =
374
+ "log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleAnonymousErrors,handleUnhandledRejection,_createItem,wrap,loadFull,shimId,captureEvent,captureDomContentLoaded,captureLoad".split(
375
+ ","
376
+ ),
377
+ n = 0;
378
+ n < o.length;
379
+ n++
380
+ )
381
+ r[o[n]] = e(o[n]);
382
+ })(n.prototype);
383
+ }
384
+ (n.prototype._swapAndProcessMessages = function (r, e) {
385
+ var o, n, t;
386
+ for (this.impl = r(this.options); (o = e.shift()); )
387
+ (n = o.method),
388
+ (t = o.args),
389
+ this[n] &&
390
+ "function" == typeof this[n] &&
391
+ ("captureDomContentLoaded" === n || "captureLoad" === n
392
+ ? this[n].apply(this, [t[0], o.ts])
393
+ : this[n].apply(this, t));
394
+ return this;
395
+ }),
396
+ (r.exports = n);
397
+ },
398
+ function (r, e, o) {
399
+ "use strict";
400
+ r.exports = function (r) {
401
+ return function (e) {
402
+ if (!e && !window._rollbarInitialized) {
403
+ for (
404
+ var o,
405
+ n,
406
+ t = (r = r || {}).globalAlias || "Rollbar",
407
+ a = window.rollbar,
408
+ l = function (r) {
409
+ return new a(r);
410
+ },
411
+ i = 0;
412
+ (o = window._rollbarShims[i++]);
413
+
414
+ )
415
+ n || (n = o.handler),
416
+ o.handler._swapAndProcessMessages(l, o.messages);
417
+ (window[t] = n), (window._rollbarInitialized = !0);
418
+ }
419
+ };
420
+ };
421
+ },
422
+ ]);
423
+ </script>
424
+ {%- endif -%} {%- include adblocker.html -%} {% assign scriptData =
425
+ site.data.[page.folderName][lang][file] %} {%- assign dataAtt =
426
+ "data-folderName='$folderName' data-lang='$lang' data-fileName='$fileName'
427
+ data-tool='$tool'" -%} {%- assign $folderName = '$folderName' -%} {%- if
428
+ site.removeJquery != true -%}
429
+ <script
430
+ defer
431
+ src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"
432
+ {%-
433
+ if
434
+ site.crossorigin
435
+ -%}
436
+ {{
437
+ }}
438
+ crossorigin
439
+ {%-
440
+ endif
441
+ -%}
442
+ ></script>
443
+ {%- endif -%}
444
+
445
+ <script defer src="/assets/js/theme.js" crossorigin="anonymous"></script>
446
+ {%- if site.userTrackingCount -%} {%- include customScripts.html -%} {%- endif
447
+ -%} {%- if site.userTrackingCount and page.layout == "feature" -%}
448
+ <script defer src="/assets/js/usageTracking.js"></script>
449
+ <script defer src="/assets/js/usageTrackingEvents.js"></script>
450
+ <script defer src="/assets/js/sharePage.js"></script>
451
+ {%- endif -%} {%- if site.removeBootstrapJs != true -%}
452
+ <script
453
+ defer="defer"
454
+ src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js"
455
+ integrity="sha384-Piv4xVNRyMGpqkS2by6br4gNJ7DXjqk09RmUpJ8jgGtD7zP9yug3goQfGII0yAns"
456
+ crossorigin="anonymous"
457
+ ></script>
458
+ {%- endif -%} {{site.data.customcdns.customcdns.jsfiles}} {%- if
459
+ scriptData.jsfilepaths -%} {%- for path in scriptData.jsfilepaths -%} {%- assign
460
+ asset_dir = path -%} {%- if site.versioning and asset_dir != "" -%} {%- if
461
+ asset_dir contains "https" and asset_dir contains "https://" -%}
462
+ <script
463
+ defer
464
+ src="{{path}}"
465
+ data-folderName="{{page.folderName}}"
466
+ data-lang="{{page.lang}}"
467
+ data-fileName="{{page.fileName}}"
468
+ data-tool="{{page.tool}}"
469
+ data-permalink="{{page.permalink}}"
470
+ {%-
471
+ if
472
+ site.crossorigin
473
+ -%}
474
+ {{
475
+ }}
476
+ crossorigin
477
+ {%-
478
+ endif
479
+ -%}
480
+ ></script>
481
+ {%- else -%}
482
+ <script
483
+ defer
484
+ src="{% ministamp { source_path: '{{ asset_dir }}', destination_path: '{{ asset_dir }}' } %}"
485
+ data-folderName="{{page.folderName}}"
486
+ data-lang="{{page.lang}}"
487
+ data-fileName="{{page.fileName}}"
488
+ data-tool="{{page.tool}}"
489
+ data-permalink="{{page.permalink}}"
490
+ {%-
491
+ if
492
+ site.crossorigin
493
+ -%}
494
+ {{
495
+ }}
496
+ crossorigin
497
+ {%-
498
+ endif
499
+ -%}
500
+ ></script>
501
+ {%- endif -%} {%- else -%}
502
+ <script
503
+ defer
504
+ src="{{path}}"
505
+ data-folderName="{{page.folderName}}"
506
+ data-lang="{{page.lang}}"
507
+ data-fileName="{{page.fileName}}"
508
+ data-tool="{{page.tool}}"
509
+ data-permalink="{{page.permalink}}"
510
+ {%-
511
+ if
512
+ site.crossorigin
513
+ -%}
514
+ {{
515
+ }}
516
+ crossorigin
517
+ {%-
518
+ endif
519
+ -%}
520
+ ></script>
521
+ {%- endif -%} {%- endfor -%} {%- endif -%} {%- if scriptData.jscdns -%} {%- for
522
+ item in scriptData.jscdns -%} {{item | replace:"$folderName", page.folderName |
523
+ replace: "$fileName", page.fileName | replace: "$lang", page.lang | replace:
524
+ "$tool", page.tool }} {%- endfor -%} {%- endif -%} {%- if page.layout == "frame"
525
+ -%} {%- assign font = "PT Sans" -%} {%- endif -%} {%- if page.layout ==
526
+ "photo-effects-home" -%} {%- assign font = "PT Sans" -%} {%- endif -%} {%- if
527
+ page.layout == "calculator" -%}
528
+ <script defer src="/assets/js/calculator-tooltip.js"></script>
529
+ {%- endif -%} {%- if page.layout == 'home-1' or page.layout == "feature-1" -%}
530
+ {%- assign font = "Inter" -%} {%- endif -%} {%- if site.removeFontAwesome !=
531
+ true -%}
532
+ <link
533
+ rel="stylesheet"
534
+ href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css"
535
+ integrity="sha512-iBBXm8fW90+nuLcSKlbmrPcLa0OT92xO1BIsZ+ywDWZCvqsWgccV3gFoRBv0z+8dLJgyAHIhR35VZc2oM/gI1w=="
536
+ crossorigin="anonymous"
537
+ referrerpolicy="no-referrer"
538
+ />
539
+ {%- endif -%} {%- if page.layout == "feature" -%}
540
+ <script>
541
+ const toaster = document.querySelector(".toaster");
542
+ if (
543
+ !/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(
544
+ navigator.userAgent
545
+ )
546
+ ) {
547
+ if (navigator.userAgent.indexOf("Mac OS X") != -1) {
548
+ toaster.innerHTML = `Press Command + D to Bookmark this page`;
549
+ } else {
550
+ toaster.innerHTML = `Press Ctrl + D to Bookmark this page`;
551
+ }
552
+ }
553
+ setTimeout(() => {
554
+ toaster.style.display = "none";
555
+ }, 20000);
556
+ </script>
557
+ {%- endif -%}