@tocca-systems/twp-cli 0.65.0 → 0.66.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.
Files changed (105) hide show
  1. package/CHANGELOG.public.md +12 -0
  2. package/README.md +47 -4
  3. package/command-model/wiki.json +2 -2
  4. package/dist/agent-SFX3ZVOB.js +160 -0
  5. package/dist/{agent-loop-VC47FGPR.js → agent-loop-6JO4PJRG.js} +23 -20
  6. package/dist/{ai-dispatch-GN5ZQPHC.js → ai-dispatch-YICIA4NI.js} +3 -3
  7. package/dist/{analysis-NEZXCJGT.js → analysis-HMOECNWG.js} +2 -2
  8. package/dist/{announcement-BEPIDOMO.js → announcement-Q642UMYK.js} +1 -1
  9. package/dist/{api-command-HP3ABNDG.js → api-command-4CUGQQI3.js} +4 -4
  10. package/dist/{app-C4TUNEAO.js → app-BBPK653N.js} +3 -3
  11. package/dist/{attendance-correct-ZEWRXHUU.js → attendance-correct-DWVFYL2Y.js} +1 -1
  12. package/dist/{attendance-lists-BXAHFZYY.js → attendance-lists-772Y3ZWA.js} +1 -1
  13. package/dist/{backlog-UD226SVD.js → backlog-FG3Y5JTE.js} +1 -1
  14. package/dist/{budget-6HOZNG3E.js → budget-5WUQAAAZ.js} +1 -1
  15. package/dist/{capacity-report-command-A6RYG2NV.js → capacity-report-command-PBE73I43.js} +1 -1
  16. package/dist/chunk-2OG4LAGD.js +41 -0
  17. package/dist/{chunk-T4QZO6RQ.js → chunk-5SONMN6K.js} +1 -1
  18. package/dist/chunk-6CS5L24D.js +4 -0
  19. package/dist/chunk-6OLZMQBK.js +11 -0
  20. package/dist/chunk-6PAZUW73.js +16 -0
  21. package/dist/{chunk-ZJW3GBE5.js → chunk-7EJOKJLV.js} +1 -1
  22. package/dist/{chunk-3WFZOOXZ.js → chunk-AGI5KT4C.js} +1 -1
  23. package/dist/{chunk-5AQ2JPIS.js → chunk-APPYZQNC.js} +1 -1
  24. package/dist/{chunk-BTN4M7Y5.js → chunk-CCBNU5Y3.js} +2 -2
  25. package/dist/{chunk-AYE4DF6J.js → chunk-DAOC7VRM.js} +1 -1
  26. package/dist/{chunk-G26GIBRL.js → chunk-F4PGPJOI.js} +1 -1
  27. package/dist/{chunk-AEJHDFXB.js → chunk-FABDZBDZ.js} +5 -5
  28. package/dist/{chunk-2G6ZZPME.js → chunk-FDVWV3AY.js} +2 -2
  29. package/dist/{chunk-FBBKRVVS.js → chunk-GLKZ4ZZY.js} +1 -1
  30. package/dist/{worker-agent-OBYRYPLC.js → chunk-HBEOI456.js} +3 -3
  31. package/dist/{chunk-ZSPWHEBL.js → chunk-HNG6MF26.js} +13 -13
  32. package/dist/{chunk-QSXS5SB2.js → chunk-HPPIVCK3.js} +3 -2
  33. package/dist/chunk-KDH3KWPO.js +4 -0
  34. package/dist/{chunk-CGHGQAEM.js → chunk-LJVAOWZI.js} +17 -16
  35. package/dist/{chunk-XNOZJ6T2.js → chunk-NVMJXFBT.js} +1 -1
  36. package/dist/{chunk-WHCMWXLC.js → chunk-OMWCSE4P.js} +2 -2
  37. package/dist/{chunk-ENVASCZU.js → chunk-P2DSHLHD.js} +2 -2
  38. package/dist/{chunk-UUP4X3WH.js → chunk-P6M2MCZJ.js} +18 -18
  39. package/dist/{chunk-FTAKYID7.js → chunk-QJAZLPA3.js} +1 -1
  40. package/dist/chunk-VIWQMDGG.js +91 -0
  41. package/dist/{chunk-BXTAAF5F.js → chunk-W2AIT5FJ.js} +5 -5
  42. package/dist/{chunk-Z2I5BGXV.js → chunk-WBUYPDJH.js} +1 -1
  43. package/dist/{chunk-G6RLNOIZ.js → chunk-WMEGP2BT.js} +1 -1
  44. package/dist/{chunk-RSATLT5H.js → chunk-X6L5LUC4.js} +1 -1
  45. package/dist/{chunk-Y2J4M2MG.js → chunk-XCPZ4R65.js} +1 -1
  46. package/dist/{chunk-SCU74Z4U.js → chunk-XGYOJHZC.js} +1 -1
  47. package/dist/cli.js +38 -11
  48. package/dist/{commands-EK3EYLQH.js → commands-4C6TJ4WG.js} +1 -1
  49. package/dist/{commands-2FOGOL65.js → commands-62NWF7GA.js} +22 -20
  50. package/dist/{company-MUGKJNY3.js → company-4DHVAW25.js} +2 -2
  51. package/dist/{completion-DGPGHQNL.js → completion-WR2GXZE7.js} +5 -5
  52. package/dist/{contract-DJJQBAWX.js → contract-PT7VW4IE.js} +2 -2
  53. package/dist/{department-RMZ72N6B.js → department-C6WIZPBS.js} +1 -1
  54. package/dist/{deposit-45Y3POXT.js → deposit-OEYFPEZG.js} +1 -1
  55. package/dist/{estimate-HTAF6FZT.js → estimate-4BUJQ3TP.js} +3 -3
  56. package/dist/{evaluation-J634U7JQ.js → evaluation-GLXQ54F6.js} +1 -1
  57. package/dist/{expense-EVNQ653C.js → expense-QE3WIJTN.js} +1 -1
  58. package/dist/{fiscal-year-MVOGDAIP.js → fiscal-year-YJWFQN4P.js} +1 -1
  59. package/dist/{inquiry-XO5R47OO.js → inquiry-ORB3ROAJ.js} +1 -1
  60. package/dist/{invoice-WE2SOMYN.js → invoice-XLX5KS2T.js} +2 -2
  61. package/dist/{job-title-3CGRQILF.js → job-title-UDF6I3BP.js} +1 -1
  62. package/dist/{knowledge-X3FGXIBL.js → knowledge-4QPIGJEE.js} +32 -27
  63. package/dist/{leave-IFYBLQBF.js → leave-3BJMXI7Q.js} +2 -2
  64. package/dist/license-OMIZUUTW.js +56 -0
  65. package/dist/{logout-guard-S2PVXK4V.js → logout-guard-2Y7HPIKN.js} +2 -1
  66. package/dist/{media-X32Y2MOY.js → media-77LTBOQX.js} +3 -3
  67. package/dist/{notification-MHYSQKYZ.js → notification-2IESSY5E.js} +1 -1
  68. package/dist/{oneshot-VL45DNR7.js → oneshot-4XO5HIJR.js} +1 -1
  69. package/dist/{outlook-YG7GFF44.js → outlook-KYTXHDAV.js} +1 -1
  70. package/dist/plan-submit-T5KHXNGH.js +4 -0
  71. package/dist/{position-6UC7X2BJ.js → position-CR6P4WC5.js} +1 -1
  72. package/dist/{project-LG47ZCEZ.js → project-JJEMEO2W.js} +1 -1
  73. package/dist/{prospect-FEU3WQYN.js → prospect-QG6X7ALK.js} +2 -2
  74. package/dist/{purchase-44B2NOOB.js → purchase-Z6ENEOZM.js} +3 -3
  75. package/dist/{receivable-NQNZ2B6B.js → receivable-ZBDXXMHX.js} +1 -1
  76. package/dist/{redmine-T3JDIH37.js → redmine-EIFHMLNE.js} +1 -1
  77. package/dist/{registry-LBL4AOZW.js → registry-BIJNO3HE.js} +1 -1
  78. package/dist/{report-GJK2YXVO.js → report-TTXGXSR3.js} +1 -1
  79. package/dist/revision-command-PM7FQUVF.js +31 -0
  80. package/dist/{run-RLV6W5JA.js → run-TYKHDD6N.js} +2 -2
  81. package/dist/{sales-ai-review-PUJCOMP6.js → sales-ai-review-6TDJFHDL.js} +1 -1
  82. package/dist/{sales-master-GRR4WKLO.js → sales-master-H5HMVBJV.js} +2 -2
  83. package/dist/{sales-numbering-IUYAABSM.js → sales-numbering-Q5KRM63Y.js} +1 -1
  84. package/dist/{schedule-command-ZX5WNSAC.js → schedule-command-2HCOGYJW.js} +1 -1
  85. package/dist/{search-N5UE5CUL.js → search-GRAWP2LX.js} +1 -1
  86. package/dist/{segment-FQHY6DVH.js → segment-YOUY4PZC.js} +1 -1
  87. package/dist/server-settings-LJBDUOTV.js +4 -0
  88. package/dist/{setup-PF2VH2TW.js → setup-HHPKB6N4.js} +3 -3
  89. package/dist/{skill-PWCJCIQO.js → skill-RH5MBRXZ.js} +1 -1
  90. package/dist/{supplier-payment-HTENSEXJ.js → supplier-payment-EJTFKAKY.js} +2 -2
  91. package/dist/{support-DOWAY63P.js → support-FR3KY63E.js} +1 -1
  92. package/dist/{task-OMYFPWQZ.js → task-O7K6725Y.js} +2 -2
  93. package/dist/{teams-AUFHZRDH.js → teams-QRVCFJS4.js} +1 -1
  94. package/dist/{user-C7UKUPGT.js → user-PRGHG3HM.js} +15 -103
  95. package/dist/{user-contract-type-DO576EHJ.js → user-contract-type-K7CLKCEE.js} +1 -1
  96. package/dist/worker-agent-WDYZTQ5C.js +4 -0
  97. package/dist/{workflow-C2BEVHQ2.js → workflow-S25JXGWN.js} +1 -1
  98. package/package.json +1 -1
  99. package/dist/agent-HM4FHCJT.js +0 -100
  100. package/dist/chunk-UODNIEO2.js +0 -15
  101. package/dist/chunk-WG6NCT4L.js +0 -37
  102. package/dist/chunk-YASL34FY.js +0 -11
  103. package/dist/chunk-YYURQG4E.js +0 -4
  104. package/dist/plan-submit-CUVVYDTN.js +0 -4
  105. package/dist/server-settings-77MPN3UN.js +0 -3
@@ -1,11 +1,11 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{composeDocument,meetingContentToText,metaLine,noteContentToText,oneLine,wikiContentToText}from"./chunk-QSXS5SB2.js";import{dateFlag}from"./chunk-EXT4AIDF.js";import{boundedText}from"./chunk-JJSBBWJ5.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{charCount,readBody}from"./chunk-6LSQCOCJ.js";import"./chunk-ZSPWHEBL.js";import{ResolveError,
3
+ import{composeDocument,meetingContentToText,metaLine,noteContentToText,oneLine,wikiContentToText}from"./chunk-HPPIVCK3.js";import{dateFlag}from"./chunk-EXT4AIDF.js";import{boundedText}from"./chunk-JJSBBWJ5.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{charCount,readBody}from"./chunk-6LSQCOCJ.js";import"./chunk-HNG6MF26.js";import{ResolveError,
4
4
  isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";
