calendit 1.20260426.4 → 1.20260426.5

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.
@@ -373,7 +373,17 @@ export function registerMacosCommands(program, deps) {
373
373
  writeStdoutLine(t("macos.doctor.bridgeAppUnresolved"));
374
374
  }
375
375
  }
376
- writeStdoutLine(`eventkit-helper: ${p ?? (socketPath ? "(not used — doctor uses the bridge above)" : "(not found — build from repo or set CALENDIT_EVENTKIT_HELPER)")}`);
376
+ if (socketPath) {
377
+ if (p) {
378
+ writeStdoutLine(t("macos.doctor.helperBinaryWhenBridge", { path: p }));
379
+ }
380
+ else {
381
+ writeStdoutLine(t("macos.doctor.helperBinaryWhenBridgeMissing"));
382
+ }
383
+ }
384
+ else {
385
+ writeStdoutLine(`eventkit-helper: ${p ?? "(not found — build from repo or set CALENDIT_EVENTKIT_HELPER)"}`);
386
+ }
377
387
  if (!hasEventkitTransport()) {
378
388
  writeStdoutLine("EventKit: no helper and no local bridge. Build helper or start CalenditEventKitBridge.app.");
379
389
  return;
@@ -381,12 +391,12 @@ export function registerMacosCommands(program, deps) {
381
391
  try {
382
392
  const j = await eventkitDoctorJson();
383
393
  writeStdoutLine(JSON.stringify(j, null, 2));
384
- if (j.calendarAccess === "denied" && isLikelyIdeIntegratedTerminal()) {
394
+ if (j.calendarAccess === "denied") {
385
395
  writeStdoutLine("");
386
396
  if (j.transport === "bridge") {
387
397
  writeStdoutLine(t("macos.doctor.bridgeDeniedHint"));
388
398
  }
389
- else {
399
+ else if (isLikelyIdeIntegratedTerminal()) {
390
400
  writeStdoutLine(t("macos.external.suggestionWhenDenied"));
391
401
  }
392
402
  }
@@ -1,3 +1,3 @@
1
1
  /** Generated by scripts/gen-locale-keys.mjs — do not edit by hand */
2
- export type LocaleKey = "common.hint" | "config.check.contexts" | "config.check.contextsNone" | "config.check.fileLine" | "config.check.googleNotSet" | "config.check.googleOk" | "config.check.header" | "config.check.outlookNotSet" | "config.check.outlookOk" | "config.check.uiLocale" | "config.cmd.contextDeleted" | "config.cmd.contextSaved" | "config.cmd.googleSaved" | "config.cmd.localeSet" | "config.cmd.macosTransportSet" | "config.cmd.outlookSaved" | "errors.api.prefix" | "errors.apiWithStatus" | "errors.auth.googleLoginHint" | "errors.auth.prefix" | "errors.config.fileNotFound" | "errors.config.fileNotFoundHint" | "errors.config.invalidFormat" | "errors.config.invalidFormatDetails" | "errors.config.prefix" | "errors.config.readFailed" | "errors.config.readFailedHint" | "errors.context.loadFailed" | "errors.context.loadFailedHint" | "errors.context.missing" | "errors.context.missingHint" | "errors.datetime.invalidFormat" | "errors.datetime.invalidParse" | "errors.datetime.invalidParseHint" | "errors.service.googleCredsNotSet" | "errors.service.googleCredsNotSetHint" | "errors.service.outlookAccountMismatch" | "errors.service.outlookAccountMismatchHint" | "errors.service.outlookCredsNotSet" | "errors.service.outlookCredsNotSetHint" | "errors.service.outlookNoMsalAccounts" | "errors.service.outlookNoMsalAccountsHint" | "errors.unknown" | "errors.validation.prefix" | "eventkit.bridge.bridgeError" | "eventkit.bridge.closedWithoutResponse" | "eventkit.bridge.connectFailed" | "eventkit.bridge.hintStartBridge" | "eventkit.bridge.invalidJson" | "eventkit.bridge.timeout" | "eventkit.bridge.tokenMissing" | "eventkit.helper.exitCode" | "eventkit.helper.hintBuild" | "eventkit.helper.missing" | "eventkit.helper.timeout" | "locale.bootstrap.choiceEn" | "locale.bootstrap.choiceJa" | "locale.bootstrap.prompt" | "macos.bridge.buildCopySkipped" | "macos.bridge.buildCopySystemOk" | "macos.bridge.buildCopySystemSkipped" | "macos.bridge.buildCopyUserOk" | "macos.bridge.buildCopyUserWarn" | "macos.bridge.buildFailed" | "macos.bridge.buildNoSource" | "macos.bridge.buildOk" | "macos.bridge.fetchBuildPrompt" | "macos.bridge.fetchCancel" | "macos.bridge.fetchConfirm" | "macos.bridge.fetchFailed" | "macos.bridge.fetchIntro" | "macos.bridge.fetchNoTty" | "macos.bridge.fetchOk" | "macos.bridge.fetchPlan" | "macos.bridge.fetchSizeKnown" | "macos.bridge.fetchSizeUnknown" | "macos.bridge.fetchSkipsExisting" | "macos.bridge.notFound" | "macos.bridge.openFailed" | "macos.bridge.opened" | "macos.doctor.bridgeAppResolved" | "macos.doctor.bridgeAppUnresolved" | "macos.doctor.bridgeDeniedHint" | "macos.external.badSub" | "macos.external.badSubHint" | "macos.external.jsonOnlyForList" | "macos.external.onlyDarwin" | "macos.external.opened" | "macos.external.osascriptFailed" | "macos.external.suggestionWhenDenied" | "macos.setup.canceled" | "macos.setup.contextName" | "macos.setup.contextNameRequired" | "macos.setup.noCalendars" | "macos.setup.noTransport" | "macos.setup.notDarwin" | "macos.setup.pickCalendar" | "macos.setup.saved" | "macos.setup.startBridgePrompt" | "macos.setup.tcc";
2
+ export type LocaleKey = "common.hint" | "config.check.contexts" | "config.check.contextsNone" | "config.check.fileLine" | "config.check.googleNotSet" | "config.check.googleOk" | "config.check.header" | "config.check.outlookNotSet" | "config.check.outlookOk" | "config.check.uiLocale" | "config.cmd.contextDeleted" | "config.cmd.contextSaved" | "config.cmd.googleSaved" | "config.cmd.localeSet" | "config.cmd.macosTransportSet" | "config.cmd.outlookSaved" | "errors.api.prefix" | "errors.apiWithStatus" | "errors.auth.googleLoginHint" | "errors.auth.prefix" | "errors.config.fileNotFound" | "errors.config.fileNotFoundHint" | "errors.config.invalidFormat" | "errors.config.invalidFormatDetails" | "errors.config.prefix" | "errors.config.readFailed" | "errors.config.readFailedHint" | "errors.context.loadFailed" | "errors.context.loadFailedHint" | "errors.context.missing" | "errors.context.missingHint" | "errors.datetime.invalidFormat" | "errors.datetime.invalidParse" | "errors.datetime.invalidParseHint" | "errors.service.googleCredsNotSet" | "errors.service.googleCredsNotSetHint" | "errors.service.outlookAccountMismatch" | "errors.service.outlookAccountMismatchHint" | "errors.service.outlookCredsNotSet" | "errors.service.outlookCredsNotSetHint" | "errors.service.outlookNoMsalAccounts" | "errors.service.outlookNoMsalAccountsHint" | "errors.unknown" | "errors.validation.prefix" | "eventkit.bridge.bridgeError" | "eventkit.bridge.closedWithoutResponse" | "eventkit.bridge.connectFailed" | "eventkit.bridge.hintStartBridge" | "eventkit.bridge.invalidJson" | "eventkit.bridge.timeout" | "eventkit.bridge.tokenMissing" | "eventkit.helper.exitCode" | "eventkit.helper.hintBuild" | "eventkit.helper.missing" | "eventkit.helper.timeout" | "locale.bootstrap.choiceEn" | "locale.bootstrap.choiceJa" | "locale.bootstrap.prompt" | "macos.bridge.buildCopySkipped" | "macos.bridge.buildCopySystemOk" | "macos.bridge.buildCopySystemSkipped" | "macos.bridge.buildCopyUserOk" | "macos.bridge.buildCopyUserWarn" | "macos.bridge.buildFailed" | "macos.bridge.buildNoSource" | "macos.bridge.buildOk" | "macos.bridge.fetchBuildPrompt" | "macos.bridge.fetchCancel" | "macos.bridge.fetchConfirm" | "macos.bridge.fetchFailed" | "macos.bridge.fetchIntro" | "macos.bridge.fetchNoTty" | "macos.bridge.fetchOk" | "macos.bridge.fetchPlan" | "macos.bridge.fetchSizeKnown" | "macos.bridge.fetchSizeUnknown" | "macos.bridge.fetchSkipsExisting" | "macos.bridge.notFound" | "macos.bridge.openFailed" | "macos.bridge.opened" | "macos.doctor.bridgeAppResolved" | "macos.doctor.bridgeAppUnresolved" | "macos.doctor.bridgeDeniedHint" | "macos.doctor.helperBinaryWhenBridge" | "macos.doctor.helperBinaryWhenBridgeMissing" | "macos.external.badSub" | "macos.external.badSubHint" | "macos.external.jsonOnlyForList" | "macos.external.onlyDarwin" | "macos.external.opened" | "macos.external.osascriptFailed" | "macos.external.suggestionWhenDenied" | "macos.setup.canceled" | "macos.setup.contextName" | "macos.setup.contextNameRequired" | "macos.setup.noCalendars" | "macos.setup.noTransport" | "macos.setup.notDarwin" | "macos.setup.pickCalendar" | "macos.setup.saved" | "macos.setup.startBridgePrompt" | "macos.setup.tcc";
3
3
  export declare const LOCALE_KEYS: readonly LocaleKey[];
@@ -82,6 +82,8 @@ export const LOCALE_KEYS = [
82
82
  "macos.doctor.bridgeAppResolved",
83
83
  "macos.doctor.bridgeAppUnresolved",
84
84
  "macos.doctor.bridgeDeniedHint",
85
+ "macos.doctor.helperBinaryWhenBridge",
86
+ "macos.doctor.helperBinaryWhenBridgeMissing",
85
87
  "macos.external.badSub",
86
88
  "macos.external.badSubHint",
87
89
  "macos.external.jsonOnlyForList",
@@ -125,7 +125,9 @@
125
125
  "canceled": "Setup canceled."
126
126
  },
127
127
  "doctor": {
128
- "bridgeDeniedHint": "Using the bridge, but calendar access is denied. Check System Settings → Privacy & Security → Calendars and grant **CalenditEventKitBridge** full access (TCC applies to the .app, not this terminal).",
128
+ "bridgeDeniedHint": "Using the bridge, but calendar access is denied. In System Settings → Privacy & Security → Calendars, enable **CalenditEventKitBridge** (TCC is tied to the .app, not this terminal). If you just rebuilt or copied a new .app: quit the bridge from the menu bar, open the .app once from Finder (double-click the path printed above), accept the prompt if shown, then toggle the Calendars switch for this app off and on if it stays denied.",
129
+ "helperBinaryWhenBridge": "eventkit-helper exists at {path} — not used for this doctor check while the bridge socket above is active; calendar permission must be granted to CalenditEventKitBridge.app.",
130
+ "helperBinaryWhenBridgeMissing": "eventkit-helper: no binary found on disk (normal when you rely only on the bridge).",
129
131
  "bridgeAppResolved": "CalenditEventKitBridge.app (same resolution as `macos bridge start`): {path}",
130
132
  "bridgeAppUnresolved": "CalenditEventKitBridge.app: could not resolve a bundle path (run `macos bridge build` / `bridge start`, or set CALENDIT_EVENTKIT_BRIDGE_APP)."
131
133
  },
@@ -125,7 +125,9 @@
125
125
  "canceled": "セットアップを中止しました。"
126
126
  },
127
127
  "doctor": {
128
- "bridgeDeniedHint": "ブリッジ経由ですがカレンダーが拒否されています。システム設定 → プライバシーとセキュリティ → カレンダー で **CalenditEventKitBridge** のフルアクセスを確認してください(このターミナルではなく .app 側の許可です)。",
128
+ "bridgeDeniedHint": "ブリッジ経由ですがカレンダーが拒否されています。システム設定 → プライバシーとセキュリティ → カレンダー で **CalenditEventKitBridge** をオンにしてください(許可はこのターミナルではなく .app に付きます)。ビルド直後や .app を差し替えた直後は、メニューバーからブリッジを終了し、上に表示したパスの .app を Finder で一度ダブルクリックして起動し、ダイアログが出たら許可したうえで、システム設定の同一覧でスイッチを一度オフ→オンしてから `macos doctor` を再実行してください。",
129
+ "helperBinaryWhenBridge": "eventkit-helper は {path} にありますが、上記ソケットでブリッジが動いている間はこの doctor では使われません。カレンダー許可は **CalenditEventKitBridge.app** 側です。",
130
+ "helperBinaryWhenBridgeMissing": "eventkit-helper: ディスク上に見つかりません(ブリッジのみ運用なら問題ありません)。",
129
131
  "bridgeAppResolved": "CalenditEventKitBridge.app(`macos bridge start` と同じ候補解決): {path}",
130
132
  "bridgeAppUnresolved": "CalenditEventKitBridge.app: 候補を解決できませんでした(`macos bridge build` / `bridge start`、または CALENDIT_EVENTKIT_BRIDGE_APP を設定してください)。"
131
133
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "calendit",
3
- "version": "1.20260426.4",
3
+ "version": "1.20260426.5",
4
4
  "description": "Terminal-based calendar management tool for Google Calendar, Outlook, and macOS Calendar (EventKit) via CLI",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",