@mxtommy/kip 2.3.0 → 2.4.1

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 (58) hide show
  1. package/CHANGELOG.md +22 -4
  2. package/README.md +75 -50
  3. package/package.json +30 -21
  4. package/public/3rdpartylicenses.txt +25 -0
  5. package/public/assets/apple-icon-180.png +0 -0
  6. package/public/assets/apple-splash-1125-2436.jpg +0 -0
  7. package/public/assets/apple-splash-1136-640.jpg +0 -0
  8. package/public/assets/apple-splash-1170-2532.jpg +0 -0
  9. package/public/assets/apple-splash-1179-2556.jpg +0 -0
  10. package/public/assets/apple-splash-1242-2208.jpg +0 -0
  11. package/public/assets/apple-splash-1242-2688.jpg +0 -0
  12. package/public/assets/apple-splash-1284-2778.jpg +0 -0
  13. package/public/assets/apple-splash-1290-2796.jpg +0 -0
  14. package/public/assets/apple-splash-1334-750.jpg +0 -0
  15. package/public/assets/apple-splash-1536-2048.jpg +0 -0
  16. package/public/assets/apple-splash-1620-2160.jpg +0 -0
  17. package/public/assets/apple-splash-1668-2224.jpg +0 -0
  18. package/public/assets/apple-splash-1668-2388.jpg +0 -0
  19. package/public/assets/apple-splash-1792-828.jpg +0 -0
  20. package/public/assets/apple-splash-2048-1536.jpg +0 -0
  21. package/public/assets/apple-splash-2048-2732.jpg +0 -0
  22. package/public/assets/apple-splash-2160-1620.jpg +0 -0
  23. package/public/assets/apple-splash-2208-1242.jpg +0 -0
  24. package/public/assets/apple-splash-2224-1668.jpg +0 -0
  25. package/public/assets/apple-splash-2388-1668.jpg +0 -0
  26. package/public/assets/apple-splash-2436-1125.jpg +0 -0
  27. package/public/assets/apple-splash-2532-1170.jpg +0 -0
  28. package/public/assets/apple-splash-2556-1179.jpg +0 -0
  29. package/public/assets/apple-splash-2688-1242.jpg +0 -0
  30. package/public/assets/apple-splash-2732-2048.jpg +0 -0
  31. package/public/assets/apple-splash-2778-1284.jpg +0 -0
  32. package/public/assets/apple-splash-2796-1290.jpg +0 -0
  33. package/public/assets/apple-splash-640-1136.jpg +0 -0
  34. package/public/assets/apple-splash-750-1334.jpg +0 -0
  35. package/public/assets/apple-splash-828-1792.jpg +0 -0
  36. package/public/assets/apple-touch-icon.png +0 -0
  37. package/public/assets/favicon-16x16.png +0 -0
  38. package/public/assets/favicon-32x32.png +0 -0
  39. package/public/assets/favicon.ico +0 -0
  40. package/public/assets/favicon.png +0 -0
  41. package/public/assets/favicon.svg +128 -0
  42. package/public/assets/icon-192x192.png +0 -0
  43. package/public/assets/icon-256x256.png +0 -0
  44. package/public/assets/icon-384x384.png +0 -0
  45. package/public/assets/icon-512x512.png +0 -0
  46. package/public/assets/icon-64x64.png +0 -0
  47. package/public/assets/icon-72x72.png +0 -0
  48. package/public/assets/manifest-icon-192.maskable.png +0 -0
  49. package/public/assets/manifest-icon-512.maskable.png +0 -0
  50. package/public/assets/screenshot-540x720.png +0 -0
  51. package/public/assets/screenshot-720x540.png +0 -0
  52. package/public/index.html +48 -18
  53. package/public/main.abf26f717737e775.js +1 -0
  54. package/public/manifest.json +66 -37
  55. package/public/styles.a5d5fc1506885765.css +1 -0
  56. package/public/favicon.ico +0 -0
  57. package/public/main.32aba1d68004481e.js +0 -1
  58. package/public/styles.5e53fc8bc300bdac.css +0 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,21 @@
