flowbase-cli 0.1.19__tar.gz → 0.1.20__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.
- {flowbase_cli-0.1.19/src/flowbase_cli.egg-info → flowbase_cli-0.1.20}/PKG-INFO +3 -1
- flowbase_cli-0.1.19/PKG-INFO → flowbase_cli-0.1.20/README.md +2 -9
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/pyproject.toml +1 -1
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/src/flowbase_cli/__init__.py +1 -1
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/src/flowbase_cli/endpoints.py +10 -3
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/src/flowbase_cli/main.py +3 -0
- flowbase_cli-0.1.19/README.md → flowbase_cli-0.1.20/src/flowbase_cli.egg-info/PKG-INFO +11 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/setup.cfg +0 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/src/flowbase_cli/guide.py +0 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/src/flowbase_cli.egg-info/SOURCES.txt +0 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/src/flowbase_cli.egg-info/dependency_links.txt +0 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/src/flowbase_cli.egg-info/entry_points.txt +0 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/src/flowbase_cli.egg-info/top_level.txt +0 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/tests/test_autonomy.py +0 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/tests/test_cli.py +0 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/tests/test_iframes.py +0 -0
- {flowbase_cli-0.1.19 → flowbase_cli-0.1.20}/tests/test_recent_commands.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: flowbase-cli
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.20
|
|
4
4
|
Summary: Command line client for the FlowBase OpenAPI
|
|
5
5
|
Author: DeepFlowAI
|
|
6
6
|
License: Apache-2.0
|
|
@@ -356,6 +356,8 @@ Matching uses saved current-record values. Empty matching inputs return `pending
|
|
|
356
356
|
|
|
357
357
|
`flowbase docs catalogs page-value-rules` describes authoring and the edit sequence. Page snapshots support `setFieldValue` and `setDefaultFieldValue`; sources can traverse up to five single-record relations. `pages evaluate` continues to preview field states and component visibility only.
|
|
358
358
|
|
|
359
|
+
Create and detail Page actions accept an optional explicit `conversion`: `mapOptions` with `mappings: [{sourceOptionId, targetOptionId}]`, `copyOptions` for the same multiple-select definition through a relation, `truncateDate` for lower date precision, or `extractDate` for datetime → date in Asia/Shanghai. Read the catalog for the complete contract. Mappings use stable identities, never option names. Partial mappings warn; an unmapped runtime value fails the entire action. Disabled rules may retain inactive targets but must retain valid identities. Ordinary record writes remain strict and do not implicitly execute these conversions.
|
|
360
|
+
|
|
359
361
|
```bash
|
|
360
362
|
flowbase records get OBJECT RECORD
|
|
361
363
|
flowbase records page-value-context OBJECT RECORD
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: flowbase-cli
|
|
3
|
-
Version: 0.1.19
|
|
4
|
-
Summary: Command line client for the FlowBase OpenAPI
|
|
5
|
-
Author: DeepFlowAI
|
|
6
|
-
License: Apache-2.0
|
|
7
|
-
Requires-Python: >=3.11
|
|
8
|
-
Description-Content-Type: text/markdown
|
|
9
|
-
|
|
10
1
|
# FlowBase CLI
|
|
11
2
|
|
|
12
3
|
`flowbase` is the official command line client for the FlowBase OpenAPI. It manages apps, objects, fields, views, custom pages, workflows, approval flows, dashboards, business records, roles, and configuration versions across the three FlowBase environments.
|
|
@@ -356,6 +347,8 @@ Matching uses saved current-record values. Empty matching inputs return `pending
|
|
|
356
347
|
|
|
357
348
|
`flowbase docs catalogs page-value-rules` describes authoring and the edit sequence. Page snapshots support `setFieldValue` and `setDefaultFieldValue`; sources can traverse up to five single-record relations. `pages evaluate` continues to preview field states and component visibility only.
|
|
358
349
|
|
|
350
|
+
Create and detail Page actions accept an optional explicit `conversion`: `mapOptions` with `mappings: [{sourceOptionId, targetOptionId}]`, `copyOptions` for the same multiple-select definition through a relation, `truncateDate` for lower date precision, or `extractDate` for datetime → date in Asia/Shanghai. Read the catalog for the complete contract. Mappings use stable identities, never option names. Partial mappings warn; an unmapped runtime value fails the entire action. Disabled rules may retain inactive targets but must retain valid identities. Ordinary record writes remain strict and do not implicitly execute these conversions.
|
|
351
|
+
|
|
359
352
|
```bash
|
|
360
353
|
flowbase records get OBJECT RECORD
|
|
361
354
|
flowbase records page-value-context OBJECT RECORD
|
|
@@ -1393,8 +1393,8 @@ PAGE_RULES = {
|
|
|
1393
1393
|
"lookup.department": ("eq", "neq", "in", "not_in", "is_empty", "is_not_empty"),
|
|
1394
1394
|
},
|
|
1395
1395
|
"actions": (
|
|
1396
|
-
{"type": "setDefaultFieldValue", "pageTypes": ("detail"
|
|
1397
|
-
{"type": "setFieldValue", "pageTypes": ("detail"
|
|
1396
|
+
{"type": "setDefaultFieldValue", "pageTypes": ("create", "detail"), "requiredKeys": ("type", "fieldId", "sourceFieldId", "sourcePath"), "optionalKeys": ("conversion",), "maxSourceHops": 5},
|
|
1397
|
+
{"type": "setFieldValue", "pageTypes": ("create", "detail"), "requiredKeys": ("type", "fieldId", "sourceFieldId", "sourcePath"), "optionalKeys": ("conversion",), "maxSourceHops": 5},
|
|
1398
1398
|
{
|
|
1399
1399
|
"type": "setFieldState",
|
|
1400
1400
|
"pageTypes": ("create", "detail"),
|
|
@@ -1635,8 +1635,15 @@ CATALOGS = {
|
|
|
1635
1635
|
"bodyNaming": "Store bodies use snake_case (app_id, package_id, request_id, preview_confirmed), exactly as docs example shows.",
|
|
1636
1636
|
},
|
|
1637
1637
|
"page-value-rules": {
|
|
1638
|
-
"authoring": "pages get/update preserves the full Page snapshot and baseRevision.
|
|
1638
|
+
"authoring": "pages get/update preserves the full Page snapshot and baseRevision. Create and detail Pages support setFieldValue and setDefaultFieldValue; targets must be placed writable ordinary fields. sourcePath is empty for the current object or up to 5 single-relation hops. Enabled assignment chains are rejected. Create sources must be available before the record is saved.",
|
|
1639
1639
|
"action": {"type": "setDefaultFieldValue", "fieldId": "fld_target", "sourceFieldId": "fld_source", "sourcePath": [{"relationFieldId": "fld_relation", "targetObjectId": "obj_source"}]},
|
|
1640
|
+
"conversions": {
|
|
1641
|
+
"mapOptions": {"type": "mapOptions", "mappings": [{"sourceOptionId": "opt_source", "targetOptionId": "opt_target"}]},
|
|
1642
|
+
"copyOptions": {"type": "copyOptions"},
|
|
1643
|
+
"truncateDate": {"type": "truncateDate"},
|
|
1644
|
+
"extractDate": {"type": "extractDate"},
|
|
1645
|
+
"rules": "Put an explicit conversion on the action. mapOptions supports ordinary single-to-single or multiple-to-multiple across field definitions, with at least one identity-owned mapping; partial mappings warn and fail at runtime when hit. Historical inactive sources are allowed; active rules cannot target inactive options. Disabled rules relax only target lifecycle. copyOptions supports the same multiple-select definition through a relation, never self-assignment. truncateDate only lowers day/month precision; extractDate converts datetime to Asia/Shanghai then extracts the target date precision. No implicit mapping, guessed names, text parsing or date padding. Missing conversion retains legacy semantics. Multiselect results deduplicate before maxSelections; one failure rejects the whole action.",
|
|
1646
|
+
},
|
|
1640
1647
|
"steps": ["records get OBJECT RECORD reads saved values; records page-value-context OBJECT RECORD [--page-id PAGE] returns the effective pageId/revision/updatedAt. Production uses published configuration; test Hosts use their effective configuration.", "records page-value-event OBJECT RECORD --json-file event.json: copy pageId/revision; values is the full current edit delta keyed by field key, changedFieldIds contains IDs changed by this event, previousSources carries the last response sources.", "Inspect errors before applying response values to the edit delta. Empty-only defaults skip nonempty targets; assignments run on relevant source/condition changes, not automatically on read or save. Formula collections use saved data.", "Save the merged edit delta using records update with pageId, valueRuleRevision=revision and updatedAt from context. The server rechecks page/field constraints without rerunning assignments. For whole-record bundles use bundle-save and its configVersion."],
|
|
1641
1648
|
"updateExample": {"values": {"source": "edited", "target": "assigned"}, "pageId": "pag_xxx", "valueRuleRevision": "from-context", "updatedAt": "from-context"},
|
|
1642
1649
|
"permissions": "Context/event require records:read and records:write, retain static field visibility/writability and approval locks, and never persist values. Old records update calls without Page context retain their existing behavior.",
|
|
@@ -927,6 +927,9 @@ def _print_direct_release_preflight(preflight: dict[str, Any]) -> None:
|
|
|
927
927
|
if isinstance(check, dict):
|
|
928
928
|
mark = "OK" if check.get("ok") else "FAIL"
|
|
929
929
|
print(f" [{mark}] {check.get('label', '')}", file=sys.stderr)
|
|
930
|
+
for warning in preflight.get("warnings", []):
|
|
931
|
+
if isinstance(warning, dict):
|
|
932
|
+
print(f" [WARN] {warning.get('message', '')}", file=sys.stderr)
|
|
930
933
|
print(f" RISK: {preflight.get('risk', 'This bypasses test environments.')}", file=sys.stderr)
|
|
931
934
|
|
|
932
935
|
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: flowbase-cli
|
|
3
|
+
Version: 0.1.20
|
|
4
|
+
Summary: Command line client for the FlowBase OpenAPI
|
|
5
|
+
Author: DeepFlowAI
|
|
6
|
+
License: Apache-2.0
|
|
7
|
+
Requires-Python: >=3.11
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
|
|
1
10
|
# FlowBase CLI
|
|
2
11
|
|
|
3
12
|
`flowbase` is the official command line client for the FlowBase OpenAPI. It manages apps, objects, fields, views, custom pages, workflows, approval flows, dashboards, business records, roles, and configuration versions across the three FlowBase environments.
|
|
@@ -347,6 +356,8 @@ Matching uses saved current-record values. Empty matching inputs return `pending
|
|
|
347
356
|
|
|
348
357
|
`flowbase docs catalogs page-value-rules` describes authoring and the edit sequence. Page snapshots support `setFieldValue` and `setDefaultFieldValue`; sources can traverse up to five single-record relations. `pages evaluate` continues to preview field states and component visibility only.
|
|
349
358
|
|
|
359
|
+
Create and detail Page actions accept an optional explicit `conversion`: `mapOptions` with `mappings: [{sourceOptionId, targetOptionId}]`, `copyOptions` for the same multiple-select definition through a relation, `truncateDate` for lower date precision, or `extractDate` for datetime → date in Asia/Shanghai. Read the catalog for the complete contract. Mappings use stable identities, never option names. Partial mappings warn; an unmapped runtime value fails the entire action. Disabled rules may retain inactive targets but must retain valid identities. Ordinary record writes remain strict and do not implicitly execute these conversions.
|
|
360
|
+
|
|
350
361
|
```bash
|
|
351
362
|
flowbase records get OBJECT RECORD
|
|
352
363
|
flowbase records page-value-context OBJECT RECORD
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|