5
- import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var WIKI_PATH="/api/v2/wiki";var NOTES_PATH="/api/v2/notes";var MEETINGS_PATH="/api/v2/meetings";var ROOT_PARENT="root";var WIKI_STATUSES=["draft","published"];var NOTE_STATUSES=["draft","published"];var NOTE_VISIBILITIES=["private","tenant","external","public"];var NOTE_SORTS=["manual","created_at","updated_at","view_count","comment_count","reaction_count"];var MEETING_STATUSES=["draft","published","archived"];var MEETING_TYPES=["regular","client","internal","retrospective","decision","one_on_o\
6
- ne"];var MEETING_SORTS=["meeting_date","created_at","updated_at","title"];var SORT_ORDERS=["asc","desc"];var MEETING_TAGS_MAX=20;var MEETING_TAG_MAX_CHARS=50;var DATE_FLOOR="0000-01-01";var DATE_CEIL="9999-12-31";var WIKI_LIST_COLUMNS=["id","title","status","parent_page_id","updated_at","updated_by_name"];var WIKI_CHILD_COLUMNS=["id","title","status","child_count","updated_at","updated_by_name"];var WIKI_GET_COLUMNS=["id","title","status","parent_page_id","version","tags","updated_at","updated_b\
7
- y_name"];var NOTE_LIST_COLUMNS=["id","title","status","visibility","created_by_name","updated_at","comment_count","reaction_count"];var NOTE_GET_COLUMNS=["id","title","status","visibility","content_type","category_name","tags","created_by_name","updated_at","view_count"];var MEETING_LIST_COLUMNS=["id","meeting_date","title","meeting_type","status","project_name","created_by_name"];var MEETING_GET_COLUMNS=["id","title","meeting_date","meeting_type","status","project_name","category_name","created\
8
- _by_name","updated_at"];var TEXT_OUTPUT_HELP="--output text \u306F\u672C\u6587\u3092\u8AAD\u3080\u305F\u3081\u306E\u6587\u66F8\uFF08\u898B\u51FA\u3057\u30FB\u30E1\u30BF\u60C5\u5831\u30FB\u672C\u6587\uFF09\u3092\u51FA\u3057\u307E\u3059\u3002HTML \u3068\u5171\u540C\u7DE8\u96C6\u30A8\u30C7\u30A3\u30BF\u306E JSON \u306F\n\u5E73\u6587\u3078\u5909\u63DB\u3057\u3001\u898B\u51FA\u3057\u30FB\u7B87\u6761\u66F8\u304D\u30FB\u30EA\u30F3\u30AF\u306F Markdown \u98A8\u306B\u6B8B\u3057\u307E\u3059\u3002--output json \u306F\u30B5\u30FC\u30D0\u306E\u539F\u6587\u306E\u307E\u307E\u3067\u3059\u3002";
5
+ import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var WIKI_PATH="/api/v2/wiki";var NOTES_PATH="/api/v2/notes";var MEETINGS_PATH="/api/v2/meetings";var ROOT_PARENT="root";var WIKI_STATUSES=["draft","published"];var WIKI_CONTENT_FORMATS=["html","markdown"];var NOTE_STATUSES=["draft","published"];var NOTE_VISIBILITIES=["private","tenant","external","public"];var NOTE_SORTS=["manual","created_at","updated_at","view_count","comment_count","reaction_count"];var MEETING_STATUSES=["draft","published","archived"];var MEETING_TYPES=["regular","client","i\
6
+ nternal","retrospective","decision","one_on_one"];var MEETING_SORTS=["meeting_date","created_at","updated_at","title"];var SORT_ORDERS=["asc","desc"];var MEETING_TAGS_MAX=20;var MEETING_TAG_MAX_CHARS=50;var DATE_FLOOR="0000-01-01";var DATE_CEIL="9999-12-31";var WIKI_LIST_COLUMNS=["id","title","status","parent_page_id","updated_at","updated_by_name"];var WIKI_CHILD_COLUMNS=["id","title","status","child_count","updated_at","updated_by_name"];var WIKI_GET_COLUMNS=["id","title","status","content_for\
7
+ mat","parent_page_id","version","tags","updated_at","updated_by_name"];var NOTE_LIST_COLUMNS=["id","title","status","visibility","created_by_name","updated_at","comment_count","reaction_count"];var NOTE_GET_COLUMNS=["id","title","status","visibility","content_type","category_name","tags","created_by_name","updated_at","view_count"];var MEETING_LIST_COLUMNS=["id","meeting_date","title","meeting_type","status","project_name","created_by_name"];var MEETING_GET_COLUMNS=["id","title","meeting_date","\
8
+ meeting_type","status","project_name","category_name","created_by_name","updated_at"];var TEXT_OUTPUT_HELP="--output text \u306F\u672C\u6587\u3092\u8AAD\u3080\u305F\u3081\u306E\u6587\u66F8\uFF08\u898B\u51FA\u3057\u30FB\u30E1\u30BF\u60C5\u5831\u30FB\u672C\u6587\uFF09\u3092\u51FA\u3057\u307E\u3059\u3002HTML \u3068\u5171\u540C\u7DE8\u96C6\u30A8\u30C7\u30A3\u30BF\u306E JSON \u306F\n\u5E73\u6587\u3078\u5909\u63DB\u3057\u3001\u898B\u51FA\u3057\u30FB\u7B87\u6761\u66F8\u304D\u30FB\u30EA\u30F3\u30AF\u306F Markdown \u98A8\u306B\u6B8B\u3057\u307E\u3059\u3002--output json \u306F\u30B5\u30FC\u30D0\u306E\u539F\u6587\u306E\u307E\u307E\u3067\u3059\u3002";
9
9
  function noArgs(input,command){if(input.args.length>0){throw new UsageError(`${command} \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D6\u308A\u307E\u305B\u3093: ${input.args.join(" ")}`,`${command} help`)}}function singleId(input,command,label,where){const[raw,...rest]=input.args;const id=raw?.trim()??"";if(id==="")throw new UsageError(`${label}\u306E ID \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`,`${command} help`);if(rest.length>0)throw new UsageError(`${command} \u304C\u53D7\u3051\u53D6\u308C\u308B${label}\
10
10
  ID \u306F1\u3064\u3060\u3051\u3067\u3059: ${rest.join(" ")}`,`${command} help`);if(!isSafePathSegment(id))throw new UsageError(`${label}\u306E ID \u3068\u3057\u3066\u4F7F\u3048\u306A\u3044\u5024\u3067\u3059: ${id}`,`${label}\u306E ID \u306F ${where} \u306E id \u5217\u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002`);return id}function oneOf(input,flag,allowed){const raw=nonEmpty(input.flags,flag);if(raw===void 0)return void 0;const value=raw.trim();if(!allowed.includes(value)){throw new UsageError(
11
11
  `${flag} \u306B\u6307\u5B9A\u3067\u304D\u306A\u3044\u5024\u3067\u3059: ${raw}`,`\u6307\u5B9A\u3067\u304D\u308B\u5024: ${allowed.join(" / ")}`)}return value}function pageLimit(input){const limit=positiveInteger(input.flags,"--limit");if(limit!==void 0&&limit>500){throw new UsageError(`--limit \u306F 1\u301C500 \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: ${limit}`,"\u30B5\u30FC\u30D0\u306E\u4E0A\u9650\u304C500\u4EF6\u3067\u3059\u3002\u5168\u4EF6\u306F --all \u3067\u8FBF\u308C\u307E\u3059\u3002")}
@@ -28,43 +28,48 @@ ROOT_PARENT?tree:find(tree);if(children===void 0){throw new ResolveError(`\u89AA
28
28
  `+LIST_PAGING_HELP,flags:[...LIST_FLAGS,{name:"--project",summary:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\uFF08\u30B3\u30FC\u30C9\u304B ID\u3002\u7701\u7565\u6642\u306F\u65E2\u5B9A\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\uFF09",takesValue:true,placeholder:"<\u30B3\u30FC\u30C9|ID>"},{name:"--parent",summary:`\u89AA\u30DA\u30FC\u30B8\u306E ID\uFF08\u76F4\u4E0B\u306E\u5B50\u3060\u3051\u3092\u51FA\u3059\uFF09\u3002${ROOT_PARENT} \u3067\u6700\u4E0A\u4F4D`,takesValue:true,placeholder:"<\u30DA\u30FC\u30B8ID>|root"},
29
29
  {name:"--status",summary:`\u72B6\u614B\u3067\u7D5E\u308A\u8FBC\u3080\uFF08${WIKI_STATUSES.join(" / ")}\uFF09`,takesValue:true,placeholder:"<\u72B6\u614B>"},{name:"--tag",summary:"\u30BF\u30B0\u3067\u7D5E\u308A\u8FBC\u3080",takesValue:true,placeholder:"<\u30BF\u30B0>"},{name:"--keyword",summary:"\u30AD\u30FC\u30EF\u30FC\u30C9\u3067\u7D5E\u308A\u8FBC\u3080",takesValue:true,placeholder:"<\u8A9E>"}],paging:wikiPaging,async prepare(input,ctx){noArgs(input,"twp wiki list");parentRef(input);oneOf(input,
30
30
  "--status",WIKI_STATUSES);pageLimit(input);return withResolved(input,{project:await ctx.projectId(input.flags.get("--project"))})},plan(input){return parentRef(input)!==void 0?{method:"GET",path:`${WIKI_PATH}/tree`,query:{project_id:requireResolved(input,"project")}}:{method:"GET",path:WIKI_PATH,query:wikiListQuery(input)}},narrow(body,input){const parent=parentRef(input);if(parent===void 0)return body;return{result:true,items:childrenOf(body,parent),has_more:false,next_cursor:null}},summarize:body=>{
31
- const rows=envelopeRows(body,wikiPaging,`${WIKI_LABEL}\u4E00\u89A7`);const columns=rows.some(row=>isRecord(row)&&"child_count"in row)?WIKI_CHILD_COLUMNS:WIKI_LIST_COLUMNS;return rows.map(row=>pick(row,columns))},raw:body=>envelopeRows(body,wikiPaging,`${WIKI_LABEL}\u4E00\u89A7`)};function wikiDocument(body){const page=record(body,"page",WIKI_LABEL);return composeDocument(page["title"],[...metaLine("\u72B6\u614B",page["status"]),...metaLine("\u30BF\u30B0",page["tags"]),...metaLine("\u89AA\u30DA\u30FC\u30B8",
32
- page["parent_page_id"]),...metaLine("\u7248",page["version"]),...metaLine("\u66F4\u65B0",page["updated_at"]),...metaLine("\u66F4\u65B0\u8005",page["updated_by_name"]),...metaLine("ID",page["id"])],[{body:wikiContentToText(page["content"])}])}var wikiGet={name:"get",summary:`${WIKI_LABEL}1\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08--output text \u3067\u672C\u6587\u3092\u8AAD\u3080\uFF09`,usage:"twp wiki get <\u30DA\u30FC\u30B8ID>",description:`${TEXT_OUTPUT_HELP}
31
+ const rows=envelopeRows(body,wikiPaging,`${WIKI_LABEL}\u4E00\u89A7`);const columns=rows.some(row=>isRecord(row)&&"child_count"in row)?WIKI_CHILD_COLUMNS:WIKI_LIST_COLUMNS;return rows.map(row=>pick(row,columns))},raw:body=>envelopeRows(body,wikiPaging,`${WIKI_LABEL}\u4E00\u89A7`)};function wikiDocument(body){const page=record(body,"page",WIKI_LABEL);return composeDocument(page["title"],[...metaLine("\u72B6\u614B",page["status"]),...metaLine("\u5F62\u5F0F",page["content_format"]),...metaLine("\u30BF\u30B0",
32
+ page["tags"]),...metaLine("\u89AA\u30DA\u30FC\u30B8",page["parent_page_id"]),...metaLine("\u7248",page["version"]),...metaLine("\u66F4\u65B0",page["updated_at"]),...metaLine("\u66F4\u65B0\u8005",page["updated_by_name"]),...metaLine("ID",page["id"])],[{body:wikiContentToText(page["content"],page["content_format"])}])}var wikiGet={name:"get",summary:`${WIKI_LABEL}1\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08--output text \u3067\u672C\u6587\u3092\u8AAD\u3080\uFF09`,usage:"twp wiki g\
33
+ et <\u30DA\u30FC\u30B8ID>",description:`${TEXT_OUTPUT_HELP}
33
34
 
34
35
  --output table / tsv \u306F\u8981\u7D04\u5217\uFF08${WIKI_GET_COLUMNS.join(" / ")}\uFF09\u3067\u3059\u3002
35
36
  \u4ED6\u4EBA\u306E\u4E0B\u66F8\u304D\uFF08\u3068\u3001\u4ED6\u4EBA\u306E\u4E0B\u66F8\u304D\u306E\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u914D\u4E0B\u306E\u30DA\u30FC\u30B8\uFF09\u306F\u300C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u300D\u306B\u306A\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u306E\u5224\u5B9A\uFF09\u3002`,flags:[],plan:input=>({method:"GET",path:`${WIKI_PATH}/${encodeURIComponent(singleId(input,"twp wiki get","\u30DA\u30FC\u30B8","twp wiki list"))}`}),summarize:body=>pick(record(body,
36
- "page",WIKI_LABEL),WIKI_GET_COLUMNS),raw:body=>record(body,"page",WIKI_LABEL),document:wikiDocument};var WIKI_CONTENT_MAX_CHARS=4e5;var WIKI_TITLE_MAX_CHARS=255;var WIKI_TAG_MAX_CHARS=50;var WIKI_CREATE_USAGE="twp wiki create --project <\u30B3\u30FC\u30C9|ID> --title <\u4EF6\u540D> --content-file <\u30D1\u30B9|-> [--parent <\u30DA\u30FC\u30B8ID>] [--status <draft|published>] [--tag <\u30BF\u30B0>]...";var WIKI_UPDATE_USAGE="twp wiki update <\u30DA\u30FC\u30B8ID> [--title <\u4EF6\u540D>] [--content-file <\u30D1\u30B9|->] [--status\
37
- <draft|published>] [--tag <\u30BF\u30B0>]... [--clear-tags] [--if-version <\u7248>]";var WIKI_MOVE_USAGE="twp wiki move <\u30DA\u30FC\u30B8ID> [--parent <\u30DA\u30FC\u30B8ID>|root] [--sort-order <\u9806>]";var CONTENT_FILE_FLAG={name:"--content-file",summary:"\u672C\u6587\u3092\u8AAD\u3080\u30D5\u30A1\u30A4\u30EB\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09\u3002\u52A0\u5DE5\u305B\u305A\u306B\u9001\u308B",takesValue:true,placeholder:"<\u30D1\u30B9|->"};var WIKI_STATUS_FLAG={name:"--status",summary:`\
38
- \u72B6\u614B\uFF08${WIKI_STATUSES.join(" / ")}\uFF09`,takesValue:true,placeholder:"<\u72B6\u614B>"};var WIKI_TAG_FLAG={name:"--tag",summary:`\u30BF\u30B0\uFF08\u8907\u6570\u56DE\u53EF\u30FB${WIKI_TAG_MAX_CHARS}\u6587\u5B57\u4EE5\u5185\uFF09`,takesValue:true,placeholder:"<\u30BF\u30B0>",repeatable:true};var WIKI_WRITE_HELP="\u672C\u6587\u306F --content-file \u306E\u30D5\u30A1\u30A4\u30EB\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09\u304B\u3089\u8AAD\u307F\u3001\u52A0\u5DE5\u305B\u305A\u306B\u9001\u308A\u307E\u3059\uFF08\u5148\u982D\u306E BOM \u3060\u3051\u843D\u3068\u3057\u307E\u3059\uFF09\u3002\n\u753B\u9762\u306E\u30A8\u30C7\u30A3\u30BF\u306F HTML \u3067\u4FDD\u5B58\u3057\u307E\u3059\u3002Markdown \u3092\u6E21\u3057\u3066\u3082\u5909\u63DB\u3057\u306A\u3044\u306E\u3067\u3001\u753B\u9762\u3067\u306F\u8A18\u53F7\u306E\u307E\u307E\u8868\u793A\u3055\u308C\u307E\u3059\u3002\n\u7DE8\u96C6\u30FB\u79FB\u52D5\u30FB\u524A\u9664\u3067\u304D\u308B\u306E\u306F\u3001\u30DA\u30FC\u30B8\u306E\u4F5C\u6210\u8005\u30FBwiki \u306E\u7BA1\u7406\u8005\u30FB\u7D44\u7E54\u306E\u7BA1\u7406\u8005\u3067\u3059\uFF08\u6A29\u9650\u304C\u7121\u3051\u308C\u3070\u30B5\
39
- \u30FC\u30D0\u306E 403 \u306E\u6587\u9762\u3092\u305D\u306E\u307E\u307E\u51FA\u3057\u307E\u3059\uFF09\u3002";async function wikiContent(input,usage){return readBody(input,{flag:"--content",fileFlag:"--content-file",label:"wiki \u306E\u672C\u6587",maxChars:WIKI_CONTENT_MAX_CHARS,usage})}function wikiTitle(input){const raw=input.flags.get("--title");if(raw===void 0)return void 0;if(raw.trim()==="")throw new UsageError("--title \u304C\u7A7A\u3067\u3059","\u4EF6\u540D\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002");
40
- const count=charCount(raw);if(count>WIKI_TITLE_MAX_CHARS){throw new UsageError(`--title \u304C\u9577\u3059\u304E\u307E\u3059\uFF08${count} \u6587\u5B57\u30FB\u4E0A\u9650 ${WIKI_TITLE_MAX_CHARS} \u6587\u5B57\uFF09`,"\u30B5\u30FC\u30D0\u306E\u4E0A\u9650\u304C255\u6587\u5B57\u3067\u3059\u3002")}return raw}function wikiTags(input){const tags=repeatedValues(input,"--tag").map(tag=>tag.trim());const clear=input.flags.has("--clear-tags");if(clear&&tags.length>0){throw new UsageError("--tag \u3068 --clear-ta\
41
- gs \u306F\u4F75\u7528\u3067\u304D\u307E\u305B\u3093","--tag \u306F\u30BF\u30B0\u3092\u307E\u308B\u3054\u3068\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002\u6D88\u3059\u3060\u3051\u306A\u3089 --clear-tags \u3060\u3051\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}if(clear)return[];if(tags.length===0)return void 0;for(const tag of tags){if(tag==="")throw new UsageError("--tag \u304C\u7A7A\u3067\u3059","\u30BF\u30B0\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002");if(charCount(
42
- tag)>WIKI_TAG_MAX_CHARS){throw new UsageError(`--tag \u304C\u9577\u3059\u304E\u307E\u3059\uFF08${tag}\u30FB\u4E0A\u9650 ${WIKI_TAG_MAX_CHARS} \u6587\u5B57\uFF09`,`\u30B5\u30FC\u30D0\u306E\u4E0A\u9650\u304C${WIKI_TAG_MAX_CHARS}\u6587\u5B57\u3067\u3059\u3002`)}}return[...new Set(tags)]}function wikiParent(input,allowRoot){const raw=nonEmpty(input.flags,"--parent");if(raw===void 0)return void 0;const parent=raw.trim();if(parent===ROOT_PARENT){if(!allowRoot)throw new UsageError(`--parent ${ROOT_PARENT}\
43
- \u306F create \u3067\u306F\u4F7F\u3048\u307E\u305B\u3093`,"\u6700\u4E0A\u4F4D\u306B\u4F5C\u308B\u306A\u3089 --parent \u3092\u7701\u3044\u3066\u304F\u3060\u3055\u3044\u3002");return null}if(!isSafePathSegment(parent)){throw new UsageError(`\u89AA\u30DA\u30FC\u30B8\u306E ID \u3068\u3057\u3066\u4F7F\u3048\u306A\u3044\u5024\u3067\u3059: ${parent}`,"\u30DA\u30FC\u30B8\u306E ID \u306F twp wiki list \u306E id \u5217\u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002")}return parent}function pageFrom(body){
44
- return record(body,"page",WIKI_LABEL)}var wikiCreate={name:"create",summary:`${WIKI_LABEL}\u3092\u4F5C\u6210\u3059\u308B\uFF08\u672C\u6587\u306F\u30D5\u30A1\u30A4\u30EB\u304B\u3089\uFF09`,usage:WIKI_CREATE_USAGE,description:`${WIKI_WRITE_HELP}
37
+ "page",WIKI_LABEL),WIKI_GET_COLUMNS),raw:body=>record(body,"page",WIKI_LABEL),document:wikiDocument};var WIKI_CONTENT_MAX_CHARS=4e5;var WIKI_TITLE_MAX_CHARS=255;var WIKI_TAG_MAX_CHARS=50;var WIKI_CREATE_USAGE="twp wiki create --project <\u30B3\u30FC\u30C9|ID> --title <\u4EF6\u540D> --content-file <\u30D1\u30B9|-> [--content-format <html|markdown>] [--parent <\u30DA\u30FC\u30B8ID>] [--status <draft|published>] [--tag <\u30BF\u30B0>]...";var WIKI_UPDATE_USAGE="twp wiki update <\u30DA\u30FC\u30B8ID> [--title <\u4EF6\u540D>\
38
+ ] [--content-file <\u30D1\u30B9|->] [--content-format <html|markdown>] [--status <draft|published>] [--tag <\u30BF\u30B0>]... [--clear-tags] [--if-version <\u7248>]";var WIKI_MOVE_USAGE="twp wiki move <\u30DA\u30FC\u30B8ID> [--parent <\u30DA\u30FC\u30B8ID>|root] [--sort-order <\u9806>]";var CONTENT_FILE_FLAG={name:"--content-file",summary:"\u672C\u6587\u3092\u8AAD\u3080\u30D5\u30A1\u30A4\u30EB\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09\u3002\u52A0\u5DE5\u305B\u305A\u306B\u9001\u308B",takesValue:true,
39
+ placeholder:"<\u30D1\u30B9|->"};var WIKI_CONTENT_FORMAT_FLAG={name:"--content-format",summary:`\u672C\u6587\u306E\u5F62\u5F0F\uFF08${WIKI_CONTENT_FORMATS.join(" / ")}\uFF09`,takesValue:true,placeholder:"<\u5F62\u5F0F>"};var WIKI_STATUS_FLAG={name:"--status",summary:`\u72B6\u614B\uFF08${WIKI_STATUSES.join(" / ")}\uFF09`,takesValue:true,placeholder:"<\u72B6\u614B>"};var WIKI_TAG_FLAG={name:"--tag",summary:`\u30BF\u30B0\uFF08\u8907\u6570\u56DE\u53EF\u30FB${WIKI_TAG_MAX_CHARS}\u6587\u5B57\u4EE5\u5185\uFF09`,
40
+ takesValue:true,placeholder:"<\u30BF\u30B0>",repeatable:true};var WIKI_WRITE_HELP="\u672C\u6587\u306F --content-file \u306E\u30D5\u30A1\u30A4\u30EB\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09\u304B\u3089\u8AAD\u307F\u3001\u52A0\u5DE5\u305B\u305A\u306B\u9001\u308A\u307E\u3059\uFF08\u5148\u982D\u306E BOM \u3060\u3051\u843D\u3068\u3057\u307E\u3059\uFF09\u3002\n\u672C\u6587\u306E\u5F62\u5F0F\u306F --content-format\uFF08html / markdown\uFF09\u3067\u6307\u5B9A\u3057\u307E\u3059\u3002\u7701\u304F\u3068 HTML \u306E\u30DA\u30FC\u30B8\u306B\u306A\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u306E\u65E2\u5B9A\uFF09\u3002\nMarkdown \u306E\u672C\u6587\u306F --content-format markdown \u3067\u9001\u3063\u3066\u304F\u3060\u3055\u3044\u3002HTML \u306E\u30DA\u30FC\u30B8\u306B Markdown \u3092\u9001\u3063\u3066\u3082\u5909\u63DB\u3057\u306A\u3044\u306E\u3067\u3001\u753B\u9762\u3067\u306F\u8A18\u53F7\u306E\u307E\u307E\u8868\u793A\u3055\u308C\u307E\u3059\u3002\n\u30DA\u30FC\u30B8\u306E\u5F62\u5F0F\u306F\u4F5C\u6210\u5F8C\u306B\u5909\u3048\u3089\u308C\u307E\u305B\u3093\uFF08update \u3067\u9055\u3046\u5F62\u5F0F\u3092\u6307\u5B9A\u3059\u308B\u3068\u30B5\u30FC\u30D0\u304C\u65AD\u308A\u307E\u3059\uFF09\u3002\n\u7DE8\u96C6\u30FB\u79FB\u52D5\u30FB\u524A\u9664\u3067\u304D\u308B\u306E\u306F\u3001\u30DA\u30FC\u30B8\u306E\u4F5C\u6210\u8005\u30FBwiki \u306E\u7BA1\u7406\u8005\u30FB\u7D44\u7E54\u306E\u7BA1\u7406\u8005\u3067\u3059\uFF08\u6A29\u9650\u304C\u7121\u3051\u308C\u3070\u30B5\u30FC\u30D0\u306E 403 \u306E\u6587\u9762\u3092\u305D\u306E\u307E\u307E\u51FA\u3057\u307E\u3059\uFF09\u3002";
41
+ async function wikiContent(input,usage){return readBody(input,{flag:"--content",fileFlag:"--content-file",label:"wiki \u306E\u672C\u6587",maxChars:WIKI_CONTENT_MAX_CHARS,usage})}function wikiTitle(input){const raw=input.flags.get("--title");if(raw===void 0)return void 0;if(raw.trim()==="")throw new UsageError("--title \u304C\u7A7A\u3067\u3059","\u4EF6\u540D\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002");const count=charCount(raw);if(count>WIKI_TITLE_MAX_CHARS){throw new UsageError(
42
+ `--title \u304C\u9577\u3059\u304E\u307E\u3059\uFF08${count} \u6587\u5B57\u30FB\u4E0A\u9650 ${WIKI_TITLE_MAX_CHARS} \u6587\u5B57\uFF09`,"\u30B5\u30FC\u30D0\u306E\u4E0A\u9650\u304C255\u6587\u5B57\u3067\u3059\u3002")}return raw}function wikiTags(input){const tags=repeatedValues(input,"--tag").map(tag=>tag.trim());const clear=input.flags.has("--clear-tags");if(clear&&tags.length>0){throw new UsageError("--tag \u3068 --clear-tags \u306F\u4F75\u7528\u3067\u304D\u307E\u305B\u3093","--tag \u306F\u30BF\u30B0\u3092\u307E\u308B\u3054\u3068\u7F6E\u304D\u63DB\u3048\u307E\u3059\
43
+ \u3002\u6D88\u3059\u3060\u3051\u306A\u3089 --clear-tags \u3060\u3051\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}if(clear)return[];if(tags.length===0)return void 0;for(const tag of tags){if(tag==="")throw new UsageError("--tag \u304C\u7A7A\u3067\u3059","\u30BF\u30B0\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002");if(charCount(tag)>WIKI_TAG_MAX_CHARS){throw new UsageError(`--tag \u304C\u9577\u3059\u304E\u307E\u3059\uFF08${tag}\u30FB\u4E0A\u9650 ${WIKI_TAG_MAX_CHARS}\
44
+ \u6587\u5B57\uFF09`,`\u30B5\u30FC\u30D0\u306E\u4E0A\u9650\u304C${WIKI_TAG_MAX_CHARS}\u6587\u5B57\u3067\u3059\u3002`)}}return[...new Set(tags)]}function wikiParent(input,allowRoot){const raw=nonEmpty(input.flags,"--parent");if(raw===void 0)return void 0;const parent=raw.trim();if(parent===ROOT_PARENT){if(!allowRoot)throw new UsageError(`--parent ${ROOT_PARENT} \u306F create \u3067\u306F\u4F7F\u3048\u307E\u305B\u3093`,"\u6700\u4E0A\u4F4D\u306B\u4F5C\u308B\u306A\u3089 --parent \u3092\u7701\u3044\u3066\u304F\u3060\u3055\u3044\u3002");
45
+ return null}if(!isSafePathSegment(parent)){throw new UsageError(`\u89AA\u30DA\u30FC\u30B8\u306E ID \u3068\u3057\u3066\u4F7F\u3048\u306A\u3044\u5024\u3067\u3059: ${parent}`,"\u30DA\u30FC\u30B8\u306E ID \u306F twp wiki list \u306E id \u5217\u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002")}return parent}function pageFrom(body){return record(body,"page",WIKI_LABEL)}var wikiCreate={name:"create",summary:`${WIKI_LABEL}\u3092\u4F5C\u6210\u3059\u308B\uFF08\u672C\u6587\u306F\u30D5\u30A1\u30A4\u30EB\u304B\u3089\uFF09`,
46
+ usage:WIKI_CREATE_USAGE,description:`${WIKI_WRITE_HELP}
45
47
  --status \u3092\u7701\u304F\u3068\u4E0B\u66F8\u304D\uFF08draft\uFF09\u3067\u4F5C\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u306E\u65E2\u5B9A\uFF09\u3002\u4E0B\u66F8\u304D\u306F\u4F5C\u6210\u8005\u3068 wiki \u306E\u7BA1\u7406\u8005\u306B\u3057\u304B\u898B\u3048\u307E\u305B\u3093\u3002
46
48
  --project \u3092\u7701\u304F\u3068\u65E2\u5B9A\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\uFF08TWP_PROJECT \u7B49\uFF09\u3092\u4F7F\u3044\u307E\u3059\u3002
47
49
 
48
50
  \u4F8B:
49
51
  twp wiki create --project TWP --title \u904B\u7528\u624B\u9806 --content-file notes.html --status published --tag \u904B\u7528
52
+ twp wiki create --project TWP --title \u904B\u7528\u624B\u9806 --content-file notes.md --content-format markdown
50
53
  cat page.html | twp wiki create --title \u4E0B\u66F8\u304D --content-file - --dry-run`,flags:[{name:"--project",summary:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\uFF08\u30B3\u30FC\u30C9\u304B ID\u3002\u7701\u7565\u6642\u306F\u65E2\u5B9A\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\uFF09",takesValue:true,placeholder:"<\u30B3\u30FC\u30C9|ID>"},{name:"--title",summary:`\u4EF6\u540D\uFF08\u5FC5\u9808\u30FB${WIKI_TITLE_MAX_CHARS}\u6587\u5B57\u4EE5\u5185\uFF09`,takesValue:true,placeholder:"<\u4EF6\u540D>"},
51
- CONTENT_FILE_FLAG,{name:"--parent",summary:"\u89AA\u30DA\u30FC\u30B8\u306E ID\uFF08\u7701\u7565\u6642\u306F\u6700\u4E0A\u4F4D\uFF09",takesValue:true,placeholder:"<\u30DA\u30FC\u30B8ID>"},WIKI_STATUS_FLAG,WIKI_TAG_FLAG],async prepare(input,ctx){noArgs(input,"twp wiki create");if(wikiTitle(input)===void 0)throw new UsageError("--title \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",WIKI_CREATE_USAGE);oneOf(input,"--status",WIKI_STATUSES);wikiTags(input);wikiParent(input,false);const content=await wikiContent(
52
- input,WIKI_CREATE_USAGE);if(content===void 0)throw new UsageError("\u672C\u6587\u3092 --content-file \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09",WIKI_CREATE_USAGE);return withResolved(input,{project:await ctx.projectId(input.flags.get("--project")),content})},plan(input){const parent=wikiParent(input,false);return{method:"POST",path:WIKI_PATH,body:{project_id:requireResolved(input,"project"),title:wikiTitle(input),content:requireResolved(input,
53
- "content"),...oneOf(input,"--status",WIKI_STATUSES)!==void 0?{status:oneOf(input,"--status",WIKI_STATUSES)}:{},...parent!==void 0?{parent_page_id:parent}:{},...wikiTags(input)!==void 0?{tags:wikiTags(input)}:{}}}},plannedNotes:input=>input.flags.has("--status")?[]:["--status \u3092\u7701\u3044\u305F\u306E\u3067\u4E0B\u66F8\u304D\uFF08draft\uFF09\u3067\u4F5C\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u306E\u65E2\u5B9A\uFF09\u3002"],summarize:body=>pick(pageFrom(body),WIKI_GET_COLUMNS),raw:pageFrom};
54
- async function previewVersion(input,ctx){const expected=positiveInteger(input.flags,"--if-version");if(expected===void 0)return{notes:[],warnings:[]};const id=singleId(input,"twp wiki update","\u30DA\u30FC\u30B8","twp wiki list");const current=pageFrom(await ctx.send({method:"GET",path:`${WIKI_PATH}/${encodeURIComponent(id)}`}))["version"];if(current!==expected){throw new ApiRejectedError(`\u30DA\u30FC\u30B8 ${id} \u306E\u7248\u304C ${String(current)} \u3067\u3059\uFF08--if-version ${expected}\uFF09\u3002\
55
- \u4ED6\u306E\u66F4\u65B0\u3068\u885D\u7A81\u3057\u305F\u306E\u3067\u4F55\u3082\u9001\u3063\u3066\u3044\u307E\u305B\u3093\u3002twp wiki get \u3067\u6700\u65B0\u306E\u672C\u6587\u3092\u8AAD\u307F\u3001\u53CD\u6620\u3057\u76F4\u3057\u3066\u304B\u3089 --if-version \u3092\u4ED8\u3051\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return{notes:[`\u7248 ${expected} \u3092\u78BA\u8A8D\u3057\u307E\u3057\u305F\uFF08\u7167\u5408\u304B\u3089\u9001\u4FE1\u307E\u3067\u306E\u9593\u306E\u66F4\u65B0\u306F\u9632\u3052\u307E\u305B\u3093\uFF09\u3002`],
56
- warnings:[]}}var wikiUpdate={name:"update",summary:`${WIKI_LABEL}\u3092\u66F4\u65B0\u3059\u308B\uFF08\u4EF6\u540D\u30FB\u672C\u6587\u30FB\u72B6\u614B\u30FB\u30BF\u30B0\uFF09`,usage:WIKI_UPDATE_USAGE,description:`${WIKI_WRITE_HELP}
54
+ CONTENT_FILE_FLAG,WIKI_CONTENT_FORMAT_FLAG,{name:"--parent",summary:"\u89AA\u30DA\u30FC\u30B8\u306E ID\uFF08\u7701\u7565\u6642\u306F\u6700\u4E0A\u4F4D\uFF09",takesValue:true,placeholder:"<\u30DA\u30FC\u30B8ID>"},WIKI_STATUS_FLAG,WIKI_TAG_FLAG],async prepare(input,ctx){noArgs(input,"twp wiki create");if(wikiTitle(input)===void 0)throw new UsageError("--title \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",WIKI_CREATE_USAGE);oneOf(input,"--status",WIKI_STATUSES);oneOf(input,"--content-form\
55
+ at",WIKI_CONTENT_FORMATS);wikiTags(input);wikiParent(input,false);const content=await wikiContent(input,WIKI_CREATE_USAGE);if(content===void 0)throw new UsageError("\u672C\u6587\u3092 --content-file \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09",WIKI_CREATE_USAGE);return withResolved(input,{project:await ctx.projectId(input.flags.get("--project")),content})},plan(input){const parent=wikiParent(input,false);const contentFormat=oneOf(input,"--co\
56
+ ntent-format",WIKI_CONTENT_FORMATS);return{method:"POST",path:WIKI_PATH,body:{project_id:requireResolved(input,"project"),title:wikiTitle(input),content:requireResolved(input,"content"),...contentFormat!==void 0?{content_format:contentFormat}:{},...oneOf(input,"--status",WIKI_STATUSES)!==void 0?{status:oneOf(input,"--status",WIKI_STATUSES)}:{},...parent!==void 0?{parent_page_id:parent}:{},...wikiTags(input)!==void 0?{tags:wikiTags(input)}:{}}}},plannedNotes:input=>[...input.flags.has("--status")?
57
+ []:["--status \u3092\u7701\u3044\u305F\u306E\u3067\u4E0B\u66F8\u304D\uFF08draft\uFF09\u3067\u4F5C\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u306E\u65E2\u5B9A\uFF09\u3002"],...input.flags.has("--content-format")?[]:["--content-format \u3092\u7701\u3044\u305F\u306E\u3067 HTML \u306E\u30DA\u30FC\u30B8\u3068\u3057\u3066\u4F5C\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u306E\u65E2\u5B9A\uFF09\u3002"]],summarize:body=>pick(pageFrom(body),WIKI_GET_COLUMNS),raw:pageFrom};async function previewVersion(input,ctx){
58
+ const expected=positiveInteger(input.flags,"--if-version");if(expected===void 0)return{notes:[],warnings:[]};const id=singleId(input,"twp wiki update","\u30DA\u30FC\u30B8","twp wiki list");const current=pageFrom(await ctx.send({method:"GET",path:`${WIKI_PATH}/${encodeURIComponent(id)}`}))["version"];if(current!==expected){throw new ApiRejectedError(`\u30DA\u30FC\u30B8 ${id} \u306E\u7248\u304C ${String(current)} \u3067\u3059\uFF08--if-version ${expected}\uFF09\u3002\u4ED6\u306E\u66F4\u65B0\u3068\u885D\u7A81\u3057\u305F\u306E\u3067\u4F55\u3082\u9001\u3063\u3066\u3044\u307E\u305B\u3093\u3002twp wiki get \u3067\u6700\u65B0\u306E\u672C\u6587\u3092\
59
+ \u8AAD\u307F\u3001\u53CD\u6620\u3057\u76F4\u3057\u3066\u304B\u3089 --if-version \u3092\u4ED8\u3051\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return{notes:[`\u7248 ${expected} \u3092\u78BA\u8A8D\u3057\u307E\u3057\u305F\uFF08\u7167\u5408\u304B\u3089\u9001\u4FE1\u307E\u3067\u306E\u9593\u306E\u66F4\u65B0\u306F\u9632\u3052\u307E\u305B\u3093\uFF09\u3002`],warnings:[]}}var wikiUpdate={name:"update",summary:`${WIKI_LABEL}\u3092\u66F4\u65B0\u3059\u308B\uFF08\u4EF6\u540D\u30FB\u672C\u6587\u30FB\u72B6\u614B\u30FB\u30BF\u30B0\uFF09`,
60
+ usage:WIKI_UPDATE_USAGE,description:`${WIKI_WRITE_HELP}
57
61
  \u6307\u5B9A\u3057\u305F\u9805\u76EE\u3060\u3051\u3092\u9001\u308A\u307E\u3059\u3002--tag \u306F\u30BF\u30B0\u3092\u307E\u308B\u3054\u3068\u7F6E\u304D\u63DB\u3048\u3001--clear-tags \u306F\u30BF\u30B0\u3092\u7A7A\u306B\u3057\u307E\u3059\u3002
58
62
  --if-version <\u7248> \u3092\u4ED8\u3051\u308B\u3068\u3001\u9001\u308B\u76F4\u524D\u306B\u30DA\u30FC\u30B8\u306E\u7248\uFF08twp wiki get \u306E version\uFF09\u3092\u7167\u5408\u3057\u3001\u9055\u3048\u3070\u4F55\u3082\u9001\u3089\u305A\u306B\u7D42\u4E86\u30B3\u30FC\u30C9 3 \u3067\u6B62\u307E\u308A\u307E\u3059\u3002
59
63
  \u30B5\u30FC\u30D0\u81EA\u4F53\u306F\u7248\u3092\u898B\u305A\u306B\u4E0A\u66F8\u304D\u3059\u308B\u306E\u3067\u3001\u7167\u5408\u3068\u9001\u4FE1\u306E\u9593\u306E\u4ED6\u4EBA\u306E\u66F4\u65B0\u307E\u3067\u306F\u9632\u3052\u307E\u305B\u3093\u3002\u7248\u304C\u4E0A\u304C\u308B\u306E\u306F\u672C\u6587\u304B\u4EF6\u540D\u3092\u5909\u3048\u305F\u3068\u304D\u3060\u3051\u3067\u3059\u3002
60
64
  \u89AA\u30DA\u30FC\u30B8\u306E\u4ED8\u3051\u66FF\u3048\u306F twp wiki move \u3067\u3059\u3002
61
65
 
62
66
  \u4F8B:
63
- twp wiki update 0f8b2c6e-... --content-file notes.html --if-version 3`,flags:[{name:"--title",summary:`\u4EF6\u540D\uFF08${WIKI_TITLE_MAX_CHARS}\u6587\u5B57\u4EE5\u5185\uFF09`,takesValue:true,placeholder:"<\u4EF6\u540D>"},CONTENT_FILE_FLAG,WIKI_STATUS_FLAG,WIKI_TAG_FLAG,{name:"--clear-tags",summary:"\u30BF\u30B0\u3092\u7A7A\u306B\u3059\u308B",takesValue:false},{name:"--if-version",summary:"\u9001\u308B\u76F4\u524D\u306B\u7167\u5408\u3059\u308B\u7248\uFF08\u9055\u3048\u3070\u9001\u3089\u306A\u3044\uFF09",
64
- takesValue:true,placeholder:"<\u7248>"}],async prepare(input){singleId(input,"twp wiki update","\u30DA\u30FC\u30B8","twp wiki list");const title=wikiTitle(input);const status=oneOf(input,"--status",WIKI_STATUSES);const tags=wikiTags(input);positiveInteger(input.flags,"--if-version");const content=await wikiContent(input,WIKI_UPDATE_USAGE);if(title===void 0&&status===void 0&&tags===void 0&&content===void 0){throw new UsageError("\u66F4\u65B0\u3059\u308B\u9805\u76EE\u304C\u3042\u308A\u307E\u305B\u3093",
65
- `--title / --content-file / --status / --tag / --clear-tags \u306E\u3069\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
66
- ${WIKI_UPDATE_USAGE}`)}return content===void 0?input:withResolved(input,{content})},preview:previewVersion,plan(input){const id=singleId(input,"twp wiki update","\u30DA\u30FC\u30B8","twp wiki list");const title=wikiTitle(input);const status=oneOf(input,"--status",WIKI_STATUSES);const tags=wikiTags(input);const content=input.resolved?.["content"];return{method:"PUT",path:`${WIKI_PATH}/${encodeURIComponent(id)}`,body:{...title!==void 0?{title}:{},...content!==void 0?{content}:{},...status!==void 0?
67
- {status}:{},...tags!==void 0?{tags}:{}}}},summarize:body=>pick(pageFrom(body),WIKI_GET_COLUMNS),raw:pageFrom};var wikiMove={name:"move",summary:`${WIKI_LABEL}\u306E\u89AA\u30DA\u30FC\u30B8\u3092\u4ED8\u3051\u66FF\u3048\u308B\uFF08root \u3067\u6700\u4E0A\u4F4D\u3078\uFF09`,usage:WIKI_MOVE_USAGE,description:`--parent ${ROOT_PARENT} \u3067\u6700\u4E0A\u4F4D\u3078\u79FB\u3057\u307E\u3059\u3002\u81EA\u5206\u81EA\u8EAB\u3084\u81EA\u5206\u306E\u5B50\u5B6B\u306E\u4E0B\u3078\u306F\u79FB\u305B\u307E\u305B\u3093\uFF08\u30B5\u30FC\u30D0\u304C 422 \u3067\u65AD\u308A\u307E\u3059\uFF09\u3002
67
+ twp wiki update 0f8b2c6e-... --content-file notes.html --if-version 3`,flags:[{name:"--title",summary:`\u4EF6\u540D\uFF08${WIKI_TITLE_MAX_CHARS}\u6587\u5B57\u4EE5\u5185\uFF09`,takesValue:true,placeholder:"<\u4EF6\u540D>"},CONTENT_FILE_FLAG,WIKI_CONTENT_FORMAT_FLAG,WIKI_STATUS_FLAG,WIKI_TAG_FLAG,{name:"--clear-tags",summary:"\u30BF\u30B0\u3092\u7A7A\u306B\u3059\u308B",takesValue:false},{name:"--if-version",summary:"\u9001\u308B\u76F4\u524D\u306B\u7167\u5408\u3059\u308B\u7248\uFF08\u9055\u3048\u3070\u9001\u3089\u306A\u3044\uFF09",
68
+ takesValue:true,placeholder:"<\u7248>"}],async prepare(input){singleId(input,"twp wiki update","\u30DA\u30FC\u30B8","twp wiki list");const title=wikiTitle(input);const status=oneOf(input,"--status",WIKI_STATUSES);const contentFormat=oneOf(input,"--content-format",WIKI_CONTENT_FORMATS);const tags=wikiTags(input);positiveInteger(input.flags,"--if-version");const content=await wikiContent(input,WIKI_UPDATE_USAGE);if(title===void 0&&status===void 0&&tags===void 0&&content===void 0&&contentFormat===void 0){
69
+ throw new UsageError("\u66F4\u65B0\u3059\u308B\u9805\u76EE\u304C\u3042\u308A\u307E\u305B\u3093",`--title / --content-file / --content-format / --status / --tag / --clear-tags \u306E\u3069\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
70
+ ${WIKI_UPDATE_USAGE}`)}return content===void 0?input:withResolved(input,{content})},preview:previewVersion,plan(input){const id=singleId(input,"twp wiki update","\u30DA\u30FC\u30B8","twp wiki list");const title=wikiTitle(input);const status=oneOf(input,"--status",WIKI_STATUSES);const tags=wikiTags(input);const content=input.resolved?.["content"];const contentFormat=oneOf(input,"--content-format",WIKI_CONTENT_FORMATS);return{method:"PUT",path:`${WIKI_PATH}/${encodeURIComponent(id)}`,body:{...title!==
71
+ void 0?{title}:{},...content!==void 0?{content}:{},...contentFormat!==void 0?{content_format:contentFormat}:{},...status!==void 0?{status}:{},...tags!==void 0?{tags}:{}}}},summarize:body=>pick(pageFrom(body),WIKI_GET_COLUMNS),raw:pageFrom};var wikiMove={name:"move",summary:`${WIKI_LABEL}\u306E\u89AA\u30DA\u30FC\u30B8\u3092\u4ED8\u3051\u66FF\u3048\u308B\uFF08root \u3067\u6700\u4E0A\u4F4D\u3078\uFF09`,usage:WIKI_MOVE_USAGE,description:`--parent ${ROOT_PARENT} \u3067\u6700\u4E0A\u4F4D\u3078\u79FB\u3057\u307E\u3059\u3002\u81EA\u5206\u81EA\u8EAB\u3084\u81EA\u5206\u306E\u5B50\u5B6B\u306E\u4E0B\u3078\u306F\u79FB\u305B\u307E\u305B\u3093\uFF08\u30B5\u30FC\u30D0\u304C 422\
72
+ \u3067\u65AD\u308A\u307E\u3059\uFF09\u3002
68
73
  --sort-order \u306F\u5144\u5F1F\u306E\u4E2D\u3067\u306E\u8868\u793A\u9806\uFF080 \u4EE5\u4E0A\u306E\u6574\u6570\uFF09\u3067\u3059\u3002--sort-order \u3060\u3051\u306A\u3089\u89AA\u306F\u305D\u306E\u307E\u307E\u3067\u4E26\u3079\u66FF\u3048\u307E\u3059\u3002`,flags:[{name:"--parent",summary:`\u79FB\u52D5\u5148\u306E\u89AA\u30DA\u30FC\u30B8\u306E ID\uFF08${ROOT_PARENT} \u3067\u6700\u4E0A\u4F4D\uFF09`,takesValue:true,placeholder:"<\u30DA\u30FC\u30B8ID>|root"},{name:"--sort-order",summary:"\u8868\u793A\u9806\uFF080 \u4EE5\u4E0A\u306E\u6574\
69
74
  \u6570\uFF09",takesValue:true,placeholder:"<\u9806>"}],plan(input){const id=singleId(input,"twp wiki move","\u30DA\u30FC\u30B8","twp wiki list");const parent=wikiParent(input,true);const sortRaw=nonEmpty(input.flags,"--sort-order");let sortOrder;if(sortRaw!==void 0){sortOrder=/^\d+$/.test(sortRaw.trim())?Number(sortRaw.trim()):Number.NaN;if(!Number.isSafeInteger(sortOrder))throw new UsageError(`--sort-order \u306F 0 \u4EE5\u4E0A\u306E\u6574\u6570\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: ${sortRaw}`,
70
75
  WIKI_MOVE_USAGE)}if(parent===void 0&&sortOrder===void 0){throw new UsageError(`--parent \u304B --sort-order \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u6700\u4E0A\u4F4D\u3078\u79FB\u3059\u306A\u3089 --parent ${ROOT_PARENT}\uFF09`,WIKI_MOVE_USAGE)}return{method:"PUT",path:`${WIKI_PATH}/${encodeURIComponent(id)}/move`,body:{...parent!==void 0?{parent_page_id:parent}:{},...sortOrder!==void 0?{sort_order:sortOrder}:{}}}},summarize:body=>pick(pageFrom(body),WIKI_GET_COLUMNS),raw:pageFrom};
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{applyInstancePlan,createInstancePlan,formColumns,writtenInstance}from"./chunk-Z2I5BGXV.js";import"./chunk-FBBKRVVS.js";import"./chunk-AYE4DF6J.js";import"./chunk-G6RLNOIZ.js";import{USER_REF_FLAG,USER_REF_HELP,assertMonthsOpen,userPath}from"./chunk-ZJW3GBE5.js";import{dateFlag}from"./chunk-EXT4AIDF.js";import"./chunk-SCU74Z4U.js";import"./chunk-JJSBBWJ5.js";import"./chunk-MI6HVYR2.js";import"./chunk-RX5HWI4L.js";import"./chunk-6LSQCOCJ.js";
4
- import"./chunk-ZSPWHEBL.js";import{UUID_RE}from"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import{NotLoggedInError,SessionExpiredError}from"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";
3
+ import{applyInstancePlan,createInstancePlan,formColumns,writtenInstance}from"./chunk-WBUYPDJH.js";import"./chunk-GLKZ4ZZY.js";import"./chunk-DAOC7VRM.js";import"./chunk-WMEGP2BT.js";import{USER_REF_FLAG,USER_REF_HELP,assertMonthsOpen,userPath}from"./chunk-7EJOKJLV.js";import{dateFlag}from"./chunk-EXT4AIDF.js";import"./chunk-XGYOJHZC.js";import"./chunk-JJSBBWJ5.js";import"./chunk-MI6HVYR2.js";import"./chunk-RX5HWI4L.js";import"./chunk-6LSQCOCJ.js";
4
+ import"./chunk-HNG6MF26.js";import{UUID_RE}from"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import{NotLoggedInError,SessionExpiredError}from"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";
5
5
  import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var LIST_USAGE="twp leave list";var GRANTS_USAGE="twp leave grants [<\u30E6\u30FC\u30B6\u30FC> | --user <\u30E6\u30FC\u30B6\u30FC>]";var USAGE_COLUMNS=["used_date","type_label","days","hours","status_label","reason","is_post_application","id"];var GRANT_COLUMNS=["grant_date","type_label","days","remaining_days","remaining_hours","expiry_date","status_label","reason","id"];function noArgs(input,operation){if(input.args.length>0){throw new UsageError(`${operation} \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D7\u3051\u53D6\u308A\u307E\u305B\u3093: ${input.
6
6
  args.join(" ")}`,`twp leave ${operation} help`)}}function summaryBody(body){if(!isRecord(body)||!isRecord(body["summary"])){throw new ApiResponseError("\u6709\u7D66\u30B5\u30DE\u30EA\u306E\u5FDC\u7B54\u306B summary \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}return body}function usagesBody(body){if(!isRecord(body)||!Array.isArray(body["usages"])){throw new ApiResponseError("\u6709\u7D66\u306E\u53D6\u5F97\u5C65\u6B74\u306E\u5FDC\u7B54\u306B usages \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
7
7
  return body}function grantsBody(body){if(!isRecord(body)||!Array.isArray(body["grants"])){throw new ApiResponseError("\u6709\u7D66\u306E\u4ED8\u4E0E\u5C65\u6B74\u306E\u5FDC\u7B54\u306B grants \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}return body}function listBody(body){const combined=isRecord(body)?body:{};return{summary:summaryBody(combined["summary"]),usages:usagesBody(combined["usages"])}}async function list(input,ctx){
@@ -0,0 +1,56 @@
1
+ import { createRequire as __twpCreateRequire } from 'node:module';
2
+ const require = __twpCreateRequire(import.meta.url);
3
+ import{CONCURRENCY,DEFAULT_INACTIVE_DAYS,LOGIN_HISTORY_RETENTION_DAYS,daysBetween,lastLogin,lastLoginText,mapPool,pacedSender,primaryAssignment,recentlyHired,spreadsheetSafe,userDetail}from"./chunk-VIWQMDGG.js";import"./chunk-QLENN5DD.js";import{positiveInteger,shellQuote}from"./chunk-MI6HVYR2.js";import{DEPARTMENTS_PATH}from"./chunk-HNG6MF26.js";import"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,
4
+ withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{isRecord}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var LICENSE_FEATURE_NAMES={content_management:"\u30B3\u30F3\u30C6\u30F3\u30C4\u7BA1\u7406",inquiry:"\u554F\u3044\u5408\u308F\u305B\u7BA1\u7406",workflow:"\u30EF\u30FC\u30AF\u30D5\u30ED\u30FC",hearing:"\u30D2\u30A2\u30EA\u30F3\u30B0",task_management:"\u30BF\u30B9\u30AF\u7BA1\u7406",sales:"\u53D6\u5F15\u7BA1\u7406",attendance:"\u52E4\u6020\u7BA1\u7406",report:"\u30EC\u30DD\u30FC\u30C8",hr_management:"\u4EBA\u6750\u7BA1\u7406",learning:"\u5B66\u7FD2\u7BA1\u7406",expense:"\u7D4C\u8CBB\u7BA1\u7406",test:"\
5
+ \u30B7\u30CA\u30EA\u30AA\u30C6\u30B9\u30C8\u7BA1\u7406",chat:"\u30C1\u30E3\u30C3\u30C8",customer:"\u9867\u5BA2\u7BA1\u7406",survey:"\u30A2\u30F3\u30B1\u30FC\u30C8",organization_survey:"\u7D44\u7E54\u30B5\u30FC\u30D9\u30A4",feedback:"\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF",notes:"\u30CE\u30FC\u30C8",wiki_management:"Wiki",meeting_minutes:"\u8B70\u4E8B\u9332",equipment_management:"\u5099\u54C1\u7BA1\u7406",floor_map:"\u30D5\u30ED\u30A2\u30DE\u30C3\u30D7"};var LICENSES_PATH="/api/v2/licenses";var FORBIDDEN="\
6
+ \u7D44\u7E54\u7BA1\u7406\u8005\u306E\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\u3002twp license \u306F\u30C6\u30CA\u30F3\u30C8\u306E\u7D44\u7E54\u7BA1\u7406\u8005\u3060\u3051\u304C\u4F7F\u3048\u307E\u3059";var LIST_USAGE="twp license list";var ASSIGNMENTS_USAGE="twp license assignments <\u6A5F\u80FD\u30B3\u30FC\u30C9|\u6A5F\u80FD\u540D> | --all-features [--inactive-days <\u65E5\u6570>]";var ASSIGNMENTS_HELP="twp license assignments help";var RELEASE_COMMAND_PENDING="twp user permission set \u306F\u4ECA\u5F8C\u306E\u7248\
7
+ \u3067\u8FFD\u52A0\u3055\u308C\u308B\u30B3\u30DE\u30F3\u30C9\u3067\u3059\u3002\u307E\u3060\u7121\u3044\u7248\u3067\u306F";var DEPARTMENT_LIMIT=1e3;function featureName(code){return LICENSE_FEATURE_NAMES[code]??code}function featureSegment(code){if(!/^[a-z][a-z0-9_]*$/.test(code)){throw new ApiResponseError(`\u6A5F\u80FD\u30B3\u30FC\u30C9\u3092\u30D1\u30B9\u306B\u4F7F\u3048\u307E\u305B\u3093: ${code}\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return code}
8
+ function resolveFeature(value){const trimmed=value.trim();if(Object.hasOwn(LICENSE_FEATURE_NAMES,trimmed))return trimmed;const byName=Object.entries(LICENSE_FEATURE_NAMES).find(([,name])=>name===trimmed);if(byName!==void 0)return byName[0];if(/^[a-z][a-z0-9_]*$/.test(trimmed))return trimmed;throw new UsageError(`\u6A5F\u80FD\u300C${value}\u300D\u304C\u5206\u304B\u308A\u307E\u305B\u3093`,`\u6A5F\u80FD\u30B3\u30FC\u30C9\uFF08attendance \u7B49\uFF09\u304B\u753B\u9762\u306E\u8868\u793A\u540D\uFF08\u52E4\u6020\u7BA1\u7406 \u7B49\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4E00\u89A7\u306F twp license list \u3067\u898B\u3089\u308C\u307E\u3059\u3002`)}
9
+ function readLicenses(body){const licenses=isRecord(body)?body["licenses"]:void 0;if(Array.isArray(licenses)&&licenses.length===0)return[];if(!isRecord(licenses))throw new ApiResponseError("\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u5FDC\u7B54\u306B licenses \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");const num=v=>typeof v==="number"?v:null;return Object.entries(licenses).map(([code,usage])=>[code,isRecord(usage)?{used:num(
10
+ usage["used"]),total:num(usage["total"]),available:num(usage["available"]),free:num(usage["free"])}:{used:null,total:null,available:null,free:null}])}async function seatDetail(send,code){const body=await send({method:"GET",path:`${LICENSES_PATH}/${featureSegment(code)}/seats`});if(!isRecord(body)||body["feature_code"]!==code){throw new ApiResponseError(`\u30B7\u30FC\u30C8\u306E\u5FDC\u7B54\u304C ${code} \u306E\u3082\u306E\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}
11
+ return body}function listBody(body){if(!isRecord(body)||!Array.isArray(body["rows"]))throw new ApiResponseError("\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u4E00\u89A7\u3092\u7D44\u307F\u7ACB\u3066\u3089\u308C\u307E\u305B\u3093\u3067\u3057\u305F\uFF08\u5185\u90E8\u30A8\u30E9\u30FC\uFF09\u3002");return body["rows"]}function scheduledText(row){if(row.scheduled_quantity===null)return null;return`${row.scheduled_effective_date??"\u65E5\u4ED8\u4E0D\u660E"} \u306B ${row.scheduled_quantity} \u30B7\u30FC\u30C8\u3078\u524A\u6E1B`}
12
+ var FINDING_LABEL={user_missing:"\u30E6\u30FC\u30B6\u30FC\u304C\u898B\u3064\u304B\u3089\u306A\u3044",disabled:"\u5931\u52B9\u6E08\u307F\u306A\u306E\u306B\u5272\u5F53\u304C\u6B8B\u3063\u3066\u3044\u308B",permission_none:"\u6A5F\u80FD\u6A29\u9650\u304C none \u306A\u306E\u306B\u5272\u5F53\u304C\u6B8B\u3063\u3066\u3044\u308B",inactive:"\u9577\u671F\u9593\u30ED\u30B0\u30A4\u30F3\u306E\u8A18\u9332\u304C\u7121\u3044"};function str(value){return typeof value==="string"&&value!==""?value:null}function releaseCommand(userId,code){
13
+ return`twp user permission set ${shellQuote(userId)} --feature ${shellQuote(code)} --level none`}function judge(row,inactiveDays,now){const findings=[];const disabled=row.auth_type==="disabled";if(disabled)findings.push("disabled");if(row.current_level==="none")findings.push("permission_none");if(!disabled&&row.last_login_status!=="sso_not_recorded"&&row.last_login_status!=="not_checked"&&!recentlyHired(row.hire_date,inactiveDays,now)&&(row.last_login_at===null||daysBetween(row.last_login_at,now)>
14
+ inactiveDays)){findings.push("inactive")}return findings}async function departmentNames(send,ctx){const body=await send({method:"GET",path:DEPARTMENTS_PATH,query:{limit:DEPARTMENT_LIMIT}});const list=isRecord(body)?body["list"]:void 0;if(!Array.isArray(list))throw new ApiResponseError("\u90E8\u7F72\u4E00\u89A7\u306E\u5FDC\u7B54\u306B list \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");const map=new Map;for(const d of list){
15
+ if(isRecord(d)&&typeof d["id"]==="string"&&typeof d["name"]==="string")map.set(d["id"],d["name"])}if(list.length>=DEPARTMENT_LIMIT){ctx.warn(`\u90E8\u7F72\u304C ${DEPARTMENT_LIMIT} \u4EF6\u4EE5\u4E0A\u3042\u308B\u305F\u3081\u3001\u4E00\u90E8\u306E department_name \u306F\u90E8\u7F72 ID \u306E\u307E\u307E\u51FA\u307E\u3059\u3002`)}return map}async function assignmentsOf(send,code){const body=await send(assignmentsPlan(code));const list=isRecord(body)?body["assignments"]:void 0;if(!Array.isArray(list))
16
+ throw new ApiResponseError(`${code} \u306E\u5272\u5F53\u4E00\u89A7\u306E\u5FDC\u7B54\u306B assignments \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`);return list.filter(a=>isRecord(a)&&typeof a["user_id"]==="string")}function assignmentsPlan(code){return{method:"GET",path:`${LICENSES_PATH}/${featureSegment(code)}/assignments`}}async function userFacts(send,userId){let detail;try{detail=await userDetail(send,userId)}catch(err){
17
+ if(err instanceof ApiError&&err.status===404){return{detail:null,departmentId:null,lastLoginAt:null,loginStatus:"not_checked"}}throw err}const authType=str(detail["auth_type"]);const readLogin=authType!=="disabled"&&authType!=="oauth";const[assignment,loginAt]=await Promise.all([primaryAssignment(send,userId),readLogin?lastLogin(send,userId):Promise.resolve(null)]);const loginStatus=authType==="disabled"?"not_checked":authType==="oauth"?"sso_not_recorded":loginAt===null?"not_recorded":"recorded";
18
+ return{detail,departmentId:assignment.departmentId,lastLoginAt:loginAt,loginStatus}}function assignmentsBody(body){if(!isRecord(body)||!Array.isArray(body["rows"]))throw new ApiResponseError("\u5272\u5F53\u306E\u4E00\u89A7\u3092\u7D44\u307F\u7ACB\u3066\u3089\u308C\u307E\u305B\u3093\u3067\u3057\u305F\uFF08\u5185\u90E8\u30A8\u30E9\u30FC\uFF09\u3002");return body}async function collectAssignments(input,ctx){const send=pacedSender(ctx);const inactiveDays=Number(requireResolved(input,"inactiveDays"));
19
+ const all=input.flags.has("--all-features");const codes=all?readLicenses(await send({method:"GET",path:LICENSES_PATH})).map(([code])=>code):[requireResolved(input,"feature")];const pairs=[];for(const code of codes){for(const assignment of await assignmentsOf(send,code))pairs.push({code,assignment})}const userIds=[...new Set(pairs.map(p=>p.assignment["user_id"]))];if(userIds.length>0){ctx.warn(`${userIds.length} \u4EBA\u306E\u8A73\u7D30\u30FB\u6240\u5C5E\u30FB\u6700\u7D42\u30ED\u30B0\u30A4\u30F3\u3092\u8AAD\u307F\u307E\u3059\uFF08\u6700\u5927 ${userIds.
20
+ length*3} \u5F80\u5FA9\uFF09\u3002`)}const departments=userIds.length>0?await departmentNames(send,ctx):new Map;const facts=new Map;const results=await mapPool(userIds,CONCURRENCY,id=>userFacts(send,id));userIds.forEach((id,i)=>facts.set(id,results[i]));const now=new Date;const rows=pairs.map(({code,assignment})=>{const userId=assignment["user_id"];const f=facts.get(userId);const detail=f.detail;const base={feature_code:code,feature_name:featureName(code),user_id:userId,assigned_at:str(assignment["\
21
+ assigned_at"]),assigned_level:str(assignment["permission_level"])};if(detail===null){return{...base,user_name:null,email:null,employee_code:null,department_name:null,current_level:null,auth_type:null,last_login_at:null,last_login_status:"not_checked",findings:["user_missing"],release_command:null}}const row={...base,user_name:str(detail["user_name"]),email:str(detail["email"]),employee_code:str(detail["employee_code"]),department_name:f.departmentId===null?null:departments.get(f.departmentId)??f.
22
+ departmentId,current_level:str(detail[`${code}_level`]),auth_type:str(detail["auth_type"]),last_login_at:f.lastLoginAt,last_login_status:f.loginStatus,release_command:releaseCommand(userId,code)};return{...row,findings:judge({...row,hire_date:str(detail["hire_date"])},inactiveDays,now)}});return{rows,features:codes.length,inactiveDays}}var ASSIGNMENT_COLUMNS=["feature_name","user_name","email","employee_code","department_name","assigned_at","auth_type","last_login_at","findings","release_command"];
23
+ var licenseDomain={name:"license",summary:"\u30B7\u30FC\u30C8\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u68DA\u5378\uFF08\u6A5F\u80FD\u3054\u3068\u306E\u67A0\u30FB\u4F7F\u7528\u6570\u30FB\u5272\u5F53\u8005\u3002\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u307F\uFF09",operations:[{name:"list",summary:"\u6A5F\u80FD\u3054\u3068\u306E\u67A0\u6570\u30FB\u4F7F\u7528\u6570\u30FB\u7A7A\u304D\u30FB\u524A\u6E1B\u4E88\u7D04\u3092\u8868\u793A\u3059\u308B\uFF08\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u307F\uFF09",usage:LIST_USAGE,
24
+ description:"\u30C6\u30CA\u30F3\u30C8\u3067\u4F7F\u3048\u308B\u6A5F\u80FD\uFF08\u6A5F\u80FD\u304C\u6709\u52B9\u304B\u3001\u30B7\u30FC\u30C8\u3092\u8CFC\u5165\u6E08\u307F\u306E\u6A5F\u80FD\uFF09\u3054\u3068\u306B1\u884C\u51FA\u3057\u307E\u3059\u3002\u753B\u9762\u306E\u300C\u30E9\u30A4\u30BB\u30F3\u30B9\u300D\u3068\u540C\u3058\u5024\u3067\u3059\u3002\n\u5217: feature_name\uFF08\u8868\u793A\u540D\uFF09/ feature_code / total\uFF08\u67A0\u6570\uFF09/ used\uFF08\u4F7F\u7528\u6570\uFF09/ available\uFF08\u7A7A\u304D\uFF09/\nfree_seats\uFF08\u7121\u6599\u67A0\uFF09/ purchased_seats\uFF08\u8CFC\u5165\u6E08\u307F\u30FBStripe \u306E\u5951\u7D04\u4E2D\u306E\u30B7\u30FC\u30C8\uFF09/ scheduled_reduction\uFF08\u524A\u6E1B\u4E88\u7D04\u304C\u3042\u308C\u3070\u767A\u52B9\u65E5\u3068\u524A\u6E1B\u5F8C\u306E\u30B7\u30FC\u30C8\u6570\uFF09\u3002\n1\u6A5F\u80FD\u306B\u3064\u304D1\u56DE\u3001\u30B7\u30FC\u30C8\u306E\u8A73\u7D30\u3092 GET \u3057\u307E\u3059\uFF08\u8AAD\u307F\u53D6\u308A\u3060\u3051\uFF09\u3002\n\u30B7\u30FC\u30C8\u306E\u8CFC\u5165\u30FB\u524A\u6E1B\u30FB\u8ACB\u6C42\u9593\u9694\u306E\u5909\u66F4\uFF08\u8AB2\u91D1\u3092\u4F34\u3046\u64CD\u4F5C\uFF09\u306F CLI \u304B\u3089\u306F\u3067\u304D\u307E\u305B\u3093\u3002\u753B\u9762\u304B\u3089\u884C\u3063\u3066\u304F\u3060\u3055\u3044\u3002",
25
+ forbidden:FORBIDDEN,flags:[],plan(input){if(input.args.length>0)throw new UsageError(`list \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D7\u3051\u53D6\u308A\u307E\u305B\u3093: ${input.args.join(" ")}`,LIST_USAGE);return{method:"GET",path:LICENSES_PATH}},plannedNotes:()=>["\u3053\u306E\u3042\u3068\u6A5F\u80FD\u3054\u3068\u306B\u30B7\u30FC\u30C8\u306E\u8A73\u7D30\uFF08\u524A\u6E1B\u4E88\u7D04\uFF09\u3092 GET \u3057\u307E\u3059\uFF08\u8AAD\u307F\u53D6\u308A\u3060\u3051\uFF09\u3002"],async execute(_input,ctx){
26
+ const send=pacedSender(ctx);const usage=readLicenses(await send({method:"GET",path:LICENSES_PATH}));const rows=await mapPool(usage,CONCURRENCY,async([code,u])=>{const seats=await seatDetail(send,code);const sub=isRecord(seats["subscription"])?seats["subscription"]:{};const num=v=>typeof v==="number"?v:null;const purchased=typeof sub["stripe_subscription_id"]==="string"&&sub["stripe_subscription_id"]!==""?num(sub["quantity"])??0:0;return{feature_code:code,feature_name:featureName(code),total:u.total,
27
+ used:u.used,available:u.available,free_seats:u.free,purchased_seats:purchased,scheduled_quantity:num(sub["scheduled_quantity"]),scheduled_effective_date:str(sub["scheduled_effective_date"])}});return{rows}},summarize:body=>listBody(body).map(row=>({feature_name:row.feature_name,feature_code:row.feature_code,total:row.total,used:row.used,available:row.available,free_seats:row.free_seats,purchased_seats:row.purchased_seats,scheduled_reduction:spreadsheetSafe(scheduledText(row))})),raw:body=>listBody(
28
+ body),notes(body){const rows=listBody(body);return rows.length===0?["\u3053\u306E\u30C6\u30CA\u30F3\u30C8\u3067\u4F7F\u3048\u308B\u30B7\u30FC\u30C8\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u6A5F\u80FD\u306F\u3042\u308A\u307E\u305B\u3093\u3002"]:[]}},{name:"assignments",summary:"\u6A5F\u80FD\u306E\u5272\u5F53\u8005\u3092\u68DA\u5378\u3059\u308B\uFF08\u6C0F\u540D\u30FB\u6240\u5C5E\u30FB\u8A8D\u8A3C\u30BF\u30A4\u30D7\u30FB\u6700\u7D42\u30ED\u30B0\u30A4\u30F3\u30FB\u5224\u5B9A\u4ED8\u304D\u3002\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u307F\uFF09",
29
+ usage:ASSIGNMENTS_USAGE,description:`\u6A5F\u80FD\u306B\u5272\u308A\u5F53\u3066\u305F\u30E9\u30A4\u30BB\u30F3\u30B9\u30921\u4EBA1\u884C\u3067\u51FA\u3057\u307E\u3059\uFF08--all-features \u3067\u5168\u6A5F\u80FD\u3002--all \u306F\u4E00\u89A7\u306E\u5168\u30DA\u30FC\u30B8\u53D6\u5F97\u306B\u4E88\u7D04\u3055\u308C\u3066\u3044\u308B\u305F\u3081\u5225\u540D\uFF09\u3002\u6A5F\u80FD\u306F\u30B3\u30FC\u30C9\uFF08attendance\uFF09\u304B\u8868\u793A\u540D\uFF08\u52E4\u6020\u7BA1\u7406\uFF09\u3067\u6307\u5B9A\u3057\u307E\u3059\u3002
30
+ \u5217: feature_name / user_name / email / employee_code / department_name\uFF08\u4E3B\u6240\u5C5E\uFF09/ assigned_at\uFF08\u5272\u5F53\u65E5\uFF09/
31
+ auth_type / last_login_at / findings\uFF08\u5224\u5B9A\uFF09/ release_command\uFF08\u89E3\u9664\u3059\u308B\u30B3\u30DE\u30F3\u30C9\u6848\uFF09\u3002
32
+ --output json \u3067\u306F assigned_level\uFF08\u5272\u5F53\u6642\u306E\u6A29\u9650\uFF09\u30FBcurrent_level\uFF08\u3044\u307E\u306E\u6A5F\u80FD\u6A29\u9650\uFF09\u30FB\u5224\u5B9A\u30B3\u30FC\u30C9\u3082\u51FA\u307E\u3059\u3002
33
+
34
+ \u5224\u5B9A\uFF08findings\uFF09:
35
+ disabled \u5931\u52B9\u6E08\u307F\uFF08\u8A8D\u8A3C\u30BF\u30A4\u30D7 disabled\uFF09\u306A\u306E\u306B\u5272\u5F53\u304C\u6B8B\u3063\u3066\u3044\u308B
36
+ permission_none \u6A5F\u80FD\u6A29\u9650\u304C none \u306A\u306E\u306B\u5272\u5F53\u304C\u6B8B\u3063\u3066\u3044\u308B\uFF08\u6A29\u9650\u3068\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u4E0D\u6574\u5408\uFF09
37
+ inactive --inactive-days \u65E5\uFF08\u65E2\u5B9A ${DEFAULT_INACTIVE_DAYS}\u30FB\u6700\u5927 ${LOGIN_HISTORY_RETENTION_DAYS}\uFF09\u30ED\u30B0\u30A4\u30F3\u306E\u8A18\u9332\u304C\u7121\u3044
38
+ \uFF08\u5165\u793E\u65E5\u304C\u305D\u306E\u65E5\u6570\u4EE5\u5185\u306E\u4EBA\u3068\u3001\u8A8D\u8A3C\u30BF\u30A4\u30D7 oauth \u306E\u4EBA\u306F\u5224\u5B9A\u3057\u307E\u305B\u3093\uFF09
39
+ user_missing \u5272\u5F53\u306F\u3042\u308B\u304C\u30E6\u30FC\u30B6\u30FC\u304C\u898B\u3064\u304B\u3089\u306A\u3044\uFF08release_command \u306F\u51FA\u3057\u307E\u305B\u3093\u3002\u753B\u9762\u306E\u30E9\u30A4\u30BB\u30F3\u30B9\u7BA1\u7406\u304B\u3089\u5916\u3057\u3066\u304F\u3060\u3055\u3044\uFF09
40
+
41
+ \u6700\u7D42\u30ED\u30B0\u30A4\u30F3\u306E\u6CE8\u610F\uFF08twp user export \u3068\u540C\u3058\uFF09:
42
+ - \u30ED\u30B0\u30A4\u30F3\u5C65\u6B74\u306F${LOGIN_HISTORY_RETENTION_DAYS}\u65E5\u3067\u6D88\u3048\u307E\u3059\u3002\u300C\u8A18\u9332\u306A\u3057\u300D\u306F\u4E00\u5EA6\u3082\u30ED\u30B0\u30A4\u30F3\u3057\u3066\u3044\u306A\u3044\u3001\u3068\u3044\u3046\u610F\u5473\u3067\u306F\u3042\u308A\u307E\u305B\u3093
43
+ - Google / Microsoft \u306E SSO \u3067\u306E\u30ED\u30B0\u30A4\u30F3\u306F\u8A18\u9332\u3055\u308C\u307E\u305B\u3093\u3002oauth \u306E\u4EBA\u306F\u300C\u5224\u5B9A\u4E0D\u80FD\u300D\u3068\u51FA\u3057\u307E\u3059\u3002
44
+ all \u306E\u4EBA\u304C SSO \u3060\u3051\u3067\u4F7F\u3063\u3066\u3044\u308B\u5834\u5408\u3082\u8A18\u9332\u306F\u6B8B\u3089\u306A\u3044\u306E\u3067\u3001inactive \u306F\u5916\u3059\u524D\u306B\u672C\u4EBA\u306B\u78BA\u304B\u3081\u3066\u304F\u3060\u3055\u3044
45
+
46
+ release_command \u306E ${RELEASE_COMMAND_PENDING}\u3001
47
+ \u753B\u9762\u306E\u300C\u7D44\u7E54\u7BA1\u7406 > \u30E6\u30FC\u30B6\u30FC\u300D\u304B\u3089\u8A72\u5F53\u6A5F\u80FD\u306E\u6A29\u9650\u3092\u300C\u306A\u3057\u300D\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002
48
+ --output tsv \u3067\u306F\u3001= + - @ \u3067\u59CB\u307E\u308B\u5024\u306E\u5148\u982D\u306B ' \u3092\u4ED8\u3051\u3066\u3001\u8868\u8A08\u7B97\u30BD\u30D5\u30C8\u304C\u5F0F\u3068\u3057\u3066\u8AAD\u307E\u306A\u3044\u3088\u3046\u306B\u3057\u307E\u3059\u3002
49
+ 1\u4EBA\u3042\u305F\u308A\u6700\u59273\u5F80\u5FA9\u3057\u307E\u3059\uFF08\u672C\u756A\u306E API \u30EC\u30FC\u30C8\u5236\u9650\u306B\u5408\u308F\u305B\u3066\u9001\u308B\u901F\u3055\u3092\u6291\u3048\u307E\u3059\uFF09\u3002`,forbidden:FORBIDDEN,flags:[{name:"--all-features",summary:"\u5168\u6A5F\u80FD\u306E\u5272\u5F53\u8005\u3092\u51FA\u3059",takesValue:false},{name:"--inactive-days",summary:`\u3053\u306E\u65E5\u6570\u30ED\u30B0\u30A4\u30F3\u306E\u8A18\u9332\u304C\u7121\u3044\u4EBA\u3092 inactive \u3068\u5224\u5B9A\u3059\u308B\uFF08\u65E2\u5B9A ${DEFAULT_INACTIVE_DAYS}\
50
+ \u30FB\u6700\u5927 ${LOGIN_HISTORY_RETENTION_DAYS}\uFF09`,takesValue:true,placeholder:"<\u65E5\u6570>"}],async prepare(input){const all=input.flags.has("--all-features");if(all&&input.args.length>0){throw new UsageError("\u6A5F\u80FD\u306E\u6307\u5B9A\u3068 --all-features \u306F\u4E00\u7DD2\u306B\u4F7F\u3048\u307E\u305B\u3093",ASSIGNMENTS_HELP)}if(!all&&input.args.length!==1){throw new UsageError("\u6A5F\u80FD\u30921\u3064\u6307\u5B9A\u3059\u308B\u304B\u3001--all-features \u3092\u4ED8\u3051\u3066\u304F\u3060\u3055\u3044",
51
+ ASSIGNMENTS_USAGE)}const inactiveDays=positiveInteger(input.flags,"--inactive-days")??DEFAULT_INACTIVE_DAYS;if(inactiveDays>LOGIN_HISTORY_RETENTION_DAYS){throw new UsageError(`--inactive-days \u306F ${LOGIN_HISTORY_RETENTION_DAYS} \u4EE5\u4E0B\u306B\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u53D7\u3051\u53D6\u3063\u305F\u5024: ${inactiveDays}\uFF09`,`\u30ED\u30B0\u30A4\u30F3\u5C65\u6B74\u306F ${LOGIN_HISTORY_RETENTION_DAYS} \u65E5\u3067\u6D88\u3048\u308B\u305F\u3081\u3001\u305D\u308C\u3088\u308A\u524D\u306F\u5224\u5B9A\u3067\u304D\u307E\u305B\u3093\u3002`)}
52
+ const resolved={inactiveDays:String(inactiveDays)};if(!all)resolved["feature"]=resolveFeature(input.args[0]);return withResolved(input,resolved)},plan:input=>input.flags.has("--all-features")?{method:"GET",path:LICENSES_PATH}:assignmentsPlan(requireResolved(input,"feature")),plannedNotes:input=>[(input.flags.has("--all-features")?"\u3053\u306E\u3042\u3068\u6A5F\u80FD\u3054\u3068\u306B\u5272\u5F53\u4E00\u89A7\u3092 GET \u3057\u3001":"\u3053\u306E\u3042\u3068")+"\u90E8\u7F72\u4E00\u89A7\u3068\u3001\u5272\u5F53\u80051\u4EBA\u305A\u3064\u306E\u8A73\u7D30\u30FB\u73FE\u5728\u306E\u6240\u5C5E\u30FB\u30ED\u30B0\u30A4\u30F3\u5C65\u6B74\u3092 GET \
53
+ \u3057\u307E\u3059\uFF08\u8AAD\u307F\u53D6\u308A\u3060\u3051\uFF09\u3002"],execute:collectAssignments,summarize:body=>assignmentsBody(body).rows.map(row=>Object.fromEntries(ASSIGNMENT_COLUMNS.map(c=>{if(c==="findings")return[c,row.findings.length===0?null:row.findings.map(f=>FINDING_LABEL[f]).join("\u30FB")];if(c==="last_login_at")return[c,row.findings.includes("user_missing")?null:lastLoginText(row)];return[c,spreadsheetSafe(row[c])]}))),raw:body=>assignmentsBody(body).rows,notes(body){const result=assignmentsBody(
54
+ body);const counts=new Map;for(const row of result.rows)for(const f of row.findings)counts.set(f,(counts.get(f)??0)+1);const notes=[`${result.features} \u6A5F\u80FD\u30FB${result.rows.length} \u4EF6\u306E\u5272\u5F53\u3092\u8AAD\u307F\u307E\u3057\u305F\u3002`];notes.push(counts.size===0?"\u68DA\u5378\u3067\u6C17\u306B\u306A\u308B\u5272\u5F53\u306F\u3042\u308A\u307E\u305B\u3093\u3002":`\u5224\u5B9A: ${[...counts].map(([f,n])=>`${FINDING_LABEL[f]} ${n}\u4EF6`).join(" / ")}`);const sso=new Set(result.
55
+ rows.filter(r=>r.last_login_status==="sso_not_recorded").map(r=>r.user_id)).size;if(sso>0)notes.push(`\u8A8D\u8A3C\u30BF\u30A4\u30D7\u304C oauth \u306E ${sso} \u4EBA\u306F\u3001SSO \u306E\u30ED\u30B0\u30A4\u30F3\u304C\u8A18\u9332\u3055\u308C\u306A\u3044\u305F\u3081\u6700\u7D42\u30ED\u30B0\u30A4\u30F3\u3092\u5224\u5B9A\u3057\u3066\u3044\u307E\u305B\u3093\u3002`);if(counts.size>0){notes.push(`\u89E3\u9664\u30B3\u30DE\u30F3\u30C9\u306E ${RELEASE_COMMAND_PENDING}\u753B\u9762\u306E\u300C\u7D44\u7E54\u7BA1\u7406 > \u30E6\u30FC\u30B6\u30FC\u300D\u304B\u3089\u6A29\u9650\u3092\u5916\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}
56
+ return notes}}]};export{LICENSE_FEATURE_NAMES,judge,licenseDomain,releaseCommand,resolveFeature};
@@ -1,6 +1,7 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{defaultIsLoopProcess,readLockOwner,sameTwpHome}from"./chunk-3WHC4FSG.js";import{LEGACY_STATE_DIR_NAME,STATE_DIR_NAME,loopStateDir}from"./chunk-CGHGQAEM.js";import"./chunk-AEJHDFXB.js";import"./chunk-G4TZFGNN.js";import"./chunk-N2UVRM3Z.js";import"./chunk-GY7KI5E5.js";import"./chunk-PMOUHEJQ.js";import"./chunk-5WGOHFAS.js";import{twpHomeDir}from"./chunk-RZVI6PMW.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import fs from"fs";import os from"os";import path from"path";var PIDLESS_GRACE_MS=6e4;function defaultStateDirs(env){const home=os.homedir();const dirs=[loopStateDir(env),path.join(home,STATE_DIR_NAME),path.join(home,LEGACY_STATE_DIR_NAME)].map(d=>path.resolve(d));return[...new Set(dirs)]}function readPidFile(lockDir){try{const raw=fs.readFileSync(path.join(lockDir,"pid"),"utf8").split("\n")[0]?.trim()??"";const n=Number.parseInt(raw,10);return{pid:Number.isInteger(n)&&n>0?n:null,error:null}}catch(err){const code=err.code;return{pid:null,error:code==="ENO\
3
+ import{defaultIsLoopProcess,readLockOwner,sameTwpHome}from"./chunk-3WHC4FSG.js";import{LEGACY_STATE_DIR_NAME,STATE_DIR_NAME,loopStateDir}from"./chunk-LJVAOWZI.js";import"./chunk-G4TZFGNN.js";import"./chunk-FABDZBDZ.js";import"./chunk-6CS5L24D.js";import"./chunk-N2UVRM3Z.js";import"./chunk-GY7KI5E5.js";import"./chunk-PMOUHEJQ.js";import"./chunk-5WGOHFAS.js";import{twpHomeDir}from"./chunk-RZVI6PMW.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";
4
+ import"./chunk-VSJBJXZO.js";import fs from"fs";import os from"os";import path from"path";var PIDLESS_GRACE_MS=6e4;function defaultStateDirs(env){const home=os.homedir();const dirs=[loopStateDir(env),path.join(home,STATE_DIR_NAME),path.join(home,LEGACY_STATE_DIR_NAME)].map(d=>path.resolve(d));return[...new Set(dirs)]}function readPidFile(lockDir){try{const raw=fs.readFileSync(path.join(lockDir,"pid"),"utf8").split("\n")[0]?.trim()??"";const n=Number.parseInt(raw,10);return{pid:Number.isInteger(n)&&n>0?n:null,error:null}}catch(err){const code=err.code;return{pid:null,error:code==="ENO\
4
5
  ENT"?null:code??err.message}}}function findLoopsUsingProfile(profileName,deps={}){const env=deps.env??process.env;const now=deps.now??Date.now;const isLoopProcess=deps.isLoopProcess??defaultIsLoopProcess;const myHome=twpHomeDir(env);const result={users:[],undetermined:[]};for(const stateDir of deps.stateDirs??defaultStateDirs(env)){let dirs;try{dirs=fs.readdirSync(stateDir).filter(d=>/^task-loop-.*\.lock\.d$/.test(d))}catch(err){if(err.code==="ENOENT")continue;result.undetermined.push({pid:null,
5
6
  lockDir:stateDir,reason:`\u30ED\u30C3\u30AF\u306E\u7F6E\u304D\u5834\u6240\u3092\u8AAD\u3081\u307E\u305B\u3093\uFF08${err.code??err.message}\uFF09`});continue}for(const dir of dirs){const lockDir=path.join(stateDir,dir);const pidFile=readPidFile(lockDir);if(pidFile.error!==null){result.undetermined.push({pid:null,lockDir,reason:`pid \u3092\u8AAD\u3081\u307E\u305B\u3093\uFF08${pidFile.error}\uFF09`});continue}const owner=readLockOwner(lockDir);let pid=pidFile.pid;if(pid===null){if(owner.ok){pid=owner.
6
7
  owner.pid}else{let ageMs=null;try{ageMs=now()-fs.statSync(lockDir).mtimeMs}catch{}if(ageMs!==null&&ageMs>=PIDLESS_GRACE_MS)continue;result.undetermined.push({pid:null,lockDir,reason:"\u30ED\u30C3\u30AF\u306B pid \u304C\u3042\u308A\u307E\u305B\u3093\uFF08\u8D77\u52D5\u76F4\u5F8C\u306E\u53EF\u80FD\u6027\uFF09"});continue}}if(!isLoopProcess(pid))continue;if(!owner.ok){result.undetermined.push({pid,lockDir,reason:owner.reason});continue}if(owner.owner.pid!==pid){result.undetermined.push({pid,lockDir,
@@ -1,8 +1,8 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{parseWaitOptions,waitUntilTerminal}from"./chunk-WVCEKC7V.js";import{checkOutTarget}from"./chunk-2G6ZZPME.js";import"./chunk-YASL34FY.js";import"./chunk-Q3B65OFC.js";import"./chunk-GFLGXGWE.js";import"./chunk-YXVN6OCH.js";import"./chunk-UFGJSWKU.js";import{contentTypeFor,inspectLocalFile}from"./chunk-I4TR55UF.js";import{checkUploadQuota}from"./chunk-V64CGX7V.js";import"./chunk-GY7KI5E5.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,
4
- nonEmpty,positiveInteger,readEnvelopeCursor,shellQuote}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{readBody}from"./chunk-6LSQCOCJ.js";import"./chunk-ZSPWHEBL.js";import{collapsesInUrlPath,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{
5
- acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,NetworkError,UsageError,WaitTimeoutError}from"./chunk-VFPY2A23.js";import"./chunk-PECIBNFD.js";import"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-YYURQG4E.js";import"./chunk-QQRJLH6B.js";import"./chunk-74BPZOKU.js";import"./chunk-UREA4ZIG.js";import"./chunk-NHYMHCAT.js";
3
+ import{checkOutTarget}from"./chunk-FDVWV3AY.js";import"./chunk-6OLZMQBK.js";import"./chunk-Q3B65OFC.js";import"./chunk-GFLGXGWE.js";import"./chunk-YXVN6OCH.js";import"./chunk-UFGJSWKU.js";import{contentTypeFor,inspectLocalFile}from"./chunk-I4TR55UF.js";import{checkUploadQuota}from"./chunk-V64CGX7V.js";import{parseWaitOptions,waitUntilTerminal}from"./chunk-WVCEKC7V.js";import"./chunk-GY7KI5E5.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,
4
+ nonEmpty,positiveInteger,readEnvelopeCursor,shellQuote}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{readBody}from"./chunk-6LSQCOCJ.js";import"./chunk-HNG6MF26.js";import{collapsesInUrlPath,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{
5
+ acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,NetworkError,UsageError,WaitTimeoutError}from"./chunk-VFPY2A23.js";import"./chunk-PECIBNFD.js";import"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-KDH3KWPO.js";import"./chunk-QQRJLH6B.js";import"./chunk-74BPZOKU.js";import"./chunk-UREA4ZIG.js";import"./chunk-NHYMHCAT.js";
6
6
  import"./chunk-VSJBJXZO.js";import crypto2 from"crypto";import fs2 from"fs";import path from"path";var SCOPE_PERSONAL="personal";var SCOPE_PROJECT="project";var UUID=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;var FORBIDDEN_NAME=/[/\\:*?"<>|]/;var NAME_MAX=255;var ROW_COLUMNS=["id","path","name","file_count","subfolder_count","parent_id","updated_at"];var TRASH_COLUMNS=["id","path","name","file_count","subfolder_count","parent_id","deleted_at"];function folderRows(raw){return raw.map(row=>{const id=row["id"];const name=row["name"];const parentId=row["parent_id"];if(typeof id!==
7
7
  "string"||typeof name!=="string"||parentId!==null&&parentId!==void 0&&typeof parentId!=="string"){throw new ApiResponseError("\u30E1\u30C7\u30A3\u30A2\u30D5\u30A9\u30EB\u30C0\u4E00\u89A7\u306E\u884C\u306B id / name / parent_id \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}const path2=typeof row["path"]==="string"?row["path"]:`/${name}`;return{id,name,parentId:parentId??null,path:path2}})}function resolveFolderPath(rows,input){
8
8
  const segments=folderPathSegments(input);const ids=new Set(rows.map(row=>row.id));const isTop=row=>row.parentId===null||!ids.has(row.parentId);let level=rows.filter(isTop);let walked="";for(const[index,segment]of segments.entries()){const hits=level.filter(row=>row.name===segment);const here=walked===""?"\u6700\u4E0A\u4F4D":`\u300C${walked}\u300D\u306E\u4E0B`;if(hits.length===0){const names=level.map(row=>row.name);throw new UsageError(`\u30D5\u30A9\u30EB\u30C0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: ${input}\
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{boundedText}from"./chunk-JJSBBWJ5.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import{NOTIFICATIONS_PATH}from"./chunk-ZSPWHEBL.js";import{isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{
3
+ import{boundedText}from"./chunk-JJSBBWJ5.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import{NOTIFICATIONS_PATH}from"./chunk-HNG6MF26.js";import{isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{
4
4
  ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var LABEL="\u901A\u77E5";var LIST_COLUMNS=["id","datetime","category_name","status_name","title"];var GET_COLUMNS=["id","datetime","category","category_name","status_name","read_time","title","content","url"];var CATEGORY_FLAG={name:"--category",summary:"\u901A\u77E5\u30AB\u30C6\u30B4\u30EA\u3067\u7D5E\u308A\u8FBC\u3080\uFF08\u30AD\u30FC\u304B\u540D\u524D\u3002twp notification categories \u3067\u4E00\u89A7\u3067\u304D\u308B\uFF09",takesValue:true,placeholder:"<\u30AB\u30C6\u30B4\u30EA>"};var CATEGORY_HELP="\
5
5
  --category \u306F\u30AB\u30C6\u30B4\u30EA\u306E\u30AD\u30FC\uFF08workflow_approval\uFF09\u304B\u540D\u524D\uFF08\u30EF\u30FC\u30AF\u30D5\u30ED\u30FC\u627F\u8A8D\u4F9D\u983C\uFF09\u3067\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002\n\u30AB\u30C6\u30B4\u30EA\u4E00\u89A7\u3068\u7167\u5408\u3059\u308B\u306E\u3067\u3001\u6253\u3061\u9593\u9055\u3048\u305F\u30AB\u30C6\u30B4\u30EA\u3092\u300C0\u4EF6\u300D\u3068\u3057\u3066\u8FD4\u3059\u3053\u3068\u306F\u3042\u308A\u307E\u305B\u3093\uFF08\u4E00\u89A7\u306F\u65E2\u5B9A10\u5206\u30AD\u30E3\u30C3\u30B7\u30E5\u30FB--refresh \u3067\u53D6\u308A\u76F4\u3057\uFF09\u3002";
6
6
  async function resolveCategory(input,ctx){const raw=nonEmpty(input.flags,CATEGORY_FLAG.name);if(raw===void 0)return input;return withResolved(input,{category:(await ctx.resolver.notificationCategory(raw.trim())).id})}function noArgs(input,op){if(input.args.length>0){throw new UsageError(`${op} \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D6\u308A\u307E\u305B\u3093: ${input.args.join(" ")}`,`twp notification ${op} help`)}}function notificationId(input,op){const[raw,...rest]=input.args;const id=raw?.trim()??
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{activateModeFiles,activatePermissionSettings,buildResidentSet,buildSystemPrompt,createAuditLogger,createTwpToolkit,currentBranch,displayCwd,residentInputs,runTurn}from"./chunk-7PDUN5MS.js";import"./chunk-NZ7WI4RZ.js";import"./chunk-UFGJSWKU.js";import"./chunk-N2UVRM3Z.js";import"./chunk-ZSPWHEBL.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import"./chunk-II5RVJQN.js";import"./chunk-VFPY2A23.js";
3
+ import{activateModeFiles,activatePermissionSettings,buildResidentSet,buildSystemPrompt,createAuditLogger,createTwpToolkit,currentBranch,displayCwd,residentInputs,runTurn}from"./chunk-7PDUN5MS.js";import"./chunk-NZ7WI4RZ.js";import"./chunk-UFGJSWKU.js";import"./chunk-N2UVRM3Z.js";import"./chunk-HNG6MF26.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import"./chunk-II5RVJQN.js";import"./chunk-VFPY2A23.js";
4
4
  import{RelayError,createRuntime,pickModel}from"./chunk-5WTFZJT7.js";import"./chunk-D233KKXW.js";import"./chunk-PMOUHEJQ.js";import"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import{checkMinSupportedVersion,enforceMinSupportedVersion,floorNeedsRefresh}from"./chunk-DXXFUNYN.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import{getMode}from"./chunk-2LOT54OO.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";async function runOneShot(opts,deps={}){const out=deps.out??(text=>void process.stdout.write(stripTerminalControls(text)));const err=deps.err??(text=>void process.stderr.write(stripTerminalControls(text)));activateModeFiles(err);const permissionLayers=activatePermissionSettings(err,{...opts.allowedTools?{allowedTools:opts.allowedTools}:{},...opts.disallowedTools?{disallowedTools:opts.disallowedTools}:{}});const prompt=opts.fromStdin?await(deps.readStdin??readStdin)():opts.prompt;if(prompt.trim()===
5
5
  ""){err('\u30D7\u30ED\u30F3\u30D7\u30C8\u304C\u7A7A\u3067\u3059\u3002`twp -p "\u8CEA\u554F"`\uFF08`-p -` \u3067\u6A19\u6E96\u5165\u529B\uFF09\n');return 2}const runtime=deps.runtime??createRuntime({...opts.profile!==void 0?{profile:opts.profile}:{},...opts.model!==void 0?{model:opts.model}:{},cliVersion:opts.version});const cachedFloor=runtime.loadCachedFloor();if(await checkMinSupportedVersion({current:opts.version,cachedFloor:cachedFloor.minSupportedVersion,refresh:async()=>(await runtime.loadCatalog()).
6
6
  minSupportedVersion,write:err})){return 1}if(!runtime.loggedIn){err("\u30ED\u30B0\u30A4\u30F3\u3057\u3066\u3044\u307E\u305B\u3093\u3002`twp login` \u3092\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n");return 1}let model=runtime.configuredModel??"";let catalog=null;if(model===""){catalog=await runtime.loadCatalog();const picked=pickModel(catalog,void 0);model=picked.model;if(catalog.source!=="server"){err(`\u26A0 \u30E2\u30C7\u30EB\u4E00\u89A7\u3092\u53D6\u5F97\u3067\u304D\u306A\u304B\u3063\u305F\u305F\u3081 ${model}\
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{mailSendOperations}from"./chunk-3WFZOOXZ.js";import"./chunk-Q3B65OFC.js";import{cursorFlag,dateTimeText,emailText,graphData,graphListFlags,graphPaging,graphPagingHelp,graphPagingNotes,graphValue,ms365Forbidden,plainText,recipientsText,str,topFlag}from"./chunk-DLD736A2.js";import{nonEmpty}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{readBody}from"./chunk-6LSQCOCJ.js";import{assertMs365PathSegment,ms365Path,ms365Segment}from"./chunk-H4CDX4TX.js";
3
+ import{mailSendOperations}from"./chunk-AGI5KT4C.js";import{cursorFlag,dateTimeText,emailText,graphData,graphListFlags,graphPaging,graphPagingHelp,graphPagingNotes,graphValue,ms365Forbidden,plainText,recipientsText,str,topFlag}from"./chunk-DLD736A2.js";import"./chunk-Q3B65OFC.js";import{nonEmpty}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{readBody}from"./chunk-6LSQCOCJ.js";import{assertMs365PathSegment,ms365Path,ms365Segment}from"./chunk-H4CDX4TX.js";
4
4
  import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-QQRJLH6B.js";import"./chunk-VSJBJXZO.js";var BODY_MAX_CHARS=1e5;var DEFAULT_TIME_ZONE="Asia/Tokyo";var DATE_TIME=/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2})(?::([0-9]{2}))?$/;var DATE=/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/;var ADDRESS=/^[^\s@,;<>"]+@[^\s@,;<>"]+$/;var INVISIBLE=/[\p{Cc}\p{Cf}]/u;function oneLine(value){return value.replace(/[\r\n\t]+/g," ").replace(/[\p{Cc}\p{Cf}]/gu,"")}var CONFIRMATION="\u4E88\u5B9A\u8868\u3092\u66F8\u304D\u63DB\u3048\u308B\u64CD\u4F5C\uFF08\u51FA\u5E2D\u8005\u304C\u3044\u308C\u3070\u62DB\u5F85\u30FB\u66F4\u65B0\u30FB\u30AD\u30E3\u30F3\u30BB\u30EB\u306E\u901A\u77E5\u304C\u76F8\u624B\u3078\u5C4A\u304D\u3001\u53D6\u308A\u6D88\u305B\u307E\u305B\u3093\uFF09";
5
5
  var NOTIFY_HELP="\u26A0 \u51FA\u5E2D\u8005\u304C\u3044\u308B\u4E88\u5B9A\u3067\u306F\u3001\u5B9F\u884C\u3057\u305F\u77AC\u9593\u306B\u62DB\u5F85\u30FB\u66F4\u65B0\u30FB\u30AD\u30E3\u30F3\u30BB\u30EB\u306E\u901A\u77E5\u304C\u76F8\u624B\u3078\u5C4A\u304D\u3001\u53D6\u308A\u6D88\u305B\u307E\u305B\u3093\u3002\n --yes \u304C\u7121\u3051\u308C\u3070\u5B9F\u884C\u3057\u307E\u305B\u3093\u3002--dry-run \u3067\u9001\u308B\u5185\u5BB9\u3068\u901A\u77E5\u304C\u5C4A\u304F\u76F8\u624B\u3092\u78BA\u304B\u3081\u3066\u304B\u3089 --yes \u3092\u4ED8\u3051\u3066\u304F\u3060\u3055\u3044\n \uFF08--dry-run \u306F --yes \u3092\u8981\u308A\u307E\u305B\u3093\uFF09\u3002\n\u26A0 \u7D42\u4E86\u30B3\u30FC\u30C9 4\uFF08\u901A\u4FE1\u306E\u5931\u6557\u30FB\u30B5\u30FC\u30D0\u306E\u4E00\u6642\u30A8\u30E9\u30FC\uFF09\u3067\u3082\u3001Microsoft 365 \u5074\u3067\u306F\u53CD\u6620\u6E08\u307F\u306E\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\n \u6253\u3061\u76F4\u3059\u524D\u306B twp outlook event list \u3067\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u4F5C\u6210\u3092\u6253\u3061\u76F4\u3059\u3068\u4E88\u5B9A\u3068\u62DB\u5F85\u304C\u4E8C\u91CD\u306B\u306A\u308A\u307E\u3059\uFF09\u3002";
6
6
  var DATE_HELP=`\u65E5\u6642\u306F --start / --end \u306B yyyy-MM-ddTHH:mm\uFF08\u79D2\u306F\u4EFB\u610F\uFF09\u3067\u3001\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3\u3092\u4ED8\u3051\u305A\u306B\u6307\u5B9A\u3057\u307E\u3059\u3002
@@ -0,0 +1,4 @@
1
+ import { createRequire as __twpCreateRequire } from 'node:module';
2
+ const require = __twpCreateRequire(import.meta.url);
3
+ import{NO_PLAN_SESSION,PLAN_DIR_ENV,PLAN_TOKEN_ENV,checkPlan,fileSkillNames,formatCheck,openPlanSession,runPlanSubmit}from"./chunk-P6M2MCZJ.js";import"./chunk-6PAZUW73.js";import"./chunk-DXUFECE7.js";import"./chunk-SPZ3GBYC.js";import"./chunk-LJVAOWZI.js";import"./chunk-G4TZFGNN.js";import"./chunk-FABDZBDZ.js";import"./chunk-6CS5L24D.js";import"./chunk-N2UVRM3Z.js";import"./chunk-GY7KI5E5.js";import"./chunk-II5RVJQN.js";import"./chunk-PMOUHEJQ.js";
4
+ import"./chunk-J7QYPKVK.js";import"./chunk-5WGOHFAS.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{NO_PLAN_SESSION,PLAN_DIR_ENV,PLAN_TOKEN_ENV,checkPlan,fileSkillNames,formatCheck,openPlanSession,runPlanSubmit};
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{STATUS_VALUES,booleanQuery,flatMasterDomain}from"./chunk-SCU74Z4U.js";import"./chunk-JJSBBWJ5.js";import"./chunk-MI6HVYR2.js";import{POSITIONS_PATH}from"./chunk-ZSPWHEBL.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";
3
+ import{STATUS_VALUES,booleanQuery,flatMasterDomain}from"./chunk-XGYOJHZC.js";import"./chunk-JJSBBWJ5.js";import"./chunk-MI6HVYR2.js";import{POSITIONS_PATH}from"./chunk-HNG6MF26.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";
4
4
  import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var positionDomain=flatMasterDomain({name:"position",label:"\u5F79\u8077",path:POSITIONS_PATH,itemKey:"position",summary:"\u5F79\u8077\u30DE\u30B9\u30BF\uFF08\u4E00\u89A7\u30FB\u53D6\u5F97\u30FB\u4F5C\u6210\u30FB\u66F4\u65B0\u30FB\u524A\u9664\uFF09",listColumns:["id","code","name","rank","is_manager","status","user_count"],getColumns:["id","code","name","name_short","rank","is_manager","status","description"],fields:[{kind:"text",flag:"--name-short",key:"name_short",label:"\u7565\u79F0",maxChars:50,
5
5
  summary:"\u7565\u79F0"},{kind:"integer",flag:"--rank",key:"rank",label:"\u30E9\u30F3\u30AF",min:0,max:9999,summary:"\u30E9\u30F3\u30AF\uFF080\u301C9999\u3002\u5927\u304D\u3044\u307B\u3069\u4E0A\u4F4D\uFF09"},{kind:"boolean",flag:"--manager",key:"is_manager",summary:"\u7BA1\u7406\u8077\u304B\uFF08true / false\uFF09"},{kind:"boolean",flag:"--can-view-personal-info",key:"can_view_personal_info",summary:"\u90E8\u4E0B\u306E\u500B\u4EBA\u60C5\u5831\u3092\u95B2\u89A7\u3067\u304D\u308B\u304B\uFF08true / false\uFF09"},
6
6
  {kind:"boolean",flag:"--can-view-emergency-contact",key:"can_view_emergency_contact",summary:"\u90E8\u4E0B\u306E\u7DCA\u6025\u9023\u7D61\u5148\u3092\u95B2\u89A7\u3067\u304D\u308B\u304B\uFF08true / false\uFF09"},{kind:"boolean",flag:"--can-view-work-tel",key:"can_view_work_tel",summary:"\u90E8\u4E0B\u306E\u696D\u52D9\u7528\u96FB\u8A71\u756A\u53F7\u3092\u95B2\u89A7\u3067\u304D\u308B\u304B\uFF08true / false\uFF09"},{kind:"enum",flag:"--status",key:"status",values:STATUS_VALUES,summary:"\u72B6\u614B\uFF08active: \u6709\
@@ -1,4 +1,4 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{ASSIGNED_PROJECT_COLUMNS,assignedProjectItems,projectDomain}from"./chunk-BTN4M7Y5.js";import"./chunk-5AQ2JPIS.js";import"./chunk-ZJW3GBE5.js";import"./chunk-EXT4AIDF.js";import"./chunk-SCU74Z4U.js";import"./chunk-JJSBBWJ5.js";import"./chunk-MI6HVYR2.js";import"./chunk-RX5HWI4L.js";import"./chunk-6LSQCOCJ.js";import"./chunk-ZSPWHEBL.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";
3
+ import{ASSIGNED_PROJECT_COLUMNS,assignedProjectItems,projectDomain}from"./chunk-CCBNU5Y3.js";import"./chunk-APPYZQNC.js";import"./chunk-7EJOKJLV.js";import"./chunk-EXT4AIDF.js";import"./chunk-XGYOJHZC.js";import"./chunk-JJSBBWJ5.js";import"./chunk-MI6HVYR2.js";import"./chunk-RX5HWI4L.js";import"./chunk-6LSQCOCJ.js";import"./chunk-HNG6MF26.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";
4
4
  import"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{ASSIGNED_PROJECT_COLUMNS,assignedProjectItems,projectDomain};
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{CUSTOMER_LICENSE,INTERACTION_FIELDS,INTERACTION_TYPES,dataOf,levelForbidden}from"./chunk-XNOZJ6T2.js";import"./chunk-I4TR55UF.js";import"./chunk-V64CGX7V.js";import"./chunk-QLENN5DD.js";import"./chunk-GY7KI5E5.js";import"./chunk-G6RLNOIZ.js";import{createFlags,fieldBody,hasAnyField,resolveRefFields,updateFlags}from"./chunk-SCU74Z4U.js";import"./chunk-JJSBBWJ5.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";
4
- import{repeatedValues}from"./chunk-RX5HWI4L.js";import{PROSPECTS_PATH}from"./chunk-ZSPWHEBL.js";import{isSafePathSegment}from"./chunk-HVZUXLQ4.js";import{MultipartBody}from"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";
3
+ import{CUSTOMER_LICENSE,INTERACTION_FIELDS,INTERACTION_TYPES,dataOf,levelForbidden}from"./chunk-NVMJXFBT.js";import"./chunk-I4TR55UF.js";import"./chunk-V64CGX7V.js";import"./chunk-QLENN5DD.js";import"./chunk-GY7KI5E5.js";import"./chunk-WMEGP2BT.js";import{createFlags,fieldBody,hasAnyField,resolveRefFields,updateFlags}from"./chunk-XGYOJHZC.js";import"./chunk-JJSBBWJ5.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";
4
+ import{repeatedValues}from"./chunk-RX5HWI4L.js";import{PROSPECTS_PATH}from"./chunk-HNG6MF26.js";import{isSafePathSegment}from"./chunk-HVZUXLQ4.js";import{MultipartBody}from"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";
5
5
  import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import fs from"fs";import path from"path";var VIEW_FORBIDDEN=levelForbidden(CUSTOMER_LICENSE,"\u30A2\u30D7\u30ED\u30FC\u30C1\u5148\u3092\u898B\u308B\u306B\u306F\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");var EDIT_FORBIDDEN=levelForbidden(CUSTOMER_LICENSE,"\u30A2\u30D7\u30ED\u30FC\u30C1\u5148\u306E\u767B\u9332\u30FB\u66F4\u65B0\u306B\u306F\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7DE8\u96C6\u8005\u300D\u4EE5\u4E0A\u3067\u3042\u308B\u3053\u3068\u304C\u8981\u308A\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");
6
6
  function adminForbidden(what){return levelForbidden(CUSTOMER_LICENSE,`${what}\u306B\u306F\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7BA1\u7406\u8005\u300D\u3067\u3042\u308B\u3053\u3068\u304C\u8981\u308A\u307E\u3059\uFF08\u300C\u7DE8\u96C6\u8005\u300D\u3067\u306F\u3067\u304D\u307E\u305B\u3093\uFF09\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}var ASSIGNABLE_STATUSES=["new","approaching","responded","appointment","reject\
7
7
  ed","on_hold"];var FILTER_STATUSES=[...ASSIGNABLE_STATUSES,"promoted"];var NEXT_ACTION_FILTERS=["overdue","today","this_week"];var STATUS_HELP="new=\u672A\u30A2\u30D7\u30ED\u30FC\u30C1 / approaching=\u30A2\u30D7\u30ED\u30FC\u30C1\u4E2D / responded=\u53CD\u5FDC\u3042\u308A / appointment=\u30A2\u30DD\u7372\u5F97 / rejected=\u62D2\u5426\u30FB\u898B\u8FBC\u307F\u306A\u3057 / on_hold=\u4FDD\u7559";var ASSIGNEE_FIELD={kind:"ref",flag:"--assignee",key:"assignee_user_id",summary:"\u55B6\u696D\u62C5\u5F53\uFF08\u30E6\u30FC\u30B6\u30FC\u3002ID\u30FB\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u30FB\u793E\u54E1\
@@ -1,8 +1,8 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{inspectCaseDocumentFile}from"./chunk-FTAKYID7.js";import{FORCE_FLAG,OUT_FLAG,REV_FLAG,revOf,singleId,uploadStaged}from"./chunk-G26GIBRL.js";import"./chunk-XNOZJ6T2.js";import"./chunk-I4TR55UF.js";import"./chunk-V64CGX7V.js";import{purchaseNoRuleResource}from"./chunk-WHCMWXLC.js";import{salesAdminForbidden}from"./chunk-ENVASCZU.js";import"./chunk-QLENN5DD.js";import"./chunk-GY7KI5E5.js";import{purchasePdfOperation}from"./chunk-AYE4DF6J.js";
4
- import{featureLicenseGuidance,licenseForbidden}from"./chunk-G6RLNOIZ.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-SCU74Z4U.js";import{booleanText,boundedText,isoDate}from"./chunk-JJSBBWJ5.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,PAGE_NUMBER_PAGING_HELP,STABLE_PAGE_ORDER,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{readBody}from"./chunk-6LSQCOCJ.js";
5
- import{SALES_PURCHASES_PATH,SALES_PURCHASE_AI_MAPPINGS_PATH,isExactNumericId,resolveNamed}from"./chunk-ZSPWHEBL.js";import"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import{NotLoggedInError,
3
+ import{inspectCaseDocumentFile}from"./chunk-QJAZLPA3.js";import{FORCE_FLAG,OUT_FLAG,REV_FLAG,revOf,singleId,uploadStaged}from"./chunk-F4PGPJOI.js";import"./chunk-NVMJXFBT.js";import"./chunk-I4TR55UF.js";import"./chunk-V64CGX7V.js";import{purchaseNoRuleResource}from"./chunk-OMWCSE4P.js";import{salesAdminForbidden}from"./chunk-P2DSHLHD.js";import"./chunk-QLENN5DD.js";import"./chunk-GY7KI5E5.js";import{purchasePdfOperation}from"./chunk-DAOC7VRM.js";
4
+ import{featureLicenseGuidance,licenseForbidden}from"./chunk-WMEGP2BT.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-XGYOJHZC.js";import{booleanText,boundedText,isoDate}from"./chunk-JJSBBWJ5.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,PAGE_NUMBER_PAGING_HELP,STABLE_PAGE_ORDER,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{readBody}from"./chunk-6LSQCOCJ.js";
5
+ import{SALES_PURCHASES_PATH,SALES_PURCHASE_AI_MAPPINGS_PATH,isExactNumericId,resolveNamed}from"./chunk-HNG6MF26.js";import"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import{NotLoggedInError,
6
6
  SessionExpiredError}from"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var PATH=SALES_PURCHASE_AI_MAPPINGS_PATH;var LABEL="\u4ED5\u5165AI\u30DE\u30C3\u30D4\u30F3\u30B0";var SOURCE_LABEL_MAX_CHARS=255;var NOTE_MAX_CHARS=1e3;var SORT_MAX=2147483647;var LIST_COLUMNS=["id","source_label","target_field","target_field_label","company_name","is_active","sort_order"];var GET_COLUMNS=[...LIST_COLUMNS,"company_id","note"];var MEMBER_FORBIDDEN=licenseForbidden(featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406"));var ADMIN_FORBIDDEN=salesAdminForbidden(`${LABEL}\u306E\u524A\u9664`);
7
7
  function usageOf(op){return`twp purchase ai-mapping ${op} help`}function text(value){return typeof value==="string"||typeof value==="number"?String(value):""}function envelope(body,what){if(!isRecord(body)||body["result"]!==true)throw new ApiResponseError(`${what}\u306E\u5FDC\u7B54\u306E\u5F62\u304C\u60F3\u5B9A\u3068\u9055\u3044\u307E\u3059\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`);return body}function recordOf(body){const data=envelope(body,LABEL)["da\
8
8
  ta"];if(!isRecord(data)||typeof data["id"]!=="string")throw new ApiResponseError(`${LABEL}\u306E\u5FDC\u7B54\u306B data.id \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`);return data}function serverMessage(body){const message=isRecord(body)?body["message"]:void 0;return typeof message==="string"&&message!==""?[message]:[]}function idArg(input,op){const[raw,...rest]=input.args;const id=raw?.trim()??"";if(id==="")throw new UsageError(
@@ -1,4 +1,4 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{balanceRows,previousYearMonth,receivableDomain,yearMonthValue}from"./chunk-Y2J4M2MG.js";import"./chunk-ENVASCZU.js";import"./chunk-QLENN5DD.js";import"./chunk-G6RLNOIZ.js";import"./chunk-JJSBBWJ5.js";import"./chunk-MI6HVYR2.js";import"./chunk-RX5HWI4L.js";import"./chunk-6LSQCOCJ.js";import"./chunk-ZSPWHEBL.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import"./chunk-PS5QFKHB.js";
3
+ import{balanceRows,previousYearMonth,receivableDomain,yearMonthValue}from"./chunk-XCPZ4R65.js";import"./chunk-P2DSHLHD.js";import"./chunk-QLENN5DD.js";import"./chunk-WMEGP2BT.js";import"./chunk-JJSBBWJ5.js";import"./chunk-MI6HVYR2.js";import"./chunk-RX5HWI4L.js";import"./chunk-6LSQCOCJ.js";import"./chunk-HNG6MF26.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import"./chunk-PS5QFKHB.js";
4
4
  import"./chunk-II5RVJQN.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{balanceRows,previousYearMonth,receivableDomain,yearMonthValue};
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import{REDMINE_BASE_PATH,isExactNumericId,redmineServerPath}from"./chunk-ZSPWHEBL.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";
3
+ import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import{REDMINE_BASE_PATH,isExactNumericId,redmineServerPath}from"./chunk-HNG6MF26.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";
4
4
  import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var MAX_ID_DIGITS=18;var PROJECT_REF=/^[A-Za-z0-9_-]+$/;var SERVER_COLUMNS=["id","name","base_url"];var PROJECT_COLUMNS=["id","identifier","name","parent","status"];var ISSUE_LIST_COLUMNS=["id","project","tracker","status","priority","subject","assigned_to","updated_on"];var ISSUE_GET_COLUMNS=["id","project","tracker","status","priority","author","assigned_to","subject","description","start_date","due_date","done_ratio","created_on","updated_on","journals","attachments"];var JOURNAL_COLUMNS=["id",
5
5
  "user","created_on","notes","details"];var ATTACHMENT_COLUMNS=["id","filename","filesize","content_type","author","created_on"];var SPACE_FLAG={name:"--space",summary:"Redmine \u63A5\u7D9A\u5148\uFF08ID\u30FB\u8868\u793A\u540D\u30FB\u63A5\u7D9A\u5148URL\u30FB\u30DB\u30B9\u30C8\u540D\u3002\u767B\u9332\u304C1\u4EF6\u306A\u3089\u7701\u7565\u53EF\uFF09",takesValue:true,placeholder:"<ID|URL>"};var listPaging=envelopePaging({label:"Redmine \u4E00\u89A7"});function flattenRef(value){if(isRecord(value)&&
6
6
  "name"in value)return value["name"];return value}function summarizeRow(row,columns){const picked=pick(row,columns);for(const[key,value]of Object.entries(picked))picked[key]=flattenRef(value);return picked}function issueObject(body){const issue=isRecord(body)?body["data"]:void 0;if(!isRecord(issue)){throw new ApiResponseError("\u30C1\u30B1\u30C3\u30C8\u8A73\u7D30\u306E\u5FDC\u7B54\u306B data \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{loadDomain}from"./chunk-YASL34FY.js";import"./chunk-VSJBJXZO.js";export{loadDomain};
3
+ import{loadDomain}from"./chunk-6OLZMQBK.js";import"./chunk-VSJBJXZO.js";export{loadDomain};
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{charCount,readBody}from"./chunk-6LSQCOCJ.js";import{REPORTS_PATH}from"./chunk-ZSPWHEBL.js";import{UUID_RE,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";
3
+ import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{charCount,readBody}from"./chunk-6LSQCOCJ.js";import{REPORTS_PATH}from"./chunk-HNG6MF26.js";import{UUID_RE,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import"./chunk-II5RVJQN.js";
4
4
  import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var LABEL="\u30EC\u30DD\u30FC\u30C8";var STATUSES={new:"\u4E0B\u66F8\u304D",completed:"\u63D0\u51FA\u6E08\u307F",reviewed:"\u78BA\u8A8D\u6E08\u307F",rejected:"\u5DEE\u3057\u623B\u3057"};var STATUS_HELP=`\u72B6\u614B: ${Object.entries(STATUSES).map(([key,name])=>`${key}\uFF08${name}\uFF09`).join(" / ")}`;var TITLE_MAX_CHARS=200;var CONTENT_MAX_CHARS=1e6;var CONTENT_KEYS=["title","content"];var ULID_RE=/^[0-9A-HJKMNP-TV-Z]{26}$/i;var LIST_COLUMNS=["id","title","format_name","status","created_at","\
5
5
  updated_at","completed_at"];var GET_COLUMNS=["id","title","format_name","status","status_label","created_by_name","created_at","updated_at","completed_at","reviewed_at","reviewed_by_name","rejected_by_name"];var WRITE_COLUMNS=["id","title","format_id","status","status_label","created_at","updated_at","completed_at"];var FORMAT_COLUMNS=["id","code","name","is_available","title_editable","writer","reviewer","admin"];var FORMAT_FLAG={name:"--format",summary:"\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u540D\u524D\u30FB\u30B3\u30FC\u30C9\uFF08RF-000001\uFF09\u30FBID",
6
6
  takesValue:true,placeholder:"<\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8>"};var CONTENT_FILE_FLAG={name:"--content-file",summary:"\u30EC\u30DD\u30FC\u30C8\u306E\u5185\u5BB9\u306E JSON \u30D5\u30A1\u30A4\u30EB\uFF08title / content\u30FB- \u3067\u6A19\u6E96\u5165\u529B\uFF09",takesValue:true,placeholder:"<\u30D1\u30B9>"};var SKELETON_FLAG={name:"--generate-cli-skeleton",summary:"\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u5165\u529B\u9805\u76EE\u304B\u3089 --content-file \u306E\u3072\u306A\u5F62\u3092\u51FA\u3057\u3066\u7D42\u4E86\u3059\u308B\uFF08\u30EC\u30DD\u30FC\u30C8\u306F\u4F5C\u3089\u306A\u3044\uFF09",
@@ -0,0 +1,31 @@
1
+ import { createRequire as __twpCreateRequire } from 'node:module';
2
+ const require = __twpCreateRequire(import.meta.url);
3
+ import{isValidSkillName}from"./chunk-YJZT3UD3.js";import{apiExit,currentRevisionOf,errorDetail,pickNumber,printDiff,shellQuote,str}from"./chunk-A4LFG7MW.js";import"./chunk-VRBI2NPI.js";import{EXIT_API_CLIENT,EXIT_API_SERVER,EXIT_OK,EXIT_USAGE}from"./chunk-VFPY2A23.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";async function runRevisionCommand(deps,opts){const io={out:deps.out??(t=>void process.stdout.write(stripTerminalControls(t))),err:deps.err??(t=>void process.stderr.write(stripTerminalControls(t)))};if(opts.target==="skill"&&(opts.name===void 0||!isValidSkillName(opts.name))){io.err(`\u30B9\u30AD\u30EB\u540D\u304C\u4E0D\u6B63\u3067\u3059: ${opts.name??"\uFF08\u672A\u6307\u5B9A\uFF09"}\uFF08\u82F1\u5C0F\u6587\u5B57\u3067\u59CB\u307E\u308A\u3001\u82F1\u5C0F\u6587\u5B57\u30FB\u6570\u5B57\u30FB\u30CF\u30A4\u30D5\u30F3\u3060\u3051\u306E64\u6587\u5B57\u4EE5\u5185\uFF09
4
+ `);return EXIT_USAGE}const from=parseRevision(opts.from,"--from",io);const to=parseRevision(opts.to,"--to",io);const expected=parseRevision(opts.revision,"--revision",io);if(from===false||to===false||expected===false)return EXIT_USAGE;switch(opts.op){case"history":return history(deps.api,opts,io);case"diff":if(from===void 0){io.err("--from <\u7248> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08--to \u3092\u7701\u304F\u3068\u3044\u307E\u306E\u7248\u3068\u6BD4\u3079\u307E\u3059\uFF09\n");
5
+ return EXIT_USAGE}return diff(deps.api,opts,io,from,to);case"revert":if(to===void 0){io.err("--to <\u7248> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u623B\u3059\u5148\u306E\u7248\u3002history \u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\uFF09\n");return EXIT_USAGE}if(expected!==void 0&&!opts.yes){io.err("--revision \u306F --yes \u3068\u4E00\u7DD2\u306B\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08--yes \u306A\u3057\u3067\u306F\u623B\u3057\u307E\u305B\u3093\uFF09\n");return EXIT_USAGE}
6
+ return revert(deps.api,opts,io,to,expected)}}function parseRevision(v,flag,io){if(v===void 0)return void 0;if(!/^\d+$/.test(v)||Number(v)<1||!Number.isSafeInteger(Number(v))){io.err(`${flag} \u306F1\u4EE5\u4E0A\u306E\u6574\u6570\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: ${v}
7
+ `);return false}return Number(v)}function base(opts){return opts.target==="skill"?`/settings/skills/${encodeURIComponent(opts.name??"")}`:"/settings"}function label(opts){return opts.target==="skill"?`\u30B9\u30AD\u30EB ${opts.name??""}`:"\u61B2\u7AE0"}function payload(res){const json=res.json??{};const data=json["data"];if(data&&typeof data==="object"&&!Array.isArray(data))return data;return json}async function history(api,opts,io){const res=await api.request("GET",`${base(opts)}/revisions`);if(!res.
8
+ ok){io.err(`\u26D4 ${label(opts)} \u306E\u7248\u306E\u4E00\u89A7\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\uFF08${errorDetail(res)}\uFF09
9
+ `);return apiExit(res)}const b=payload(res);const revisions=b["revisions"];if(!Array.isArray(revisions)){io.err(`\u26D4 \u7248\u306E\u4E00\u89A7\u306E\u5FDC\u7B54\u3092\u89E3\u91C8\u3067\u304D\u307E\u305B\u3093\uFF08\u5FDC\u7B54\u306E\u5148\u982D: ${res.raw.slice(0,120)}\uFF09
10
+ `);return EXIT_API_SERVER}const current=pickNumber(b,"current_revision");const keep=pickNumber(b,"keep");io.out(`${label(opts)} \u306E\u7248\uFF08\u65B0\u3057\u3044\u9806\u30FB\u3044\u307E\u306E\u7248: ${current!==null&&current>0?current:"\u306A\u3057"}\uFF09
11
+ `);if(opts.target==="charter"){io.out("\u203B \u61B2\u7AE0\u306F\u8A2D\u5B9A\u5168\u4F53\u306E\u7248\u3067\u8FFD\u3063\u3066\u3044\u307E\u3059\u3002\u61B2\u7AE0\u4EE5\u5916\uFF08AI\u5272\u5F53\u30FB\u6CE8\u5165\u6587\u9762\uFF09\u3092\u5909\u3048\u305F\u7248\u3082\u4E26\u3073\u3001\u5927\u304D\u3055\u30FB\u30CF\u30C3\u30B7\u30E5\u306F\u8A2D\u5B9A\u5168\u4F53\u306E\u3082\u306E\u3067\u3059\uFF08\u61B2\u7AE0\u306E\u9055\u3044\u306F diff \u3067\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\uFF09\n")}
12
+ if(revisions.length===0){io.out("\uFF08\u7248\u306F\u307E\u3060\u3042\u308A\u307E\u305B\u3093\uFF09\n");return EXIT_OK}for(const r of revisions){if(!r||typeof r!=="object")continue;const e=r;const rev=pickNumber(e,"revision");const action=str(e["action"]);const from=pickNumber(e,"reverted_from");const digest=str(e["digest"]).replace(/^sha256:/,"").slice(0,12);const parts=[`${rev===current?"*":" "} rev ${rev??"?"}`,actionLabel(action)+(from!==null?`\uFF08\u7248 ${from} \u304B\u3089\uFF09`:""),str(
13
+ e["updated_at"])||"\u65E5\u6642\u4E0D\u660E",str(e["updated_by_name"])||"\u66F4\u65B0\u8005\u4E0D\u660E",`${pickNumber(e,"bytes")??"?"}B`,digest];if(e["recorded"]===false)parts.push("\uFF08\u307E\u3060\u5C65\u6B74\u306B\u4FDD\u5B58\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u6B21\u306E\u66F4\u65B0\u3067\u4FDD\u5B58\u3055\u308C\u307E\u3059\uFF09");io.out(parts.join(" ")+"\n")}if(keep!==null)io.out(`\uFF08\u76F4\u8FD1 ${keep} \u7248\u307E\u3067\u4FDD\u6301\uFF09
14
+ `);return EXIT_OK}function actionLabel(action){switch(action){case"created":return"\u4F5C\u6210";case"updated":return"\u66F4\u65B0";case"charter_updated":return"\u61B2\u7AE0\u3092\u66F4\u65B0";case"reverted":return"\u5FA9\u5143";case"backfilled":return"\u5C65\u6B74\u5C0E\u5165\u524D\u306E\u7248";default:return action||"\u4E0D\u660E"}}async function fetchVersion(api,opts,io,revision){const suffix=revision==="current"?base(opts):`${base(opts)}/revisions/${revision}`;const res=await api.request("GE\
15
+ T",suffix);if(!res.ok){io.err(`\u26D4 ${label(opts)} \u306E${revision==="current"?"\u3044\u307E\u306E\u7248":`\u7248 ${revision}`}\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\uFF08${errorDetail(res)}\uFF09
16
+ `);return apiExit(res)}const b=payload(res);const rev=pickNumber(b,"revision");let content;if(opts.target==="skill"){content=typeof b["body"]==="string"?b["body"]:void 0}else{const prompts=b["prompts"];if(prompts&&typeof prompts==="object"){const v=prompts["charter"];content=typeof v==="string"?v:null}}if(rev===null||content===void 0){io.err(`\u26D4 \u7248\u306E\u5FDC\u7B54\u3092\u89E3\u91C8\u3067\u304D\u307E\u305B\u3093\uFF08\u5FDC\u7B54\u306E\u5148\u982D: ${res.raw.slice(0,120)}\uFF09
17
+ `);return EXIT_API_SERVER}return{revision:rev,content}}function describe(v){return`rev ${v.revision}${v.content===null?"\u30FB\u61B2\u7AE0\u672A\u767B\u9332":""}`}async function diff(api,opts,io,from,to){const a=await fetchVersion(api,opts,io,from);if(typeof a==="number")return a;const b=await fetchVersion(api,opts,io,to??"current");if(typeof b==="number")return b;if(a.content===b.content){io.out(`${describe(a)} \u3068 ${describe(b)} \u306E\u672C\u6587\u306B\u5DEE\u5206\u306F\u3042\u308A\u307E\u305B\u3093\u3002
18
+ `);return EXIT_OK}printDiff(io.out,`${label(opts)}\uFF08${describe(a)}\uFF09`,`${label(opts)}\uFF08${describe(b)}\uFF09`,a.content??"",b.content??"");return EXIT_OK}async function revert(api,opts,io,to,expected){const current=await fetchVersion(api,opts,io,"current");if(typeof current==="number"){if(opts.target==="skill"&&current===EXIT_API_CLIENT){io.err("\uFF08\u524A\u9664\u6E08\u307F\u306E\u30B9\u30AD\u30EB\u306F revert \u3067\u304D\u307E\u305B\u3093\u3002diff / history \u3067\u672C\u6587\u3092\u78BA\u8A8D\u3057\u3001push \u3057\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\uFF09\n")}
19
+ return current}if(current.revision===to){io.out(`\u7248 ${to} \u306F\u3044\u307E\u306E\u7248\u3067\u3059\u3002\u623B\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002
20
+ `);return EXIT_OK}const target=await fetchVersion(api,opts,io,to);if(typeof target==="number")return target;if(current.content===target.content){io.out(`\u3044\u307E\u306E\u7248\uFF08${describe(current)}\uFF09\u3068\u7248 ${to} \u306E\u672C\u6587\u306F\u540C\u3058\u3067\u3059\u3002\u623B\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002
21
+ `);return EXIT_OK}printDiff(io.out,`\u3044\u307E\u306E\u7248\uFF08${describe(current)}\uFF09`,`\u623B\u3057\u305F\u5F8C\uFF08${describe(target)} \u306E\u672C\u6587\uFF09`,current.content??"",target.content??"");if(opts.target==="charter"&&target.content===null){io.out("\u26A0\uFE0F \u623B\u3059\u5148\u306E\u7248\u306B\u306F\u61B2\u7AE0\u304C\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u623B\u3059\u3068\u61B2\u7AE0\u306E\u767B\u9332\u3092\u5916\u3057\u3001\u7D44\u307F\u8FBC\u307F\u65E2\u5B9A\u3092\u4F7F\u3046\u72B6\u614B\u306B\u306A\u308A\u307E\u3059\n")}else if(opts.
22
+ target==="charter"&&current.content===null){io.out("\u26A0\uFE0F \u3044\u307E\u306F\u61B2\u7AE0\u304C\u672A\u767B\u9332\uFF08\u7D44\u307F\u8FBC\u307F\u65E2\u5B9A\u3092\u4F7F\u3046\u72B6\u614B\uFF09\u3067\u3059\u3002\u623B\u3059\u3068\u623B\u3059\u5148\u306E\u61B2\u7AE0\u304C\u767B\u9332\u3055\u308C\u307E\u3059\n")}if(!opts.yes){io.out(`
23
+ \u623B\u3057\u3066\u3044\u307E\u305B\u3093\u3002\u3053\u306E\u5DEE\u5206\u3067\u78BA\u5B9A\u3059\u308B\u306B\u306F\u6B21\u3092\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\uFF08revision ${current.revision} \u3092\u9001\u308B\u306E\u3067\u3001\u305D\u306E\u5F8C\u30B5\u30FC\u30D0\u304C\u66F4\u65B0\u3055\u308C\u3066\u3044\u308C\u3070 409 \u3067\u6B62\u307E\u308A\u307E\u3059\uFF09:
24
+ ${confirmCommand(opts,to,current.revision)}
25
+ `);return EXIT_USAGE}const revision=expected??current.revision;const res=opts.target==="skill"?await api.request("POST",`${base(opts)}/revert`,{revision,to_revision:to}):await api.request("PUT","/settings/charter",{charter:target.content,revision});if(!res.ok){if(res.status===409){const now=currentRevisionOf(res);io.err(`\u26D4 409: revision ${revision} \u3067\u9001\u308A\u307E\u3057\u305F\u304C\u3001\u30B5\u30FC\u30D0\u306F${now!==null?` revision ${now} \u306B`:""}\u66F4\u65B0\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u4E0A\u66F8\u304D\u305B\u305A\u306B\u6B62\u3081\u307E\u3057\u305F\uFF08\u5DEE\u5206\u3092\u78BA\u8A8D\u3057\u3066\u304B\u3089\
26
+ \u3084\u308A\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\uFF09
27
+ ${errorDetail(res)}
28
+ `);return apiExit(res)}io.err(`\u26D4 ${label(opts)} \u3092\u623B\u305B\u307E\u305B\u3093\uFF08${errorDetail(res)}\uFF09
29
+ `);return apiExit(res)}const saved=pickNumber(payload(res),"revision");if(saved===null){io.err(`\u26A0\uFE0F \u5FDC\u7B54\u3092\u89E3\u91C8\u3067\u304D\u307E\u305B\u3093\u3002\u53CD\u6620\u3055\u308C\u305F\u304B\u3092 history \u3067\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u5FDC\u7B54\u306E\u5148\u982D: ${res.raw.slice(0,120)}\uFF09
30
+ `);return EXIT_API_SERVER}io.out(`${label(opts)} \u3092\u7248 ${to} \u306E\u672C\u6587\u3078\u623B\u3057\u307E\u3057\u305F: revision ${saved}
31
+ `);return EXIT_OK}function confirmCommand(opts,to,revision){const parts=[`twp task-loop ${opts.target} revert`];if(opts.target==="skill")parts.push(shellQuote(opts.name??""));parts.push("--project",shellQuote(opts.projectRef));if(opts.profile!==void 0)parts.push("--profile",shellQuote(opts.profile));parts.push("--to",String(to),"--yes","--revision",String(revision));return parts.join(" ")}export{runRevisionCommand};
@@ -1,4 +1,4 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{CURATED_PAGING_VOCABULARY,buildPrepareContext,checkOutTarget,exitCodeFor,fetchAllPages,outputValue,reportError,requiresYes,resolvePaging,runDomain}from"./chunk-2G6ZZPME.js";import"./chunk-YASL34FY.js";import"./chunk-Q3B65OFC.js";import"./chunk-GFLGXGWE.js";import"./chunk-YXVN6OCH.js";import"./chunk-UFGJSWKU.js";import"./chunk-MI6HVYR2.js";import"./chunk-RX5HWI4L.js";import"./chunk-ZSPWHEBL.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";
4
- import"./chunk-H4CDX4TX.js";import"./chunk-II5RVJQN.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-PECIBNFD.js";import"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-YYURQG4E.js";import"./chunk-QQRJLH6B.js";import"./chunk-74BPZOKU.js";import"./chunk-UREA4ZIG.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{CURATED_PAGING_VOCABULARY,buildPrepareContext,checkOutTarget,exitCodeFor,fetchAllPages,outputValue,reportError,requiresYes,resolvePaging,runDomain};
3
+ import{CURATED_PAGING_VOCABULARY,buildPrepareContext,checkOutTarget,exitCodeFor,fetchAllPages,outputValue,reportError,requiresYes,resolvePaging,runDomain}from"./chunk-FDVWV3AY.js";import"./chunk-6OLZMQBK.js";import"./chunk-Q3B65OFC.js";import"./chunk-GFLGXGWE.js";import"./chunk-YXVN6OCH.js";import"./chunk-UFGJSWKU.js";import"./chunk-MI6HVYR2.js";import"./chunk-RX5HWI4L.js";import"./chunk-HNG6MF26.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";
4
+ import"./chunk-H4CDX4TX.js";import"./chunk-II5RVJQN.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-PECIBNFD.js";import"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-RZVI6PMW.js";import"./chunk-KDH3KWPO.js";import"./chunk-QQRJLH6B.js";import"./chunk-74BPZOKU.js";import"./chunk-UREA4ZIG.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{CURATED_PAGING_VOCABULARY,buildPrepareContext,checkOutTarget,exitCodeFor,fetchAllPages,outputValue,reportError,requiresYes,resolvePaging,runDomain};