1
+
2
+ # V 2.4.1
3
+ ## Fixes
4
+ * Progressive Web Application feature for mobile devices
5
+ * Random conflicting double tab action on mobile devices causing screen zoom instead of Night Mode activation
6
+ * Removed widget data stream filtering of null values
7
+ * Help and data browser navigation actions skipping current widget active page
8
+ # V 2.4.0
9
+ ## New features
10
+ * Gesture Support: Added horizontal Swipe to cycle pages and Double Tab to toggle night mode
11
+ * Numeric, Date and Text Widgets: Added configurable color support
12
+ * Wind Widget: Added Next Waypoint bearing indicator
13
+ * Added support for Widget data expiration (TTL). Previously Widget stayed still when a source stopped sending data or the server connection was lost.
14
+ ## Improvements
15
+ * Strengthen Widget configuration management when adding new KIP properties
16
+ ## Fixes
17
+ * Numeric Widget HH:MM:SS conversion unit broken
18
+ * Wind Widget speed value indicator sometimes doing a full rotating when passing over zero degrees
1
19
  # V 2.3.0
2
20
  ## New features
3
21
  * Added support for Signal K Source Priorities
@@ -18,10 +36,10 @@
18
36
  # V 2.2.0
19
37
  ## New features
20
38
  * Option to enable automatic day and night modes activation based on sun phases
21
- * Path data throttling feature added to Widget Options's Paths offering greater flexibilty in UI experience
39
+ * Path data throttling feature added to Widget Options Paths providing greater flexibilty and UI experience
22
40
  # V 2.1.3
23
41
  ## Improvements
24
- * Upgrade v6 configuration
42
+ * automatic upgrade of older KIP v6 configuration
25
43
  # V 2.1.2
26
44
  ## Fixes
27
45
  * Package description typo and changelog updates
@@ -40,9 +58,9 @@
40
58
  * Bump @babel/traverse from 7.23.0 to 7.23.2 by @dependabot in https://github.com/mxtommy/Kip/pull/194
41
59
  # V 2.0.1
42
60
  ## Improvements
43
- * Update: KIP Icon
61
+ * KIP icon update
44
62
  ## Fixes
45
- * Fix: Object reference error and polyfills by @godind in https://github.com/mxtommy/Kip/commit/73f47aec694ccfe6ea2f1b92ad23dcc53b41e09f
63
+ * Object reference error and polyfills by @godind in https://github.com/mxtommy/Kip/commit/73f47aec694ccfe6ea2f1b92ad23dcc53b41e09f
46
64
  # V 2.0.0
47
65
  ## New features
48
66
  * Breaking Change - KIP configuration sharing using Signal K user key data storage feature
package/README.md CHANGED
@@ -1,11 +1,11 @@
1
1
  # About KIP
2
2
 
3
- KIP is powerfull marine instrumentation package to display Signal K data. KIP, much like modern expensive MFDs, is very flexible and can be split up in any arrangements and display all kinds of data available to Signal K server.
3
+ KIP is powerful marine instrumentation package to display Signal K data. KIP, much like modern expensive MFDs, is very flexible and can be split up in any arrangements and display all kinds of data available to Signal K server.
4
4
 
5
5
  # Design Goal
6
6
 
7
7
  The idea is to replicate the functionality of MFDs such as the B&G Triton, Raymarine i70, or Garmin GMI20.
8
- - Display should be fullscreen and not require any scrolling
8
+ - Display should use the entire screen and not require any scrolling
9
9
  - Anything displayed should be as big as possible in the given space
10
10
  - Touchscreen user experience should be excellent
11
11
  - Layout and configuration should be both easy to operate and flexible
@@ -14,52 +14,76 @@ The idea is to replicate the functionality of MFDs such as the B&G Triton, Rayma
14
14
 
15
15
  # Features
16
16
  ## Access from Phones, Tablets, Raspberry Pi and Computers
