mirror of
https://github.com/screentinker/screentinker.git
synced 2026-08-16 07:13:12 -06:00
chore(release): v1.9.30
This commit is contained in:
parent
e812f35b6b
commit
e313826d85
|
|
@ -1,7 +1,7 @@
|
||||||
openapi: 3.1.0
|
openapi: 3.1.0
|
||||||
info:
|
info:
|
||||||
title: ScreenTinker Public API
|
title: ScreenTinker Public API
|
||||||
version: 1.9.29
|
version: 1.9.30
|
||||||
description: |
|
description: |
|
||||||
Public, token-scoped REST API for ScreenTinker digital signage.
|
Public, token-scoped REST API for ScreenTinker digital signage.
|
||||||
|
|
||||||
|
|
|
||||||
4
server/package-lock.json
generated
4
server/package-lock.json
generated
|
|
@ -1,12 +1,12 @@
|
||||||
{
|
{
|
||||||
"name": "screentinker",
|
"name": "screentinker",
|
||||||
"version": "1.9.29",
|
"version": "1.9.30",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "screentinker",
|
"name": "screentinker",
|
||||||
"version": "1.9.29",
|
"version": "1.9.30",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@azure/msal-node": "^5.2.1",
|
"@azure/msal-node": "^5.2.1",
|
||||||
"archiver": "^7.0.1",
|
"archiver": "^7.0.1",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "screentinker",
|
"name": "screentinker",
|
||||||
"version": "1.9.29",
|
"version": "1.9.30",
|
||||||
"description": "ScreenTinker - Digital Signage Management Server",
|
"description": "ScreenTinker - Digital Signage Management Server",
|
||||||
"main": "server.js",
|
"main": "server.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|
|
||||||
|
|
@ -66,7 +66,12 @@ test('the worker prunes to the set the player declares', () => {
|
||||||
// a panel with a 1GB widget quota, a few replaced videos is the whole budget.
|
// a panel with a 1GB widget quota, a few replaced videos is the whole budget.
|
||||||
const sw = fs.readFileSync(path.join(__dirname, '..', 'player', 'sw.js'), 'utf8');
|
const sw = fs.readFileSync(path.join(__dirname, '..', 'player', 'sw.js'), 'utf8');
|
||||||
assert.match(sw, /function pruneToPlaylist/);
|
assert.match(sw, /function pruneToPlaylist/);
|
||||||
assert.match(sw, /if \(data\.prune\)/, 'the prune must be driven by the player declaring a complete set');
|
// The guard is `data.prune && data.urls.length > 0`, not a bare `data.prune`: an EMPTY list is
|
||||||
|
// never a prune instruction. `assignments: []` is what the server sends for a device between
|
||||||
|
// playlists and from the catch when a snapshot fails to parse, and honouring it as "keep nothing"
|
||||||
|
// wiped a panel's whole offline library (fixed in 1.9.30).
|
||||||
|
assert.match(sw, /if \(data\.prune && data\.urls\.length > 0\)/,
|
||||||
|
'the prune must require a NON-EMPTY declared set');
|
||||||
|
|
||||||
const html = fs.readFileSync(path.join(__dirname, '..', 'player', 'index.html'), 'utf8');
|
const html = fs.readFileSync(path.join(__dirname, '..', 'player', 'index.html'), 'utf8');
|
||||||
assert.match(html, /prune:\s*true/);
|
assert.match(html, /prune:\s*true/);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue