@homebridge-plugins/homebridge-august 3.1.1 → 3.1.3

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.
@@ -0,0 +1,86 @@
1
+ #!/usr/bin/env node
2
+
3
+ const child_process = require('node:child_process')
4
+ const fs = require('node:fs')
5
+
6
+ const changelogPath = 'CHANGELOG.md'
7
+
8
+ function normalizeChangelogHeader(content) {
9
+ const headerStart = content.indexOf('# Changelog\n')
10
+ if (headerStart <= 0) {
11
+ return content
12
+ }
13
+
14
+ const nextSectionStart = content.indexOf('\n## ', headerStart + 1)
15
+ const headerBlock = (nextSectionStart === -1 ? content.slice(headerStart) : content.slice(headerStart, nextSectionStart)).trim()
16
+ const prependedEntries = content.slice(0, headerStart).trim()
17
+ const remainingEntries = (nextSectionStart === -1 ? '' : content.slice(nextSectionStart)).trim()
18
+
19
+ return [headerBlock, prependedEntries, remainingEntries].filter(Boolean).join('\n\n') + '\n'
20
+ }
21
+
22
+ function getRepoUrl() {
23
+ try {
24
+ const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8'))
25
+ let url = (typeof pkg.repository === 'string' ? pkg.repository : pkg.repository?.url) || ''
26
+ url = url.replace(/^git\+/, '').replace(/\.git$/, '')
27
+ if (url.startsWith('https://')) return url
28
+ } catch {}
29
+ try {
30
+ const remote = child_process.execSync('git remote get-url origin').toString().trim()
31
+ return remote.replace(/^git\+/, '').replace(/\.git$/, '').replace(/^git@github\.com:/, 'https://github.com/')
32
+ } catch {}
33
+ return ''
34
+ }
35
+
36
+ function getPreviousTag() {
37
+ try {
38
+ const tags = child_process
39
+ .execSync('git tag --sort=-version:refname')
40
+ .toString()
41
+ .trim()
42
+ .split('\n')
43
+ .filter(Boolean)
44
+ return tags[0] || ''
45
+ } catch {
46
+ return ''
47
+ }
48
+ }
49
+
50
+ function appendFullChangelogLink(content, currentTag, repoUrl) {
51
+ const prefix = `**Full Changelog**: ${repoUrl}/compare/`
52
+ // Find the bounds of the first release section (the newly generated one)
53
+ const firstSectionStart = content.indexOf('\n## ')
54
+ if (firstSectionStart === -1) return content
55
+ const firstSectionEnd = content.indexOf('\n## ', firstSectionStart + 1)
56
+ const firstSection = firstSectionEnd === -1 ? content.slice(firstSectionStart) : content.slice(firstSectionStart, firstSectionEnd)
57
+
58
+ // Skip if a Full Changelog link is already present in that section
59
+ if (firstSection.includes(prefix)) return content
60
+
61
+ const prevTag = getPreviousTag()
62
+ if (!prevTag) return content
63
+
64
+ const link = `**Full Changelog**: ${repoUrl}/compare/${prevTag}...${currentTag}`
65
+ if (firstSectionEnd === -1) {
66
+ return content.trimEnd() + '\n\n' + link + '\n'
67
+ }
68
+ return content.slice(0, firstSectionEnd).trimEnd() + '\n\n' + link + '\n' + content.slice(firstSectionEnd)
69
+ }
70
+
71
+ exports.preCommit = (props) => {
72
+ if (!fs.existsSync(changelogPath)) {
73
+ return
74
+ }
75
+
76
+ let content = fs.readFileSync(changelogPath, 'utf8')
77
+ content = normalizeChangelogHeader(content)
78
+
79
+ const repoUrl = getRepoUrl()
80
+ const currentTag = props?.tag || ''
81
+ if (repoUrl && currentTag) {
82
+ content = appendFullChangelogLink(content, currentTag, repoUrl)
83
+ }
84
+
85
+ fs.writeFileSync(changelogPath, content)
86
+ }
@@ -73,11 +73,10 @@ const packageJSON = JSON.parse(fs.readFileSync('package.json', 'utf8'))
73
73
 
74
74
  const refArgument = process.argv[2]
75
75
  const tagArgument = process.argv[3] || 'latest'
76
- const prLabel = process.argv[4] || null // optional PR label: major, minor, patch
77
76
 
78
77
  if (!refArgument) {
79
78
  console.error('ref argument is missing')
80
- console.error('Usage: npm-version-script-esm.js <ref> [tag] [pr_label]')
79
+ console.error('Usage: npm-version-script-esm.js <ref> [tag]')
81
80
  process.exit(1)
82
81
  }
83
82
 
@@ -145,13 +144,13 @@ function desiredTargetVersion(ref) {
145
144
  throw new Error(`Malformed branch name for ref: ${ref}. Must be beta-x.x.x, alpha-x.x.x, or 'latest'`)
146
145
  }
147
146
 
148
- function bumpVersion(baseVersion, prLabel) {
149
- const label = (prLabel || 'patch').toLowerCase()
147
+ function bumpVersion(baseVersion, level) {
148
+ const normalizedLevel = (level || 'patch').toLowerCase()
150
149
  if (!semver.valid(baseVersion)) {
151
150
  throw new Error(`Invalid base version passed to bumpVersion: ${baseVersion}`)
152
151
  }
153
152
 
154
- switch (label) {
153
+ switch (normalizedLevel) {
155
154
  case 'major':
156
155
  return semver.inc(baseVersion, 'major')
157
156
  case 'minor':
@@ -166,19 +165,14 @@ const baseVersion = desiredTargetVersion(refArgument)
166
165
  let publishTag = baseVersion
167
166
 
168
167
  if (refArgument.includes('latest')) {
169
- if (prLabel) {
170
- // For latest branch when a PR label is provided, bump according to PR label
171
- publishTag = bumpVersion(baseVersion, prLabel)
168
+ // For latest branch, determine next version based on npm and bump patch.
169
+ const latestPublishedStable = getLatestStableVersionFromNpm()
170
+ if (latestPublishedStable) {
171
+ console.warn(`Latest published stable version is ${latestPublishedStable}; bumping patch`)
172
+ publishTag = bumpVersion(latestPublishedStable, 'patch')
172
173
  } else {
173
- // No PR label: determine next version based on the highest published stable version
174
- const latestPublishedStable = getLatestStableVersionFromNpm()
175
- if (latestPublishedStable) {
176
- console.warn(`Latest published stable version is ${latestPublishedStable}; bumping patch`)
177
- publishTag = bumpVersion(latestPublishedStable, 'patch')
178
- } else {
179
- console.warn('No published stable versions found; bumping package.json version patch')
180
- publishTag = bumpVersion(baseVersion, 'patch')
181
- }
174
+ console.warn('No published stable versions found; bumping package.json version patch')
175
+ publishTag = bumpVersion(baseVersion, 'patch')
182
176
  }
183
177
  } else {
184
178
  // For alpha/beta, query npm for latest
@@ -0,0 +1,118 @@
1
+ #!/usr/bin/env node
2
+
3
+ import fs from 'node:fs'
4
+ import https from 'node:https'
5
+ import process from 'node:process'
6
+
7
+ const allowed = new Set(['major', 'minor', 'patch'])
8
+
9
+ function setOutput(name, value) {
10
+ if (process.env.GITHUB_OUTPUT) {
11
+ fs.appendFileSync(process.env.GITHUB_OUTPUT, `${name}=${value}\n`)
12
+ }
13
+ console.log(`${name}=${value}`)
14
+ }
15
+
16
+ function resolveFromLabels(labels) {
17
+ const majorLabels = new Set(['major', 'semver:major', 'release:major', 'breaking', 'breaking-change'])
18
+ const minorLabels = new Set(['minor', 'semver:minor', 'release:minor', 'feature'])
19
+ const patchLabels = new Set(['patch', 'semver:patch', 'release:patch', 'fix'])
20
+
21
+ if (labels.some(label => majorLabels.has(label))) return 'major'
22
+ if (labels.some(label => minorLabels.has(label))) return 'minor'
23
+ if (labels.some(label => patchLabels.has(label))) return 'patch'
24
+ return 'patch'
25
+ }
26
+
27
+ function listPrsForCommit(owner, repo, sha, token) {
28
+ return new Promise((resolve, reject) => {
29
+ const path = `/repos/${encodeURIComponent(owner)}/${encodeURIComponent(repo)}/commits/${sha}/pulls`
30
+ const req = https.request(
31
+ {
32
+ hostname: 'api.github.com',
33
+ method: 'GET',
34
+ path,
35
+ headers: {
36
+ Accept: 'application/vnd.github+json',
37
+ Authorization: `Bearer ${token}`,
38
+ 'User-Agent': 'homebridge-resolve-version-bump',
39
+ 'X-GitHub-Api-Version': '2022-11-28',
40
+ },
41
+ },
42
+ (res) => {
43
+ let body = ''
44
+ res.setEncoding('utf8')
45
+ res.on('data', (chunk) => {
46
+ body += chunk
47
+ })
48
+ res.on('end', () => {
49
+ if (res.statusCode < 200 || res.statusCode >= 300) {
50
+ reject(new Error(`GitHub API request failed (${res.statusCode}): ${body}`))
51
+ return
52
+ }
53
+ try {
54
+ const parsed = JSON.parse(body)
55
+ resolve(Array.isArray(parsed) ? parsed : [])
56
+ } catch (error) {
57
+ reject(new Error(`Failed to parse GitHub API response: ${error.message}`))
58
+ }
59
+ })
60
+ },
61
+ )
62
+
63
+ req.on('error', reject)
64
+ req.end()
65
+ })
66
+ }
67
+
68
+ async function main() {
69
+ const manualInput = (process.argv[2] || '').trim().toLowerCase()
70
+ if (manualInput) {
71
+ if (!allowed.has(manualInput)) {
72
+ console.error(`Invalid version bump '${manualInput}'. Use major, minor, or patch.`)
73
+ process.exit(1)
74
+ }
75
+ console.error(`Using manual version bump input: ${manualInput}`)
76
+ setOutput('version_bump', manualInput)
77
+ return
78
+ }
79
+
80
+ const repository = process.env.GITHUB_REPOSITORY || ''
81
+ const sha = process.env.GITHUB_SHA || ''
82
+ const token = process.env.GITHUB_TOKEN || ''
83
+
84
+ if (!repository || !sha || !token || !repository.includes('/')) {
85
+ console.error('Missing GITHUB_REPOSITORY, GITHUB_SHA, or GITHUB_TOKEN. Defaulting to patch.')
86
+ setOutput('version_bump', 'patch')
87
+ return
88
+ }
89
+
90
+ const [owner, repo] = repository.split('/')
91
+
92
+ try {
93
+ const prs = await listPrsForCommit(owner, repo, sha, token)
94
+ const pr = prs.find((candidate) => candidate.merged_at) || prs[0]
95
+
96
+ if (!pr) {
97
+ console.error('No PR associated with commit; defaulting to patch.')
98
+ setOutput('version_bump', 'patch')
99
+ return
100
+ }
101
+
102
+ const labels = (pr.labels || [])
103
+ .map((label) => (typeof label === 'string' ? label : label.name || ''))
104
+ .map((label) => label.toLowerCase())
105
+
106
+ const bump = resolveFromLabels(labels)
107
+ console.error(`Resolved bump '${bump}' from PR #${pr.number} labels: ${labels.join(', ') || '(none)'}`)
108
+ setOutput('version_bump', bump)
109
+ } catch (error) {
110
+ console.error(`Failed to inspect PR labels, defaulting to patch: ${error.message}`)
111
+ setOutput('version_bump', 'patch')
112
+ }
113
+ }
114
+
115
+ main().catch((error) => {
116
+ console.error(error)
117
+ process.exit(1)
118
+ })
@@ -7,6 +7,39 @@ on:
7
7
  - 'beta'
8
8
  - 'latest'
9
9
  workflow_dispatch:
10
+ inputs:
11
+ release_type:
12
+ description: Release channel
13
+ required: true
14
+ type: choice
15
+ options:
16
+ - latest
17
+ - beta
18
+ - alpha
19
+ default: latest
20
+ is_esm:
21
+ description: Package is ESM
22
+ required: true
23
+ type: boolean
24
+ default: true
25
+ version_override:
26
+ description: Exact version (for example 2.1.0). Leave empty for auto bump.
27
+ required: false
28
+ type: string
29
+ version_bump:
30
+ description: Auto bump type when version_override is empty
31
+ required: false
32
+ type: choice
33
+ options:
34
+ - patch
35
+ - minor
36
+ - major
37
+ default: patch
38
+ max_attempts:
39
+ description: Max retries for prerelease collision handling
40
+ required: false
41
+ type: number
42
+ default: 5
10
43
 
11
44
  # Cancel any in-progress workflow for the same branch. A new push should
12
45
  # supersede the previous run rather than racing it to publish.
@@ -78,8 +111,10 @@ jobs:
78
111
  needs: determine-release-type
79
112
  uses: homebridge/.github/.github/workflows/update-version.yml@latest
80
113
  with:
81
- release_type: ${{ needs.determine-release-type.outputs.release_type }}
82
- is_esm: ${{ needs.determine-release-type.outputs.is_esm == 'true' }}
114
+ release_type: ${{ needs.determine-release-type.outputs.release_type || inputs.release_type }}
115
+ is_esm: ${{ needs.determine-release-type.outputs.is_esm == 'true' || inputs.is_esm == 'true' }}
116
+ version_override: ${{ inputs.version_override }}
117
+ version_bump: ${{ inputs.version_bump }}
83
118
 
84
119
  # 5️⃣ Publish to NPM and create GitHub release (OIDC — id-token required here and in the reusable workflow)
85
120
  publish-release:
@@ -93,6 +128,9 @@ jobs:
93
128
  release_type: ${{ needs.determine-release-type.outputs.release_type }}
94
129
  version: ${{ needs.update-version.outputs.version }}
95
130
  is_esm: ${{ needs.determine-release-type.outputs.is_esm == 'true' }}
131
+ version_override: ${{ inputs.version_override || '' }}
132
+ version_bump: ${{ inputs.version_bump || 'patch' }}
133
+ max_attempts: ${{ inputs.max_attempts || 5 }}
96
134
  secrets:
97
135
  NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
98
136
 
@@ -104,7 +142,7 @@ jobs:
104
142
  with:
105
143
  branch_name: ${{ needs.determine-release-type.outputs.branch_name }}
106
144
  release_type: ${{ needs.determine-release-type.outputs.release_type }}
107
- is_esm: ${{ needs.determine-release-type.outputs.is_esm == 'true' }}
145
+ is_esm: ${{ needs.determine-release-type.outputs.is_esm == 'true' || inputs.is_esm == 'true' }}
108
146
 
109
147
  # 7️⃣ Notify if any job fails
110
148
  workflow-failure:
package/CHANGELOG.md CHANGED
@@ -1,8 +1,20 @@
1
- # Changelog
1
+ ## [3.1.2](https://github.com/homebridge-plugins/homebridge-august/compare/v3.1.1...v3.1.2) (2026-04-18)
2
2
 
3
- All notable changes to this project are documented in this file. This project follows Semantic Versioning.
3
+ ### Bug Fixes
4
+
5
+ * broaden engines.homebridge to support v1.x ([3d5cb8d](https://github.com/homebridge-plugins/homebridge-august/commit/3d5cb8d06b11e9a9b1e0d1111d372ef6e659d523))
6
+ * detect august-yale TimeoutError by error.name instead of message string ([03587f1](https://github.com/homebridge-plugins/homebridge-august/commit/03587f1c8e06d8ad41dd8d82a6852f67fb9803df))
7
+
8
+ **Full Changelog**: https://github.com/homebridge-plugins/homebridge-august/compare/v3.1.1...v3.1.2
9
+
10
+ ## [3.1.1](https://github.com/homebridge-plugins/homebridge-august/compare/v3.1.0...v3.1.1) (2026-04-16)
11
+
12
+ ### Bug Fixes
13
+
14
+ * Matter quality, CI gating, lint coverage, and TypeScript strictness ([#210](https://github.com/homebridge-plugins/homebridge-august/issues/210)) ([67d44fe](https://github.com/homebridge-plugins/homebridge-august/commit/67d44febd15ff8467a73458b262dad620235cfaa))
15
+
16
+ **Full Changelog**: https://github.com/homebridge-plugins/homebridge-august/compare/v3.1.0...v3.1.1
4
17
 
5
-
6
18
  ## [3.1.0](https://github.com/homebridge-plugins/homebridge-august/releases/tag/v3.1.0) (2026-04-16)
7
19
 
8
20
  ### What's Changes
@@ -344,4 +356,4 @@ All notable changes to this project are documented in this file. This project fo
344
356
  ### What's Changes
345
357
  - Initial release
346
358
 
347
- **Release**: https://github.com/homebridge-plugins/homebridge-august/releases/tag/v1.0.0
359
+ **Release**: https://github.com/homebridge-plugins/homebridge-august/releases/tag/v1.0.0
@@ -45,6 +45,7 @@ export declare abstract class deviceBase {
45
45
  */
46
46
  isTimeoutError(error: {
47
47
  message: string;
48
+ name?: string;
48
49
  statusCode?: number;
49
50
  }): boolean;
50
51
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/devices/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/devices/device.ts"],"names":[],"mappings":"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"}
@@ -165,8 +165,9 @@ export class deviceBase {
165
165
  * Handles 502 Bad Gateway, 401 Unauthorized, 503 Service Unavailable, and network timeouts
166
166
  */
167
167
  isTimeoutError(error) {
168
- // Check for network timeout errors
169
- if (error.message && error.message.includes('ETIMEDOUT')) {
168
+ // Check for august-yale TimeoutError by name (stable contract — works regardless
169
+ // of message format changes) and Node.js network timeouts by message
170
+ if (error.name === 'TimeoutError' || error.message?.includes('ETIMEDOUT')) {
170
171
  return true;
171
172
  }
172
173
  // Check for status codes that indicate session expiration or temporary server issues
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/devices/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/devices/device.ts"],"names":[],"mappings":"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"}
package/dist/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@homebridge-plugins/homebridge-august",
3
3
  "displayName": "August",
4
4
  "type": "module",
5
- "version": "3.1.1",
5
+ "version": "3.1.3",
6
6
  "description": "The August plugin allows you to access your August & Yale device(s) from HomeKit.",
7
7
  "author": {
8
8
  "name": "donavanbecker",
@@ -38,7 +38,7 @@
38
38
  ],
39
39
  "main": "dist/index.js",
40
40
  "engines": {
41
- "homebridge": "^2.0.0-beta.89",
41
+ "homebridge": "^1.11.4 || ^2.0.0-beta.89",
42
42
  "node": "^22 || ^24"
43
43
  },
44
44
  "scripts": {
@@ -62,22 +62,22 @@
62
62
  },
63
63
  "dependencies": {
64
64
  "@homebridge/plugin-ui-utils": "^2.2.3",
65
- "august-yale": "^1.1.6",
65
+ "august-yale": "^1.1.7",
66
66
  "rxjs": "^7.8.2"
67
67
  },
68
68
  "devDependencies": {
69
69
  "@antfu/eslint-config": "^8.2.0",
70
70
  "@types/node": "^25.6.0",
71
- "@vitest/coverage-v8": "^4.1.4",
72
- "eslint": "^10.2.0",
71
+ "@vitest/coverage-v8": "^4.1.5",
72
+ "eslint": "^10.2.1",
73
73
  "eslint-plugin-format": "^2.0.1",
74
- "eslint-plugin-perfectionist": "^5.8.0",
74
+ "eslint-plugin-perfectionist": "^5.9.0",
75
75
  "eslint-plugin-unused-imports": "^4.4.1",
76
- "homebridge": "^2.0.0-beta.89",
76
+ "homebridge": "^2.0.0-beta.101",
77
77
  "nodemon": "^3.1.14",
78
78
  "shx": "^0.4.0",
79
79
  "typedoc": "^0.28.19",
80
- "typescript": "^6.0.2",
81
- "vitest": "^4.1.4"
80
+ "typescript": "^6.0.3",
81
+ "vitest": "^4.1.5"
82
82
  }
83
83
  }
@@ -1 +1 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>default | @homebridge-plugins/homebridge-august</title><meta name="description" content="Documentation for @homebridge-plugins/homebridge-august"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@homebridge-plugins/homebridge-august</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">default</a></li></ul><h1>Variable default</h1></div><div class="tsd-signature"><span class="tsd-kind-variable">default</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">api</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">API</span><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span></div><div class="tsd-type-declaration"><h4>Type Declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures"><li class="tsd-signature" id="__type"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">api</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">API</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span></li><li class="tsd-description"><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">api</span>: <span class="tsd-signature-type">API</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/homebridge-plugins/homebridge-august/blob/67d44febd15ff8467a73458b262dad620235cfaa/src/index.ts#L26">index.ts:26</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">@homebridge-plugins/homebridge-august</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer></footer><div class="overlay"></div></body></html>
1
+ <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>default | @homebridge-plugins/homebridge-august</title><meta name="description" content="Documentation for @homebridge-plugins/homebridge-august"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@homebridge-plugins/homebridge-august</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">default</a></li></ul><h1>Variable default</h1></div><div class="tsd-signature"><span class="tsd-kind-variable">default</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">api</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">API</span><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span></div><div class="tsd-type-declaration"><h4>Type Declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures"><li class="tsd-signature" id="__type"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">api</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">API</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span></li><li class="tsd-description"><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">api</span>: <span class="tsd-signature-type">API</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/homebridge-plugins/homebridge-august/blob/ed9094358ab9ec6f724df58c1d98d38cee7db751/src/index.ts#L26">index.ts:26</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">@homebridge-plugins/homebridge-august</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer></footer><div class="overlay"></div></body></html>
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@homebridge-plugins/homebridge-august",
3
3
  "displayName": "August",
4
4
  "type": "module",
5
- "version": "3.1.1",
5
+ "version": "3.1.3",
6
6
  "description": "The August plugin allows you to access your August & Yale device(s) from HomeKit.",
7
7
  "author": {
8
8
  "name": "donavanbecker",
@@ -38,7 +38,7 @@
38
38
  ],
39
39
  "main": "dist/index.js",
40
40
  "engines": {
41
- "homebridge": "^2.0.0-beta.89",
41
+ "homebridge": "^1.11.4 || ^2.0.0-beta.89",
42
42
  "node": "^22 || ^24"
43
43
  },
44
44
  "scripts": {
@@ -62,22 +62,22 @@
62
62
  },
63
63
  "dependencies": {
64
64
  "@homebridge/plugin-ui-utils": "^2.2.3",
65
- "august-yale": "^1.1.6",
65
+ "august-yale": "^1.1.7",
66
66
  "rxjs": "^7.8.2"
67
67
  },
68
68
  "devDependencies": {
69
69
  "@antfu/eslint-config": "^8.2.0",
70
70
  "@types/node": "^25.6.0",
71
- "@vitest/coverage-v8": "^4.1.4",
72
- "eslint": "^10.2.0",
71
+ "@vitest/coverage-v8": "^4.1.5",
72
+ "eslint": "^10.2.1",
73
73
  "eslint-plugin-format": "^2.0.1",
74
- "eslint-plugin-perfectionist": "^5.8.0",
74
+ "eslint-plugin-perfectionist": "^5.9.0",
75
75
  "eslint-plugin-unused-imports": "^4.4.1",
76
- "homebridge": "^2.0.0-beta.89",
76
+ "homebridge": "^2.0.0-beta.101",
77
77
  "nodemon": "^3.1.14",
78
78
  "shx": "^0.4.0",
79
79
  "typedoc": "^0.28.19",
80
- "typescript": "^6.0.2",
81
- "vitest": "^4.1.4"
80
+ "typescript": "^6.0.3",
81
+ "vitest": "^4.1.5"
82
82
  }
83
83
  }