@indiegems/gem-web-sdk 23.1.1 → 23.1.3

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.
@@ -62,7 +62,8 @@ and nothing has changed; hide the upsell.
62
62
  `try`/`catch` to write.
63
63
 
64
64
  - **Say nothing on `declined`.** The player saw the prompt and closed it. A "sign-in failed"
65
- message after a deliberate Cancel reads as a bug.
65
+ message after a deliberate Cancel reads as a bug. Keep the button where it was: if the player
66
+ changes their mind and presses it again, the prompt shows again (section 4).
66
67
  - **You are told no reason**, and one will not be added. Why a sign-in did not happen is between
67
68
  the player and the Arcade.
68
69
  - **`unavailable` is ordinary**, not a fault. It is what every call returns outside the Arcade, and
@@ -72,9 +73,22 @@ and nothing has changed; hide the upsell.
72
73
  ## 4. Ask from a button, and only from a button
73
74
 
74
75
  Call `requestSignIn` from something the player pressed — never at start-up, never on a timer, and
75
- never as the price of continuing to play. The Arcade decides whether a prompt appears at all, shows
76
- one at a time, and is free to answer `declined` without showing anything to a game that asks too
77
- often.
76
+ never as the price of continuing to play. The Arcade decides whether a prompt appears at all, and
77
+ shows one at a time.
78
+
79
+ There is no wait after a `declined`. An ask made right after the player closed the prompt shows it
80
+ again, so a player who said no and then presses your Sign in button on purpose gets the prompt,
81
+ not a button that does nothing. No answer starts a wait, and nothing your game does starts one.
82
+
83
+ The Arcade answers `declined` at once, with nothing shown, only when it cannot put a prompt up at
84
+ that moment:
85
+
86
+ - something else holds the game: a report, About, the purchase sheet, the Arcade's menu, or a
87
+ [parked](what-a-game-must-do.md#what-the-parent-says-about-the-session-prefs-pause-and-terminate) game;
88
+ - the player is answering one of the Arcade's own prompts, or answered one less than a second ago.
89
+
90
+ The player's next press, once that has cleared, shows the prompt. Your game needs no code for any
91
+ of this: say nothing on `declined`, as above, and leave the button working.
78
92
 
79
93
  Pressing two upsell buttons does not open two prompts. A second call made while the first is still
80
94
  open joins it, and both resolve with the same answer.
@@ -80,8 +80,8 @@ To check the download yourself: the package npm serves is, byte for byte, the fi
80
80
  also publishes on its download host, with the hash beside it:
81
81
 
82
82
  ```bash
83
- curl -fsSL -O https://downloads.gemarcade.com/sdk/v23.1.1/gem-web-sdk.tgz
84
- curl -fsSL https://downloads.gemarcade.com/sdk/v23.1.1/gem-web-sdk.tgz.sri
83
+ curl -fsSL -O https://downloads.gemarcade.com/sdk/v23.1.3/gem-web-sdk.tgz
84
+ curl -fsSL https://downloads.gemarcade.com/sdk/v23.1.3/gem-web-sdk.tgz.sri
85
85
  openssl dgst -sha384 -binary gem-web-sdk.tgz | openssl base64 -A
86
86
  ```
87
87
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@indiegems/gem-web-sdk",
3
- "version": "23.1.1",
3
+ "version": "23.1.3",
4
4
  "description": "postMessage bridge contract between gem-web and browser-playable games",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",