makea-cli 0.2.6__py3-none-any.whl → 0.2.8__py3-none-any.whl

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.
makea_cli/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.2.6"
1
+ __version__ = "0.2.8"
makea_cli/api_client.py CHANGED
@@ -1044,9 +1044,16 @@ def supplier_list_quote_requests(*, quote_request_id: str | None = None) -> Any:
1044
1044
  return get_json("/supplier/quote_requests", params=params)
1045
1045
 
1046
1046
 
1047
- def supplier_get_quote_request_tech_spec(quote_request_id: str) -> Any:
1048
- """GET /supplier/quote_requests/{id}/technical-specifications — the pack as the factory sees it."""
1049
- return get_json(f"/supplier/quote_requests/{quote_request_id}/technical-specifications")
1047
+ def supplier_get_quote_request_tech_spec(quote_request_id: str, *, readable: bool = False) -> Any:
1048
+ """GET /supplier/quote_requests/{id}/technical-specifications — the pack as the factory sees it.
1049
+
1050
+ ``readable`` asks for ``view=readable``: section, field label, value and the
1051
+ essentials still blank, instead of the full payload the quote form renders.
1052
+ """
1053
+ params = {"view": "readable"} if readable else None
1054
+ return get_json(
1055
+ f"/supplier/quote_requests/{quote_request_id}/technical-specifications", params=params
1056
+ )
1050
1057
 
1051
1058
 
1052
1059
  def supplier_list_production_orders(*, quote_request_id: str | None = None) -> Any:
@@ -72,10 +72,22 @@ def register(app: typer.Typer) -> None:
72
72
  )
73
73
  def get_pack(
74
74
  quote_request_id: str = typer.Argument(..., help="The quote request whose pack to read."),
75
+ readable: bool = typer.Option(
76
+ False,
77
+ "--readable",
78
+ help=(
79
+ "Only what a person reads: each section's filled fields (label and "
80
+ "value) and the essential fields still blank. The full payload runs "
81
+ "to 100KB+ on a large pack."
82
+ ),
83
+ ),
75
84
  ) -> None:
76
85
  """Read the technical specification behind an RFQ."""
77
86
  print_json_or_exit(
78
- console, lambda: api_client.supplier_get_quote_request_tech_spec(quote_request_id)
87
+ console,
88
+ lambda: api_client.supplier_get_quote_request_tech_spec(
89
+ quote_request_id, readable=readable
90
+ ),
79
91
  )
80
92
 
81
93
  @command(
@@ -323,7 +323,7 @@ def register(app: typer.Typer) -> None:
323
323
  api="POST /admin/tracking/carrier_status",
324
324
  side_effects=[
325
325
  "moves the order to delivered when the status says so",
326
- "emails and messages the designer, supplier and admins as the 17track webhook did",
326
+ "emails and messages the designer, supplier and admins as the 17track webhook did (none with --silent)",
327
327
  ],
328
328
  approval="ask",
329
329
  idempotent=True,
@@ -349,13 +349,19 @@ def register(app: typer.Typer) -> None:
349
349
  time_utc: str | None = typer.Option(
350
350
  None, "--time", help="Latest event time, ISO 8601 UTC."
351
351
  ),
352
+ silent: bool = typer.Option(
353
+ False,
354
+ "--silent",
355
+ help="Change state only: no email, WhatsApp or WeChat to anyone. For parcels that landed long ago.",
356
+ ),
352
357
  ) -> None:
353
358
  """
354
359
  Tell Makea what the carrier says about one parcel.
355
360
 
356
361
  Output: JSON from the webhook path: success, status, and one entry per
357
362
  order the number was fanned out to. Repeating a Delivered update is a
358
- no-op (no second email).
363
+ no-op (no second email). --silent moves the orders without telling
364
+ anyone.
359
365
  """
360
366
  track_info = {
361
367
  "latest_status": {"status": status, "sub_status": sub_status},
@@ -374,6 +380,7 @@ def register(app: typer.Typer) -> None:
374
380
  "order_id": order_id,
375
381
  "tracking_number": tracking_number,
376
382
  "track_info": track_info,
383
+ "notify": not silent,
377
384
  },
378
385
  ),
379
386
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: makea-cli
3
- Version: 0.2.6
3
+ Version: 0.2.8
4
4
  Summary: Makea admin CLI (browser login + Makea admin HTTP API)
5
5
  Requires-Python: >=3.10
6
6
  Requires-Dist: click<9,>=8.1