17
- Simply navigate to `http://<Signal K Server URL>:<Signal K Server port>/@mxtommy/kip` to load KIP and enjoy it's features remotly on any device.
17
+ Simply navigate to `http://<Signal K Server URL>:<port>/@mxtommy/kip` to load KIP and enjoy it's features remotely on any device.
18
+
19
+ ### Responsive Design
20
+ KIP adjusts to the device type and form factor for the best possible user experience.
21
+
22
+ ### Touch Devices
23
+ - Swipe left and right to cycle trough your Widget layouts.
24
+ - Double tap to toggle night mode.
25
+
26
+ ### Run KIP As a Web Application
27
+ Run KIP in full screen, with no browser controls visible, just like regular mobile apps. This feature is supported on most mobile OS. Each browser has it's own way of handling PWA deployments.
28
+
29
+ To install KIP as an App, first load KIP in the browser. Then follow the steps below:
30
+
31
+ **iOS**
32
+ 1. Press the "Share" button
33
+ 2. Select "Add to Home Screen" from the action popup list
34
+ 3. Tap "Add" in the top right corner to finish installing
35
+ KIP is now installed and available on your home screen
36
+
37
+ **Android**
38
+ 1. Press the "three dot" icon in the upper right to open the menu
39
+ 2. Select "Add to Home screen"
40
+ 3. Press the "Add" button in the popup
41
+ KIP is now installed and available on your home screen
18
42
 
19
43
  ## Multiple User Profiles
20
- If you have different roles on board; captiain, skipper, tacticien, navigator, engineers or simply different people with diffenrent needs, each can tailor as they wish. The use of profiles can also offers the ability to tie specific configuration arrangements to usecase or form factors.
44
+ If you have different roles on board; captain, skipper, tactician, navigator, engineers or simply different people with different needs, each can tailor as they wish. The use of profiles can also offer the ability to tie specific configuration arrangements to use case or device form factors.
21
45
 
22
46
  ## User Experience
47
+
48
+ ### Night Mode
49
+ Keep your night vision with a simple double tap. The below image looks very dark, but at night...it's perfect!
50
+
51
+ ![Night mode](./KipNightMode-1024x488.png)
52
+
23
53
  ### Built-in Themes
24
- Use your favorite style from the built-in themes gallery.
54
+ Apply your favorite style from the built-in themes gallery.
25
55
 
26
56
  Modern Dark Theme
27
57
  ![Modern Dark Theme](./KipSample-1-1024x488.png)
28
-
58
+
29
59
  Signal K Inspired Theme
30
60
  ![Signal K Inspired Theme](./KipSample-2-1024x488.png)
31
-
61
+
32
62
  Light Blue Theme
33
63
  ![Light Blue Theme](./KipSample-3-1024x488.png)
34
64
 
35
65
  NOTE: Request a new theme by sending us inspirational/reference material (web sites, picture, etc.).
36
66
  If we fall in love, we will do it. Even better, branch and contribute yourself. We will assist and guide!
37
67
 
38
- ### Night Mode
39
- Keep your night vision woth a simple tab, regardless of the selected theme. The below image looks very dark, but at night...it's perfect!
40
-
41
- ![Night mode](./KipNightMode-1024x488.png)
42
-
43
-
44
- ## Gauge Layout and Configuration
68
+ ## Page Layouts and Configuration
45
69
  ### Flexible and Easy
46
- Meant to build purposeful screen(s) with however many gauges or widgets you want, where you want them.
70
+ Meant to build purposeful screen(s) with however many widgets you want, where you want them.
47
71
 
48
- Quickly devide the screen area into zones, resize and position, add the gauge of your choosing. Need more? Add as many additionnal pages as you whish to keep screens purposeful. Simply tap the buttom navigation keys to quickly rotate from page to page.
72
+ Quickly split pages into multiple areas, resize and aligne to your liking, add the widget of your choosing to each area. Need more? Add as many additional pages as you whish to keep your display purposeful. Simply swipe left and right or use the bottom page navigation button to quickly cycle from page to page.
49
73
  ![Layouts Configuration Image](./KipWidgetConfig-layout-1024x488.png)
50
74
 
51
- Easy basic gauge and widget configuratio.
75
+ Easy basic widget configuration.
52
76
  ![Gauges Configuration Image](./KipConfig-display-1024x488.png)
