diff --git a/.github/workflows/close-stale-issues.yml b/.github/workflows/close-stale-issues.yml
index 2566872b..fcd2b45f 100644
--- a/.github/workflows/close-stale-issues.yml
+++ b/.github/workflows/close-stale-issues.yml
@@ -13,7 +13,7 @@ jobs:
uses: actions/stale@v4
with:
repo-token: ${{ secrets.BOT_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
- days-before-stale: 90
+ days-before-stale: 360
days-before-close: 5
operations-per-run: 30
remove-stale-when-updated: true
@@ -25,9 +25,9 @@ jobs:
This PR is stale because it has been open 6 weeks with no activity. Either remove the stale label or comment below with a short update,
otherwise this PR will be closed in 5 days.
close-issue-message: >
- This issue was automatically closed because it has been stalled for over 6 weeks with no activity.
+ This issue was automatically closed because it has been stalled for over 1 year with no activity.
close-pr-message: >
- This pull request was automatically closed because it has been stalled for over 6 weeks with no activity.
+ This pull request was automatically closed because it has been stalled for over 1 year with no activity.
stale-issue-label: '⚰️ Stale'
close-issue-label: '🕸️ Inactive'
stale-pr-label: '⚰️ Stale'
diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md
index 76fa5114..fe2c5eb9 100644
--- a/docs/troubleshooting.md
+++ b/docs/troubleshooting.md
@@ -504,9 +504,11 @@ Usually, Font Awesome will be automatically enabled if one or more of your icons
If you are trying to use a premium icon, then you must have a [Pro License](https://fontawesome.com/plans). You'll then need to specify your Pro plan API key under `appConfig.fontAwesomeKey`. You can find this key, by logging into your FA account, navigate to Account → [Kits](https://fontawesome.com/kits) → New Kit → Copy Kit Code. The code is a 10-digit alpha-numeric code, and is also visible within the new kit's URL, for example: `81e48ce079`.
+

+
Be sure that you're specifying the icon category and name correctly. You're icon should look be `[category] fa-[icon-name]`. The following categories are supported: `far` _(regular)_, `fas` _(solid)_, `fal`_(light)_, `fad` _(duo-tone)_ and `fab`_(brands)_. With the exception of brands, you'll usually want all your icons to be in from same category, so they look uniform.
-Ensure the icon you are trying to use, is available within [FontAwesome Version 5](https://fontawesome.com/v5/search).
+Ensure the icon you are trying to use, is available within [FontAwesome Version 5](https://fontawesome.com/v5/search) (we've not yet upgraded to V6, as it works a little differently).
Examples: `fab fa-raspberry-pi`, `fas fa-database`, `fas fa-server`, `fas fa-ethernet`
diff --git a/docs/widgets.md b/docs/widgets.md
index 678558ea..61097e00 100644
--- a/docs/widgets.md
+++ b/docs/widgets.md
@@ -151,6 +151,8 @@ A simple, live-updating local weather component, showing temperature, conditions
**`city`** | `string` | Required | A city name to use for fetching weather. This can also be a state code or country code, following the ISO-3166 format
**`units`** | `string` | _Optional_ | The units to use for displaying data, can be either `metric` or `imperial`. Defaults to `metric`
**`hideDetails`** | `boolean` | _Optional_ | If set to `true`, the additional details (wind, humidity, pressure, etc) will not be shown. Defaults to `false`
+**`lat`** | `number` | _Optional_ | To show weather for a specific location, you can provide the latitude and longitude coordinates. If provided, this will override the `city` option
+**`lon`** | `number` | _Optional_ | To show weather for a specific location, you can provide the latitude and longitude coordinates. If provided, this will override the `city` option
#### Example
@@ -160,7 +162,7 @@ A simple, live-updating local weather component, showing temperature, conditions
apiKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
city: London
units: metric
- hideDetails: false
+ hideDetails: true
```
#### Info
diff --git a/src/components/LinkItems/Item.vue b/src/components/LinkItems/Item.vue
index feafb75d..07f0fa2f 100644
--- a/src/components/LinkItems/Item.vue
+++ b/src/components/LinkItems/Item.vue
@@ -255,6 +255,7 @@ export default {
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
word-break: keep-all;
+ overflow: hidden;
span.text {
white-space: nowrap;
}
@@ -385,6 +386,7 @@ p.description {
font-size: .9em;
line-height: 1rem;
height: 2rem;
+ overflow: hidden;
}
}
}
diff --git a/src/components/Settings/CustomThemeMaker.vue b/src/components/Settings/CustomThemeMaker.vue
index babaf64f..fa647c11 100644
--- a/src/components/Settings/CustomThemeMaker.vue
+++ b/src/components/Settings/CustomThemeMaker.vue
@@ -319,6 +319,10 @@ div.action-buttons {
min-width: 6rem;
padding: 0.25rem 0.5rem;
margin: 1rem 0.5rem 0.5rem;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ justify-content: center;
}
}
diff --git a/src/components/Widgets/GlCpuGauge.vue b/src/components/Widgets/GlCpuGauge.vue
index 0d89464d..5371de75 100644
--- a/src/components/Widgets/GlCpuGauge.vue
+++ b/src/components/Widgets/GlCpuGauge.vue
@@ -112,6 +112,7 @@ export default {
cursor: pointer;
font-size: 0.9rem;
text-align: center;
+ width: 100%;
width: fit-content;
margin: 0.25rem auto;
padding: 0.1rem 0.25rem;
diff --git a/src/components/Widgets/PublicHolidays.vue b/src/components/Widgets/PublicHolidays.vue
index 424160cf..9f41fe19 100644
--- a/src/components/Widgets/PublicHolidays.vue
+++ b/src/components/Widgets/PublicHolidays.vue
@@ -90,7 +90,8 @@ export default {
const formatType = (ht) => capitalize(ht.replaceAll('_', ' '));
holidays.forEach((holiday) => {
results.push({
- name: holiday.name.filter(p => p.lang == this.options.lang)[0].text || holiday.name[0].text,
+ name: holiday.name
+ .filter(p => p.lang === this.options.lang)[0].text || holiday.name[0].text,
date: makeDate(holiday.date),
type: formatType(holiday.holidayType),
observed: holiday.observedOn ? makeDate(holiday.observedOn) : '',
diff --git a/src/components/Widgets/Weather.vue b/src/components/Widgets/Weather.vue
index 364e1bb4..a72a0dde 100644
--- a/src/components/Widgets/Weather.vue
+++ b/src/components/Widgets/Weather.vue
@@ -46,7 +46,12 @@ export default {
return this.options.units || 'metric';
},
endpoint() {
- const { apiKey, city } = this.options;
+ const {
+ apiKey, city, lat, lon,
+ } = this.options;
+ if (lat && lon) {
+ return `${widgetApiEndpoints.weather}?lat=${lat}&lon=${lon}&appid=${apiKey}&units=${this.units}`;
+ }
return `${widgetApiEndpoints.weather}?q=${city}&appid=${apiKey}&units=${this.units}`;
},
tempDisplayUnits() {
@@ -106,7 +111,11 @@ export default {
checkProps() {
const ops = this.options;
if (!ops.apiKey) this.error('Missing API key for OpenWeatherMap');
- if (!ops.city) this.error('A city name is required to fetch weather');
+
+ if ((!ops.lat || !ops.lon) && !ops.city) {
+ this.error('A city name or lat + lon is required to fetch weather');
+ }
+
if (ops.units && ops.units !== 'metric' && ops.units !== 'imperial') {
this.error('Invalid units specified, must be either \'metric\' or \'imperial\'');
}
diff --git a/src/styles/color-themes.scss b/src/styles/color-themes.scss
index 7c62fa23..1977e5de 100644
--- a/src/styles/color-themes.scss
+++ b/src/styles/color-themes.scss
@@ -1777,7 +1777,7 @@ html[data-theme="tama"] {
// large tile spacing adjustment
.there-are-items:has(.item-wrapper.wrap-size-large) { padding-top: .25rem; }
- .item-wrapper.wrap-size-large { margin: 0rem .5rem .5rem 0rem; }
+ .item-wrapper.wrap-size-large { margin: 0rem .5rem .5rem 0rem; overflow: hidden; }
.item.size-large .tile-title { padding: 0rem 0rem 0rem .7rem; }
// Hide open method icon
diff --git a/src/styles/global-styles.scss b/src/styles/global-styles.scss
index 7e4ef40c..4d4a9565 100644
--- a/src/styles/global-styles.scss
+++ b/src/styles/global-styles.scss
@@ -103,6 +103,7 @@ html {
border-radius: var(--curve-factor-small);
color: var(--description-tooltip-color);
padding: var(--tooltip-padding);
+ overflow: hidden;
}
.tooltip-arrow {
width: 0;