@@ -131,7 +131,7 @@ exit code:`0` 成功 · `2` 用法错 · `3` 未登录或身份与 persona 不
131
131
  | `makea-cli admin update quote-request` | write(ask) | `PATCH /admin/quote_requests/{quote_request_id}/update` | set a quote request's stage, status and/or due date. Only what you pass is changed. This is the door that unblocks a … | `update-quote-request` |
132
132
  | `makea-cli admin update supplier` | write(ask) | `PUT /admin/supplier/update_supplier` | update an existing supplier from a JSON file (admin). Run `makea-cli get-supplier-profile-schema` FIRST to get the fi… | `update-supplier` |
133
133
  | `makea-cli admin update tech-spec` | write(ask) | `POST /admin/products/{id}/technical-specifications` | persist specs from a JSON file. | `save-product-tech-spec` |
134
- | `makea-cli admin update tracking-status` | write(ask) | `POST /admin/tracking/carrier_status` | apply a carrier status looked up by hand (tracking-sweep skill) to one order. Runs the 17track webhook path: status, fan-out, delivered emails. | — |
134
+ | `makea-cli admin update tracking-status` | write(ask) | `POST /admin/tracking/carrier_status` | apply a carrier status looked up by hand (tracking-sweep skill) to one order. Runs the 17track webhook path: status, fan-out, delivered emails (--silent: state only). | — |
135
135
  | `makea-cli admin update user` | write(ask) | `PUT /admin/user-profiles/{user_id}/update` | admin updates DynamoDB user profile fields and/or Cognito custom:userType. Allowed --user-type values: "Fashion brand… | `update-user-profile` |
136
136
  | `makea-cli admin upload financial-document` | write(auto) | `POST /admin/products/{product_id}/financial_documents` | upload one or more files to AWS S3 and return financial document metadata. | `upload-financial-documents` |
137
137
  | `makea-cli admin upload link-document` | write(auto) | `POST /admin/upload_link_document` | upload a file to AWS S3 and return document domain metadata for reuse as input in other commands. | `upload-link-document` |
@@ -197,7 +197,7 @@ exit code:`0` 成功 · `2` 用法错 · `3` 未登录或身份与 persona 不
197
197
  |---|---|---|---|---|
198
198
  | `makea-cli supplier create note` | write(ask) | `POST /supplier/products/{id}/channels/{key}/notes` | post a message into a product channel you are part of. | — |
199
199
  | `makea-cli supplier download document` | read | `GET /supplier/document/download` | save a document you are allowed to read. | — |
200
- | `makea-cli supplier get pack` | read | `GET /supplier/quote_requests/{id}/technical-specifications` | the tech pack for an RFQ, as the factory is allowed to see it. | — |
200
+ | `makea-cli supplier get pack` | read | `GET /supplier/quote_requests/{id}/technical-specifications` | the tech pack for an RFQ, as the factory is allowed to see it (`--readable`: labels, values and blank essentials only). | — |
201
201
  | `makea-cli supplier get pack-changes` | read | `GET /supplier/products/{product_id}/specification-change-history` | what changed in the pack since you quoted, field by field. | — |
202
202
  | `makea-cli supplier get profile` | read | `GET /supplier/profile` | your own supplier profile. | — |
203
203
  | `makea-cli supplier get rfq` | read | `GET /supplier/quote_requests` | one RFQ in full. | — |
@@ -1,6 +1,6 @@
1
- makea_cli/__init__.py,sha256=Oz5HbwHMyE87nmwV80AZzpkJPf-wBg7eDuJr_BXZkhU,22
1
+ makea_cli/__init__.py,sha256=G6Dbxq2ws-1ZAXwDD8q0KWueYtso_Y6Uyvtj8sRWsPI,22
2
2
  makea_cli/__main__.py,sha256=AkQjxWfKE3w9iD1d6I-2Zqvv2t9cct0oYyFF0UiA-Z0,144
3
- makea_cli/api_client.py,sha256=Q17LkGpWs_W87Y8ArFBT2l8LfBfsc_OUGPazOaJhQas,50484
3
+ makea_cli/api_client.py,sha256=dzMCH9KzY7NJxoop-WVyqm_JQ3eU3hvFh_ic2Zk-evc,50763
4
4
  makea_cli/auth_pkce.py,sha256=iXSyJ7DM3qVuj-3FwPiqM25CxXz9ebFs9FNthZdw3ws,7315