53
77
 
54
- See what Signal K has to offer that you can leverage in a gauge. Select it and tweak the display options for your purpose.
78
+ See what Signal K has to offer that you can leverage with widgets. Select it and tweak the display options your your purpose.
55
79
  ![Paths Configuration Image](./KipWidgetConfig-paths-1024x488.png)
56
80
 
57
- Many units are supported. Choose your prefered App defaults, than tweak it gauge-by-gauge as necessary. KIP will convert the displayed units for you.
81
+ Many units are supported. Choose your preferred App defaults, than tweak it widget-by-widget as necessary. KIP will automatically convert the units for you.
58
82
  ![Units Configuration Image](./KipConfig-Units-1024x488.png)
59
83
 
60
- ### Reusable Gauge and Widget Library
61
- All KIP Gauges and Widgets are visual presentation controls that are very versatile with multiple configuration options available to suit your needs:
62
- - Text display: Create gauges to display any textual data sent by your system - MPPT state, Timezone date and time, Next Waypoint, Fusion radio song information, noon and sun phases, any system components configuration detail or statues available, etc.
84
+ ### Reusable Widget Library
85
+ All KIP Widgets are visual presentation controls that are very versatile with multiple advanced configuration options available to suit your needs:
86
+ - Text display: Create gauges to display any textual data sent by your system - MPPT state, vessel details,Next Waypoint, Fusion radio song information, noon and sun phases, any system components configuration detail or statues available, etc.
63
87
  - Numeric display: Create gauges to display any numerical data sent by your system - SOG, Depth, Winds Speed, VMG, refrigerator temperature, weather data, etc.
64
88
  - Wind gauge: Your typical sailboat wind gauge
65
89
  - Autopilot: Operate your autopilot from any device remotely
@@ -67,74 +91,75 @@ The idea is to replicate the functionality of MFDs such as the B&G Triton, Rayma
67
91
  - Linear electrical gauge: A visual display for electrical numerical data - chargers, MPPT, shunt, etc.
68
92
  - Radial gauge: Visually display any numerical data on a radial scale - heading, compass, Speed, etc.
69
93
  - Radial and linear Steel gauge: Old school look & fell gauges
70
- - Button and Switch control: Operate remote devices - light switches, bildge pump, solenoid, any Signal K device that support boolean PUT operations
71
- - Date display: a timezone aware control with flexible presentation formating support
94
+ - Button and Switch control: Operate remote devices - light switches, bilge pump, solenoid, any Signal K path that support boolean PUT operations
95
+ - Date display: a timezone aware control with flexible presentation formatting support
72
96
  - Race Timer: Track regatta start sequence
73
97
  - Historical datagram chart: Display numerical data over time on a chart
74
98
  - Embedded Webpage: A powerful way of integrating any web based content or application within with your KIP layout - Grafana dashboards, Node-RED dashboard, internet weather services, Youtube, Netflix, Twitter, Gmail, your own standalone webapp, you name it!
75
99
 
76
100
  Get the latest version of KIP to see what's new!
77
101
 
78
- Gauge types sample
102
+ Widget Types Sample
79
103
  ![Sample Gauges Image](./KipGaugeSample1-1024x545.png)
80
104
 
81
- Electrical and Tank monitoring sample
105
+ Electrical and Tank Monitoring Sample
82
106
  ![Electrical Concept Image](./KipGaugeSample2-1024x488.png)
83
107
 
84
108
  Grafana Embedded Webpage sample
85
109
  ![Embedded Webpage Concept Image](./KipGaugeSample3-1024x508.png)
86
110
 
111
+ ### Harness The Power Of Data State Notifications
112
+ Stay informed with notifications about the state of the data you are interested in.
113
+ As an example, KIP will notify you (inform, warn, alert) when a water depth or temperature sensors reaches certain levels. In addition to KIP's centralized basic visual and audio notification feature, each Widget offers a tailored visual representation appropriate
114
+ to their design objectives providing an optimal user experience.
87
115
 
88
- # Developing
116
+ # How To Contribute to KIP
89
117
 
