Skip to content

Commit 31e3345

Browse files
authored
Merge pull request #625 from rpbouman/dev
Merge for release 1.0.10
2 parents b3f30c1 + 03be944 commit 31e3345

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+3009
-932
lines changed

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ Huey supports reading from multiple file formats, like .csv, .parquet, .json dat
44

55
Checkout my [DataZen talk on youtube](https://www.youtube.com/watch?v=1A0r4CbLSaI) for background and a demo if its features.
66

7-
Or, __Try Huey now online__ [https://rpbouman.github.io/huey/src/index.html](https://rpbouman.github.io/huey/src/index.html)
7+
Or, __Try Huey now__ with some [sample reports](https://github.com/rpbouman/huey?tab=readme-ov-file#getting-started) using the live demo at [https://rpbouman.github.io/huey/src/index.html](https://rpbouman.github.io/huey/src/index.html)
88

9-
(Note: this is a static webapp. Any data you load into the app stays on your local client.)
9+
(Note: this is a live demo that allows you to runvHuey without even downloading it. Even though it's available online, it's still a static webapp: any data you load into it is safe, and stays on your local client.)
1010

1111
![image](https://github.com/user-attachments/assets/f9d49b89-f29e-49b4-accf-64545b3e4c62)
1212

@@ -31,8 +31,8 @@ Or, __Try Huey now online__ [https://rpbouman.github.io/huey/src/index.html](htt
3131
## Getting started
3232
For a super quick start, here are a few links to the [live demo](https://rpbouman.github.io/huey/src/index.html)
3333

34-
- Los Angeles International Airport - [Number of Flight operations, by flight type and reporting period](https://rpbouman.github.io/huey/src/index.html#JTdCJTIycXVlcnlNb2RlbCUyMiUzQSU3QiUyMmRhdGFzb3VyY2VJZCUyMiUzQSUyMmZpbGUlM0ElNUMlMjJodHRwcyUzQSUyRiUyRmRhdGEubGFjaXR5Lm9yZyUyRmFwaSUyRnZpZXdzJTJGYWppdi11YzYzJTJGcm93cy5jc3YlM0ZhY2Nlc3NUeXBlJTNERE9XTkxPQUQlNUMlMjIlMjIlMkMlMjJjZWxsc0hlYWRlcnMlMjIlM0ElMjJjb2x1bW5zJTIyJTJDJTIyYXhlcyUyMiUzQSU3QiUyMmNlbGxzJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMkZsaWdodE9wc0NvdW50JTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMkJJR0lOVCUyMiUyQyUyMmFnZ3JlZ2F0b3IlMjIlM0ElMjJzdW0lMjIlN0QlNUQlMkMlMjJjb2x1bW5zJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMkZsaWdodFR5cGUlMjIlMkMlMjJjb2x1bW5UeXBlJTIyJTNBJTIyVkFSQ0hBUiUyMiUyQyUyMmluY2x1ZGVUb3RhbHMlMjIlM0F0cnVlJTdEJTJDJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMkFycml2YWxfRGVwYXJ0dXJlJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMlZBUkNIQVIlMjIlN0QlNUQlMkMlMjJyb3dzJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMlJlcG9ydFBlcmlvZCUyMiUyQyUyMmNvbHVtblR5cGUlMjIlM0ElMjJUSU1FU1RBTVAlMjIlMkMlMjJkZXJpdmF0aW9uJTIyJTNBJTIyeWVhciUyMiUyQyUyMmluY2x1ZGVUb3RhbHMlMjIlM0F0cnVlJTdEJTJDJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMlJlcG9ydFBlcmlvZCUyMiUyQyUyMmNvbHVtblR5cGUlMjIlM0ElMjJUSU1FU1RBTVAlMjIlMkMlMjJkZXJpdmF0aW9uJTIyJTNBJTIybW9udGglMjBzaG9ydG5hbWUlMjIlMkMlMjJpbmNsdWRlVG90YWxzJTIyJTNBdHJ1ZSU3RCU1RCU3RCU3RCU3RA==)
35-
- City of Chicago Energy Benchmarking [Use of electricity, gas and steam by district over years 2018 - 2022](https://rpbouman.github.io/huey/src/index.html#JTdCJTIycXVlcnlNb2RlbCUyMiUzQSU3QiUyMmRhdGFzb3VyY2VJZCUyMiUzQSUyMmZpbGUlM0ElNUMlMjJodHRwcyUzQSUyRiUyRmRhdGEuY2l0eW9mY2hpY2Fnby5vcmclMkZhcGklMkZ2aWV3cyUyRnhxODMtanI4YyUyRnJvd3MuY3N2JTNGYWNjZXNzVHlwZSUzRERPV05MT0FEJTVDJTIyJTIyJTJDJTIyY2VsbHNIZWFkZXJzJTIyJTNBJTIyY29sdW1ucyUyMiUyQyUyMmF4ZXMlMjIlM0ElN0IlMjJjZWxscyUyMiUzQSU1QiU3QiUyMmNvbHVtbk5hbWUlMjIlM0ElMjJFbGVjdHJpY2l0eSUyMFVzZSUyMChrQnR1KSUyMiUyQyUyMmNvbHVtblR5cGUlMjIlM0ElMjJET1VCTEUlMjIlMkMlMjJhZ2dyZWdhdG9yJTIyJTNBJTIyc3VtJTIyJTdEJTJDJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMk5hdHVyYWwlMjBHYXMlMjBVc2UlMjAoa0J0dSklMjIlMkMlMjJjb2x1bW5UeXBlJTIyJTNBJTIyRE9VQkxFJTIyJTJDJTIyYWdncmVnYXRvciUyMiUzQSUyMnN1bSUyMiU3RCUyQyU3QiUyMmNvbHVtbk5hbWUlMjIlM0ElMjJEaXN0cmljdCUyMFN0ZWFtJTIwVXNlJTIwKGtCdHUpJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMkRPVUJMRSUyMiUyQyUyMmFnZ3JlZ2F0b3IlMjIlM0ElMjJzdW0lMjIlN0QlNUQlMkMlMjJjb2x1bW5zJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMkRhdGElMjBZZWFyJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMkJJR0lOVCUyMiU3RCU1RCUyQyUyMmZpbHRlcnMlMjIlM0ElNUIlN0IlMjJjb2x1bW5OYW1lJTIyJTNBJTIyRGF0YSUyMFllYXIlMjIlMkMlMjJjb2x1bW5UeXBlJTIyJTNBJTIyQklHSU5UJTIyJTJDJTIyZmlsdGVyJTIyJTNBJTdCJTIyZmlsdGVyVHlwZSUyMiUzQSUyMmJldHdlZW4lMjIlMkMlMjJ2YWx1ZXMlMjIlM0ElN0IlMjIyJTJDMDE4JTIyJTNBJTdCJTIydmFsdWUlMjIlM0ElMjIyJTJDMDE4JTIyJTJDJTIybGFiZWwlMjIlM0ElMjIyJTJDMDE4JTIyJTJDJTIybGl0ZXJhbCUyMiUzQSUyMjIwMTglMjIlN0QlN0QlMkMlMjJ0b1ZhbHVlcyUyMiUzQSU3QiUyMjIlMkMwMjIlMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMjIlMkMwMjIlMjIlMkMlMjJsYWJlbCUyMiUzQSUyMjIlMkMwMjIlMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyMjAyMiUyMiU3RCU3RCUyQyUyMnRvZ2dsZVN0YXRlJTIyJTNBJTIyY2xvc2VkJTIyJTdEJTdEJTVEJTJDJTIycm93cyUyMiUzQSU1QiU3QiUyMmNvbHVtbk5hbWUlMjIlM0ElMjJDb21tdW5pdHklMjBBcmVhJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMlZBUkNIQVIlMjIlN0QlNUQlN0QlN0QlN0Q=)
34+
- Los Angeles International Airport - [Number of Flight operations, by flight type and reporting period](https://rpbouman.github.io/huey/src/index.html#JTdCJTIycXVlcnlNb2RlbCUyMiUzQSU3QiUyMmRhdGFzb3VyY2VJZCUyMiUzQSUyMmZpbGUlM0ElNUMlMjJodHRwcyUzQSUyRiUyRmRhdGEubGFjaXR5Lm9yZyUyRmFwaSUyRnZpZXdzJTJGYWppdi11YzYzJTJGcm93cy5jc3YlM0ZhY2Nlc3NUeXBlJTNERE9XTkxPQUQlNUMlMjIlMjIlMkMlMjJjZWxsc0hlYWRlcnMlMjIlM0ElMjJjb2x1bW5zJTIyJTJDJTIyYXhlcyUyMiUzQSU3QiUyMmNlbGxzJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMkZsaWdodE9wc0NvdW50JTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMkJJR0lOVCUyMiUyQyUyMmFnZ3JlZ2F0b3IlMjIlM0ElMjJzdW0lMjIlN0QlNUQlMkMlMjJjb2x1bW5zJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMkZsaWdodFR5cGUlMjIlMkMlMjJjb2x1bW5UeXBlJTIyJTNBJTIyVkFSQ0hBUiUyMiUyQyUyMmluY2x1ZGVUb3RhbHMlMjIlM0F0cnVlJTdEJTJDJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMkFycml2YWxfRGVwYXJ0dXJlJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMlZBUkNIQVIlMjIlN0QlNUQlMkMlMjJmaWx0ZXJzJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMkRvbWVzdGljX0ludGVybmF0aW9uYWwlMjIlMkMlMjJjb2x1bW5UeXBlJTIyJTNBJTIyVkFSQ0hBUiUyMiUyQyUyMmZpbHRlciUyMiUzQSU3QiUyMmZpbHRlclR5cGUlMjIlM0ElMjJpbiUyMiUyQyUyMnZhbHVlcyUyMiUzQSU3QiUyMkRvbWVzdGljJTIyJTNBJTdCJTIydmFsdWUlMjIlM0ElMjJEb21lc3RpYyUyMiUyQyUyMmxhYmVsJTIyJTNBJTIyRG9tZXN0aWMlMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyJ0RvbWVzdGljJyUyMiU3RCUyQyUyMkludGVybmF0aW9uYWwlMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMkludGVybmF0aW9uYWwlMjIlMkMlMjJsYWJlbCUyMiUzQSUyMkludGVybmF0aW9uYWwlMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyJ0ludGVybmF0aW9uYWwnJTIyJTdEJTdEJTJDJTIydG9WYWx1ZXMlMjIlM0ElN0IlN0QlMkMlMjJ0b2dnbGVTdGF0ZSUyMiUzQSUyMm9wZW4lMjIlN0QlN0QlNUQlMkMlMjJyb3dzJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMlJlcG9ydFBlcmlvZCUyMiUyQyUyMmNvbHVtblR5cGUlMjIlM0ElMjJUSU1FU1RBTVAlMjIlMkMlMjJkZXJpdmF0aW9uJTIyJTNBJTIyeWVhciUyMiUyQyUyMmluY2x1ZGVUb3RhbHMlMjIlM0F0cnVlJTdEJTJDJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMlJlcG9ydFBlcmlvZCUyMiUyQyUyMmNvbHVtblR5cGUlMjIlM0ElMjJUSU1FU1RBTVAlMjIlMkMlMjJkZXJpdmF0aW9uJTIyJTNBJTIybW9udGglMjBzaG9ydG5hbWUlMjIlMkMlMjJpbmNsdWRlVG90YWxzJTIyJTNBdHJ1ZSU3RCU1RCU3RCU3RCU3RA==)
35+
- City of Chicago Energy Benchmarking [Use of electricity, gas and steam by district over years 2018 - 2022](https://rpbouman.github.io/huey/src/index.html#JTdCJTIycXVlcnlNb2RlbCUyMiUzQSU3QiUyMmRhdGFzb3VyY2VJZCUyMiUzQSUyMmZpbGUlM0ElNUMlMjJodHRwcyUzQSUyRiUyRmRhdGEuY2l0eW9mY2hpY2Fnby5vcmclMkZhcGklMkZ2aWV3cyUyRnhxODMtanI4YyUyRnJvd3MuY3N2JTNGYWNjZXNzVHlwZSUzRERPV05MT0FEJTVDJTIyJTIyJTJDJTIyY2VsbHNIZWFkZXJzJTIyJTNBJTIyY29sdW1ucyUyMiUyQyUyMmF4ZXMlMjIlM0ElN0IlMjJjZWxscyUyMiUzQSU1QiU3QiUyMmNvbHVtbk5hbWUlMjIlM0ElMjJFbGVjdHJpY2l0eSUyMFVzZSUyMChrQnR1KSUyMiUyQyUyMmNvbHVtblR5cGUlMjIlM0ElMjJET1VCTEUlMjIlMkMlMjJhZ2dyZWdhdG9yJTIyJTNBJTIyc3VtJTIyJTdEJTJDJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMk5hdHVyYWwlMjBHYXMlMjBVc2UlMjAoa0J0dSklMjIlMkMlMjJjb2x1bW5UeXBlJTIyJTNBJTIyRE9VQkxFJTIyJTJDJTIyYWdncmVnYXRvciUyMiUzQSUyMnN1bSUyMiU3RCUyQyU3QiUyMmNvbHVtbk5hbWUlMjIlM0ElMjJEaXN0cmljdCUyMFN0ZWFtJTIwVXNlJTIwKGtCdHUpJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMkRPVUJMRSUyMiUyQyUyMmFnZ3JlZ2F0b3IlMjIlM0ElMjJzdW0lMjIlN0QlNUQlMkMlMjJjb2x1bW5zJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMkRhdGElMjBZZWFyJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMkJJR0lOVCUyMiU3RCU1RCUyQyUyMmZpbHRlcnMlMjIlM0ElNUIlN0IlMjJjb2x1bW5OYW1lJTIyJTNBJTIyRGF0YSUyMFllYXIlMjIlMkMlMjJjb2x1bW5UeXBlJTIyJTNBJTIyQklHSU5UJTIyJTJDJTIyZmlsdGVyJTIyJTNBJTdCJTIyZmlsdGVyVHlwZSUyMiUzQSUyMmJldHdlZW4lMjIlMkMlMjJ2YWx1ZXMlMjIlM0ElN0IlMjIyMDE0JTIyJTNBJTdCJTIydmFsdWUlMjIlM0ElMjIyMDE0JTIyJTJDJTIybGFiZWwlMjIlM0ElMjIyJTJDMDE0JTIyJTJDJTIybGl0ZXJhbCUyMiUzQSUyMjIwMTQlMjIlN0QlMkMlMjIyMDIzJTIyJTNBJTdCJTIydmFsdWUlMjIlM0ElMjIyMDIzJTIyJTJDJTIybGFiZWwlMjIlM0ElMjIyJTJDMDIzJTIyJTJDJTIybGl0ZXJhbCUyMiUzQSUyMjIwMjMlMjIlN0QlMkMlMjIyJTJDMDE4JTIyJTNBJTdCJTIydmFsdWUlMjIlM0ElMjIyJTJDMDE4JTIyJTJDJTIybGFiZWwlMjIlM0ElMjIyJTJDMDE4JTIyJTJDJTIybGl0ZXJhbCUyMiUzQSUyMjIwMTglMjIlN0QlN0QlMkMlMjJ0b1ZhbHVlcyUyMiUzQSU3QiUyMjIwMTclMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMjIwMTclMjIlMkMlMjJsYWJlbCUyMiUzQSUyMjIlMkMwMTclMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyMjAxNyUyMiU3RCUyQyUyMjIwMjMlMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMjIwMjMlMjIlMkMlMjJsYWJlbCUyMiUzQSUyMjIlMkMwMjMlMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyMjAyMyUyMiU3RCUyQyUyMjIlMkMwMjIlMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMjIlMkMwMjIlMjIlMkMlMjJsYWJlbCUyMiUzQSUyMjIlMkMwMjIlMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyMjAyMiUyMiU3RCU3RCUyQyUyMnRvZ2dsZVN0YXRlJTIyJTNBJTIyb3BlbiUyMiU3RCU3RCU1RCUyQyUyMnJvd3MlMjIlM0ElNUIlN0IlMjJjb2x1bW5OYW1lJTIyJTNBJTIyQ29tbXVuaXR5JTIwQXJlYSUyMiUyQyUyMmNvbHVtblR5cGUlMjIlM0ElMjJWQVJDSEFSJTIyJTdEJTVEJTdEJTdEJTdE)
3636
- Montgomery County of Maryland: [Warehouse and Retail Sales](https://rpbouman.github.io/huey/src/index.html#JTdCJTIycXVlcnlNb2RlbCUyMiUzQSU3QiUyMmRhdGFzb3VyY2VJZCUyMiUzQSUyMmZpbGUlM0ElNUMlMjJodHRwcyUzQSUyRiUyRmRhdGEubW9udGdvbWVyeWNvdW50eW1kLmdvdiUyRmFwaSUyRnZpZXdzJTJGdjc2aC1yN2JyJTJGcm93cy5jc3YlM0ZhY2Nlc3NUeXBlJTNERE9XTkxPQUQlNUMlMjIlMjIlMkMlMjJjZWxsc0hlYWRlcnMlMjIlM0ElMjJjb2x1bW5zJTIyJTJDJTIyYXhlcyUyMiUzQSU3QiUyMmNlbGxzJTIyJTNBJTVCJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMlJFVEFJTCUyMFNBTEVTJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMkRPVUJMRSUyMiUyQyUyMmFnZ3JlZ2F0b3IlMjIlM0ElMjJzdW0lMjIlN0QlMkMlN0IlMjJjb2x1bW5OYW1lJTIyJTNBJTIyUkVUQUlMJTIwVFJBTlNGRVJTJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMkRPVUJMRSUyMiUyQyUyMmFnZ3JlZ2F0b3IlMjIlM0ElMjJzdW0lMjIlN0QlMkMlN0IlMjJjb2x1bW5OYW1lJTIyJTNBJTIyV0FSRUhPVVNFJTIwU0FMRVMlMjIlMkMlMjJjb2x1bW5UeXBlJTIyJTNBJTIyRE9VQkxFJTIyJTJDJTIyYWdncmVnYXRvciUyMiUzQSUyMnN1bSUyMiU3RCU1RCUyQyUyMmNvbHVtbnMlMjIlM0ElNUIlN0IlMjJjb2x1bW5OYW1lJTIyJTNBJTIyWUVBUiUyMiUyQyUyMmNvbHVtblR5cGUlMjIlM0ElMjJCSUdJTlQlMjIlN0QlMkMlN0IlMjJjb2x1bW5OYW1lJTIyJTNBJTIyTU9OVEglMjIlMkMlMjJjb2x1bW5UeXBlJTIyJTNBJTIyQklHSU5UJTIyJTdEJTVEJTJDJTIyZmlsdGVycyUyMiUzQSU1QiU3QiUyMmNvbHVtbk5hbWUlMjIlM0ElMjJZRUFSJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMkJJR0lOVCUyMiUyQyUyMmZpbHRlciUyMiUzQSU3QiUyMmZpbHRlclR5cGUlMjIlM0ElMjJpbiUyMiUyQyUyMnZhbHVlcyUyMiUzQSU3QiUyMjIlMkMwMTclMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMjIlMkMwMTclMjIlMkMlMjJsYWJlbCUyMiUzQSUyMjIlMkMwMTclMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyMjAxNyUyMiUyQyUyMmVuYWJsZWQlMjIlM0FmYWxzZSU3RCUyQyUyMjIlMkMwMTglMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMjIlMkMwMTglMjIlMkMlMjJsYWJlbCUyMiUzQSUyMjIlMkMwMTglMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyMjAxOCUyMiUyQyUyMmVuYWJsZWQlMjIlM0FmYWxzZSU3RCUyQyUyMjIlMkMwMTklMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMjIlMkMwMTklMjIlMkMlMjJsYWJlbCUyMiUzQSUyMjIlMkMwMTklMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyMjAxOSUyMiU3RCUyQyUyMjIlMkMwMjAlMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMjIlMkMwMjAlMjIlMkMlMjJsYWJlbCUyMiUzQSUyMjIlMkMwMjAlMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyMjAyMCUyMiU3RCU3RCUyQyUyMnRvVmFsdWVzJTIyJTNBJTdCJTdEJTJDJTIydG9nZ2xlU3RhdGUlMjIlM0ElMjJvcGVuJTIyJTdEJTdEJTJDJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMklURU0lMjBUWVBFJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMlZBUkNIQVIlMjIlMkMlMjJmaWx0ZXIlMjIlM0ElN0IlMjJmaWx0ZXJUeXBlJTIyJTNBJTIyaW4lMjIlMkMlMjJ2YWx1ZXMlMjIlM0ElN0IlMjJCRUVSJTIyJTNBJTdCJTIydmFsdWUlMjIlM0ElMjJCRUVSJTIyJTJDJTIybGFiZWwlMjIlM0ElMjJCRUVSJTIyJTJDJTIybGl0ZXJhbCUyMiUzQSUyMidCRUVSJyUyMiU3RCUyQyUyMkRVTk5BR0UlMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMkRVTk5BR0UlMjIlMkMlMjJsYWJlbCUyMiUzQSUyMkRVTk5BR0UlMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyJ0RVTk5BR0UnJTIyJTdEJTJDJTIyS0VHUyUyMiUzQSU3QiUyMnZhbHVlJTIyJTNBJTIyS0VHUyUyMiUyQyUyMmxhYmVsJTIyJTNBJTIyS0VHUyUyMiUyQyUyMmxpdGVyYWwlMjIlM0ElMjInS0VHUyclMjIlN0QlMkMlMjJMSVFVT1IlMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMkxJUVVPUiUyMiUyQyUyMmxhYmVsJTIyJTNBJTIyTElRVU9SJTIyJTJDJTIybGl0ZXJhbCUyMiUzQSUyMidMSVFVT1InJTIyJTdEJTJDJTIyTk9OLUFMQ09IT0wlMjIlM0ElN0IlMjJ2YWx1ZSUyMiUzQSUyMk5PTi1BTENPSE9MJTIyJTJDJTIybGFiZWwlMjIlM0ElMjJOT04tQUxDT0hPTCUyMiUyQyUyMmxpdGVyYWwlMjIlM0ElMjInTk9OLUFMQ09IT0wnJTIyJTdEJTJDJTIyUkVGJTIyJTNBJTdCJTIydmFsdWUlMjIlM0ElMjJSRUYlMjIlMkMlMjJsYWJlbCUyMiUzQSUyMlJFRiUyMiUyQyUyMmxpdGVyYWwlMjIlM0ElMjInUkVGJyUyMiUyQyUyMmVuYWJsZWQlMjIlM0FmYWxzZSU3RCUyQyUyMlNUUl9TVVBQTElFUyUyMiUzQSU3QiUyMnZhbHVlJTIyJTNBJTIyU1RSX1NVUFBMSUVTJTIyJTJDJTIybGFiZWwlMjIlM0ElMjJTVFJfU1VQUExJRVMlMjIlMkMlMjJsaXRlcmFsJTIyJTNBJTIyJ1NUUl9TVVBQTElFUyclMjIlN0QlMkMlMjJXSU5FJTIyJTNBJTdCJTIydmFsdWUlMjIlM0ElMjJXSU5FJTIyJTJDJTIybGFiZWwlMjIlM0ElMjJXSU5FJTIyJTJDJTIybGl0ZXJhbCUyMiUzQSUyMidXSU5FJyUyMiU3RCU3RCUyQyUyMnRvVmFsdWVzJTIyJTNBJTdCJTdEJTJDJTIydG9nZ2xlU3RhdGUlMjIlM0ElMjJvcGVuJTIyJTdEJTdEJTVEJTJDJTIycm93cyUyMiUzQSU1QiU3QiUyMmNvbHVtbk5hbWUlMjIlM0ElMjJTVVBQTElFUiUyMiUyQyUyMmNvbHVtblR5cGUlMjIlM0ElMjJWQVJDSEFSJTIyJTdEJTJDJTdCJTIyY29sdW1uTmFtZSUyMiUzQSUyMklURU0lMjBUWVBFJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMlZBUkNIQVIlMjIlN0QlMkMlN0IlMjJjb2x1bW5OYW1lJTIyJTNBJTIySVRFTSUyMERFU0NSSVBUSU9OJTIyJTJDJTIyY29sdW1uVHlwZSUyMiUzQSUyMlZBUkNIQVIlMjIlN0QlNUQlN0QlN0QlN0Q=)
3737

3838
Want to run Huey locally? No problem! Follow the instructions below:

src/AboutDialog/AboutDialog.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ menu[role=toolbar] > label[for=aboutButton]:has( > button#aboutButton ) {
33
}
44

55
menu[role=toolbar] > label[for=aboutButton]:has( > button#aboutButton )::before {
6-
content: '\eac5';
6+
content: var( --icon-info-circle );
77
}
88

99
#aboutDialog {

src/AboutDialog/AboutDialog.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@ function initAboutDialog(){
55
el.textContent = `v ${hueyVersionNumber} (${hueyVersionName})` ;
66

77
el = byId('hueyVersion');
8-
el.innerText = `Huey version ${hueyVersionNumber} - ${hueyVersionName}`;
8+
el.textContent = `Huey version ${hueyVersionNumber} - ${hueyVersionName}`;
99

1010
el = byId('tablerIconsUrl');
11-
el.innerText = `Tabler Icons v${tablerIconsFontVersion}`;
11+
el.textContent = `Tabler Icons v${tablerIconsFontVersion}`;
1212

1313
el = byId('duckDbLibraryUrl');
1414
el.setAttribute('href', duckDbLibraryUrl);
15-
el.innerText = `DuckDB WASM ${duckdbLibraryVersion}`;
15+
el.textContent = `DuckDB WASM ${duckdbLibraryVersion}`;
1616
}
1717

1818
initAboutDialog();

src/App/App.css

Lines changed: 21 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -86,16 +86,16 @@ body {
8686

8787

8888
> label[for=uploader]::before {
89-
content: "\eb47";
89+
content: var( --icon-upload );
9090
}
9191

9292

9393
> label[for=loadFromUrl]::before {
94-
content: "\ea75";
94+
content: var( --icon-cloud-upload );
9595
}
9696

9797
> label[for=cloneHueySession]::before {
98-
content: "\ea7a";
98+
content: var( --icon-copy );
9999
padding-left: 8px;
100100
}
101101

@@ -109,8 +109,7 @@ body {
109109
color: var(--huey-icon-color-subtle);
110110
margin: 0px 4px 0px 4px;
111111
display: inline-block;
112-
/* square */
113-
content: "\eb2c";
112+
content: var( --icon-square );
114113
}
115114

116115
> label[for=autoRunQuery]:hover::after {
@@ -158,8 +157,7 @@ body {
158157

159158
> label[for=currentDatasourceMenuButton]:has( > menu#dataSourceMenu:not( :empty ) )::after {
160159
font-family: var( --huey-icon-font-family );
161-
/* caret-down */
162-
content: '\fb2a';
160+
content: var( --icon-caret-down );
163161
}
164162

165163
> label[for=currentDatasourceMenuButton][data-current-datasource=''] {
@@ -173,21 +171,25 @@ body {
173171
}
174172

175173
#queryResultRowsInfo {
176-
padding-left: 1em;
177174
}
178175

179-
/* separator after 'rows' */
180-
> label[for=queryResultRowsInfo]:after {
181-
content: ' rows;'
176+
> label[for=queryResultRowsInfo]:before {
177+
font-family: var( --huey-icon-font-family );
178+
font-size: var( --huey-icon-medium );
179+
content: var( --icon-table-column );
182180
}
183181

184182
/* if the columns info is empty then no separator after 'rows' */
185-
> label[for=queryResultRowsInfo]:has( + label[for=queryResultColumnsInfo] > output#queryResultColumnsInfo:empty ):after {
186-
content: ' rows'
183+
> label[for=queryResultRowsInfo]:has( + label[for=queryResultColumnsInfo] > output#queryResultColumnsInfo:empty ):before {
184+
font-family: var( --huey-icon-font-family );
185+
font-size: var( --huey-icon-medium );
186+
content: var( --icon-table-column );
187187
}
188188

189-
> label[for=queryResultColumnsInfo]:after {
190-
content: ' columns'
189+
> label[for=queryResultColumnsInfo]:before {
190+
font-family: var( --huey-icon-font-family );
191+
font-size: var( --huey-icon-medium );
192+
content: var( --icon-table-row );
191193
}
192194
}
193195

@@ -201,20 +203,17 @@ body {
201203
}
202204

203205
> label[for=runQueryButton]::before {
204-
/* player-play */
205-
content: "\ed46";
206+
content: var( --icon-player-play );
206207
}
207208
}
208209

209210
> main:has( > .workarea > #pivotTableUi[data-needs-update=true]) > menu[role=toolbar] > label[for=runQueryButton]::before {
210-
/* player-play */
211-
content: "\ed46";
211+
content: var( --icon-player-play );
212212
color: var( --huey-icon-highlight );
213213
}
214214

215215
> main:has( > .workarea > #pivotTableUi[aria-busy=true]) > menu[role=toolbar] > label[for=runQueryButton]::before {
216-
/* player-play-filled */
217-
content: "\f691";
216+
content: var( --icon-player-play-filled );
218217
color: var( --huey-icon-highlight );
219218
pointer-events: none;
220219
}
@@ -226,8 +225,7 @@ body:has( #autoRunQuery:checked ) {
226225
> menu[role=toolbar] {
227226

228227
> label[for=autoRunQuery]::after {
229-
/* checkbox */
230-
content: "\eba6";
228+
content: var( --icon-checkbox );
231229
color: var( --huey-icon-color-highlight );
232230
}
233231

src/App/App.js

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,14 +67,19 @@ function initDuckdbVersion(){
6767
sql += `\nFROM duckdb_keywords()\nWHERE keyword_category != 'unreserved'`;
6868
var result = connection.query(sql)
6969
.then(function(resultset){
70-
var duckdbVersionLabel = byId('duckdbVersionLabel');
7170
var row = resultset.get(0);
7271
var version = row[versionColumn];
7372
var api = row[apiColumn];
7473
var reservedWords = row[reservedWordsColumn];
7574
reservedWords = String(reservedWords).slice(1, -1).split(',');
7675
window.hueyDb.reservedWords = reservedWords;
77-
duckdbVersionLabel.innerText = `DuckDB ${version}, API: ${api}`;
76+
77+
var duckdbVersionLabel = byId('duckdbVersionLabel');
78+
duckdbVersionLabel.textContent = `DuckDB ${version}, API: ${api}`;
79+
80+
var duckdbAvatar = byId('duckdb-version-specific-avatar');
81+
var duckdbVersionParts = /v(\d+)\.(\d+).(\d)/.exec(version);
82+
duckdbAvatar.src = `https://duckdb.org/images/release-icons/${duckdbVersionParts[1]}.${duckdbVersionParts[2]}.0.svg`
7883
})
7984
.catch(function(){
8085
console.error(`Error fetching duckdb version info.`);
@@ -123,7 +128,7 @@ function initExecuteQuery(){
123128
}
124129

125130
function initApplication(){
126-
initDraggableDialogs();
131+
initDragableDialogs();
127132
initDuckdbVersion();
128133
initDataSourcesUi();
129134
initQueryModel();
@@ -202,8 +207,8 @@ function initApplication(){
202207

203208
break;
204209
}
205-
byId('queryResultRowsInfo').innerText = numRowsTuples;
206-
byId('queryResultColumnsInfo').innerText = numColumnsTuples;
210+
byId('queryResultRowsInfo').textContent = numRowsTuples;
211+
byId('queryResultColumnsInfo').textContent = numColumnsTuples;
207212
});
208213

209214
bufferEvents(pivotTableUi, 'busy', function(event, count){

src/App/SidebarLogic.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,4 @@ nav#sidebar[role=tablist] > div:has( > label[role=tab] + input[type=radio] + *[r
4444
*/
4545
body > main:has( > nav[role=tablist] > div > div[role=tabpanel] > div#attributeUi:empty ) > #workarea > #queryUi {
4646
display: none;
47-
}
47+
}

0 commit comments

Comments
 (0)