5
5
  makea_cli/broker.py,sha256=5O650nAdRuF-u9E1MuVM2jVv796iBdxJGIaJasxHij0,3019
6
6
  makea_cli/config.py,sha256=lVPsp-44V9pPyUNbcG-uQNV8srCrBVMZnb0HF38Paks,2906
@@ -27,13 +27,13 @@ makea_cli/commands/document/cmd.py,sha256=IqjzGoTYXp1RbTIYY1MSEqX93btK4eESDTX40C
27
27
  makea_cli/commands/email/__init__.py,sha256=EWMqMTgZK1GQDW7-9RGVSGU-CvaHTARjXZL18Hdj80I,74
28
28
  makea_cli/commands/email/cmd.py,sha256=s22JQjJ7bPdpgBaL7Tmr8hx80ki_JN_iGQtUekXmmdo,4177
29
29
  makea_cli/commands/factory/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
- makea_cli/commands/factory/cmd.py,sha256=ae2KGxnzoY1i7C4miVIk52IQZm53pOfePnJa9zeL_sI,14724
30
+ makea_cli/commands/factory/cmd.py,sha256=ZMJ2UDSAI3vINvvltrH8VjSPWdsmUquVHQlANyb-G9Y,15131
31
31
  makea_cli/commands/library/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
32
  makea_cli/commands/library/cmd.py,sha256=eXZa6iLyPaoEWtRd-UmhRT6Ox-zlfs89gJqGn-IPuSU,11187
33
33
  makea_cli/commands/metrics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
34
  makea_cli/commands/metrics/cmd.py,sha256=mXMSy3zHgJXzqLNy6OrdQqySk9COknPKVDf_SQQdFIA,7662
35
35
  makea_cli/commands/orders/__init__.py,sha256=6WKPqX02e0RRPmItPIBJ0TA4_yDI2PVvBDkAiMQu9rU,75
36
- makea_cli/commands/orders/cmd.py,sha256=_5s_G6vSEvKXYbfZifX41r1s1HX1Cv7CSPWJ0zeXdjY,13022
36
+ makea_cli/commands/orders/cmd.py,sha256=A-4HA6WqAaLdqybUVRZRrhCE1C2RGwV66d7Vk6Nka0o,13347
37
37
  makea_cli/commands/product/__init__.py,sha256=mfdonFmpbddDSlJq6JWNWgNpM6aOpKtZr-3FJ6scrwg,76
38
38
  makea_cli/commands/product/cmd.py,sha256=W0oVTZvsK1QWZWv2x6NC26_JQMXrO16O8gYuKYPWC08,7101
39
39
  makea_cli/commands/production/__init__.py,sha256=Whn5ziwVMt4jzcokiFWLhWIpRLYC-ldnjZgAzeQ3We4,79
@@ -41,7 +41,7 @@ makea_cli/commands/production/cmd.py,sha256=s6fVAGzOvokF6Va5WKGEA2vw2x2hDQ3PrsF0
41
41
  makea_cli/commands/production/pricing_spec.py,sha256=xGbj7-ps3PcKuU6Oc59A70b62FjF6Awhr5IY3ymZveU,27174
42
42
  makea_cli/commands/supplier/__init__.py,sha256=qfQDeQdQ-B7I_uwFVfcp1vXFUTL4fAcNLu3ipsZ7dfs,77
43
43
  makea_cli/commands/supplier/cmd.py,sha256=crRCy9WfhkryHMIL3iufoiT90_SG3-mKChAtdhd06uc,58076
44
- makea_cli-0.2.6.dist-info/METADATA,sha256=26l-95HysQaWiBsSEMcpwTvruyaG-uRrFXxg6PQA8PI,31580
45
- makea_cli-0.2.6.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
46
- makea_cli-0.2.6.dist-info/entry_points.txt,sha256=4x-lbVa1jBbNlkNq7L-rYyfRh2spZmc3BLIzP-Dl-Qk,50
47
- makea_cli-0.2.6.dist-info/RECORD,,
44
+ makea_cli-0.2.8.dist-info/METADATA,sha256=OzSfopJ02Nfd_htjbm1nKlEfRbvesQkePfp1C5lDLlo,31660
45
+ makea_cli-0.2.8.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
46
+ makea_cli-0.2.8.dist-info/entry_points.txt,sha256=4x-lbVa1jBbNlkNq7L-rYyfRh2spZmc3BLIzP-Dl-Qk,50
47
+ makea_cli-0.2.8.dist-info/RECORD,,