edge-impulse-linux 1.13.1 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/build/cli/linux/runner-utils.d.ts +1 -0
  2. package/build/cli/linux/runner-utils.js +45 -2
  3. package/build/cli/linux/runner-utils.js.map +1 -1
  4. package/build/cli/linux/runner.js +55 -7
  5. package/build/cli/linux/runner.js.map +1 -1
  6. package/build/cli/linux/webserver/public/inference-server.js +17 -1
  7. package/build/cli/linux/webserver/public/inference-server.js.map +1 -1
  8. package/build/cli/linux/webserver/public/webserver.js +108 -1
  9. package/build/cli/linux/webserver/public/webserver.js.map +1 -1
  10. package/build/sdk/studio/sdk/api/adminApi.d.ts +20 -0
  11. package/build/sdk/studio/sdk/api/adminApi.js +148 -0
  12. package/build/sdk/studio/sdk/api/adminApi.js.map +1 -1
  13. package/build/sdk/studio/sdk/api/classifyApi.d.ts +12 -0
  14. package/build/sdk/studio/sdk/api/classifyApi.js +24 -0
  15. package/build/sdk/studio/sdk/api/classifyApi.js.map +1 -1
  16. package/build/sdk/studio/sdk/api/dSPApi.d.ts +4 -0
  17. package/build/sdk/studio/sdk/api/dSPApi.js +8 -0
  18. package/build/sdk/studio/sdk/api/dSPApi.js.map +1 -1
  19. package/build/sdk/studio/sdk/api/rawDataApi.d.ts +8 -0
  20. package/build/sdk/studio/sdk/api/rawDataApi.js +16 -0
  21. package/build/sdk/studio/sdk/api/rawDataApi.js.map +1 -1
  22. package/build/sdk/studio/sdk/model/aIActionsDataCategory.d.ts +1 -1
  23. package/build/sdk/studio/sdk/model/aIActionsDataCategory.js +1 -1
  24. package/build/sdk/studio/sdk/model/aIActionsDataCategory.js.map +1 -1
  25. package/build/sdk/studio/sdk/model/adminApiUser.d.ts +0 -1
  26. package/build/sdk/studio/sdk/model/adminApiUser.js +0 -5
  27. package/build/sdk/studio/sdk/model/adminApiUser.js.map +1 -1
  28. package/build/sdk/studio/sdk/model/exportOriginalDataRequest.d.ts +1 -1
  29. package/build/sdk/studio/sdk/model/getUserResponse.d.ts +2 -1
  30. package/build/sdk/studio/sdk/model/getUserResponse.js +5 -5
  31. package/build/sdk/studio/sdk/model/getUserResponse.js.map +1 -1
  32. package/build/sdk/studio/sdk/model/getUserResponseAllOf.d.ts +2 -0
  33. package/build/sdk/studio/sdk/model/getUserResponseAllOf.js +5 -0
  34. package/build/sdk/studio/sdk/model/getUserResponseAllOf.js.map +1 -1
  35. package/build/sdk/studio/sdk/model/getUserResponseAllOfLastAcceptedTermsOfService.d.ts +26 -0
  36. package/build/sdk/studio/sdk/model/getUserResponseAllOfLastAcceptedTermsOfService.js +34 -0
  37. package/build/sdk/studio/sdk/model/getUserResponseAllOfLastAcceptedTermsOfService.js.map +1 -0
  38. package/build/sdk/studio/sdk/model/models.d.ts +1 -0
  39. package/build/sdk/studio/sdk/model/models.js +3 -0
  40. package/build/sdk/studio/sdk/model/models.js.map +1 -1
  41. package/build/sdk/studio/sdk/model/organizationUser.d.ts +0 -1
  42. package/build/sdk/studio/sdk/model/organizationUser.js +0 -5
  43. package/build/sdk/studio/sdk/model/organizationUser.js.map +1 -1
  44. package/build/sdk/studio/sdk/model/projectCollaborator.d.ts +0 -1
  45. package/build/sdk/studio/sdk/model/projectCollaborator.js +0 -5
  46. package/build/sdk/studio/sdk/model/projectCollaborator.js.map +1 -1
  47. package/build/sdk/studio/sdk/model/user.d.ts +0 -1
  48. package/build/sdk/studio/sdk/model/user.js +0 -5
  49. package/build/sdk/studio/sdk/model/user.js.map +1 -1
  50. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/all.css +4616 -0
  51. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/all.min.css +5 -0
  52. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/brands.css +15 -0
  53. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/brands.min.css +5 -0
  54. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/fontawesome.css +4582 -0
  55. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/fontawesome.min.css +5 -0
  56. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/regular.css +15 -0
  57. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/regular.min.css +5 -0
  58. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/solid.css +16 -0
  59. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/solid.min.css +5 -0
  60. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/svg-with-js.css +371 -0
  61. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/svg-with-js.min.css +5 -0
  62. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/v4-shims.css +2172 -0
  63. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/css/v4-shims.min.css +5 -0
  64. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-brands-400.eot +0 -0
  65. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-brands-400.svg +3717 -0
  66. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-brands-400.ttf +0 -0
  67. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-brands-400.woff +0 -0
  68. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-brands-400.woff2 +0 -0
  69. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-regular-400.eot +0 -0
  70. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-regular-400.svg +801 -0
  71. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-regular-400.ttf +0 -0
  72. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-regular-400.woff +0 -0
  73. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-regular-400.woff2 +0 -0
  74. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-solid-900.eot +0 -0
  75. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-solid-900.svg +5034 -0
  76. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-solid-900.ttf +0 -0
  77. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-solid-900.woff +0 -0
  78. package/cli/linux/webserver/public/assets/fontawesome-free-5.15.4-web/webfonts/fa-solid-900.woff2 +0 -0
  79. package/cli/linux/webserver/public/assets/js/argon-dashboard.js +1093 -0
  80. package/cli/linux/webserver/public/assets/js/argon-dashboard.js.map +1 -0
  81. package/cli/linux/webserver/public/assets/js/argon-dashboard.min.js +2 -0
  82. package/cli/linux/webserver/public/assets/js/argon.min.js +18 -0
  83. package/cli/linux/webserver/public/assets/js/plugins/bootstrap/dist/js/bootstrap.bundle.js +7021 -0
  84. package/cli/linux/webserver/public/assets/js/plugins/jquery/dist/core.js +398 -0
  85. package/cli/linux/webserver/public/assets/js/plugins/jquery/dist/jquery.min.js +24 -0
  86. package/cli/linux/webserver/public/assets/mobileclient.css +6 -0
  87. package/cli/linux/webserver/public/index.html +15 -2
  88. package/cli/linux/webserver/public/inference-server.js +18 -1
  89. package/cli/linux/webserver/public/webserver.js +130 -1
  90. package/package.json +2 -2
