@tocca-systems/twp-cli 0.46.0 → 0.48.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 +16 -0
- package/README.md +59 -9
- package/dist/{agent-loop-RMJXHBNG.js → agent-loop-XKH5YE6A.js} +1 -1
- package/dist/{ai-dispatch-L6XZCCU4.js → ai-dispatch-FGVNSM6L.js} +2 -2
- package/dist/{analysis-KUCETWIJ.js → analysis-GAU2A3FU.js} +1 -1
- package/dist/{api-command-67456PBS.js → api-command-26MLBIZC.js} +2 -2
- package/dist/{app-7227DY7N.js → app-Y7MAQAPC.js} +2 -2
- package/dist/attendance-correct-5SFXA4DC.js +51 -0
- package/dist/{attendance-lists-NVRU2NLY.js → attendance-lists-3T7S7QF5.js} +1 -1
- package/dist/{backlog-XZB35X7I.js → backlog-F4EWY7MT.js} +1 -1
- package/dist/{budget-FOFE3YUJ.js → budget-QFUGQIPZ.js} +1 -1
- package/dist/{chunk-3WHD2YVF.js → chunk-4F2ONF4P.js} +35 -25
- package/dist/{chunk-OLBRIPOS.js → chunk-6TPGATAG.js} +1 -1
- package/dist/chunk-6ZB7A6VD.js +9 -0
- package/dist/{chunk-SBWCQAHT.js → chunk-A65V3K75.js} +1 -1
- package/dist/{chunk-QVZGNHRE.js → chunk-BN26WHLS.js} +1 -1
- package/dist/{chunk-N6AXAGS2.js → chunk-EZGN7PTO.js} +1 -1
- package/dist/{chunk-OVBKORPC.js → chunk-FZWRYJVM.js} +1 -1
- package/dist/{chunk-V24LKF3V.js → chunk-GOZCJLRA.js} +1 -1
- package/dist/{chunk-AKPVALTZ.js → chunk-IO5SMECE.js} +1 -1
- package/dist/{chunk-JYNZEZYL.js → chunk-JKL6NUVV.js} +1 -1
- package/dist/{chunk-G2THOTBW.js → chunk-JTJWDV5U.js} +1 -1
- package/dist/{chunk-HS7EKE7M.js → chunk-KS2ZUQFC.js} +1 -1
- package/dist/{chunk-ZE75ZDLD.js → chunk-LAXINIDA.js} +1 -1
- package/dist/{chunk-L25UV7DE.js → chunk-LUQ2KE6Y.js} +1 -1
- package/dist/{chunk-E7MUDY4P.js → chunk-MY2U3CD6.js} +1 -1
- package/dist/{chunk-EZMXGIGX.js → chunk-OYDF57NH.js} +1 -1
- package/dist/{chunk-YLXW7TIU.js → chunk-QOUDJ7XO.js} +18 -18
- package/dist/{chunk-ZM3MTWNT.js → chunk-SA7A5WF2.js} +1 -1
- package/dist/{chunk-AITUMFCH.js → chunk-TKGVAWGU.js} +1 -1
- package/dist/{chunk-L7IGGC7H.js → chunk-VB2CSFRO.js} +1 -1
- package/dist/{chunk-RMAW7KOR.js → chunk-VYT6JAXQ.js} +12 -9
- package/dist/{chunk-VMULCEHY.js → chunk-XQRSX2RH.js} +1 -1
- package/dist/cli.js +43 -7
- package/dist/{commands-5GP3REIU.js → commands-EIWS357Q.js} +44 -41
- package/dist/{company-FEXAHUPT.js → company-77JEESSV.js} +2 -2
- package/dist/{contract-4RALZBO5.js → contract-26SKL7XT.js} +1 -1
- package/dist/{department-VEXXWBZ4.js → department-IZAR2LZ4.js} +1 -1
- package/dist/{deposit-2AAST2DE.js → deposit-MYTKRIEX.js} +1 -1
- package/dist/{estimate-JQURFOCH.js → estimate-KLS7XJLD.js} +2 -2
- package/dist/{inquiry-YTYZYUTY.js → inquiry-52OT4HKJ.js} +1 -1
- package/dist/{invoice-PHYBVU6Q.js → invoice-D77PS3WU.js} +2 -2
- package/dist/{job-title-ORNY7A7L.js → job-title-U67Z25ZO.js} +1 -1
- package/dist/{knowledge-FQ32UNDW.js → knowledge-Q3QLSNDX.js} +1 -1
- package/dist/{leave-5V6EPGA3.js → leave-OSIABEFV.js} +1 -1
- package/dist/media-HDG4VHAR.js +125 -0
- package/dist/{notification-XARS6JH2.js → notification-MEOHWBXH.js} +1 -1
- package/dist/{onedrive-N4T6D2OW.js → onedrive-3OBI4B5Z.js} +15 -11
- package/dist/{oneshot-7BFL2VON.js → oneshot-ACV6XH5A.js} +1 -1
- package/dist/{position-NNJZAT3A.js → position-N7SRF3CF.js} +1 -1
- package/dist/{project-FDY6LETQ.js → project-YMJJDSTP.js} +1 -1
- package/dist/{prospect-CUWP3E5S.js → prospect-3JD7STGT.js} +1 -1
- package/dist/{purchase-2CZTB5H7.js → purchase-2SLZBDD6.js} +2 -2
- package/dist/{receivable-KV5PPNLA.js → receivable-6ZRAUHC3.js} +1 -1
- package/dist/{registry-NZ2HNT52.js → registry-GQ3L7PZ2.js} +1 -1
- package/dist/report-TUSP7RRF.js +127 -0
- package/dist/{run-7BS34D2P.js → run-ZPB23AZX.js} +1 -1
- package/dist/{sales-ai-review-SVZHVH5P.js → sales-ai-review-7NPG7KV6.js} +1 -1
- package/dist/{sales-master-VD6JE2P3.js → sales-master-W5MXNZQ2.js} +1 -1
- package/dist/{sales-numbering-P7W6N3OM.js → sales-numbering-RQV2I5G5.js} +1 -1
- package/dist/{schedule-command-7JGQMTQY.js → schedule-command-QCGEMBVR.js} +1 -1
- package/dist/{server-settings-3E7G56G7.js → server-settings-TUBJ4P57.js} +1 -1
- package/dist/{server-skills-OF7USNRM.js → server-skills-Z5DGCJQ7.js} +1 -1
- package/dist/{supplier-payment-2KPCVEPH.js → supplier-payment-TDL3IE4H.js} +1 -1
- package/dist/{task-MFWWP5Q7.js → task-2SHYSZBZ.js} +35 -30
- package/dist/{user-QG3KMK3T.js → user-YEIHSVVN.js} +2 -2
- package/dist/{workflow-CSYU4J4U.js → workflow-USG3ZKW6.js} +1 -1
- package/package.json +1 -1
- package/dist/attendance-K2U7RYDU.js +0 -3
- package/dist/chunk-B4APKONL.js +0 -9
- package/dist/media-BU23L547.js +0 -63
- package/dist/report-PCQPTRUV.js +0 -73
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{applyInstancePlan,createInstancePlan,formColumns,parseInstanceContent,workflowDomain,writtenInstance}from"./chunk-
|
|
3
|
+
import{applyInstancePlan,createInstancePlan,formColumns,parseInstanceContent,workflowDomain,writtenInstance}from"./chunk-6TPGATAG.js";import"./chunk-ORUDW52G.js";import"./chunk-4F2ONF4P.js";import"./chunk-GMBJTG6A.js";import"./chunk-3HH5IYNO.js";import"./chunk-IF2K4PM5.js";import"./chunk-4VZKNEVN.js";import"./chunk-II5RVJQN.js";import"./chunk-IOGMOXYF.js";import"./chunk-LXIAOCUW.js";import"./chunk-VTQAI52S.js";import"./chunk-UFND7FBC.js";
|
|
4
4
|
import"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{applyInstancePlan,createInstancePlan,formColumns,parseInstanceContent,workflowDomain,writtenInstance};
|
package/package.json
CHANGED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
-
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{PUNCH_TYPES,assertCurrentMonthOpen,assertMonthsOpen,attendanceDomain,hoursMinutes}from"./chunk-YLXW7TIU.js";import"./chunk-4B3T4UE7.js";import"./chunk-LXIAOCUW.js";import"./chunk-VTQAI52S.js";import"./chunk-UFND7FBC.js";import"./chunk-VSJBJXZO.js";export{PUNCH_TYPES,assertCurrentMonthOpen,assertMonthsOpen,attendanceDomain,hoursMinutes};
|
package/dist/chunk-B4APKONL.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
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-RMJXHBNG.js")).agentLoopDomain,"ai-review-reason":async()=>(await import("./sales-ai-review-SVZHVH5P.js")).aiReviewReasonDomain,analysis:async()=>(await import("./analysis-KUCETWIJ.js")).analysisDomain,attendance:async()=>(await import("./attendance-K2U7RYDU.js")).attendanceDomain,backlog:async()=>(await import("./backlog-XZB35X7I.js")).backlogDomain,budget:async()=>(await import("./budget-FOFE3YUJ.js")).budgetDomain,"busin\
|
|
4
|
-
ess-place":async()=>(await import("./sales-master-VD6JE2P3.js")).businessPlaceDomain,company:async()=>(await import("./company-FEXAHUPT.js")).companyDomain,contract:async()=>(await import("./contract-4RALZBO5.js")).contractDomain,customer:async()=>(await import("./company-FEXAHUPT.js")).customerDomain,department:async()=>(await import("./department-VEXXWBZ4.js")).departmentDomain,deposit:async()=>(await import("./deposit-2AAST2DE.js")).depositDomain,estimate:async()=>(await import("./estimate-JQURFOCH.js")).
|
|
5
|
-
estimateDomain,inquiry:async()=>(await import("./inquiry-YTYZYUTY.js")).inquiryDomain,invoice:async()=>(await import("./invoice-PHYBVU6Q.js")).invoiceDomain,"job-title":async()=>(await import("./job-title-ORNY7A7L.js")).jobTitleDomain,leave:async()=>(await import("./leave-5V6EPGA3.js")).leaveDomain,media:async()=>(await import("./media-BU23L547.js")).mediaDomain,meeting:async()=>(await import("./knowledge-FQ32UNDW.js")).meetingDomain,note:async()=>(await import("./knowledge-FQ32UNDW.js")).
|
|
6
|
-
noteDomain,notification:async()=>(await import("./notification-XARS6JH2.js")).notificationDomain,onedrive:async()=>(await import("./onedrive-N4T6D2OW.js")).onedriveDomain,outlook:async()=>(await import("./outlook-LY6WBXIJ.js")).outlookDomain,payee:async()=>(await import("./sales-master-VD6JE2P3.js")).payeeDomain,position:async()=>(await import("./position-NNJZAT3A.js")).positionDomain,project:async()=>(await import("./project-FDY6LETQ.js")).projectDomain,prospect:async()=>(await import("./prospect-CUWP3E5S.js")).
|
|
7
|
-
prospectDomain,purchase:async()=>(await import("./purchase-2CZTB5H7.js")).purchaseDomain,receivable:async()=>(await import("./receivable-KV5PPNLA.js")).receivableDomain,report:async()=>(await import("./report-PCQPTRUV.js")).reportDomain,"rounding-setting":async()=>(await import("./sales-numbering-P7W6N3OM.js")).roundingSettingDomain,"seal-impression":async()=>(await import("./sales-master-VD6JE2P3.js")).sealImpressionDomain,shift:async()=>(await import("./attendance-lists-NVRU2NLY.js")).shiftDomain,
|
|
8
|
-
storage:async()=>(await import("./storage-KLLBENBY.js")).storageDomain,"supplier-payment":async()=>(await import("./supplier-payment-2KPCVEPH.js")).supplierPaymentDomain,task:async()=>(await import("./task-MFWWP5Q7.js")).taskDomain,teams:async()=>(await import("./teams-DRHXPLWN.js")).teamsDomain,user:async()=>(await import("./user-QG3KMK3T.js")).userDomain,wiki:async()=>(await import("./knowledge-FQ32UNDW.js")).wikiDomain,workchange:async()=>(await import("./attendance-lists-NVRU2NLY.js")).
|
|
9
|
-
workchangeDomain,workflow:async()=>(await import("./workflow-CSYU4J4U.js")).workflowDomain};async function loadDomain(name){return LOADERS[name]()}export{loadDomain};
|
package/dist/media-BU23L547.js
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
-
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{contentTypeFor,inspectLocalFile}from"./chunk-HNUBM24L.js";import{checkUploadQuota}from"./chunk-2YNZ4MRT.js";import"./chunk-3WHD2YVF.js";import{isSafePathSegment}from"./chunk-GMBJTG6A.js";import"./chunk-3HH5IYNO.js";import"./chunk-IF2K4PM5.js";import"./chunk-4VZKNEVN.js";import"./chunk-GY7KI5E5.js";import"./chunk-II5RVJQN.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-IOGMOXYF.js";import{
|
|
4
|
-
requireResolved,singleRef,withResolved}from"./chunk-LXIAOCUW.js";import{isRecord,pick}from"./chunk-VTQAI52S.js";import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-UFND7FBC.js";import"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import crypto from"crypto";import fs from"fs";import path from"path";var SCOPE_PERSONAL="personal";var SCOPE_PROJECT="project";var LIST_COLUMNS=["id","file_name","content_type","file_size","folder_id","public_status","updated_at"];var UPLOAD_COLUMNS=["id","file_name","content_type","file_size","folder_id","scope","content_hash"];var FILE_FLAG={name:"--file",summary:"\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3059\u308B\u30ED\u30FC\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\uFF08\u5FC5\u9808\uFF09",takesValue:true,placeholder:"<\u30D1\u30B9>"};var NAME_FLAG={
|
|
5
|
-
name:"--name",summary:"\u4FDD\u5B58\u3059\u308B\u30D5\u30A1\u30A4\u30EB\u540D\uFF08\u7701\u7565\u6642\u306F\u30ED\u30FC\u30AB\u30EB\u306E\u30D5\u30A1\u30A4\u30EB\u540D\u3002\u540C\u540D\u304C\u3042\u308B\u3068\u30B5\u30FC\u30D0\u304C\u5225\u540D\u306B\u3057\u307E\u3059\uFF09",takesValue:true,placeholder:"<\u30D5\u30A1\u30A4\u30EB\u540D>"};var CONTENT_TYPE_FLAG={name:"--content-type",summary:"Content-Type\uFF08\u7701\u7565\u6642\u306F\u62E1\u5F35\u5B50\u304B\u3089\u63A8\u5B9A\u3002\u4E0D\u660E\u306A\u3089 application/octet-stream\uFF09",
|
|
6
|
-
takesValue:true,placeholder:"<\u578B>"};var FOLDER_FLAG={name:"--folder",summary:"\u30D5\u30A9\u30EB\u30C0ID\uFF08\u7701\u7565\u6642\u306F\u30B9\u30B3\u30FC\u30D7\u306E\u6700\u4E0A\u4F4D\uFF09",takesValue:true,placeholder:"<\u30D5\u30A9\u30EB\u30C0ID>"};var MEDIA_PROJECT_FLAG={name:"--project",summary:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u5BFE\u8C61\u306B\u3059\u308B\uFF08\u30B3\u30FC\u30C9\u307E\u305F\u306F ID\uFF09\u3002\u7701\u7565\u6642\u306F\u81EA\u5206\u306E\u500B\u4EBA\u30D5\u30A1\u30A4\u30EB",
|
|
7
|
-
takesValue:true,placeholder:"<\u30B3\u30FC\u30C9|ID>"};var KEYWORD_FLAG={name:"--keyword",summary:"\u30D5\u30A1\u30A4\u30EB\u540D\u30FB\u5185\u5BB9\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\uFF08\u691C\u7D22\u6642\u306F\u30DA\u30FC\u30B8\u30F3\u30B0\u3057\u307E\u305B\u3093\uFF09",takesValue:true,placeholder:"<\u30AD\u30FC\u30EF\u30FC\u30C9>"};var FILE_REF_FLAG={name:"--id",summary:"\u30D5\u30A1\u30A4\u30EBID\u3002\u4F4D\u7F6E\u5F15\u6570\u3068\u540C\u3058\u610F\u5473\uFF08\u4E21\u65B9\u6307\u5B9A\u306F\u30A8\u30E9\u30FC\uFF09",
|
|
8
|
-
takesValue:true,placeholder:"<\u30D5\u30A1\u30A4\u30EBID>"};var OUT_FLAG={name:"--out",summary:"\u66F8\u304D\u51FA\u3057\u5148\u306E\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9\uFF08\u5FC5\u9808\u3002\u6A19\u6E96\u51FA\u529B\u3078\u306F\u51FA\u3057\u307E\u305B\u3093\uFF09",takesValue:true,placeholder:"<\u30D1\u30B9>"};var FORCE_FLAG={name:"--force",summary:"\u66F8\u304D\u51FA\u3057\u5148\u304C\u65E2\u306B\u3042\u308C\u3070\u4E0A\u66F8\u304D\u3059\u308B\uFF08\u65E2\u5B9A\u3067\u306F\u4E0A\u66F8\u304D\u3057\u306A\u3044\uFF09",
|
|
9
|
-
takesValue:false};var UUID=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function folderId(input){const value=nonEmpty(input.flags,"--folder");if(value!==void 0&&!UUID.test(value)){throw new UsageError(`--folder \u306B\u306F\u30D5\u30A9\u30EB\u30C0ID\uFF08UUID\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: ${value}`)}return value}async function resolveScope(input,ctx){const ref=nonEmpty(input.flags,"--project");if(ref===void 0)return{scope:SCOPE_PERSONAL};return{
|
|
10
|
-
scope:SCOPE_PROJECT,scopeId:await ctx.projectId(ref)}}function fileRef(input,usage){const id=singleRef(input,{flag:"--id",label:"\u30D5\u30A1\u30A4\u30EBID",usage});if(!isSafePathSegment(id))throw new UsageError(`\u30D5\u30A1\u30A4\u30EBID \u306E\u5F62\u5F0F\u304C\u9055\u3044\u307E\u3059: ${id}`);return id}function filePath(id){return`/api/v2/media/files/${encodeURIComponent(id)}`}function listRows(body){const data=isRecord(body)?body["data"]:void 0;if(!Array.isArray(data)){throw new ApiResponseError(
|
|
11
|
-
"\u30E1\u30C7\u30A3\u30A2\u4E00\u89A7\u306E\u5FDC\u7B54\u306B data \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}return data}function dataOf(body,label){const data=isRecord(body)?body["data"]:void 0;if(!isRecord(data)){throw new ApiResponseError(`${label}\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`)}return data}
|
|
12
|
-
function localFile(input){const raw=input.flags.get("--file");if(raw===void 0||raw.trim()===""){throw new UsageError("--file \u306F\u5FC5\u9808\u3067\u3059","twp media upload --file <\u30D1\u30B9>")}if(input.args.length>0){throw new UsageError(`upload \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D7\u3051\u53D6\u308A\u307E\u305B\u3093: ${input.args.join(" ")}`,"twp media upload --file <\u30D1\u30B9>")}const{file,size}=inspectLocalFile(raw,"--file","twp media upload --file <\u30D1\u30B9>");const nameFlag=nonEmpty(
|
|
13
|
-
input.flags,"--name");const name=nameFlag??path.basename(file);const contentType=nonEmpty(input.flags,"--content-type")??contentTypeFor(name);return{file,name,size,contentType}}function uploadUrlPlan(input){const resolved=input.resolved??{};const body={file_name:requireResolved(input,"fileName"),content_type:requireResolved(input,"contentType"),file_size:Number(requireResolved(input,"fileSize")),scope:requireResolved(input,"scope")};if(resolved["scopeId"]!==void 0)body["scope_id"]=resolved["scop\
|
|
14
|
-
eId"];const folder=folderId(input);if(folder!==void 0)body["folder_id"]=folder;return{method:"POST",path:"/api/v2/media/files/upload-url",body}}function issued(body){const data=dataOf(body,"\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9URL\u767A\u884C");const id=data["file_id"];const uploadUrl=data["upload_url"];if(!isSafePathSegment(id)||typeof uploadUrl!=="string"||!/^https:\/\//.test(uploadUrl)){throw new ApiResponseError("\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9URL\u767A\u884C\u306E\u5FDC\u7B54\u306B data.file_id / data.upload_url \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
|
|
15
|
-
return{id,uploadUrl}}var discardGuidance=id=>` \u7834\u68C4: twp media delete ${id} --yes\uFF08\u30B4\u30DF\u7BB1\u3078\u79FB\u3057\u307E\u3059\u3002\u5B8C\u5168\u306B\u6D88\u3059\u306A\u3089 twp api /v2/media/files/${id}/permanent --method DELETE --yes\uFF09`;function orphanGuidance(id,stage){if(stage==="transfer"){return`\u30D5\u30A1\u30A4\u30EB ${id} \u306F\u4EEE\u767B\u9332\u3055\u308C\u307E\u3057\u305F\u304C\u3001\u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u8EE2\u9001\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002
|
|
16
|
-
\u30B5\u30FC\u30D0\u306B\u306F\u4E2D\u8EAB\u306E\u7121\u3044\u4EEE\u767B\u9332\u306E\u30D5\u30A1\u30A4\u30EB\u304C\u6B8B\u3063\u3066\u304A\u308A\u3001\u81EA\u52D5\u3067\u306F\u524A\u9664\u3055\u308C\u307E\u305B\u3093\u3002\u7834\u68C4\u3057\u3066\u304B\u3089\u518D\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002
|
|
17
|
-
`+discardGuidance(id)}return`\u30D5\u30A1\u30A4\u30EB ${id} \u306F\u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u8EE2\u9001\u307E\u3067\u5B8C\u4E86\u3057\u307E\u3057\u305F\u304C\u3001\u5B8C\u4E86\u767B\u9332\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002
|
|
18
|
-
\u30B5\u30FC\u30D0\u306B\u306F\u4EEE\u767B\u9332\u306E\u30D5\u30A1\u30A4\u30EB\u304C\u6B8B\u3063\u3066\u304A\u308A\u3001\u81EA\u52D5\u3067\u306F\u524A\u9664\u3055\u308C\u307E\u305B\u3093\u3002\u6B21\u306E\u3069\u3061\u3089\u304B\u3092\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002
|
|
19
|
-
\u518D\u767B\u9332: twp api /v2/media/files/${id}/complete --method POST --yes
|
|
20
|
-
`+discardGuidance(id)}async function upload(input,ctx){const file=requireResolved(input,"file");const size=Number(requireResolved(input,"fileSize"));const contentType=requireResolved(input,"contentType");const bytes=new Uint8Array(fs.readFileSync(file));if(bytes.byteLength!==size){throw new UsageError(`\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u4E2D\u306B\u30D5\u30A1\u30A4\u30EB\u306E\u5927\u304D\u3055\u304C\u5909\u308F\u308A\u307E\u3057\u305F\uFF08${size} \u2192 ${bytes.byteLength} \u30D0\u30A4\u30C8\uFF09: ${file}`)}
|
|
21
|
-
const localHash=crypto.createHash("sha256").update(bytes).digest("hex");await checkUploadQuota(ctx,size);const{id,uploadUrl}=issued(await ctx.send(uploadUrlPlan(input)));try{await ctx.putSigned(uploadUrl,bytes,contentType)}catch(err){ctx.warn(orphanGuidance(id,"transfer"));throw err}let completed;try{completed=dataOf(await ctx.send({method:"POST",path:`${filePath(id)}/complete`,body:{}}),"\u5B8C\u4E86\u767B\u9332")}catch(err){ctx.warn(orphanGuidance(id,"complete"));throw err}const serverHash=completed["\
|
|
22
|
-
content_hash"];if(typeof serverHash==="string"&&serverHash!==""){if(serverHash.toLowerCase()!==localHash){ctx.warn(`\u30D5\u30A1\u30A4\u30EB ${id} \u306F\u30B5\u30FC\u30D0\u306B\u767B\u9332\u6E08\u307F\u306E\u307E\u307E\u6B8B\u3063\u3066\u3044\u307E\u3059\u3002
|
|
23
|
-
${discardGuidance(id)}`);throw new ApiResponseError(`\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u305F\u30D5\u30A1\u30A4\u30EB ${id} \u306E\u5185\u5BB9\u304C\u30ED\u30FC\u30AB\u30EB\u3068\u4E00\u81F4\u3057\u307E\u305B\u3093\uFF08\u30ED\u30FC\u30AB\u30EB sha256 ${localHash} / \u30B5\u30FC\u30D0 ${serverHash}\uFF09\u3002`)}}else{ctx.warn(`\u30B5\u30FC\u30D0\u304C content_hash \u3092\u8FD4\u3055\u306A\u304B\u3063\u305F\u305F\u3081\u3001\u30D5\u30A1\u30A4\u30EB ${id} \u306E\u5185\u5BB9\u306F\u7167\u5408\u3057\u3066\u3044\u307E\u305B\u3093\u3002`)}
|
|
24
|
-
return completed}var BULK_MAX=100;var BULK_DOWNLOAD_MAX=50;function bulkIds(input,usage,max){const ids=input.args.map(arg=>arg.trim()).filter(arg=>arg!=="");if(ids.length===0)throw new UsageError("\u30D5\u30A1\u30A4\u30EBID \u30921\u3064\u4EE5\u4E0A\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);if(ids.length>max)throw new UsageError(`\u4E00\u5EA6\u306B\u6307\u5B9A\u3067\u304D\u308B\u30D5\u30A1\u30A4\u30EB\u306F ${max} \u4EF6\u307E\u3067\u3067\u3059\uFF08${ids.length} \u4EF6\u6307\u5B9A\uFF09`,
|
|
25
|
-
usage);const bad=ids.filter(id=>!UUID.test(id));if(bad.length>0)throw new UsageError(`\u30D5\u30A1\u30A4\u30EBID\uFF08UUID\uFF09\u306E\u5F62\u5F0F\u304C\u9055\u3044\u307E\u3059: ${bad.join(" ")}`,usage);const duplicated=ids.filter((id,index)=>ids.indexOf(id)!==index);if(duplicated.length>0)throw new UsageError(`\u540C\u3058\u30D5\u30A1\u30A4\u30EBID \u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059: ${[...new Set(duplicated)].join(" ")}`,usage);return ids}function bulkResult(body,label){const data=dataOf(
|
|
26
|
-
body,label);const{success,failed}=data;const rolledBack=data["rolled_back"]??[];if(!Array.isArray(success)||!Array.isArray(failed)||!Array.isArray(rolledBack)){throw new ApiResponseError(`${label}\u306E\u5FDC\u7B54\u306B data.success / failed \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return{success:success.map(String),failed:failed.map(row=>({id:String(isRecord(row)?row["id"]??row["file_id"]:row),reason:String(isRecord(
|
|
27
|
-
row)?row["reason"]??row["error"]??"":"")})),rolledBack:rolledBack.map(String)}}function assertBulkSucceeded(result,requested,label,ctx){if(result.failed.length===0)return;const lines=[`${label}: ${requested} \u4EF6\u4E2D ${result.failed.length} \u4EF6\u304C\u5931\u6557\u3057\u307E\u3057\u305F\u3002`];for(const row of result.failed)lines.push(` \u5931\u6557: ${row.id}\uFF08${row.reason}\uFF09`);lines.push(result.success.length===0?" \u9069\u7528\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u306F\u3042\u308A\u307E\u305B\u3093\u3002":
|
|
28
|
-
` \u9069\u7528\u6E08\u307F\uFF08\u623B\u3055\u308C\u3066\u3044\u306A\u3044\uFF09: ${result.success.join(" ")}`);if(result.rolledBack.length>0)lines.push(` \u5931\u6557\u306E\u305F\u3081\u5143\u306B\u623B\u3057\u305F\u3082\u306E: ${result.rolledBack.join(" ")}`);ctx.warn(lines.join("\n"));throw new ApiRejectedError(`${label}\u306F\u5B8C\u4E86\u3057\u3066\u3044\u307E\u305B\u3093\uFF08${result.failed.length} \u4EF6\u5931\u6557\u30FB${result.success.length} \u4EF6\u9069\u7528\uFF09\u3002`)}function bulkSummary(body){
|
|
29
|
-
const data=isRecord(body)?body["data"]:void 0;const count=key=>isRecord(data)&&Array.isArray(data[key])?data[key].length:0;return{message:isRecord(body)?body["message"]??null:null,success:count("success"),failed:count("failed"),rolled_back:count("rolled_back")}}var BULK_STATUS_OPERATIONS=[{name:"bulk-publish",endpoint:"publish",label:"\u4E00\u62EC\u516C\u958B",summary:"\u8907\u6570\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u516C\u958B\u3059\u308B",description:"\u30D5\u30A1\u30A4\u30EB\u3092\u516C\u958B\u72B6\u614B\u306B\u3057\u307E\u3059\u3002"},
|
|
30
|
-
{name:"bulk-unpublish",endpoint:"unpublish",label:"\u4E00\u62EC\u975E\u516C\u958B",summary:"\u8907\u6570\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u975E\u516C\u958B\u306B\u3059\u308B",description:"\u30D5\u30A1\u30A4\u30EB\u3092\u975E\u516C\u958B\uFF08\u4E0B\u66F8\u304D\uFF09\u306B\u623B\u3057\u307E\u3059\u3002"},{name:"bulk-archive",endpoint:"archive",label:"\u4E00\u62EC\u30A2\u30FC\u30AB\u30A4\u30D6",summary:"\u8907\u6570\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30FC\u30AB\u30A4\u30D6\u3059\u308B",
|
|
31
|
-
description:"\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30FC\u30AB\u30A4\u30D6\u72B6\u614B\u306B\u3057\u307E\u3059\uFF08\u524A\u9664\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF09\u3002"},{name:"bulk-restore",endpoint:"restore",label:"\u4E00\u62EC\u5FA9\u5143",summary:"\u30B4\u30DF\u7BB1\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u5FA9\u5143\u3059\u308B",description:"twp media delete / bulk-delete \u3067\u30B4\u30DF\u7BB1\u3078\u79FB\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u5143\u306B\u623B\u3057\u307E\u3059\uFF08\u30A2\u30FC\u30AB\u30A4\u30D6\u306E\u89E3\u9664\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF09\u3002"}];
|
|
32
|
-
function bulkUsage(name,extra=""){return`twp media ${name} <\u30D5\u30A1\u30A4\u30EBID>...${extra}`}function bulkStatusOperation(spec){const usage=bulkUsage(spec.name);return{name:spec.name,summary:spec.summary,usage,description:`${spec.description}
|
|
33
|
-
\u30D5\u30A1\u30A4\u30EBID\uFF08twp media list \u306E id\uFF09\u3092\u4F4D\u7F6E\u5F15\u6570\u3067\u4E26\u3079\u307E\u3059\uFF08${BULK_MAX} \u4EF6\u307E\u3067\uFF09\u3002
|
|
34
|
-
`+BULK_FAILURE_HELP,flags:[],plan:input=>({method:"POST",path:`/api/v2/media/files/bulk/${spec.endpoint}`,body:{file_ids:bulkIds(input,usage,BULK_MAX)}}),plannedNotes:input=>[`${bulkIds(input,usage,BULK_MAX).length} \u4EF6\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u5BFE\u8C61\u306B\u3057\u307E\u3059\u3002`],execute:(input,ctx)=>runBulk(ctx,bulkIds(input,usage,BULK_MAX),spec.endpoint,spec.label,{}),summarize:bulkSummary,raw:body=>body}}var BULK_FAILURE_HELP="1\u4EF6\u3067\u3082\u5931\u6557\u3059\u308B\u3068\u7D42\u4E86\u30B3\u30FC\u30C9 3 \u3067\u7D42\u308F\u308A\u3001\u5931\u6557\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3068\u7406\u7531\u30FB\u9069\u7528\u6E08\u307F\u306E\u30D5\u30A1\u30A4\u30EB\u3092\
|
|
35
|
-
stderr \u306B\u51FA\u3057\u307E\u3059\n\uFF08\u30B5\u30FC\u30D0\u306F\u5931\u6557\u304C\u3042\u3063\u3066\u3082 HTTP 200 \u3092\u8FD4\u3059\u305F\u3081\uFF09\u3002bulk-publish / bulk-unpublish / bulk-archive \u306F\n\u5B58\u5728\u3057\u306A\u3044 ID \u304C1\u4EF6\u3067\u3082\u3042\u308B\u3068\u4ED6\u3082\u9069\u7528\u3057\u307E\u305B\u3093\u3002bulk-restore / bulk-move / bulk-delete \u306F1\u4EF6\u305A\u3064\u51E6\u7406\u3057\u3001\n\u5931\u6557\u3057\u305F\u3082\u306E\u4EE5\u5916\u306F\u9069\u7528\u3055\u308C\u307E\u3059\u3002";
|
|
36
|
-
async function runBulk(ctx,ids,endpoint,label,extra){const body=await ctx.send({method:"POST",path:`/api/v2/media/files/bulk/${endpoint}`,body:{file_ids:ids,...extra}});assertBulkSucceeded(bulkResult(body,label),ids.length,label,ctx);return body}var PERMANENT_FLAG={name:"--permanent",summary:"\u30B4\u30DF\u7BB1\u306B\u3042\u308B\u30D5\u30A1\u30A4\u30EB\u3092\u5B8C\u5168\u306B\u524A\u9664\u3059\u308B\uFF08\u5FA9\u5143\u3067\u304D\u307E\u305B\u3093\u3002\u5148\u306B bulk-delete \u3067\u30B4\u30DF\u7BB1\u3078\u79FB\u3059\u3053\u3068\uFF09",
|
|
37
|
-
takesValue:false};var MOVE_FOLDER_FLAG={name:"--folder",summary:"\u79FB\u52D5\u5148\u306E\u30D5\u30A9\u30EB\u30C0ID\uFF08\u7701\u7565\u6642\u306F\u30B9\u30B3\u30FC\u30D7\u306E\u6700\u4E0A\u4F4D\uFF09",takesValue:true,placeholder:"<\u30D5\u30A9\u30EB\u30C0ID>"};var MOVE_PROJECT_FLAG={name:"--project",summary:"\u79FB\u52D5\u5148\u3092\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30D5\u30A1\u30A4\u30EB\u306B\u3059\u308B\uFF08\u30B3\u30FC\u30C9\u307E\u305F\u306F ID\uFF09\u3002\u7701\u7565\u6642\u306F\u81EA\u5206\u306E\u500B\u4EBA\u30D5\u30A1\u30A4\u30EB",
|
|
38
|
-
takesValue:true,placeholder:"<\u30B3\u30FC\u30C9|ID>"};var BULK_DELETE_USAGE=bulkUsage("bulk-delete"," --yes [--permanent]");var BULK_MOVE_USAGE=bulkUsage("bulk-move"," [--project <\u30B3\u30FC\u30C9|ID>] [--folder <\u30D5\u30A9\u30EB\u30C0ID>]");var BULK_DOWNLOAD_USAGE=bulkUsage("bulk-download"," --out <\u30D1\u30B9.zip> [--force]");function bulkDeleteEndpoint(input){return input.flags.has("--permanent")?{endpoint:"permanent-delete",label:"\u4E00\u62EC\u5B8C\u5168\u524A\u9664"}:{endpoint:"delet\
|
|
39
|
-
e",label:"\u4E00\u62EC\u524A\u9664"}}var BULK_OPERATIONS=[...BULK_STATUS_OPERATIONS.map(bulkStatusOperation),{name:"bulk-move",summary:"\u8907\u6570\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u5225\u306E\u30D5\u30A9\u30EB\u30C0\u30FB\u30B9\u30B3\u30FC\u30D7\u3078\u79FB\u3059",usage:BULK_MOVE_USAGE,description:"\u79FB\u52D5\u5148\u306F --project\uFF08\u7121\u3051\u308C\u3070\u81EA\u5206\u306E\u500B\u4EBA\u30D5\u30A1\u30A4\u30EB\uFF09\u3068 --folder\uFF08\u7121\u3051\u308C\u3070\u6700\u4E0A\u4F4D\uFF09\u3067\u6C7A\u307E\u308A\u307E\u3059\u3002\n--project \u3092\u4ED8\u3051\u306A\u3044\u3068\u304D\u3001\u65E2\u5B9A\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\uFF08TWP_PROJECT \u7B49\uFF09\u306F\u4F7F\u3044\u307E\u305B\u3093\uFF08\u500B\u4EBA\u30D5\u30A1\u30A4\u30EB\u3078\u79FB\u3057\u307E\u3059\uFF09\u3002\n"+
|
|
40
|
-
BULK_FAILURE_HELP,flags:[MOVE_PROJECT_FLAG,MOVE_FOLDER_FLAG],async prepare(input,ctx){bulkIds(input,BULK_MOVE_USAGE,BULK_MAX);folderId(input);const scope=await resolveScope(input,ctx);const scopeId=scope["scopeId"]??(await ctx.resolver.currentUser()).id;return withResolved(input,{scope:requireScope(scope),scopeId})},plan:input=>({method:"POST",path:"/api/v2/media/files/bulk/move",body:bulkMoveBody(input)}),plannedNotes:input=>[`${bulkIds(input,BULK_MOVE_USAGE,BULK_MAX).length} \u4EF6\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u79FB\u3057\u307E\u3059\u3002`],
|
|
41
|
-
execute:(input,ctx)=>{const{file_ids:ids,...extra}=bulkMoveBody(input);return runBulk(ctx,ids,"move","\u4E00\u62EC\u79FB\u52D5",extra)},summarize:bulkSummary,raw:body=>body},{name:"bulk-delete",summary:"\u8907\u6570\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u30B4\u30DF\u7BB1\u3078\u79FB\u3059\uFF08--permanent \u3067\u30B4\u30DF\u7BB1\u304B\u3089\u5B8C\u5168\u524A\u9664\uFF09",usage:BULK_DELETE_USAGE,description:"\u65E2\u5B9A\u306F\u30B4\u30DF\u7BB1\u3078\u79FB\u3059\u3060\u3051\u3067\u3001twp media bulk-restore \u3067\u623B\u305B\u307E\u3059\u3002\n--permanent \u3092\u4ED8\u3051\u308B\u3068\u30B4\u30DF\u7BB1\u306B\u3042\u308B\u30D5\u30A1\u30A4\u30EB\u3092\u5B8C\u5168\u306B\u524A\u9664\u3057\u3001\u5FA9\u5143\u3067\u304D\u307E\u305B\u3093\u3002\n\u30B4\u30DF\u7BB1\
|
|
42
|
-
\u306B\u7121\u3044\u30D5\u30A1\u30A4\u30EB\u306F\u5B8C\u5168\u524A\u9664\u3067\u304D\u307E\u305B\u3093\uFF08\u30B5\u30FC\u30D0\u304C\u300C\u5148\u306B\u30B4\u30DF\u7BB1\u306B\u79FB\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u300D\u3067\u62D2\u5426\u3057\u307E\u3059\uFF09\u3002\n\u7834\u58CA\u7684\u306A\u64CD\u4F5C\u3068\u3057\u3066\u6271\u3046\u305F\u3081 --yes \u304C\u5FC5\u8981\u3067\u3059\u3002\u5BFE\u8C61\u4EF6\u6570\u306F --dry-run \u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002\n"+BULK_FAILURE_HELP,
|
|
43
|
-
destructive:true,flags:[PERMANENT_FLAG],plan:input=>({method:"POST",path:`/api/v2/media/files/bulk/${bulkDeleteEndpoint(input).endpoint}`,body:{file_ids:bulkIds(input,BULK_DELETE_USAGE,BULK_MAX)}}),plannedNotes:input=>[input.flags.has("--permanent")?`${bulkIds(input,BULK_DELETE_USAGE,BULK_MAX).length} \u4EF6\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u5B8C\u5168\u306B\u524A\u9664\u3057\u307E\u3059\uFF08\u5FA9\u5143\u3067\u304D\u307E\u305B\u3093\uFF09\u3002`:`${bulkIds(input,BULK_DELETE_USAGE,BULK_MAX).
|
|
44
|
-
length} \u4EF6\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u30B4\u30DF\u7BB1\u3078\u79FB\u3057\u307E\u3059\u3002`],execute:(input,ctx)=>{const{endpoint,label}=bulkDeleteEndpoint(input);return runBulk(ctx,bulkIds(input,BULK_DELETE_USAGE,BULK_MAX),endpoint,label,{})},summarize:bulkSummary,raw:body=>body},{name:"bulk-download",summary:"\u8907\u6570\u306E\u30D5\u30A1\u30A4\u30EB\u3092 ZIP \u306B\u307E\u3068\u3081\u3066\u66F8\u304D\u51FA\u3059",usage:BULK_DOWNLOAD_USAGE,description:`\u30B5\u30FC\u30D0\u304C ZIP \u3092\u4F5C\u308A\u3001\u305D\u306E\u7F72\u540DURL\u304B\u3089\u672C\u4F53\u3092\
|
|
45
|
-
\u53D7\u3051\u53D6\u308A\u307E\u3059\uFF08${BULK_DOWNLOAD_MAX} \u4EF6\u307E\u3067\uFF09\u3002
|
|
46
|
-
\u30B5\u30FC\u30D0\u306F\u5B58\u5728\u3057\u306A\u3044\u30FB\u8AAD\u3081\u306A\u3044\u30D5\u30A1\u30A4\u30EB\u3092\u9ED9\u3063\u3066\u9664\u3044\u3066 ZIP \u3092\u4F5C\u308B\u306E\u3067\u3001ZIP \u306B\u5165\u3063\u305F\u4EF6\u6570\u304C
|
|
47
|
-
\u6307\u5B9A\u3088\u308A\u5C11\u306A\u3051\u308C\u3070\u66F8\u304D\u51FA\u3055\u305A\u306B\u7D42\u4E86\u30B3\u30FC\u30C9 3 \u3067\u7D42\u308F\u308A\u307E\u3059\u3002
|
|
48
|
-
\u66F8\u304D\u51FA\u3057\u5148\u306F --out \u3067\u5FC5\u305A\u6307\u5B9A\u3057\u307E\u3059\u3002\u65E2\u5B58\u30D5\u30A1\u30A4\u30EB\u306F --force \u304C\u7121\u3051\u308C\u3070\u4E0A\u66F8\u304D\u3057\u307E\u305B\u3093\u3002`,flags:[OUT_FLAG,FORCE_FLAG],download:{outFlag:"--out",forceFlag:"--force",signedUrl(body,plan){const data=dataOf(body,"\u4E00\u62EC\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9");const requested=isRecord(plan.body)&&Array.isArray(plan.body["file_ids"])?plan.body["file_ids"].length:
|
|
49
|
-
0;const packed=data["file_count"];if(typeof packed==="number"&&packed<requested){throw new ApiRejectedError(`ZIP \u306B\u5165\u3063\u305F\u306E\u306F ${requested} \u4EF6\u4E2D ${packed} \u4EF6\u3067\u3057\u305F\uFF08\u5B58\u5728\u3057\u306A\u3044\u30FB\u8AAD\u3081\u306A\u3044\u30D5\u30A1\u30A4\u30EB\u304C\u9664\u304B\u308C\u3066\u3044\u307E\u3059\uFF09\u3002\u66F8\u304D\u51FA\u3057\u3066\u3044\u307E\u305B\u3093\u3002twp media list \u3067 ID \u3092\u78BA\u304B\u3081\u3066\u6307\u5B9A\u3057\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}
|
|
50
|
-
const url=data["download_url"];if(typeof url!=="string"||!/^https:\/\//.test(url)){throw new ApiResponseError("\u4E00\u62EC\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u306E\u5FDC\u7B54\u306B data.download_url \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}return url}},plan:input=>({method:"POST",path:"/api/v2/media/files/bulk/download",body:{file_ids:bulkIds(input,BULK_DOWNLOAD_USAGE,BULK_DOWNLOAD_MAX)}}),summarize:body=>body,raw:body=>body}];
|
|
51
|
-
function requireScope(scope){const value=scope["scope"];if(value===void 0)throw new Error("resolveScope \u304C scope \u3092\u8FD4\u3057\u307E\u305B\u3093\u3067\u3057\u305F\uFF08\u914D\u7DDA\u306E\u8AA4\u308A\uFF09");return value}function bulkMoveBody(input){const body={file_ids:bulkIds(input,BULK_MOVE_USAGE,BULK_MAX),scope:requireResolved(input,"scope"),scope_id:requireResolved(input,"scopeId")};const folder=folderId(input);if(folder!==void 0)body["folder_id"]=folder;return body}var LIST_USAGE="\
|
|
52
|
-
twp media list [--project <\u30B3\u30FC\u30C9|ID>] [--folder <\u30D5\u30A9\u30EB\u30C0ID>] [--keyword <\u8A9E>]";var UPLOAD_USAGE="twp media upload --file <\u30D1\u30B9> [--project <\u30B3\u30FC\u30C9|ID>] [--folder <\u30D5\u30A9\u30EB\u30C0ID>] [--name <\u540D\u524D>]";var DOWNLOAD_USAGE="twp media download <\u30D5\u30A1\u30A4\u30EBID> --out <\u30D1\u30B9> [--force]";var DELETE_USAGE="twp media delete <\u30D5\u30A1\u30A4\u30EBID> --yes";var mediaDomain={name:"media",summary:"\u30E1\u30C7\u30A3\u30A2\u30E9\u30A4\u30D6\u30E9\u30EA\u306E\u30D5\u30A1\u30A4\u30EB\uFF08\u30A2\u30C3\u30D7\u30ED\
|
|
53
|
-
\u30FC\u30C9\u30FB\u4E00\u89A7\u30FB\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u30FB\u524A\u9664\u30FB\u4E00\u62EC\u64CD\u4F5C\uFF09",operations:[{name:"list",summary:"\u30D5\u30A1\u30A4\u30EB\u3092\u4E00\u89A7\u3059\u308B\uFF08\u65E2\u5B9A\u306F\u81EA\u5206\u306E\u500B\u4EBA\u30D5\u30A1\u30A4\u30EB\uFF09",usage:LIST_USAGE,description:"--project \u3092\u4ED8\u3051\u308B\u3068\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30D5\u30A1\u30A4\u30EB\u3001\u7121\u3051\u308C\u3070\u81EA\u5206\u306E\u500B\u4EBA\u30D5\u30A1\u30A4\u30EB\u3092\u8FD4\u3057\u307E\u3059\u3002\n\u30D5\u30A9\u30EB\u30C0\u3092\u4ED8\u3051\u306A\u3051\u308C\u3070\u30B9\u30B3\u30FC\u30D7\u306E\u6700\u4E0A\u4F4D\u306B\u3042\u308B\u30D5\u30A1\u30A4\u30EB\u3060\u3051\u3067\u3059\uFF08\u4E0B\u4F4D\u30D5\u30A9\u30EB\u30C0\u306F\u542B\u307F\u307E\u305B\u3093\uFF09\u3002\n\n"+
|
|
54
|
-
LIST_PAGING_HELP,flags:[MEDIA_PROJECT_FLAG,FOLDER_FLAG,KEYWORD_FLAG,...LIST_FLAGS],paging:envelopePaging({label:"\u30E1\u30C7\u30A3\u30A2\u4E00\u89A7",itemsKey:"data"}),async prepare(input,ctx){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 withResolved(input,await resolveScope(input,ctx))},plan(input){const resolved=input.resolved??{};const keyword=nonEmpty(input.flags,
|
|
55
|
-
"--keyword");return{method:"GET",path:"/api/v2/media/files",query:{scope:requireResolved(input,"scope"),scope_id:resolved["scopeId"],folder_id:folderId(input),keyword,limit:positiveInteger(input.flags,"--limit"),cursor:nonEmpty(input.flags,"--cursor")}}},summarize:body=>listRows(body).map(row=>pick(row,LIST_COLUMNS)),raw:body=>listRows(body),notes(body,input){if(nonEmpty(input.flags,"--keyword")===void 0)return[];const meta=isRecord(body)?body["meta"]:void 0;const total=isRecord(meta)?meta["tota\
|
|
56
|
-
l"]:void 0;const shown=listRows(body).length;if(typeof total!=="number"||total<=shown)return[];return[`\u691C\u7D22\u7D50\u679C ${total} \u4EF6\u306E\u3046\u3061 ${shown} \u4EF6\u3060\u3051\u3092\u8868\u793A\u3057\u3066\u3044\u307E\u3059\uFF08\u691C\u7D22\u306F\u30DA\u30FC\u30B8\u30F3\u30B0\u3057\u307E\u305B\u3093\u3002--limit \u3092\u4E0A\u3052\u308B\u304B\u8A9E\u3092\u7D5E\u3063\u3066\u304F\u3060\u3055\u3044\uFF09\u3002`]}},{name:"upload",summary:"\u30ED\u30FC\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3059\u308B\uFF08\u767A\u884C\u30FB\u8EE2\u9001\u30FB\u5B8C\u4E86\u767B\u9332\u30921\u30B3\u30DE\u30F3\u30C9\u3067\uFF09",
|
|
57
|
-
usage:UPLOAD_USAGE,description:"\u5BB9\u91CF\u3092\u78BA\u304B\u3081\u3066\u304B\u3089\u3001\u6B21\u306E3\u5F80\u5FA9\u30921\u30B3\u30DE\u30F3\u30C9\u3067\u884C\u3044\u307E\u3059\u3002\n 0. POST /api/v2/storage/check-upload\uFF08\u30C6\u30CA\u30F3\u30C8\u306E\u5BB9\u91CF\u691C\u67FB\u3002\u8D85\u904E\u306A\u3089\u4F55\u3082\u767B\u9332\u305B\u305A\u306B\u6B62\u307E\u308A\u307E\u3059\uFF09\n 1. POST /api/v2/media/files/upload-url\uFF08\u7F72\u540DURL\u306E\u767A\u884C\u3002\u3053\u3053\u3067\u30D5\u30A1\u30A4\u30EB\u304C\u4EEE\u767B\u9332\u3055\u308C\u307E\u3059\uFF09\n 2. \u7F72\u540DURL\u3078 PUT\uFF08\u30D5\u30A1\u30A4\u30EB\u672C\u4F53\u3002TWP \u306E\u8A8D\u8A3C\u60C5\u5831\u306F\u9001\u308A\u307E\u305B\u3093\uFF09\n 3. POST /api/v2/media/files/{id}/complete\uFF08\u5B8C\u4E86\u767B\u9332\uFF09\n\u5B8C\u4E86\u767B\u9332\u306E\u5FDC\u7B54\u306E content_hash\uFF08sha256\uFF09\u3092\u30ED\u30FC\u30AB\u30EB\u306E\u30D5\u30A1\u30A4\u30EB\u3068\u7A81\u304D\u5408\u308F\u305B\u3001\u4E00\u81F4\u3057\u306A\u3051\u308C\u3070\u5931\u6557\u3057\u307E\u3059\u3002\n2\u30FB3 \u304C\u5931\u6557\u3057\u305F\u5834\u5408\u306F\u30D5\u30A1\u30A4\u30EBID\u3068\u518D\u767B\u9332\u30FB\u7834\u68C4\u306E\u624B\u9806\u3092 stderr \u306B\u51FA\u3057\u3066\u5931\u6557\u3057\u307E\u3059\uFF08\u4EEE\u767B\u9332\u306F\u81EA\u52D5\u3067\u306F\u6D88\u3048\u307E\u305B\u3093\uFF09\u3002\n--dry-run \u306F 1 \u306E\u30EA\u30AF\u30A8\u30B9\u30C8\u3060\u3051\u3092\u8868\u793A\u3057\u307E\u3059\uFF082 \u4EE5\u964D\u306F 1 \u306E\u5FDC\u7B54\u306B\u4F9D\u5B58\u3059\u308B\u305F\u3081\uFF09\u3002",
|
|
58
|
-
flags:[FILE_FLAG,MEDIA_PROJECT_FLAG,FOLDER_FLAG,NAME_FLAG,CONTENT_TYPE_FLAG],async prepare(input,ctx){const local=localFile(input);folderId(input);return withResolved(input,{...await resolveScope(input,ctx),file:local.file,fileName:local.name,fileSize:String(local.size),contentType:local.contentType})},plan:uploadUrlPlan,plannedNotes:input=>[`\u5B9F\u884C\u6642\u306F\u3001\u3053\u306E\u524D\u306B\u5BB9\u91CF\u691C\u67FB\uFF08POST /api/v2/storage/check-upload\uFF09\u3092\u9001\u308A\u3001\u3053\u306E\u3042\u3068\u7F72\u540DURL\u3078 ${requireResolved(
|
|
59
|
-
input,"fileSize")} \u30D0\u30A4\u30C8\u3092 PUT \u3057\u3001\u5B8C\u4E86\u767B\u9332\uFF08POST \u2026/complete\uFF09\u3092\u9001\u308A\u307E\u3059\u3002`],execute:upload,summarize:body=>pick(body,UPLOAD_COLUMNS),raw:body=>body},{name:"download",summary:"\u30D5\u30A1\u30A4\u30EB\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u30D5\u30A1\u30A4\u30EB\u3078\u66F8\u304D\u51FA\u3059",usage:DOWNLOAD_USAGE,description:"\u30D5\u30A1\u30A4\u30EBID \u306F twp media list \u306E id \u3067\u3059\u3002\n\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u7528\u306E\u7F72\u540DURL\u3092\u53D6\u5F97\u3057\u3066\u304B\u3089\u672C\u4F53\u3092\u53D7\u3051\u53D6\u308A\u307E\u3059\uFF08\u7F72\u540DURL\u3078 TWP \u306E\u8A8D\u8A3C\u60C5\
|
|
60
|
-
\u5831\u306F\u9001\u308A\u307E\u305B\u3093\uFF09\u3002\n\u66F8\u304D\u51FA\u3057\u5148\u306F --out \u3067\u5FC5\u305A\u6307\u5B9A\u3057\u307E\u3059\uFF08\u6A19\u6E96\u51FA\u529B\u3078\u306F\u51FA\u3057\u307E\u305B\u3093\uFF09\u3002\u65E2\u5B58\u30D5\u30A1\u30A4\u30EB\u306F --force \u304C\u7121\u3051\u308C\u3070\u4E0A\u66F8\u304D\u3057\u307E\u305B\u3093\u3002",flags:[FILE_REF_FLAG,OUT_FLAG,FORCE_FLAG],download:{outFlag:"--out",forceFlag:"--force",signedUrl(body){const url=dataOf(body,"\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9URL\u53D6\u5F97")["\
|
|
61
|
-
download_url"];if(typeof url!=="string"||!/^https:\/\//.test(url)){throw new ApiResponseError("\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9URL\u53D6\u5F97\u306E\u5FDC\u7B54\u306B data.download_url \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}return url}},plan:input=>({method:"GET",path:`${filePath(fileRef(input,DOWNLOAD_USAGE))}/download-url`}),summarize:body=>body,raw:body=>body},{name:"delete",summary:"\u30D5\u30A1\u30A4\u30EB\u3092\u30B4\u30DF\u7BB1\u3078\u79FB\u3059",
|
|
62
|
-
usage:DELETE_USAGE,description:"\u30B4\u30DF\u7BB1\u3078\u79FB\u3059\u3060\u3051\u3067\u3001\u753B\u9762\u306E\u30B4\u30DF\u7BB1\u304B\u3089\u5FA9\u5143\u3067\u304D\u307E\u3059\uFF08\u5B8C\u5168\u524A\u9664\u306F\u3057\u307E\u305B\u3093\uFF09\u3002\n\u7834\u58CA\u7684\u306A\u64CD\u4F5C\u3068\u3057\u3066\u6271\u3046\u305F\u3081 --yes \u304C\u5FC5\u8981\u3067\u3059\u3002",destructive:true,flags:[FILE_REF_FLAG],plan:input=>({method:"DELETE",path:filePath(fileRef(input,DELETE_USAGE))}),summarize:body=>body,
|
|
63
|
-
raw:body=>body},...BULK_OPERATIONS]};export{mediaDomain,orphanGuidance};
|
package/dist/report-PCQPTRUV.js
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
-
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{charCount,readBody}from"./chunk-ORUDW52G.js";import{REPORTS_PATH}from"./chunk-3WHD2YVF.js";import{UUID_RE,isSafePathSegment}from"./chunk-GMBJTG6A.js";import"./chunk-3HH5IYNO.js";import"./chunk-IF2K4PM5.js";import"./chunk-4VZKNEVN.js";import"./chunk-II5RVJQN.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-IOGMOXYF.js";import{requireResolved,singleRef,withResolved}from"./chunk-LXIAOCUW.js";import{
|
|
4
|
-
isRecord,pick}from"./chunk-VTQAI52S.js";import{ApiResponseError,UsageError}from"./chunk-UFND7FBC.js";import"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.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
|
-
updated_at","completed_at"];var GET_COLUMNS=["id","title","format_name","status","status_label","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
|
-
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",
|
|
7
|
-
takesValue:false};var CONTENT_HELP="\u5185\u5BB9\uFF08--content-file\uFF09\u306F JSON \u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u3001\u6307\u5B9A\u3067\u304D\u308B\u30AD\u30FC\u306F title / content \u3067\u3059\u3002\n content \u306F\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u5165\u529B\u9805\u76EE\u540D \u2192 \u5024\u306E\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u3059\uFF08\u9805\u76EE\u540D\u306F twp report create --generate-cli-skeleton \u3067\u5206\u304B\u308A\u307E\u3059\uFF09\u3002\n \u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306B\u7121\u3044\u9805\u76EE\u540D\u30FB\u305D\u308C\u4EE5\u5916\u306E\u30AD\u30FC\u306F\u9001\u308B\u524D\u306B\u30A8\u30E9\u30FC\u306B\u3057\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u306F\u9805\u76EE\u540D\u3092\u691C\u67FB\u305B\u305A\u306B\u4FDD\u5B58\u3057\u3001\n \u753B\u9762\u306B\u306F\u51FA\u306A\u3044\u5024\u304C\u6B8B\u308B\u305F\u3081\uFF09\u3002--content-file - \u3067\u6A19\u6E96\u5165\u529B\u304B\u3089\u8AAD\u3081\u307E\u3059\u3002";
|
|
8
|
-
function usageOf(op){return`twp report ${op} help`}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(" ")}`,usageOf(op))}}function reportIdArg(input,usage){const id=singleRef(input,{flag:"<\u30EC\u30DD\u30FC\u30C8ID>",label:"\u30EC\u30DD\u30FC\u30C8ID",usage});if(!isSafePathSegment(id)){throw new UsageError(`\u30EC\u30DD\u30FC\u30C8ID \u3068\u3057\u3066\u4F7F\u3048\u306A\u3044\u5024\u3067\u3059: ${id}`,
|
|
9
|
-
"\u30EC\u30DD\u30FC\u30C8ID \u306F twp report list \u306E id \u5217\u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002")}return id}function itemPath(id,suffix=""){return`${REPORTS_PATH}/${encodeURIComponent(id)}${suffix}`}async function formatId(ref,ctx,usableOnly){const trimmed=ref.trim();if(UUID_RE.test(trimmed))return trimmed;if(ULID_RE.test(trimmed))return trimmed.toUpperCase();const id=(await ctx.resolver.reportFormat(trimmed,FORMAT_FLAG.name,usableOnly)).id;if(!isSafePathSegment(id)){throw new ApiResponseError(
|
|
10
|
-
`\u30B5\u30FC\u30D0\u304C\u8FD4\u3057\u305F\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8 ID \u3092\u30D1\u30B9\u306B\u4F7F\u3048\u307E\u305B\u3093: ${id}\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return id}function status(input){const raw=nonEmpty(input.flags,"--status");if(raw===void 0)return void 0;const values=raw.split(",").map(value=>value.trim());const bad=values.filter(value=>!Object.hasOwn(STATUSES,value));if(bad.length>0)throw new UsageError(
|
|
11
|
-
`--status \u306B\u6307\u5B9A\u3067\u304D\u306A\u3044\u5024\u3067\u3059: ${bad.join(", ")||raw}`,STATUS_HELP);return[...new Set(values)].join(",")}function objectOf(body,key,label){const value=isRecord(body)&&body["result"]===true?body[key]:void 0;if(!isRecord(value)){throw new ApiResponseError(`${label}\u306E\u5FDC\u7B54\u306B ${key} \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return value}var listPaging=envelopePaging(
|
|
12
|
-
{label:`${LABEL}\u4E00\u89A7`,itemsKey:"reports"});function writtenReport(body){return objectOf(body,"report",LABEL)}function serverMessage(body){return isRecord(body)&&typeof body["message"]==="string"&&body["message"]!==""?[body["message"]]:[]}function formatRows(body){const list=isRecord(body)&&body["result"]===true?body["formats"]:void 0;if(!Array.isArray(list)||list.some(row=>!isRecord(row))){throw new ApiResponseError("\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u4E00\u89A7\u306E\u5FDC\u7B54\u306B formats \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
|
|
13
|
-
return list}function formatSummary(row){const roles=isRecord(row["roles"])?row["roles"]:{};return pick({...row,writer:roles["writer"],reviewer:roles["reviewer"],admin:roles["admin"]},FORMAT_COLUMNS)}function text(value){return typeof value==="string"&&value!==""?value:void 0}function formColumns(format){const list=columnList(format["form_definition"]);if(list===void 0){throw new ApiResponseError("\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E form_definition \u3092\u8AAD\u3081\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
|
|
14
|
-
return list.flatMap(column=>{if(!isRecord(column))return[];const options=Array.isArray(column["options"])?column["options"].flatMap(option=>{if(typeof option==="string")return[option];if(!isRecord(option)||option["is_legacy"]===true)return[];return[`${String(option["key"])}=${String(option["value"])}`]}):[];return[{name:text(column["name"])??text(column["column_name"])??text(column["id"])??"",displayName:text(column["display_name"])??text(column["label"])??"",type:text(column["type"])??text(column["\
|
|
15
|
-
column_type"]),required:truthy(column["required"]),options,defaultValue:column["default_value"]}]})}function namedColumns(format){return formColumns(format).filter(column=>column.name!=="")}function columnList(definition){if(definition===void 0||definition===null||definition==="")return[];if(typeof definition==="string"){try{return columnList(JSON.parse(definition))}catch{return void 0}}if(Array.isArray(definition))return definition;if(!isRecord(definition))return void 0;const list=Array.isArray(
|
|
16
|
-
definition["form_column_list"])?definition["form_column_list"]:definition["fields"];return Array.isArray(list)?list:void 0}var HARD_TYPES=new Set(["attachment_file","movie","file_reference","task","workflow_application"]);function initialValue(column){if(column.type==="workflow_application"||column.type==="task")return null;return typeof column.defaultValue==="string"&&column.defaultValue!==""?column.defaultValue:null}function titleLocked(format){return format["title_editable"]===false&&text(format["\
|
|
17
|
-
default_title"])!==void 0}function defaultTitle(format,now=new Date){const raw=text(format["default_title"])??text(format["name"]);if(raw===void 0)return void 0;const today=new Intl.DateTimeFormat("en-CA",{timeZone:"Asia/Tokyo"}).format(now);return raw.replace(/\{date\}/g,today)}function skeleton(format){const content={};for(const column of namedColumns(format))content[column.name]=initialValue(column);return titleLocked(format)?{content}:{title:defaultTitle(format)??null,content}}function skeletonNotes(format){
|
|
18
|
-
const columns=namedColumns(format);const notes=titleLocked(format)?[`\u3053\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306F\u30BF\u30A4\u30C8\u30EB\u3092\u5909\u3048\u3089\u308C\u307E\u305B\u3093\uFF08\u30B5\u30FC\u30D0\u304C\u300C${String(format["default_title"])}\u300D\u304B\u3089\u4ED8\u3051\u307E\u3059\u3002title \u306F\u66F8\u304B\u306A\u3044\u3067\u304F\u3060\u3055\u3044\uFF09`]:[];if(columns.length===0)return[...notes,"\u3053\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306B\u5165\u529B\u9805\u76EE\u306F\u3042\u308A\u307E\u305B\u3093\uFF08content \u306F\u7A7A\u306E\u307E\u307E\u3067\u4F5C\u308C\u307E\u3059\uFF09"];
|
|
19
|
-
return[...notes,`\u5165\u529B\u9805\u76EE: ${String(columns.length)} \u9805\u76EE\uFF08content \u306E\u30AD\u30FC\uFF09`,...columns.map(column=>` ${column.name}: ${column.displayName}\uFF08${column.type??"\u578B\u4E0D\u660E"}${column.required?"\u30FB\u63D0\u51FA\u306B\u5FC5\u9808":""}\uFF09${column.options.length>0?` \u9078\u629E\u80A2: ${column.options.join(" / ")}`:""}${column.type!==void 0&&HARD_TYPES.has(column.type)?" \u203BCLI \u304B\u3089\u306F\u5024\u3092\u4F5C\u308C\u306A\u3044\u578B\u3067\u3059\uFF08null \u306E\u307E\u307E\u306B\u3057\u3001\u8981\u308B\u306A\u3089\u753B\u9762\u3067\u5165\u529B\uFF09":
|
|
20
|
-
""}`)]}function parseContent(textBody,source,usage){let parsed;try{parsed=JSON.parse(textBody)}catch{throw new UsageError(`\u30EC\u30DD\u30FC\u30C8\u306E\u5185\u5BB9\u304C JSON \u3068\u3057\u3066\u8AAD\u3081\u307E\u305B\u3093\uFF08${source}\uFF09`,usage)}if(!isRecord(parsed)){throw new UsageError(`\u30EC\u30DD\u30FC\u30C8\u306E\u5185\u5BB9\u306F JSON \u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08${source}\uFF09`,CONTENT_HELP)}const unknown=Object.
|
|
21
|
-
keys(parsed).filter(key=>!CONTENT_KEYS.includes(key));if(unknown.length>0){throw new UsageError(`\u30EC\u30DD\u30FC\u30C8\u306E\u5185\u5BB9\u306B\u9001\u308C\u306A\u3044\u9805\u76EE\u304C\u3042\u308A\u307E\u3059: ${unknown.join(", ")}\uFF08${source}\uFF09`,CONTENT_HELP)}const title=parsed["title"];if(title!==void 0){if(typeof title!=="string"||title.trim()===""){throw new UsageError(`title \u306F\u7A7A\u3067\u306A\u3044\u6587\u5B57\u5217\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08${source}\
|
|
22
|
-
\uFF09`,CONTENT_HELP)}if(charCount(title.trim())>TITLE_MAX_CHARS){throw new UsageError(`title \u304C\u9577\u3059\u304E\u307E\u3059\uFF08${charCount(title.trim())} \u6587\u5B57\u30FB\u4E0A\u9650 ${TITLE_MAX_CHARS} \u6587\u5B57\uFF09`,CONTENT_HELP)}}if("content"in parsed&&!isRecord(parsed["content"])){throw new UsageError(`content \u306F\u300C\u9805\u76EE\u540D \u2192 \u5024\u300D\u306E\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08${source}\uFF09`,
|
|
23
|
-
CONTENT_HELP)}return parsed}async function readContent(input,usage){const body=await readBody(input,{flag:"--content",fileFlag:CONTENT_FILE_FLAG.name,label:"\u30EC\u30DD\u30FC\u30C8\u306E\u5185\u5BB9",maxChars:CONTENT_MAX_CHARS,usage});return body===void 0?void 0:parseContent(body,`${CONTENT_FILE_FLAG.name} ${input.flags.get(CONTENT_FILE_FLAG.name)??""}`,usage)}function checkAgainstFormat(content,format,usage,mode,existing=[]){const names=namedColumns(format).map(column=>column.name);const unknown=Object.
|
|
24
|
-
keys(content.content??{}).filter(key=>!names.includes(key)&&!existing.includes(key));if(unknown.length>0){throw new UsageError(`\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u300C${String(format["name"])}\u300D\u306B\u7121\u3044\u9805\u76EE\u540D\u3067\u3059: ${unknown.join(", ")}`,names.length>0?`\u4F7F\u3048\u308B\u9805\u76EE\u540D: ${names.join(", ")}`:"\u3053\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306B\u5165\u529B\u9805\u76EE\u306F\u3042\u308A\u307E\u305B\u3093\uFF08content \u306F\u7A7A\u306B\u3057\u3066\u304F\u3060\u3055\u3044\uFF09\u3002")}
|
|
25
|
-
const dropped=mode==="create"?titleLocked(format):format["title_editable"]===false;if(content.title!==void 0&&dropped){throw new UsageError(`\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u300C${String(format["name"])}\u300D\u306F\u30BF\u30A4\u30C8\u30EB\u3092\u5909\u3048\u3089\u308C\u307E\u305B\u3093\uFF08\u30B5\u30FC\u30D0\u304C title \u3092\u6368\u3066\u307E\u3059\uFF09`,`--content-file \u304B\u3089 title \u3092\u5916\u3057\u3066\u304F\u3060\u3055\u3044\u3002${usage}`)}}function truthy(value){return!(value===
|
|
26
|
-
void 0||value===null||value===""||value===0||value===false||Number.isNaN(value))}function taskReference(value){if(typeof value==="string"){if(value==="")return{projectId:false,taskId:false};try{return taskReference(JSON.parse(value))}catch{return{projectId:false,taskId:false}}}const record=isRecord(value)?value:{};const has=key=>typeof record[key]==="string"&&record[key].trim()!=="";return{projectId:has("project_id"),taskId:has("task_id")}}function reportContent(report){const value=report["conte\
|
|
27
|
-
nt"];if(typeof value==="string"){try{const parsed=JSON.parse(value);if(isRecord(parsed))return parsed}catch{}return{}}return isRecord(value)?value:{}}function missingForSubmit(report,format){const missing=[];if(typeof report["title"]!=="string"||report["title"].trim()==="")missing.push("\u30BF\u30A4\u30C8\u30EB\uFF08title\uFF09");const content=reportContent(report);for(const column of formColumns(format)){const value=content[column.name];const label=column.name===""?column.displayName||"\u540D\u524D\u306E\u7121\u3044\u9805\u76EE":
|
|
28
|
-
`${column.displayName!==""?column.displayName:column.name}\uFF08${column.name}\uFF09`;if(column.type==="task"){const ref=taskReference(value);if(ref.projectId&&!ref.taskId){missing.push(`${label} \u306E\u8EE2\u8A18\u5148\u30BF\u30B9\u30AF`);continue}if(column.required&&!(ref.projectId&&ref.taskId))missing.push(label);continue}if(column.required&&!truthy(value))missing.push(label)}return missing}var LIST_USAGE="twp report list [--format <\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8>] [--status <\u72B6\u614B>] [--keyword <\u8A9E>] [--all] [--limit <\
|
|
29
|
-
\u4EF6\u6570>] [--cursor <\u30AB\u30FC\u30BD\u30EB>]";var GET_USAGE="twp report get <\u30EC\u30DD\u30FC\u30C8ID>";var CREATE_USAGE="twp report create --format <\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8> [--content-file <\u30D1\u30B9>] [--generate-cli-skeleton]";var UPDATE_USAGE="twp report update <\u30EC\u30DD\u30FC\u30C8ID> --content-file <\u30D1\u30B9>";var SUBMIT_USAGE="twp report submit <\u30EC\u30DD\u30FC\u30C8ID>";function listQuery(input){return{format_id:input.resolved?.["formatId"],status:status(
|
|
30
|
-
input),keyword:nonEmpty(input.flags,"--keyword")?.trim(),limit:positiveInteger(input.flags,"--limit"),cursor:nonEmpty(input.flags,"--cursor")}}var listOperation={name:"list",summary:`\u81EA\u5206\u304C\u66F8\u3044\u305F${LABEL}\u3092\u4E00\u89A7\u3059\u308B\uFF08\u65B0\u3057\u3044\u9806\uFF09`,usage:LIST_USAGE,description:`\u81EA\u5206\u304C\u4F5C\u6210\u3057\u305F\u30EC\u30DD\u30FC\u30C8\u3060\u3051\u3092\u51FA\u3057\u307E\u3059\uFF08\u78BA\u8A8D\u8005\u3068\u3057\u3066\u898B\u3089\u308C\u308B\u4ED6\u4EBA\u306E\u30EC\u30DD\u30FC\u30C8\u306F twp api /api/v2/reports/reviewer\uFF09\u3002
|
|
31
|
-
--format \u306F\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u540D\u524D\u30FB\u30B3\u30FC\u30C9\u30FBID\u3001--status \u306F\u72B6\u614B\u3067\u7D5E\u308A\u8FBC\u307F\u307E\u3059\uFF08--status new,rejected \u306E\u3088\u3046\u306B\u8907\u6570\u53EF\uFF09\u3002
|
|
32
|
-
${STATUS_HELP}
|
|
33
|
-
\u65E5\u4ED8\u3067\u306F\u7D5E\u308A\u8FBC\u3081\u307E\u305B\u3093\uFF08\u30B5\u30FC\u30D0\u306E\u4E00\u89A7\u304C\u53D7\u3051\u306A\u3044\u305F\u3081\uFF09\u3002\u76F4\u8FD1\u306E\u3082\u306E\u306F --limit \u3067\u8DB3\u308A\u307E\u3059\u3002
|
|
34
|
-
|
|
35
|
-
--output json \u306F API \u304C\u8FD4\u3059\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u51FA\u3057\u307E\u3059\u3002\u4E00\u89A7\u306E content \u306F\u53D6\u5F97\u7D4C\u8DEF\u306B\u3088\u3063\u3066 JSON \u6587\u5B57\u5217\u306E\u3053\u3068\u304C
|
|
36
|
-
\u3042\u308B\u306E\u3067\u3001\u672C\u6587\u306F twp report get <\u30EC\u30DD\u30FC\u30C8ID> \u3067\u8AAD\u3093\u3067\u304F\u3060\u3055\u3044\u3002
|
|
37
|
-
--output table / text / tsv \u306F\u8981\u7D04\u5217\uFF08${LIST_COLUMNS.join(" / ")}\uFF09\u3067\u3059\u3002
|
|
38
|
-
|
|
39
|
-
`+LIST_PAGING_HELP,flags:[...LIST_FLAGS,{...FORMAT_FLAG,summary:"\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3067\u7D5E\u308A\u8FBC\u3080\uFF08\u540D\u524D\u30FB\u30B3\u30FC\u30C9\u30FBID\uFF09"},{name:"--status",summary:"\u72B6\u614B\u3067\u7D5E\u308A\u8FBC\u3080\uFF08new / completed / reviewed / rejected\u30FB\u30AB\u30F3\u30DE\u533A\u5207\u308A\u3067\u8907\u6570\uFF09",takesValue:true,placeholder:"<\u72B6\u614B>"},{name:"--keyword",summary:"\u30BF\u30A4\u30C8\u30EB\u30FB\u672C\u6587\u306E\u8A9E\u3067\u7D5E\u308A\u8FBC\u3080",
|
|
40
|
-
takesValue:true,placeholder:"<\u8A9E>"}],paging:listPaging,async prepare(input,ctx){noArgs(input,"list");listQuery(input);const ref=nonEmpty(input.flags,FORMAT_FLAG.name);return ref===void 0?input:withResolved(input,{formatId:await formatId(ref,ctx,false)})},plan:input=>({method:"GET",path:`${REPORTS_PATH}/writer`,query:listQuery(input)}),summarize:body=>listPaging.items(body).map(row=>pick(row,LIST_COLUMNS)),raw:body=>listPaging.items(body)};var getOperation={name:"get",summary:`${LABEL}1\u4EF6\u306E\u8A73\u7D30\u3092\u8868\
|
|
41
|
-
\u793A\u3059\u308B\uFF08\u672C\u6587\u30FB\u30B3\u30E1\u30F3\u30C8\u3092\u542B\u3080\uFF09`,usage:GET_USAGE,description:`\u81EA\u5206\u306E\u30EC\u30DD\u30FC\u30C8\u306E\u307B\u304B\u3001\u78BA\u8A8D\u8005\u30FB\u7BA1\u7406\u8005\u3068\u3057\u3066\u898B\u3089\u308C\u308B\u30EC\u30DD\u30FC\u30C8\u3082\u8AAD\u3081\u307E\u3059\u3002
|
|
42
|
-
--output json \u306F\u672C\u6587\uFF08content\uFF1D\u9805\u76EE\u540D \u2192 \u5024\uFF09\u30FB\u30B3\u30E1\u30F3\u30C8\uFF08comments\uFF09\u30FB\u6A29\u9650\uFF08roles\uFF09\u3092\u542B\u3080\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u51FA\u3057\u307E\u3059\u3002
|
|
43
|
-
--output table / text / tsv \u306F\u8981\u7D04\u5217\uFF08${GET_COLUMNS.join(" / ")}\uFF09\u3067\u3059\u3002`,flags:[],plan:input=>({method:"GET",path:itemPath(reportIdArg(input,GET_USAGE))}),summarize:body=>pick(writtenReport(body),GET_COLUMNS),raw:writtenReport};function createResult(value){if(!isRecord(value)||typeof value["skeleton"]!=="boolean"){throw new Error("\u5185\u90E8\u30A8\u30E9\u30FC: report create \u306E\u5FDC\u7B54\u306B\u5370\u304C\u3042\u308A\u307E\u305B\u3093\uFF08execute \u306E\u914D\u7DDA\u6F0F\u308C\uFF09")}
|
|
44
|
-
return value}function createPlan(input){const id=requireResolved(input,"formatId");if(input.flags.has(SKELETON_FLAG.name))return{method:"GET",path:`${REPORTS_PATH}/formats/${encodeURIComponent(id)}`};const body=JSON.parse(requireResolved(input,"body"));return{method:"POST",path:REPORTS_PATH,body:{...body,format_id:id}}}var createOperation={name:"create",summary:`${LABEL}\u3092\u4E0B\u66F8\u304D\u3067\u4F5C\u308B\uFF08\u63D0\u51FA\u306F twp report submit\uFF09`,usage:CREATE_USAGE,description:`POS\
|
|
45
|
-
T /api/v2/reports \u3067\u30EC\u30DD\u30FC\u30C8\u3092\u4E0B\u66F8\u304D\uFF08\u72B6\u614B new\uFF09\u3068\u3057\u3066\u4F5C\u308A\u307E\u3059\u3002\u78BA\u8A8D\u8005\u3078\u306F\u307E\u3060\u5C4A\u304D\u307E\u305B\u3093\u3002
|
|
46
|
-
--format \u306F\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u540D\u524D\u30FB\u30B3\u30FC\u30C9\uFF08RF-000001\uFF09\u30FBID \u3067\u3059\u3002\u540D\u524D\u3068\u30B3\u30FC\u30C9\u306F\u3001\u4F5C\u6210\u3067\u304D\u308B\uFF08\u6709\u52B9\u3067\u53D7\u4ED8\u671F\u9593\u5185\u306E\uFF09
|
|
47
|
-
\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u304B\u3089\u5B8C\u5168\u4E00\u81F4\u3067\u63A2\u3057\u307E\u3059\uFF08\u540C\u540D\u304C\u3042\u308C\u3070\u30B3\u30FC\u30C9\u304B ID \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4E00\u89A7\u306F twp report format list\uFF09\u3002
|
|
48
|
-
--content-file \u3092\u7701\u304F\u3068\u3001\u30BF\u30A4\u30C8\u30EB\u306F\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u65E2\u5B9A\uFF08\u7121\u3051\u308C\u3070\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u540D\uFF09\u30FB\u5165\u529B\u9805\u76EE\u306F\u7A7A\u306E\u4E0B\u66F8\u304D\u306B\u306A\u308A\u307E\u3059\u3002
|
|
49
|
-
|
|
50
|
-
${CONTENT_HELP}
|
|
51
|
-
|
|
52
|
-
--generate-cli-skeleton \u306F\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u5B9A\u7FA9\uFF08GET /api/v2/reports/formats/{id}\uFF09\u3092\u8AAD\u307F\u3001--content-file \u306B\u6E21\u3059
|
|
53
|
-
\u3072\u306A\u5F62\u3092\u6A19\u6E96\u51FA\u529B\u3078\u51FA\u3057\u3066\u7D42\u4E86\u3057\u307E\u3059\uFF08\u30EC\u30DD\u30FC\u30C8\u306F\u4F5C\u308A\u307E\u305B\u3093\uFF09\u3002\u5404\u9805\u76EE\u306E\u8868\u793A\u540D\u30FB\u578B\u30FB\u5FC5\u9808\u30FB\u9078\u629E\u80A2\u306F stderr \u306B\u51FA\u307E\u3059\u3002
|
|
54
|
-
\u4F8B: twp report create --format \u65E5\u5831 --generate-cli-skeleton --output json > report.json
|
|
55
|
-
|
|
56
|
-
\u4F5C\u3063\u305F\u30EC\u30DD\u30FC\u30C8\u306E ID \u306F\u51FA\u529B\u306E id \u3067\u3059\u3002\u7D9A\u3051\u3066 twp report submit <\u30EC\u30DD\u30FC\u30C8ID> \u3067\u63D0\u51FA\u3057\u307E\u3059\u3002`,flags:[FORMAT_FLAG,CONTENT_FILE_FLAG,SKELETON_FLAG],async prepare(input,ctx){noArgs(input,"create");const wantsSkeleton=input.flags.has(SKELETON_FLAG.name);if(wantsSkeleton&&input.flags.has(CONTENT_FILE_FLAG.name)){throw new UsageError("--generate-cli-skeleton \u3068 --content-file \u306F\u540C\u6642\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093",
|
|
57
|
-
CREATE_USAGE)}const content=wantsSkeleton?void 0:await readContent(input,CREATE_USAGE)??{};const ref=nonEmpty(input.flags,FORMAT_FLAG.name);if(ref===void 0)throw new UsageError("\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092 --format <\u540D\u524D|\u30B3\u30FC\u30C9|ID> \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",CREATE_USAGE);const id=await formatId(ref,ctx,true);if(content===void 0)return withResolved(input,{formatId:id});const format=await ctx.resolver.reportRecord("format",id,FORMAT_FLAG.
|
|
58
|
-
name);checkAgainstFormat(content,format,CREATE_USAGE,"create");const title=content.title??defaultTitle(format);if(title===void 0)throw new UsageError("--content-file \u306B title \u3092\u66F8\u3044\u3066\u304F\u3060\u3055\u3044",CREATE_USAGE);const body={title,content:content.content??{}};return withResolved(input,{formatId:id,body:JSON.stringify(body),titleFilled:content.title===void 0?title:""})},plan:createPlan,execute:async(input,ctx)=>({skeleton:input.flags.has(SKELETON_FLAG.name),body:await ctx.
|
|
59
|
-
send(createPlan(input))}),plannedNotes(input){if(input.flags.has(SKELETON_FLAG.name))return["\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u5B9A\u7FA9\u3092\u8AAD\u3080\u3060\u3051\u3067\u3001\u30EC\u30DD\u30FC\u30C8\u306F\u4F5C\u308A\u307E\u305B\u3093"];const filled=input.resolved?.["titleFilled"];return["\u4E0B\u66F8\u304D\u3068\u3057\u3066\u4F5C\u308A\u307E\u3059\uFF08\u63D0\u51FA\u306F twp report submit\uFF09",...filled!==void 0&&filled!==""?[`title \u304C\u7121\u3044\u306E\u3067\u300C${filled}\
|
|
60
|
-
\u300D\u3067\u4F5C\u308A\u307E\u3059`]:[]]},summarize(value){const result=createResult(value);return result.skeleton?skeleton(objectOf(result.body,"format","\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8")):pick(writtenReport(result.body),WRITE_COLUMNS)},raw(value){const result=createResult(value);return result.skeleton?skeleton(objectOf(result.body,"format","\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8")):writtenReport(result.body)},notes(value){const result=createResult(
|
|
61
|
-
value);return result.skeleton?skeletonNotes(objectOf(result.body,"format","\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8")):serverMessage(result.body)}};var WRITE_FORBIDDEN="\u3053\u306E\u30EC\u30DD\u30FC\u30C8\u304B\u305D\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u8AAD\u3080\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u6A29\u9650\uFF08\u66F8\u304F\u30FB\u78BA\u8A8D\u30FB\u7BA1\u7406\uFF09\u304C\u5916\u308C\u3066\u3044\u308B\u5834\u5408\u306F\u3001\u5165\u529B\u9805\u76EE\u3092\u7167\u5408\u3067\u304D\u306A\u3044\u305F\u3081 CLI \u304B\u3089\u306F\u66F4\u65B0\u30FB\u63D0\u51FA\u3067\u304D\u307E\u305B\u3093\u3002\u753B\u9762\u304B\u3089\u64CD\u4F5C\u3059\u308B\u304B\u3001\u7BA1\u7406\u8005\u306B\u6A29\u9650\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002";
|
|
62
|
-
function reportFormatId(report){const id=report["format_id"];if(typeof id!=="string"||id===""){throw new ApiResponseError("\u30EC\u30DD\u30FC\u30C8\u306E\u5FDC\u7B54\u306B format_id \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}return id}var updateOperation={name:"update",summary:`\u63D0\u51FA\u524D\uFF08\u4E0B\u66F8\u304D\u30FB\u5DEE\u3057\u623B\u3057\uFF09\u306E${LABEL}\u3092\u66F8\u304D\u63DB\u3048\u308B`,usage:UPDATE_USAGE,
|
|
63
|
-
description:"PUT /api/v2/reports/{id} \u3067\u30EC\u30DD\u30FC\u30C8\u3092\u66F8\u304D\u63DB\u3048\u307E\u3059\u3002\u66F8\u304D\u63DB\u3048\u3089\u308C\u308B\u306E\u306F\u81EA\u5206\u306E\u30EC\u30DD\u30FC\u30C8\u306E\u3046\u3061\u3001\n\u4E0B\u66F8\u304D\uFF08new\uFF09\u3068\u5DEE\u3057\u623B\u3055\u308C\u305F\u3082\u306E\uFF08rejected\uFF09\u3067\u3059\u3002\n\u30D5\u30A1\u30A4\u30EB\u306B\u66F8\u3044\u305F\u30AD\u30FC\u3060\u3051\u3092\u9001\u308A\u307E\u3059\uFF08title \u3092\u66F8\u304B\u306A\u3051\u308C\u3070\u30BF\u30A4\u30C8\u30EB\u306F\u5909\u308F\u308A\u307E\u305B\u3093\uFF09\u3002\n\u26A0\uFE0F content \u306F\u4E38\u3054\u3068\u7F6E\u304D\u63DB\u308F\u308A\u307E\u3059\uFF08\u9805\u76EE\u3054\u3068\u306E\u30DE\u30FC\u30B8\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u753B\u9762\u3082\u5168\u9805\u76EE\u3092\u9001\u308A\u307E\u3059\uFF09\u3002\u4ECA\u306E\u5024\u306F\n twp report get <\u30EC\u30DD\u30FC\u30C8ID> --output json \u306E content \u3067\u53D6\u308C\u307E\u3059\u3002\n\n"+
|
|
64
|
-
CONTENT_HELP,flags:[CONTENT_FILE_FLAG],forbidden:WRITE_FORBIDDEN,async prepare(input,ctx){const id=reportIdArg(input,UPDATE_USAGE);const content=await readContent(input,UPDATE_USAGE);if(content===void 0||Object.keys(content).length===0){throw new UsageError("\u66F8\u304D\u63DB\u3048\u308B\u5185\u5BB9\u3092 --content-file <\u30D1\u30B9> \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u7A7A\u306E\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u306F\u4F55\u3082\u5909\u308F\u308A\u307E\u305B\u3093\uFF09",
|
|
65
|
-
UPDATE_USAGE)}const report=await ctx.resolver.reportRecord("report",id,"<\u30EC\u30DD\u30FC\u30C8ID>");const format=await ctx.resolver.reportRecord("format",reportFormatId(report),"\u30EC\u30DD\u30FC\u30C8\u306E format_id");checkAgainstFormat(content,format,UPDATE_USAGE,"update",Object.keys(reportContent(report)));return withResolved(input,{body:JSON.stringify(content)})},plan:input=>({method:"PUT",path:itemPath(reportIdArg(input,UPDATE_USAGE)),body:JSON.parse(requireResolved(input,"body"))}),plannedNotes:input=>"\
|
|
66
|
-
content"in JSON.parse(requireResolved(input,"body"))?["content \u306F\u4E38\u3054\u3068\u7F6E\u304D\u63DB\u308F\u308A\u307E\u3059\uFF08\u30D5\u30A1\u30A4\u30EB\u306B\u66F8\u304B\u306A\u304B\u3063\u305F\u9805\u76EE\u306F\u7A7A\u306B\u306A\u308A\u307E\u3059\uFF09"]:[],summarize:body=>pick(writtenReport(body),WRITE_COLUMNS),raw:writtenReport,notes:serverMessage};var submitOperation={name:"submit",summary:`\u4E0B\u66F8\u304D\uFF08\u307E\u305F\u306F\u5DEE\u3057\u623B\u3055\u308C\u305F${LABEL}\uFF09\u3092\u63D0\u51FA\u3059\u308B`,
|
|
67
|
-
usage:SUBMIT_USAGE,description:"POST /api/v2/reports/{id}/complete \u3067\u30EC\u30DD\u30FC\u30C8\u3092\u63D0\u51FA\u3057\u307E\u3059\uFF08\u72B6\u614B completed\uFF09\u3002\u78BA\u8A8D\u8005\u306B\u5C4A\u304D\u307E\u3059\u3002\n\u63D0\u51FA\u3067\u304D\u308B\u306E\u306F\u4E0B\u66F8\u304D\uFF08new\uFF09\u3068\u5DEE\u3057\u623B\u3055\u308C\u305F\u3082\u306E\uFF08rejected\uFF09\u3067\u3059\u3002\u5185\u5BB9\u306F\u4ECA\u306E\u30EC\u30DD\u30FC\u30C8\u306E\u307E\u307E\u9001\u308A\u307E\u3059\n\uFF08\u5909\u3048\u308B\u306A\u3089\u5148\u306B twp report update\uFF09\u3002\n\u9001\u308B\u524D\u306B\u30EC\u30DD\u30FC\u30C8\u3068\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u8AAD\u307F\u3001\u753B\u9762\u3068\u540C\u3058\u6761\u4EF6\uFF08\u30BF\u30A4\u30C8\u30EB\u304C\u7A7A\u3067\u306A\u3044\u30FB\u5FC5\u9808\u306E\u9805\u76EE\u304C\u57CB\u307E\u3063\u3066\u3044\u308B\uFF09\u3092\n\u78BA\u304B\u3081\u307E\u3059\u3002\u30B5\u30FC\u30D0\u306F\u63D0\u51FA\u6642\u306B\u5FC5\u9808\u9805\u76EE\u3092\u691C\u67FB\u3057\u306A\u3044\u305F\u3081\u3001\u3053\u3053\u3067\u6B62\u3081\u306A\u3044\u3068\u7A7A\u306E\u65E5\u5831\u304C\u5C4A\u304D\u307E\u3059\u3002",
|
|
68
|
-
flags:[],forbidden:WRITE_FORBIDDEN,async prepare(input,ctx){const id=reportIdArg(input,SUBMIT_USAGE);const report=await ctx.resolver.reportRecord("report",id,"<\u30EC\u30DD\u30FC\u30C8ID>");const format=await ctx.resolver.reportRecord("format",reportFormatId(report),"\u30EC\u30DD\u30FC\u30C8\u306E format_id");const missing=missingForSubmit(report,format);if(missing.length>0){throw new UsageError(`\u63D0\u51FA\u306B\u5FC5\u8981\u306A\u9805\u76EE\u304C\u7A7A\u3067\u3059: ${missing.join(" / ")}`,`t\
|
|
69
|
-
wp report update ${id} --content-file <\u30D1\u30B9> \u3067\u57CB\u3081\u3066\u304B\u3089\u63D0\u51FA\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return report["is_owner"]===false?withResolved(input,{otherOwner:String(report["created_by_name"]??report["created_by"]??"")}):input},plan:input=>({method:"POST",path:itemPath(reportIdArg(input,SUBMIT_USAGE),"/complete"),body:{}}),plannedNotes:input=>["\u63D0\u51FA\u3059\u308B\u3068\u78BA\u8A8D\u8005\u306B\u5C4A\u304D\u307E\u3059\uFF08\u53D6\u308A\u4E0B\u3052\u306F\u753B\u9762\u304B\u3089\uFF09",
|
|
70
|
-
...input.resolved?.["otherOwner"]!==void 0?[`\u26A0\uFE0F \u81EA\u5206\u306E\u30EC\u30DD\u30FC\u30C8\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF08\u4F5C\u6210\u8005: ${input.resolved["otherOwner"]||"\u4E0D\u660E"}\uFF09\u3002\u672C\u4EBA\u306B\u4EE3\u308F\u3063\u3066\u63D0\u51FA\u3057\u307E\u3059`]:[]],summarize:body=>pick(writtenReport(body),WRITE_COLUMNS),raw:writtenReport,notes:serverMessage};var formatResource={name:"format",summary:"\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\uFF08\u65E5\u5831\u306E\u3072\u306A\u5F62\uFF09",
|
|
71
|
-
operations:[{name:"list",summary:"\u4F7F\u3048\u308B\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u4E00\u89A7\u3059\u308B\uFF08--format \u306B\u6E21\u3059\u540D\u524D\u30FB\u30B3\u30FC\u30C9\u30FBID\uFF09",usage:"twp report format list [--include-unavailable]",description:"\u65E2\u5B9A\u306F\u6709\u52B9\u3067\u53D7\u4ED8\u671F\u9593\u5185\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\uFF08\uFF1D\u4ECA\u30EC\u30DD\u30FC\u30C8\u3092\u4F5C\u308C\u308B\u3082\u306E\uFF09\u3060\u3051\u3067\u3059\u3002--include-unavailable \u3067\n\u7121\u52B9\u30FB\u671F\u9593\u5916\u3082\u51FA\u3057\u307E\u3059\uFF08\u904E\u53BB\u306E\u30EC\u30DD\u30FC\u30C8\u3092 --format \u3067\u7D5E\u308B\u3068\u304D\uFF09\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u4EE5\u5916\u306F\u3001\u66F8\u304F\u30FB\u78BA\u8A8D\u3059\u308B\u30FB\n\u7BA1\u7406\u3059\u308B\u306E\u3044\u305A\u308C\u304B\u306E\u6A29\u9650\u304C\u3042\u308B\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3060\u3051\u304C\u51FA\u307E\u3059\uFF08writer / reviewer / admin \u5217\uFF09\u3002\n\u3053\u306E API \u306F\u30DA\u30FC\u30B8\u30F3\u30B0\u3092\u6301\u305F\u305A\u5168\u4EF6\u3092\u8FD4\u3057\u307E\u3059\u3002\u5165\u529B\u9805\u76EE\
|
|
72
|
-
\u306F twp report create --format <\u2026> --generate-cli-skeleton \u3067\u3002",flags:[{name:"--include-unavailable",summary:"\u7121\u52B9\u30FB\u53D7\u4ED8\u671F\u9593\u5916\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3082\u51FA\u3059",takesValue:false}],plan(input){noArgs(input,"format list");return{method:"GET",path:`${REPORTS_PATH}/formats`,query:input.flags.has("--include-unavailable")?void 0:{include_unavailable:"false"}}},summarize:body=>formatRows(body).map(formatSummary),raw:formatRows,
|
|
73
|
-
notes:body=>[`\u30EC\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8: ${String(formatRows(body).length)} \u4EF6`]}]};var reportDomain={name:"report",summary:"\u30EC\u30DD\u30FC\u30C8\uFF08\u65E5\u5831\uFF09\u306E\u4E00\u89A7\u30FB\u8A73\u7D30\u30FB\u4F5C\u6210\u30FB\u66F4\u65B0\u30FB\u63D0\u51FA\u3068\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u4E00\u89A7",operations:[listOperation,getOperation,createOperation,updateOperation,submitOperation],subresources:[formatResource]};export{defaultTitle,missingForSubmit,reportDomain};
|