@tocca-systems/twp-cli 0.45.0 → 0.46.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 +6 -0
- package/README.md +20 -2
- package/dist/{api-command-6C3MFXVU.js → api-command-67456PBS.js} +2 -2
- package/dist/{app-6DA35MYO.js → app-7227DY7N.js} +3 -3
- package/dist/{backlog-Q7VYDMDL.js → backlog-XZB35X7I.js} +1 -1
- package/dist/chunk-3AD2T6L2.js +64 -0
- package/dist/{chunk-D5FEOBB6.js → chunk-3WHD2YVF.js} +11 -10
- package/dist/{chunk-DS5TH5YQ.js → chunk-AKPVALTZ.js} +1 -1
- package/dist/{chunk-IOCNJMVW.js → chunk-AUAZP2G7.js} +5 -5
- package/dist/chunk-B4APKONL.js +9 -0
- package/dist/{chunk-QV6DH37Q.js → chunk-EZMXGIGX.js} +1 -1
- package/dist/{chunk-EWTFE233.js → chunk-HS7EKE7M.js} +1 -1
- package/dist/{chunk-JLNY7HRM.js → chunk-JYNZEZYL.js} +1 -1
- package/dist/{chunk-NAAMNYX3.js → chunk-L7IGGC7H.js} +1 -1
- package/dist/{chunk-DVKPGJMS.js → chunk-LKS7GANP.js} +1 -1
- package/dist/{chunk-Y4SREWAG.js → chunk-MXKAEPXA.js} +1 -1
- package/dist/{chunk-7GSTR64T.js → chunk-OLBRIPOS.js} +1 -1
- package/dist/{chunk-O3UQPM6L.js → chunk-OVBKORPC.js} +1 -1
- package/dist/{chunk-YPMT453N.js → chunk-QVZGNHRE.js} +1 -1
- package/dist/{chunk-EM3SDCCU.js → chunk-RMAW7KOR.js} +15 -14
- package/dist/{chunk-JNPCHV7S.js → chunk-SBWCQAHT.js} +1 -1
- package/dist/{chunk-XXVYGQ72.js → chunk-V24LKF3V.js} +1 -1
- package/dist/{chunk-XTREYDO5.js → chunk-VMULCEHY.js} +1 -1
- package/dist/{chunk-XUNFV6ZQ.js → chunk-ZE75ZDLD.js} +1 -1
- package/dist/cli.js +21 -7
- package/dist/{commands-JUD4ZNWT.js → commands-SWR442MR.js} +1 -1
- package/dist/{company-UTEAM246.js → company-FEXAHUPT.js} +2 -2
- package/dist/{contract-GUY73GRP.js → contract-4RALZBO5.js} +1 -1
- package/dist/{department-QMTJYMN2.js → department-VEXXWBZ4.js} +1 -1
- package/dist/{deposit-FOATHWXV.js → deposit-2AAST2DE.js} +1 -1
- package/dist/{estimate-6UWI7SKV.js → estimate-JQURFOCH.js} +2 -2
- package/dist/{inquiry-3VBBJT2K.js → inquiry-YTYZYUTY.js} +1 -1
- package/dist/{invoice-FOZJR42A.js → invoice-PHYBVU6Q.js} +2 -2
- package/dist/{job-title-IIRFPZNV.js → job-title-ORNY7A7L.js} +1 -1
- package/dist/{knowledge-6SXUV46K.js → knowledge-FQ32UNDW.js} +1 -1
- package/dist/{leave-LQAXN6F4.js → leave-5V6EPGA3.js} +1 -1
- package/dist/{media-VK6AUGZY.js → media-BU23L547.js} +1 -1
- package/dist/{notification-NTU3JCR2.js → notification-XARS6JH2.js} +1 -1
- package/dist/onedrive-N4T6D2OW.js +47 -0
- package/dist/{oneshot-67EDIE2F.js → oneshot-7BFL2VON.js} +1 -1
- package/dist/outlook-LY6WBXIJ.js +94 -0
- package/dist/{position-WGLV3JZ6.js → position-NNJZAT3A.js} +1 -1
- package/dist/{project-REBUFMPX.js → project-FDY6LETQ.js} +1 -1
- package/dist/{prospect-DJAJNTRQ.js → prospect-CUWP3E5S.js} +1 -1
- package/dist/{purchase-7RVUWXMS.js → purchase-2CZTB5H7.js} +2 -2
- package/dist/{receivable-SHRWUYJW.js → receivable-KV5PPNLA.js} +1 -1
- package/dist/{registry-CP4LGNGZ.js → registry-NZ2HNT52.js} +1 -1
- package/dist/{render-4L5BDU3B.js → render-R5QZ46GF.js} +1 -1
- package/dist/{report-SUTO7E7Z.js → report-PCQPTRUV.js} +1 -1
- package/dist/{run-NVS532DL.js → run-7BS34D2P.js} +1 -1
- package/dist/{sales-ai-review-LC4XDQLS.js → sales-ai-review-SVZHVH5P.js} +1 -1
- package/dist/{sales-master-C4EYXIKP.js → sales-master-VD6JE2P3.js} +1 -1
- package/dist/{sales-numbering-YK447QBC.js → sales-numbering-P7W6N3OM.js} +1 -1
- package/dist/{supplier-payment-MLLTGVCO.js → supplier-payment-2KPCVEPH.js} +1 -1
- package/dist/{task-7SKWCZWV.js → task-MFWWP5Q7.js} +2 -2
- package/dist/teams-DRHXPLWN.js +93 -0
- package/dist/{user-FPXO3IHG.js → user-QG3KMK3T.js} +2 -2
- package/dist/{workflow-FU2EBVBW.js → workflow-CSYU4J4U.js} +1 -1
- package/package.json +1 -1
- package/dist/chunk-C2MQANJO.js +0 -9
- package/dist/onedrive-XAFONTRT.js +0 -16
- package/dist/outlook-PQ4OCB5Z.js +0 -98
- package/dist/teams-RDBKQJMM.js +0 -50
package/CHANGELOG.public.md
CHANGED
|
@@ -11,6 +11,12 @@
|
|
|
11
11
|
`CHANGELOG.md` に残してあります。顧客向けの履歴は public 公開以降を対象とします。
|
|
12
12
|
-->
|
|
13
13
|
|
|
14
|
+
## 0.46.0
|
|
15
|
+
|
|
16
|
+
Teams のチャットへのメッセージ送信・チャネルへの投稿・スレッドへの返信を `twp teams message send` / `twp teams reply send` で行えるようになりました。投稿はメンバーへ通知が届くため `--yes` の指定が必要で、`--dry-run` で送信先と本文を事前に確認できます。`--mention` でメンションも付けられます。
|
|
17
|
+
|
|
18
|
+
Outlook の予定を `twp outlook event create` / `update` / `delete` で作成・更新・削除できるようになりました。出席者がいる予定では通知が相手に届くため `--yes` の指定が必要で、`--dry-run` で内容と通知が届く相手を事前に確認できます。また、`twp onedrive item upload` で OneDrive へファイルをアップロードし(250MB まで・同名は上書きしません)、`twp onedrive link create` で組織内または匿名の共有リンクを作れるようになりました。
|
|
19
|
+
|
|
14
20
|
## 0.45.0
|
|
15
21
|
|
|
16
22
|
予実管理を `twp budget` で扱えるようになりました。年度の予実ダッシュボード・サマリー・部署ごとの内訳・CSV 出力に加え、目標の一覧・まとめての登録・前年度からのコピー・CSV での取り込み(雛形の書き出しを含む)と、プロジェクトの部署按分の参照と設定ができます。既存の目標や按分を上書きする操作は、実行前に今の値を表示し、`--yes` の指定が必要です。
|
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ TWP(Tocca Working Platform)を、ターミナルから使うための CLI
|
|
|
33
33
|
| **できる** | `twp workflow` による、自分が申請できる申請書・申請書の定義(管理者)・自分の申請・承認履歴・自分の承認待ちの参照(申請書は名前でも指定できます)と、申請の起票・提出・更新・削除、承認・却下・差し戻し・取下げ |
|
|
34
34
|
| **できる** | `twp report` による自分のレポート(日報)の一覧(フォーマット・状態・語で絞り込み)・詳細と、下書きの作成(フォーマットの入力項目から雛形を出せます)・更新・提出、使えるレポートフォーマットの一覧 |
|
|
35
35
|
| **できる** | `twp wiki` / `twp note` / `twp meeting` による、wiki ページ(親ページ直下の子の一覧を含む)・ノート・議事録(開催日の期間で絞り込み)の一覧と、本文を `--output text` で文書として読むこと |
|
|
36
|
-
| **できる** | `twp outlook` / `twp teams` / `twp onedrive` による Microsoft 365 の読み取り(メール・添付・予定、Teams のチーム・チャネル・チャット・メッセージ・スレッド返信・自分宛てメンション、OneDrive のファイルの一覧・情報・ダウンロード)。TWP に Microsoft アカウントでログインしたことがあるユーザーが対象です。書き込みはメールの送信・返信・全員返信・転送(`twp outlook mail send` / `reply` / `reply-all` / `forward
|
|
36
|
+
| **できる** | `twp outlook` / `twp teams` / `twp onedrive` による Microsoft 365 の読み取り(メール・添付・予定、Teams のチーム・チャネル・チャット・メッセージ・スレッド返信・自分宛てメンション、OneDrive のファイルの一覧・情報・ダウンロード)。TWP に Microsoft アカウントでログインしたことがあるユーザーが対象です。書き込みはメールの送信・返信・全員返信・転送(`twp outlook mail send` / `reply` / `reply-all` / `forward`)、Teams のチャット送信・チャネル投稿・スレッド返信(`twp teams message send` / `reply send`)、予定の作成・更新・削除(`twp outlook event create` / `update` / `delete`)、共有リンクの作成(`twp onedrive link create`)ができ(いずれも `--yes` が必要)、OneDrive へのアップロード(`twp onedrive item upload`)もできます |
|
|
37
37
|
| **できる** | `twp task-loop` による、TWP のタスクキューを手元の AI CLI に実行させる常駐ループ |
|
|
38
38
|
| **できる** | `twp agent-loop` による、エージェントループのキューの一覧・投入・更新・先頭への移動・削除と、期間を指定した実行履歴の参照。更新・移動・削除はテナントの管理者の権限が要ります |
|
|
39
39
|
| **できる** | `twp completion bash` / `zsh` / `fish` / `powershell` によるシェル補完(コマンド名・操作名・フラグ名。プロジェクトやステータスの値は補完しません)と、`twp configure` による既定のプロジェクト・出力形式・既定プロファイルの対話設定 |
|
|
@@ -941,7 +941,7 @@ twp backlog issue update <課題キー> [--assignee <名前|ID>] [--status <
|
|
|
941
941
|
|
|
942
942
|
### Microsoft 365(Outlook・Teams・OneDrive)を読む
|
|
943
943
|
|
|
944
|
-
TWP に Microsoft アカウントでログインしたことがあるユーザーは、自分のメール・予定・Teams・OneDrive
|
|
944
|
+
TWP に Microsoft アカウントでログインしたことがあるユーザーは、自分のメール・予定・Teams・OneDrive を読めます。メールの送信・返信・転送、Teams のチャット送信・チャネル投稿・スレッド返信、予定の作成・更新・削除、OneDrive へのアップロードと共有リンクの作成もできます。
|
|
945
945
|
|
|
946
946
|
```
|
|
947
947
|
twp outlook mail list [--folder <名前|ID>] [--unread] [--search <語>] [--filter <OData>] [--orderby <OData>]
|
|
@@ -957,6 +957,11 @@ twp outlook attachment download <メールID> <添付ID> --out <パス>
|
|
|
957
957
|
twp outlook event list [--from <yyyy-MM-dd>] [--to <yyyy-MM-dd>] [--filter <OData>] [--orderby <OData>]
|
|
958
958
|
[--select <項目>] [--limit <件数>] [--all]
|
|
959
959
|
twp outlook event get <予定ID>
|
|
960
|
+
twp outlook event create --subject <件名> --start <yyyy-MM-ddTHH:mm> --end <yyyy-MM-ddTHH:mm> [--time-zone <IANA名>]
|
|
961
|
+
[--all-day] [--body-file <パス> | --body <文字列>] [--html] [--location <場所>]
|
|
962
|
+
[--attendee <アドレス> …] [--optional-attendee <アドレス> …] [--online-meeting] --yes
|
|
963
|
+
twp outlook event update <予定ID> [上と同じ項目のうち変えるもの] [--clear-attendees] --yes
|
|
964
|
+
twp outlook event delete <予定ID> --yes
|
|
960
965
|
|
|
961
966
|
twp teams team list # --team に渡す id / 名前
|
|
962
967
|
twp teams member list --team <名前|ID>
|
|
@@ -964,13 +969,19 @@ twp teams channel list --team <名前|ID> # --channel に渡す id
|
|
|
964
969
|
twp teams channel folder --team <名前|ID> --channel <名前|ID> # チャネルのファイルの driveId
|
|
965
970
|
twp teams chat list [--limit <件数>] [--all] # --chat に渡す id
|
|
966
971
|
twp teams message list (--chat <ID> | --team <名前|ID> --channel <名前|ID>) [--limit <件数>] [--all]
|
|
972
|
+
twp teams message send (--chat <ID> | --team <名前|ID> --channel <名前|ID>) (--body-file <パス> | --body <文字列>)
|
|
973
|
+
[--html] [--mention <ユーザーID>=<表示名> …] --yes
|
|
967
974
|
twp teams reply list <投稿ID> --team <名前|ID> --channel <名前|ID>
|
|
975
|
+
twp teams reply send <投稿ID> --team <名前|ID> --channel <名前|ID> (--body-file <パス> | --body <文字列>)
|
|
976
|
+
[--html] [--mention <ユーザーID>=<表示名> …] --yes
|
|
968
977
|
twp teams mention list [--since <日時>] [--until <日時>] [--unread] [--scope chats|channels|all] [--limit <件数>]
|
|
969
978
|
[--type user,tag,conversation]
|
|
970
979
|
|
|
971
980
|
twp onedrive item list [<フォルダID>] [--drive <ID>] [--limit <件数>] [--all]
|
|
972
981
|
twp onedrive item get <項目ID> [--drive <ID>]
|
|
973
982
|
twp onedrive item download <項目ID> --out <パス> [--drive <ID>]
|
|
983
|
+
twp onedrive item upload <ローカルのパス> [--folder <フォルダID>] [--name <名前>] [--drive <ID>]
|
|
984
|
+
twp onedrive link create <項目ID> --scope organization|anonymous [--type view|edit] [--drive <ID>] --yes
|
|
974
985
|
```
|
|
975
986
|
|
|
976
987
|
- **Microsoft 365 と連携していないと、連携の手順を表示して終了コード 3 で止まります。** TWP の画面で「Microsoftアカウントでログイン」から一度ログインすると連携されます(`twp login` のやり直しは要りません)
|
|
@@ -985,6 +996,13 @@ twp onedrive item download <項目ID> --out <パス> [--drive <ID>]
|
|
|
985
996
|
- 本文は既定でテキストとして送ります。返信・転送の本文は Microsoft 365 が HTML として読むので、改行と記号が見たとおりに届くよう HTML に直して送ります。`--html` を付けると HTML のまま送ります
|
|
986
997
|
- 添付(`--attach`)は合計 3MB までです(Microsoft 365 がメールに直接載せられる上限)
|
|
987
998
|
- 送信に失敗して終了コード 4 になっても、送信済みのことがあります。打ち直す前に `twp outlook mail list --folder sentitems` で確かめてください
|
|
999
|
+
- ⚠ **Teams のチャット送信・チャネル投稿・スレッド返信は、実行した瞬間にメンバーへ通知が届きます。** `--yes` が無ければ実行しません。`--dry-run` で送信先(チーム・チャネルの表示名と ID、チャットの ID)と本文を確かめてから `--yes` を付けてください。チーム・チャネルは ID で指定しても参加中の一覧で引き直し、一意に決まらなければ送りません
|
|
1000
|
+
- Teams の本文は既定でテキストとして扱い、改行と記号が見たとおりに表示されるよう HTML に直して送ります(`--html` で HTML のまま)。メンションは `--mention <ユーザーID>=<表示名>` で、本文中の最初の `@<表示名>` がメンションになります(無ければ送りません。ユーザーID は `twp teams member list` の `userId`)
|
|
1001
|
+
- 投稿に失敗して終了コード 4 になっても、投稿済みのことがあります。打ち直す前に `twp teams message list` / `reply list` で確かめてください
|
|
1002
|
+
- ⚠ **予定の作成・更新・削除は、出席者がいれば招待・更新・キャンセルの通知が相手へ届き取り消せません。** 3つとも `--yes` が無ければ実行しません。更新・削除は送る前に予定を読み、通知が届く相手(いまの出席者)を表示します。`--attendee` を付けない予定は自分の予定表だけに入ります
|
|
1003
|
+
- 予定の日時は `--start` / `--end` に `yyyy-MM-ddTHH:mm` で、タイムゾーンを付けずに指定します(タイムゾーンは `--time-zone`・既定 Asia/Tokyo)。`--all-day` の終日予定は日付で指定し、`--end` は Microsoft 365 と同じく**最終日の翌日**です(10/5〜10/6 の2日間なら `--start 2026-10-05 --end 2026-10-07`。作成で省くと1日の予定)。作成・更新で終了コード 4 になっても反映済みのことがあるので、打ち直す前に `twp outlook event list` で確かめてください。更新の `--attendee` は出席者を**置き換えます**(足すのではありません)
|
|
1004
|
+
- `twp onedrive item upload` は 250MB までのファイルを 10MB ずつに分けて送ります。**同じ名前のファイルがあっても上書きせず**、Microsoft 365 が名前を変えて保存します(付いた名前は結果の `name` に出ます)。ファイルは CLI が直接読み、シェルを通しません
|
|
1005
|
+
- `twp onedrive link create` は `--scope`(`organization`=組織内/`anonymous`=リンクを知る誰でも)を必ず指定し、`--yes` が必要です。**作ったリンクはこの CLI からは消せません**(OneDrive の「アクセス許可の管理」から外します)。OneDrive のファイルの削除もこの CLI からはできません
|
|
988
1006
|
- `twp teams message list` のチャネルで返るのはスレッドの最初の投稿だけです。返信は `twp teams reply list <投稿ID>` で読みます
|
|
989
1007
|
- `twp onedrive` の `--drive` を省くと自分の OneDrive が対象です(そのことを表示します)。Teams のチャネルのファイルは `twp teams channel folder` の `driveId` を `--drive` に渡します
|
|
990
1008
|
- ダウンロードは **`--out` のパスへ実体をそのまま書き出し**、既存ファイルは `--force` を付けたときだけ上書きします。添付・ファイルの名前から書き出し先を組み立てることはしません
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{CommandModelMissingError,MAX_REPORTED_VIOLATIONS,loadCommandModelDomain,loadCommandModelRoutes,validateBody,validateQuery}from"./chunk-NZ7WI4RZ.js";import{NO_REDACT_FLAG,NO_REDACT_NOTICE,exitCodeFor,fetchAllPages,reportError}from"./chunk-
|
|
4
|
-
import{readBody}from"./chunk-ORUDW52G.js";import"./chunk-
|
|
3
|
+
import{CommandModelMissingError,MAX_REPORTED_VIOLATIONS,loadCommandModelDomain,loadCommandModelRoutes,validateBody,validateQuery}from"./chunk-NZ7WI4RZ.js";import{NO_REDACT_FLAG,NO_REDACT_NOTICE,exitCodeFor,fetchAllPages,reportError}from"./chunk-RMAW7KOR.js";import"./chunk-B4APKONL.js";import{evaluateQuery}from"./chunk-ATYA6DG5.js";import{renderOutput}from"./chunk-MXKAEPXA.js";import{redactSecretValues,redactSecrets,withDebug}from"./chunk-AUAZP2G7.js";import"./chunk-Q3B65OFC.js";
|
|
4
|
+
import{readBody}from"./chunk-ORUDW52G.js";import"./chunk-3WHD2YVF.js";import"./chunk-GMBJTG6A.js";import"./chunk-3HH5IYNO.js";import{parseOperationArgs,repeatedValues}from"./chunk-F7K37QG6.js";import{ApiError,TwpApiClient,appendQuery}from"./chunk-IF2K4PM5.js";import{GLOBAL_OPTIONS_HELP}from"./chunk-YLM54X35.js";import{AuthSession,NotLoggedInError,SessionExpiredError,loadCredentials}from"./chunk-XNLIEUAW.js";import{effectiveApiUrl,resolveConfiguredOutput,
|
|
5
5
|
resolveProfile}from"./chunk-4VZKNEVN.js";import{HELP_TOKEN}from"./chunk-Y5EN7RYN.js";import"./chunk-QQRJLH6B.js";import{OUTPUT_FORMATS,resolveOutputFormat}from"./chunk-K2ONOH3L.js";import"./chunk-WVS4W5FY.js";import"./chunk-II5RVJQN.js";import{DEFAULT_MAX_ITEMS,DEFAULT_MAX_PAGES,envelopePaging,isPageNumberEnvelope,pageRangeNotes,positiveInteger,readEnvelopeCursor,readPageNumberCursor,shellQuote}from"./chunk-IOGMOXYF.js";import"./chunk-VTQAI52S.js";
|
|
6
6
|
import{ApiRejectedError,ApiResponseError,EXIT_OK,EXIT_WAIT_TIMEOUT,NetworkError,UsageError}from"./chunk-UFND7FBC.js";import{httpFetch}from"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var MIN_SEGMENT_CHARS=3;var parsedCache=new WeakMap;function splitSegments(path){return path.split("/").filter(segment=>segment!=="")}function parseRoutes(routes){const cached=parsedCache.get(routes);if(cached!==void 0)return cached;const parsed=[];for(const[key,domain]of Object.entries(routes.routes)){const space=key.indexOf(" ");if(space<=0)continue;const template=key.slice(space+1);parsed.push({method:key.slice(0,space),template,domain,segments:splitSegments(template).map(segment=>/^\{[^/{}]+\}$/.
|
|
7
7
|
test(segment)?null:segment)})}parsedCache.set(routes,parsed);return parsed}function matches(route,segments){if(route.segments.length!==segments.length)return false;return route.segments.every((literal,i)=>literal===null||literal===segments[i])}function compareSpecificity(a,b){const literals=route=>route.segments.filter(segment=>segment!==null).length;const diff=literals(b)-literals(a);if(diff!==0)return diff;for(let i=0;i<a.segments.length;i+=1){const aLiteral=a.segments[i]!==null;const bLiteral=b.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{RESIDENT_TOKEN_CAP,activateModeFiles,activatePermissionSettings,buildResidentSet,buildSystemPrompt,createAuditLogger,createTwpToolkit,currentBranch,describeAuditLog,describeToolCatalog,displayCwd,executeTool,findProjectTwpSubdir,localTools,lstatOrNull,parseFrontMatter,parseRule,persistProjectAllow,projectPermissionsPath,projectRootFor,readFileTool,residentInputs,resolveGitExecutable,runTurn,secretReason}from"./chunk-
|
|
4
|
-
diffStat}from"./chunk-VRBI2NPI.js";import"./chunk-
|
|
3
|
+
import{RESIDENT_TOKEN_CAP,activateModeFiles,activatePermissionSettings,buildResidentSet,buildSystemPrompt,createAuditLogger,createTwpToolkit,currentBranch,describeAuditLog,describeToolCatalog,displayCwd,executeTool,findProjectTwpSubdir,localTools,lstatOrNull,parseFrontMatter,parseRule,persistProjectAllow,projectPermissionsPath,projectRootFor,readFileTool,residentInputs,resolveGitExecutable,runTurn,secretReason}from"./chunk-LKS7GANP.js";import"./chunk-NZ7WI4RZ.js";import{buildDiffLines,
|
|
4
|
+
diffStat}from"./chunk-VRBI2NPI.js";import"./chunk-AUAZP2G7.js";import{require_fuzzysort}from"./chunk-DIMZRTLE.js";import"./chunk-3WHD2YVF.js";import"./chunk-GMBJTG6A.js";import"./chunk-3HH5IYNO.js";import"./chunk-IF2K4PM5.js";import{RelayError,builtinCatalog,createRuntime,loadCachedCatalog,modelLabel,pickModel,toModelInfos}from"./chunk-6QOT7CHX.js";import"./chunk-D233KKXW.js";import"./chunk-XNLIEUAW.js";import{checkMinSupportedVersion,isBelowMinSupported,
|
|
5
5
|
minSupportedBlockMessage}from"./chunk-DXXFUNYN.js";import"./chunk-4VZKNEVN.js";import{parseArgv}from"./chunk-4OSCQLZT.js";import{applyPermissionMode,checkPermission,describePermissionMode,getMode,isModeId,modeSource,nextMode}from"./chunk-NAUH75MM.js";import"./chunk-Y5EN7RYN.js";import"./chunk-QQRJLH6B.js";import{isFullWidth,isWide,stringWidth,stripAnsi}from"./chunk-WVS4W5FY.js";import"./chunk-N2UVRM3Z.js";import"./chunk-II5RVJQN.js";import"./chunk-UFND7FBC.js";
|
|
6
6
|
import"./chunk-PMOUHEJQ.js";import{proxyDiagnostics}from"./chunk-J7QYPKVK.js";import{configReadDirs,twpHomeDir}from"./chunk-RZVI6PMW.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import{__commonJS,__export,__require,__toESM}from"./chunk-VSJBJXZO.js";var require_react_production=__commonJS({"node_modules/react/cjs/react.production.js"(exports){"use strict";var REACT_ELEMENT_TYPE=Symbol.for("react.transitional.element");var REACT_PORTAL_TYPE=Symbol.for("react.portal");var REACT_FRAGMENT_TYPE=Symbol.for("react.fragment");var REACT_STRICT_MODE_TYPE=Symbol.for("react.strict_mode");var REACT_PROFILER_TYPE=Symbol.for("react.profiler");var REACT_CONSUMER_TYPE=Symbol.for("react.consumer");var REACT_CONTEXT_TYPE=Symbol.for("react.context");var REACT_FORWARD_REF_TYPE=Symbol.
|
|
7
7
|
for("react.forward_ref");var REACT_SUSPENSE_TYPE=Symbol.for("react.suspense");var REACT_MEMO_TYPE=Symbol.for("react.memo");var REACT_LAZY_TYPE=Symbol.for("react.lazy");var REACT_ACTIVITY_TYPE=Symbol.for("react.activity");var REACT_VIEW_TRANSITION_TYPE=Symbol.for("react.view_transition");var MAYBE_ITERATOR_SYMBOL=Symbol.iterator;function getIteratorFn(maybeIterable){if(null===maybeIterable||"object"!==typeof maybeIterable)return null;maybeIterable=MAYBE_ITERATOR_SYMBOL&&maybeIterable[MAYBE_ITERATOR_SYMBOL]||
|
|
@@ -1212,7 +1212,7 @@ cwd()){const listed=await gitListFiles(cwd2);const raw=listed??await walkFiles(c
|
|
|
1212
1212
|
1;const after=/^[^\s]*/.exec(text.slice(cursor))?.[0]??"";return{query,start,end:cursor+after.length}}var TWP_SLASH_ROUTES={"/tasks":{domain:"task",operation:"list"},"/task":{domain:"task",operation:"get"},"/projects":{domain:"project",operation:"list"}};function isTwpSlashCommand(name){return Object.hasOwn(TWP_SLASH_ROUTES,name)}async function runTwpSlashCommand(name,args,deps){const route=TWP_SLASH_ROUTES[name];if(!Object.hasOwn(TWP_SLASH_ROUTES,name)||route===void 0){return{code:2,out:"",err:`\u4E0D\u660E\u306A\u30B3\u30DE\u30F3\u30C9: ${name}
|
|
1213
1213
|
`}}const parsed=parseArgv([route.domain,route.operation,...args]);if(parsed.command!=="domain"||parsed.domain!==route.domain){return{code:2,out:"",err:`${name}: \u3053\u306E\u5F15\u6570\u306F\u4F7F\u3048\u307E\u305B\u3093\uFF08${args.join(" ")}\uFF09
|
|
1214
1214
|
`}}if(parsed.unknown.length>0){return{code:2,out:"",err:`\u4E0D\u660E\u306A\u5F15\u6570: ${parsed.unknown.join(" ")}
|
|
1215
|
-
`}}let out="";let err="";const io={out:text=>void(out+=text),err:text=>void(err+=text),isTty:true};const globals={profile:parsed.profile??deps.profile,...parsed.output!==void 0?{output:parsed.output}:{},...parsed.query!==void 0?{query:parsed.query}:{},dryRun:parsed.dryRun,debug:parsed.debug,yes:parsed.yes,refresh:parsed.refresh};const{runDomain}=await import("./run-
|
|
1215
|
+
`}}let out="";let err="";const io={out:text=>void(out+=text),err:text=>void(err+=text),isTty:true};const globals={profile:parsed.profile??deps.profile,...parsed.output!==void 0?{output:parsed.output}:{},...parsed.query!==void 0?{query:parsed.query}:{},dryRun:parsed.dryRun,debug:parsed.debug,yes:parsed.yes,refresh:parsed.refresh};const{runDomain}=await import("./run-7BS34D2P.js");try{const code=await runDomain({domain:route.domain,...parsed.operation!==void 0?{operation:parsed.operation}:
|
|
1216
1216
|
{},argv:parsed.domainArgv,help:parsed.domainHelp,globals,version:deps.version,io,...deps.fetchImpl!==void 0?{fetchImpl:deps.fetchImpl}:{}});return{code,out,err}}catch(e){return{code:1,out,err:`${err}${e.message}
|
|
1217
1217
|
`}}}var GIT_LOG_OUTPUT=["9f3c1a2 feat(ui): \u4E00\u89A7\u306E\u30D5\u30A3\u30EB\u30BF\u3092 URL \u30AF\u30A8\u30EA\u3068\u540C\u671F\u3059\u308B","4b8e0d7 fix(ui): \u4EEE\u60F3\u30B9\u30AF\u30ED\u30FC\u30EB\u306E\u884C\u9AD8\u3055\u3092\u5B9F\u6E2C\u5024\u306B\u5408\u308F\u305B\u308B","c15a99e refactor(api): \u4E00\u89A7\u53D6\u5F97\u306E\u30DA\u30FC\u30B8\u30F3\u30B0\u51E6\u7406\u3092\u5171\u901A\u5316\u3059\u308B","2d70f4b test: \u4E00\u89A7\u30D5\u30A3\u30EB\u30BF\u306E\u56DE\u5E30\u30C6\u30B9\u30C8\u3092\u8FFD\u52A0\u3059\u308B",
|
|
1218
1218
|
"a6e2b38 fix(api): \u7A7A\u306E\u691C\u7D22\u6761\u4EF6\u3067\u5168\u4EF6\u8FD4\u3089\u306A\u3044\u3088\u3046\u306B\u3059\u308B","7c40d51 chore(deps): \u958B\u767A\u4F9D\u5B58\u3092\u6700\u65B0\u3078\u66F4\u65B0\u3059\u308B","e83b1c6 docs: \u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u624B\u9806\u306B Node 22 \u306E\u524D\u63D0\u3092\u8FFD\u8A18\u3059\u308B","b91f7a4 fix(ui): \u30E2\u30FC\u30C0\u30EB\u306E\u91CD\u306A\u308A\u9806\u3092\u6307\u5B9A\u3059\u308B","5a2c8e0 perf(api): \u4E00\u89A7\u306E N+1 \u3092\u89E3\u6D88\u3059\u308B",
|
|
@@ -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-ORUDW52G.js";import{BACKLOG_BASE_PATH,BACKLOG_PROJECT_SCOPE_LABEL,BACKLOG_SCOPE_LABEL,backlogSpacePath,isExactNumericId,resolveNamed}from"./chunk-
|
|
3
|
+
import{readBody}from"./chunk-ORUDW52G.js";import{BACKLOG_BASE_PATH,BACKLOG_PROJECT_SCOPE_LABEL,BACKLOG_SCOPE_LABEL,backlogSpacePath,isExactNumericId,resolveNamed}from"./chunk-3WHD2YVF.js";import"./chunk-GMBJTG6A.js";import"./chunk-3HH5IYNO.js";import"./chunk-IF2K4PM5.js";import"./chunk-4VZKNEVN.js";import"./chunk-II5RVJQN.js";import{requireResolved,singleRef,withResolved}from"./chunk-LXIAOCUW.js";import{isRecord,pick}from"./chunk-VTQAI52S.js";
|
|
4
4
|
import{ApiResponseError,UsageError}from"./chunk-UFND7FBC.js";import"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var DEFAULT_COUNT=20;var MAX_COUNT=100;var NUMERIC=/^[0-9]+$/;var ISSUE_REF=/^(?:[A-Za-z0-9_]+-[0-9]+|[0-9]+)$/;var DATE=/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/;var SPACE_COLUMNS=["id","space_url"];var PROJECT_COLUMNS=["id","projectKey","name"];var ISSUE_LIST_COLUMNS=["issueKey","summary","status","assignee","priority","dueDate","updated","descriptionTruncated"];var ISSUE_GET_COLUMNS=["id","issueKey","projectId","summary","description","descriptionTruncated","status","issueType","priority","assignee","cr\
|
|
5
5
|
eatedUser","parentIssueId","startDate","dueDate","estimatedHours","actualHours","created","updated"];var COMMENT_COLUMNS=["id","created","createdUserId","createdUser","content","changeLog"];function commentRow(row){const source=isRecord(row)?row:{};const user=isRecord(source["createdUser"])?source["createdUser"]:{};return pick({...source,createdUserId:user["id"]??null,createdUser:user["name"]??null},COMMENT_COLUMNS)}var ATTACHMENT_COLUMNS=["id","name","size","contentType","createdUserId","create\
|
|
6
6
|
dUser","created"];var STATUS_COLUMNS=["id","name","color"];var USER_COLUMNS=["id","userId","name","mailAddress","roleType"];var SPACE_FLAG={name:"--space",summary:"Backlog \u30B9\u30DA\u30FC\u30B9\uFF08ID / \u30B9\u30DA\u30FC\u30B9URL / \u30B5\u30D6\u30C9\u30E1\u30A4\u30F3\uFF09\u3002\u767B\u9332\u304C1\u4EF6\u306A\u3089\u7701\u7565\u3067\u304D\u307E\u3059",takesValue:true,placeholder:"<ID|URL>"};var BODY_MAX_CHARS=1e5;var BODY_FLAGS=[{name:"--body-file",summary:"\u672C\u6587\u3092\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u8AAD\u3080\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09\u3002\u6539\u884C\u30FBMarkdown\
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
+
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
+
import{JsonBodyWithView}from"./chunk-Q3B65OFC.js";import{emailText,ms365Forbidden,recipientsText,str}from"./chunk-QICH2OOI.js";import{readBody}from"./chunk-ORUDW52G.js";import{assertMs365PathSegment,ms365Path,ms365Segment}from"./chunk-3HH5IYNO.js";import{repeatedValues}from"./chunk-F7K37QG6.js";import{requireResolved,singleRef,withResolved}from"./chunk-LXIAOCUW.js";import{isRecord}from"./chunk-VTQAI52S.js";import{ApiResponseError,UsageError}from"./chunk-UFND7FBC.js";import fs from"fs";import path from"path";var BODY_MAX_CHARS=1e5;var ATTACH_TOTAL_MAX_BYTES=3*1024*1024;var ADDRESS=/^[^\s@,;<>"]+@[^\s@,;<>"]+$/;var INVISIBLE=/[\p{Cc}\p{Cf}]/u;function oneLine(value){return value.replace(/[\r\n\t]+/g," ").replace(/[\p{Cc}\p{Cf}]/gu,"")}var TO_FLAG={name:"--to",summary:"\u5B9B\u5148\u306E\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\uFF08\u5FC5\u9808\u3002\u8907\u6570\u306A\u3089\u7E70\u308A\u8FD4\u3059\uFF09",takesValue:true,placeholder:"<\u30A2\u30C9\u30EC\u30B9>",repeatable:true};var CC_FLAG={name:"--c\
|
|
4
|
+
c",summary:"Cc \u306E\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\uFF08\u8907\u6570\u306A\u3089\u7E70\u308A\u8FD4\u3059\uFF09",takesValue:true,placeholder:"<\u30A2\u30C9\u30EC\u30B9>",repeatable:true};var BODY_FILE_FLAG={name:"--body-file",summary:"\u672C\u6587\u3092\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u8AAD\u3080\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09",takesValue:true,placeholder:"<\u30D1\u30B9|->"};var BODY_FLAG={name:"--body",summary:"\u672C\u6587\u3092\u76F4\u63A5\u6307\u5B9A\u3059\u308B\uFF08\u4E00\u884C\u5411\u3051\u3002--body-file \u3068\u306E\u4F75\u7528\u306F\u30A8\u30E9\u30FC\uFF09",
|
|
5
|
+
takesValue:true,placeholder:"<\u6587\u5B57\u5217>"};var HTML_FLAG={name:"--html",summary:"\u672C\u6587\u3092 HTML \u3068\u3057\u3066\u9001\u308B\uFF08\u65E2\u5B9A\u306F\u30C6\u30AD\u30B9\u30C8\uFF09",takesValue:false};var MESSAGE_FLAG={name:"--message",summary:"\u5143\u306E\u30E1\u30FC\u30EBID\uFF08\u4F4D\u7F6E\u5F15\u6570\u3068\u540C\u3058\u610F\u5473\uFF09",takesValue:true,placeholder:"<ID>"};var EXTERNAL_SEND_HELP="\u26A0 \u5916\u90E8\u3078\u51FA\u308B\u64CD\u4F5C\u3067\u3059\u3002\u5B9F\u884C\u3057\u305F\u77AC\u9593\u306B\u76F8\u624B\u306E\u53D7\u4FE1\u7BB1\u3078\u5C4A\u304D\u3001\u53D6\u308A\u6D88\u305B\u307E\u305B\u3093\u3002\n --yes \u304C\u7121\u3051\u308C\u3070\u5B9F\u884C\u3057\u307E\u305B\u3093\u3002--dry-run \u3067\u9001\u308B\u5185\u5BB9\uFF08\u5B9B\u5148\u30FB\u4EF6\
|
|
6
|
+
\u540D\u30FB\u672C\u6587\u30FB\u6DFB\u4ED8\u306E\u540D\u524D\u3068\u5927\u304D\u3055\uFF09\u3092\u78BA\u304B\u3081\u3066\u304B\u3089\n --yes \u3092\u4ED8\u3051\u3066\u304F\u3060\u3055\u3044\uFF08--dry-run \u306F --yes \u3092\u8981\u308A\u307E\u305B\u3093\uFF09\u3002\n\u26A0 \u7D42\u4E86\u30B3\u30FC\u30C9 4\uFF08\u901A\u4FE1\u306E\u5931\u6557\u30FB\u30B5\u30FC\u30D0\u306E\u4E00\u6642\u30A8\u30E9\u30FC\uFF09\u3067\u3082\u3001Microsoft 365 \u5074\u3067\u306F\u9001\u4FE1\u6E08\u307F\u306E\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\n \u6253\u3061\u76F4\u3059\u524D\u306B twp outlook mail list --folder sentitems \u3067\u9001\u4FE1\u6E08\u307F\u30A2\u30A4\u30C6\u30E0\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002";
|
|
7
|
+
var BODY_HELP="\u672C\u6587\u306F --body-file <\u30D1\u30B9>\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09\u304B --body <\u6587\u5B57\u5217> \u3067\u6E21\u3057\u307E\u3059\u3002\u6539\u884C\u3084\u8A18\u53F7\u3092\u542B\u3080\u672C\u6587\u306F\n--body-file \u3092\u4F7F\u3063\u3066\u304F\u3060\u3055\u3044\uFF08\u30B7\u30A7\u30EB\u306E\u5F15\u6570\u306B\u8F09\u305B\u308B\u3068\u58CA\u308C\u307E\u3059\uFF09\u3002";function addresses(input,flag){return repeatedValues(input,flag).map(raw=>{const value=raw.
|
|
8
|
+
trim();if(!ADDRESS.test(value)||INVISIBLE.test(value)){throw new UsageError(`${flag} \u306B\u306F\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u30921\u3064\u305A\u3064\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u53D7\u3051\u53D6\u3063\u305F\u5024: ${raw}\uFF09`,`\u540D\u524D\u304B\u3089\u306F\u5B9B\u5148\u3092\u63A2\u3057\u307E\u305B\u3093\u3002\u8907\u6570\u306E\u5B9B\u5148\u306F ${flag} \u3092\u7E70\u308A\u8FD4\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u4F8B: ${flag} a@example.com ${flag}\
|
|
9
|
+
b@example.com\uFF09\u3002`)}return value})}function recipients(list){return list.map(address=>({emailAddress:{address}}))}function textToHtml(text){return text.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/\t/g," ").replace(/ {2,}/g,run=>` ${" ".repeat(run.length-1)}`).replace(/(^|\r\n|\r|\n) /g,"$1 ").replace(/\r\n|\r|\n/g,"<br>\n")}var CONTENT_TYPES={".pdf":"application/pdf",".csv":"text/csv",".txt":"text/plain",
|
|
10
|
+
".md":"text/markdown",".json":"application/json",".xml":"application/xml",".html":"text/html",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".svg":"image/svg+xml",".zip":"application/zip",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".xls":"application/vnd.ms-excel",".d\
|
|
11
|
+
oc":"application/msword",".ppt":"application/vnd.ms-powerpoint"};function readAttachments(input){const files=repeatedValues(input,"--attach");const opened=[];try{let total=0;for(const file of files){let fd;try{fd=fs.openSync(file,"r")}catch(err){const reason=err.code??err.message;throw new UsageError(`--attach \u306E\u30D5\u30A1\u30A4\u30EB\u3092\u8AAD\u3081\u307E\u305B\u3093: ${file}\uFF08${reason}\uFF09`)}const stat=fs.fstatSync(fd);opened.push({file,fd,size:stat.size});if(!stat.isFile())throw new UsageError(
|
|
12
|
+
`--attach \u306B\u901A\u5E38\u306E\u30D5\u30A1\u30A4\u30EB\u4EE5\u5916\u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093: ${file}`);total+=stat.size}if(total>ATTACH_TOTAL_MAX_BYTES)throw tooLarge(total);let read=0;const attachments=opened.map(({file,fd})=>{const bytes=fs.readFileSync(fd);read+=bytes.byteLength;const name=path.basename(file);const contentType=CONTENT_TYPES[path.extname(name).toLowerCase()];return{name,path:path.resolve(file),bytes:bytes.byteLength,contentBytes:bytes.toString("base6\
|
|
13
|
+
4"),...contentType===void 0?{}:{contentType}}});if(read>ATTACH_TOTAL_MAX_BYTES)throw tooLarge(read);return attachments}finally{for(const{fd}of opened)fs.closeSync(fd)}}function tooLarge(total){return new UsageError(`\u6DFB\u4ED8\u306E\u5408\u8A08\u304C\u5927\u304D\u3059\u304E\u307E\u3059\uFF08${total} \u30D0\u30A4\u30C8\u30FB\u4E0A\u9650 ${ATTACH_TOTAL_MAX_BYTES} \u30D0\u30A4\u30C8\uFF09`,"Microsoft 365 \u306F\u30E1\u30FC\u30EB\u306B\u76F4\u63A5\u8F09\u305B\u308B\u6DFB\u4ED8\u3092 3MB \u672A\u6E80\u307E\u3067\u3068\u3057\u3066\u3044\u307E\u3059\u3002\u5927\u304D\u3044\u30D5\u30A1\u30A4\u30EB\u306F OneDrive \u306B\u7F6E\u3044\u3066\u5171\u6709\u30EA\u30F3\u30AF\u3092\u672C\u6587\u306B\u66F8\u3044\u3066\u304F\u3060\u3055\u3044\u3002")}
|
|
14
|
+
function assertSent(body,label){if(!isRecord(body)||body["result"]!==true){throw new ApiResponseError(`${label}\u306E\u5FDC\u7B54\u304C\u60F3\u5B9A\u306E\u5F62\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF08result \u304C true \u3067\u306F\u306A\u3044\uFF09\u3002\u9001\u4FE1\u6E08\u307F\u30A2\u30A4\u30C6\u30E0\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return body}function sentSummary(body,label){assertSent(body,label);return{sent:true}}function resolvedJson(input,key){return JSON.
|
|
15
|
+
parse(requireResolved(input,key))}function bodySummary(text,html){if(text===void 0)return"\u672C\u6587: \u306A\u3057";return`\u672C\u6587: ${html?"HTML":"\u30C6\u30AD\u30B9\u30C8"} ${[...text].length} \u6587\u5B57`}function messageId(input,op){return assertMs365PathSegment(singleRef(input,{flag:"--message",label:"\u5143\u306E\u30E1\u30FC\u30EBID",usage:`twp outlook mail ${op} help`}),"\u5143\u306E\u30E1\u30FC\u30EBID")}function replyAudience(message,all){const replyTo=recipientsText(message["rep\
|
|
16
|
+
lyTo"]);const from=replyTo??emailText(message["from"])??"\uFF08\u5DEE\u51FA\u4EBA\u3092\u8AAD\u3081\u307E\u305B\u3093\uFF09";if(!all)return oneLine(`To ${from}`);const to=recipientsText(message["toRecipients"]);const cc=recipientsText(message["ccRecipients"]);return oneLine([`To ${from}${to===null?"":`\u3001${to}`}`,cc===null?null:`Cc ${cc}`].filter(v=>v!==null).join(" / ")+"\uFF08\u81EA\u5206\u81EA\u8EAB\u306F Microsoft 365 \u304C\u9664\u304D\u307E\u3059\uFF09")}var send={name:"send",summary:"\u30E1\
|
|
17
|
+
\u30FC\u30EB\u3092\u65B0\u3057\u304F\u9001\u308B\uFF08--yes \u304C\u5FC5\u8981\uFF09",usage:"twp outlook mail send --to <\u30A2\u30C9\u30EC\u30B9> [--to \u2026] [--cc <\u30A2\u30C9\u30EC\u30B9> \u2026] --subject <\u4EF6\u540D> (--body-file <\u30D1\u30B9> | --body <\u6587\u5B57\u5217>) [--html] [--attach <\u30D1\u30B9> \u2026] --yes",description:`${EXTERNAL_SEND_HELP}
|
|
18
|
+
|
|
19
|
+
\u5B9B\u5148\u306F --to / --cc \u306B\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u3067\u6307\u5B9A\u3057\u307E\u3059\uFF08\u540D\u524D\u304B\u3089\u306F\u63A2\u3057\u307E\u305B\u3093\uFF09\u3002\u8907\u6570\u306A\u3089\u30D5\u30E9\u30B0\u3092\u7E70\u308A\u8FD4\u3057\u307E\u3059\u3002
|
|
20
|
+
Bcc \u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093\uFF08Microsoft 365 \u306E\u4E2D\u7D99\u304C\u53D7\u3051\u4ED8\u3051\u306A\u3044\u305F\u3081\uFF09\u3002
|
|
21
|
+
|
|
22
|
+
${BODY_HELP}
|
|
23
|
+
\u672C\u6587\u306F\u65E2\u5B9A\u3067\u30C6\u30AD\u30B9\u30C8\u3068\u3057\u3066\u9001\u308A\u307E\u3059\uFF08\u9014\u4E2D\u306E\u6539\u884C\u306F\u6B8B\u308A\u307E\u3059\u3002\u5148\u982D\u3068\u672B\u5C3E\u306E\u7A7A\u767D\u30FB\u6539\u884C\u306F\u30B5\u30FC\u30D0\u5074\u3067\u843D\u3061\u307E\u3059\uFF09\u3002
|
|
24
|
+
--html \u3092\u4ED8\u3051\u308B\u3068 HTML \u3068\u3057\u3066\u9001\u308A\u307E\u3059\u3002
|
|
25
|
+
|
|
26
|
+
--attach <\u30D1\u30B9> \u3067\u30D5\u30A1\u30A4\u30EB\u3092\u6DFB\u4ED8\u3067\u304D\u307E\u3059\uFF08\u7E70\u308A\u8FD4\u3057\u3066\u8907\u6570\uFF09\u3002\u5408\u8A08\u306F 3MB\uFF083,145,728 \u30D0\u30A4\u30C8\uFF09\u307E\u3067\u3067\u3059
|
|
27
|
+
\uFF08Microsoft 365 \u304C\u30E1\u30FC\u30EB\u306B\u76F4\u63A5\u8F09\u305B\u3089\u308C\u308B\u4E0A\u9650\uFF09\u3002\u76F8\u624B\u306B\u898B\u3048\u308B\u30D5\u30A1\u30A4\u30EB\u540D\u306F\u30D1\u30B9\u306E\u672B\u5C3E\u3060\u3051\u3067\u3059\u3002
|
|
28
|
+
--dry-run \u3067\u306F\u6DFB\u4ED8\u306E\u4E2D\u8EAB\u3092\u51FA\u3055\u305A\u3001\u540D\u524D\u3068\u5927\u304D\u3055\u3060\u3051\u3092\u8868\u793A\u3057\u307E\u3059\u3002
|
|
29
|
+
|
|
30
|
+
\u9001\u3063\u305F\u30E1\u30FC\u30EB\u306F\u9001\u4FE1\u6E08\u307F\u30A2\u30A4\u30C6\u30E0\u306B\u6B8B\u308A\u307E\u3059\uFF08twp outlook mail list --folder sentitems\uFF09\u3002`,destructive:true,confirmation:"\u5916\u90E8\u3078\u30E1\u30FC\u30EB\u3092\u9001\u308B\u64CD\u4F5C\uFF08\u53D6\u308A\u6D88\u305B\u307E\u305B\u3093\uFF09",flags:[TO_FLAG,CC_FLAG,{name:"--subject",summary:"\u4EF6\u540D\uFF08\u5FC5\u9808\uFF09",takesValue:true,placeholder:"<\u4EF6\u540D>"},BODY_FILE_FLAG,BODY_FLAG,HTML_FLAG,
|
|
31
|
+
{name:"--attach",summary:"\u6DFB\u4ED8\u3059\u308B\u30D5\u30A1\u30A4\u30EB\uFF08\u8907\u6570\u306A\u3089\u7E70\u308A\u8FD4\u3059\u30FB\u5408\u8A08 3MB \u307E\u3067\uFF09",takesValue:true,placeholder:"<\u30D1\u30B9>",repeatable:true}],forbidden:ms365Forbidden,async prepare(input){const usage="twp outlook mail send help";if(input.args.length>0)throw new UsageError(`\u4F4D\u7F6E\u5F15\u6570\u306F\u53D7\u3051\u4ED8\u3051\u307E\u305B\u3093: ${input.args.join(" ")}`,usage);const to=addresses(input,"--\
|
|
32
|
+
to");if(to.length===0)throw new UsageError("\u5B9B\u5148\uFF08--to\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);const cc=addresses(input,"--cc");const subject=input.flags.get("--subject");if(subject===void 0||subject.trim()==="")throw new UsageError("\u4EF6\u540D\uFF08--subject\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);const attachments=readAttachments(input);const body=await readBody(input,{flag:"--body",fileFlag:"--body-file",label:"\u30E1\u30FC\u30EB\u672C\u6587",
|
|
33
|
+
maxChars:BODY_MAX_CHARS,usage});if(body===void 0)throw new UsageError("\u672C\u6587\uFF08--body-file \u304B --body\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);return withResolved(input,{to:JSON.stringify(to),cc:JSON.stringify(cc),subject,body,attachments:JSON.stringify(attachments)})},plan(input){const to=resolvedJson(input,"to");const cc=resolvedJson(input,"cc");const attachments=resolvedJson(input,"attachments");const base={subject:requireResolved(input,"subject"),body:{
|
|
34
|
+
contentType:input.flags.has("--html")?"HTML":"Text",content:requireResolved(input,"body")},toRecipients:recipients(to),...cc.length>0?{ccRecipients:recipients(cc)}:{}};if(attachments.length===0)return{method:"POST",path:ms365Path("/outlook/sendMail"),body:base};const file=(a,contentBytes)=>({"@odata.type":"#microsoft.graph.fileAttachment",name:a.name,...a.contentType===void 0?{}:{contentType:a.contentType},contentBytes});return{method:"POST",path:ms365Path("/outlook/sendMail"),body:new JsonBodyWithView(
|
|
35
|
+
{...base,attachments:attachments.map(a=>file(a,a.contentBytes))},{...base,attachments:attachments.map(a=>file(a,`\uFF08base64\u30FB\u5143 ${a.bytes} \u30D0\u30A4\u30C8\u30FB\u8868\u793A\u3057\u306A\u3044\uFF09`))})}},plannedNotes(input){const to=resolvedJson(input,"to");const cc=resolvedJson(input,"cc");const attachments=resolvedJson(input,"attachments");return[`\u9001\u4FE1\u5185\u5BB9: To ${to.join("\u3001")}${cc.length>0?` / Cc ${cc.join("\u3001")}`:""} / \u4EF6\u540D\u300C${requireResolved(input,
|
|
36
|
+
"subject")}\u300D / ${bodySummary(requireResolved(input,"body"),input.flags.has("--html"))} / \u6DFB\u4ED8: ${attachments.length===0?"\u306A\u3057":attachments.map(a=>`${a.name}\uFF08${a.bytes} \u30D0\u30A4\u30C8\u30FB${a.path}\uFF09`).join("\u3001")}`]},summarize:body=>sentSummary(body,"\u30E1\u30FC\u30EB\u9001\u4FE1"),raw:body=>assertSent(body,"\u30E1\u30FC\u30EB\u9001\u4FE1"),notes:()=>["\u9001\u4FE1\u3057\u307E\u3057\u305F\u3002\u9001\u4FE1\u6E08\u307F\u30A2\u30A4\u30C6\u30E0\uFF08twp outlook mail list --folder sentitems\uFF09\u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002"]};
|
|
37
|
+
function replyOperation(all){const op=all?"reply-all":"reply";const endpoint=all?"replyAll":"reply";const label=all?"\u5168\u54E1\u8FD4\u4FE1":"\u8FD4\u4FE1";return{name:op,summary:all?"\u30E1\u30FC\u30EB\u306B\u5168\u54E1\u8FD4\u4FE1\u3059\u308B\uFF08--yes \u304C\u5FC5\u8981\uFF09":"\u30E1\u30FC\u30EB\u306E\u5DEE\u51FA\u4EBA\u306B\u8FD4\u4FE1\u3059\u308B\uFF08--yes \u304C\u5FC5\u8981\uFF09",usage:`twp outlook mail ${op} <\u30E1\u30FC\u30EBID> (--body-file <\u30D1\u30B9> | --body <\u6587\u5B57\u5217>) [--html] --yes`,
|
|
38
|
+
description:`${EXTERNAL_SEND_HELP}
|
|
39
|
+
|
|
40
|
+
`+(all?"\u5143\u306E\u30E1\u30FC\u30EB\u306E\u5DEE\u51FA\u4EBA\u3068\u3001To\u30FBCc \u306E\u5168\u54E1\u306B\u8FD4\u4FE1\u3057\u307E\u3059\uFF08\u81EA\u5206\u81EA\u8EAB\u306F Microsoft 365 \u304C\u9664\u304D\u307E\u3059\uFF09\u3002\n":"\u5143\u306E\u30E1\u30FC\u30EB\u306E\u5DEE\u51FA\u4EBA\uFF08\u8FD4\u4FE1\u5148\u304C\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u308C\u3070\u305D\u306E\u76F8\u624B\uFF09\u306B\u8FD4\u4FE1\u3057\u307E\u3059\u3002\n")+`\u5B9B\u5148\u306F Microsoft 365 \u304C\u5143\u306E\u30E1\u30FC\u30EB\u304B\u3089\u6C7A\u3081\u307E\u3059\u3002\u9001\u308B\u524D\u306B\u5143\u306E\u30E1\u30FC\u30EB\u3092\u8AAD\u307F\u3001\u5C4A\u304F\u76F8\u624B\u306E\u76EE\u5B89\u3092\u8868\
|
|
41
|
+
\u793A\u3057\u307E\u3059
|
|
42
|
+
\uFF08--dry-run \u3067\u3082\u8868\u793A\u3057\u307E\u3059\uFF09\u3002\u5B9B\u5148\u30FBCc \u3092\u8DB3\u3059\u3053\u3068\u3001\u6DFB\u4ED8\u3092\u4ED8\u3051\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
|
|
43
|
+
\u30E1\u30FC\u30EBID \u306F twp outlook mail list \u306E id \u3067\u3059\u3002
|
|
44
|
+
|
|
45
|
+
${BODY_HELP}
|
|
46
|
+
\u672C\u6587\u306F\u5143\u306E\u30E1\u30FC\u30EB\u306E\u4E0A\u306B\u5DEE\u3057\u8FBC\u307E\u308C\u307E\u3059\u3002Microsoft 365 \u306F\u672C\u6587\u3092 HTML \u3068\u3057\u3066\u8AAD\u3080\u306E\u3067\u3001\u65E2\u5B9A\uFF08\u30C6\u30AD\u30B9\u30C8\uFF09\u3067\u306F
|
|
47
|
+
\u6539\u884C\u3068\u8A18\u53F7\u304C\u898B\u305F\u3068\u304A\u308A\u306B\u5C4A\u304F\u3088\u3046 HTML \u306B\u76F4\u3057\u3066\u9001\u308A\u307E\u3059\uFF08--dry-run \u306E body \u306B\u5909\u63DB\u5F8C\u306E\u5024\u304C\u51FA\u307E\u3059\uFF09\u3002
|
|
48
|
+
--html \u3092\u4ED8\u3051\u308B\u3068\u3001\u672C\u6587\u3092 HTML \u3068\u3057\u3066\u305D\u306E\u307E\u307E\u9001\u308A\u307E\u3059\u3002`,destructive:true,confirmation:"\u5916\u90E8\u3078\u30E1\u30FC\u30EB\u3092\u9001\u308B\u64CD\u4F5C\uFF08\u53D6\u308A\u6D88\u305B\u307E\u305B\u3093\uFF09",flags:[MESSAGE_FLAG,BODY_FILE_FLAG,BODY_FLAG,HTML_FLAG],forbidden:ms365Forbidden,async prepare(input,ctx){const usage=`twp outlook mail ${op} help`;const id=messageId(input,op);const body=await readBody(input,
|
|
49
|
+
{flag:"--body",fileFlag:"--body-file",label:`${label}\u306E\u672C\u6587`,maxChars:BODY_MAX_CHARS,usage});if(body===void 0)throw new UsageError("\u672C\u6587\uFF08--body-file \u304B --body\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);const original=await ctx.resolver.ms365Message(id);return withResolved(input,{messageId:id,body,audience:replyAudience(original,all),subject:oneLine(str(original["subject"])??"\uFF08\u4EF6\u540D\u306A\u3057\uFF09")})},plan(input){const body=requireResolved(
|
|
50
|
+
input,"body");const id=ms365Segment(requireResolved(input,"messageId"),"\u5143\u306E\u30E1\u30FC\u30EBID");return{method:"POST",path:ms365Path(`/outlook/messages/${id}/${endpoint}`),body:{comment:input.flags.has("--html")?body:textToHtml(body)}}},plannedNotes:input=>[`${label}\u306E\u5185\u5BB9: \u5143\u306E\u30E1\u30FC\u30EB\u300C${requireResolved(input,"subject")}\u300D / \u5C4A\u304F\u76F8\u624B\u306E\u76EE\u5B89\uFF08\u5143\u306E\u30E1\u30FC\u30EB\u304B\u3089 Microsoft 365 \u304C\u6C7A\u3081\u307E\u3059\uFF09: ${requireResolved(
|
|
51
|
+
input,"audience")} / ${bodySummary(requireResolved(input,"body"),input.flags.has("--html"))}`],summarize:body=>sentSummary(body,label),raw:body=>assertSent(body,label),notes:()=>[`${label}\u3057\u307E\u3057\u305F\u3002\u9001\u4FE1\u6E08\u307F\u30A2\u30A4\u30C6\u30E0\uFF08twp outlook mail list --folder sentitems\uFF09\u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002`]}}var forward={name:"forward",summary:"\u30E1\u30FC\u30EB\u3092\u8EE2\u9001\u3059\u308B\uFF08--yes \u304C\u5FC5\u8981\uFF09",usage:"\
|
|
52
|
+
twp outlook mail forward <\u30E1\u30FC\u30EBID> --to <\u30A2\u30C9\u30EC\u30B9> [--to \u2026] [--body-file <\u30D1\u30B9> | --body <\u6587\u5B57\u5217>] [--html] --yes",description:`${EXTERNAL_SEND_HELP}
|
|
53
|
+
|
|
54
|
+
\u5143\u306E\u30E1\u30FC\u30EB\u3092\u3001\u6DFB\u4ED8\u3082\u542B\u3081\u3066 --to \u306E\u76F8\u624B\u3078\u8EE2\u9001\u3057\u307E\u3059\u3002\u5B9B\u5148\u306F\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u3067\u6307\u5B9A\u3057\u307E\u3059\uFF08\u540D\u524D\u304B\u3089\u306F\u63A2\u3057\u307E\u305B\u3093\uFF09\u3002
|
|
55
|
+
\u8907\u6570\u306A\u3089\u30D5\u30E9\u30B0\u3092\u7E70\u308A\u8FD4\u3057\u307E\u3059\u3002Cc\u30FBBcc \u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093\uFF08Microsoft 365 \u306E\u4E2D\u7D99\u304C\u53D7\u3051\u4ED8\u3051\u306A\u3044\u305F\u3081\uFF09\u3002
|
|
56
|
+
\u30E1\u30FC\u30EBID \u306F twp outlook mail list \u306E id \u3067\u3059\u3002
|
|
57
|
+
|
|
58
|
+
\u672C\u6587\uFF08\u6DFB\u3048\u66F8\u304D\uFF09\u306F\u4EFB\u610F\u3067\u3059\u3002${BODY_HELP}
|
|
59
|
+
\u672C\u6587\u306F\u5143\u306E\u30E1\u30FC\u30EB\u306E\u4E0A\u306B\u5DEE\u3057\u8FBC\u307E\u308C\u307E\u3059\u3002Microsoft 365 \u306F\u672C\u6587\u3092 HTML \u3068\u3057\u3066\u8AAD\u3080\u306E\u3067\u3001\u65E2\u5B9A\uFF08\u30C6\u30AD\u30B9\u30C8\uFF09\u3067\u306F
|
|
60
|
+
\u6539\u884C\u3068\u8A18\u53F7\u304C\u898B\u305F\u3068\u304A\u308A\u306B\u5C4A\u304F\u3088\u3046 HTML \u306B\u76F4\u3057\u3066\u9001\u308A\u307E\u3059\u3002--html \u3092\u4ED8\u3051\u308B\u3068\u3001\u672C\u6587\u3092 HTML \u3068\u3057\u3066\u305D\u306E\u307E\u307E\u9001\u308A\u307E\u3059\u3002`,destructive:true,confirmation:"\u5916\u90E8\u3078\u30E1\u30FC\u30EB\u3092\u9001\u308B\u64CD\u4F5C\uFF08\u53D6\u308A\u6D88\u305B\u307E\u305B\u3093\uFF09",flags:[MESSAGE_FLAG,TO_FLAG,BODY_FILE_FLAG,BODY_FLAG,
|
|
61
|
+
HTML_FLAG],forbidden:ms365Forbidden,async prepare(input){const usage="twp outlook mail forward help";const id=messageId(input,"forward");const to=addresses(input,"--to");if(to.length===0)throw new UsageError("\u8EE2\u9001\u5148\uFF08--to\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);if(input.flags.has("--html")&&!input.flags.has("--body")&&!input.flags.has("--body-file")){throw new UsageError("--html \u306F\u672C\u6587\uFF08--body-file \u304B --body\uFF09\u3068\u4E00\u7DD2\u306B\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",
|
|
62
|
+
usage)}const body=await readBody(input,{flag:"--body",fileFlag:"--body-file",label:"\u8EE2\u9001\u306E\u672C\u6587",maxChars:BODY_MAX_CHARS,usage});return withResolved(input,{messageId:id,to:JSON.stringify(to),...body===void 0?{}:{body}})},plan(input){const id=ms365Segment(requireResolved(input,"messageId"),"\u5143\u306E\u30E1\u30FC\u30EBID");const body=input.resolved?.["body"];return{method:"POST",path:ms365Path(`/outlook/messages/${id}/forward`),body:{...body===void 0?{}:{comment:input.flags.has(
|
|
63
|
+
"--html")?body:textToHtml(body)},toRecipients:recipients(resolvedJson(input,"to"))}}},plannedNotes:input=>[`\u8EE2\u9001\u306E\u5185\u5BB9: To ${resolvedJson(input,"to").join("\u3001")} / ${bodySummary(input.resolved?.["body"],input.flags.has("--html"))}\uFF08\u5143\u306E\u30E1\u30FC\u30EB\u3068\u6DFB\u4ED8\u306F\u305D\u306E\u307E\u307E\u4ED8\u304D\u307E\u3059\uFF09`],summarize:body=>sentSummary(body,"\u8EE2\u9001"),raw:body=>assertSent(body,"\u8EE2\u9001"),notes:()=>["\u8EE2\u9001\u3057\u307E\u3057\u305F\u3002\u9001\u4FE1\u6E08\u307F\u30A2\u30A4\u30C6\u30E0\uFF08twp outloo\
|
|
64
|
+
k mail list --folder sentitems\uFF09\u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002"]};var mailSendOperations=[send,replyOperation(false),replyOperation(true),forward];export{textToHtml,mailSendOperations};
|
|
@@ -101,16 +101,17 @@ return this.cached("backlog-projects",spaceId,()=>this.namedList(backlogSpacePat
|
|
|
101
101
|
backlogStatusRow))}async backlogUsers(spaceId,projectId){return this.cached("backlog-users",`${spaceId}/${projectId}`,()=>this.namedList(backlogSpacePath(spaceId,`/projects/${encodeURIComponent(assertBacklogPathSegment(projectId,"Backlog \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 ID"))}/users`),"users","Backlog \u30E6\u30FC\u30B6\u30FC",backlogUserRow))}async ms365Teams(){return this.cached("ms365-teams",MS365_TEAMS_CACHE_KEY,()=>this.ms365NamedList(ms365Path("/teams/teams"),"Teams \u306E\u30C1\u30FC\u30E0"))}async ms365Team(ref){
|
|
102
102
|
return resolveNamed(ref,await this.ms365Teams(),{flag:"--team",label:"\u30C1\u30FC\u30E0",scope:MS365_SCOPE_LABEL})}async ms365Channels(teamId){return this.cached("ms365-channels",teamId,()=>this.ms365NamedList(ms365Path(`/teams/teams/${ms365Segment(teamId,"\u30C1\u30FC\u30E0 ID")}/channels`),"Teams \u306E\u30C1\u30E3\u30CD\u30EB"))}async ms365Channel(teamId,ref){return resolveNamed(ref,await this.ms365Channels(teamId),{flag:"--channel",label:"\u30C1\u30E3\u30CD\u30EB",scope:"\u3053\u306E\u30C1\u30FC\u30E0"})}async ms365Message(messageId){
|
|
103
103
|
const res=await this.get(ms365Path(`/outlook/messages/${ms365Segment(messageId,"\u30E1\u30FC\u30EBID")}`));if(!res.ok){throw new ResolveError(ms365NotConnectedGuidance(res.json)??`\u5143\u306E\u30E1\u30FC\u30EB\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF08HTTP ${res.status}\uFF09\u3002\u30E1\u30FC\u30EBID \u306F twp outlook mail list \u306E id \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,res.status)}const data=isRecord(res.json)?res.json["data"]:void 0;
|
|
104
|
-
if(!isRecord(data)){throw new ResolveError("\u5143\u306E\u30E1\u30FC\u30EB\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",res.status)}return data}async
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
104
|
+
if(!isRecord(data)){throw new ResolveError("\u5143\u306E\u30E1\u30FC\u30EB\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",res.status)}return data}async ms365Event(eventId){const res=await this.get(ms365Path(`/calendar/events/${ms365Segment(eventId,"\u4E88\u5B9AID")}`));if(!res.ok){throw new ResolveError(ms365NotConnectedGuidance(res.json)??`\u4E88\u5B9A\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF08HTTP ${res.
|
|
105
|
+
status}\uFF09\u3002\u4E88\u5B9AID \u306F twp outlook event list \u306E id \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,res.status)}const data=isRecord(res.json)?res.json["data"]:void 0;if(!isRecord(data)){throw new ResolveError("\u4E88\u5B9A\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",res.status)}return data}async ms365NamedList(path2,label){const rows=[];let cursor=null;for(let page=1;page<=
|
|
106
|
+
MS365_RESOLVE_MAX_PAGES;page+=1){const res=await this.get(cursor===null?path2:`${path2}?skiptoken=${encodeURIComponent(cursor)}`);if(!res.ok){throw new ResolveError(ms365NotConnectedGuidance(res.json)??`${label}\u306E\u4E00\u89A7\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF08HTTP ${res.status}\uFF09\u3002\u63A5\u7D9A\u5148\u3068\u30ED\u30B0\u30A4\u30F3\u72B6\u614B\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,res.status)}const data=isRecord(res.json)?res.json["\
|
|
107
|
+
data"]:void 0;const value=isRecord(data)?data["value"]:void 0;if(!isRecord(data)||!Array.isArray(value)){throw new ResolveError(`${label}\u4E00\u89A7\u306E\u5FDC\u7B54\u306B data.value \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,res.status)}value.forEach((row,index)=>{if(!isRecord(row)){throw new ResolveError(`${label}\u4E00\u89A7\u306E ${rows.length+index+1} \u4EF6\u76EE\u304C\u60F3\u5B9A\u306E\u5F62\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,
|
|
108
|
+
res.status)}rows.push(row)});const next=data["@odata.nextLink"];if(next===void 0||next===null)return namedFromRows(rows,label,ms365NamedRow,res.status??void 0);const parsed=typeof next==="string"?graphNextCursor(next):null;if(parsed===null||parsed.kind!=="skiptoken"){throw new ResolveError(`${label}\u4E00\u89A7\u306E\u7D9A\u304D\uFF08@odata.nextLink\uFF09\u3092\u8AAD\u3081\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,res.status)}cursor=parsed.
|
|
109
|
+
value}throw new UsageError(`${label}\u304C\u591A\u3059\u304E\u308B\u305F\u3081\u540D\u524D\u3067\u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093\uFF08${MS365_RESOLVE_MAX_PAGES} \u30DA\u30FC\u30B8\u3092\u8D85\u3048\u307E\u3057\u305F\uFF09`,"\u4E00\u89A7\u30B3\u30DE\u30F3\u30C9\u306E\u51FA\u529B\u306B\u3042\u308B id \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}get apiClient(){return this.client}};function assertMembersComplete(rows){if(rows.length>=PROJECT_MEMBERS_LIMIT){throw new ResolveError(
|
|
110
|
+
`\u30E1\u30F3\u30D0\u30FC\u304C ${PROJECT_MEMBERS_LIMIT} \u4EBA\u4EE5\u4E0A\u3044\u308B\u305F\u3081\u3001\u5168\u54E1\u3092\u7167\u5408\u3067\u304D\u307E\u305B\u3093\u3002ID \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return rows}function rawListFrom(res,envelope,label){if(!res.ok){throw new ResolveError(`${label}\u306E\u4E00\u89A7\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF08HTTP ${res.status}\uFF09\u3002\u63A5\u7D9A\u5148\u3068\u30ED\u30B0\u30A4\u30F3\u72B6\u614B\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,
|
|
111
|
+
res.status)}const list=isRecord(res.json)?res.json[envelope]:void 0;if(!Array.isArray(list)){throw new ResolveError(`${label}\u4E00\u89A7\u306E\u5FDC\u7B54\u306B ${envelope} \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,res.status)}return list.map((row,index)=>{if(!isRecord(row)){throw new ResolveError(`${label}\u4E00\u89A7\u306E ${index+1} \u4EF6\u76EE\u304C\u60F3\u5B9A\u306E\u5F62\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,
|
|
112
|
+
res.status)}return row})}function userRow(row){const email=str(row["email"]);const employeeCode=str(row["employee_code"]);return{id:str(row["user_id"]),name:str(row["user_name"]),code:employeeCode??email,aliases:[email,employeeCode].filter(v=>v!==null)}}function notificationCategoryRow(row){return{id:str(row["key"]),name:str(row["name"]),code:str(row["key"])}}function inquiryCategoryRow(row){return{id:str(row["id"]),name:str(row["title"]),code:str(row["category_code"])}}function masterList(res,label){
|
|
113
|
+
const rows=rawListFrom(res,"list",label);const count=isRecord(res.json)?res.json["count"]:void 0;if(typeof count==="number"&&count>rows.length){throw new ResolveError(`${label}\u4E00\u89A7\u304C ${count} \u4EF6\u4E2D ${rows.length} \u4EF6\u3067\u5207\u308A\u8A70\u3081\u3089\u308C\u305F\u305F\u3081\u3001\u540D\u524D\u3067\u89E3\u6C7A\u3067\u304D\u307E\u305B\u3093\u3002ID \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,res.status)}return rows}function codedMasterRow(row){return{id:str(
|
|
114
|
+
row["id"]),name:str(row["name"]),code:str(row["code"]),isDefault:truthyFlag(row["is_default"])}}function namedListFrom(res,envelope,label,map){return namedFromRows(rawListFrom(res,envelope,label),label,map,res.status??void 0)}function namedFromRows(rows,label,map,status=200){return rows.map((row,index)=>{const mapped=map(row);if(mapped.id===null||mapped.name===null){throw new ResolveError(`${label}\u4E00\u89A7\u306E ${index+1} \u4EF6\u76EE\u306B id / \u540D\u524D\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,
|
|
114
115
|
status)}return{id:mapped.id,name:mapped.name,...mapped.code!==void 0?{code:mapped.code}:{},...mapped.aliases!==void 0&&mapped.aliases.length>0?{aliases:mapped.aliases}:{},...mapped.isDefault!==void 0?{isDefault:mapped.isDefault}:{}}})}function requireDefault(candidates,ctx){const hit=candidates.find(ref=>ref.isDefault===true);if(hit!==void 0)return hit;throw new UsageError(`${ctx.flag} \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08${ctx.scope??DEFAULT_LOOKUP_SCOPE}\u306B\u306F\u65E2\u5B9A\u306E${ctx.
|
|
115
116
|
label}\u304C\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\uFF09`,`\u6307\u5B9A\u3067\u304D\u308B${ctx.label}: ${candidates.map(ref=>ref.name).join(" / ")}\uFF08\u53E4\u3044\u30AD\u30E3\u30C3\u30B7\u30E5\u304C\u6B8B\u3063\u3066\u3044\u308B\u5834\u5408\u306F --refresh \u3067\u53D6\u308A\u76F4\u305B\u307E\u3059\uFF09`)}export{BACKLOG_BASE_PATH,backlogSpacePath,resolveNamed,requireDefaultProject,PRIVATE_TASKS_PATH,BACKLOG_SCOPE_LABEL,BACKLOG_PROJECT_SCOPE_LABEL,PROJECT_MEMBERS_LIMIT,DEPARTMENTS_PATH,POSITIONS_PATH,JOB_TITLES_PATH,INQUIRY_CATEGORIES_PATH,NOTIFICATIONS_PATH,WORKFLOWS_PATH,REPORTS_PATH,SALES_ESTIMATES_PATH,SALES_INVOICES_PATH,SALES_CONTRACTS_PATH,SALES_INVOICE_AUTO_TEMPLATES_PATH,SALES_DEPOSITS_PATH,SALES_PURCHASES_PATH,SALES_SUPPLIER_PAYMENTS_PATH,SALES_SUPPLIER_PAYMENT_SCHEDULES_PATH,SALES_BUSINESS_PLACES_PATH,
|
|
116
117
|
SALES_PAYEES_PATH,SALES_SEAL_IMPRESSIONS_PATH,SALES_PURCHASE_AI_MAPPINGS_PATH,SALES_ESTIMATE_NO_RULES_PATH,SALES_INVOICE_NO_RULES_PATH,SALES_PURCHASE_NO_RULES_PATH,SALES_ESTIMATE_FORMATS_PATH,SALES_ROUNDING_SETTING_PATH,SALES_COMPANIES_PATH,CUSTOMERS_PATH,PROSPECTS_PATH,isExactNumericId,ORG_MASTER_LIMIT,TASK_MASTERS,Resolver};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{FORCE_FLAG,OUT_FLAG,REV_FLAG,revOf,singleId,uploadStaged}from"./chunk-
|
|
3
|
+
import{FORCE_FLAG,OUT_FLAG,REV_FLAG,revOf,singleId,uploadStaged}from"./chunk-JYNZEZYL.js";import{CUSTOMER_LICENSE,childForbidden,levelForbidden}from"./chunk-HS7EKE7M.js";import{inspectLocalFile}from"./chunk-HNUBM24L.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-SBWCQAHT.js";import{SALES_ESTIMATES_PATH,isExactNumericId}from"./chunk-3WHD2YVF.js";import{nonEmpty}from"./chunk-IOGMOXYF.js";import{requireResolved,withResolved}from"./chunk-LXIAOCUW.js";
|
|
4
4
|
import{acknowledgement,isRecord,pick}from"./chunk-VTQAI52S.js";import{ApiResponseError,UsageError}from"./chunk-UFND7FBC.js";import fs from"fs";import path from"path";var DOCUMENT_TYPES=["order_form","individual_contract","other"];var DOCUMENT_TYPE_HELP="order_form\uFF1D\u6CE8\u6587\u66F8 / individual_contract\uFF1D\u500B\u5225\u5951\u7D04\u66F8 / other\uFF1D\u305D\u306E\u4ED6\u6848\u4EF6\u66F8\u985E";var MAGIC_BYTES={pdf:["%PDF-"],jpg:["\xFF\xD8\xFF"],jpeg:["\xFF\xD8\xFF"],png:["\x89PNG\r\n\n"],xlsx:["PK","PK","PK\x07\b"],docx:["PK","PK","PK\x07\b"],xls:["\xD0\xCF\xE0\xA1\xB1\xE1"],doc:["\xD0\xCF\xE0\xA1\xB1\xE1"]};var FILE_NAME_MAX_CHARS=255;var FIELDS=[
|
|
5
5
|
{kind:"text",flag:"--name",key:"document_name",label:"\u66F8\u985E\u540D",maxChars:255,summary:"\u66F8\u985E\u540D\uFF08create \u3067\u306F\u5FC5\u9808\uFF09"},{kind:"enum",flag:"--type",key:"document_type",values:DOCUMENT_TYPES,summary:`\u66F8\u985E\u7A2E\u5225\uFF08${DOCUMENT_TYPE_HELP}\u30FBcreate \u3067\u306F\u5FC5\u9808\uFF09`}];var COLUMNS=["document_id","estimate_id","document_type","document_type_label","document_name","current_version","updated_by_name","updated_at"];var VERSION_COLUMNS=[
|
|
6
6
|
"version_number","file_name","file_size","is_current","created_by_name","created_at"];var ESTIMATE_FLAG={name:"--estimate",summary:"\u898B\u7A4D\u306E ID\uFF08twp estimate list \u306E id \u5217\u306E\u6570\u5B57\u30FB\u5FC5\u9808\uFF09",takesValue:true,placeholder:"<\u898B\u7A4DID>"};var FILE_FLAG={name:"--file",summary:"\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3059\u308B\u30D5\u30A1\u30A4\u30EB\uFF08PDF\u30FBJPEG\u30FBPNG\u30FBWord\u30FBExcel\u3002\u5FC5\u9808\uFF09",takesValue:true,placeholder:"<\
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{stripTerminalControls}from"./chunk-NHYMHCAT.js";var SENSITIVE_HEADERS=new Set(["authorization","proxy-authorization","cookie","set-cookie","x-api-key","x-auth-token","x-vercel-protection-bypass"]);var REDACTED="***\uFF08\u4F0F\u5B57\uFF09";var SECRET_KEY_PATTERN="[A-Za-z0-9_-]*(?:token|secret|password|passwd|api[_-]?key|credential|signature)[A-Za-z0-9_-]*";var NOT_SECRET_FLAGS="(?:starting-token)";var NOT_SECRET_QUERY="(?:skiptoken)";function redactSecrets(text){return text.replace(/\bBearer\s+[^\s"'`,;)\]}]+/gi,`Bearer ${REDACTED}`).
|
|
4
|
-
/(\/v2\/(?:admin\/)?invitations\/)[A-Za-z0-9_-]{16,}/g,`$1${REDACTED}`).replace(new RegExp(`("${SECRET_KEY_PATTERN}"\\s*:\\s*)"(?:[^"\\\\]|\\\\.)*"`,"gi"),`$1"${REDACTED}"`).replace(new RegExp(`([?&](?!${NOT_SECRET_QUERY}=)${SECRET_KEY_PATTERN}=)[^&\\s"'\`,;)\\]}]+`,"gi"),`$1${REDACTED}`).replace(new RegExp(`(--(?!${NOT_SECRET_FLAGS}(?:=|\\s))${SECRET_KEY_PATTERN}(?:=|\\s+))('[^']*'|"[^"]*"|[A-Za-z0-9_.~+/=|:%-]+)`,"gi"),`$1${REDACTED}`)}var SECRET_KEY_NAME=new RegExp(`^${SECRET_KEY_PATTERN}
|
|
5
|
-
i");function redactSecretValues(value){if(Array.isArray(value))return value.map(item=>redactSecretValues(item));if(value!==null&&typeof value==="object"){const out={};for(const[key,item]of Object.entries(value)){out[key]=SECRET_KEY_NAME.test(key)?REDACTED:redactSecretValues(item)}return out}return value}function formatHeaders(headers){if(!headers)return[];const entries=headers instanceof Headers?[...headers.entries()]:Array.isArray(headers)?headers:Object.entries(headers);return entries.map(
|
|
6
|
-
value])=>{const shown=SENSITIVE_HEADERS.has(name.toLowerCase())?REDACTED:redactSecrets(String(value));return` ${name.toLowerCase()}: ${shown}`})}var BODY_LIMIT=4e3;function omitAttachmentBytes(body){return body.replace(/"contentBytes":"([A-Za-z0-9+/=]*)"/g,(_,b64)=>`"contentBytes":"\uFF08base64 ${b64.length} \u6587\u5B57\u30FB\u51FA\u529B\u3057\u306A\u3044\uFF09"`)}function formatBody(raw){const safe=omitAttachmentBytes(redactSecrets(stripTerminalControls(raw)));return safe.length>BODY_LIMIT
|
|
7
|
-
slice(0,BODY_LIMIT)}
|
|
3
|
+
import{stripTerminalControls}from"./chunk-NHYMHCAT.js";var SENSITIVE_HEADERS=new Set(["authorization","proxy-authorization","cookie","set-cookie","x-api-key","x-auth-token","x-vercel-protection-bypass"]);var REDACTED="***\uFF08\u4F0F\u5B57\uFF09";var SECRET_KEY_PATTERN="[A-Za-z0-9_-]*(?:token|secret|password|passwd|api[_-]?key|credential|signature|tempauth|upload_?url)[A-Za-z0-9_-]*";var NOT_SECRET_FLAGS="(?:starting-token)";var NOT_SECRET_QUERY="(?:skiptoken)";function redactSecrets(text){return text.replace(/\bBearer\s+[^\s"'`,;)\]}]+/gi,`Bearer ${REDACTED}`).
|
|
4
|
+
replace(/(\/v2\/(?:admin\/)?invitations\/)[A-Za-z0-9_-]{16,}/g,`$1${REDACTED}`).replace(new RegExp(`("${SECRET_KEY_PATTERN}"\\s*:\\s*)"(?:[^"\\\\]|\\\\.)*"`,"gi"),`$1"${REDACTED}"`).replace(new RegExp(`([?&](?!${NOT_SECRET_QUERY}=)${SECRET_KEY_PATTERN}=)[^&\\s"'\`,;)\\]}]+`,"gi"),`$1${REDACTED}`).replace(new RegExp(`(--(?!${NOT_SECRET_FLAGS}(?:=|\\s))${SECRET_KEY_PATTERN}(?:=|\\s+))('[^']*'|"[^"]*"|[A-Za-z0-9_.~+/=|:%-]+)`,"gi"),`$1${REDACTED}`)}var SECRET_KEY_NAME=new RegExp(`^${SECRET_KEY_PATTERN}\
|
|
5
|
+
$`,"i");function redactSecretValues(value){if(Array.isArray(value))return value.map(item=>redactSecretValues(item));if(value!==null&&typeof value==="object"){const out={};for(const[key,item]of Object.entries(value)){out[key]=SECRET_KEY_NAME.test(key)?REDACTED:redactSecretValues(item)}return out}return value}function formatHeaders(headers){if(!headers)return[];const entries=headers instanceof Headers?[...headers.entries()]:Array.isArray(headers)?headers:Object.entries(headers);return entries.map(
|
|
6
|
+
([name,value])=>{const shown=SENSITIVE_HEADERS.has(name.toLowerCase())?REDACTED:redactSecrets(String(value));return` ${name.toLowerCase()}: ${shown}`})}var BODY_LIMIT=4e3;function omitAttachmentBytes(body){return body.replace(/"contentBytes":"([A-Za-z0-9+/=]*)"/g,(_,b64)=>`"contentBytes":"\uFF08base64 ${b64.length} \u6587\u5B57\u30FB\u51FA\u529B\u3057\u306A\u3044\uFF09"`)}function formatBody(raw){const safe=omitAttachmentBytes(redactSecrets(stripTerminalControls(raw)));return safe.length>BODY_LIMIT?
|
|
7
|
+
`${safe.slice(0,BODY_LIMIT)}
|
|
8
8
|
\u2026\uFF08\u4EE5\u964D ${safe.length-BODY_LIMIT} \u6587\u5B57\u3092\u7701\u7565\uFF09`:safe}function isTextualContentType(contentType){if(contentType===null)return false;return/^\s*(text\/|application\/(json|xml|javascript|x-www-form-urlencoded)|application\/[\w.+-]*\+(json|xml))/i.test(contentType)}function withDebug(inner,options={}){const write=options.write??(text=>void process.stderr.write(text));const now=options.now??(()=>Date.now());return async(input,init)=>{const method=init?.method??
|
|
9
9
|
"GET";const lines=[`[debug] \u2192 ${method} ${redactSecrets(input)}`,...formatHeaders(init?.headers)];if(options.omitBodies!==void 0&&init?.body!==void 0&&init.body!==null)lines.push(` \uFF08\u672C\u6587\u306F${options.omitBodies}\u305F\u3081\u51FA\u529B\u3057\u306A\u3044\uFF09`);else if(typeof init?.body==="string")lines.push(` ${formatBody(init.body)}`);else if(init?.body instanceof Uint8Array)lines.push(` \uFF08\u672C\u6587\u306F ${init.body.byteLength} \u30D0\u30A4\u30C8\u306E\u30D0\u30A4\u30C8\u5217\u3002\u51FA\u529B\u3057\u306A\u3044\uFF09`);
|
|
10
10
|
write(`${lines.join("\n")}
|
|
@@ -0,0 +1,9 @@
|
|
|
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};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{salesAdminForbidden}from"./chunk-
|
|
3
|
+
import{salesAdminForbidden}from"./chunk-QVZGNHRE.js";import{featureLicenseGuidance,licenseForbidden}from"./chunk-V24LKF3V.js";import{booleanText,boundedText}from"./chunk-XDHLO54T.js";import{SALES_ESTIMATE_FORMATS_PATH,SALES_ESTIMATE_NO_RULES_PATH,SALES_INVOICE_NO_RULES_PATH,SALES_PURCHASE_NO_RULES_PATH,SALES_ROUNDING_SETTING_PATH,isExactNumericId}from"./chunk-3WHD2YVF.js";import{repeatedValues}from"./chunk-F7K37QG6.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,
|
|
4
4
|
nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-IOGMOXYF.js";import{requireResolved,withResolved}from"./chunk-LXIAOCUW.js";import{acknowledgement,isRecord,pick}from"./chunk-VTQAI52S.js";import{ApiResponseError,UsageError}from"./chunk-UFND7FBC.js";var INT_MAX=2147483647;var MEMBER_FORBIDDEN=licenseForbidden(featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406"));function envelope(body,what){if(!isRecord(body)||body["result"]!==true)throw new ApiResponseError(`${what}\u306E\u5FDC\u7B54\u306E\u5F62\u304C\u60F3\u5B9A\u3068\u9055\u3044\u307E\u3059\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`);return body}function recordOf(body,what){const data=envelope(body,what)["data"];if(!isRecord(data)||typeof data["id"]!==
|
|
5
5
|
"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`);return data}function serverMessage(body){const message=isRecord(body)?body["message"]:void 0;return typeof message==="string"&&message!==""?[message]:[]}function text(value){return typeof value==="string"||typeof value==="number"?String(value):""}function integerValue(flag,raw,min,max=INT_MAX){const trimmed=raw.
|
|
6
6
|
trim();const value=/^\d+$/.test(trimmed)?Number(trimmed):Number.NaN;if(!Number.isSafeInteger(value)||value<min||value>max)throw new UsageError(`${flag} \u306F ${min} \u4EE5\u4E0A ${max} \u4EE5\u4E0B\u306E\u6574\u6570\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: ${raw}`);return value}var RULE_COLUMNS=["id","rule_name","prefix","digit_count","current_number","count_up_num","next_number","sort_order"];function nextNumber(rule,purchaseFormat){const current=rule["current_number"];const step=rule["\
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{contentTypeFor,inspectLocalFile,issued}from"./chunk-HNUBM24L.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-
|
|
3
|
+
import{contentTypeFor,inspectLocalFile,issued}from"./chunk-HNUBM24L.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-SBWCQAHT.js";import{checkUploadQuota}from"./chunk-2YNZ4MRT.js";import{readCsvFileText}from"./chunk-OHXZO5WK.js";import{featureLicenseGuidance}from"./chunk-V24LKF3V.js";import{CUSTOMERS_PATH,SALES_COMPANIES_PATH,isExactNumericId}from"./chunk-3WHD2YVF.js";import{isSafePathSegment}from"./chunk-GMBJTG6A.js";import{ApiError,
|
|
4
4
|
errorListMessages}from"./chunk-IF2K4PM5.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-IOGMOXYF.js";import{requireResolved,singleRef,withResolved}from"./chunk-LXIAOCUW.js";import{acknowledgement,isRecord,pick}from"./chunk-VTQAI52S.js";import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-UFND7FBC.js";import fs from"fs";import path from"path";function levelForbidden(licenseGuidance,levelGuidance){return body=>body?.error==="permission_denied"?licenseGuidance:levelGuidance}var COMPANY_LICENSE="\u53D6\u5F15\u5148\u3092\u6271\u3046\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\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";
|
|
5
5
|
var CUSTOMER_LICENSE=featureLicenseGuidance("\u9867\u5BA2\u7BA1\u7406");var COMPANY_WRITE_FORBIDDEN=levelForbidden(COMPANY_LICENSE,"\u9867\u5BA2\u306E\u4F5C\u6210\u30FB\u66F4\u65B0\u306B\u306F\u3001\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7DE8\u96C6\u8005\u300D\u4EE5\u4E0A\u304B\u3001\u8CA9\u58F2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u30E1\u30F3\u30D0\u30FC\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
6
|
var LEVEL_LABELS={admin:"\u7BA1\u7406\u8005",editor:"\u7DE8\u96C6\u8005",viewer:"\u95B2\u89A7\u8005",none:"\u306A\u3057"};var CHILD_DELETE_NEEDS="\u62C5\u5F53\u8005\u30FB\u5BFE\u5FDC\u5C65\u6B74\u306E\u524A\u9664\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";var CUSTOMER_DELETE_FORBIDDEN=levelForbidden(COMPANY_LICENSE,"\u9867\u5BA2\u306E\u524A\u9664\u306B\u306F\u3001\u4F01\u696D\u306E\u524A\u9664\u306B\u9867\u5BA2\u7BA1\u7406\u306E\u300C\u7BA1\u7406\u8005\u300D\u304B\u8CA9\u58F2\u7BA1\u7406\u306E\u300C\u30E1\u30F3\u30D0\u30FC\u300D\u4EE5\u4E0A\u3001\u62C5\u5F53\u8005\u30FB\u5BFE\u5FDC\u5C65\u6B74\u306E\u524A\u9664\u306B\u9867\u5BA2\u7BA1\u7406\u306E\u300C\u7BA1\u7406\u8005\u300D\u304C\u8981\u308A\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{CUSTOMER_FLAG,CUSTOMER_LICENSE,childForbidden,levelForbidden,prepareCustomerFlag}from"./chunk-
|
|
3
|
+
import{CUSTOMER_FLAG,CUSTOMER_LICENSE,childForbidden,levelForbidden,prepareCustomerFlag}from"./chunk-HS7EKE7M.js";import{inspectLocalFile}from"./chunk-HNUBM24L.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-SBWCQAHT.js";import{checkUploadQuota}from"./chunk-2YNZ4MRT.js";import{booleanText}from"./chunk-XDHLO54T.js";import{CUSTOMERS_PATH,isExactNumericId}from"./chunk-3WHD2YVF.js";import{isSafePathSegment}from"./chunk-GMBJTG6A.js";import{
|
|
4
4
|
ApiError}from"./chunk-IF2K4PM5.js";import{NotLoggedInError,SessionExpiredError}from"./chunk-XNLIEUAW.js";import{nonEmpty}from"./chunk-IOGMOXYF.js";import{requireResolved,withResolved}from"./chunk-LXIAOCUW.js";import{acknowledgement,isRecord,pick}from"./chunk-VTQAI52S.js";import{ApiResponseError,UsageError}from"./chunk-UFND7FBC.js";import fs from"fs";import path from"path";var CONTRACT_TYPES=["basic_contract","nda","other"];var CONTRACT_TYPE_HELP="basic_contract\uFF1D\u57FA\u672C\u5951\u7D04\u66F8 / nda\uFF1D\u6A5F\u5BC6\u4FDD\u6301\u5951\u7D04\u66F8 / other\uFF1D\u305D\u306E\u4ED6\u5951\u7D04\u66F8\u985E";var FILE_NAME_MAX_CHARS=255;var PDF_MAGIC="%PDF-";var CONTRACT_FIELDS=[{kind:"text",flag:"--name",key:"document_name",label:"\u66F8\u985E\u540D",maxChars:255,summary:"\u66F8\u985E\u540D\uFF08create \u3067\u306F\u5FC5\u9808\uFF09"},{kind:"enum",flag:"--type",key:"\
|
|
5
5
|
document_type",values:CONTRACT_TYPES,summary:`\u66F8\u985E\u7A2E\u5225\uFF08${CONTRACT_TYPE_HELP}\u30FBcreate \u3067\u306F\u5FC5\u9808\uFF09`}];var CONTRACT_COLUMNS=["document_id","company_id","document_type","document_name","current_version","updated_by_name","updated_at"];var VERSION_COLUMNS=["version_number","file_name","file_size","is_current","created_by_name","created_at"];var CASE_COLUMNS=["document_id","document_type_label","document_name","estimate_no","estimate_title","project_name","c\
|
|
6
6
|
urrent_version","updated_at"];var FILE_FLAG={name:"--file",summary:"\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3059\u308B PDF \u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\uFF08\u5FC5\u9808\uFF09",takesValue:true,placeholder:"<\u30D1\u30B9.pdf>"};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={
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{featureLicenseGuidance}from"./chunk-
|
|
3
|
+
import{featureLicenseGuidance}from"./chunk-V24LKF3V.js";import{isExactNumericId}from"./chunk-3WHD2YVF.js";import{nonEmpty}from"./chunk-IOGMOXYF.js";import{UsageError}from"./chunk-UFND7FBC.js";var PDF_PATH="/api/v2/sales/pdf";var FEATURE_DENIED="\u3053\u306E\u6A5F\u80FD\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093\u3002";function salesFeatureDenied(body){return body?.error==="permission_denied"||body?.error==="forbidden"&&body.error_description===FEATURE_DENIED}function pdfForbidden(body){if(salesFeatureDenied(body))return featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406");const reason=body?.error;if(typeof reason==="string"&&reason.endsWith(
|
|
4
4
|
"\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093")){return`${reason}\uFF08\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u7D10\u3065\u304F\u66F8\u985E\u306F\u305D\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3001\u7D10\u3065\u304B\u306A\u3044\u66F8\u985E\u306F\u4F5C\u6210\u8005\u30FB\u62C5\u5F53\u8005\u3068\u7BA1\u7406\u8005\u3060\u3051\u304C\u51FA\u529B\u3067\u304D\u307E\u3059\uFF09`}return void 0}var ESTIMATE={name:"estimate",label:"\u898B\u7A4D",noExample:"EST0000063",
|
|
5
5
|
defaultKind:"estimate",kinds:{estimate:{segment:"estimate",label:"\u898B\u7A4D\u66F8"},order:{segment:"order",label:"\u6CE8\u6587\u66F8"},"order-acceptance":{segment:"order-acceptance",label:"\u6CE8\u6587\u8ACB\u66F8"}}};var INVOICE={name:"invoice",label:"\u8ACB\u6C42",noExample:"INV0000170",defaultKind:"invoice",kinds:{invoice:{segment:"invoice",label:"\u8ACB\u6C42\u66F8"},delivery:{segment:"delivery",label:"\u7D0D\u54C1\u66F8"},inspection:{segment:"inspection",label:"\u691C\u53CE\u66F8"}}};var PURCHASE={
|
|
6
6
|
name:"purchase",label:"\u4ED5\u5165",defaultKind:"order",kinds:{order:{segment:"purchase-order",label:"\u6CE8\u6587\u66F8"},"order-acceptance":{segment:"purchase-order-acceptance",label:"\u6CE8\u6587\u8ACB\u66F8"}}};var OUT_FLAG={name:"--out",summary:"\u66F8\u304D\u51FA\u3057\u5148\u306E\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9\uFF08\u5FC5\u9808\uFF09",takesValue:true,placeholder:"<\u30D1\u30B9.pdf>"};var FORCE_FLAG={name:"--force",summary:"\u65E2\u5B58\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u4E0A\u66F8\u304D\u3059\u308B",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{CommandModelMissingError,MAX_REPORTED_VIOLATIONS,loadCommandModelDomain,loadCommandModelIndex,validateBody,validateQuery}from"./chunk-NZ7WI4RZ.js";import{redactSecretValues,redactSecrets}from"./chunk-
|
|
3
|
+
import{CommandModelMissingError,MAX_REPORTED_VIOLATIONS,loadCommandModelDomain,loadCommandModelIndex,validateBody,validateQuery}from"./chunk-NZ7WI4RZ.js";import{redactSecretValues,redactSecrets}from"./chunk-AUAZP2G7.js";import{isSafePathSegment}from"./chunk-GMBJTG6A.js";import{ApiError,TwpApiClient,appendQuery}from"./chunk-IF2K4PM5.js";import{DEFAULT_MAX_TOKENS,emptyUsage}from"./chunk-6QOT7CHX.js";import{isPrivateTwpHome,isTrustworthyCacheFile,writePrivateFileAtomic}from"./chunk-D233KKXW.js";
|
|
4
4
|
import{AuthSession,NotLoggedInError,SessionExpiredError,withFileLock}from"./chunk-XNLIEUAW.js";import{MODES,applyPermissionMode,checkPermission,isModeId,setActiveModes}from"./chunk-NAUH75MM.js";import{isForceOnly,killProcessTree,system32}from"./chunk-N2UVRM3Z.js";import{findExecutable,isWindowsDriveAbsolute}from"./chunk-PMOUHEJQ.js";import{httpFetch}from"./chunk-J7QYPKVK.js";import{configReadDirs,ensureTwpHome,twpHomeDir}from"./chunk-RZVI6PMW.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import fs2 from"fs";import path3 from"path";import os2 from"os";import{realpathSync}from"fs";import{homedir}from"os";import{dirname,isAbsolute,relative,resolve,sep}from"path";var PathDeniedError=class extends Error{constructor(message){super(message);this.name="PathDeniedError"}};function resolveToolPath(input,cwd,home=homedir()){if(typeof input!=="string"||input.trim()===""){throw new PathDeniedError("path must be a non-empty string")}const expanded=expandHome(input,home);const abs=isAbsolute(expanded)?resolve(expanded):resolve(cwd,expanded);const root=realOrSelf(resolve(cwd));assertInside(abs,resolve(cwd),abs);assertNotSecret(abs,home);const real=realOrSelf(abs);if(real!==
|
|
5
5
|
abs){assertInside(real,root,abs);assertNotSecret(real,home)}return abs}function realToolPath(input,cwd,home=homedir()){return realOrSelf(resolveToolPath(input,cwd,home))}function assertInside(target,root,reported){const rel=relative(root,target);const outside=rel===".."||rel.startsWith(`..${sep}`)||isAbsolute(rel);if(outside){throw new PathDeniedError(`path escapes the working directory (${reported}). Only paths under ${root} can be accessed.`)}}function realOrSelf(target){let current=target;const rest=[];
|
|
6
6
|
for(;;){try{const real=realpathSync(current);return rest.length===0?real:resolve(real,...rest.reverse())}catch{const parent=dirname(current);if(parent===current)return target;rest.push(current.slice(parent.length+1));current=parent}}}function assertNotSecret(absPath,home=homedir(),env=process.env){const reason=secretReason(absPath,home,env);if(reason!==null)throw new PathDeniedError(`refusing to access ${absPath}: ${reason}`)}function secretReason(absPath,_home=homedir(),env=process.env){const lower=absPath.
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{redactSecretValues,redactSecrets}from"./chunk-
|
|
3
|
+
import{redactSecretValues,redactSecrets}from"./chunk-AUAZP2G7.js";import{formatOutput}from"./chunk-K2ONOH3L.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";function renderOutput(value,format,noRedact=false){if(noRedact)return formatOutput(value,format);return redactSecrets(formatOutput(redactSecretValues(value),format))}function renderDocument(text,noRedact=false){const visible=stripTerminalControls(text);return noRedact?visible:redactSecrets(visible)}export{renderOutput,renderDocument};
|
|
@@ -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-ORUDW52G.js";import{WORKFLOWS_PATH}from"./chunk-
|
|
3
|
+
import{readBody}from"./chunk-ORUDW52G.js";import{WORKFLOWS_PATH}from"./chunk-3WHD2YVF.js";import{UUID_RE,isSafePathSegment}from"./chunk-GMBJTG6A.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-IOGMOXYF.js";import{requireResolved,singleRef,withResolved}from"./chunk-LXIAOCUW.js";import{acknowledgement,isRecord,pick}from"./chunk-VTQAI52S.js";import{ApiResponseError,UsageError}from"./chunk-UFND7FBC.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_\
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{salesFeatureDenied}from"./chunk-
|
|
3
|
+
import{salesFeatureDenied}from"./chunk-L7IGGC7H.js";import{featureLicenseGuidance}from"./chunk-V24LKF3V.js";import{charCount,readBody}from"./chunk-ORUDW52G.js";import{isExactNumericId}from"./chunk-3WHD2YVF.js";import{repeatedValues}from"./chunk-F7K37QG6.js";import{ApiError}from"./chunk-IF2K4PM5.js";import{NotLoggedInError,SessionExpiredError}from"./chunk-XNLIEUAW.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,envelopePaging,nonEmpty,positiveInteger}from"./chunk-IOGMOXYF.js";
|
|
4
4
|
import{requireResolved,withResolved}from"./chunk-LXIAOCUW.js";import{isRecord,pick}from"./chunk-VTQAI52S.js";import{ApiRejectedError,ApiResponseError,NetworkError,UsageError}from"./chunk-UFND7FBC.js";var SALES_PATH="/api/v2/sales";var REASONS_PATH=`${SALES_PATH}/ai-review-reasons`;function documentForbidden(body){if(salesFeatureDenied(body))return featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406");const reason=body?.error;if(typeof reason==="string"&&reason.endsWith("\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093")){return`${reason}\uFF08\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u7D10\u3065\u304F\u66F8\u985E\u306F\u305D\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3001\u7D10\u3065\u304B\u306A\u3044\u66F8\u985E\u306F\u4F5C\u6210\u8005\u30FB\u62C5\u5F53\u8005\u3068\u7BA1\u7406\u8005\u3060\u3051\u304C\u6271\u3048\u307E\u3059\uFF09`}
|
|
5
5
|
return void 0}function reasonsForbidden(body){if(body?.error==="permission_denied")return featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406");return"\u7406\u7531\u306E\u6A2A\u65AD\u4E00\u89A7\u30FB\u6587\u6848\u751F\u6210\u30FBPR \u4F5C\u6210\u306F\u8CA9\u58F2\u7BA1\u7406\u306E\u7BA1\u7406\u8005\u3060\u3051\u304C\u4F7F\u3048\u307E\u3059\uFF08\u66F8\u985E\u3092\u8DE8\u3044\u3067\u7406\u7531\u3092\u8AAD\u3080\u305F\u3081\uFF09\u3002\u30C6\u30CA\u30F3\u30C8\u304C\u8CA9\u58F2\u7BA1\u7406\u3092\u5951\u7D04\u3057\u3066\u3044\u308B\u304B\u30FB\u3042\u306A\u305F\u306E\u8CA9\u58F2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7BA1\u7406\u8005\u300D\u304B\u3092\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002"}
|
|
6
6
|
var ESTIMATE={name:"estimate",label:"\u898B\u7A4D",segment:"estimates"};var INVOICE={name:"invoice",label:"\u8ACB\u6C42",segment:"invoices"};var CONTRACT={name:"contract",label:"\u53D6\u5F15\u5951\u7D04",segment:"contracts"};var JUDGMENTS={no_issue:"\u78BA\u8A8D\u3057\u305F\u304C\u554F\u984C\u306A\u3044\u3068\u5224\u65AD\u3057\u305F",corrected:"\u6307\u6458\u3092\u53D7\u3051\u3066\u66F8\u985E\u3092\u4FEE\u6B63\u3057\u305F",not_applicable:"\u3053\u306E\u6848\u4EF6\u306B\u306F\u5F53\u3066\u306F\u307E\u3089\u306A\u3044\u6307\u6458\u3060\u3068\u5224\u65AD\u3057\u305F"};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{readCsvFileText}from"./chunk-OHXZO5WK.js";import{featureLicenseGuidance,invoiceFilters}from"./chunk-
|
|
3
|
+
import{readCsvFileText}from"./chunk-OHXZO5WK.js";import{featureLicenseGuidance,invoiceFilters}from"./chunk-V24LKF3V.js";import{boundedText,isoDate}from"./chunk-XDHLO54T.js";import{readBody}from"./chunk-ORUDW52G.js";import{SALES_DEPOSITS_PATH,isExactNumericId,resolveNamed}from"./chunk-3WHD2YVF.js";import{repeatedValues}from"./chunk-F7K37QG6.js";import{ApiError}from"./chunk-IF2K4PM5.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,PAGE_NUMBER_PAGING_HELP,
|
|
4
4
|
STABLE_PAGE_ORDER,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-IOGMOXYF.js";import{requireResolved,withResolved}from"./chunk-LXIAOCUW.js";import{acknowledgement,isRecord,pick}from"./chunk-VTQAI52S.js";import{ApiResponseError,UsageError}from"./chunk-UFND7FBC.js";var PATH=SALES_DEPOSITS_PATH;function salesAdminForbidden(what){return body=>body?.error==="permission_denied"?featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406"):`${what}\u306B\u306F\u8CA9\u58F2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7BA1\u7406\u8005\u300D\u3067\u3042\u308B\u3053\u3068\u304C\u8981\u308A\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`}var FORBIDDEN=salesAdminForbidden("\u5165\u91D1");var ALLOCATION_STATUSES={
|
|
5
5
|
allocated:"\u5F15\u5F53\u6E08",shortage:"\u672A\u5165\u91D1\u6709",excess:"\u5165\u91D1\u8D85\u904E\u6709",transfer_fee_resolved:"\u624B\u6570\u6599\u51E6\u7406\u6E08"};var EXCESS_REASONS={transfer_fee:"\u632F\u8FBC\u624B\u6570\u6599",agency_fee:"\u4EE3\u884C\u624B\u6570\u6599\uFF08\u53E3\u5EA7\u632F\u66FF \u57FA\u672C\u5229\u7528\u6599\uFF09",partial:"\u4E00\u90E8\u5165\u91D1",offset:"\u76F8\u6BBA",overpayment:"\u904E\u5165\u91D1",other:"\u305D\u306E\u4ED6"};var EXCESS_TAX_CATEGORIES={taxable_purchase_10:"\
|
|
6
6
|
\u8AB2\u7A0E\u4ED5\u5165 10%",not_applicable:"\u5BFE\u8C61\u5916"};var BULK_MAX_ROWS=100;var PLAN_MAX_ITEMS=50;var PLAN_MAX_ALLOCATIONS=100;var FILE_MAX_BYTES=1024*1024;var EXCESS_NOTE_MAX_CHARS=255;var PLAN_MEMO_MAX_CHARS=1e3;var CONTENT_MAX_CHARS=1e6;var LIST_COLUMNS=["id","deposit_date","company_name","payee_name","deposit_amount","allocated_amount","unallocated_amount","allocation_status"];var GET_COLUMNS=[...LIST_COLUMNS,"memo","excess_reason","excess_amount","excess_note","excess_tax_categ\
|