90
- KIP is built on Angular using various open-source assets. All free!
118
+ KIP is under MIT license and is built with Nodes and Angular using various open-source assets. All free!
91
119
 
92
120
  **Tools**
93
121
 
94
122
  Linux, Macs, Pi or Windows dev platform supported
95
- 1. Install the latest Node version (v16+)
123
+ 1. Install the latest Node version (v16+, v18 recommended)
96
124
  2. Download your favorite coding IDE (we use the free Visual Code)
97
125
  3. Create your own GitHub KIP fork.
98
- 4. Configure your IDE's source control to point to this fork (With Visual Code, GitHub support is built-in) and get the latest Master branch locally.
126
+ 4. Configure your IDE's source control to point to your forked KIP instance (With Visual Code, GitHub support is built-in) and get the latest Master branch locally.
99
127
 
100
128
  **Setup**
101
129
  1. From your fork's Master branch, create working branch with a name such as: New-Widget-abc or fix-issue-abc, etc.
102
130
  2. Checkout this new Branch to get the source code locally.
103
131
  3. In a command shell (or in the Visual Code Terminal window), go to the root of you local project folder.
104
- 4. Install project dependencies using NPM package and dependency manager: run `npm install`. NPM will read local Kip project dependencies (see Steps 2), download and install everything automatically for you.
105
- 5. Build the app locally using Angular-CLI: from that same project root folder, run `ng build`. CLI tool will read local Kip project configuration and set the base href(see Tools - steps 4) and build everything.
132
+ 4. Install project dependencies using NPM package and dependency manager: run `npm install`. NPM will read Kip project dependencies (see Steps 2), download and install everything automatically for you.
133
+ 5. Build the app locally using Angular-CLI: from that same project root folder, run `ng build`. CLI tool will build KIP.
106
134
 
107
135
  **Work**
108
- 1. Fire up your local dev instance with CLI using `ng serve --configuration=dev --serve-path=/` to enable the debugger map file loading.
109
- 2. Hit Run/Start Debugging in Visual Code or point your favorite browser to `http://localhost:4200/`
110
- 3. Voila! You can build, test and fix.
136
+ 1. Fire up your local dev instance with `npm run dev`.
137
+ 2. Hit Run/Start Debugging in Visual Code or point your favorite browser to `http://localhost:4200/@mxtommy/kip`
138
+ 3. Voila!
111
139
 
112
140
  *As you work on source code and save files, the app will automatically reload in the browser with your latest changes.*
141
+ *You also need a running Signal K server for KIP to connect to and receive data.*
113
142
 
114
- **Publish**
115
- 1. Once done with your work, from your fork's working branch, make a GitHub pull request to have your code reviewed, merged and part of the next release.
116
-
117
- Or
143
+ **Apple PWA Icon Generation**
144
+ Use the following tool and command line: npx pwa-asset-generator ./src/svg-templates/KIP-icon.svg ./src/assets/ -i ./src/index.html -m ./src/manifest.json -b "linear-gradient(to bottom, rgba(255,255,255,0.15) 0%, rgba(0,0,0,0.15) 100%), radial-gradient(at top center, rgba(255,255,255,0.40) 0%, rgba(0,0,0,0.40) 120%) #989898" -p 5%
118
145
 
119
- 2. Build your own production version:
120
- 1. Build: In a terminal from you project folder, use `ng build --configuration=production` to generate a production build.
121
- 2. Have fun!
146
+ **Share**
147
+ Once done with your work, from your fork's working branch, make a GitHub pull request to have your code reviewed, merged and part of the next release.
122
148
 
123
149
  **Communication and Collaboration**
124
- Join us on Slack -> Signalk-dev / Apps_and_client channel. We will hook up and assist as best we can.
150
+ Join us on Slack -> Signalk-dev / Kip channel. We will hook up and assist as best we can.
125
151
 
126
152
  # Feature Ideas
127
153
  * AIS Widget - Help Wanted
128
154
  * Light indicator Widget for Boolean paths
129
155
  * Fuel Consumption Widget
130
156
  * GPS information Widget - Help Wanted
