@togglhq/mcp 1.9.0 → 1.11.0

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.
@@ -32773,6 +32773,10 @@ function _joinExpects$1(values$1, separator) {
32773
32773
  */
32774
32774
  const ISO_DATE_REGEX$1 = /^\d{4}-(?:0[1-9]|1[0-2])-(?:[12]\d|0[1-9]|3[01])$/u;
32775
32775
  /**
32776
+ * [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date-time regex.
32777
+ */
32778
+ const ISO_DATE_TIME_REGEX$1 = /^\d{4}-(?:0[1-9]|1[0-2])-(?:[12]\d|0[1-9]|3[01])[T ](?:0\d|1\d|2[0-3]):[0-5]\d$/u;
32779
+ /**
32776
32780
  * [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp regex. Allows a
32777
32781
  * space as a date/time separator and an optional space before the UTC offset.
32778
32782
  */
@@ -32826,6 +32830,22 @@ function isoDate$1(message$1) {
32826
32830
  };
32827
32831
  }
32828
32832
  /* @__NO_SIDE_EFFECTS__ */
32833
+ function isoDateTime$1(message$1) {
32834
+ return {
32835
+ kind: "validation",
32836
+ type: "iso_date_time",
32837
+ reference: isoDateTime$1,
32838
+ async: false,
32839
+ expects: null,
32840
+ requirement: ISO_DATE_TIME_REGEX$1,
32841
+ message: message$1,
32842
+ "~run"(dataset, config$1) {
32843
+ if (dataset.typed && !this.requirement.test(dataset.value)) _addIssue$1(this, "date-time", dataset, config$1);
32844
+ return dataset;
32845
+ }
32846
+ };
32847
+ }
32848
+ /* @__NO_SIDE_EFFECTS__ */
32829
32849
  function isoTimestamp(message$1) {
32830
32850
  return {
32831
32851
  kind: "validation",
@@ -35424,7 +35444,7 @@ function withResponseMeta$1(data, headers, status) {
35424
35444
  });
35425
35445
  return data;
35426
35446
  }
35427
- function buildSearchParams$3(params, flattenArrays = false) {
35447
+ function buildSearchParams$2(params, flattenArrays = false) {
35428
35448
  const searchParams = new URLSearchParams();
35429
35449
  Object.entries(params).forEach(([key, value]) => {
35430
35450
  if (value === void 0) return;
@@ -35456,7 +35476,7 @@ function toFormData(params) {
35456
35476
  async function getProjectAttachments(httpClient, organization_id, workspace_id, project_id, { order_by } = {}, signal) {
35457
35477
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects/${project_id}/attachments`, {
35458
35478
  signal,
35459
- searchParams: buildSearchParams$3({ order_by })
35479
+ searchParams: buildSearchParams$2({ order_by })
35460
35480
  }).json();
35461
35481
  }
35462
35482
  async function createProjectAttachment(httpClient, organization_id, workspace_id, project_id, display_order, file, name, signal) {
@@ -35497,7 +35517,7 @@ async function viewProjectAttachment(httpClient, organization_id, workspace_id,
35497
35517
  async function getTaskAttachments(httpClient, organization_id, workspace_id, task_id, { order_by } = {}, signal) {
35498
35518
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}/attachments`, {
35499
35519
  signal,
35500
- searchParams: buildSearchParams$3({ order_by })
35520
+ searchParams: buildSearchParams$2({ order_by })
35501
35521
  }).json();
35502
35522
  }
35503
35523
  async function createTaskAttachment(httpClient, organization_id, workspace_id, task_id, display_order, file, name, signal) {
@@ -37285,7 +37305,7 @@ const TimeEntryStopTrackingPayloadSchema = /* @__PURE__ */ object({ end: /* @__P
37285
37305
  async function getClientsClassic(httpClient, workspace_id, { page, per_page, order_by, name } = {}, signal) {
37286
37306
  return await httpClient.get(`workspaces/${workspace_id}/clients`, {
37287
37307
  signal,
37288
- searchParams: buildSearchParams$3({
37308
+ searchParams: buildSearchParams$2({
37289
37309
  page,
37290
37310
  per_page,
37291
37311
  order_by,
@@ -37334,7 +37354,7 @@ async function updateOrganizationGroup(httpClient, organization_id, group_id, da
37334
37354
  async function deleteOrganizationGroup(httpClient, organization_id, group_id, workspace_id, signal) {
37335
37355
  return await httpClient.delete(`organizations/${organization_id}/groups/${group_id}`, {
37336
37356
  signal,
37337
- searchParams: buildSearchParams$3({ workspace_id })
37357
+ searchParams: buildSearchParams$2({ workspace_id })
37338
37358
  }).json();
37339
37359
  }
37340
37360
  async function updateOrganizationGroupUserRole(httpClient, organization_id, group_id, data, signal) {
@@ -37346,7 +37366,7 @@ async function updateOrganizationGroupUserRole(httpClient, organization_id, grou
37346
37366
  async function getOrganizationMemberTags(httpClient, organization_id, { workspace_id }, signal) {
37347
37367
  return await httpClient.get(`organizations/${organization_id}/member-tags`, {
37348
37368
  signal,
37349
- searchParams: buildSearchParams$3({ workspace_id })
37369
+ searchParams: buildSearchParams$2({ workspace_id })
37350
37370
  }).json();
37351
37371
  }
37352
37372
  async function getOrganizationRoles(httpClient, organization_id, signal) {
@@ -37355,7 +37375,7 @@ async function getOrganizationRoles(httpClient, organization_id, signal) {
37355
37375
  async function getOrganizationTeamsClassic(httpClient, organization_id, { workspace_id, page, per_page, sort_dir, filter, query, organization_user_id, group_ids, active_members_only }, signal) {
37356
37376
  return await httpClient.get(`organizations/${organization_id}/teams`, {
37357
37377
  signal,
37358
- searchParams: buildSearchParams$3({
37378
+ searchParams: buildSearchParams$2({
37359
37379
  workspace_id,
37360
37380
  page,
37361
37381
  per_page,
@@ -37371,7 +37391,7 @@ async function getOrganizationTeamsClassic(httpClient, organization_id, { worksp
37371
37391
  async function getOrganizationUsersClassic(httpClient, organization_id, { workspaces, user_account_ids, org_user_ids, groups, toggl_products, active_status, roles, only_admins, filter, sort_dir, page, per_page, tag_ids, include_working_hours, include_rates, pinned_ids, has_group, cf_filter, include_custom_fields, include_calendar_integration } = {}, signal) {
37372
37392
  const response = await httpClient.get(`organizations/${organization_id}/users`, {
37373
37393
  signal,
37374
- searchParams: buildSearchParams$3({
37394
+ searchParams: buildSearchParams$2({
37375
37395
  workspaces,
37376
37396
  user_account_ids,
37377
37397
  org_user_ids,
@@ -37398,7 +37418,7 @@ async function getOrganizationUsersClassic(httpClient, organization_id, { worksp
37398
37418
  }
37399
37419
  //#endregion
37400
37420
  //#region ../focus-queries/out/utils/requests.js
37401
- function buildSearchParams$2(params, flattenArrays = false) {
37421
+ function buildSearchParams$1(params, flattenArrays = false) {
37402
37422
  const searchParams = new URLSearchParams();
37403
37423
  Object.entries(params).forEach(([key, value]) => {
37404
37424
  if (value === void 0) return;
@@ -37413,7 +37433,7 @@ function buildSearchParams$2(params, flattenArrays = false) {
37413
37433
  async function getTagsClassic(httpClient, workspace_id, { name, page, per_page, order_by, tag_id, include_usage, include_archived, archived } = {}, signal) {
37414
37434
  return await httpClient.get(`workspaces/${workspace_id}/tags`, {
37415
37435
  signal,
37416
- searchParams: buildSearchParams$3({
37436
+ searchParams: buildSearchParams$2({
37417
37437
  name,
37418
37438
  page,
37419
37439
  per_page,
@@ -37440,7 +37460,7 @@ async function bulkCreateTags(httpClient, workspace_id, data, signal) {
37440
37460
  async function bulkDeleteTags(httpClient, workspace_id, ids, signal) {
37441
37461
  return await httpClient.delete(`workspaces/${workspace_id}/tags/bulk`, {
37442
37462
  signal,
37443
- searchParams: buildSearchParams$3({ ids })
37463
+ searchParams: buildSearchParams$2({ ids })
37444
37464
  }).json();
37445
37465
  }
37446
37466
  async function bulkArchiveTags(httpClient, workspace_id, data, signal) {
@@ -37493,7 +37513,7 @@ async function unarchiveTag(httpClient, workspace_id, tag_id, signal) {
37493
37513
  async function getProjectsClassic(httpClient, organization_id, workspace_id, { page, per_page, order_by, pinned, archived, completed, private: private_, name, client_id, creator_id, tag_id, assignee_user_id, project_id, user_id, only_me, include_rates, include_rollover, include_idle_recurring_templates, collapse_recurring, include_drafts, include_locked_private, start_date, end_date, date_overlap_start, date_overlap_end, cf_filter } = {}, signal) {
37494
37514
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects`, {
37495
37515
  signal,
37496
- searchParams: buildSearchParams$3({
37516
+ searchParams: buildSearchParams$2({
37497
37517
  page,
37498
37518
  per_page,
37499
37519
  order_by,
@@ -37532,7 +37552,7 @@ async function createProject(httpClient, organization_id, workspace_id, data, si
37532
37552
  async function bulkDeleteProjects(httpClient, organization_id, workspace_id, ids, signal) {
37533
37553
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/projects/bulk`, {
37534
37554
  signal,
37535
- searchParams: buildSearchParams$3({ ids })
37555
+ searchParams: buildSearchParams$2({ ids })
37536
37556
  }).json();
37537
37557
  }
37538
37558
  async function bulkPartialUpdateProjects(httpClient, organization_id, workspace_id, data, signal) {
@@ -37562,13 +37582,13 @@ async function bulkUnarchiveProjects(httpClient, organization_id, workspace_id,
37562
37582
  async function getBatchProjectsMembers(httpClient, organization_id, workspace_id, { ids }, signal) {
37563
37583
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects/members`, {
37564
37584
  signal,
37565
- searchParams: buildSearchParams$3({ ids })
37585
+ searchParams: buildSearchParams$2({ ids })
37566
37586
  }).json();
37567
37587
  }
37568
37588
  async function getProjectTemplatesClassic(httpClient, organization_id, workspace_id, { page, per_page, name, order_by, archived } = {}, signal) {
37569
37589
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects/templates`, {
37570
37590
  signal,
37571
- searchParams: buildSearchParams$3({
37591
+ searchParams: buildSearchParams$2({
37572
37592
  page,
37573
37593
  per_page,
37574
37594
  name,
@@ -37601,7 +37621,7 @@ async function archiveProject(httpClient, organization_id, workspace_id, project
37601
37621
  async function getProjectWithChildrenClassic(httpClient, organization_id, workspace_id, project_id, { page, per_page, order_by } = {}, signal) {
37602
37622
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects/${project_id}/children`, {
37603
37623
  signal,
37604
- searchParams: buildSearchParams$3({
37624
+ searchParams: buildSearchParams$2({
37605
37625
  page,
37606
37626
  per_page,
37607
37627
  order_by
@@ -37638,7 +37658,7 @@ async function duplicateTemplate(httpClient, organization_id, workspace_id, proj
37638
37658
  async function getRecurringProjectInstancesClassic(httpClient, organization_id, workspace_id, project_id, { page, per_page, order_by, start_date, end_date, include_rollover } = {}, signal) {
37639
37659
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects/${project_id}/instances`, {
37640
37660
  signal,
37641
- searchParams: buildSearchParams$3({
37661
+ searchParams: buildSearchParams$2({
37642
37662
  page,
37643
37663
  per_page,
37644
37664
  order_by,
@@ -37684,7 +37704,7 @@ async function removeProjectMember(httpClient, organization_id, workspace_id, pr
37684
37704
  async function getProjectWithParentsClassic(httpClient, organization_id, workspace_id, project_id, { page, per_page, order_by } = {}, signal) {
37685
37705
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects/${project_id}/parents`, {
37686
37706
  signal,
37687
- searchParams: buildSearchParams$3({
37707
+ searchParams: buildSearchParams$2({
37688
37708
  page,
37689
37709
  per_page,
37690
37710
  order_by
@@ -37711,7 +37731,7 @@ async function uncompleteProject(httpClient, organization_id, workspace_id, proj
37711
37731
  async function getStatusesClassic(httpClient, workspace_id, { name, type, page, per_page, order_by } = {}, signal) {
37712
37732
  return await httpClient.get(`workspaces/${workspace_id}/statuses`, {
37713
37733
  signal,
37714
- searchParams: buildSearchParams$3({
37734
+ searchParams: buildSearchParams$2({
37715
37735
  name,
37716
37736
  type,
37717
37737
  page,
@@ -37746,7 +37766,7 @@ async function restoreStatuses(httpClient, workspace_id, status_id, signal) {
37746
37766
  async function getTasksClassic(httpClient, organization_id, workspace_id, { page, per_page, with_entries, pinned, order_by, status_id, toggl_user_id, name, has_time_entries, has_time_blocks, has_dates, private: private_, archived, include_project_completed, include_drafts, project_id, parent_task_id, start_date, end_date, active_by_date, start_date_from, start_date_to, end_date_from, end_date_to, dates_overlap_start, dates_overlap_end, estimated_mins_min, estimated_mins_max, source, priority, is_priority, state, timeblock_start_from, timeblock_start_until, time_block_id, time_block_completed, team_id, assignee_team_id, assignee_user_id, tag_id, recurring, recurring_task_ids, client_id, include_rates, include_assignees, include_parent_matches, disable_aggregations, cf_filter } = {}, signal) {
37747
37767
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks`, {
37748
37768
  signal,
37749
- searchParams: buildSearchParams$3({
37769
+ searchParams: buildSearchParams$2({
37750
37770
  page,
37751
37771
  per_page,
37752
37772
  with_entries,
@@ -37813,7 +37833,7 @@ async function bulkCreateTask(httpClient, organization_id, workspace_id, data, s
37813
37833
  async function bulkDeleteTask(httpClient, organization_id, workspace_id, ids, outbound_sync, signal) {
37814
37834
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/bulk`, {
37815
37835
  signal,
37816
- searchParams: buildSearchParams$3({
37836
+ searchParams: buildSearchParams$2({
37817
37837
  ids,
37818
37838
  outbound_sync
37819
37839
  })
@@ -37852,7 +37872,7 @@ async function bulkUnarchiveTask(httpClient, organization_id, workspace_id, data
37852
37872
  async function getTaskByExternalId(httpClient, organization_id, workspace_id, { source, ext_id }, signal) {
37853
37873
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/by-external-id`, {
37854
37874
  signal,
37855
- searchParams: buildSearchParams$3({
37875
+ searchParams: buildSearchParams$2({
37856
37876
  source,
37857
37877
  ext_id
37858
37878
  })
@@ -37861,7 +37881,7 @@ async function getTaskByExternalId(httpClient, organization_id, workspace_id, {
37861
37881
  async function getTasksCalendarEvents(httpClient, organization_id, workspace_id, { date_from, date_to, calendar_event_id, hidden } = {}, signal) {
37862
37882
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/calendar`, {
37863
37883
  signal,
37864
- searchParams: buildSearchParams$3({
37884
+ searchParams: buildSearchParams$2({
37865
37885
  date_from,
37866
37886
  date_to,
37867
37887
  calendar_event_id,
@@ -37872,7 +37892,7 @@ async function getTasksCalendarEvents(httpClient, organization_id, workspace_id,
37872
37892
  async function putTasksCalendarRange(httpClient, organization_id, workspace_id, date_from, date_to, signal) {
37873
37893
  return await httpClient.put(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/calendar`, {
37874
37894
  signal,
37875
- searchParams: buildSearchParams$3({
37895
+ searchParams: buildSearchParams$2({
37876
37896
  date_from,
37877
37897
  date_to
37878
37898
  })
@@ -37881,7 +37901,7 @@ async function putTasksCalendarRange(httpClient, organization_id, workspace_id,
37881
37901
  async function getTasksRecurringInstancesClassic(httpClient, organization_id, workspace_id, { page, per_page, archived, start_date, end_date, dates_overlap_start, dates_overlap_end, recurring_task_ids, team_id, assignee_team_id, assignee_user_id, tag_id, include_assignees } = {}, signal) {
37882
37902
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/recurring`, {
37883
37903
  signal,
37884
- searchParams: buildSearchParams$3({
37904
+ searchParams: buildSearchParams$2({
37885
37905
  page,
37886
37906
  per_page,
37887
37907
  archived,
@@ -37901,7 +37921,7 @@ async function getTasksRecurringInstancesClassic(httpClient, organization_id, wo
37901
37921
  async function getStreamTasks(httpClient, organization_id, workspace_id, { with_entries, pinned, order_by, status_id, toggl_user_id, name, include_parent_matches, has_time_entries, has_time_blocks, has_dates, private: private_, archived, include_project_completed, include_drafts, project_id, parent_task_id, start_date, end_date, active_by_date, start_date_from, start_date_to, end_date_from, end_date_to, dates_overlap_start, dates_overlap_end, estimated_mins_min, estimated_mins_max, source, priority, is_priority, state, time_block_id, time_block_completed, team_id, assignee_team_id, assignee_user_id, tag_id, recurring, recurring_task_ids, client_id, include_assignees, cf_filter } = {}, signal) {
37902
37922
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/stream`, {
37903
37923
  signal,
37904
- searchParams: buildSearchParams$3({
37924
+ searchParams: buildSearchParams$2({
37905
37925
  with_entries,
37906
37926
  pinned,
37907
37927
  order_by,
@@ -37950,7 +37970,7 @@ async function getStreamTasks(httpClient, organization_id, workspace_id, { with_
37950
37970
  async function getTask(httpClient, organization_id, workspace_id, task_id, { include_assignees } = {}, signal) {
37951
37971
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}`, {
37952
37972
  signal,
37953
- searchParams: buildSearchParams$3({ include_assignees })
37973
+ searchParams: buildSearchParams$2({ include_assignees })
37954
37974
  }).json();
37955
37975
  }
37956
37976
  async function updateTask(httpClient, organization_id, workspace_id, task_id, data, signal) {
@@ -37962,7 +37982,7 @@ async function updateTask(httpClient, organization_id, workspace_id, task_id, da
37962
37982
  async function deleteTask(httpClient, organization_id, workspace_id, task_id, from_recurring_task_id, outbound_sync, signal) {
37963
37983
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}`, {
37964
37984
  signal,
37965
- searchParams: buildSearchParams$3({
37985
+ searchParams: buildSearchParams$2({
37966
37986
  from_recurring_task_id,
37967
37987
  outbound_sync
37968
37988
  })
@@ -37972,19 +37992,19 @@ async function patchTask(httpClient, organization_id, workspace_id, task_id, dat
37972
37992
  return await httpClient.patch(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}`, {
37973
37993
  signal,
37974
37994
  json: data,
37975
- searchParams: buildSearchParams$3({ from_recurring_task_id })
37995
+ searchParams: buildSearchParams$2({ from_recurring_task_id })
37976
37996
  }).json();
37977
37997
  }
37978
37998
  async function archiveTask(httpClient, organization_id, workspace_id, task_id, from_recurring_task_id, signal) {
37979
37999
  return await httpClient.post(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}/archive`, {
37980
38000
  signal,
37981
- searchParams: buildSearchParams$3({ from_recurring_task_id })
38001
+ searchParams: buildSearchParams$2({ from_recurring_task_id })
37982
38002
  }).json();
37983
38003
  }
37984
38004
  async function getTaskWithChildrenClassic(httpClient, organization_id, workspace_id, task_id, { page, per_page, order_by, status_id, archived, source, team_id, assignee_user_id, tag_id, include_assignees } = {}, signal) {
37985
38005
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}/children`, {
37986
38006
  signal,
37987
- searchParams: buildSearchParams$3({
38007
+ searchParams: buildSearchParams$2({
37988
38008
  page,
37989
38009
  per_page,
37990
38010
  order_by,
@@ -38001,7 +38021,7 @@ async function getTaskWithChildrenClassic(httpClient, organization_id, workspace
38001
38021
  async function getTaskWithParentsClassic(httpClient, organization_id, workspace_id, task_id, { page, per_page, order_by, status_id, archived, source, team_id, assignee_user_id, tag_id, include_assignees } = {}, signal) {
38002
38022
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}/parents`, {
38003
38023
  signal,
38004
- searchParams: buildSearchParams$3({
38024
+ searchParams: buildSearchParams$2({
38005
38025
  page,
38006
38026
  per_page,
38007
38027
  order_by,
@@ -38026,7 +38046,7 @@ async function unarchiveTask(httpClient, organization_id, workspace_id, task_id,
38026
38046
  async function getTaskTimeBlocksWithOrgClassic(httpClient, organization_id, workspace_id, task_id, { page, per_page, order_by, archived } = {}, signal) {
38027
38047
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}/time-blocks`, {
38028
38048
  signal,
38029
- searchParams: buildSearchParams$3({
38049
+ searchParams: buildSearchParams$2({
38030
38050
  page,
38031
38051
  per_page,
38032
38052
  order_by,
@@ -38052,7 +38072,7 @@ async function updateTimeBlockWithOrg(httpClient, organization_id, workspace_id,
38052
38072
  async function deleteTimeBlockWithOrg(httpClient, organization_id, workspace_id, task_id, time_block_id, outbound_sync, signal) {
38053
38073
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}/time-blocks/${time_block_id}`, {
38054
38074
  signal,
38055
- searchParams: buildSearchParams$3({ outbound_sync })
38075
+ searchParams: buildSearchParams$2({ outbound_sync })
38056
38076
  }).json();
38057
38077
  }
38058
38078
  async function partialUpdateTimeBlockWithOrg(httpClient, organization_id, workspace_id, task_id, time_block_id, data, signal) {
@@ -38073,7 +38093,7 @@ async function unarchiveTimeBlockWithOrg(httpClient, organization_id, workspace_
38073
38093
  async function getTimeBlocksRangeWithOrgClassic(httpClient, organization_id, workspace_id, { date_from, date_to, task_id, status_id, page, per_page, archived, order_by }, signal) {
38074
38094
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/time-blocks`, {
38075
38095
  signal,
38076
- searchParams: buildSearchParams$3({
38096
+ searchParams: buildSearchParams$2({
38077
38097
  date_from,
38078
38098
  date_to,
38079
38099
  task_id,
@@ -38094,7 +38114,7 @@ async function bulkCreateTimeBlockWithOrg(httpClient, organization_id, workspace
38094
38114
  async function bulkDeleteTimeBlockWithOrg(httpClient, organization_id, workspace_id, ids, outbound_sync, signal) {
38095
38115
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/time-blocks/bulk`, {
38096
38116
  signal,
38097
- searchParams: buildSearchParams$3({
38117
+ searchParams: buildSearchParams$2({
38098
38118
  ids,
38099
38119
  outbound_sync
38100
38120
  })
@@ -38109,7 +38129,7 @@ async function bulkPartialUpdateTimeBlockWithOrg(httpClient, organization_id, wo
38109
38129
  async function getTimeBlocksRangeStreamWithOrg(httpClient, organization_id, workspace_id, { date_from, date_to, task_id, status_id, archived, order_by }, signal) {
38110
38130
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/time-blocks/stream`, {
38111
38131
  signal,
38112
- searchParams: buildSearchParams$3({
38132
+ searchParams: buildSearchParams$2({
38113
38133
  date_from,
38114
38134
  date_to,
38115
38135
  task_id,
@@ -38124,7 +38144,7 @@ async function getTimeBlocksRangeStreamWithOrg(httpClient, organization_id, work
38124
38144
  async function getTaskTimeEntriesWithOrgClassic(httpClient, organization_id, workspace_id, task_id, { page, per_page, order_by, type, archived, time_block_id } = {}, signal) {
38125
38145
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}/time-entries`, {
38126
38146
  signal,
38127
- searchParams: buildSearchParams$3({
38147
+ searchParams: buildSearchParams$2({
38128
38148
  page,
38129
38149
  per_page,
38130
38150
  order_by,
@@ -38149,7 +38169,7 @@ async function createTasklessTimeEntryWithOrg(httpClient, organization_id, works
38149
38169
  async function getBatchTimeEntriesWithOrg(httpClient, organization_id, workspace_id, { ids }, signal) {
38150
38170
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/time-entries/batch`, {
38151
38171
  signal,
38152
- searchParams: buildSearchParams$3({ ids })
38172
+ searchParams: buildSearchParams$2({ ids })
38153
38173
  }).json();
38154
38174
  }
38155
38175
  async function bulkCreateTimeEntryWithOrg(httpClient, organization_id, workspace_id, data, signal) {
@@ -38161,7 +38181,7 @@ async function bulkCreateTimeEntryWithOrg(httpClient, organization_id, workspace
38161
38181
  async function bulkDeleteTimeEntryWithOrg(httpClient, organization_id, workspace_id, ids, signal) {
38162
38182
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/time-entries/bulk`, {
38163
38183
  signal,
38164
- searchParams: buildSearchParams$3({ ids })
38184
+ searchParams: buildSearchParams$2({ ids })
38165
38185
  }).json();
38166
38186
  }
38167
38187
  async function bulkPartialUpdateTimeEntryWithOrg(httpClient, organization_id, workspace_id, data, signal) {
@@ -38179,7 +38199,7 @@ async function bulkEditTimeEntriesWithOrg(httpClient, organization_id, workspace
38179
38199
  async function bulkRestoreTimeEntryWithOrg(httpClient, organization_id, workspace_id, ids, signal) {
38180
38200
  return await httpClient.patch(`organizations/${organization_id}/workspaces/${workspace_id}/time-entries/bulk/restore`, {
38181
38201
  signal,
38182
- searchParams: buildSearchParams$3({ ids })
38202
+ searchParams: buildSearchParams$2({ ids })
38183
38203
  }).json();
38184
38204
  }
38185
38205
  async function setDayDurationWithOrg(httpClient, organization_id, workspace_id, data, signal) {
@@ -38194,15 +38214,14 @@ async function bulkSetDayDurationWithOrg(httpClient, organization_id, workspace_
38194
38214
  json: data
38195
38215
  }).json();
38196
38216
  }
38197
- async function getStreamTimeEntriesRangeWithOrg(httpClient, organization_id, workspace_id, { date_from, date_to, task_id, status_id, project_id, type, order_by, archived, include_taskless, expand_calendar_event }, signal) {
38217
+ async function getStreamTimeEntriesRangeWithOrg(httpClient, organization_id, workspace_id, { date_from, date_to, task_id, status_id, type, order_by, archived, include_taskless, expand_calendar_event }, signal) {
38198
38218
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/time-entries/stream`, {
38199
38219
  signal,
38200
- searchParams: buildSearchParams$3({
38220
+ searchParams: buildSearchParams$2({
38201
38221
  date_from,
38202
38222
  date_to,
38203
38223
  task_id,
38204
38224
  status_id,
38205
- project_id,
38206
38225
  type,
38207
38226
  order_by,
38208
38227
  archived,
@@ -38220,7 +38239,7 @@ async function syncTimeEntry(httpClient, organization_id, workspace_id, client_u
38220
38239
  async function getStreamTimeEntriesTimeBlockIdsWithOrg(httpClient, organization_id, workspace_id, { time_block_id }, signal) {
38221
38240
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/time-entries/time-block-ids/stream`, {
38222
38241
  signal,
38223
- searchParams: buildSearchParams$3({ time_block_id })
38242
+ searchParams: buildSearchParams$2({ time_block_id })
38224
38243
  }).json();
38225
38244
  }
38226
38245
  async function getTimeEntryWithOrg(httpClient, organization_id, workspace_id, time_entry_id, signal) {
@@ -38353,7 +38372,7 @@ const PublicMeEntryRequestSchema = /* @__PURE__ */ object$2({
38353
38372
  ]))
38354
38373
  });
38355
38374
  //#endregion
38356
- //#region ../../node_modules/.pnpm/@toggl+queries@2.1.248_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_51816df5dcd067b35c73e200ad09ed53/node_modules/@toggl/queries/dist/org/invitation/requests.mjs
38375
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.14_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_reac_dee793081b6caaac32bda8ea5bb68b8d/node_modules/@toggl/queries/dist/org/invitation/requests.mjs
38357
38376
  async function getInvitations(httpClient, signal) {
38358
38377
  return (await httpClient.get(`invitations`, { signal })).json();
38359
38378
  }
@@ -38370,8 +38389,23 @@ async function resendInvitation(httpClient, organization_id, organization_user_i
38370
38389
  return (await httpClient.post(`organizations/${organization_id}/invitations/${organization_user_id}/resend`, { signal })).json();
38371
38390
  }
38372
38391
  //#endregion
38373
- //#region ../../node_modules/.pnpm/@toggl+queries@2.1.248_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_51816df5dcd067b35c73e200ad09ed53/node_modules/@toggl/queries/dist/org/utils/requests.mjs
38374
- function buildSearchParams$1(params, flattenArrays = false) {
38392
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.14_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_reac_dee793081b6caaac32bda8ea5bb68b8d/node_modules/@toggl/queries/dist/org/utils/requests.mjs
38393
+ const META_SYMBOL = Symbol.for("querygen:response:meta");
38394
+ function withResponseMeta(data, headers, status) {
38395
+ if (!data) return data;
38396
+ const meta = {
38397
+ headers: Object.fromEntries(headers.entries()),
38398
+ status
38399
+ };
38400
+ if (typeof data === "object") Object.defineProperty(data, META_SYMBOL, {
38401
+ value: meta,
38402
+ enumerable: false,
38403
+ writable: false,
38404
+ configurable: false
38405
+ });
38406
+ return data;
38407
+ }
38408
+ function buildSearchParams(params, flattenArrays = false) {
38375
38409
  const searchParams = new URLSearchParams();
38376
38410
  Object.entries(params).forEach(([key, value]) => {
38377
38411
  if (value === void 0) return;
@@ -38382,7 +38416,7 @@ function buildSearchParams$1(params, flattenArrays = false) {
38382
38416
  return searchParams;
38383
38417
  }
38384
38418
  //#endregion
38385
- //#region ../../node_modules/.pnpm/@toggl+queries@2.1.248_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_51816df5dcd067b35c73e200ad09ed53/node_modules/@toggl/queries/dist/org/organization-user/requests.mjs
38419
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.14_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_reac_dee793081b6caaac32bda8ea5bb68b8d/node_modules/@toggl/queries/dist/org/organization-user/requests.mjs
38386
38420
  async function getOrganizationUser(httpClient, organization_id, organization_user_id, signal) {
38387
38421
  return (await httpClient.get(`organizations/${organization_id}/users/${organization_user_id}`, { signal })).json();
38388
38422
  }
@@ -38396,7 +38430,7 @@ async function patchOrganizationUserActive(httpClient, organization_id, organiza
38396
38430
  return (await httpClient.patch(`organizations/${organization_id}/users/${organization_user_id}/active_status/${status}`, { signal })).json();
38397
38431
  }
38398
38432
  //#endregion
38399
- //#region ../../node_modules/.pnpm/@toggl+queries@2.1.248_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_51816df5dcd067b35c73e200ad09ed53/node_modules/@toggl/queries/dist/org/workspace/requests.mjs
38433
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.14_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_reac_dee793081b6caaac32bda8ea5bb68b8d/node_modules/@toggl/queries/dist/org/workspace/requests.mjs
38400
38434
  async function getWorkspaces(httpClient, organization_id, signal) {
38401
38435
  return (await httpClient.get(`organizations/${organization_id}/workspaces`, { signal })).json();
38402
38436
  }
@@ -38416,55 +38450,28 @@ const WorkingHoursUpdateInputSchema = /* @__PURE__ */ object$2({
38416
38450
  });
38417
38451
  const StatusOKSchema = /* @__PURE__ */ object$2({ status: /* @__PURE__ */ string$1() });
38418
38452
  //#endregion
38419
- //#region ../../node_modules/.pnpm/@toggl+queries@2.1.248_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_51816df5dcd067b35c73e200ad09ed53/node_modules/@toggl/queries/dist/shared-data/utils/requests.mjs
38420
- const META_SYMBOL = Symbol.for("querygen:response:meta");
38421
- function withResponseMeta(data, headers, status) {
38422
- if (!data) return data;
38423
- const meta = {
38424
- headers: Object.fromEntries(headers.entries()),
38425
- status
38426
- };
38427
- if (typeof data === "object") Object.defineProperty(data, META_SYMBOL, {
38428
- value: meta,
38429
- enumerable: false,
38430
- writable: false,
38431
- configurable: false
38432
- });
38433
- return data;
38434
- }
38435
- function buildSearchParams(params, flattenArrays = false) {
38436
- const searchParams = new URLSearchParams();
38437
- Object.entries(params).forEach(([key, value]) => {
38438
- if (value === void 0) return;
38439
- if (Array.isArray(value)) if (flattenArrays) searchParams.set(key, value.join(","));
38440
- else for (const item of value) searchParams.append(key, item === null ? "" : String(item));
38441
- else searchParams.set(key, value === null ? "" : String(value));
38442
- });
38443
- return searchParams;
38444
- }
38445
- //#endregion
38446
- //#region ../../node_modules/.pnpm/@toggl+queries@2.1.248_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_51816df5dcd067b35c73e200ad09ed53/node_modules/@toggl/queries/dist/shared-data/public-holidays/requests.mjs
38447
- async function getPublicHolidays(httpClient, year, { country, organization_id } = {}, signal) {
38448
- const response = await httpClient.get(`shared_data/api/publicholidays/${year}`, {
38453
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.14_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_reac_dee793081b6caaac32bda8ea5bb68b8d/node_modules/@toggl/queries/dist/org/public-holidays/requests.mjs
38454
+ async function getPublicHolidaysHolidayDomain(httpClient, year, { country, organization_id } = {}, signal) {
38455
+ const response = await httpClient.get(`holidays/publicholidays/${year}`, {
38449
38456
  signal,
38450
38457
  searchParams: buildSearchParams({
38451
38458
  country,
38452
38459
  organization_id
38453
- })
38460
+ }, true)
38454
38461
  });
38455
38462
  return withResponseMeta(await response.json(), response.headers, response.status);
38456
38463
  }
38457
38464
  //#endregion
38458
- //#region ../../node_modules/.pnpm/@toggl+queries@2.1.248_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_51816df5dcd067b35c73e200ad09ed53/node_modules/@toggl/queries/dist/shared-data/status/requests.mjs
38465
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.14_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_reac_dee793081b6caaac32bda8ea5bb68b8d/node_modules/@toggl/queries/dist/shared-data/status/requests.mjs
38459
38466
  async function getStatus(httpClient, signal) {
38460
38467
  return (await httpClient.get(`shared_data/api/status`, { signal })).json();
38461
38468
  }
38462
38469
  //#endregion
38463
- //#region ../../node_modules/.pnpm/@toggl+queries@2.1.248_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_51816df5dcd067b35c73e200ad09ed53/node_modules/@toggl/queries/dist/org/timeoff/requests.mjs
38470
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.14_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_reac_dee793081b6caaac32bda8ea5bb68b8d/node_modules/@toggl/queries/dist/org/timeoff/requests.mjs
38464
38471
  async function timeoffListMyEntries(httpClient, organization_id, { from, to }, signal) {
38465
38472
  return (await httpClient.get(`timeoff/organizations/${organization_id}/me`, {
38466
38473
  signal,
38467
- searchParams: buildSearchParams$1({
38474
+ searchParams: buildSearchParams({
38468
38475
  from,
38469
38476
  to
38470
38477
  }, true)
@@ -38488,7 +38495,7 @@ async function timeoffDeleteMyEntry(httpClient, organization_id, id, signal) {
38488
38495
  return response.json();
38489
38496
  }
38490
38497
  //#endregion
38491
- //#region ../../node_modules/.pnpm/@toggl+queries@2.1.248_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_51816df5dcd067b35c73e200ad09ed53/node_modules/@toggl/queries/dist/shared-data/working-hours/requests.mjs
38498
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.14_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_reac_dee793081b6caaac32bda8ea5bb68b8d/node_modules/@toggl/queries/dist/shared-data/working-hours/requests.mjs
38492
38499
  async function getMyWorkingHours(httpClient, organization_id, signal) {
38493
38500
  return (await httpClient.get(`shared_data/api/workinghours/${organization_id}/me`, { signal })).json();
38494
38501
  }
@@ -38513,13 +38520,24 @@ async function deleteMyWorkingHours(httpClient, organization_id, data, signal) {
38513
38520
  return response.json();
38514
38521
  }
38515
38522
  //#endregion
38516
- //#region ../cli-core/build/focus-client-D9oJPY4f.js
38523
+ //#region ../cli-core/build/focus-client-DXRYFor8.js
38517
38524
  /** Request header the API reads to attribute traffic to MCP or CLI. */
38518
38525
  const TOGGL_CLIENT_HEADER = "X-Toggl-Client";
38526
+ /** Header the Focus API reads for analytics and presence `platform_origin`. */
38527
+ const TOGGL_POSTHOG_DATA_HEADER = "X-Toggl-PostHog-Data";
38519
38528
  /** Headers that attribute a raw `fetch` to MCP or CLI (FocusClient sets these itself). */
38520
38529
  function togglClientHeaders(clientSurface) {
38521
38530
  return { [TOGGL_CLIENT_HEADER]: clientSurface };
38522
38531
  }
38532
+ /** JSON body for `X-Toggl-PostHog-Data`. Origin matches the client header. */
38533
+ function togglPostHogData(clientSurface) {
38534
+ return JSON.stringify({ platform_origin: clientSurface });
38535
+ }
38536
+ /** Apply MCP/CLI attribution on FocusClient (and other HTTP) requests. */
38537
+ function applyTogglAttributionHeaders(headers, clientSurface) {
38538
+ headers.set(TOGGL_CLIENT_HEADER, clientSurface);
38539
+ headers.set(TOGGL_POSTHOG_DATA_HEADER, togglPostHogData(clientSurface));
38540
+ }
38523
38541
  const customFieldValuesEntry = /* @__PURE__ */ optional$1(/* @__PURE__ */ nullable$1(/* @__PURE__ */ pipe$2(/* @__PURE__ */ record$1(/* @__PURE__ */ string$1(), /* @__PURE__ */ nullable$1(/* @__PURE__ */ union$1([
38524
38542
  /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
38525
38543
  /* @__PURE__ */ string$1(),
@@ -38735,8 +38753,7 @@ var FocusClient = class {
38735
38753
  const token = await this.tokenProvider();
38736
38754
  request.headers.set("Authorization", `Bearer ${token}`);
38737
38755
  if (!request.headers.get("Content-Type")?.startsWith("multipart/form-data")) request.headers.set("Content-Type", "application/json");
38738
- request.headers.set("X-Toggl-PostHog-Data", JSON.stringify({ platform_origin: "web" }));
38739
- request.headers.set(TOGGL_CLIENT_HEADER, this.clientSurface);
38756
+ applyTogglAttributionHeaders(request.headers, this.clientSurface);
38740
38757
  }
38741
38758
  });
38742
38759
  const orgBase = accountsOrgApiBaseUrl(config.accountsApiUrl);
@@ -38747,8 +38764,7 @@ var FocusClient = class {
38747
38764
  const token = await this.tokenProvider();
38748
38765
  request.headers.set("Authorization", `Bearer ${token}`);
38749
38766
  request.headers.set("Content-Type", "application/json");
38750
- request.headers.set("X-Toggl-PostHog-Data", JSON.stringify({ platform_origin: "web" }));
38751
- request.headers.set(TOGGL_CLIENT_HEADER, this.clientSurface);
38767
+ applyTogglAttributionHeaders(request.headers, this.clientSurface);
38752
38768
  }
38753
38769
  });
38754
38770
  this.timeOffMeHttp = createHttpClient({
@@ -38759,8 +38775,7 @@ var FocusClient = class {
38759
38775
  request.headers.set("Authorization", `Bearer ${token}`);
38760
38776
  request.headers.set("Content-Type", "application/json");
38761
38777
  request.headers.set("X-Toggl-Product", "focus");
38762
- request.headers.set("X-Toggl-PostHog-Data", JSON.stringify({ platform_origin: "web" }));
38763
- request.headers.set(TOGGL_CLIENT_HEADER, this.clientSurface);
38778
+ applyTogglAttributionHeaders(request.headers, this.clientSurface);
38764
38779
  }
38765
38780
  });
38766
38781
  this.sharedDataHttp = createHttpClient({
@@ -38770,8 +38785,7 @@ var FocusClient = class {
38770
38785
  const token = await this.tokenProvider();
38771
38786
  request.headers.set("Authorization", `Bearer ${token}`);
38772
38787
  request.headers.set("Content-Type", "application/json");
38773
- request.headers.set("X-Toggl-PostHog-Data", JSON.stringify({ platform_origin: "web" }));
38774
- request.headers.set(TOGGL_CLIENT_HEADER, this.clientSurface);
38788
+ applyTogglAttributionHeaders(request.headers, this.clientSurface);
38775
38789
  }
38776
38790
  });
38777
38791
  }
@@ -39117,7 +39131,7 @@ var FocusClient = class {
39117
39131
  const time_block_id = parseOptionalInt(params.time_block_id);
39118
39132
  const requestedPage = parseOptionalInt(params.page) ?? 1;
39119
39133
  const requestedPerPage = parseOptionalInt(params.per_page);
39120
- const fetchPage = (page, per_page) => this.run("listTimeEntries", () => this.http.get(`organizations/${this.organizationIdNum}/workspaces/${this.workspaceIdNum}/time-entries`, { searchParams: buildSearchParams$2({
39134
+ const fetchPage = (page, per_page) => this.run("listTimeEntries", () => this.http.get(`organizations/${this.organizationIdNum}/workspaces/${this.workspaceIdNum}/time-entries`, { searchParams: buildSearchParams$1({
39121
39135
  date_from,
39122
39136
  date_to,
39123
39137
  task_id,
@@ -39245,7 +39259,7 @@ var FocusClient = class {
39245
39259
  });
39246
39260
  }
39247
39261
  async listAlerts(params = {}) {
39248
- const response = await this.run("listAlerts", () => this.http.get(`organizations/${this.organizationIdNum}/workspaces/${this.workspaceIdNum}/alerts`, { searchParams: buildSearchParams$2({
39262
+ const response = await this.run("listAlerts", () => this.http.get(`organizations/${this.organizationIdNum}/workspaces/${this.workspaceIdNum}/alerts`, { searchParams: buildSearchParams$1({
39249
39263
  rule_type: params.rule_type,
39250
39264
  project_id: params.project_id,
39251
39265
  scope: params.scope
@@ -39394,7 +39408,7 @@ var FocusClient = class {
39394
39408
  return this.softValidateResponse("getSharedDataStatus", StatusOKSchema, response);
39395
39409
  }
39396
39410
  async listPublicHolidays(year, country) {
39397
- const response = await this.run("listPublicHolidays", () => getPublicHolidays(this.sharedDataHttp, year, country === void 0 ? {} : { country }));
39411
+ const response = await this.run("listPublicHolidays", () => getPublicHolidaysHolidayDomain(this.orgHttp, year, country === void 0 ? {} : { country }));
39398
39412
  return response.ok ? {
39399
39413
  ok: true,
39400
39414
  data: response.data
@@ -40575,7 +40589,7 @@ function createAuthenticatedClientProxy() {
40575
40589
  } });
40576
40590
  }
40577
40591
  //#endregion
40578
- //#region ../operations/build/validation-BGSky2wE.js
40592
+ //#region ../operations/build/validation-BvUOg9Kw.js
40579
40593
  const optionalNumber = /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2());
40580
40594
  const perPageField = (max) => /* @__PURE__ */ optional$1(/* @__PURE__ */ pipe$2(/* @__PURE__ */ number$2(), /* @__PURE__ */ integer(), /* @__PURE__ */ minValue$1(1), /* @__PURE__ */ maxValue$1(max), /* @__PURE__ */ description$1(`Results per page (1-${max})`)));
40581
40595
  const perPageSchema = perPageField(100);
@@ -41605,6 +41619,35 @@ const timeEntryOverrides = {
41605
41619
  }
41606
41620
  ]
41607
41621
  },
41622
+ "focus.time-entries.create": {
41623
+ description: "Create a completed task time entry. payload.type defaults to 'activity' when omitted.",
41624
+ agentGuidance: "Logs a completed task time entry. payload.type defaults to 'activity' when omitted; pass 'break' explicitly for a break. provide payload.start and payload.duration for completed tracked time.",
41625
+ examples: [{
41626
+ description: "Log a completed activity",
41627
+ data: {
41628
+ task_id: 12345,
41629
+ payload: {
41630
+ start: "2025-01-15T09:00:00Z",
41631
+ duration: 3600,
41632
+ type: "activity"
41633
+ }
41634
+ }
41635
+ }, {
41636
+ description: "Log a completed break",
41637
+ data: {
41638
+ task_id: 12345,
41639
+ payload: {
41640
+ start: "2025-01-15T10:00:00Z",
41641
+ duration: 900,
41642
+ type: "break"
41643
+ }
41644
+ }
41645
+ }]
41646
+ },
41647
+ "focus.time-entries.create-taskless": {
41648
+ description: "Create a completed taskless time entry. payload.type defaults to 'activity' when omitted.",
41649
+ agentGuidance: "Logs a completed taskless time entry. payload.type defaults to 'activity' when omitted; pass 'break' explicitly for a break."
41650
+ },
41608
41651
  "focus.time-entries.start": {
41609
41652
  agentGuidance: "type defaults to 'activity' if omitted; pass type:'break' to start a break. Optionally provide task_id, project_id, description, and time_block_id. Only one timer can be active at a time — stops the current one if running.",
41610
41653
  examples: [{
@@ -42102,7 +42145,7 @@ async function getWorkspaceAttachmentStorage(httpClient, organization_id, worksp
42102
42145
  async function getOrganizationAuditLog(httpClient, organization_id, from, to, { workspace_id, entity_type, entity_id, action, user_id, page_size, page_number, export: export_ } = {}, signal) {
42103
42146
  return await httpClient.get(`organizations/${organization_id}/audit-log/${from}/${to}`, {
42104
42147
  signal,
42105
- searchParams: buildSearchParams$3({
42148
+ searchParams: buildSearchParams$2({
42106
42149
  workspace_id,
42107
42150
  entity_type,
42108
42151
  entity_id,
@@ -42117,7 +42160,7 @@ async function getOrganizationAuditLog(httpClient, organization_id, from, to, {
42117
42160
  async function getAuditLog(httpClient, organization_id, workspace_id, from, to, { entity_type, entity_id, action, user_id, page_size, page_number, export: export_ } = {}, signal) {
42118
42161
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/audit-log/${from}/${to}`, {
42119
42162
  signal,
42120
- searchParams: buildSearchParams$3({
42163
+ searchParams: buildSearchParams$2({
42121
42164
  entity_type,
42122
42165
  entity_id,
42123
42166
  action,
@@ -42133,7 +42176,7 @@ async function getAuditLog(httpClient, organization_id, workspace_id, from, to,
42133
42176
  async function getProjectsBillableRates(httpClient, organization_id, workspace_id, { project_id, date }, signal) {
42134
42177
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/projects/rates`, {
42135
42178
  signal,
42136
- searchParams: buildSearchParams$3({
42179
+ searchParams: buildSearchParams$2({
42137
42180
  project_id,
42138
42181
  date
42139
42182
  })
@@ -42142,7 +42185,7 @@ async function getProjectsBillableRates(httpClient, organization_id, workspace_i
42142
42185
  async function getAllProjectUserBillableRates(httpClient, organization_id, workspace_id, { project_id, user_id, date, order_by } = {}, signal) {
42143
42186
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/projects/users/rates`, {
42144
42187
  signal,
42145
- searchParams: buildSearchParams$3({
42188
+ searchParams: buildSearchParams$2({
42146
42189
  project_id,
42147
42190
  user_id,
42148
42191
  date,
@@ -42153,7 +42196,7 @@ async function getAllProjectUserBillableRates(httpClient, organization_id, works
42153
42196
  async function getProjectBillableRates(httpClient, organization_id, workspace_id, project_id, { order_by } = {}, signal) {
42154
42197
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/projects/${project_id}/rates`, {
42155
42198
  signal,
42156
- searchParams: buildSearchParams$3({ order_by })
42199
+ searchParams: buildSearchParams$2({ order_by })
42157
42200
  }).json();
42158
42201
  }
42159
42202
  async function upsertProjectBillableRate(httpClient, organization_id, workspace_id, project_id, data, signal) {
@@ -42165,7 +42208,7 @@ async function upsertProjectBillableRate(httpClient, organization_id, workspace_
42165
42208
  async function deleteProjectBillableRateRange(httpClient, organization_id, workspace_id, project_id, from, to, signal) {
42166
42209
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/projects/${project_id}/rates`, {
42167
42210
  signal,
42168
- searchParams: buildSearchParams$3({
42211
+ searchParams: buildSearchParams$2({
42169
42212
  from,
42170
42213
  to
42171
42214
  })
@@ -42180,7 +42223,7 @@ async function checkProjectBillableRateConflicts(httpClient, organization_id, wo
42180
42223
  async function getProjectUserBillableRates(httpClient, organization_id, workspace_id, project_id, user_id, { order_by } = {}, signal) {
42181
42224
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/projects/${project_id}/users/${user_id}/rates`, {
42182
42225
  signal,
42183
- searchParams: buildSearchParams$3({ order_by })
42226
+ searchParams: buildSearchParams$2({ order_by })
42184
42227
  }).json();
42185
42228
  }
42186
42229
  async function upsertProjectUserBillableRate(httpClient, organization_id, workspace_id, project_id, user_id, data, signal) {
@@ -42192,7 +42235,7 @@ async function upsertProjectUserBillableRate(httpClient, organization_id, worksp
42192
42235
  async function deleteProjectUserBillableRateRange(httpClient, organization_id, workspace_id, project_id, user_id, from, to, signal) {
42193
42236
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/projects/${project_id}/users/${user_id}/rates`, {
42194
42237
  signal,
42195
- searchParams: buildSearchParams$3({
42238
+ searchParams: buildSearchParams$2({
42196
42239
  from,
42197
42240
  to
42198
42241
  })
@@ -42210,7 +42253,7 @@ async function deleteBillableRateById(httpClient, organization_id, workspace_id,
42210
42253
  async function getAllWorkspaceUserBillableRates(httpClient, organization_id, workspace_id, { user_id, order_by } = {}, signal) {
42211
42254
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/users/rates`, {
42212
42255
  signal,
42213
- searchParams: buildSearchParams$3({
42256
+ searchParams: buildSearchParams$2({
42214
42257
  user_id,
42215
42258
  order_by
42216
42259
  })
@@ -42219,7 +42262,7 @@ async function getAllWorkspaceUserBillableRates(httpClient, organization_id, wor
42219
42262
  async function getWorkspaceUserBillableRates(httpClient, organization_id, workspace_id, user_id, { order_by } = {}, signal) {
42220
42263
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/users/${user_id}/rates`, {
42221
42264
  signal,
42222
- searchParams: buildSearchParams$3({ order_by })
42265
+ searchParams: buildSearchParams$2({ order_by })
42223
42266
  }).json();
42224
42267
  }
42225
42268
  async function upsertWorkspaceUserBillableRate(httpClient, organization_id, workspace_id, user_id, data, signal) {
@@ -42231,7 +42274,7 @@ async function upsertWorkspaceUserBillableRate(httpClient, organization_id, work
42231
42274
  async function deleteWorkspaceUserBillableRateRange(httpClient, organization_id, workspace_id, user_id, from, to, signal) {
42232
42275
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/users/${user_id}/rates`, {
42233
42276
  signal,
42234
- searchParams: buildSearchParams$3({
42277
+ searchParams: buildSearchParams$2({
42235
42278
  from,
42236
42279
  to
42237
42280
  })
@@ -42246,7 +42289,7 @@ async function checkWorkspaceUserBillableRateConflicts(httpClient, organization_
42246
42289
  async function getWorkspaceBillableRates(httpClient, organization_id, workspace_id, { order_by } = {}, signal) {
42247
42290
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/workspace/rates`, {
42248
42291
  signal,
42249
- searchParams: buildSearchParams$3({ order_by })
42292
+ searchParams: buildSearchParams$2({ order_by })
42250
42293
  }).json();
42251
42294
  }
42252
42295
  async function upsertWorkspaceBillableRate(httpClient, organization_id, workspace_id, data, signal) {
@@ -42258,7 +42301,7 @@ async function upsertWorkspaceBillableRate(httpClient, organization_id, workspac
42258
42301
  async function deleteWorkspaceBillableRateRange(httpClient, organization_id, workspace_id, from, to, signal) {
42259
42302
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/billable-rates/workspace/rates`, {
42260
42303
  signal,
42261
- searchParams: buildSearchParams$3({
42304
+ searchParams: buildSearchParams$2({
42262
42305
  from,
42263
42306
  to
42264
42307
  })
@@ -42275,7 +42318,7 @@ async function checkWorkspaceBillableRateConflicts(httpClient, organization_id,
42275
42318
  async function capacityGetComputations(httpClient, organization_id, workspace_id, group, { user_id, start_date, end_date, private: private_, task_source, unit, include_drafts, include_task_estimates }, signal) {
42276
42319
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/capacities/${group}`, {
42277
42320
  signal,
42278
- searchParams: buildSearchParams$3({
42321
+ searchParams: buildSearchParams$2({
42279
42322
  user_id,
42280
42323
  start_date,
42281
42324
  end_date,
@@ -42306,7 +42349,7 @@ async function compositeCreateTask(httpClient, organization_id, workspace_id, da
42306
42349
  async function getCustomFieldsClassic(httpClient, organization_id, workspace_id, { entity_type, page, per_page, order_by } = {}, signal) {
42307
42350
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/custom-fields`, {
42308
42351
  signal,
42309
- searchParams: buildSearchParams$3({
42352
+ searchParams: buildSearchParams$2({
42310
42353
  entity_type,
42311
42354
  page,
42312
42355
  per_page,
@@ -42338,19 +42381,10 @@ async function updateCustomField(httpClient, organization_id, workspace_id, cust
42338
42381
  async function deleteCustomField(httpClient, organization_id, workspace_id, custom_field_id, signal) {
42339
42382
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/custom-fields/${custom_field_id}`, { signal }).json();
42340
42383
  }
42341
- async function getCustomFieldAllowedUsers(httpClient, organization_id, workspace_id, custom_field_id, signal) {
42342
- return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/custom-fields/${custom_field_id}/allowed-users`, { signal }).json();
42343
- }
42344
- async function replaceCustomFieldAllowedUsers(httpClient, organization_id, workspace_id, custom_field_id, data, signal) {
42345
- return await httpClient.put(`organizations/${organization_id}/workspaces/${workspace_id}/custom-fields/${custom_field_id}/allowed-users`, {
42346
- signal,
42347
- json: data
42348
- }).json();
42349
- }
42350
42384
  async function getCustomFieldOptionsClassic(httpClient, organization_id, workspace_id, custom_field_id, { name, page, per_page, order_by } = {}, signal) {
42351
42385
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/custom-fields/${custom_field_id}/options`, {
42352
42386
  signal,
42353
- searchParams: buildSearchParams$3({
42387
+ searchParams: buildSearchParams$2({
42354
42388
  name,
42355
42389
  page,
42356
42390
  per_page,
@@ -42425,7 +42459,7 @@ async function getGoals(httpClient, organization_id, workspace_id, signal) {
42425
42459
  async function getAllProjectUserLaborCostRates(httpClient, organization_id, workspace_id, { project_id, user_id, date, order_by } = {}, signal) {
42426
42460
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/projects/users/rates`, {
42427
42461
  signal,
42428
- searchParams: buildSearchParams$3({
42462
+ searchParams: buildSearchParams$2({
42429
42463
  project_id,
42430
42464
  user_id,
42431
42465
  date,
@@ -42436,7 +42470,7 @@ async function getAllProjectUserLaborCostRates(httpClient, organization_id, work
42436
42470
  async function getProjectLaborCostRates(httpClient, organization_id, workspace_id, project_id, { order_by } = {}, signal) {
42437
42471
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/projects/${project_id}/rates`, {
42438
42472
  signal,
42439
- searchParams: buildSearchParams$3({ order_by })
42473
+ searchParams: buildSearchParams$2({ order_by })
42440
42474
  }).json();
42441
42475
  }
42442
42476
  async function upsertProjectLaborCostRate(httpClient, organization_id, workspace_id, project_id, data, signal) {
@@ -42448,7 +42482,7 @@ async function upsertProjectLaborCostRate(httpClient, organization_id, workspace
42448
42482
  async function deleteProjectLaborCostRateRange(httpClient, organization_id, workspace_id, project_id, from, to, signal) {
42449
42483
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/projects/${project_id}/rates`, {
42450
42484
  signal,
42451
- searchParams: buildSearchParams$3({
42485
+ searchParams: buildSearchParams$2({
42452
42486
  from,
42453
42487
  to
42454
42488
  })
@@ -42463,7 +42497,7 @@ async function checkProjectLaborCostConflicts(httpClient, organization_id, works
42463
42497
  async function getProjectUserLaborCostRates(httpClient, organization_id, workspace_id, project_id, user_id, { order_by } = {}, signal) {
42464
42498
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/projects/${project_id}/users/${user_id}/rates`, {
42465
42499
  signal,
42466
- searchParams: buildSearchParams$3({ order_by })
42500
+ searchParams: buildSearchParams$2({ order_by })
42467
42501
  }).json();
42468
42502
  }
42469
42503
  async function upsertProjectUserLaborCostRate(httpClient, organization_id, workspace_id, project_id, user_id, data, signal) {
@@ -42475,7 +42509,7 @@ async function upsertProjectUserLaborCostRate(httpClient, organization_id, works
42475
42509
  async function deleteProjectUserLaborCostRateRange(httpClient, organization_id, workspace_id, project_id, user_id, from, to, signal) {
42476
42510
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/projects/${project_id}/users/${user_id}/rates`, {
42477
42511
  signal,
42478
- searchParams: buildSearchParams$3({
42512
+ searchParams: buildSearchParams$2({
42479
42513
  from,
42480
42514
  to
42481
42515
  })
@@ -42493,7 +42527,7 @@ async function deleteLaborCostRateById(httpClient, organization_id, workspace_id
42493
42527
  async function getAllWorkspaceUserLaborCostRates(httpClient, organization_id, workspace_id, { user_id, order_by } = {}, signal) {
42494
42528
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/users/rates`, {
42495
42529
  signal,
42496
- searchParams: buildSearchParams$3({
42530
+ searchParams: buildSearchParams$2({
42497
42531
  user_id,
42498
42532
  order_by
42499
42533
  })
@@ -42502,7 +42536,7 @@ async function getAllWorkspaceUserLaborCostRates(httpClient, organization_id, wo
42502
42536
  async function getWorkspaceUserLaborCostRates(httpClient, organization_id, workspace_id, user_id, { order_by } = {}, signal) {
42503
42537
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/users/${user_id}/rates`, {
42504
42538
  signal,
42505
- searchParams: buildSearchParams$3({ order_by })
42539
+ searchParams: buildSearchParams$2({ order_by })
42506
42540
  }).json();
42507
42541
  }
42508
42542
  async function upsertWorkspaceUserLaborCostRate(httpClient, organization_id, workspace_id, user_id, data, signal) {
@@ -42514,7 +42548,7 @@ async function upsertWorkspaceUserLaborCostRate(httpClient, organization_id, wor
42514
42548
  async function deleteWorkspaceUserLaborCostRateRange(httpClient, organization_id, workspace_id, user_id, from, to, signal) {
42515
42549
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/users/${user_id}/rates`, {
42516
42550
  signal,
42517
- searchParams: buildSearchParams$3({
42551
+ searchParams: buildSearchParams$2({
42518
42552
  from,
42519
42553
  to
42520
42554
  })
@@ -42529,7 +42563,7 @@ async function checkWorkspaceUserLaborCostConflicts(httpClient, organization_id,
42529
42563
  async function getWorkspaceLaborCostRates(httpClient, organization_id, workspace_id, { order_by } = {}, signal) {
42530
42564
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/workspace/rates`, {
42531
42565
  signal,
42532
- searchParams: buildSearchParams$3({ order_by })
42566
+ searchParams: buildSearchParams$2({ order_by })
42533
42567
  }).json();
42534
42568
  }
42535
42569
  async function upsertWorkspaceLaborCostRate(httpClient, organization_id, workspace_id, data, signal) {
@@ -42541,7 +42575,7 @@ async function upsertWorkspaceLaborCostRate(httpClient, organization_id, workspa
42541
42575
  async function deleteWorkspaceLaborCostRateRange(httpClient, organization_id, workspace_id, from, to, signal) {
42542
42576
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/labor-costs/workspace/rates`, {
42543
42577
  signal,
42544
- searchParams: buildSearchParams$3({
42578
+ searchParams: buildSearchParams$2({
42545
42579
  from,
42546
42580
  to
42547
42581
  })
@@ -42558,7 +42592,7 @@ async function checkWorkspaceLaborCostConflicts(httpClient, organization_id, wor
42558
42592
  async function getMilestonesClassic(httpClient, workspace_id, { page, per_page, order_by, due_date_from, due_date_to, project_id, team_id } = {}, signal) {
42559
42593
  return await httpClient.get(`workspaces/${workspace_id}/milestones`, {
42560
42594
  signal,
42561
- searchParams: buildSearchParams$3({
42595
+ searchParams: buildSearchParams$2({
42562
42596
  page,
42563
42597
  per_page,
42564
42598
  order_by,
@@ -42578,7 +42612,7 @@ async function createMilestone(httpClient, workspace_id, data, signal) {
42578
42612
  async function getMilestonesStream(httpClient, workspace_id, { order_by, due_date_from, due_date_to, project_id, team_id } = {}, signal) {
42579
42613
  return await httpClient.get(`workspaces/${workspace_id}/milestones/stream`, {
42580
42614
  signal,
42581
- searchParams: buildSearchParams$3({
42615
+ searchParams: buildSearchParams$2({
42582
42616
  order_by,
42583
42617
  due_date_from,
42584
42618
  due_date_to,
@@ -42613,7 +42647,7 @@ async function restoreMilestone(httpClient, workspace_id, milestone_id, signal)
42613
42647
  async function getProjectGroupsClassic(httpClient, organization_id, workspace_id, group, { page, per_page, order_by, project_order_by, projects_per_group, include_group_totals, include_unassigned, archived, completed, private: private_, name, client_id, creator_id, tag_id, parent_project_id, assignee_user_id, project_id, start_date, end_date, user_id, only_me, include_drafts, cf_filter } = {}, signal) {
42614
42648
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects/groups/${group}`, {
42615
42649
  signal,
42616
- searchParams: buildSearchParams$3({
42650
+ searchParams: buildSearchParams$2({
42617
42651
  page,
42618
42652
  per_page,
42619
42653
  order_by,
@@ -42674,7 +42708,7 @@ async function clearProjectMarginTarget(httpClient, organization_id, workspace_i
42674
42708
  async function getPublicHolidaysByUserIds(httpClient, organization_id, { user_id, start_date, end_date }, signal) {
42675
42709
  return await httpClient.get(`organizations/${organization_id}/public-holidays`, {
42676
42710
  signal,
42677
- searchParams: buildSearchParams$3({
42711
+ searchParams: buildSearchParams$2({
42678
42712
  user_id,
42679
42713
  start_date,
42680
42714
  end_date
@@ -42686,7 +42720,7 @@ async function getPublicHolidaysByUserIds(httpClient, organization_id, { user_id
42686
42720
  async function getProjectRatesSummary(httpClient, organization_id, workspace_id, { page, rows, order_by, search } = {}, signal) {
42687
42721
  const response = await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects/rates`, {
42688
42722
  signal,
42689
- searchParams: buildSearchParams$3({
42723
+ searchParams: buildSearchParams$2({
42690
42724
  page,
42691
42725
  rows,
42692
42726
  order_by,
@@ -42698,7 +42732,7 @@ async function getProjectRatesSummary(httpClient, organization_id, workspace_id,
42698
42732
  async function getProjectRates(httpClient, organization_id, workspace_id, project_id, { order_by } = {}, signal) {
42699
42733
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/projects/${project_id}/rates`, {
42700
42734
  signal,
42701
- searchParams: buildSearchParams$3({ order_by })
42735
+ searchParams: buildSearchParams$2({ order_by })
42702
42736
  }).json();
42703
42737
  }
42704
42738
  async function createProjectRate(httpClient, organization_id, workspace_id, project_id, data, signal) {
@@ -42710,7 +42744,7 @@ async function createProjectRate(httpClient, organization_id, workspace_id, proj
42710
42744
  async function deleteProjectRate(httpClient, organization_id, workspace_id, project_id, from, to, signal) {
42711
42745
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/projects/${project_id}/rates`, {
42712
42746
  signal,
42713
- searchParams: buildSearchParams$3({
42747
+ searchParams: buildSearchParams$2({
42714
42748
  from,
42715
42749
  to
42716
42750
  })
@@ -42730,7 +42764,7 @@ async function createTaskRate(httpClient, organization_id, workspace_id, task_id
42730
42764
  async function getRecurringProjectBudgetSuggestion(httpClient, organization_id, workspace_id, project_id, { target_period_start }, signal) {
42731
42765
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/recurring-budget-suggestions/${project_id}`, {
42732
42766
  signal,
42733
- searchParams: buildSearchParams$3({ target_period_start })
42767
+ searchParams: buildSearchParams$2({ target_period_start })
42734
42768
  }).json();
42735
42769
  }
42736
42770
  async function acceptARecurringProjectBudgetSuggestion(httpClient, organization_id, workspace_id, project_id, signal) {
@@ -42758,7 +42792,7 @@ async function getProfitabilityReport(httpClient, workspace_id, data, response_f
42758
42792
  signal,
42759
42793
  json: data,
42760
42794
  headers: { "X-Toggl-Report-Export": xTogglReportExport },
42761
- searchParams: buildSearchParams$3({
42795
+ searchParams: buildSearchParams$2({
42762
42796
  response_format,
42763
42797
  include_dicts
42764
42798
  })
@@ -42769,7 +42803,7 @@ async function getFlexqData(httpClient, workspace_id, data, { response_format, i
42769
42803
  signal,
42770
42804
  json: data,
42771
42805
  headers: { "X-Toggl-Report-Export": xTogglReportExport },
42772
- searchParams: buildSearchParams$3({
42806
+ searchParams: buildSearchParams$2({
42773
42807
  response_format,
42774
42808
  include_dicts
42775
42809
  })
@@ -42816,7 +42850,7 @@ async function deleteSharedReportSchedule(httpClient, workspace_id, id, signal)
42816
42850
  async function getSavedViews(httpClient, workspace_id, { name, type, order_by } = {}, signal) {
42817
42851
  return await httpClient.get(`workspaces/${workspace_id}/saved-views`, {
42818
42852
  signal,
42819
- searchParams: buildSearchParams$3({
42853
+ searchParams: buildSearchParams$2({
42820
42854
  name,
42821
42855
  type,
42822
42856
  order_by
@@ -42846,7 +42880,7 @@ async function updateASavedView(httpClient, workspace_id, id, data, signal) {
42846
42880
  async function search(httpClient, organization_id, workspace_id, { keyword, per_group, assignee_user_id, assignee_team_id, project_id, task_id, include_drafts, exclude_calendar_events, group_by_tags, only_me }, signal) {
42847
42881
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/search`, {
42848
42882
  signal,
42849
- searchParams: buildSearchParams$3({
42883
+ searchParams: buildSearchParams$2({
42850
42884
  keyword,
42851
42885
  per_group,
42852
42886
  assignee_user_id,
@@ -42863,7 +42897,7 @@ async function search(httpClient, organization_id, workspace_id, { keyword, per_
42863
42897
  async function searchMentions(httpClient, organization_id, workspace_id, { keyword, per_group } = {}, signal) {
42864
42898
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/search/mentions`, {
42865
42899
  signal,
42866
- searchParams: buildSearchParams$3({
42900
+ searchParams: buildSearchParams$2({
42867
42901
  keyword,
42868
42902
  per_group
42869
42903
  })
@@ -42949,7 +42983,7 @@ async function createTaskEstimateAllocations(httpClient, organization_id, worksp
42949
42983
  async function deleteTaskEstimateAllocations(httpClient, organization_id, workspace_id, task_id, id, signal) {
42950
42984
  return await httpClient.delete(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/${task_id}/allocations`, {
42951
42985
  signal,
42952
- searchParams: buildSearchParams$3({ id })
42986
+ searchParams: buildSearchParams$2({ id })
42953
42987
  }).json();
42954
42988
  }
42955
42989
  async function updateTaskEstimateAllocations(httpClient, organization_id, workspace_id, task_id, data, signal) {
@@ -42963,7 +42997,7 @@ async function updateTaskEstimateAllocations(httpClient, organization_id, worksp
42963
42997
  async function getUserTaskGroupsByProject(httpClient, organization_id, workspace_id, { project_id, source, priority, status_id, client_id, assignee_user_id, tag_id, team_id, user_tag_id, group_id, creator_id, name, start_date, end_date, start_date_from, start_date_to, end_date_from, end_date_to, private: private_, exclude_empty, include_unassigned, include_unmaterialized, collapse_recurring, include_assignees, min_days, include_drafts, cf_filter, user_cf_filter }, signal) {
42964
42998
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/groups/users/by-project`, {
42965
42999
  signal,
42966
- searchParams: buildSearchParams$3({
43000
+ searchParams: buildSearchParams$2({
42967
43001
  project_id,
42968
43002
  source,
42969
43003
  priority,
@@ -42998,7 +43032,7 @@ async function getUserTaskGroupsByProject(httpClient, organization_id, workspace
42998
43032
  async function getUserTaskGroupsByTeam(httpClient, organization_id, workspace_id, { team_id, project_id, source, priority, status_id, client_id, assignee_user_id, tag_id, user_tag_id, group_id, creator_id, name, start_date, end_date, start_date_from, start_date_to, end_date_from, end_date_to, private: private_, exclude_empty, include_unassigned, include_unmaterialized, collapse_recurring, include_assignees, min_days, include_drafts, cf_filter, user_cf_filter } = {}, signal) {
42999
43033
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/groups/users/by-team`, {
43000
43034
  signal,
43001
- searchParams: buildSearchParams$3({
43035
+ searchParams: buildSearchParams$2({
43002
43036
  team_id,
43003
43037
  project_id,
43004
43038
  source,
@@ -43033,7 +43067,7 @@ async function getUserTaskGroupsByTeam(httpClient, organization_id, workspace_id
43033
43067
  async function getTaskGroupsClassic(httpClient, organization_id, workspace_id, group, { source, priority, status_id, project_id, client_id, assignee_user_id, tag_id, team_id, user_tag_id, group_id, creator_id, name, start_date, end_date, start_date_from, start_date_to, end_date_from, end_date_to, private: private_, exclude_empty, include_unassigned, include_unmaterialized, collapse_recurring, include_assignees, min_days, include_drafts, cf_filter, user_cf_filter, page, per_page, order_by } = {}, signal) {
43034
43068
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/tasks/groups/${group}`, {
43035
43069
  signal,
43036
- searchParams: buildSearchParams$3({
43070
+ searchParams: buildSearchParams$2({
43037
43071
  source,
43038
43072
  priority,
43039
43073
  status_id,
@@ -43104,7 +43138,7 @@ async function upsertTimeEntryConstraints(httpClient, workspace_id, data, signal
43104
43138
  async function getTimeEntryGroupsUsersClassic(httpClient, organization_id, workspace_id, { start_date, end_date, user_id, page, per_page, order_by }, signal) {
43105
43139
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/time-entries/groups/users`, {
43106
43140
  signal,
43107
- searchParams: buildSearchParams$3({
43141
+ searchParams: buildSearchParams$2({
43108
43142
  start_date,
43109
43143
  end_date,
43110
43144
  user_id,
@@ -43119,7 +43153,7 @@ async function getTimeEntryGroupsUsersClassic(httpClient, organization_id, works
43119
43153
  async function getTimeoffsByUserIds(httpClient, organization_id, { user_id, start_date, end_date }, signal) {
43120
43154
  return await httpClient.get(`organizations/${organization_id}/timeoff`, {
43121
43155
  signal,
43122
- searchParams: buildSearchParams$3({
43156
+ searchParams: buildSearchParams$2({
43123
43157
  user_id,
43124
43158
  start_date,
43125
43159
  end_date
@@ -43129,7 +43163,7 @@ async function getTimeoffsByUserIds(httpClient, organization_id, { user_id, star
43129
43163
  async function getTimeoffForUser(httpClient, organization_id, user_id, { from, to }, signal) {
43130
43164
  return await httpClient.get(`organizations/${organization_id}/timeoff/users/${user_id}`, {
43131
43165
  signal,
43132
- searchParams: buildSearchParams$3({
43166
+ searchParams: buildSearchParams$2({
43133
43167
  from,
43134
43168
  to
43135
43169
  })
@@ -43158,7 +43192,7 @@ async function deleteTimeoffForUser(httpClient, organization_id, user_id, data,
43158
43192
  async function getTimesheetSetups(httpClient, organization_id, workspace_id, { include_discontinued, user_account_id, approver_user_account_id } = {}, signal) {
43159
43193
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/timesheet-setups`, {
43160
43194
  signal,
43161
- searchParams: buildSearchParams$3({
43195
+ searchParams: buildSearchParams$2({
43162
43196
  include_discontinued,
43163
43197
  user_account_id,
43164
43198
  approver_user_account_id
@@ -43195,7 +43229,7 @@ async function discontinueTimesheetSetup(httpClient, organization_id, workspace_
43195
43229
  async function getTimesheetSetupMembers(httpClient, organization_id, workspace_id, setup_id, { include_discontinued } = {}, signal) {
43196
43230
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/timesheet-setups/${setup_id}/members`, {
43197
43231
  signal,
43198
- searchParams: buildSearchParams$3({ include_discontinued })
43232
+ searchParams: buildSearchParams$2({ include_discontinued })
43199
43233
  }).json();
43200
43234
  }
43201
43235
  async function addTimesheetSetupMember(httpClient, organization_id, workspace_id, setup_id, user_account_id, signal) {
@@ -43218,7 +43252,7 @@ async function reactivateTimesheetSetupMember(httpClient, organization_id, works
43218
43252
  async function getTimesheetsClassic(httpClient, organization_id, workspace_id, { date_from, date_to, setup_id, user_account_ids, approver_user_account_ids, team_ids, current_layer_approver_user_account_id, statuses, page, per_page }, signal) {
43219
43253
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/timesheets`, {
43220
43254
  signal,
43221
- searchParams: buildSearchParams$3({
43255
+ searchParams: buildSearchParams$2({
43222
43256
  date_from,
43223
43257
  date_to,
43224
43258
  setup_id,
@@ -43930,6 +43964,7 @@ const generatedFocusOperations = [
43930
43964
  outbound_sync: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1())
43931
43965
  }))),
43932
43966
  time_entry: /* @__PURE__ */ optional$1(/* @__PURE__ */ looseObject({
43967
+ type: /* @__PURE__ */ picklist$1(["activity", "break"]),
43933
43968
  calendar_event_id: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
43934
43969
  description: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
43935
43970
  duration: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
@@ -44061,33 +44096,6 @@ const generatedFocusOperations = [
44061
44096
  ]));
44062
44097
  }
44063
44098
  },
44064
- {
44065
- id: "focus.custom-fields.get-allowed-users",
44066
- family: "focus",
44067
- resource: "custom-fields",
44068
- action: "get-allowed-users",
44069
- title: "Get Allowed Users Custom Fields",
44070
- description: "Get Allowed Users Custom Fields.",
44071
- safety: "read",
44072
- destructive: false,
44073
- cli: {
44074
- group: ["custom-fields"],
44075
- command: "get-allowed-users",
44076
- interactive: "available"
44077
- },
44078
- mcp: { entityTool: "custom-fields" },
44079
- inputSchema: /* @__PURE__ */ looseObject({ custom_field_id: /* @__PURE__ */ number$2() }),
44080
- execute: (input, { client }) => {
44081
- const data = input;
44082
- return client.runGeneratedRequest("getCustomFieldAllowedUsers", () => callGeneratedRequest(getCustomFieldAllowedUsers, [
44083
- client.httpClient,
44084
- client.organizationId,
44085
- client.workspaceIdNumber,
44086
- data.custom_field_id,
44087
- void 0
44088
- ]));
44089
- }
44090
- },
44091
44099
  {
44092
44100
  id: "focus.custom-fields.list",
44093
44101
  family: "focus",
@@ -44257,37 +44265,6 @@ const generatedFocusOperations = [
44257
44265
  ]));
44258
44266
  }
44259
44267
  },
44260
- {
44261
- id: "focus.custom-fields.replace-custom-field-allowed-users",
44262
- family: "focus",
44263
- resource: "custom-fields",
44264
- action: "replace-custom-field-allowed-users",
44265
- title: "Replace Custom Field Allowed Users Custom Fields",
44266
- description: "Replace Custom Field Allowed Users Custom Fields.",
44267
- safety: "update",
44268
- destructive: false,
44269
- cli: {
44270
- group: ["custom-fields"],
44271
- command: "replace-custom-field-allowed-users",
44272
- interactive: "default"
44273
- },
44274
- mcp: { entityTool: "custom-fields" },
44275
- inputSchema: /* @__PURE__ */ looseObject({
44276
- custom_field_id: /* @__PURE__ */ number$2(),
44277
- payload: /* @__PURE__ */ looseObject({ user_ids: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()) })
44278
- }),
44279
- execute: (input, { client }) => {
44280
- const data = input;
44281
- return client.runGeneratedRequest("replaceCustomFieldAllowedUsers", () => callGeneratedRequest(replaceCustomFieldAllowedUsers, [
44282
- client.httpClient,
44283
- client.organizationId,
44284
- client.workspaceIdNumber,
44285
- data.custom_field_id,
44286
- data.payload ?? data.data ?? data,
44287
- void 0
44288
- ]));
44289
- }
44290
- },
44291
44268
  {
44292
44269
  id: "focus.custom-fields.update",
44293
44270
  family: "focus",
@@ -44434,7 +44411,13 @@ const generatedFocusOperations = [
44434
44411
  },
44435
44412
  mcp: { entityTool: "goals" },
44436
44413
  inputSchema: /* @__PURE__ */ looseObject({ payload: /* @__PURE__ */ looseObject({
44414
+ billable: /* @__PURE__ */ boolean$1(),
44437
44415
  comparison: /* @__PURE__ */ picklist$1(["more_than", "less_than"]),
44416
+ end_date: /* @__PURE__ */ pipe$2(/* @__PURE__ */ string$1(), /* @__PURE__ */ isoDate$1()),
44417
+ icon: /* @__PURE__ */ string$1(),
44418
+ monthly_anchor: /* @__PURE__ */ picklist$1(["calendar", "first_workday"]),
44419
+ name: /* @__PURE__ */ string$1(),
44420
+ project_ids: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
44438
44421
  recurrence: /* @__PURE__ */ picklist$1([
44439
44422
  "daily",
44440
44423
  "weekly",
@@ -44442,18 +44425,12 @@ const generatedFocusOperations = [
44442
44425
  "monthly"
44443
44426
  ]),
44444
44427
  start_date: /* @__PURE__ */ pipe$2(/* @__PURE__ */ string$1(), /* @__PURE__ */ isoDate$1()),
44428
+ tag_ids: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
44445
44429
  target_seconds: /* @__PURE__ */ number$2(),
44446
- billable: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
44430
+ task_ids: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
44431
+ weekdays: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
44447
44432
  client_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
44448
- description: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44449
- end_date: /* @__PURE__ */ optional$1(/* @__PURE__ */ pipe$2(/* @__PURE__ */ string$1(), /* @__PURE__ */ isoDate$1())),
44450
- icon: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44451
- monthly_anchor: /* @__PURE__ */ optional$1(/* @__PURE__ */ picklist$1(["calendar", "first_workday"])),
44452
- name: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44453
- project_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
44454
- tag_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
44455
- task_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
44456
- weekdays: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2()))
44433
+ description: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44457
44434
  }) }),
44458
44435
  execute: (input, { client }) => {
44459
44436
  const data = input;
@@ -44559,6 +44536,13 @@ const generatedFocusOperations = [
44559
44536
  },
44560
44537
  mcp: { entityTool: "goals" },
44561
44538
  inputSchema: /* @__PURE__ */ looseObject({ payload: /* @__PURE__ */ looseObject({
44539
+ billable: /* @__PURE__ */ boolean$1(),
44540
+ comparison: /* @__PURE__ */ picklist$1(["more_than", "less_than"]),
44541
+ end_date: /* @__PURE__ */ pipe$2(/* @__PURE__ */ string$1(), /* @__PURE__ */ isoDate$1()),
44542
+ icon: /* @__PURE__ */ string$1(),
44543
+ monthly_anchor: /* @__PURE__ */ picklist$1(["calendar", "first_workday"]),
44544
+ name: /* @__PURE__ */ string$1(),
44545
+ project_ids: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
44562
44546
  recurrence: /* @__PURE__ */ picklist$1([
44563
44547
  "daily",
44564
44548
  "weekly",
@@ -44566,19 +44550,12 @@ const generatedFocusOperations = [
44566
44550
  "monthly"
44567
44551
  ]),
44568
44552
  start_date: /* @__PURE__ */ pipe$2(/* @__PURE__ */ string$1(), /* @__PURE__ */ isoDate$1()),
44569
- billable: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
44553
+ tag_ids: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
44554
+ target_seconds: /* @__PURE__ */ number$2(),
44555
+ task_ids: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
44556
+ weekdays: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
44570
44557
  client_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
44571
- comparison: /* @__PURE__ */ optional$1(/* @__PURE__ */ picklist$1(["more_than", "less_than"])),
44572
- description: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44573
- end_date: /* @__PURE__ */ optional$1(/* @__PURE__ */ pipe$2(/* @__PURE__ */ string$1(), /* @__PURE__ */ isoDate$1())),
44574
- icon: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44575
- monthly_anchor: /* @__PURE__ */ optional$1(/* @__PURE__ */ picklist$1(["calendar", "first_workday"])),
44576
- name: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44577
- project_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
44578
- tag_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
44579
- target_seconds: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
44580
- task_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
44581
- weekdays: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2()))
44558
+ description: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44582
44559
  }) }),
44583
44560
  execute: (input, { client }) => {
44584
44561
  const data = input;
@@ -48516,6 +48493,11 @@ const generatedFocusOperations = [
48516
48493
  inputSchema: /* @__PURE__ */ looseObject({
48517
48494
  id: /* @__PURE__ */ unknown$1(),
48518
48495
  payload: /* @__PURE__ */ looseObject({
48496
+ cadence: /* @__PURE__ */ picklist$1([
48497
+ "daily",
48498
+ "weekly",
48499
+ "monthly"
48500
+ ]),
48519
48501
  time: /* @__PURE__ */ string$1(),
48520
48502
  day: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
48521
48503
  recipient_team_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
@@ -48552,6 +48534,11 @@ const generatedFocusOperations = [
48552
48534
  inputSchema: /* @__PURE__ */ looseObject({
48553
48535
  id: /* @__PURE__ */ unknown$1(),
48554
48536
  payload: /* @__PURE__ */ looseObject({
48537
+ cadence: /* @__PURE__ */ picklist$1([
48538
+ "daily",
48539
+ "weekly",
48540
+ "monthly"
48541
+ ]),
48555
48542
  time: /* @__PURE__ */ string$1(),
48556
48543
  day: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
48557
48544
  recipient_team_ids: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
@@ -50019,12 +50006,16 @@ const generatedFocusOperations = [
50019
50006
  cli: {
50020
50007
  group: ["tasks", "constraints"],
50021
50008
  command: "upsert",
50022
- interactive: "hidden"
50009
+ interactive: "default"
50023
50010
  },
50024
50011
  mcp: { entityTool: "tasks" },
50025
50012
  inputSchema: /* @__PURE__ */ looseObject({ payload: /* @__PURE__ */ looseObject({
50026
50013
  enabled: /* @__PURE__ */ boolean$1(),
50027
- required_fields: /* @__PURE__ */ array$1(/* @__PURE__ */ unknown$1())
50014
+ required_fields: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({ kind: /* @__PURE__ */ picklist$1([
50015
+ "project",
50016
+ "description",
50017
+ "tags"
50018
+ ]) }))
50028
50019
  }) }),
50029
50020
  execute: (input, { client }) => {
50030
50021
  const data = input;
@@ -51487,12 +51478,16 @@ const generatedFocusOperations = [
51487
51478
  cli: {
51488
51479
  group: ["time-entries", "constraints"],
51489
51480
  command: "upsert",
51490
- interactive: "hidden"
51481
+ interactive: "default"
51491
51482
  },
51492
51483
  mcp: { entityTool: "time-entries" },
51493
51484
  inputSchema: /* @__PURE__ */ looseObject({ payload: /* @__PURE__ */ looseObject({
51494
51485
  enabled: /* @__PURE__ */ boolean$1(),
51495
- required_fields: /* @__PURE__ */ array$1(/* @__PURE__ */ unknown$1()),
51486
+ required_fields: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({ kind: /* @__PURE__ */ picklist$1([
51487
+ "project",
51488
+ "task",
51489
+ "description"
51490
+ ]) })),
51496
51491
  disallow_billable_override: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1())
51497
51492
  }) }),
51498
51493
  execute: (input, { client }) => {
@@ -51522,6 +51517,7 @@ const generatedFocusOperations = [
51522
51517
  mcp: { entityTool: "time-entries" },
51523
51518
  inputSchema: /* @__PURE__ */ looseObject({
51524
51519
  payload: /* @__PURE__ */ looseObject({
51520
+ type: /* @__PURE__ */ optional$1(/* @__PURE__ */ picklist$1(["activity", "break"]), "activity"),
51525
51521
  billable: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
51526
51522
  calendar_event_id: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
51527
51523
  description: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
@@ -51565,6 +51561,7 @@ const generatedFocusOperations = [
51565
51561
  },
51566
51562
  mcp: { entityTool: "time-entries" },
51567
51563
  inputSchema: /* @__PURE__ */ looseObject({ payload: /* @__PURE__ */ looseObject({
51564
+ type: /* @__PURE__ */ optional$1(/* @__PURE__ */ picklist$1(["activity", "break"]), "activity"),
51568
51565
  billable: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
51569
51566
  calendar_event_id: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
51570
51567
  description: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
@@ -51692,7 +51689,6 @@ const generatedFocusOperations = [
51692
51689
  expand_calendar_event: /* @__PURE__ */ unknown$1(),
51693
51690
  include_taskless: /* @__PURE__ */ unknown$1(),
51694
51691
  order_by: /* @__PURE__ */ unknown$1(),
51695
- project_id: /* @__PURE__ */ number$2(),
51696
51692
  status_id: /* @__PURE__ */ number$2(),
51697
51693
  task_id: /* @__PURE__ */ number$2(),
51698
51694
  type: /* @__PURE__ */ unknown$1()
@@ -52007,7 +52003,9 @@ const generatedFocusOperations = [
52007
52003
  inputSchema: /* @__PURE__ */ looseObject({
52008
52004
  client_uuid: /* @__PURE__ */ unknown$1(),
52009
52005
  payload: /* @__PURE__ */ looseObject({
52006
+ billable_source: /* @__PURE__ */ picklist$1(["manual", "task_default"]),
52010
52007
  client_updated_at: apiDateTimeString,
52008
+ type: /* @__PURE__ */ picklist$1(["activity", "break"]),
52011
52009
  billable: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1())
52012
52010
  })
52013
52011
  }),
@@ -52064,6 +52062,7 @@ const generatedFocusOperations = [
52064
52062
  inputSchema: /* @__PURE__ */ looseObject({ payload: /* @__PURE__ */ looseObject({
52065
52063
  extension_source: /* @__PURE__ */ string$1(),
52066
52064
  name: /* @__PURE__ */ string$1(),
52065
+ type: /* @__PURE__ */ picklist$1(["activity", "break"]),
52067
52066
  billable: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
52068
52067
  create_project_if_not_found: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
52069
52068
  create_tags_if_not_found: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
@@ -52140,6 +52139,7 @@ const generatedFocusOperations = [
52140
52139
  mcp: { entityTool: "time-entries" },
52141
52140
  inputSchema: /* @__PURE__ */ looseObject({
52142
52141
  payload: /* @__PURE__ */ looseObject({
52142
+ type: /* @__PURE__ */ picklist$1(["activity", "break"]),
52143
52143
  calendar_event_id: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
52144
52144
  description: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
52145
52145
  duration: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
@@ -52824,6 +52824,11 @@ const generatedFocusOperations = [
52824
52824
  user_account_ids: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2())
52825
52825
  })),
52826
52826
  member_user_account_ids: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
52827
+ periodicity: /* @__PURE__ */ picklist$1([
52828
+ "weekly",
52829
+ "monthly",
52830
+ "days"
52831
+ ]),
52827
52832
  start_date: /* @__PURE__ */ pipe$2(/* @__PURE__ */ string$1(), /* @__PURE__ */ isoDate$1()),
52828
52833
  email_reminder_enabled: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
52829
52834
  period_days: /* @__PURE__ */ optional$1(/* @__PURE__ */ number$2()),
@@ -53301,9 +53306,6 @@ const generatedFocusOperations = [
53301
53306
  has_reached_task_threshold: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
53302
53307
  import_data_banner_dismissed: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
53303
53308
  new_users_trial_dismissed: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
53304
- notify_project_alerts: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
53305
- notify_project_member_added: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
53306
- notify_task_assigned: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
53307
53309
  onboarding_checklist_dismissed: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
53308
53310
  onboarding_flow_dismissed: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
53309
53311
  onboarding_multi_day_task_created: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1()),
@@ -54847,7 +54849,7 @@ function registerWorkspaceTools(server) {
54847
54849
  //#region src/package-version.ts
54848
54850
  function mcpPackageVersion() {
54849
54851
  try {
54850
- return "1.9.0";
54852
+ return "1.11.0";
54851
54853
  } catch {
54852
54854
  return "unknown";
54853
54855
  }
@@ -55022,7 +55024,7 @@ import_main.default.config({
55022
55024
  quiet: true,
55023
55025
  ignore: ["MISSING_ENV_FILE"]
55024
55026
  });
55025
- const packageVersion = "1.9.0";
55027
+ const packageVersion = "1.11.0";
55026
55028
  function resolvePublicUrls() {
55027
55029
  return {
55028
55030
  focusApiUrl: process.env.TOGGL_FOCUS_API_URL ?? "https://focus.toggl.com",
@@ -55087,4 +55089,4 @@ function bootstrapServer(options = {}) {
55087
55089
  //#endregion
55088
55090
  export { initProductAnalytics as a, shutdownProductAnalytics as c, getProductAnalyticsDistinctId as i, runMcpCli as n, redactUnsafeSentryMessages as o, captureToolInvocation as r, resolveProductAnalyticsDistinctId as s, bootstrapServer as t };
55089
55091
 
55090
- //# sourceMappingURL=src-BPDrK4ao.js.map
55092
+ //# sourceMappingURL=src-ELJOcCjX.js.map