makea-cli 0.2.7__tar.gz → 0.2.8__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. {makea_cli-0.2.7 → makea_cli-0.2.8}/CHANGELOG.md +9 -0
  2. {makea_cli-0.2.7 → makea_cli-0.2.8}/PKG-INFO +2 -2
  3. {makea_cli-0.2.7 → makea_cli-0.2.8}/README.md +1 -1
  4. makea_cli-0.2.8/makea_cli/__init__.py +1 -0
  5. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/api_client.py +10 -3
  6. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/factory/cmd.py +13 -1
  7. {makea_cli-0.2.7 → makea_cli-0.2.8}/pyproject.toml +1 -1
  8. {makea_cli-0.2.7 → makea_cli-0.2.8}/tests/golden_manifest.json +12 -0
  9. makea_cli-0.2.7/makea_cli/__init__.py +0 -1
  10. {makea_cli-0.2.7 → makea_cli-0.2.8}/.claude/skills/create-supplier-profile/SKILL.md +0 -0
  11. {makea_cli-0.2.7 → makea_cli-0.2.8}/.claude/skills/lark-cli-setup/SKILL.md +0 -0
  12. {makea_cli-0.2.7 → makea_cli-0.2.8}/.claude/skills/link-supplier-user/SKILL.md +0 -0
  13. {makea_cli-0.2.7 → makea_cli-0.2.8}/.claude/skills/makea-cli-setup/SKILL.md +0 -0
  14. {makea_cli-0.2.7 → makea_cli-0.2.8}/.claude/skills/payment-revenue-report/SKILL.md +0 -0
  15. {makea_cli-0.2.7 → makea_cli-0.2.8}/.claude/skills/supplier-user-id-migration/SKILL.md +0 -0
  16. {makea_cli-0.2.7 → makea_cli-0.2.8}/.gitignore +0 -0
  17. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea-collection-upload/SKILL.md +0 -0
  18. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea-collection-upload/scripts/create_products.py +0 -0
  19. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/__main__.py +0 -0
  20. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/auth_pkce.py +0 -0
  21. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/broker.py +0 -0
  22. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/__init__.py +0 -0
  23. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/_util.py +0 -0
  24. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/analytics/__init__.py +0 -0
  25. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/analytics/cmd.py +0 -0
  26. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/auth/__init__.py +0 -0
  27. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/auth/cmd.py +0 -0
  28. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/brand/__init__.py +0 -0
  29. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/brand/cmd.py +0 -0
  30. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/designer/__init__.py +0 -0
  31. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/designer/cmd.py +0 -0
  32. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/directory/__init__.py +0 -0
  33. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/directory/cmd.py +0 -0
  34. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/document/__init__.py +0 -0
  35. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/document/cmd.py +0 -0
  36. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/email/__init__.py +0 -0
  37. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/email/cmd.py +0 -0
  38. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/factory/__init__.py +0 -0
  39. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/library/__init__.py +0 -0
  40. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/library/cmd.py +0 -0
  41. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/metrics/__init__.py +0 -0
  42. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/metrics/cmd.py +0 -0
  43. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/orders/__init__.py +0 -0
  44. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/orders/cmd.py +0 -0
  45. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/product/__init__.py +0 -0
  46. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/product/cmd.py +0 -0
  47. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/production/__init__.py +0 -0
  48. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/production/cmd.py +0 -0
  49. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/production/pricing_spec.py +0 -0
  50. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/supplier/__init__.py +0 -0
  51. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/commands/supplier/cmd.py +0 -0
  52. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/config.py +0 -0
  53. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/errors.py +0 -0
  54. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/identity.py +0 -0
  55. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/main.py +0 -0
  56. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/output.py +0 -0
  57. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/posthog_client.py +0 -0
  58. {makea_cli-0.2.7 → makea_cli-0.2.8}/makea_cli/registry.py +0 -0
  59. {makea_cli-0.2.7 → makea_cli-0.2.8}/npm/makea-cli/README.md +0 -0
  60. {makea_cli-0.2.7 → makea_cli-0.2.8}/npm/makea-cli/makea-cli.mjs +0 -0
  61. {makea_cli-0.2.7 → makea_cli-0.2.8}/npm/makea-cli/package.json +0 -0
  62. {makea_cli-0.2.7 → makea_cli-0.2.8}/tests/test_broker.py +0 -0
  63. {makea_cli-0.2.7 → makea_cli-0.2.8}/tests/test_output_contract.py +0 -0
  64. {makea_cli-0.2.7 → makea_cli-0.2.8}/tests/test_persona_commands.py +0 -0
  65. {makea_cli-0.2.7 → makea_cli-0.2.8}/tests/test_registry.py +0 -0
  66. {makea_cli-0.2.7 → makea_cli-0.2.8}/uv.lock +0 -0
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.8
4
+
5
+ - `supplier get pack <quote_request_id> --readable`: the pack as a person reads
6
+ it, each section's filled fields (label and value) and the essential fields
7
+ still blank, instead of the full payload the quote form renders (100KB+ on a
8
+ large pack). For Beeboo acting for a factory through the CLI. Needs the
9
+ backend's `view=readable`; `supplier get pack` also no longer needs the
10
+ backend to be told the product (it is read off the quote request).
11
+
3
12
  ## 0.2.7
4
13
 
5
14
  - `admin update tracking-status ... --silent`: move the orders without
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: makea-cli
3
- Version: 0.2.7
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
@@ -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. | — |
@@ -185,7 +185,7 @@ exit code:`0` 成功 · `2` 用法错 · `3` 未登录或身份与 persona 不
185
185
  |---|---|---|---|---|
186
186
  | `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. | — |
187
187
  | `makea-cli supplier download document` | read | `GET /supplier/document/download` | save a document you are allowed to read. | — |
188
- | `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. | — |
188
+ | `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). | — |
189
189
  | `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. | — |
190
190
  | `makea-cli supplier get profile` | read | `GET /supplier/profile` | your own supplier profile. | — |
191
191
  | `makea-cli supplier get rfq` | read | `GET /supplier/quote_requests` | one RFQ in full. | — |
@@ -0,0 +1 @@
1
+ __version__ = "0.2.8"
@@ -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(
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "makea-cli"
7
- version = "0.2.7"
7
+ version = "0.2.8"
8
8
  description = "Makea admin CLI (browser login + Makea admin HTTP API)"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -6848,6 +6848,18 @@
6848
6848
  "multiple": false,
6849
6849
  "default": null,
6850
6850
  "help": "The quote request whose pack to read."
6851
+ },
6852
+ {
6853
+ "name": "readable",
6854
+ "kind": "option",
6855
+ "opts": [
6856
+ "--readable"
6857
+ ],
6858
+ "type": "flag",
6859
+ "required": false,
6860
+ "multiple": false,
6861
+ "default": false,
6862
+ "help": "Only what a person reads: each section's filled fields (label and value) and the essential fields still blank. The full payload runs to 100KB+ on a large pack."
6851
6863
  }
6852
6864
  ]
6853
6865
  },
@@ -1 +0,0 @@
1
- __version__ = "0.2.7"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes