simplepush 3.6.0__tar.gz → 3.6.1__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: simplepush
3
- Version: 3.6.0
3
+ Version: 3.6.1
4
4
  Summary: Python client for Simplepush (tasks, notifications, events, end-to-end encryption).
5
5
  Project-URL: Homepage, https://simplepu.sh
6
6
  Project-URL: Documentation, https://simplepu.sh/guide/python-sdk
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "simplepush"
7
- version = "3.6.0"
7
+ version = "3.6.1"
8
8
  description = "Python client for Simplepush (tasks, notifications, events, end-to-end encryption)."
9
9
  readme = "README.md"
10
10
  license = { file = "LICENSE" }
@@ -726,10 +726,10 @@ class _BaseClient:
726
726
  audio: Optional single audio clip (URL or local path), like `image`.
727
727
  Plays inline on iOS; Android has no inline audio. Mutually
728
728
  exclusive with `image` (a notification shows at most one media).
729
- link: Optional URL shown as an "Open link" button on the push when
730
- the notification has no input. Any scheme: an https URL opens
731
- the browser, an app's deep link (`unifi-protect://...`) opens
732
- that app.
729
+ link: Optional URL shown as an "Open link" button on the push. Any
730
+ scheme: an https URL opens the browser, an app's deep link
731
+ (`unifi-protect://...`) opens that app. Mutually exclusive
732
+ with `input` (the input's buttons take the action slots).
733
733
  password: Optional password to encrypt body fields with. Requires a
734
734
  topic (used as the salt for key derivation). Falls back to
735
735
  the client's default `password` when omitted. Not accepted
@@ -995,6 +995,8 @@ class _BaseClient:
995
995
  _validate_actions(input.actions)
996
996
  if image is not None and audio is not None:
997
997
  raise ValueError("a notification can carry at most one media attachment (image or audio, not both)")
998
+ if link is not None and input is not None:
999
+ raise ValueError("a notification carries either an input or a link, not both: the input's buttons take the action slots, so the link would never be shown")
998
1000
 
999
1001
  # A notification carries at most one input, sent as `textInput {}` XOR
1000
1002
  # `choiceInput {options}` XOR `actionInput {actions}`. For actions, both
File without changes
File without changes
File without changes