131
- * Improved Metadata configuration
132
- * Improved Zones support
133
- * Add a KIP Widget CLI Schematic to automate new Widget creation and improve contribution
134
- * Improved error logging / performance gain
135
- * Retire outdated Steelgauges
136
- * Rebuild alerting to new Signal K Specifications
157
+ * Improve Metadate/Zones support
158
+ * Add a KIP Widget CLI Schematic to automate new Widget creation and facilitate app contributions
159
+ * Improved error logging
160
+ * Retire outdated SteelGauges
161
+ * Upgrade notifications and navigation API to new Signal K Specifications
137
162
  * Attitude Indicator Widget - Help Wanted
138
163
  * Sailing Polars Widget - Help Wanted
139
- * More Customization options for radial/linear Gauges
164
+ * More customization options for radial/linear Gauges
140
165
  * Pre-created Widgets for commonly used displays
package/package.json CHANGED
@@ -1,10 +1,18 @@
1
1
  {
2
2
  "name": "@mxtommy/kip",
3
- "version": "2.3.0",
3
+ "version": "2.4.1",
4
4
  "description": "An advanced and versatile marine instrumentation package to display Signal K data.",
5
5
  "license": "MIT",
6
- "author": {"name": "Thomas St.Pierre", "email": "thomas@samoht.ca"},
7
- "contributors": [{"name": "David Godin", "email": "godind@hotmail.com"}],
6
+ "author": {
7
+ "name": "Thomas St.Pierre",
8
+ "email": "thomas@samoht.ca"
9
+ },
10
+ "contributors": [
11
+ {
12
+ "name": "David Godin",
13
+ "email": "godind@hotmail.com"
14
+ }
15
+ ],
8
16
  "homepage": "https://github.com/mxtommy/Kip",
9
17
  "bugs": "https://github.com/mxtommy/Kip/issues",
10
18
  "repository": {
@@ -22,14 +30,13 @@
22
30
  "nmea"
23
31
  ],
24
32
  "signalk": {
25
- "appIcon": "./assets/icon-72x72.png",
33
+ "appIcon": "assets/icon-72x72.png",
26
34
  "displayName": "KIP Instrument MFD"
27
35
  },
28
36
  "scripts": {
29
- "ng": "ng",
30
- "start": "ng serve --configuration=dev --serve-path=/",
31
- "build-dev": "ng build --configuration=dev --base-href=/@mxtommy/kip/",
32
- "build-prod": "ng build --configuration=production --base-href=/@mxtommy/kip/",
37
+ "dev": "ng serve --configuration=dev --serve-path=/@mxtommy/kip/",
38
+ "build-dev": "ng build --configuration=dev",
39
+ "build-prod": "ng build --configuration=production",
33
40
  "test": "ng test",
34
41
  "lint": "ng lint",
35
42
  "e2e": "ng e2e"
@@ -40,6 +47,7 @@
40
47
  "@angular/compiler-cli": "14.3.0",
41
48
  "@angular/language-service": "14.3.0",
42
49
  "@types/canvas-gauges": "^2.1.2",
50
+ "@types/hammerjs": "^2.0.45",
43
51
  "@types/howler": "^2.2.10",
44
52
  "@types/jasmine": "~3.6.0",
45
53
  "@types/jasminewd2": "^2.0.9",
@@ -60,34 +68,35 @@
60
68
  "ts-node": "^8.10.2",
61
69
  "tslib": "^2.2.0",
62
70
  "tslint": "^6.1.3",
63
- "typescript": "^4.6.4"
71
+ "typescript": "^4.6.4",
72
+ "pwa-asset-generator": "^6.3.1"
64
73
  },
65
74
  "dependencies": {
66
- "@angular/compiler": "14.3.0",
67
75
  "@angular/animations": "14.3.0",
68
- "@angular/common": "14.3.0",
69
76
  "@angular/cdk": "^14.2.7",
77
+ "@angular/common": "14.3.0",
78
+ "@angular/compiler": "14.3.0",
70
79
  "@angular/core": "14.3.0",
71
80
  "@angular/forms": "14.3.0",
81
+ "@angular/material": "^14.2.7",
72
82
  "@angular/platform-browser": "14.3.0",
73
83
  "@angular/platform-browser-dynamic": "14.3.0",
74
84
  "@angular/router": "14.3.0",
75
- "@angular/material": "^14.2.7",
76
- "rxjs": "^7.5.7",
77
- "rx-dom-html": "^7.0.3",
78
- "zone.js": "~0.11.4",
79
- "core-js": "^3.13.1",
80
- "screenfull": "^6.0.2",
81
- "hammerjs": "^2.0.8",
82
- "howler": "^2.2.4",
83
- "compare-versions": "^5.0.1",
84
85
  "angular-resize-event": "^3.2.0",
85
86
  "angular-split": "^14.1.0",
86
87
  "canvas-gauges": "^2.1.7",
87
88
  "chart.js": "^3.5.1",
88
89
  "chartjs-adapter-date-fns": "^3.0.0",
90
+ "compare-versions": "^5.0.1",
91
+ "core-js": "^3.13.1",
89
92
  "date-fns": "^2.30.0",
93
+ "hammerjs": "^2.0.8",
94
+ "howler": "^2.2.4",
90
95
  "js-quantities": "^1.8.0",
91
- "lodash-es": "^4.17.21"
96
+ "lodash-es": "^4.17.21",
97
+ "rx-dom-html": "^7.0.3",
98
+ "rxjs": "^7.5.7",
99
+ "screenfull": "^6.0.2",
100
+ "zone.js": "~0.11.4"
92
101
  }
93
102
  }
@@ -399,6 +399,31 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
399
399
  SOFTWARE.
400
400
 
401
401
 
402
+ hammerjs
403
+ MIT
404
+ The MIT License (MIT)
405
+
406
+ Copyright (C) 2011-2014 by Jorik Tangelder (Eight Media)
407
+
408
+ Permission is hereby granted, free of charge, to any person obtaining a copy
409
+ of this software and associated documentation files (the "Software"), to deal
410
+ in the Software without restriction, including without limitation the rights
411
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
412
+ copies of the Software, and to permit persons to whom the Software is
413
+ furnished to do so, subject to the following conditions:
414
+
415
+ The above copyright notice and this permission notice shall be included in
416
+ all copies or substantial portions of the Software.
417
+
418
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
419
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
420
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
421
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
422
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
423
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
424
+ THE SOFTWARE.
425
+
426
+
402
427
  howler
403
428
  MIT
404
429
  Copyright (c) 2013-2020 James Simpson and GoldFire Studios, Inc.
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,128 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg
3
+ version="1.1"
4
+ width="1000"
5
+ height="1000"
6
+ id="svg3"
7
+ sodipodi:docname="favicon.svg"
8
+ inkscape:version="1.3.2 (091e20e, 2023-11-25)"
9
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns="http://www.w3.org/2000/svg"
12
+ xmlns:svg="http://www.w3.org/2000/svg"
13
+ xmlns:svgjs="http://svgjs.com/svgjs">
14
+ <defs
15
+ id="defs3" />
16
+ <g
17
+ transform="matrix(1.953125,0,0,1.953125,0,0)"
18
+ id="g2">
19
+ <svg
20
+ version="1.1"
21
+ width="512"
22
+ height="512"
23
+ id="svg2">
24
+ <svg
25
+ width="512"
26
+ height="512"
27
+ viewBox="0 0 135.46667 135.46667"
28
+ version="1.1"
29
+ id="svg1">
30
+ <sodipodi:namedview
31
+ id="namedview1"
32
+ pagecolor="#ffffff"
33
+ bordercolor="#000000"
34
+ borderopacity="0.25"
35
+ inkscape:showpageshadow="2"
36
+ inkscape:pageopacity="0.0"
37
+ inkscape:pagecheckerboard="true"
38
+ inkscape:deskcolor="#d1d1d1"
39
+ inkscape:document-units="px"
40
+ inkscape:lockguides="true"
41
+ inkscape:zoom="0.41030501"
42
+ inkscape:cx="481.34923"
43
+ inkscape:cy="498.40971"
44
+ inkscape:window-width="1224"
45
+ inkscape:window-height="732"
46
+ inkscape:window-x="217"
47
+ inkscape:window-y="25"
48
+ inkscape:window-maximized="0"
49
+ inkscape:current-layer="layer1">
50
+ <sodipodi:guide
51
+ position="0,135.46667"
52
+ orientation="0,512"
53
+ id="guide1"
54
+ inkscape:locked="true" />
55
+ <sodipodi:guide
56
+ position="135.46667,135.46667"
57
+ orientation="512,0"
58
+ id="guide2"
59
+ inkscape:locked="true" />
60
+ <sodipodi:guide
61
+ position="135.46667,0"
62
+ orientation="0,-512"
63
+ id="guide3"
64
+ inkscape:locked="true" />
65
+ <sodipodi:guide
66
+ position="0,0"
67
+ orientation="-512,0"
68
+ id="guide4"
69
+ inkscape:locked="true" />
70
+ </sodipodi:namedview>
71
+ <defs
72
+ id="defs1" />
73
+ <g
74
+ inkscape:label="Layer 1"
75
+ inkscape:groupmode="layer"
76
+ id="layer1">
77
+ <rect
78
+ style="fill:#4b4b4b;fill-opacity:1;stroke-width:2.117;stroke-linecap:square;stroke-dasharray:none"
79
+ id="rect4"
80
+ width="135.46667"
81
+ height="135.46667"
82
+ x="0"
83
+ y="0"
84
+ sodipodi:insensitive="true" />
85
+ <text
86
+ xml:space="preserve"
87
+ style="font-weight:bold;font-size:25.4px;font-family:Arial;-inkscape-font-specification:'Arial, Bold';fill:#c3c3c3;fill-opacity:0.415507;stroke-width:2.117;stroke-linecap:square;stroke-dasharray:none"
88
+ x="4.9013381"
89
+ y="24.292282"
90
+ id="text4"
91
+ svgjs:data="{&quot;leading&quot;:&quot;1.3&quot;}"><tspan
92
+ sodipodi:role="line"
93
+ id="tspan4"
94
+ style="fill:#c3c3c3;fill-opacity:0.415507;stroke-width:2.117"
95
+ x="4.9013381"
96
+ y="24.292282"
97
+ svgjs:data="{&quot;leading&quot;:&quot;1.3&quot;}">Speed</tspan></text>
98
+ <text
99
+ xml:space="preserve"
100
+ style="font-weight:bold;font-size:89.7086px;font-family:Arial;-inkscape-font-specification:'Arial, Bold';fill:#fffcfc;fill-opacity:1;stroke-width:7.4769;stroke-linecap:square;stroke-dasharray:none"
101
+ x="5.9710636"
102
+ y="103.15202"
103
+ id="text5"
104
+ svgjs:data="{&quot;leading&quot;:&quot;1.3&quot;}"><tspan
105
+ sodipodi:role="line"
106
+ id="tspan5"
107
+ style="fill:#fffcfc;fill-opacity:1;stroke-width:7.4769"
108
+ x="5.9710636"
109
+ y="103.15202"
110
+ svgjs:data="{&quot;leading&quot;:&quot;1.3&quot;}">9.8</tspan></text>
111
+ <text
112
+ xml:space="preserve"
113
+ style="font-weight:bold;font-size:21.2566px;font-family:Arial;-inkscape-font-specification:'Arial, Bold';fill:#fffcfc;fill-opacity:1;stroke-width:1.77166;stroke-linecap:square;stroke-dasharray:none"
114
+ x="74.298759"
115
+ y="128.38905"
116
+ id="text6"
117
+ svgjs:data="{&quot;leading&quot;:&quot;1.3&quot;}"><tspan
118
+ sodipodi:role="line"
119
+ id="tspan6"
120
+ style="stroke-width:1.77166"
121
+ x="74.298759"
122
+ y="128.38905"
123
+ svgjs:data="{&quot;leading&quot;:&quot;1.3&quot;}">knots</tspan></text>
124
+ </g>
125
+ </svg>
126
+ </svg>
127
+ </g>
128
+ </svg>
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file