@tocca-systems/twp-cli 0.38.0 → 0.39.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.
- package/CHANGELOG.public.md +10 -0
- package/README.md +118 -3
- package/dist/{ai-dispatch-AHCYPQ5Y.js → ai-dispatch-KRMDHQEF.js} +1 -1
- package/dist/{api-command-BZVUZIOB.js → api-command-IO572BZ4.js} +3 -3
- package/dist/{app-SNRFIHTQ.js → app-Y2RIXLS4.js} +4 -4
- package/dist/{backlog-33ELMSV6.js → backlog-67JSQYOH.js} +1 -1
- package/dist/chunk-4ZT5LTRX.js +94 -0
- package/dist/{chunk-QBA6THJ5.js → chunk-BJLXXRSY.js} +1 -1
- package/dist/{chunk-LS7P3IWP.js → chunk-C7UDUHQZ.js} +7 -7
- package/dist/{chunk-ZST7XESB.js → chunk-ELXDRPDV.js} +39 -33
- package/dist/{chunk-TAN5I2DP.js → chunk-I4ARX6NM.js} +1 -1
- package/dist/{chunk-IRT7VFG4.js → chunk-MHRGKUMK.js} +1 -1
- package/dist/chunk-QDTYD5PY.js +147 -0
- package/dist/{chunk-57HDZYSN.js → chunk-QQLWMHGR.js} +1 -1
- package/dist/{chunk-ADQD5OPN.js → chunk-RZ54TCQU.js} +15 -14
- package/dist/chunk-TLN3JSEC.js +7 -0
- package/dist/chunk-UVUVEL3B.js +3 -0
- package/dist/{chunk-OHIERIBW.js → chunk-Y5YDL3MC.js} +1 -1
- package/dist/cli.js +109 -9
- package/dist/{commands-RCDYCU6L.js → commands-MLYGGSUE.js} +3 -3
- package/dist/company-3KUWW7QA.js +71 -0
- package/dist/{completion-3X7HPIPM.js → completion-6R5D5TQQ.js} +1 -1
- package/dist/contract-FGRHTOGI.js +86 -0
- package/dist/{department-PVUB3ZPI.js → department-PN5DCCRL.js} +1 -1
- package/dist/deposit-XQER6PMG.js +4 -0
- package/dist/estimate-IXBEQVGI.js +164 -0
- package/dist/{inquiry-CUK2LWQK.js → inquiry-3VOJASJH.js} +1 -1
- package/dist/invoice-KY3BYTHQ.js +209 -0
- package/dist/{job-title-CZRZFVUU.js → job-title-EM6RKGQ6.js} +1 -1
- package/dist/{knowledge-XYLG42MB.js → knowledge-F4FZ4MLH.js} +1 -1
- package/dist/{leave-DL3JPO5I.js → leave-D2S7NMJC.js} +1 -1
- package/dist/{media-CMNIZUPY.js → media-SQVQVX2E.js} +1 -1
- package/dist/{notification-ULATH7AC.js → notification-NTFUPUMY.js} +1 -1
- package/dist/{oneshot-RYWJ6ECA.js → oneshot-TMGTEN3S.js} +1 -1
- package/dist/{position-ICOGEMRG.js → position-D52LXRDT.js} +1 -1
- package/dist/{prospect-MB2OP7L2.js → prospect-AQ7EUU4N.js} +1 -1
- package/dist/receivable-AE44YIJO.js +49 -0
- package/dist/{registry-XBYUPKQQ.js → registry-3WV46K26.js} +1 -1
- package/dist/{report-JL7UJB4G.js → report-TI2DOJGX.js} +1 -1
- package/dist/{run-6JRHCC67.js → run-KNZ43HFF.js} +2 -2
- package/dist/{task-CMCHUX2D.js → task-VKVZSF7J.js} +2 -2
- package/dist/{user-5JXFO56G.js → user-KEFI7XZI.js} +1 -1
- package/dist/{workflow-XBUMFS2G.js → workflow-4FHTOQZZ.js} +1 -1
- package/package.json +1 -1
- package/dist/chunk-GLBQAXWC.js +0 -6
- package/dist/chunk-O4NSYHR4.js +0 -3
- package/dist/company-GMCHRVHF.js +0 -161
- package/dist/sales-GJKW7VVG.js +0 -4
- /package/dist/{commands-7PGS2PTH.js → commands-K6DQ3O35.js} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{repeatedValues}from"./chunk-IOGVQVGD.js";import{isoDate}from"./chunk-UDPJ2IGK.js";import{SALES_ESTIMATES_PATH,SALES_INVOICES_PATH,isExactNumericId,resolveNamed}from"./chunk-
|
|
3
|
+
import{repeatedValues}from"./chunk-IOGVQVGD.js";import{isoDate}from"./chunk-UDPJ2IGK.js";import{SALES_ESTIMATES_PATH,SALES_INVOICES_PATH,isExactNumericId,resolveNamed}from"./chunk-ELXDRPDV.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,PAGE_NUMBER_PAGING_HELP,STABLE_PAGE_ORDER,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-5R4SEO3I.js";import{withResolved}from"./chunk-ZN5EFDH7.js";import{isRecord,pick}from"./chunk-ZWVYVS2A.js";import{
|
|
4
4
|
ApiResponseError,UsageError}from"./chunk-7WSNIXTQ.js";var ESTIMATE_STATUSES={new:"\u4F5C\u6210\u4E2D",create_completed:"\u4F5C\u6210\u5B8C\u4E86",in_progress:"\u7533\u8ACB\u4E2D",approved:"\u627F\u8A8D\u6E08",submitted:"\u63D0\u793A\u6E08",rejected:"\u5DEE\u3057\u623B\u3057",deleted:"\u524A\u9664\u6E08"};var INVOICE_STATUSES={new:"\u4F5C\u6210\u4E2D",create_completed:"\u4F5C\u6210\u5B8C\u4E86",in_progress:"\u7533\u8ACB\u4E2D",approved:"\u627F\u8A8D\u6E08",rejected:"\u5DEE\u3057\u623B\u3057",submitted:"\u63D0\u793A\u6E08",manager_confirmation:"\u6848\u4EF6\u62C5\u5F53\u8005\
|
|
5
5
|
_\u6848\u4EF6\u5185\u5BB9\u30FB\u91D1\u984D\u78BA\u8A8D",invoice_issued:"\u8ACB\u6C42\u66F8\u767A\u884C\u6E08",sent_to_client:"\u5148\u65B9\u9001\u4ED8\u6E08",archived:"\u4FDD\u7BA1\u6E08",deleted:"\u524A\u9664\u6E08",cancelled:"\u53D6\u6D88\uFF08\u7121\u52B9\uFF09",lost:"\u5931\u6CE8"};var ALLOCATION_STATUSES={unallocated:"\u672A\u56DE\u53CE",allocated:"\u56DE\u53CE\u6E08"};function statusRefs(table){return Object.entries(table).map(([code,name])=>({id:code,name,code}))}function statusHelp(table){
|
|
6
6
|
return Object.entries(table).map(([code,name])=>`${code}\uFF08${name}\uFF09`).join(" / ")}function licenseForbidden(guidance){return body=>body?.error==="permission_denied"?guidance:void 0}function featureLicenseGuidance(feature){return`${feature}\u3092\u4F7F\u3046\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u30C6\u30CA\u30F3\u30C8\u304C${feature}\u3092\u5951\u7D04\u3057\u3066\u3044\u306A\u3044\u304B\u3001\u3042\u306A\u305F\u306E${feature}\u306E\u6A29\u9650\u304C\u300C\u306A\u3057\u300D\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`}
|
|
@@ -8,19 +8,20 @@ var SALES_FORBIDDEN=licenseForbidden(featureLicenseGuidance("\u8CA9\u58F2\u7BA1\
|
|
|
8
8
|
`${what}\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 withStatusName(row,columns,table){const picked=pick(row,columns);const status=isRecord(row)?row["status"]:void 0;if(typeof status!=="string")return picked;return Object.fromEntries(Object.entries(picked).flatMap(([key,value])=>key==="status"?[[key,value],["status_name",table[status]??status]]:[[key,value]]))}function totalsNote(body){
|
|
9
9
|
if(!isRecord(body))return[];const sum=body["sum"];const amount=body["total_amount"];if(typeof sum!=="number")return pageRangeNotes(body);return[...pageRangeNotes(body),typeof amount==="number"?`\u8A72\u5F53 ${sum} \u4EF6\u30FB\u5408\u8A08\u91D1\u984D\uFF08\u7A0E\u8FBC\uFF09${amount.toLocaleString("ja-JP")} \u5186`:`\u8A72\u5F53 ${sum} \u4EF6`]}var ESTIMATE={name:"estimate",label:"\u898B\u7A4D",path:SALES_ESTIMATES_PATH,statuses:ESTIMATE_STATUSES,userParam:"estimate_user_id",dateParam:"estimate_d\
|
|
10
10
|
ate",dateLabel:"\u898B\u7A4D\u65E5",listColumns:["id","estimate_no","estimate_date","status","company_name","title","total","estimate_user_name"],getColumns:["id","estimate_no","title","status","estimate_date","estimate_expiration_date","company_name","project_name","estimate_user_name","subtotal","tax_amount","total"]};var INVOICE={name:"invoice",label:"\u8ACB\u6C42",path:SALES_INVOICES_PATH,statuses:INVOICE_STATUSES,userParam:"invoice_user_id",dateParam:"invoice_date",dateLabel:"\u8ACB\u6C42\u65E5",
|
|
11
|
-
listColumns:["id","invoice_no","invoice_date","status","company_name","title","total","remaining_amount"],getColumns:["id","invoice_no","title","status","invoice_date","due_date","company_name","project_name","estimate_no","invoice_user_name","subtotal","tax_amount","total","deposit_amount","remaining_amount"]};function
|
|
11
|
+
listColumns:["id","invoice_no","invoice_date","status","company_name","title","total","remaining_amount"],getColumns:["id","invoice_no","title","status","invoice_date","due_date","company_name","project_name","estimate_no","invoice_user_name","subtotal","tax_amount","total","deposit_amount","remaining_amount"]};function filterFlags(resource){const flags=[{name:"--keyword",summary:`\u4EF6\u540D\u30FB${resource.label}\u756A\u53F7\u30FB\u5099\u8003\u306E\u8A9E\u3067\u7D5E\u308A\u8FBC\u3080\uFF08\u90E8\u5206\u4E00\u81F4\uFF09`,
|
|
12
12
|
takesValue:true,placeholder:"<\u8A9E>"},{name:"--status",summary:"\u30B9\u30C6\u30FC\u30BF\u30B9\u3067\u7D5E\u308A\u8FBC\u3080\uFF08\u30B3\u30FC\u30C9\u304B\u8868\u793A\u540D\u30FB\u8907\u6570\u56DE\u6307\u5B9A\u3067\u304D\u308B\uFF09",takesValue:true,placeholder:"<\u30B9\u30C6\u30FC\u30BF\u30B9>",repeatable:true},{name:"--customer",summary:"\u53D6\u5F15\u5148\u3067\u7D5E\u308A\u8FBC\u3080\uFF08\u4F01\u696D\u540D\u30FB\u7565\u79F0\u30FB\u30AB\u30CA\u306E\u5B8C\u5168\u4E00\u81F4\u304B ID\uFF09",takesValue:true,
|
|
13
13
|
placeholder:"<\u53D6\u5F15\u5148>"},{name:"--project",summary:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3067\u7D5E\u308A\u8FBC\u3080\uFF08\u30B3\u30FC\u30C9\u304B ID\uFF09",takesValue:true,placeholder:"<\u30B3\u30FC\u30C9|ID>"},{name:"--assignee",summary:`${resource.label}\u62C5\u5F53\u8005\u3067\u7D5E\u308A\u8FBC\u3080\uFF08me\u30FBID\u30FB\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u30FB\u6C0F\u540D\uFF09`,takesValue:true,placeholder:"<\u30E6\u30FC\u30B6\u30FC>"},{name:"--from",summary:`${resource.
|
|
14
14
|
dateLabel}\u304C\u3053\u306E\u65E5\u4EE5\u964D\uFF08YYYY-MM-DD\uFF09`,takesValue:true,placeholder:"<\u65E5\u4ED8>"},{name:"--to",summary:`${resource.dateLabel}\u304C\u3053\u306E\u65E5\u4EE5\u524D\uFF08YYYY-MM-DD\uFF09`,takesValue:true,placeholder:"<\u65E5\u4ED8>"}];if(resource.name==="invoice"){flags.push({name:"--allocation",summary:"\u56DE\u53CE\u72B6\u6CC1\u3067\u7D5E\u308A\u8FBC\u3080\uFF08unallocated\uFF1D\u672A\u56DE\u53CE / allocated\uFF1D\u56DE\u53CE\u6E08\uFF09",takesValue:true,placeholder:"\
|
|
15
|
-
<\u72B6\u6CC1>"})}return flags}async function statusCodes(input,resource){const refs=statusRefs(resource.statuses);const codes=[];for(const raw of repeatedValues(input,"--status")){const ref=await resolveNamed(raw,refs,{flag:"--status",label:`${resource.label}\u306E\u30B9\u30C6\u30FC\u30BF\u30B9`,scope:"\u3053\u306E CLI"});if(!codes.includes(ref.id))codes.push(ref.id)}return codes}async function allocationCode(input){
|
|
16
|
-
raw,statusRefs(ALLOCATION_STATUSES),{flag:"--allocation",label:"\u56DE\u53CE\u72B6\u6CC1",scope:"\u3053\u306E CLI"})).id}function noArgs(input,resource,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 ${resource.name} ${op} help`)}}async function
|
|
17
|
-
name==="invoice"?await allocationCode(input):void 0;const resolved={};if(status.length>0)resolved["status"]=status.join(",");if(allocation!==void 0)resolved["allocation"]=allocation;const customer=nonEmpty(input.flags,"--customer");if(customer!==void 0){resolved["customer"]=(await ctx.resolver.company(customer,{flag:"--customer",source:"
|
|
18
|
-
input.flags,"--assignee");if(assignee!==void 0)resolved["assignee"]=(await ctx.resolver.user(assignee,"--assignee")).id;return withResolved(input,resolved)}function
|
|
19
|
-
"--from"),[`${resource.dateParam}_to`]:isoDate(input,"--to"),...resource.name==="invoice"?{allocation_status:resolved["allocation"],consolidated_view:1}:{},...STABLE_PAGE_ORDER,page_limit,page_no}}function recordId(input,resource){const[raw,...rest]=input.
|
|
20
|
-
\u308C\u308B${resource.label} ID \u306F1\u3064\u3060\u3051\u3067\u3059: ${rest.join(" ")}`,usage);if(!isExactNumericId(id)){throw new UsageError(`${resource.label}\u306E ID \u306F\u6570\u5B57\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: ${id}
|
|
21
|
-
return id}function listOperation(resource){const paging=pageNumberPaging({label:`${resource.label}\u4E00\u89A7`});const rows=body=>{envelope(body,`${resource.label}\u4E00\u89A7`);return paging.items(body)};const consolidated=resource.
|
|
22
|
-
"";return{name:"list",summary:`${resource.label}\u3092\u4E00\u89A7\u3059\u308B\uFF08\u767B\u9332\u306E\u65B0\u3057\u3044\u9806\uFF09`,usage:`twp ${resource.
|
|
23
|
-
\u8CA9\u58F2\u7BA1\u7406\u306E${resource.label}\u3092\u4E00\u89A7\u3057\u307E\u3059\u3002\u898B\u3048\u308B\u306E\u306F\u30B5\u30FC\u30D0\u304C\u3042\u306A\u305F\u306B\u898B\u305B\u308B${resource.
|
|
15
|
+
<\u72B6\u6CC1>"})}return flags}function listFlags(resource){return[...PAGE_NUMBER_LIST_FLAGS,...filterFlags(resource)]}async function statusCodes(input,resource){const refs=statusRefs(resource.statuses);const codes=[];for(const raw of repeatedValues(input,"--status")){const ref=await resolveNamed(raw,refs,{flag:"--status",label:`${resource.label}\u306E\u30B9\u30C6\u30FC\u30BF\u30B9`,scope:"\u3053\u306E CLI"});if(!codes.includes(ref.id))codes.push(ref.id)}return codes}async function allocationCode(input){
|
|
16
|
+
const raw=nonEmpty(input.flags,"--allocation");if(raw===void 0)return void 0;return(await resolveNamed(raw,statusRefs(ALLOCATION_STATUSES),{flag:"--allocation",label:"\u56DE\u53CE\u72B6\u6CC1",scope:"\u3053\u306E CLI"})).id}function noArgs(input,resource,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 ${resource.name} ${op} help`)}}async function prepareFilters(input,ctx,resource,op){noArgs(
|
|
17
|
+
input,resource,op);if(op==="list")listQuery(input,resource);else filterQuery(input,resource);const status=await statusCodes(input,resource);const allocation=resource.name==="invoice"?await allocationCode(input):void 0;const resolved={};if(status.length>0)resolved["status"]=status.join(",");if(allocation!==void 0)resolved["allocation"]=allocation;const customer=nonEmpty(input.flags,"--customer");if(customer!==void 0){resolved["customer"]=(await ctx.resolver.company(customer,{flag:"--customer",source:"\
|
|
18
|
+
sales",mustExist:true})).id}const project=nonEmpty(input.flags,"--project");if(project!==void 0)resolved["project"]=await ctx.projectId(project);const assignee=nonEmpty(input.flags,"--assignee");if(assignee!==void 0)resolved["assignee"]=(await ctx.resolver.user(assignee,"--assignee")).id;return withResolved(input,resolved)}function filterQuery(input,resource){const resolved=input.resolved??{};return{keyword:nonEmpty(input.flags,"--keyword"),status_list:resolved["status"],company_id:resolved["cus\
|
|
19
|
+
tomer"],project_id:resolved["project"],[resource.userParam]:resolved["assignee"],[`${resource.dateParam}_from`]:isoDate(input,"--from"),[`${resource.dateParam}_to`]:isoDate(input,"--to"),...resource.name==="invoice"?{allocation_status:resolved["allocation"],consolidated_view:1}:{},...STABLE_PAGE_ORDER}}function listQuery(input,resource){const{page_no,page_limit}=pageNumberQuery(input);return{...filterQuery(input,resource),page_limit,page_no}}function recordId(input,resource){const[raw,...rest]=input.
|
|
20
|
+
args;const id=raw?.trim()??"";const usage=`twp ${resource.name} get help`;if(id==="")throw new UsageError(`${resource.label}\u306E ID \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`,usage);if(rest.length>0)throw new UsageError(`get \u304C\u53D7\u3051\u53D6\u308C\u308B${resource.label} ID \u306F1\u3064\u3060\u3051\u3067\u3059: ${rest.join(" ")}`,usage);if(!isExactNumericId(id)){throw new UsageError(`${resource.label}\u306E ID \u306F\u6570\u5B57\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: ${id}`,
|
|
21
|
+
`${resource.label}\u756A\u53F7\uFF08${resource.name==="estimate"?"EST0000063":"INV0000170"} \u306E\u3088\u3046\u306A\u5024\uFF09\u3067\u63A2\u3059\u306A\u3089 twp ${resource.name} list --keyword <\u756A\u53F7> \u306E id \u5217\u3092\u4F7F\u3063\u3066\u304F\u3060\u3055\u3044\u3002`)}return id}function listOperation(resource){const paging=pageNumberPaging({label:`${resource.label}\u4E00\u89A7`});const rows=body=>{envelope(body,`${resource.label}\u4E00\u89A7`);return paging.items(body)};const consolidated=resource.
|
|
22
|
+
name==="invoice"?"\u753B\u9762\u306E\u8ACB\u6C42\u4E00\u89A7\u3068\u540C\u3058\u304F\u3001\u7D71\u5408\u8ACB\u6C42\u66F8\u306F\u672C\u4F53\u30921\u884C\u3067\u51FA\u3057\u3001\u7D71\u5408\u5143\u306E\u8ACB\u6C42\u306F\u305D\u306E children \u306B\u5165\u308A\u307E\u3059\uFF08\u6700\u4E0A\u4F4D\u306B\u306F\u51FA\u307E\u305B\u3093\uFF09\u3002\n":"";return{name:"list",summary:`${resource.label}\u3092\u4E00\u89A7\u3059\u308B\uFF08\u767B\u9332\u306E\u65B0\u3057\u3044\u9806\uFF09`,usage:`twp ${resource.
|
|
23
|
+
name} list [--keyword <\u8A9E>] [--status <\u30B9\u30C6\u30FC\u30BF\u30B9>]... [--customer <\u53D6\u5F15\u5148>] [--project <\u30B3\u30FC\u30C9|ID>] [--assignee <\u30E6\u30FC\u30B6\u30FC>] [--from <\u65E5\u4ED8>] [--to <\u65E5\u4ED8>]${resource.name==="invoice"?" [--allocation <\u72B6\u6CC1>]":""} [--all] [--limit <\u4EF6\u6570>]`,description:`\u8CA9\u58F2\u7BA1\u7406\u306E${resource.label}\u3092\u4E00\u89A7\u3057\u307E\u3059\u3002\u898B\u3048\u308B\u306E\u306F\u30B5\u30FC\u30D0\u304C\u3042\u306A\u305F\u306B\u898B\u305B\u308B${resource.
|
|
24
|
+
label}\u3060\u3051\u3067\u3059
|
|
24
25
|
\uFF08\u7BA1\u7406\u8005\u4EE5\u5916\u306F\u3001\u30E1\u30F3\u30D0\u30FC\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E${resource.label}\u3068\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u672A\u8A2D\u5B9A\u3067\u81EA\u5206\u304C\u4F5C\u6210\u8005\u30FB\u62C5\u5F53\u8005\u306E${resource.label}\uFF09\u3002
|
|
25
26
|
`+consolidated+`
|
|
26
27
|
--status \u306B\u6E21\u305B\u308B\u5024: ${statusHelp(resource.statuses)}
|
|
@@ -33,8 +34,8 @@ return id}function listOperation(resource){const paging=pageNumberPaging({label:
|
|
|
33
34
|
--output json \u306F API \u304C\u8FD4\u3059\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u51FA\u3057\u307E\u3059\u3002
|
|
34
35
|
--output table / text / tsv \u306F\u8981\u7D04\u5217\uFF08${resource.listColumns.join(" / ")}\u3001status \u306E\u5F8C\u308D\u306B status_name\uFF09\u3067\u3059\u3002
|
|
35
36
|
|
|
36
|
-
`+LIST_PAGING_HELP+"\n"+PAGE_NUMBER_PAGING_HELP,flags:listFlags(resource),paging,forbidden:SALES_FORBIDDEN,prepare:(input,ctx)=>
|
|
37
|
+
`+LIST_PAGING_HELP+"\n"+PAGE_NUMBER_PAGING_HELP,flags:listFlags(resource),paging,forbidden:SALES_FORBIDDEN,prepare:(input,ctx)=>prepareFilters(input,ctx,resource,"list"),plan:input=>({method:"GET",path:resource.path,query:listQuery(input,resource)}),summarize:body=>rows(body).map(row=>withStatusName(row,resource.listColumns,resource.statuses)),raw:rows,notes:totalsNote}}function getOperation(resource){const what=resource.label;return{name:"get",summary:`${what}1\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B`,
|
|
37
38
|
usage:`twp ${resource.name} get <${what}ID>`,description:`ID \u306F twp ${resource.name} list \u306E id \u5217\u306E\u6570\u5B57\u3067\u3059\uFF08${what}\u756A\u53F7\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF09\u3002
|
|
38
39
|
|
|
39
|
-
--output json \u306F${what}\u306E\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\uFF08\u660E\u7D30 details \u3092\u542B\u3080\uFF09\u3092\u51FA\u3057\u307E\u3059\u3002`,flags:[],forbidden:SALES_FORBIDDEN,plan:input=>({method:"GET",path:`${resource.path}/${encodeURIComponent(recordId(input,resource))}`}),summarize:body=>withStatusName(detail(body,what),resource.getColumns,resource.statuses),raw:body=>detail(body,what)}}
|
|
40
|
-
|
|
40
|
+
--output json \u306F${what}\u306E\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\uFF08\u660E\u7D30 details \u3092\u542B\u3080\uFF09\u3092\u51FA\u3057\u307E\u3059\u3002`,flags:[],forbidden:SALES_FORBIDDEN,plan:input=>({method:"GET",path:`${resource.path}/${encodeURIComponent(recordId(input,resource))}`}),summarize:body=>withStatusName(detail(body,what),resource.getColumns,resource.statuses),raw:body=>detail(body,what)}}var estimateReadOperations=[listOperation(ESTIMATE),getOperation(ESTIMATE)];var invoiceReadOperations=[
|
|
41
|
+
listOperation(INVOICE),getOperation(INVOICE)];var invoiceFilters={flags:()=>filterFlags(INVOICE),prepare:(input,ctx,op)=>prepareFilters(input,ctx,INVOICE,op),query:input=>filterQuery(input,INVOICE),statusName:code=>INVOICE_STATUSES[code]??code,statusCodes:input=>statusCodes(input,INVOICE),statusHelp:()=>statusHelp(INVOICE_STATUSES)};export{licenseForbidden,featureLicenseGuidance,estimateReadOperations,invoiceReadOperations,invoiceFilters};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
+
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
+
var LOADERS={"agent-loop":async()=>(await import("./agent-loop-4U5RLC4L.js")).agentLoopDomain,attendance:async()=>(await import("./attendance-5KE2JPK4.js")).attendanceDomain,backlog:async()=>(await import("./backlog-67JSQYOH.js")).backlogDomain,company:async()=>(await import("./company-3KUWW7QA.js")).companyDomain,contract:async()=>(await import("./contract-FGRHTOGI.js")).contractDomain,customer:async()=>(await import("./company-3KUWW7QA.js")).customerDomain,department:async()=>(await import("./department-PN5DCCRL.js")).
|
|
4
|
+
departmentDomain,deposit:async()=>(await import("./deposit-XQER6PMG.js")).depositDomain,estimate:async()=>(await import("./estimate-IXBEQVGI.js")).estimateDomain,inquiry:async()=>(await import("./inquiry-3VOJASJH.js")).inquiryDomain,invoice:async()=>(await import("./invoice-KY3BYTHQ.js")).invoiceDomain,"job-title":async()=>(await import("./job-title-EM6RKGQ6.js")).jobTitleDomain,leave:async()=>(await import("./leave-D2S7NMJC.js")).leaveDomain,media:async()=>(await import("./media-SQVQVX2E.js")).
|
|
5
|
+
mediaDomain,meeting:async()=>(await import("./knowledge-F4FZ4MLH.js")).meetingDomain,note:async()=>(await import("./knowledge-F4FZ4MLH.js")).noteDomain,notification:async()=>(await import("./notification-NTFUPUMY.js")).notificationDomain,position:async()=>(await import("./position-D52LXRDT.js")).positionDomain,project:async()=>(await import("./project-ZGOB5W25.js")).projectDomain,prospect:async()=>(await import("./prospect-AQ7EUU4N.js")).prospectDomain,receivable:async()=>(await import("./receivable-AE44YIJO.js")).
|
|
6
|
+
receivableDomain,report:async()=>(await import("./report-TI2DOJGX.js")).reportDomain,shift:async()=>(await import("./attendance-lists-MXQNWUIH.js")).shiftDomain,storage:async()=>(await import("./storage-ANKKJJJO.js")).storageDomain,task:async()=>(await import("./task-VKVZSF7J.js")).taskDomain,user:async()=>(await import("./user-KEFI7XZI.js")).userDomain,wiki:async()=>(await import("./knowledge-F4FZ4MLH.js")).wikiDomain,workchange:async()=>(await import("./attendance-lists-MXQNWUIH.js")).
|
|
7
|
+
workchangeDomain,workflow:async()=>(await import("./workflow-4FHTOQZZ.js")).workflowDomain};async function loadDomain(name){return LOADERS[name]()}export{loadDomain};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
+
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
+
var DOMAIN_NAMES=["agent-loop","attendance","backlog","company","contract","customer","department","deposit","estimate","inquiry","invoice","job-title","leave","media","meeting","note","notification","position","project","prospect","receivable","report","shift","storage","task","user","wiki","workchange","workflow"];function isDomainName(value){return value!==void 0&&DOMAIN_NAMES.includes(value)}var HELP_TOKEN="help";var API_TOKEN="api";export{DOMAIN_NAMES,isDomainName,HELP_TOKEN,API_TOKEN};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{readBody}from"./chunk-HGTG5XQ7.js";import{WORKFLOWS_PATH}from"./chunk-
|
|
3
|
+
import{readBody}from"./chunk-HGTG5XQ7.js";import{WORKFLOWS_PATH}from"./chunk-ELXDRPDV.js";import{UUID_RE,isSafePathSegment}from"./chunk-GMBJTG6A.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-5R4SEO3I.js";import{requireResolved,singleRef,withResolved}from"./chunk-ZN5EFDH7.js";import{acknowledgement,isRecord,pick}from"./chunk-ZWVYVS2A.js";import{ApiResponseError,UsageError}from"./chunk-7WSNIXTQ.js";var WORKFLOW_FLAG={name:"--workflow",summary:"\u7533\u8ACB\u66F8\uFF08\u30EF\u30FC\u30AF\u30D5\u30ED\u30FC\uFF09\u306E\u540D\u524D\u304B ID \u3067\u7D5E\u308A\u8FBC\u3080",takesValue:true,placeholder:"<\u30EF\u30FC\u30AF\u30D5\u30ED\u30FC>"};var CATEGORIES={undefined:"\u6C4E\u7528",paid_holiday:"\u6709\u7D66\u4F11\u6687",substitute_holiday:"\u632F\u66FF\u4F11\u6687",comp_holiday:"\u4EE3\u4F11",absence:"\u6B20\u52E4",special_holiday:"\u7279\u5225\u4F11\u6687",other_leave:"\u305D\u306E\u4ED6\u4F11\u6687\u30FB\u6B20\u52E4",
|
|
4
4
|
sales:"\u53D6\u5F15",commuting_expenses:"\u901A\u52E4\u4EA4\u901A\u8CBB",cms_publish:"\u30B3\u30F3\u30C6\u30F3\u30C4\u516C\u958B",equipment_lending:"\u5099\u54C1\u8CB8\u51FA",ai_tool_license:"AI\u30C4\u30FC\u30EB\u30E9\u30A4\u30BB\u30F3\u30B9",qualification_bonus:"\u5408\u683C\u304A\u795D\u3044\u91D1"};var CATEGORY_HELP=`\u30AB\u30C6\u30B4\u30EA: ${Object.entries(CATEGORIES).map(([key,label])=>`${key}\uFF08${label}\uFF09`).join(" / ")}`;var WORKFLOW_STATUSES=["active","inactive","draft"];var INSTANCE_STATUSES=[
|
|
5
5
|
"new","in_progress","approved","rejected","canceled","sent_back"];var INSTANCE_STATUS_HELP="\u72B6\u614B: new\uFF08\u4E0B\u66F8\u304D\uFF09/ in_progress\uFF08\u627F\u8A8D\u5F85\u3061\uFF09/ approved\uFF08\u627F\u8A8D\u6E08\u307F\uFF09/ rejected\uFF08\u5374\u4E0B\uFF09/ canceled\uFF08\u53D6\u6D88\uFF09/ sent_back\uFF08\u5DEE\u3057\u623B\u3057\uFF09";var WORKFLOW_COLUMNS=["id","name","defined_category","status","is_hidden","valid_from","valid_to"];var WORKFLOW_ADMIN_COLUMNS=[...WORKFLOW_COLUMNS,"s\
|
|
6
6
|
tep_count"];var WORKFLOW_GET_COLUMNS=["id","name","defined_category","status","is_hidden","valid_from","valid_to","description"];var INSTANCE_COLUMNS=["id","title","workflow_name","status","current_step_no","applicant_name","applied_at","completed_at"];var INSTANCE_GET_COLUMNS=["id","title","workflow_id","workflow_name","status","current_step_no","applicant_name","applied_at","completed_at","can_approve","is_editable","is_cancelable"];var PENDING_COLUMNS=["id","title","workflow_name","applicant_\
|
package/dist/cli.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
3
3
|
const require = __twpCreateRequire(import.meta.url);
|
|
4
|
-
import{GLOBAL_OPTIONS_HELP}from"./chunk-
|
|
4
|
+
import{GLOBAL_OPTIONS_HELP}from"./chunk-I4ARX6NM.js";import{parseArgv}from"./chunk-BJLXXRSY.js";import"./chunk-NAUH75MM.js";import"./chunk-UVUVEL3B.js";import"./chunk-QQRJLH6B.js";import"./chunk-VSJBJXZO.js";var VERSION=true?"0.39.0":"0.0.0-dev";var HELP=`twp ${VERSION} \u2014 TWP CLI
|
|
5
5
|
|
|
6
6
|
\u4F7F\u3044\u65B9:
|
|
7
7
|
twp \u5BFE\u8A71 TUI \u3092\u8D77\u52D5
|
|
@@ -298,9 +298,109 @@ import{GLOBAL_OPTIONS_HELP}from"./chunk-TAN5I2DP.js";import{parseArgv}from"./chu
|
|
|
298
298
|
twp estimate list \u898B\u7A4D\u3092\u4E00\u89A7\u3059\u308B\uFF08--status\u30FB--customer\u30FB--assignee\u30FB--from/--to\uFF09
|
|
299
299
|
twp estimate get <\u898B\u7A4DID>
|
|
300
300
|
\u898B\u7A4D1\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B
|
|
301
|
+
twp estimate create \u898B\u7A4D\u3092\u4F5C\u6210\u3059\u308B\uFF08--content-file\u30FB--generate-cli-skeleton \u3067\u3072\u306A\u5F62\uFF09
|
|
302
|
+
twp estimate update <\u898B\u7A4DID>
|
|
303
|
+
\u898B\u7A4D\u3092\u66F8\u304D\u63DB\u3048\u308B\uFF08--content-file \u306B\u66F8\u3044\u305F\u9805\u76EE\u3060\u3051\uFF09
|
|
304
|
+
twp estimate delete <\u898B\u7A4DID>
|
|
305
|
+
\u898B\u7A4D\u3092\u524A\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
306
|
+
twp estimate memo <\u898B\u7A4DID>
|
|
307
|
+
\u898B\u7A4D\u306E\u793E\u5185\u5171\u6709\u30E1\u30E2\u3092\u66F8\u304D\u63DB\u3048\u308B\uFF08--text\u30FB--clear\uFF09
|
|
308
|
+
twp estimate link-invoice <\u898B\u7A4DID>
|
|
309
|
+
\u65E2\u5B58\u306E\u8ACB\u6C42\u3092\u898B\u7A4D\u306B\u7D10\u3065\u3051\u308B\uFF08--invoice / --invoice-id\u30FB--yes\uFF09
|
|
310
|
+
twp estimate deposits <\u898B\u7A4DID>
|
|
311
|
+
\u898B\u7A4D\u306B\u7D10\u3065\u304F\u8ACB\u6C42\u3078\u306E\u5165\u91D1\u3092\u4E00\u89A7\u3059\u308B\uFF08\u8CA9\u58F2\u7BA1\u7406\u306E\u7BA1\u7406\u8005\uFF09
|
|
312
|
+
twp estimate scan-order-form
|
|
313
|
+
\u6CE8\u6587\u66F8\u304B\u3089\u6CE8\u6587\u66F8\u756A\u53F7\u3092 AI \u3067\u8AAD\u3080\uFF08--file\u30FBAI \u30AF\u30EC\u30B8\u30C3\u30C8\u30FB--yes\uFF09
|
|
314
|
+
twp estimate allocation list <\u898B\u7A4DID>
|
|
315
|
+
\u898B\u7A4D\u306E\u90E8\u7F72\u6309\u5206\u3092\u8868\u793A\u3059\u308B
|
|
316
|
+
twp estimate allocation set <\u898B\u7A4DID>
|
|
317
|
+
\u90E8\u7F72\u6309\u5206\u3092\u5168\u4EF6\u7F6E\u304D\u63DB\u3048\u308B\uFF08--split <\u90E8\u7F72>=<\u91D1\u984D>\u30FB--yes\uFF09
|
|
318
|
+
twp estimate allocation delete <\u898B\u7A4DID>
|
|
319
|
+
\u90E8\u7F72\u6309\u5206\u3092\u3059\u3079\u3066\u524A\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
320
|
+
twp estimate case-document list
|
|
321
|
+
\u898B\u7A4D\u306E\u6848\u4EF6\u66F8\u985E\u3092\u4E00\u89A7\u3059\u308B\uFF08--estimate <\u898B\u7A4DID>\uFF09
|
|
322
|
+
twp estimate case-document get <\u66F8\u985EID>
|
|
323
|
+
\u6848\u4EF6\u66F8\u985E1\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08\u73FE\u884C\u7248\u30FB\u904E\u53BB\u7248\u3092\u542B\u3080\uFF09
|
|
324
|
+
twp estimate case-document create
|
|
325
|
+
\u30D5\u30A1\u30A4\u30EB\u3092\u6848\u4EF6\u66F8\u985E\u3068\u3057\u3066\u767B\u9332\u3059\u308B\uFF08--estimate\u30FB--file\u30FB--type\u30FB--name\uFF09
|
|
326
|
+
twp estimate case-document add-version <\u66F8\u985EID>
|
|
327
|
+
\u6848\u4EF6\u66F8\u985E\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u5DEE\u3057\u66FF\u3048\u308B\uFF08\u65B0\u3057\u3044\u7248\uFF09
|
|
328
|
+
twp estimate case-document update <\u66F8\u985EID>
|
|
329
|
+
\u6848\u4EF6\u66F8\u985E\u306E\u66F8\u985E\u540D\u30FB\u7A2E\u5225\u3092\u5909\u66F4\u3059\u308B
|
|
330
|
+
twp estimate case-document delete <\u66F8\u985EID>
|
|
331
|
+
\u6848\u4EF6\u66F8\u985E\u3092\u524A\u9664\u3059\u308B\uFF08\u9867\u5BA2\u7BA1\u7406\u306E\u7BA1\u7406\u8005\u30FB--yes \u304C\u8981\u308B\uFF09
|
|
332
|
+
twp estimate case-document download <\u66F8\u985EID>
|
|
333
|
+
\u6848\u4EF6\u66F8\u985E\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u66F8\u304D\u51FA\u3059\uFF08--out\u30FB--rev \u3067\u904E\u53BB\u7248\uFF09
|
|
301
334
|
twp invoice list \u8ACB\u6C42\u3092\u4E00\u89A7\u3059\u308B\uFF08--status\u30FB--customer\u30FB--allocation unallocated \u3067\u672A\u56DE\u53CE\uFF09
|
|
302
335
|
twp invoice get <\u8ACB\u6C42ID>
|
|
303
336
|
\u8ACB\u6C421\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B
|
|
337
|
+
twp invoice create \u8ACB\u6C42\u3092\u4F5C\u6210\u3059\u308B\uFF08--content-file\u30FB--generate-cli-skeleton \u3067\u3072\u306A\u5F62\uFF09
|
|
338
|
+
twp invoice update <\u8ACB\u6C42ID>
|
|
339
|
+
\u8ACB\u6C42\u3092\u66F8\u304D\u63DB\u3048\u308B\uFF08--content-file \u306B\u66F8\u3044\u305F\u9805\u76EE\u3060\u3051\uFF09
|
|
340
|
+
twp invoice delete <\u8ACB\u6C42ID>
|
|
341
|
+
\u8ACB\u6C42\u3092\u524A\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
342
|
+
twp invoice cancel <\u8ACB\u6C42ID>
|
|
343
|
+
\u8ACB\u6C42\u3092\u53D6\u6D88\uFF08\u7121\u52B9\uFF09\u306B\u3059\u308B\uFF08--reason\u30FB\u8CA9\u58F2\u7BA1\u7406\u306E\u7BA1\u7406\u8005\u30FB--yes\uFF09
|
|
344
|
+
twp invoice uncancel <\u8ACB\u6C42ID>
|
|
345
|
+
\u8ACB\u6C42\u306E\u53D6\u6D88\u3092\u89E3\u9664\u3057\u3001\u53D6\u6D88\u524D\u306E\u30B9\u30C6\u30FC\u30BF\u30B9\u3078\u623B\u3059\uFF08--yes\uFF09
|
|
346
|
+
twp invoice consolidate \u540C\u3058\u53D6\u5F15\u5148\u306E\u8ACB\u6C42\u3092\u7D71\u5408\u8ACB\u6C42\u66F8\u306B\u307E\u3068\u3081\u308B\uFF08--invoices\u30FB--yes\uFF09
|
|
347
|
+
twp invoice memo <\u8ACB\u6C42ID>
|
|
348
|
+
\u8ACB\u6C42\u306E\u793E\u5185\u5171\u6709\u30E1\u30E2\u3092\u66F8\u304D\u63DB\u3048\u308B\uFF08--text\u30FB--clear\uFF09
|
|
349
|
+
twp invoice export \u8ACB\u6C42\u3092 CSV \u306B\u66F8\u304D\u51FA\u3059\uFF08--out\u30FB--format mf-journal \u3067 MF \u4ED5\u8A33\uFF09
|
|
350
|
+
twp invoice send <\u8ACB\u6C42ID>
|
|
351
|
+
\u8ACB\u6C42\u66F8 PDF \u3092\u30E1\u30FC\u30EB\u3067\u9001\u308B\uFF08--to \u306E\u5B9B\u5148\u3078\u5C4A\u304F\u30FB--yes\uFF09
|
|
352
|
+
twp invoice payment-link <\u8ACB\u6C42ID>
|
|
353
|
+
\u652F\u6255\u3044\u30EA\u30F3\u30AF\uFF08Stripe\uFF09\u3092\u4F5C\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
354
|
+
twp invoice auto-template list
|
|
355
|
+
\u81EA\u52D5\u8ACB\u6C42\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4E00\u89A7\u3059\u308B\uFF08--active\u30FB\u8CA9\u58F2\u7BA1\u7406\u306E\u7BA1\u7406\u8005\uFF09
|
|
356
|
+
twp invoice auto-template get <\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8ID>
|
|
357
|
+
\u81EA\u52D5\u8ACB\u6C42\u30C6\u30F3\u30D7\u30EC\u30FC\u30C81\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08\u6B21\u306E\u767A\u884C\u306E\u898B\u8FBC\u307F\u3064\u304D\uFF09
|
|
358
|
+
twp invoice auto-template create
|
|
359
|
+
\u81EA\u52D5\u8ACB\u6C42\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\uFF08--content-file\u30FB\u6709\u52B9\u306A\u3089\u672C\u7269\u306E\u8ACB\u6C42\u3092\u767A\u884C\uFF09
|
|
360
|
+
twp invoice auto-template update <\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8ID>
|
|
361
|
+
\u81EA\u52D5\u8ACB\u6C42\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u66F8\u304D\u63DB\u3048\u308B\uFF08--content-file \u306B\u66F8\u3044\u305F\u9805\u76EE\u3060\u3051\uFF09
|
|
362
|
+
twp invoice auto-template delete <\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8ID>
|
|
363
|
+
\u81EA\u52D5\u8ACB\u6C42\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u524A\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
364
|
+
twp invoice auto-template history (<\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8ID> | --all-templates)
|
|
365
|
+
\u81EA\u52D5\u767A\u884C\u306E\u5C65\u6B74\u3092\u4E00\u89A7\u3059\u308B\uFF08--status\u30FB--from/--to\uFF09
|
|
366
|
+
twp contract list \u53D6\u5F15\u5951\u7D04\u3092\u4E00\u89A7\u3059\u308B\uFF08--status\u30FB--customer\u30FB--estimate\u3002\u5951\u7D04\u66F8 PDF \u306F customer contract\uFF09
|
|
367
|
+
twp contract get <\u5951\u7D04ID>
|
|
368
|
+
\u53D6\u5F15\u5951\u7D041\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B
|
|
369
|
+
twp contract create \u53D6\u5F15\u5951\u7D04\u3092\u4F5C\u6210\u3059\u308B\uFF08--content-file\u30FB--generate-cli-skeleton --estimate \u3067\u3072\u306A\u5F62\uFF09
|
|
370
|
+
twp contract update <\u5951\u7D04ID>
|
|
371
|
+
\u53D6\u5F15\u5951\u7D04\u3092\u66F8\u304D\u63DB\u3048\u308B\uFF08--content-file \u306B\u66F8\u3044\u305F\u9805\u76EE\u3060\u3051\uFF09
|
|
372
|
+
twp contract delete <\u5951\u7D04ID>
|
|
373
|
+
\u53D6\u5F15\u5951\u7D04\u3092\u524A\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\u30FB\u8ACB\u6C42\u304C\u7D10\u3065\u3051\u3070\u65AD\u3089\u308C\u308B\uFF09
|
|
374
|
+
twp deposit list \u5165\u91D1\u3092\u4E00\u89A7\u3059\u308B\uFF08--customer\u30FB--allocation\u30FB--from/--to\u3002\u8CA9\u58F2\u7BA1\u7406\u306E\u7BA1\u7406\u8005\uFF09
|
|
375
|
+
twp deposit get <\u5165\u91D1ID>
|
|
376
|
+
\u5165\u91D11\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08\u5F15\u5F53\u306E\u5185\u8A33\u3064\u304D\uFF09
|
|
377
|
+
twp deposit create \u5165\u91D1\u3092\u767B\u9332\u3059\u308B\uFF08--payee\u30FB--date\u30FB--amount\uFF09
|
|
378
|
+
twp deposit update <\u5165\u91D1ID>
|
|
379
|
+
\u5165\u91D1\u3092\u66F8\u304D\u63DB\u3048\u308B\uFF08\u6307\u5B9A\u3057\u305F\u9805\u76EE\u3060\u3051\u30FB--clear \u3067\u7A7A\u306B\uFF09
|
|
380
|
+
twp deposit delete <\u5165\u91D1ID>
|
|
381
|
+
\u5165\u91D1\u3092\u524A\u9664\u3059\u308B\uFF08\u5F15\u5F53\u3082\u89E3\u9664\u3055\u308C\u308B\u30FB--yes \u304C\u8981\u308B\uFF09
|
|
382
|
+
twp deposit export \u5165\u91D1\u3092 CSV \u306B\u66F8\u304D\u51FA\u3059\uFF08--out\u30FB\u5F15\u5F53\u660E\u7D301\u884C\uFF1D1\u30EC\u30B3\u30FC\u30C9\uFF09
|
|
383
|
+
twp deposit allocation list <\u5165\u91D1ID>
|
|
384
|
+
\u5165\u91D1\u306E\u5F15\u5F53\u3092\u4E00\u89A7\u3059\u308B
|
|
385
|
+
twp deposit allocation add <\u5165\u91D1ID>
|
|
386
|
+
\u8ACB\u6C42\u3078\u5F15\u304D\u5F53\u3066\u308B\uFF08--invoice-id / --invoice \u3068 --amount\u30FB--file \u3067\u4E00\u62EC\uFF09
|
|
387
|
+
twp deposit allocation remove <\u5165\u91D1ID> <\u5F15\u5F53ID>
|
|
388
|
+
\u5F15\u5F53\u3092\u89E3\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
389
|
+
twp deposit allocation fill <\u5165\u91D1ID>
|
|
390
|
+
\u65E2\u5B58\u306E\u5F15\u5F53\u3092\u8ACB\u6C42\u306E\u672A\u5165\u91D1\u6B8B\u307E\u3067\u5F15\u304D\u4E0A\u3052\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
391
|
+
twp deposit plan list \u5165\u91D1\u4E88\u5B9A\uFF08\u652F\u6255\u671F\u65E5\u3067\u7D5E\u3063\u305F\u672A\u56DE\u53CE\u8ACB\u6C42\u306E\u53D6\u5F15\u5148\u3054\u3068\u306E\u5408\u8A08\uFF09\u3092\u4E00\u89A7\u3059\u308B
|
|
392
|
+
twp deposit plan register
|
|
393
|
+
\u5165\u91D1\u4E88\u5B9A\u304B\u3089\u5165\u91D1\u3068\u5F15\u5F53\u3092\u307E\u3068\u3081\u3066\u767B\u9332\u3059\u308B\uFF08--content-file\u30FB--generate-cli-skeleton\uFF09
|
|
394
|
+
twp receivable list \u57FA\u6E96\u5E74\u6708\u306E\u58F2\u639B\u91D1\u6B8B\u9AD8\uFF08\u30B5\u30DE\u30EA\u30FC\u3068\u660E\u7D30\uFF09\u3092\u8868\u793A\u3059\u308B\uFF08--month\uFF09
|
|
395
|
+
twp receivable export \u58F2\u639B\u91D1\u6B8B\u9AD8\u3092 CSV \u306B\u66F8\u304D\u51FA\u3059\uFF08--out\u30FB--type summary|detail\uFF09
|
|
396
|
+
twp receivable closing list
|
|
397
|
+
\u7DE0\u3081\u6E08\u307F\u306E\u6708\u3092\u4E00\u89A7\u3059\u308B\uFF08\u78BA\u5B9A\u5024\u3068\u306E\u5DEE\u7570\u306E\u6709\u7121\u3064\u304D\uFF09
|
|
398
|
+
twp receivable closing get <\u5E74\u6708>
|
|
399
|
+
1\u304B\u6708\u306E\u7DE0\u3081\u306E\u72B6\u614B\uFF08\u78BA\u5B9A\u5024\u30FB\u73FE\u5728\u5024\u30FB\u5DEE\u7570\uFF09\u3092\u8868\u793A\u3059\u308B
|
|
400
|
+
twp receivable closing close <\u5E74\u6708>
|
|
401
|
+
\u6708\u3092\u7DE0\u3081\u308B\uFF08\u305D\u306E\u6708\u306E\u5165\u91D1\u3092\u52D5\u304B\u305B\u306A\u304F\u3059\u308B\u30FB--yes \u304C\u8981\u308B\uFF09
|
|
402
|
+
twp receivable closing reopen <\u5E74\u6708>
|
|
403
|
+
\u6708\u306E\u7DE0\u3081\u3092\u89E3\u9664\u3059\u308B\uFF08\u78BA\u5B9A\u5024\u3092\u6D88\u3059\u30FB--yes \u304C\u8981\u308B\uFF09
|
|
304
404
|
twp company list \u53D6\u5F15\u5148\u4F01\u696D\u3092\u4E00\u89A7\u3059\u308B\uFF08--keyword\uFF09
|
|
305
405
|
twp company get <\u53D6\u5F15\u5148>
|
|
306
406
|
\u53D6\u5F15\u5148\u4F01\u696D1\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08\u540D\u524D\u304B ID\uFF09
|
|
@@ -437,15 +537,15 @@ TUI \u5185:
|
|
|
437
537
|
TWP API \u3092\u547C\u3079\u307E\u3059\u3002TWP API \u306E\u30C4\u30FC\u30EB\u306F\u65E2\u5B9A\u3067\u78BA\u8A8D\u304C\u51FA\u307E\u3059\uFF08-p \u3067\u306F\u62D2\u5426\u3002--allowed-tools \u3067\u540D\u524D\u3092\u8A31\u53EF\uFF09\u3002
|
|
438
538
|
\u4F1A\u8A71\u30FB\u30ED\u30FC\u30AB\u30EB\u30C4\u30FC\u30EB\uFF08\u30D5\u30A1\u30A4\u30EB\u30FB\u30B3\u30DE\u30F3\u30C9\u30FBgit\uFF09\u306F\u30C6\u30CA\u30F3\u30C8\u306E\u30AF\u30EC\u30B8\u30C3\u30C8\u3067\u5B9F\u969B\u306B\u52D5\u304D\u307E\u3059\u3002
|
|
439
539
|
`;function ignoreEpipe(stream){stream.on("error",err=>{if(err.code==="EPIPE")process.exit(0);throw err})}async function main(){const nodeMajor=Number(process.versions.node.split(".")[0]);if(nodeMajor<22){process.stderr.write(`twp-cli \u306B\u306F Node.js 22 \u4EE5\u4E0A\u304C\u5FC5\u8981\u3067\u3059\uFF08\u73FE\u5728: ${process.versions.node}\uFF09
|
|
440
|
-
`);process.exit(1)}ignoreEpipe(process.stdout);ignoreEpipe(process.stderr);if(process.env["TWP_AUTO_UPDATE_WORKER"]==="1"){const{runAutoUpdateWorker}=await import("./auto-update-worker-Y44TD6FD.js");await runAutoUpdateWorker().catch(()=>void 0);return}const[first,...rest]=process.argv.slice(2);if(first==="__complete"||first==="completion"){const completion=await import("./completion-
|
|
441
|
-
const[{loadDomain},{loadUserConfig}]=await Promise.all([import("./registry-
|
|
540
|
+
`);process.exit(1)}ignoreEpipe(process.stdout);ignoreEpipe(process.stderr);if(process.env["TWP_AUTO_UPDATE_WORKER"]==="1"){const{runAutoUpdateWorker}=await import("./auto-update-worker-Y44TD6FD.js");await runAutoUpdateWorker().catch(()=>void 0);return}const[first,...rest]=process.argv.slice(2);if(first==="__complete"||first==="completion"){const completion=await import("./completion-6R5D5TQQ.js");if(first==="completion"){process.exitCode=completion.runCompletion(rest,process.stdout,process.stderr);return}
|
|
541
|
+
const[{loadDomain},{loadUserConfig}]=await Promise.all([import("./registry-3WV46K26.js"),import("./config-3CNEQ7KN.js")]);process.exitCode=await completion.runComplete(rest,process.stdout,{loadDomain,profileNames:()=>Object.keys(loadUserConfig().profiles??{})});return}if(first==="configure"){const autoUpdate2=await import("./auto-update-JNSBIQM6.js");autoUpdate2.registerRunning();autoUpdate2.onStartup(VERSION);const{runConfigure}=await import("./configure-PIOFJFL5.js");process.exitCode=
|
|
442
542
|
await runConfigure(rest);return}const args=parseArgv(process.argv.slice(2));if(args.command==="version"){process.stdout.write(`${VERSION}
|
|
443
543
|
`);return}if(args.command==="help"){process.stdout.write(HELP);return}if(args.unknown.length>0){process.stderr.write(`\u4E0D\u660E\u306A\u5F15\u6570: ${args.unknown.join(" ")}
|
|
444
544
|
|
|
445
|
-
${HELP}`);process.exitCode=2;return}const autoUpdate=await import("./auto-update-JNSBIQM6.js");autoUpdate.registerRunning();if(args.command==="task-loop"){process.env[autoUpdate.DISABLE_ENV]="1"}else if(args.command!=="update"){autoUpdate.onStartup(VERSION)}if(args.command==="domain"&&args.domain!==void 0){const{runDomain}=await import("./run-
|
|
446
|
-
domainHelp,globals:{...args.profile!==void 0?{profile:args.profile}:{},...args.output!==void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{},dryRun:args.dryRun,debug:args.debug,yes:args.yes,refresh:args.refresh},version:VERSION});return}if(args.command==="api"){const{runApiCommand}=await import("./api-command-
|
|
447
|
-
void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{},dryRun:args.dryRun,debug:args.debug,yes:args.yes},version:VERSION});return}if(args.command==="update"){const{runUpdate}=await import("./update-MAQJ6VWV.js");process.exitCode=await runUpdate({...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}if(args.command==="login"||args.command==="logout"||args.command==="whoami"){const{runLogin,runLogout,runWhoami}=await import("./commands-
|
|
448
|
-
const options={profile:args.profile,method:args.loginMethod,tenant:args.tenant,noBrowser:args.loginNoBrowser,cliVersion:VERSION,force:args.logoutForce,...args.output!==void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{}};const runner=args.command==="login"?runLogin:args.command==="logout"?runLogout:runWhoami;process.exitCode=await runner(options);return}if(args.command==="task-loop"){const{runTaskLoop}=await import("./commands-
|
|
545
|
+
${HELP}`);process.exitCode=2;return}const autoUpdate=await import("./auto-update-JNSBIQM6.js");autoUpdate.registerRunning();if(args.command==="task-loop"){process.env[autoUpdate.DISABLE_ENV]="1"}else if(args.command!=="update"){autoUpdate.onStartup(VERSION)}if(args.command==="domain"&&args.domain!==void 0){const{runDomain}=await import("./run-KNZ43HFF.js");process.exitCode=await runDomain({domain:args.domain,...args.operation!==void 0?{operation:args.operation}:{},argv:args.domainArgv,help:args.
|
|
546
|
+
domainHelp,globals:{...args.profile!==void 0?{profile:args.profile}:{},...args.output!==void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{},dryRun:args.dryRun,debug:args.debug,yes:args.yes,refresh:args.refresh},version:VERSION});return}if(args.command==="api"){const{runApiCommand}=await import("./api-command-IO572BZ4.js");process.exitCode=await runApiCommand({argv:args.domainArgv,help:args.domainHelp,globals:{...args.profile!==void 0?{profile:args.profile}:{},...args.output!==
|
|
547
|
+
void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{},dryRun:args.dryRun,debug:args.debug,yes:args.yes},version:VERSION});return}if(args.command==="update"){const{runUpdate}=await import("./update-MAQJ6VWV.js");process.exitCode=await runUpdate({...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}if(args.command==="login"||args.command==="logout"||args.command==="whoami"){const{runLogin,runLogout,runWhoami}=await import("./commands-K6DQ3O35.js");
|
|
548
|
+
const options={profile:args.profile,method:args.loginMethod,tenant:args.tenant,noBrowser:args.loginNoBrowser,cliVersion:VERSION,force:args.logoutForce,...args.output!==void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{}};const runner=args.command==="login"?runLogin:args.command==="logout"?runLogout:runWhoami;process.exitCode=await runner(options);return}if(args.command==="task-loop"){const{runTaskLoop}=await import("./commands-MLYGGSUE.js");process.exitCode=await runTaskLoop(
|
|
449
549
|
{action:args.taskLoopAction??"run",project:args.project,profile:args.profile,safe:args.safe,daemon:args.daemon,interval:args.interval,maxCycles:args.maxCycles,forceRunner:args.forceRunner,force:args.stopForce,drain:args.stopDrain,engine:args.engine,version:VERSION,verbose:args.verbose,scheduleNow:args.scheduleNow,scheduleCounts:args.scheduleCounts,scheduleGate:args.scheduleGate,charterOp:args.charterOp,charterInput:args.charterFile,charterOutput:args.charterOut,charterRevision:args.charterRevision,
|
|
450
|
-
skillOp:args.skillOp,skillName:args.skillName,skillAll:args.skillAll,skillDir:args.skillDir,yes:args.yes,ais:args.ais,workspace:args.workspace,aiConfigFile:args.aiConfigFile,noAiConfigFile:args.noAiConfigFile});return}if(args.command==="print"){const{runOneShot}=await import("./oneshot-
|
|
451
|
-
allowedTools,disallowedTools:args.disallowedTools,...args.model!==void 0?{model:args.model}:{},...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}const{startTui}=await import("./app-
|
|
550
|
+
skillOp:args.skillOp,skillName:args.skillName,skillAll:args.skillAll,skillDir:args.skillDir,yes:args.yes,ais:args.ais,workspace:args.workspace,aiConfigFile:args.aiConfigFile,noAiConfigFile:args.noAiConfigFile});return}if(args.command==="print"){const{runOneShot}=await import("./oneshot-TMGTEN3S.js");process.exitCode=await runOneShot({prompt:args.prompt??"",fromStdin:args.promptFromStdin,mode:args.mode??"dev",...args.permissionMode!==void 0?{permissionMode:args.permissionMode}:{},allowedTools:args.
|
|
551
|
+
allowedTools,disallowedTools:args.disallowedTools,...args.model!==void 0?{model:args.model}:{},...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}const{startTui}=await import("./app-Y2RIXLS4.js");await startTui({mode:args.mode,permissionMode:args.permissionMode,allowedTools:args.allowedTools,disallowedTools:args.disallowedTools,model:args.model,profile:args.profile,noTui:args.noTui||!process.stdout.isTTY,doctor:args.doctor,version:VERSION})}await main();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{
|
|
4
|
-
|
|
3
|
+
import{REQUIRE_ZERO_STATUS,ScheduleApi,collectDue,gateStatus,nowInZone,parseCounts,promptSection}from"./chunk-RFBFR567.js";import{InstanceLock,buildLockOwner,defaultIsLoopProcess,writeLockOwner}from"./chunk-3WHC4FSG.js";import{LoopSettingsApplier,renderStepBudget}from"./chunk-VBX44RKP.js";import{EngineNotConfiguredError,NoopEngine,UnknownEngineError,aiUnavailableLabel,assertKnownEngine,failureHint,isAiUnavailable,needsHumanToRestoreAi}from"./chunk-ZOOEH7ZE.js";import{ServerSkillCatalog,
|
|
4
|
+
formatSkillOrigins}from"./chunk-L52XJFJR.js";import{AgentLoopApi,describeError,filterByStatus,isPermanent,pick,pickString}from"./chunk-QWSXHHFT.js";import"./chunk-VK2Z4QGC.js";import{claudeConfigDir,resolveDetectDeps}from"./chunk-T4QZO6RQ.js";import"./chunk-P4AEFKLM.js";import"./chunk-VRBI2NPI.js";import{resolveProjectRef,uuidProjectIdPolicy}from"./chunk-GMBJTG6A.js";import{AuthSession}from"./chunk-XNLIEUAW.js";import{httpFetch}from"./chunk-J7QYPKVK.js";
|
|
5
5
|
import{compareVersionCores,parseVersionCore}from"./chunk-DXXFUNYN.js";import{effectiveApiUrl,resolveProfile}from"./chunk-4VZKNEVN.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import{duplicateTaskKeyDropReason,excludedKeyInArgs,extractPlanJson,parseOpsCount,parsePlanExcludeKeys,placeholderTaskKey,releaseDeployDropReason,stepToItem,zeroTargetDropReasons}from"./chunk-VCZVITWG.js";import{CapacityReporter,buildLoopConfig,describeOperations,evaluateOwnership,formatHookIds,
|
|
6
6
|
formatHookWiring,localDate,loopStateDir,runHook,runPrefetch,runPreflight}from"./chunk-QVPU4HHG.js";import{killProcessTree}from"./chunk-N2UVRM3Z.js";import{exclusiveInflightEntries,formatExclusiveEntry,normalizeSkillName,skillOfItem,spawnSyncResolved}from"./chunk-AEJHDFXB.js";import{PRIVATE_PROJECT_REF,isPrivateProjectId,isPrivateProjectRef,privateProjectId,projectFileKey}from"./chunk-GY7KI5E5.js";import{isTaskKey}from"./chunk-II5RVJQN.js";import"./chunk-7WSNIXTQ.js";
|
|
7
7
|
import{joinFor}from"./chunk-PMOUHEJQ.js";import"./chunk-5WGOHFAS.js";import{twpHomeDir}from"./chunk-RZVI6PMW.js";import"./chunk-VSJBJXZO.js";import fs10 from"fs";import path8 from"path";import fs from"fs";import path from"path";var LoopLogger=class{constructor(runnerId,logFile,out=process.stdout,now=()=>new Date){this.runnerId=runnerId;this.out=out;this.now=now;if(logFile){fs.mkdirSync(path.dirname(logFile),{recursive:true});this.stream=fs.createWriteStream(logFile,{flags:"a"})}}runnerId;out;now;stream=null;log(message){const d=this.now();const ts=`${d.getFullYear()}-${pad(d.getMonth()+1)}-${pad(d.getDate())} ${pad(d.getHours())}:${pad(d.getMinutes())}:${pad(d.getSeconds())}`;const line=`[${ts}] [${this.runnerId}] ${stripTerminalControls(
|
|
@@ -312,7 +312,7 @@ const startedAtMs=now();let warned="";let done=false;const check=()=>{if(done)re
|
|
|
312
312
|
decision.key)return;warned=decision.key;handlers.onWarn(decision.reason);return}done=true;const recorded=writeRestartAttempt(opts.stateDir,opts.projectKey,{from:decision.from,to:decision.to,at:new Date(now()).toISOString()},opts.store);if(!recorded){handlers.onWarn(`\u518D\u8D77\u52D5\u8A18\u9332\u3092\u66F8\u3051\u307E\u305B\u3093\u3067\u3057\u305F\uFF08${restartAttemptPath(opts.stateDir,opts.projectKey)}\uFF09\u3002\u540C\u3058\u7248\u30C9\u30EA\u30D5\u30C8\u304C\u89E3\u6D88\u3057\u306A\u3044\u5834\u5408\u3001\u518D\u8D77\u52D5\u3092\u7E70\u308A\u8FD4\u3059\u9632\u6CE2\u5824\u304C\u52B9\u304D\u307E\u305B\u3093`)}
|
|
313
313
|
handlers.onRestart({from:decision.from,to:decision.to})};const timer=setInterval(check,opts.intervalMs??DRIFT_POLL_MS);timer.unref?.();return{stop:()=>{done=true;clearInterval(timer)},check}}import fs9 from"fs";import path7 from"path";var POLL_MS=1e3;var MAX_STOP_BYTES=4096;var MAX_AT_LENGTH=64;function markerPath(lockDir2,kind){return path7.join(lockDir2,kind)}function requestMarker(lockDir2,kind,pid,deps={}){const target=markerPath(lockDir2,kind);const write=deps.writeFileSync??((p,d)=>fs9.writeFileSync(p,d,{flag:"wx",mode:384}));const now=deps.now??(()=>new Date);clearMarker(lockDir2,kind,deps);try{write(target,`${JSON.stringify({pid,at:now().toISOString()})}
|
|
314
314
|
`);return{ok:true}}catch(err){const e=err;return{ok:false,reason:e.code??"UNKNOWN"}}}function readMarker(lockDir2,kind,deps={}){const target=markerPath(lockDir2,kind);const read=deps.readFileSync??(p=>fs9.readFileSync(p,"utf8"));const size=deps.statSize??(p=>fs9.statSync(p).size);let raw;try{if(size(target)>MAX_STOP_BYTES)return null;raw=read(target)}catch{return null}if(raw.length>MAX_STOP_BYTES)return null;try{const parsed=JSON.parse(raw);if(typeof parsed!=="object"||parsed===null)return null;const pid=parsed.pid;const at=parsed.at;if(typeof pid!=="number"||!Number.isInteger(pid)||
|
|
315
|
-
pid<=0)return null;return{pid,at:sanitizeAt(at)}}catch{return null}}function sanitizeAt(at){if(typeof at!=="string")return"";return at.replace(/[\u0000-\u001f\u007f]/g," ").slice(0,MAX_AT_LENGTH)}function clearMarker(lockDir2,kind,deps={}){const rm=deps.rmSync??(p=>fs9.rmSync(p,{recursive:true,force:true}));try{rm(markerPath(lockDir2,kind))}catch{}}function watchMarker(lockDir2,kind,selfPid,onStop,deps={}){let fired=false;const timer=setInterval(()=>{if(fired)return;const req=readMarker(lockDir2,kind,deps);if(req===null||req.pid!==selfPid)return;fired=true;onStop(req)},deps.intervalMs??POLL_MS);timer.unref?.();return()=>{fired=true;clearInterval(timer)}}function safe(s){return stripTerminalControls(s)}function compactTimestamp(at=new Date){const p2=n=>String(n).padStart(2,"0");return`${at.getFullYear()}${p2(at.getMonth()+1)}${p2(at.getDate())}-${p2(at.getHours())}${p2(at.getMinutes())}${p2(at.getSeconds())}`}async function buildEngine(config,log){if(config.engine==="noop")return new NoopEngine;const{DispatchEngine}=await import("./ai-dispatch-
|
|
315
|
+
pid<=0)return null;return{pid,at:sanitizeAt(at)}}catch{return null}}function sanitizeAt(at){if(typeof at!=="string")return"";return at.replace(/[\u0000-\u001f\u007f]/g," ").slice(0,MAX_AT_LENGTH)}function clearMarker(lockDir2,kind,deps={}){const rm=deps.rmSync??(p=>fs9.rmSync(p,{recursive:true,force:true}));try{rm(markerPath(lockDir2,kind))}catch{}}function watchMarker(lockDir2,kind,selfPid,onStop,deps={}){let fired=false;const timer=setInterval(()=>{if(fired)return;const req=readMarker(lockDir2,kind,deps);if(req===null||req.pid!==selfPid)return;fired=true;onStop(req)},deps.intervalMs??POLL_MS);timer.unref?.();return()=>{fired=true;clearInterval(timer)}}function safe(s){return stripTerminalControls(s)}function compactTimestamp(at=new Date){const p2=n=>String(n).padStart(2,"0");return`${at.getFullYear()}${p2(at.getMonth()+1)}${p2(at.getDate())}-${p2(at.getHours())}${p2(at.getMinutes())}${p2(at.getSeconds())}`}async function buildEngine(config,log){if(config.engine==="noop")return new NoopEngine;const{DispatchEngine}=await import("./ai-dispatch-KRMDHQEF.js");const{DEFAULT_PREFLIGHT_HOSTS}=await import("./ai-dispatch-KRMDHQEF.js");const extraHosts=config.
|
|
316
316
|
operations.preflightHosts;return new DispatchEngine(config.ai,log,{workspace:config.workspace,charterFile:config.charterFile??void 0,charterEnabled:config.charterEnabled,...config.charterPrefix===null?{}:{charterPrefix:config.charterPrefix},...config.charterSuffix===null?{}:{charterSuffix:config.charterSuffix},serverPrompts:()=>config.serverPrompts??{},compileCommand:config.compileCommand??void 0,skillOverlayDir:path8.join(config.stateDir,"skill-overlay",projectFileKey(config.projectId)),launcherBin:config.
|
|
317
317
|
claudeLauncher.bin,...extraHosts.length>0?{preflightHosts:[...DEFAULT_PREFLIGHT_HOSTS,...extraHosts]}:{}})}function lockDir(config){return path8.join(config.stateDir,`task-loop-${projectFileKey(config.projectId)}.lock.d`)}async function runTaskLoop(opts){if(opts.action==="stop")return await stopLoop(opts);const profile=resolveProfile(opts.profile);let creds;try{creds=new AuthSession(profile.name,profile.apiUrl).loadOrThrow()}catch(err){process.stderr.write(`${err.message}
|
|
318
318
|
`);return 1}const apiUrl=effectiveApiUrl(profile,creds.api_url);const session=new AuthSession(profile.name,apiUrl);const projectRef=opts.project??process.env.TWP_PROJECT??"";if(projectRef===""){process.stderr.write("--project <\u30AD\u30FC|UUID> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08TWP_PROJECT \u3067\u3082\u53EF\uFF09\n");return 2}const projectApi=new ProjectApi(apiUrl,session);let project;try{project=await projectApi.resolve(projectRef)}catch(err){process.stderr.write(`${err.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
+
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
+
import{customerDocumentSubresources}from"./chunk-4ZT5LTRX.js";import{COMPANY_FIELDS,COMPANY_LICENSE,CUSTOMER_LICENSE,customerSubresources,customerWriteOperations,dataOf,levelForbidden}from"./chunk-QQLWMHGR.js";import"./chunk-VECUCVIY.js";import"./chunk-DDKZ5IPT.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-MHRGKUMK.js";import"./chunk-I6DWJXPC.js";import{featureLicenseGuidance,licenseForbidden}from"./chunk-RZ54TCQU.js";import{repeatedValues}from"./chunk-IOGVQVGD.js";
|
|
4
|
+
import"./chunk-UDPJ2IGK.js";import{CUSTOMERS_PATH,SALES_COMPANIES_PATH,isExactNumericId}from"./chunk-ELXDRPDV.js";import{ApiError}from"./chunk-IF2K4PM5.js";import{isSafePathSegment}from"./chunk-GMBJTG6A.js";import"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import"./chunk-4VZKNEVN.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-GY7KI5E5.js";import{LIST_FLAGS,LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,PAGE_NUMBER_PAGING_HELP,
|
|
5
|
+
STABLE_PAGE_ORDER,envelopePaging,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes,positiveInteger}from"./chunk-5R4SEO3I.js";import"./chunk-II5RVJQN.js";import{requireResolved,singleRef,withResolved}from"./chunk-ZN5EFDH7.js";import{acknowledgement,isRecord,pick}from"./chunk-ZWVYVS2A.js";import{ApiResponseError,UsageError}from"./chunk-7WSNIXTQ.js";import"./chunk-RZVI6PMW.js";import"./chunk-VSJBJXZO.js";var CUSTOMER_FLAG_FIELD={kind:"boolean",flag:"--customer",key:"customer_flg",summary:"\u9867\u5BA2\u3068\u3057\u3066\u6271\u3046\u304B\uFF08true / false\uFF09"};var FIELDS=[...COMPANY_FIELDS,CUSTOMER_FLAG_FIELD];var COLUMNS=["id","company_name","company_name_kana","company_short_name","customer_flg","supplier_flg","tel","address1"];var WRITE_FORBIDDEN=levelForbidden(COMPANY_LICENSE,"\u53D6\u5F15\u5148\u306E\u4F5C\u6210\u30FB\u66F4\u65B0\u306B\u306F\u3001\u8CA9\u58F2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u30E1\u30F3\u30D0\u30FC\u300D\u4EE5\u4E0A\u304B\u3001\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7DE8\u96C6\u8005\u300D\u4EE5\u4E0A\u306E\u3069\u3061\u3089\u304B\u304C\u8981\u308A\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");
|
|
6
|
+
var DELETE_FORBIDDEN=levelForbidden(COMPANY_LICENSE,"\u53D6\u5F15\u5148\u306E\u524A\u9664\u306B\u306F\u3001\u8CA9\u58F2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u30E1\u30F3\u30D0\u30FC\u300D\u4EE5\u4E0A\u304B\u3001\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7BA1\u7406\u8005\u300D\u306E\u3069\u3061\u3089\u304B\u304C\u8981\u308A\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");var REF_HELP="<\u53D6\u5F15\u5148> \u306F\u4F01\u696D\u540D\u30FB\u7565\u79F0\u30FB\u30AB\u30CA\u306E\u5B8C\u5168\u4E00\u81F4\u304B\
|
|
7
|
+
ID\uFF08twp company list \u306E id \u5217\u306E\u6570\u5B57\uFF09\u3067\u6307\u5B9A\u3057\u307E\u3059\u3002\u9867\u5BA2\u30FB\u4ED5\u5165\u5148\u306E\u3069\u3061\u3089\u3082\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002";function companyPath(input){const id=requireResolved(input,"companyId");if(!isExactNumericId(id))throw new UsageError(`\u53D6\u5F15\u5148 ID \u3092\u30D1\u30B9\u306B\u4F7F\u3048\u307E\u305B\u3093: ${id}`);return`${SALES_COMPANIES_PATH}/${id}`}async function resolveCompany(input,ctx,usage){
|
|
8
|
+
const raw=singleRef(input,{flag:"<\u53D6\u5F15\u5148>",label:"\u53D6\u5F15\u5148",usage});return withResolved(input,{companyId:(await ctx.resolver.company(raw,{flag:"<\u53D6\u5F15\u5148>",source:"sales",mustExist:true})).id})}var createOperation={name:"create",summary:"\u53D6\u5F15\u5148\u4F01\u696D\u3092\u767B\u9332\u3059\u308B\uFF08\u9867\u5BA2\u30FB\u4ED5\u5165\u5148\u306E\u3069\u3061\u3089\u304B\u4E00\u65B9\u4EE5\u4E0A\uFF09",usage:"twp company create --name <\u4F01\u696D\u540D> (--customer true | --suppli\
|
|
9
|
+
er true) [\u9805\u76EE\u2026]",description:"--name \u304C\u5FC5\u9808\u3067\u3059\u3002\u9867\u5BA2\uFF08--customer true\uFF09\u304B\u4ED5\u5165\u5148\uFF08--supplier true\uFF09\u306E\u5C11\u306A\u304F\u3068\u3082\u4E00\u65B9\u304C\u8981\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u3082\u540C\u3058\u6761\u4EF6\u3067\u65AD\u308A\u307E\u3059\uFF09\u3002\n\u9867\u5BA2\u3068\u3057\u3066\u767B\u9332\u3059\u308B\u3060\u3051\u306A\u3089 twp customer create \u3067\u3082\u540C\u3058\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\u4F5C\u6210\u3057\u305F\u53D6\u5F15\u5148\u306E ID \u304C\u8FD4\u308A\u307E\u3059\u3002",
|
|
10
|
+
forbidden:WRITE_FORBIDDEN,flags:createFlags(FIELDS),plan(input){if(input.args.length>0)throw new UsageError(`create \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D6\u308A\u307E\u305B\u3093: ${input.args.join(" ")}`,"twp company create help");const body=fieldBody(input,FIELDS);if(body["company_name"]===void 0)throw new UsageError("--name \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044","twp company create help");if(body["customer_flg"]!==true&&body["supplier_flg"]!==true){throw new UsageError("-\
|
|
11
|
+
-customer true \u304B --supplier true \u306E\u5C11\u306A\u304F\u3068\u3082\u4E00\u65B9\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044","\u30B5\u30FC\u30D0\u306F\u9867\u5BA2\u30FB\u4ED5\u5165\u5148\u306E\u3069\u3061\u3089\u3067\u3082\u306A\u3044\u53D6\u5F15\u5148\u3092\u767B\u9332\u3057\u307E\u305B\u3093\u3002")}return{method:"POST",path:SALES_COMPANIES_PATH,body}},summarize:body=>pick(dataOf(body,"\u53D6\u5F15\u5148\u306E\u767B\u9332"),COLUMNS),raw:body=>dataOf(body,"\u53D6\u5F15\u5148\u306E\u767B\u9332")};
|
|
12
|
+
var updateOperation={name:"update",summary:"\u53D6\u5F15\u5148\u4F01\u696D\u306E\u9805\u76EE\u3092\u66F4\u65B0\u3059\u308B",usage:"twp company update <\u53D6\u5F15\u5148> [\u9805\u76EE\u2026]",description:`\u6307\u5B9A\u3057\u305F\u9805\u76EE\u3060\u3051\u3092\u5909\u66F4\u3057\u307E\u3059\uFF08\u6307\u5B9A\u3057\u306A\u304B\u3063\u305F\u9805\u76EE\u306F\u5909\u308F\u308A\u307E\u305B\u3093\uFF09\u3002\u5909\u66F4\u3059\u308B\u9805\u76EE\u30921\u3064\u3082\u6307\u5B9A\u3057\u306A\u3044\u3068\u30A8\u30E9\u30FC\u306B\u306A\u308A\u307E\u3059\u3002
|
|
13
|
+
\u9867\u5BA2\u30FB\u4ED5\u5165\u5148\u306E\u4E21\u65B9\u3092 false \u306B\u3059\u308B\u5909\u66F4\u306F\u30B5\u30FC\u30D0\u304C\u65AD\u308A\u307E\u3059\u3002
|
|
14
|
+
|
|
15
|
+
${REF_HELP}`,forbidden:WRITE_FORBIDDEN,flags:updateFlags(FIELDS),async prepare(input,ctx){if(!hasAnyField(input,FIELDS))throw new UsageError("\u5909\u66F4\u3059\u308B\u9805\u76EE\u30921\u3064\u4EE5\u4E0A\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044","twp company update help");fieldBody(input,FIELDS);return resolveCompany(input,ctx,"twp company update help")},plan:input=>({method:"PUT",path:companyPath(input),body:fieldBody(input,FIELDS)}),summarize:body=>pick(dataOf(body,"\u53D6\u5F15\u5148\u306E\u66F4\u65B0"),
|
|
16
|
+
COLUMNS),raw:body=>dataOf(body,"\u53D6\u5F15\u5148\u306E\u66F4\u65B0")};function truthy(value){return value===true||value===1||value==="1"}var toCustomerDelete=id=>`twp customer delete ${id} --yes \u3067\u3001\u4F01\u696D \u2192 \u62C5\u5F53\u8005\u306E\u9806\u306B\u6D88\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u53D6\u5F15\u5148\u306E\u524A\u9664\u306F\u62C5\u5F53\u8005\u3092\u6D88\u3055\u306A\u3044\u305F\u3081\u3001\u3053\u3053\u3067\u6D88\u3059\u3068\u62C5\u5F53\u8005\u3060\u3051\u304C\u6B8B\u308A\u307E\u3059\uFF09\u3002\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u7121\u3051\u308C\u3070\u3001\u6A29\u9650\u3092\u6301\u3064\u4EBA\u306B\u4F9D\u983C\u3057\u3066\u304F\u3060\u3055\u3044\u3002`;
|
|
17
|
+
async function prepareDelete(input,ctx){const resolved=await resolveCompany(input,ctx,"twp company delete help");const id=requireResolved(resolved,"companyId");const record=await ctx.resolver.companyRecord(id);if(record===null)throw new UsageError(`\u53D6\u5F15\u5148 ${id} \u306F\u3042\u308A\u307E\u305B\u3093\uFF08\u524A\u9664\u6E08\u307F\u304B\u3082\u3057\u308C\u307E\u305B\u3093\uFF09`,"twp company list \u3067\u78BA\u304B\u3081\u3066\u304F\u3060\u3055\u3044\u3002");const customer=truthy(record["\
|
|
18
|
+
customer_flg"]);let contacts;try{contacts=(await ctx.resolver.customerChildren(id,"contacts")).length}catch(err){if(!(err instanceof ApiError&&err.status===403))throw err;if(customer){throw new UsageError(`\u53D6\u5F15\u5148 ${id} \u306F\u9867\u5BA2\u3067\u3059\u304C\u3001\u62C5\u5F53\u8005\u304C\u6B8B\u3063\u3066\u3044\u306A\u3044\u304B\u3092\u78BA\u304B\u3081\u3089\u308C\u306A\u3044\u305F\u3081\u524A\u9664\u3057\u307E\u305B\u3093\uFF08\u62C5\u5F53\u8005\u3092\u898B\u308B\u306B\u306F\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\uFF09\u3002`,
|
|
19
|
+
toCustomerDelete(id))}return withResolved(resolved,{kind:"unchecked"})}if(contacts>0){throw new UsageError(`\u53D6\u5F15\u5148 ${id} \u306B\u306F\u62C5\u5F53\u8005\u304C ${contacts} \u4EF6\u6B8B\u3063\u3066\u3044\u307E\u3059${customer?"":"\uFF08\u9867\u5BA2\u306E\u533A\u5206\u306F\u5916\u308C\u3066\u3044\u307E\u3059\uFF09"}\u3002`,customer?toCustomerDelete(id):`twp company update ${id} --customer true \u3067\u9867\u5BA2\u306B\u623B\u3057\u3066\u304B\u3089\u3001${toCustomerDelete(id)}`)}return withResolved(
|
|
20
|
+
resolved,{kind:customer?"customer":"supplier"})}var deleteOperation={name:"delete",summary:"\u53D6\u5F15\u5148\u4F01\u696D\u3092\u524A\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\u30FB\u62C5\u5F53\u8005\u304C\u6B8B\u308C\u3070 twp customer delete \u3078\uFF09",usage:"twp company delete <\u53D6\u5F15\u5148> --yes",description:`${REF_HELP}
|
|
21
|
+
|
|
22
|
+
\u898B\u7A4D\u30FB\u8ACB\u6C42\u66F8\u30FB\u6848\u4EF6\u66F8\u985E\u30FB\u5951\u7D04\u66F8\u30FB\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u7B49\u304B\u3089\u4F7F\u308F\u308C\u3066\u3044\u308B\u53D6\u5F15\u5148\u306F\u30B5\u30FC\u30D0\u304C\u65AD\u308A\u307E\u3059\uFF08\u7406\u7531\u3092\u305D\u306E\u307E\u307E\u51FA\u3057\u3066\u6B62\u307E\u308A\u307E\u3059\uFF09\u3002
|
|
23
|
+
\u5BFE\u5FDC\u5C65\u6B74\u306F\u30B5\u30FC\u30D0\u304C\u4F75\u305B\u3066\u524A\u9664\u3057\u307E\u3059\u3002**\u62C5\u5F53\u8005\u306F\u524A\u9664\u3055\u308C\u306A\u3044**\u306E\u3067\u3001\u62C5\u5F53\u8005\u304C\u6B8B\u308B\u53D6\u5F15\u5148\u306F\uFF08\u9867\u5BA2\u306E\u533A\u5206\u3092\u5916\u3057\u305F\u4F01\u696D\u3082\uFF09\u9001\u308B\u524D\u306B\u6B62\u3081\u3001twp customer delete \u3092\u6848\u5185\u3057\u307E\u3059\u3002`,destructive:true,forbidden:DELETE_FORBIDDEN,flags:[],prepare:prepareDelete,
|
|
24
|
+
plan:input=>({method:"DELETE",path:companyPath(input)}),plannedNotes:input=>[input.resolved?.["kind"]==="unchecked"?"\u4ED5\u5165\u5148\u3060\u3051\u306E\u53D6\u5F15\u5148\u3067\u3059\u3002\u62C5\u5F53\u8005\u306E\u6709\u7121\u306F\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u7121\u3044\u305F\u3081\u78BA\u304B\u3081\u3066\u3044\u307E\u305B\u3093\u3002":"\u62C5\u5F53\u8005\u304C\u6B8B\u3063\u3066\u3044\u306A\u3044\u3053\u3068\u3092\u78BA\u304B\u3081\u307E\u3057\u305F\u3002\u5BFE\u5FDC\u5C65\u6B74\u306F\u30B5\u30FC\u30D0\u304C\u9023\u9396\u3057\u3066\u524A\u9664\u3057\u307E\u3059\u3002"],
|
|
25
|
+
summarize:body=>acknowledgement(body,"\u53D6\u5F15\u5148\u524A\u9664"),raw:body=>acknowledgement(body,"\u53D6\u5F15\u5148\u524A\u9664")};var companyWriteOperations=[createOperation,updateOperation,deleteOperation];var PEOPLE_COLUMNS=["id","company_id","company_name","name","department","position","email","phone","is_customer"];var PERSON_GET_COLUMNS=[...PEOPLE_COLUMNS,"name_kana","role_label","mobile","is_primary","notes","business_card_owner_name","updated_at"];var VIEW_FORBIDDEN=levelForbidden(CUSTOMER_LICENSE,"\u4EBA\u7269\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");
|
|
26
|
+
var EXPORT_FORBIDDEN=levelForbidden(CUSTOMER_LICENSE,"\u4EBA\u7269\u306E CSV \u51FA\u529B\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\u300C\u95B2\u89A7\u8005\u300D\u3067\u306F\u51FA\u529B\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 TRUNCATED_NOTE="\u26A0 \u30B5\u30FC\
|
|
27
|
+
\u30D0\u306E\u8D70\u67FB\u4E0A\u9650\uFF08\u30C6\u30CA\u30F3\u30C8\u306E\u62C5\u5F53\u8005 5,000 \u4EF6\uFF09\u3067\u6253\u3061\u5207\u3089\u308C\u305F\u305F\u3081\u3001\u3053\u306E\u7D50\u679C\u306F\u5168\u4EF6\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF08\u4EF6\u6570\u3082\u78BA\u5B9A\u5024\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF09\u3002--company \u3084 --keyword \u3067\u5BFE\u8C61\u3092\u7D5E\u3063\u3066\u304F\u3060\u3055\u3044\u3002";var CAMPAIGN_FLAG={name:"--campaign",summary:"\u65BD\u7B56\u306E \
|
|
28
|
+
ID \u3067\u7D5E\u308A\u8FBC\u3080\uFF08\u7E70\u308A\u8FD4\u3057\u6307\u5B9A\u3067\u304D\u308B\uFF09",takesValue:true,placeholder:"<\u65BD\u7B56ID>",repeatable:true};var FILTER_FLAGS=[{name:"--keyword",summary:"\u6C0F\u540D\u30FB\u30D5\u30EA\u30AC\u30CA\u30FB\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u306A\u3069\u306E\u8A9E\u3067\u7D5E\u308A\u8FBC\u3080",takesValue:true,placeholder:"<\u8A9E>"},{name:"--company",summary:"\u4F01\u696D\u540D\u306E\u8A9E\u3067\u7D5E\u308A\u8FBC\u3080\uFF08\u90E8\u5206\u4E00\u81F4\uFF09",
|
|
29
|
+
takesValue:true,placeholder:"<\u8A9E>"},{name:"--owner",summary:"\u540D\u523A\u306E\u62C5\u5F53\u8005\uFF08\u30E6\u30FC\u30B6\u30FC\u3002ID\u30FB\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u30FB\u793E\u54E1\u756A\u53F7\u30FB\u6C0F\u540D\uFF09\u3067\u7D5E\u308A\u8FBC\u3080",takesValue:true,placeholder:"<\u30E6\u30FC\u30B6\u30FC>"},CAMPAIGN_FLAG,{name:"--is-customer",summary:"\u9867\u5BA2\u5148\u306E\u4EBA\u7269\u3060\u3051\uFF08true\uFF09\u304B\u3001\u9867\u5BA2\u5148\u3067\u306A\u3044\u4EBA\u7269\u3060\u3051\uFF08false\uFF09",
|
|
30
|
+
takesValue:true,placeholder:"<true|false>"}];function isCustomerOf(input){const raw=input.flags.get("--is-customer");if(raw===void 0)return void 0;const value=raw.trim().toLowerCase();if(value!=="true"&&value!=="false")throw new UsageError(`--is-customer \u306B\u300C${raw}\u300D\u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093`,"\u6307\u5B9A\u3067\u304D\u308B\u306E\u306F true / false \u3067\u3059\u3002");return value}function filterQuery(input){const campaigns=repeatedValues(input,CAMPAIGN_FLAG.name);
|
|
31
|
+
const bad=campaigns.find(value=>value.includes(","));if(bad!==void 0)throw new UsageError(`--campaign \u306B\u30AB\u30F3\u30DE\u3092\u542B\u3080\u5024\u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093: ${bad}`,"\u5024\u3054\u3068\u306B --campaign \u3092\u7E70\u308A\u8FD4\u3057\u3066\u304F\u3060\u3055\u3044\u3002");return{keyword:nonEmpty(input.flags,"--keyword"),company_keyword:nonEmpty(input.flags,"--company"),owner_user_ids:input.resolved?.["ownerUserId"],campaign_ids:campaigns.length>0?[...campaigns]:
|
|
32
|
+
void 0,is_customer:isCustomerOf(input)}}async function prepareFilters(input,ctx,usage){if(input.args.length>0)throw new UsageError(`\u4F4D\u7F6E\u5F15\u6570\u306F\u53D6\u308A\u307E\u305B\u3093: ${input.args.join(" ")}`,usage);filterQuery(input);const owner=nonEmpty(input.flags,"--owner");return owner===void 0?input:withResolved(input,{ownerUserId:(await ctx.resolver.user(owner,"--owner")).id})}var listPaging=envelopePaging({label:"\u4EBA\u7269\u4E00\u89A7"});function truncated(body){return isRecord(
|
|
33
|
+
body)&&body["scan_truncated"]===true}var listOperation={name:"list",summary:"\u4F01\u696D\u3092\u307E\u305F\u3044\u3067\u4EBA\u7269\uFF08\u9867\u5BA2\u306E\u62C5\u5F53\u8005\uFF09\u3092\u4E00\u89A7\u3059\u308B\uFF08\u30D5\u30EA\u30AC\u30CA\u9806\uFF09",usage:"twp customer people list [--keyword <\u8A9E>] [--company <\u8A9E>] [--owner <\u30E6\u30FC\u30B6\u30FC>] [--campaign <\u65BD\u7B56ID>\u2026] [--is-customer true|false] [--all] [--limit <\u4EF6\u6570>]",description:`\u30C6\u30CA\u30F3\u30C8\u5185\u306E\u5168\u9867\u5BA2\u306E\u62C5\u5F53\u8005\u3092\u3001\u4F01\u696D\u3092\u307E\u305F\u3044\u3067\u30D5\u30EA\u30AC\u30CA\
|
|
34
|
+
\u9806\u306B\u4E00\u89A7\u3057\u307E\u3059\u3002\u4F01\u696D\u3054\u3068\u306E\u4E00\u89A7\u306F twp customer contact list \u3067\u3059\u3002
|
|
35
|
+
\u7D5E\u308A\u8FBC\u307F\u5168\u4F53\u306E\u4EF6\u6570\u306F stderr \u306B\u51FA\u307E\u3059\u3002\u30B5\u30FC\u30D0\u306E\u8D70\u67FB\u4E0A\u9650\u3067\u6253\u3061\u5207\u3089\u308C\u305F\u3068\u304D\u306F\u3001\u305D\u306E\u65E8\u3092 stderr \u306B\u51FA\u3057\u307E\u3059\uFF08\u4EF6\u6570\u3082\u78BA\u5B9A\u5024\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF09\u3002
|
|
36
|
+
|
|
37
|
+
--output json \u306F API \u304C\u8FD4\u3059\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u51FA\u3057\u307E\u3059\u3002
|
|
38
|
+
--output table / text / tsv \u306F\u8981\u7D04\u5217\uFF08${PEOPLE_COLUMNS.join(" / ")}\uFF09\u3067\u3059\u3002
|
|
39
|
+
|
|
40
|
+
${LIST_PAGING_HELP}`,flags:[...LIST_FLAGS,...FILTER_FLAGS],paging:listPaging,forbidden:VIEW_FORBIDDEN,prepare:(input,ctx)=>prepareFilters(input,ctx,"twp customer people list help"),plan:input=>({method:"GET",path:`${CUSTOMERS_PATH}/contacts`,query:{...filterQuery(input),limit:positiveInteger(input.flags,"--limit"),cursor:nonEmpty(input.flags,"--cursor")}}),summarize:body=>listPaging.items(body).map(row=>pick(row,PEOPLE_COLUMNS)),raw:body=>listPaging.items(body),notes:body=>{if(truncated(body))return[
|
|
41
|
+
TRUNCATED_NOTE];return isRecord(body)&&typeof body["total"]==="number"?[`\u8A72\u5F53 ${body["total"]} \u4EF6`]:[]}};var getOperation={name:"get",summary:"\u4EBA\u72691\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08\u6240\u5C5E\u4F01\u696D\u540D\u3064\u304D\uFF09",usage:"twp customer people get <\u4EBA\u7269ID>",description:`\u4EBA\u7269\u306E ID \u306F twp customer people list \u306E id \u5217\uFF08\u62C5\u5F53\u8005\u306E ID \u3068\u540C\u3058\uFF09\u3067\u3059\u3002\u6240\u5C5E\u3059\u308B\u9867\u5BA2\u3092\u77E5\u3089\u306A\u304F\u3066\u3082\u5F15\u3051\u307E\u3059\u3002
|
|
42
|
+
|
|
43
|
+
--output json \u306F API \u304C\u8FD4\u3059\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\uFF08\u540D\u523A business_cards \u3092\u542B\u3080\uFF09\u3092\u51FA\u3057\u307E\u3059\u3002
|
|
44
|
+
--output table / text / tsv \u306F\u8981\u7D04\u5217\uFF08${PERSON_GET_COLUMNS.join(" / ")}\uFF09\u3067\u3059\u3002`,flags:[],forbidden:VIEW_FORBIDDEN,plan(input){const[raw,...rest]=input.args;const usage="twp customer people get help";if(raw===void 0||raw.trim()==="")throw new UsageError("\u4EBA\u7269\u306E ID \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);if(rest.length>0)throw new UsageError(`\u53D7\u3051\u53D6\u308C\u308B\u4EBA\u7269\u306E ID \u306F1\u3064\u3060\u3051\u3067\u3059: ${rest.
|
|
45
|
+
join(" ")}`,usage);const id=raw.trim();if(!isSafePathSegment(id)||id==="export"){throw new UsageError(`\u4EBA\u7269\u306E ID \u3068\u3057\u3066\u4F7F\u3048\u306A\u3044\u5024\u3067\u3059: ${id}`,"twp customer people list \u306E id \u5217\u306E\u5024\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}return{method:"GET",path:`${CUSTOMERS_PATH}/contacts/${encodeURIComponent(id)}`}},summarize:body=>pick(dataOf(body,"\u4EBA\u7269"),PERSON_GET_COLUMNS),raw:body=>dataOf(body,"\u4EBA\u7269")};
|
|
46
|
+
var SCAN_TRUNCATED_HEADER="x-scan-truncated";var exportOperation={name:"export",summary:"\u4EBA\u7269\u3092 CSV \u306B\u66F8\u304D\u51FA\u3059\uFF08\u9867\u5BA2\u7BA1\u7406\u306E\u7BA1\u7406\u8005\u306E\u307F\u30FB--out\uFF09",usage:"twp customer people export --out <\u30D1\u30B9.csv> [--force] [\u7D5E\u308A\u8FBC\u307F\u2026]",description:"\u7D5E\u308A\u8FBC\u307F\uFF08twp customer people list \u3068\u540C\u3058\uFF09\u306B\u5F53\u305F\u308B\u4EBA\u7269\u3092 CSV\uFF08UTF-8\u30FBBOM \u4ED8\u304D\uFF09\u3067\u66F8\u304D\u51FA\u3057\u307E\u3059\u3002\u30DA\u30FC\u30B8\u30F3\u30B0\u306F\u3042\u308A\u307E\u305B\u3093\u3002\n\u5217\u306F \u6C0F\u540D\u30FB\u30D5\u30EA\u30AC\u30CA\u30FB\u4F01\u696D\u540D\u30FB\u90E8\u7F72\u30FB\u5F79\u8077\u30FB\u5F79\u5272\u30FB\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u30FB\u96FB\u8A71\u756A\u53F7\u30FB\u643A\u5E2F\u756A\u53F7\u30FB\u4E3B\u62C5\u5F53\u30FB\u9867\u5BA2\u5148\u30FB\u540D\u523A\u306E\u62C5\u5F53\u8005\u30FB\u6240\u5C5E\u65BD\u7B56\u30FB\u30E1\u30E2\u30FB\u88CF\u9762\u30E1\u30E2 \u3067\u3059\u3002\n\u30B5\u30FC\u30D0\
|
|
47
|
+
\u306E\u8D70\u67FB\u4E0A\u9650\u3067\u6253\u3061\u5207\u3089\u308C\u305F\u3068\u304D\u306F\u3001\u66F8\u304D\u51FA\u3057\u305F\u3046\u3048\u3067\u5168\u4EF6\u3067\u306F\u306A\u3044\u3053\u3068\u3092 stderr \u3068 --output json \u306E headers \u306B\u51FA\u3057\u307E\u3059\u3002\n\u65E2\u5B58\u306E\u30D5\u30A1\u30A4\u30EB\u306F\u4E0A\u66F8\u304D\u3057\u307E\u305B\u3093\uFF08\u4E0A\u66F8\u304D\u3059\u308B\u306A\u3089 --force\uFF09\u3002",flags:[{name:"--out",summary:"\u66F8\u304D\u51FA\u3057\u5148\u306E\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9\uFF08\u5FC5\u9808\uFF09",
|
|
48
|
+
takesValue:true,placeholder:"<\u30D1\u30B9>"},{name:"--force",summary:"\u65E2\u5B58\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u4E0A\u66F8\u304D\u3059\u308B",takesValue:false},...FILTER_FLAGS],download:{outFlag:"--out",forceFlag:"--force",captureHeaders:[SCAN_TRUNCATED_HEADER]},forbidden:EXPORT_FORBIDDEN,prepare:(input,ctx)=>prepareFilters(input,ctx,"twp customer people export help"),plan:input=>({method:"GET",path:`${CUSTOMERS_PATH}/contacts/export`,query:filterQuery(input)}),summarize:body=>body,raw:body=>body,
|
|
49
|
+
notes:body=>body?.headers?.[SCAN_TRUNCATED_HEADER]==="1"?[TRUNCATED_NOTE]:[]};var peopleResource={name:"people",summary:"\u4F01\u696D\u3092\u307E\u305F\u3044\u3060\u4EBA\u7269\uFF08\u9867\u5BA2\u306E\u62C5\u5F53\u8005\uFF09\u306E\u4E00\u89A7\u30FB\u8A73\u7D30\u30FBCSV \u51FA\u529B",operations:[listOperation,getOperation,exportOperation]};var LIST_COLUMNS=["id","company_name","company_short_name","customer_flg","supplier_flg","tel"];var COMPANY_GET_COLUMNS=["id","company_name","company_name_kana","company_short_name","company_no","customer_flg","supplier_flg","post_code","address1","address2","address3","tel","website","start_date","end_date"];var COMPANY={name:"company",label:"\u53D6\u5F15\u5148",path:SALES_COMPANIES_PATH,source:"sales",forbidden:licenseForbidden("\u53D6\u5F15\u5148\u3092\u898B\u308B\u306B\u306F\u8CA9\u58F2\u7BA1\u7406\u304B\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u304C\u3001\u3069\u3061\u3089\u3082\u3042\u308A\u307E\u305B\u3093\u3002\u30C6\u30CA\u30F3\u30C8\u304C\u3069\u3061\u3089\u3082\u5951\u7D04\u3057\u3066\u3044\u306A\u3044\u304B\u3001\u3042\u306A\u305F\u306E\u6A29\u9650\u304C\u3069\u3061\u3089\
|
|
50
|
+
\u3082\u300C\u306A\u3057\u300D\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002"),getColumns:COMPANY_GET_COLUMNS};var CUSTOMER={name:"customer",label:"\u9867\u5BA2",path:CUSTOMERS_PATH,source:"customer",forbidden:licenseForbidden(featureLicenseGuidance("\u9867\u5BA2\u7BA1\u7406")),getColumns:[...COMPANY_GET_COLUMNS,"industry","contact_count"]};function envelope(body,what){if(!isRecord(body)||body["\
|
|
51
|
+
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 detail(body,what){const data=envelope(body,what)["data"];if(!isRecord(data)||typeof data["id"]!=="string"){throw new ApiResponseError(`${what}\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`)}
|
|
52
|
+
return data}function listOperation2(resource){const paging=pageNumberPaging({label:`${resource.label}\u4E00\u89A7`});const rows=body=>{envelope(body,`${resource.label}\u4E00\u89A7`);return paging.items(body)};const scope=resource.name==="customer"?"\u9867\u5BA2\uFF08\u53D6\u5F15\u5148\u306E\u3046\u3061\u9867\u5BA2\u3068\u3057\u3066\u767B\u9332\u3055\u308C\u305F\u3082\u306E\uFF09\u3092\u767B\u9332\u306E\u65B0\u3057\u3044\u9806\u306B\u4E00\u89A7\u3057\u307E\u3059\u3002\u4ED5\u5165\u5148\u3060\u3051\u306E\u53D6\u5F15\u5148\u306F\u51FA\u307E\u305B\u3093\uFF08twp company list\uFF09\u3002\n":
|
|
53
|
+
"\u53D6\u5F15\u5148\u4F01\u696D\uFF08\u9867\u5BA2\u30FB\u4ED5\u5165\u5148\u306E\u4E21\u65B9\uFF09\u3092\u65B0\u3057\u304F\u767B\u9332\u3057\u305F\u9806\u306B\u4E00\u89A7\u3057\u307E\u3059\u3002\n";return{name:"list",summary:resource.name==="customer"?"\u9867\u5BA2\u3092\u4E00\u89A7\u3059\u308B\uFF08\u767B\u9332\u306E\u65B0\u3057\u3044\u9806\uFF09":"\u53D6\u5F15\u5148\u4F01\u696D\u3092\u4E00\u89A7\u3059\u308B\uFF08\u767B\u9332\u306E\u65B0\u3057\u3044\u9806\uFF09",usage:`twp ${resource.name} list \
|
|
54
|
+
[--keyword <\u8A9E>] [--all] [--limit <\u4EF6\u6570>]`,description:scope+`--keyword \u306F\u4F01\u696D\u540D\u30FB\u7565\u79F0\u30FB\u30AB\u30CA\u306E\u90E8\u5206\u4E00\u81F4\u3067\u3059\u3002
|
|
55
|
+
\u7D5E\u308A\u8FBC\u307F\u5168\u4F53\u306E\u4EF6\u6570\u306F stderr \u306B\u51FA\u307E\u3059\u3002
|
|
56
|
+
|
|
57
|
+
--output json \u306F API \u304C\u8FD4\u3059\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u51FA\u3057\u307E\u3059\u3002
|
|
58
|
+
--output table / text / tsv \u306F\u8981\u7D04\u5217\uFF08${LIST_COLUMNS.join(" / ")}\uFF09\u3067\u3059\u3002
|
|
59
|
+
|
|
60
|
+
`+LIST_PAGING_HELP+"\n"+PAGE_NUMBER_PAGING_HELP,flags:[...PAGE_NUMBER_LIST_FLAGS,{name:"--keyword",summary:"\u4F01\u696D\u540D\u30FB\u7565\u79F0\u30FB\u30AB\u30CA\u306E\u8A9E\u3067\u7D5E\u308A\u8FBC\u3080\uFF08\u90E8\u5206\u4E00\u81F4\uFF09",takesValue:true,placeholder:"<\u8A9E>"}],paging,forbidden:resource.forbidden,plan(input){if(input.args.length>0){throw new UsageError(`list \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D6\u308A\u307E\u305B\u3093: ${input.args.join(" ")}`,`twp ${resource.name} lis\
|
|
61
|
+
t help`)}const{page_no,page_limit}=pageNumberQuery(input);return{method:"GET",path:resource.path,query:{keyword:nonEmpty(input.flags,"--keyword"),...STABLE_PAGE_ORDER,page_limit,page_no}}},summarize:body=>rows(body).map(row=>pick(row,LIST_COLUMNS)),raw:rows,notes:body=>[...pageRangeNotes(body),...isRecord(body)&&typeof body["sum"]==="number"?[`\u8A72\u5F53 ${body["sum"]} \u4EF6`]:[]]}}async function prepareGet(input,ctx,resource){const[raw,...rest]=input.args;const usage=`twp ${resource.name} ge\
|
|
62
|
+
t help`;if(raw===void 0||raw.trim()==="")throw new UsageError(`${resource.label}\u306E\u540D\u524D\u304B ID \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`,usage);if(rest.length>0){throw new UsageError(`get \u304C\u53D7\u3051\u53D6\u308C\u308B${resource.label}\u306F1\u3064\u3060\u3051\u3067\u3059: ${rest.join(" ")}`,'\u7A7A\u767D\u3092\u542B\u3080\u540D\u524D\u306F\u5F15\u7528\u7B26\u3067\u56F2\u3093\u3067\u304F\u3060\u3055\u3044\uFF08\u4F8B: "\u682A\u5F0F\u4F1A\u793E \u30B5\u30F3\u30D7\u30EB"\uFF09\u3002')}
|
|
63
|
+
const ref=await ctx.resolver.company(raw,{flag:`<${resource.label}>`,source:resource.source});return withResolved(input,{companyId:ref.id})}function getOperation2(resource){const what=resource.label;return{name:"get",summary:`${what}1\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B`,usage:`twp ${resource.name} get <${what}>`,description:`<${what}> \u306F\u4F01\u696D\u540D\u30FB\u7565\u79F0\u30FB\u30AB\u30CA\u306E\u5B8C\u5168\u4E00\u81F4\u304B ID\uFF08twp ${resource.name} list \u306E id \u5217\u306E\u6570\u5B57\uFF09\u3067\u6307\u5B9A\
|
|
64
|
+
\u3057\u307E\u3059\u3002
|
|
65
|
+
\u540D\u524D\u306F\u30B5\u30FC\u30D0\u306E\u691C\u7D22\u3067\u5019\u88DC\u3092\u5F15\u3044\u3066\u7167\u5408\u3057\u307E\u3059\u3002\u4E00\u81F4\u3057\u306A\u3051\u308C\u3070\u8FD1\u3044\u5019\u88DC\u3092\u51FA\u3057\u3066\u6B62\u307E\u308A\u3001\u540C\u540D\u304C\u8907\u6570\u3042\u308C\u3070 ID \u3067\u6307\u5B9A\u3059\u308B\u3088\u3046\u6C42\u3081\u307E\u3059\u3002
|
|
66
|
+
\u6570\u5B57\u3060\u3051\u306E\u5024\u306F ID \u3068\u3057\u3066\u6271\u3044\u307E\u3059\uFF08\u793E\u540D\u304C\u6570\u5B57\u3060\u3051\u306E\u4F01\u696D\u306F ID \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF09\u3002
|
|
67
|
+
|
|
68
|
+
`+(resource.name==="customer"?"--output json \u306F\u9867\u5BA2\u306E\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\u306B\u3001\u62C5\u5F53\u8005\u6570\uFF08contact_count\uFF09\u3068\u76F4\u8FD15\u4EF6\u306E\u5BFE\u5FDC\u5C65\u6B74\uFF08recent_interactions\uFF09\u3092\u8DB3\u3057\u3066\u51FA\u3057\u307E\u3059\u3002":"--output json \u306F\u53D6\u5F15\u5148\u306E\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u51FA\u3057\u307E\u3059\u3002"),flags:[],forbidden:resource.forbidden,prepare:(input,ctx)=>prepareGet(input,
|
|
69
|
+
ctx,resource),plan:input=>({method:"GET",path:`${resource.path}/${encodeURIComponent(requireResolved(input,"companyId"))}`}),summarize:body=>pick(detail(body,what),resource.getColumns),raw:body=>detail(body,what)}}function buildDomain(resource,summary){return{name:resource.name,summary,operations:[listOperation2(resource),getOperation2(resource)]}}var companyRead=buildDomain(COMPANY,"");var companyDomain={name:COMPANY.name,summary:"\u53D6\u5F15\u5148\u4F01\u696D\uFF08\u4E00\u89A7\u30FB\u8A73\u7D30\u30FB\u767B\u9332\u30FB\u66F4\u65B0\u30FB\u524A\u9664\uFF09",
|
|
70
|
+
operations:[...companyRead.operations,...companyWriteOperations]};var customerRead=buildDomain(CUSTOMER,"");var customerDomain={name:CUSTOMER.name,summary:"\u9867\u5BA2\uFF08\u4E00\u89A7\u30FB\u8A73\u7D30\u30FB\u767B\u9332\u30FB\u66F4\u65B0\u30FB\u524A\u9664\u3068\u4E00\u62EC\u524A\u9664\u30FB\u985E\u4F3C\u4F01\u696D\u691C\u7D22\u30FB\u62C5\u5F53\u8005\u30FB\u5BFE\u5FDC\u5C65\u6B74\u30FB\u540D\u523A\u30FB\u4EBA\u7269\u4E00\u89A7\u30FB\u5951\u7D04\u66F8\u30FB\u6848\u4EF6\u66F8\u985E\u30FB\u65BD\u7B56\uFF09",
|
|
71
|
+
operations:[...customerRead.operations,...customerWriteOperations],subresources:[...customerSubresources,peopleResource,...customerDocumentSubresources]};export{companyDomain,customerDomain};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{BUILTIN_COMMANDS,GLOBAL_FLAGS,TASK_LOOP_ACTIONS,VALUE_FLAGS}from"./chunk-
|
|
3
|
+
import{BUILTIN_COMMANDS,GLOBAL_FLAGS,TASK_LOOP_ACTIONS,VALUE_FLAGS}from"./chunk-BJLXXRSY.js";import"./chunk-NAUH75MM.js";import{API_TOKEN,DOMAIN_NAMES,HELP_TOKEN,isDomainName}from"./chunk-UVUVEL3B.js";import"./chunk-QQRJLH6B.js";import{OUTPUT_FORMATS}from"./chunk-K2ONOH3L.js";import"./chunk-WVS4W5FY.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var EXTRA_TOP_LEVEL=[API_TOKEN,HELP_TOKEN,"completion","configure"];var COMPLETION_SHELLS=["bash","zsh","fish","powershell"];var TOP_LEVEL_FLAGS=["--help","--version","-p","--print","--profile","--mode","--permission-mode","--model","--allowed-tools","--disallowed-tools","--no-tui","--doctor"];var DOMAIN_GLOBAL_FLAGS=[...GLOBAL_FLAGS].filter(flag=>flag.startsWith("--"));function staticValues(flag,ctx){if(flag==="--output")return OUTPUT_FORMATS;if(flag==="--profile")return ctx.profileNames();return void 0}
|
|
4
4
|
function positionals(words,takesValue){const out=[];for(let i=0;i<words.length;i++){const word=words[i]??"";if(word==="--"){out.push(...words.slice(i+1));break}if(word.startsWith("-")){if(!word.includes("=")&&takesValue(word))i++;continue}out.push(word)}return out}function byPrefix(candidates,current){const seen=new Set;for(const candidate of candidates){if(candidate.startsWith(current))seen.add(candidate)}return[...seen]}function remainingFlags(flags,words){const used=new Set(words.filter(w=>w.
|
|
5
5
|
startsWith("--")).map(w=>w.split("=")[0]));return[...flags.filter(f=>f.repeatable===true||!used.has(f.name)).map(f=>f.name),...DOMAIN_GLOBAL_FLAGS.filter(f=>!used.has(f))]}async function complete(words,current,ctx){const previous=words[words.length-1];if(previous!==void 0&&previous.startsWith("--")&&!previous.includes("=")){const values=staticValues(previous,ctx);if(values!==void 0)return byPrefix(values,current)}const eq=current.indexOf("=");if(current.startsWith("--")&&eq>0){const flag=current.
|
|
6
6
|
slice(0,eq);const values=staticValues(flag,ctx);return values===void 0?[]:byPrefix(values.map(v=>`${flag}=${v}`),current)}const pos=positionals(words,flag=>VALUE_FLAGS.has(flag));const[first,second]=pos;if(first===void 0){if(current.startsWith("-"))return byPrefix([...TOP_LEVEL_FLAGS,...DOMAIN_GLOBAL_FLAGS],current);return byPrefix([...BUILTIN_COMMANDS,...DOMAIN_NAMES,...EXTRA_TOP_LEVEL],current)}if(first==="completion")return pos.length===1?byPrefix(COMPLETION_SHELLS,current):[];if(first==="con\
|