@@ -0,0 +1,1093 @@
1
+ /*!
2
+
3
+ =========================================================
4
+ * Argon Dashboard - v1.1.0
5
+ =========================================================
6
+
7
+ * Product Page: https://www.creative-tim.com/product/argon-dashboard
8
+ * Copyright 2018 Creative Tim (https://www.creative-tim.com)
9
+ * Licensed under MIT (https://github.com/creativetimofficial/argon-dashboard/blob/master/LICENSE.md)
10
+
11
+ * Coded by www.creative-tim.com
12
+
13
+ =========================================================
14
+
15
+ * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
16
+
17
+ */
18
+
19
+ //
20
+ // Bootstrap Datepicker
21
+ //
22
+
23
+ 'use strict';
24
+
25
+ var Datepicker = (function() {
26
+
27
+ // Variables
28
+
29
+ var $datepicker = $('.datepicker');
30
+
31
+
32
+ // Methods
33
+
34
+ function init($this) {
35
+ var options = {
36
+ disableTouchKeyboard: true,
37
+ autoclose: false
38
+ };
39
+
40
+ $this.datepicker(options);
41
+ }
42
+
43
+
44
+ // Events
45
+
46
+ if ($datepicker.length) {
47
+ $datepicker.each(function() {
48
+ init($(this));
49
+ });
50
+ }
51
+
52
+ })();
53
+
54
+ //
55
+ // Icon code copy/paste
56
+ //
57
+
58
+ 'use strict';
59
+
60
+ var CopyIcon = (function() {
61
+
62
+ // Variables
63
+
64
+ var $element = '.btn-icon-clipboard',
65
+ $btn = $($element);
66
+
67
+
68
+ // Methods
69
+
70
+ function init($this) {
71
+ $this.tooltip().on('mouseleave', function() {
72
+ // Explicitly hide tooltip, since after clicking it remains
73
+ // focused (as it's a button), so tooltip would otherwise
74
+ // remain visible until focus is moved away
75
+ $this.tooltip('hide');
76
+ });
77
+
78
+ var clipboard = new ClipboardJS($element);
79
+
80
+ clipboard.on('success', function(e) {
81
+ $(e.trigger)
82
+ .attr('title', 'Copied!')
83
+ .tooltip('_fixTitle')
84
+ .tooltip('show')
85
+ .attr('title', 'Copy to clipboard')
86
+ .tooltip('_fixTitle')
87
+
88
+ e.clearSelection()
89
+ });
90
+ }
91
+
92
+
93
+ // Events
94
+ if ($btn.length) {
95
+ init($btn);
96
+ }
97
+
98
+ })();
99
+
100
+ //
101
+ // Form control
102
+ //
103
+
104
+ 'use strict';
105
+
106
+ var FormControl = (function() {
107
+
108
+ // Variables
109
+
110
+ var $input = $('.form-control');
111
+
112
+
113
+ // Methods
114
+
115
+ function init($this) {
116
+ $this.on('focus blur', function(e) {
117
+ $(this).parents('.form-group').toggleClass('focused', (e.type === 'focus' || this.value.length > 0));
118
+ }).trigger('blur');
119
+ }
120
+
121
+
122
+ // Events
123
+
124
+ if ($input.length) {
125
+ init($input);
126
+ }
127
+
128
+ })();
129
+
130
+ //
131
+ // Google maps
132
+ //
133
+
134
+ var $map = $('#map-canvas'),
135
+ map,
136
+ lat,
137
+ lng,
138
+ color = "#5e72e4";
139
+
140
+ function initMap() {
141
+
142
+ map = document.getElementById('map-canvas');
143
+ lat = map.getAttribute('data-lat');
144
+ lng = map.getAttribute('data-lng');
145
+
146
+ var myLatlng = new google.maps.LatLng(lat, lng);
147
+ var mapOptions = {
148
+ zoom: 12,
149
+ scrollwheel: false,
150
+ center: myLatlng,
151
+ mapTypeId: google.maps.MapTypeId.ROADMAP,
152
+ styles: [{
153
+ "featureType": "administrative",
154
+ "elementType": "labels.text.fill",
155
+ "stylers": [{
156
+ "color": "#444444"
157
+ }]
158
+ }, {
159
+ "featureType": "landscape",
160
+ "elementType": "all",
161
+ "stylers": [{
162
+ "color": "#f2f2f2"
163
+ }]
164
+ }, {
165
+ "featureType": "poi",
166
+ "elementType": "all",
167
+ "stylers": [{
168
+ "visibility": "off"
169
+ }]
170
+ }, {
171
+ "featureType": "road",
172
+ "elementType": "all",
173
+ "stylers": [{
174
+ "saturation": -100
175
+ }, {
176
+ "lightness": 45
177
+ }]
178
+ }, {
179
+ "featureType": "road.highway",
180
+ "elementType": "all",
181
+ "stylers": [{
182
+ "visibility": "simplified"
183
+ }]
184
+ }, {
185
+ "featureType": "road.arterial",
186
+ "elementType": "labels.icon",
187
+ "stylers": [{
188
+ "visibility": "off"
189
+ }]
190
+ }, {
191
+ "featureType": "transit",
192
+ "elementType": "all",
193
+ "stylers": [{
194
+ "visibility": "off"
195
+ }]
196
+ }, {
197
+ "featureType": "water",
198
+ "elementType": "all",
199
+ "stylers": [{
200
+ "color": color
201
+ }, {
202
+ "visibility": "on"
203
+ }]
204
+ }]
205
+ }
206
+
207
+ map = new google.maps.Map(map, mapOptions);
208
+
209
+ var marker = new google.maps.Marker({
210
+ position: myLatlng,
211
+ map: map,
212
+ animation: google.maps.Animation.DROP,
213
+ title: 'Hello World!'
214
+ });
215
+
216
+ var contentString = '<div class="info-window-content"><h2>Argon Dashboard</h2>' +
217
+ '<p>A beautiful Dashboard for Bootstrap 4. It is Free and Open Source.</p></div>';
218
+
219
+ var infowindow = new google.maps.InfoWindow({
220
+ content: contentString
221
+ });
222
+
223
+ google.maps.event.addListener(marker, 'click', function() {
224
+ infowindow.open(map, marker);
225
+ });
226
+ }
227
+
228
+ if ($map.length) {
229
+ google.maps.event.addDomListener(window, 'load', initMap);
230
+ }
231
+
232
+ // //
233
+ // // Headroom - show/hide navbar on scroll
234
+ // //
235
+ //
236
+ // 'use strict';
237
+ //
238
+ // var Headroom = (function() {
239
+ //
240
+ // // Variables
241
+ //
242
+ // var $headroom = $('#navbar-main');
243
+ //
244
+ //
245
+ // // Methods
246
+ //
247
+ // function init($this) {
248
+ //
249
+ // var headroom = new Headroom(document.querySelector("#navbar-main"), {
250
+ // offset: 300,
251
+ // tolerance: {
252
+ // up: 30,
253
+ // down: 30
254
+ // },
255
+ // });
256
+ //
257
+ //
258
+ //
259
+ // // Events
260
+ //
261
+ // if ($headroom.length) {
262
+ // headroom.init();
263
+ // }
264
+ //
265
+ // })();
266
+
267
+ //
268
+ // Navbar
269
+ //
270
+
271
+ 'use strict';
272
+
273
+ var Navbar = (function() {
274
+
275
+ // Variables
276
+
277
+ var $nav = $('.navbar-nav, .navbar-nav .nav');
278
+ var $collapse = $('.navbar .collapse');
279
+ var $dropdown = $('.navbar .dropdown');
280
+
281
+ // Methods
282
+
283
+ function accordion($this) {
284
+ $this.closest($nav).find($collapse).not($this).collapse('hide');
285
+ }
286
+
287
+ function closeDropdown($this) {
288
+ var $dropdownMenu = $this.find('.dropdown-menu');
289
+
290
+ $dropdownMenu.addClass('close');
291
+
292
+ setTimeout(function() {
293
+ $dropdownMenu.removeClass('close');
294
+ }, 200);
295
+ }
296
+
297
+
298
+ // Events
299
+
300
+ $collapse.on({
301
+ 'show.bs.collapse': function() {
302
+ accordion($(this));
303
+ }
304
+ })
305
+
306
+ $dropdown.on({
307
+ 'hide.bs.dropdown': function() {
308
+ closeDropdown($(this));
309
+ }
310
+ })
311
+
312
+ })();
313
+
314
+
315
+ //
316
+ // Navbar collapse
317
+ //
318
+
319
+
320
+ var NavbarCollapse = (function() {
321
+
322
+ // Variables
323
+
324
+ var $nav = $('.navbar-nav'),
325
+ $collapse = $('.navbar .collapse');
326
+
327
+
328
+ // Methods
329
+
330
+ function hideNavbarCollapse($this) {
331
+ $this.addClass('collapsing-out');
332
+ }
333
+
334
+ function hiddenNavbarCollapse($this) {
335
+ $this.removeClass('collapsing-out');
336
+ }
337
+
338
+
339
+ // Events
340
+
341
+ if ($collapse.length) {
342
+ $collapse.on({
343
+ 'hide.bs.collapse': function() {
344
+ hideNavbarCollapse($collapse);
345
+ }
346
+ })
347
+
348
+ $collapse.on({
349
+ 'hidden.bs.collapse': function() {
350
+ hiddenNavbarCollapse($collapse);
351
+ }
352
+ })
353
+ }
354
+
355
+ })();
356
+
357
+ //
358
+ // Form control
359
+ //
360
+
361
+ // 'use strict';
362
+
363
+ // var noUiSlider = (function() {
364
+
365
+ // // Variables
366
+
367
+ // // var $sliderContainer = $('.input-slider-container'),
368
+ // // $slider = $('.input-slider'),
369
+ // // $sliderId = $slider.attr('id'),
370
+ // // $sliderMinValue = $slider.data('range-value-min');
371
+ // // $sliderMaxValue = $slider.data('range-value-max');;
372
+
373
+
374
+ // // // Methods
375
+ // //
376
+ // // function init($this) {
377
+ // // $this.on('focus blur', function(e) {
378
+ // // $this.parents('.form-group').toggleClass('focused', (e.type === 'focus' || this.value.length > 0));
379
+ // // }).trigger('blur');
380
+ // // }
381
+ // //
382
+ // //
383
+ // // // Events
384
+ // //
385
+ // // if ($input.length) {
386
+ // // init($input);
387
+ // // }
388
+
389
+
390
+
391
+ // if ($(".input-slider-container")[0]) {
392
+ // $('.input-slider-container').each(function() {
393
+
394
+ // var slider = $(this).find('.input-slider');
395
+ // var sliderId = slider.attr('id');
396
+ // var minValue = slider.data('range-value-min');
397
+ // var maxValue = slider.data('range-value-max');
398
+
399
+ // var sliderValue = $(this).find('.range-slider-value');
400
+ // var sliderValueId = sliderValue.attr('id');
401
+ // var startValue = sliderValue.data('range-value-low');
402
+
403
+ // var c = document.getElementById(sliderId),
404
+ // d = document.getElementById(sliderValueId);
405
+
406
+ // noUiSlider.create(c, {
407
+ // start: [parseInt(startValue)],
408
+ // connect: [true, false],
409
+ // //step: 1000,
410
+ // range: {
411
+ // 'min': [parseInt(minValue)],
412
+ // 'max': [parseInt(maxValue)]
413
+ // }
414
+ // });
415
+
416
+ // c.noUiSlider.on('update', function(a, b) {
417
+ // d.textContent = a[b];
418
+ // });
419
+ // })
420
+ // }
421
+
422
+ // if ($("#input-slider-range")[0]) {
423
+ // var c = document.getElementById("input-slider-range"),
424
+ // d = document.getElementById("input-slider-range-value-low"),
425
+ // e = document.getElementById("input-slider-range-value-high"),
426
+ // f = [d, e];
427
+
428
+ // noUiSlider.create(c, {
429
+ // start: [parseInt(d.getAttribute('data-range-value-low')), parseInt(e.getAttribute('data-range-value-high'))],
430
+ // connect: !0,
431
+ // range: {
432
+ // min: parseInt(c.getAttribute('data-range-value-min')),
433
+ // max: parseInt(c.getAttribute('data-range-value-max'))
434
+ // }
435
+ // }), c.noUiSlider.on("update", function(a, b) {
436
+ // f[b].textContent = a[b]
437
+ // })
438
+ // }
439
+
440
+ // })();
441
+
442
+ //
443
+ // Popover
444
+ //
445
+
446
+ 'use strict';
447
+
448
+ var Popover = (function() {
449
+
450
+ // Variables
451
+
452
+ var $popover = $('[data-toggle="popover"]'),
453
+ $popoverClass = '';
454
+
455
+
456
+ // Methods
457
+
458
+ function init($this) {
459
+ if ($this.data('color')) {
460
+ $popoverClass = 'popover-' + $this.data('color');
461
+ }
462
+
463
+ var options = {
464
+ trigger: 'focus',
465
+ template: '<div class="popover ' + $popoverClass + '" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'
466
+ };
467
+
468
+ $this.popover(options);
469
+ }
470
+
471
+
472
+ // Events
473
+
474
+ if ($popover.length) {
475
+ $popover.each(function() {
476
+ init($(this));
477
+ });
478
+ }
479
+
480
+ })();
481
+
482
+ //
483
+ // Scroll to (anchor links)
484
+ //
485
+
486
+ 'use strict';
487
+
488
+ var ScrollTo = (function() {
489
+
490
+ //
491
+ // Variables
492
+ //
493
+
494
+ var $scrollTo = $('.scroll-me, [data-scroll-to], .toc-entry a');
495
+
496
+
497
+ //
498
+ // Methods
499
+ //
500
+
501
+ function scrollTo($this) {
502
+ var $el = $this.attr('href');
503
+ var offset = $this.data('scroll-to-offset') ? $this.data('scroll-to-offset') : 0;
504
+ var options = {
505
+ scrollTop: $($el).offset().top - offset
506
+ };
507
+
508
+ // Animate scroll to the selected section
509
+ $('html, body').stop(true, true).animate(options, 600);
510
+
511
+ event.preventDefault();
512
+ }
513
+
514
+
515
+ //
516
+ // Events
517
+ //
518
+
519
+ if ($scrollTo.length) {
520
+ $scrollTo.on('click', function(event) {
521
+ scrollTo($(this));
522
+ });
523
+ }
524
+
525
+ })();
526
+
527
+ //
528
+ // Charts
529
+ //
530
+
531
+ 'use strict';
532
+
533
+ var Charts = (function() {
534
+
535
+ // Variable
536
+
537
+ var $toggle = $('[data-toggle="chart"]');
538
+ var mode = 'light'; //(themeMode) ? themeMode : 'light';
539
+ var fonts = {
540
+ base: 'Open Sans'
541
+ }
542
+
543
+ // Colors
544
+ var colors = {
545
+ gray: {
546
+ 100: '#f6f9fc',
547
+ 200: '#e9ecef',
548
+ 300: '#dee2e6',
549
+ 400: '#ced4da',
550
+ 500: '#adb5bd',
551
+ 600: '#8898aa',
552
+ 700: '#525f7f',
553
+ 800: '#32325d',
554
+ 900: '#212529'
555
+ },
556
+ theme: {
557
+ 'default': '#172b4d',
558
+ 'primary': '#5e72e4',
559
+ 'secondary': '#f4f5f7',
560
+ 'info': '#11cdef',
561
+ 'success': '#2dce89',
562
+ 'danger': '#f5365c',
563
+ 'warning': '#fb6340'
564
+ },
565
+ black: '#12263F',
566
+ white: '#FFFFFF',
567
+ transparent: 'transparent',
568
+ };
569
+
570
+
571
+ // Methods
572
+
573
+ // Chart.js global options
574
+ function chartOptions() {
575
+
576
+ // Options
577
+ var options = {
578
+ defaults: {
579
+ global: {
580
+ responsive: true,
581
+ maintainAspectRatio: false,
582
+ defaultColor: (mode == 'dark') ? colors.gray[700] : colors.gray[600],
583
+ defaultFontColor: (mode == 'dark') ? colors.gray[700] : colors.gray[600],
584
+ defaultFontFamily: fonts.base,
585
+ defaultFontSize: 13,
586
+ layout: {
587
+ padding: 0
588
+ },
589
+ legend: {
590
+ display: false,
591
+ position: 'bottom',
592
+ labels: {
593
+ usePointStyle: true,
594
+ padding: 16
595
+ }
596
+ },
597
+ elements: {
598
+ point: {
599
+ radius: 0,
600
+ backgroundColor: colors.theme['primary']
601
+ },
602
+ line: {
603
+ tension: .4,
604
+ borderWidth: 4,
605
+ borderColor: colors.theme['primary'],
606
+ backgroundColor: colors.transparent,
607
+ borderCapStyle: 'rounded'
608
+ },
609
+ rectangle: {
610
+ backgroundColor: colors.theme['warning']
611
+ },
612
+ arc: {
613
+ backgroundColor: colors.theme['primary'],
614
+ borderColor: (mode == 'dark') ? colors.gray[800] : colors.white,
615
+ borderWidth: 4
616
+ }
617
+ },
618
+ tooltips: {
619
+ enabled: false,
620
+ mode: 'index',
621
+ intersect: false,
622
+ custom: function(model) {
623
+
624
+ // Get tooltip
625
+ var $tooltip = $('#chart-tooltip');
626
+
627
+ // Create tooltip on first render
628
+ if (!$tooltip.length) {
629
+ $tooltip = $('<div id="chart-tooltip" class="popover bs-popover-top" role="tooltip"></div>');
630
+
631
+ // Append to body
632
+ $('body').append($tooltip);
633
+ }
634
+
635
+ // Hide if no tooltip
636
+ if (model.opacity === 0) {
637
+ $tooltip.css('display', 'none');
638
+ return;
639
+ }
640
+
641
+ function getBody(bodyItem) {
642
+ return bodyItem.lines;
643
+ }
644
+
645
+ // Fill with content
646
+ if (model.body) {
647
+ var titleLines = model.title || [];
648
+ var bodyLines = model.body.map(getBody);
649
+ var html = '';
650
+
651
+ // Add arrow
652
+ html += '<div class="arrow"></div>';
653
+
654
+ // Add header
655
+ titleLines.forEach(function(title) {
656
+ html += '<h3 class="popover-header text-center">' + title + '</h3>';
657
+ });
658
+
659
+ // Add body
660
+ bodyLines.forEach(function(body, i) {
661
+ var colors = model.labelColors[i];
662
+ var styles = 'background-color: ' + colors.backgroundColor;
663
+ var indicator = '<span class="badge badge-dot"><i class="bg-primary"></i></span>';
664
+ var align = (bodyLines.length > 1) ? 'justify-content-left' : 'justify-content-center';
665
+ html += '<div class="popover-body d-flex align-items-center ' + align + '">' + indicator + body + '</div>';
666
+ });
667
+
668
+ $tooltip.html(html);
669
+ }
670
+
671
+ // Get tooltip position
672
+ var $canvas = $(this._chart.canvas);
673
+
674
+ var canvasWidth = $canvas.outerWidth();
675
+ var canvasHeight = $canvas.outerHeight();
676
+
677
+ var canvasTop = $canvas.offset().top;
678
+ var canvasLeft = $canvas.offset().left;
679
+
680
+ var tooltipWidth = $tooltip.outerWidth();
681
+ var tooltipHeight = $tooltip.outerHeight();
682
+
683
+ var top = canvasTop + model.caretY - tooltipHeight - 16;
684
+ var left = canvasLeft + model.caretX - tooltipWidth / 2;
685
+
686
+ // Display tooltip
687
+ $tooltip.css({
688
+ 'top': top + 'px',
689
+ 'left': left + 'px',
690
+ 'display': 'block',
691
+ 'z-index': '100'
692
+ });
693
+
694
+ },
695
+ callbacks: {
696
+ label: function(item, data) {
697
+ var label = data.datasets[item.datasetIndex].label || '';
698
+ var yLabel = item.yLabel;
699
+ var content = '';
700
+
701
+ if (data.datasets.length > 1) {
702
+ content += '<span class="badge badge-primary mr-auto">' + label + '</span>';
703
+ }
704
+
705
+ content += '<span class="popover-body-value">' + yLabel + '</span>';
706
+ return content;
707
+ }
708
+ }
709
+ }
710
+ },
711
+ doughnut: {
712
+ cutoutPercentage: 83,
713
+ tooltips: {
714
+ callbacks: {
715
+ title: function(item, data) {
716
+ var title = data.labels[item[0].index];
717
+ return title;
718
+ },
719
+ label: function(item, data) {
720
+ var value = data.datasets[0].data[item.index];
721
+ var content = '';
722
+
723
+ content += '<span class="popover-body-value">' + value + '</span>';
724
+ return content;
725
+ }
726
+ }
727
+ },
728
+ legendCallback: function(chart) {
729
+ var data = chart.data;
730
+ var content = '';
731
+
732
+ data.labels.forEach(function(label, index) {
733
+ var bgColor = data.datasets[0].backgroundColor[index];
734
+
735
+ content += '<span class="chart-legend-item">';
736
+ content += '<i class="chart-legend-indicator" style="background-color: ' + bgColor + '"></i>';
737
+ content += label;
738
+ content += '</span>';
739
+ });
740
+
741
+ return content;
742
+ }
743
+ }
744
+ }
745
+ }
746
+
747
+ // yAxes
748
+ // Chart.scaleService.updateScaleDefaults('linear', {
749
+ // gridLines: {
750
+ // borderDash: [2],
751
+ // borderDashOffset: [2],
752
+ // color: (mode == 'dark') ? colors.gray[900] : colors.gray[300],
753
+ // drawBorder: false,
754
+ // drawTicks: false,
755
+ // lineWidth: 0,
756
+ // zeroLineWidth: 0,
757
+ // zeroLineColor: (mode == 'dark') ? colors.gray[900] : colors.gray[300],
758
+ // zeroLineBorderDash: [2],
759
+ // zeroLineBorderDashOffset: [2]
760
+ // },
761
+ // ticks: {
762
+ // beginAtZero: true,
763
+ // padding: 10,
764
+ // callback: function(value) {
765
+ // if (!(value % 10)) {
766
+ // return value
767
+ // }
768
+ // }
769
+ // }
770
+ // });
771
+
772
+ // xAxes
773
+ Chart.scaleService.updateScaleDefaults('category', {
774
+ gridLines: {
775
+ drawBorder: false,
776
+ drawOnChartArea: false,
777
+ drawTicks: false
778
+ },
779
+ ticks: {
780
+ padding: 20
781
+ },
782
+ maxBarThickness: 10
783
+ });
784
+
785
+ return options;
786
+
787
+ }
788
+
789
+ // Parse global options
790
+ function parseOptions(parent, options) {
791
+ for (var item in options) {
792
+ if (typeof options[item] !== 'object') {
793
+ parent[item] = options[item];
794
+ } else {
795
+ parseOptions(parent[item], options[item]);
796
+ }
797
+ }
798
+ }
799
+
800
+ // Push options
801
+ function pushOptions(parent, options) {
802
+ for (var item in options) {
803
+ if (Array.isArray(options[item])) {
804
+ options[item].forEach(function(data) {
805
+ parent[item].push(data);
806
+ });
807
+ } else {
808
+ pushOptions(parent[item], options[item]);
809
+ }
810
+ }
811
+ }
812
+
813
+ // Pop options
814
+ function popOptions(parent, options) {
815
+ for (var item in options) {
816
+ if (Array.isArray(options[item])) {
817
+ options[item].forEach(function(data) {
818
+ parent[item].pop();
819
+ });
820
+ } else {
821
+ popOptions(parent[item], options[item]);
822
+ }
823
+ }
824
+ }
825
+
826
+ // Toggle options
827
+ function toggleOptions(elem) {
828
+ var options = elem.data('add');
829
+ var $target = $(elem.data('target'));
830
+ var $chart = $target.data('chart');
831
+
832
+ if (elem.is(':checked')) {
833
+
834
+ // Add options
835
+ pushOptions($chart, options);
836
+
837
+ // Update chart
838
+ $chart.update();
839
+ } else {
840
+
841
+ // Remove options
842
+ popOptions($chart, options);
843
+
844
+ // Update chart
845
+ $chart.update();
846
+ }
847
+ }
848
+
849
+ // Update options
850
+ function updateOptions(elem) {
851
+ var options = elem.data('update');
852
+ var $target = $(elem.data('target'));
853
+ var $chart = $target.data('chart');
854
+
855
+ // Parse options
856
+ parseOptions($chart, options);
857
+
858
+ // Toggle ticks
859
+ toggleTicks(elem, $chart);
860
+
861
+ // Update chart
862
+ $chart.update();
863
+ }
864
+
865
+ // Toggle ticks
866
+ function toggleTicks(elem, $chart) {
867
+
868
+ if (elem.data('prefix') !== undefined || elem.data('prefix') !== undefined) {
869
+ var prefix = elem.data('prefix') ? elem.data('prefix') : '';
870
+ var suffix = elem.data('suffix') ? elem.data('suffix') : '';
871
+
872
+ // Update ticks
873
+ $chart.options.scales.yAxes[0].ticks.callback = function(value) {
874
+ if (!(value % 10)) {
875
+ return prefix + value + suffix;
876
+ }
877
+ }
878
+
879
+ // Update tooltips
880
+ $chart.options.tooltips.callbacks.label = function(item, data) {
881
+ var label = data.datasets[item.datasetIndex].label || '';
882
+ var yLabel = item.yLabel;
883
+ var content = '';
884
+
885
+ if (data.datasets.length > 1) {
886
+ content += '<span class="popover-body-label mr-auto">' + label + '</span>';
887
+ }
888
+
889
+ content += '<span class="popover-body-value">' + prefix + yLabel + suffix + '</span>';
890
+ return content;
891
+ }
892
+
893
+ }
894
+ }
895
+
896
+
897
+ // Events
898
+
899
+ // Parse global options
900
+ if (window.Chart) {
901
+ parseOptions(Chart, chartOptions());
902
+ }
903
+
904
+ // Toggle options
905
+ $toggle.on({
906
+ 'change': function() {
907
+ var $this = $(this);
908
+
909
+ if ($this.is('[data-add]')) {
910
+ toggleOptions($this);
911
+ }
912
+ },
913
+ 'click': function() {
914
+ var $this = $(this);
915
+
916
+ if ($this.is('[data-update]')) {
917
+ updateOptions($this);
918
+ }
919
+ }
920
+ });
921
+
922
+
923
+ // Return
924
+
925
+ return {
926
+ colors: colors,
927
+ fonts: fonts,
928
+ mode: mode
929
+ };
930
+
931
+ })();
932
+
933
+ //
934
+ // Orders chart
935
+ //
936
+
937
+ var OrdersChart = (function() {
938
+
939
+ //
940
+ // Variables
941
+ //
942
+
943
+ var $chart = $('#chart-orders');
944
+ var $ordersSelect = $('[name="ordersSelect"]');
945
+
946
+
947
+ //
948
+ // Methods
949
+ //
950
+
951
+ // Init chart
952
+ function initChart($chart) {
953
+
954
+ // Create chart
955
+ var ordersChart = new Chart($chart, {
956
+ type: 'bar',
957
+ options: {
958
+ scales: {
959
+ yAxes: [{
960
+ gridLines: {
961
+ lineWidth: 1,
962
+ color: '#dfe2e6',
963
+ zeroLineColor: '#dfe2e6'
964
+ },
965
+ ticks: {
966
+ callback: function(value) {
967
+ if (!(value % 10)) {
968
+ //return '$' + value + 'k'
969
+ return value
970
+ }
971
+ }
972
+ }
973
+ }]
974
+ },
975
+ tooltips: {
976
+ callbacks: {
977
+ label: function(item, data) {
978
+ var label = data.datasets[item.datasetIndex].label || '';
979
+ var yLabel = item.yLabel;
980
+ var content = '';
981
+
982
+ if (data.datasets.length > 1) {
983
+ content += '<span class="popover-body-label mr-auto">' + label + '</span>';
984
+ }
985
+
986
+ content += '<span class="popover-body-value">' + yLabel + '</span>';
987
+
988
+ return content;
989
+ }
990
+ }
991
+ }
992
+ },
993
+ data: {
994
+ labels: ['Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
995
+ datasets: [{
996
+ label: 'Sales',
997
+ data: [25, 20, 30, 22, 17, 29]
998
+ }]
999
+ }
1000
+ });
1001
+
1002
+ // Save to jQuery object
1003
+ $chart.data('chart', ordersChart);
1004
+ }
1005
+
1006
+
1007
+ // Init chart
1008
+ if ($chart.length) {
1009
+ initChart($chart);
1010
+ }
1011
+
1012
+ })();
1013
+
1014
+ //
1015
+ // Charts
1016
+ //
1017
+
1018
+ 'use strict';
1019
+
1020
+ //
1021
+ // Sales chart
1022
+ //
1023
+
1024
+ var SalesChart = (function() {
1025
+
1026
+ // Variables
1027
+
1028
+ var $chart = $('#chart-sales');
1029
+
1030
+
1031
+ // Methods
1032
+
1033
+ function init($chart) {
1034
+
1035
+ var salesChart = new Chart($chart, {
1036
+ type: 'line',
1037
+ options: {
1038
+ scales: {
1039
+ yAxes: [{
1040
+ gridLines: {
1041
+ lineWidth: 1,
1042
+ color: Charts.colors.gray[900],
1043
+ zeroLineColor: Charts.colors.gray[900]
1044
+ },
1045
+ ticks: {
1046
+ callback: function(value) {
1047
+ if (!(value % 10)) {
1048
+ return '$' + value + 'k';
1049
+ }
1050
+ }
1051
+ }
1052
+ }]
1053
+ },
1054
+ tooltips: {
1055
+ callbacks: {
1056
+ label: function(item, data) {
1057
+ var label = data.datasets[item.datasetIndex].label || '';
1058
+ var yLabel = item.yLabel;
1059
+ var content = '';
1060
+
1061
+ if (data.datasets.length > 1) {
1062
+ content += '<span class="popover-body-label mr-auto">' + label + '</span>';
1063
+ }
1064
+
1065
+ content += '<span class="popover-body-value">$' + yLabel + 'k</span>';
1066
+ return content;
1067
+ }
1068
+ }
1069
+ }
1070
+ },
1071
+ data: {
1072
+ labels: ['May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
1073
+ datasets: [{
1074
+ label: 'Performance',
1075
+ data: [0, 20, 10, 30, 15, 40, 20, 60, 60]
1076
+ }]
1077
+ }
1078
+ });
1079
+
1080
+ // Save to jQuery object
1081
+
1082
+ $chart.data('chart', salesChart);
1083
+
1084
+ };
1085
+
1086
+
1087
+ // Events
1088
+
1089
+ if ($chart.length) {
1090
+ init($chart);
1091
+ }
1092
+
1093
+ })();