@norskvideo/norsk-studio-source-switcher 1.27.0-2025-04-08-3f13a32b → 1.27.0-2025-04-10-614c23ec
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.
- package/client/info.js +32048 -2602
- package/client/tailwind.css +832 -83
- package/lib/inline-view.js +7 -8
- package/lib/inline-view.js.map +1 -1
- package/lib/select.js +72 -0
- package/lib/select.js.map +1 -0
- package/lib/summary-view.js +23 -15
- package/lib/summary-view.js.map +1 -1
- package/lib/utils.js +9 -0
- package/lib/utils.js.map +1 -0
- package/package.json +3 -3
package/lib/inline-view.js
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
4
|
-
const
|
5
|
-
const availableClasses = "available text-green-500 dark:text-green-300";
|
6
|
-
const inactiveClasses = "inactive text-orange-500 dark:text-orange-300";
|
4
|
+
const utils_1 = require("./utils");
|
7
5
|
function InlineView({ state }) {
|
8
|
-
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("h5", { children: "Sources" }), (0, jsx_runtime_1.jsx)("ul", { children: state.knownSources.map((s, i) =>
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
6
|
+
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("h5", { className: "text-gray-900 dark:text-white font-medium", children: "Sources:" }), (0, jsx_runtime_1.jsx)("ul", { className: "space-y-2 mt-2", children: state.knownSources.map((s, i) => {
|
7
|
+
const isAvailable = state.availableSources.find((a) => a.sourceName === s.sourceName);
|
8
|
+
const isActive = state.activeSource.sourceName === s.sourceName;
|
9
|
+
const indicatorClasses = (0, utils_1.cn)("w-3 h-3 rounded-full", isActive ? "bg-live" : isAvailable ? "bg-standby" : "bg-offline");
|
10
|
+
return ((0, jsx_runtime_1.jsxs)("li", { className: "flex items-center gap-2", children: [(0, jsx_runtime_1.jsxs)("div", { className: "relative", children: [(0, jsx_runtime_1.jsx)("div", { className: indicatorClasses }), isActive && (0, jsx_runtime_1.jsx)("div", { className: "absolute inset-0 flex items-center justify-center", children: (0, jsx_runtime_1.jsx)("div", { className: "w-3 h-3 rounded-full bg-live animate-ping duration-150" }) })] }), (0, jsx_runtime_1.jsx)("span", { className: "text-gray-900 dark:text-white", children: s.sourceName })] }, i));
|
11
|
+
}) })] });
|
13
12
|
}
|
14
13
|
exports.default = InlineView;
|
15
14
|
//# sourceMappingURL=inline-view.js.map
|
package/lib/inline-view.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"inline-view.js","sourceRoot":"","sources":["../src/inline-view.tsx"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"inline-view.js","sourceRoot":"","sources":["../src/inline-view.tsx"],"names":[],"mappings":";;;AACA,mCAA6B;AAE7B,SAAS,UAAU,CAAC,EAAE,KAAK,EAA4D;IACrF,OAAO,6DACL,+BAAI,SAAS,EAAC,2CAA2C,yBAAc,EACvE,+BAAI,SAAS,EAAC,gBAAgB,YAC3B,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC;oBACtF,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,CAAC;oBAEhE,MAAM,gBAAgB,GAAG,IAAA,UAAE,EACzB,sBAAsB,EACtB,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CACjE,CAAC;oBAEF,OAAO,CACL,gCAAY,SAAS,EAAC,yBAAyB,aAC7C,iCAAK,SAAS,EAAC,UAAU,aACnB,gCAAK,SAAS,EAAE,gBAAgB,GAAQ,EACvC,QAAQ,IAAI,gCAAK,SAAS,EAAC,mDAAmD,YAC7E,gCAAK,SAAS,EAAC,wDAAwD,GAAO,GAC1E,IACF,EACV,iCAAM,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,UAAU,GAAQ,KAP9D,CAAC,CAQL,CACN,CAAC;gBACJ,CAAC,CAAC,GACC,IACJ,CAAA;AACL,CAAC;AAED,kBAAe,UAAU,CAAC"}
|
package/lib/select.js
ADDED
@@ -0,0 +1,72 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
19
|
+
if (mod && mod.__esModule) return mod;
|
20
|
+
var result = {};
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
+
__setModuleDefault(result, mod);
|
23
|
+
return result;
|
24
|
+
};
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
26
|
+
exports.Select = Select;
|
27
|
+
exports.SelectContent = SelectContent;
|
28
|
+
exports.SelectGroup = SelectGroup;
|
29
|
+
exports.SelectItem = SelectItem;
|
30
|
+
exports.SelectLabel = SelectLabel;
|
31
|
+
exports.SelectScrollDownButton = SelectScrollDownButton;
|
32
|
+
exports.SelectScrollUpButton = SelectScrollUpButton;
|
33
|
+
exports.SelectSeparator = SelectSeparator;
|
34
|
+
exports.SelectTrigger = SelectTrigger;
|
35
|
+
exports.SelectValue = SelectValue;
|
36
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
37
|
+
const SelectPrimitive = __importStar(require("@radix-ui/react-select"));
|
38
|
+
const lucide_react_1 = require("lucide-react");
|
39
|
+
const utils_1 = require("./utils");
|
40
|
+
function Select({ ...props }) {
|
41
|
+
return (0, jsx_runtime_1.jsx)(SelectPrimitive.Root, { "data-slot": "select", ...props });
|
42
|
+
}
|
43
|
+
function SelectGroup({ ...props }) {
|
44
|
+
return (0, jsx_runtime_1.jsx)(SelectPrimitive.Group, { "data-slot": "select-group", ...props });
|
45
|
+
}
|
46
|
+
function SelectValue({ ...props }) {
|
47
|
+
return (0, jsx_runtime_1.jsx)(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
|
48
|
+
}
|
49
|
+
function SelectTrigger({ className, size = "default", children, ...props }) {
|
50
|
+
return ((0, jsx_runtime_1.jsxs)(SelectPrimitive.Trigger, { "data-slot": "select-trigger", "data-size": size, className: (0, utils_1.cn)("text-gray-800 dark:text-gray-200 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-800 border-gray-200 dark:border-gray-600 transition-colors duration-200 flex w-fit items-center justify-between gap-2 rounded-lg border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs outline-none ring-0 focus:ring-0 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8", className), ...props, children: [children, (0, jsx_runtime_1.jsx)(SelectPrimitive.Icon, { asChild: true, children: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronDownIcon, { className: "size-4 text-black dark:text-white" }) })] }));
|
51
|
+
}
|
52
|
+
function SelectContent({ className, children, position = "popper", ...props }) {
|
53
|
+
return ((0, jsx_runtime_1.jsx)(SelectPrimitive.Portal, { children: (0, jsx_runtime_1.jsxs)(SelectPrimitive.Content, { "data-slot": "select-content", className: (0, utils_1.cn)("bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-lg text-sm p-1 ring-0 focus:ring-0 focus:outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto", position === "popper" &&
|
54
|
+
"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", className), position: position, ...props, children: [(0, jsx_runtime_1.jsx)(SelectScrollUpButton, {}), (0, jsx_runtime_1.jsx)(SelectPrimitive.Viewport, { className: (0, utils_1.cn)("p-1", position === "popper" &&
|
55
|
+
"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"), children: children }), (0, jsx_runtime_1.jsx)(SelectScrollDownButton, {})] }) }));
|
56
|
+
}
|
57
|
+
function SelectLabel({ className, ...props }) {
|
58
|
+
return ((0, jsx_runtime_1.jsx)(SelectPrimitive.Label, { "data-slot": "select-label", className: (0, utils_1.cn)("p-2 text-md font-semibold text-gray-900 dark:text-white", className), ...props }));
|
59
|
+
}
|
60
|
+
function SelectItem({ className, children, ...props }) {
|
61
|
+
return ((0, jsx_runtime_1.jsxs)(SelectPrimitive.Item, { "data-slot": "select-item", className: (0, utils_1.cn)("w-full bg-transparent flex items-center gap-2 hover:bg-gray-200 dark:hover:bg-gray-700 transition-colors duration-200 relative cursor-default rounded-sm py-1.5 pr-8 pl-2 text-sm outline-none select-none data-[disabled]:pointer-events-none text-gray-900 dark:text-white ring-0 focus:ring-0 focus:outline-none", className), ...props, children: [(0, jsx_runtime_1.jsx)("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: (0, jsx_runtime_1.jsx)(SelectPrimitive.ItemIndicator, { children: (0, jsx_runtime_1.jsx)(lucide_react_1.CheckIcon, { className: "size-4 text-black dark:text-white" }) }) }), (0, jsx_runtime_1.jsx)(SelectPrimitive.ItemText, { children: children })] }));
|
62
|
+
}
|
63
|
+
function SelectSeparator({ className, ...props }) {
|
64
|
+
return ((0, jsx_runtime_1.jsx)(SelectPrimitive.Separator, { "data-slot": "select-separator", className: (0, utils_1.cn)("bg-neutral-200 pointer-events-none -mx-1 my-1 h-px dark:bg-neutral-800", className), ...props }));
|
65
|
+
}
|
66
|
+
function SelectScrollUpButton({ className, ...props }) {
|
67
|
+
return ((0, jsx_runtime_1.jsx)(SelectPrimitive.ScrollUpButton, { "data-slot": "select-scroll-up-button", className: (0, utils_1.cn)("flex cursor-default items-center justify-center py-1", className), ...props, children: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronUpIcon, { className: "size-4 text-black dark:text-white" }) }));
|
68
|
+
}
|
69
|
+
function SelectScrollDownButton({ className, ...props }) {
|
70
|
+
return ((0, jsx_runtime_1.jsx)(SelectPrimitive.ScrollDownButton, { "data-slot": "select-scroll-down-button", className: (0, utils_1.cn)("flex cursor-default items-center justify-center py-1", className), ...props, children: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronDownIcon, { className: "size-4 text-black dark:text-white" }) }));
|
71
|
+
}
|
72
|
+
//# sourceMappingURL=select.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"select.js","sourceRoot":"","sources":["../src/select.tsx"],"names":[],"mappings":"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"}
|
package/lib/summary-view.js
CHANGED
@@ -3,9 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
4
4
|
const react_1 = require("react");
|
5
5
|
const webrtc_client_1 = require("@norskvideo/webrtc-client");
|
6
|
-
const
|
7
|
-
const
|
8
|
-
const inactiveClasses = "inactive text-orange-500 dark:text-orange-300";
|
6
|
+
const select_1 = require("./select");
|
7
|
+
const utils_1 = require("./utils");
|
9
8
|
function SummaryView({ state, config, sendCommand }) {
|
10
9
|
const [previewSource, setPreviewSource] = (0, react_1.useState)(undefined);
|
11
10
|
const [activePlayerSource, setActivePlayerSource] = (0, react_1.useState)(undefined);
|
@@ -46,19 +45,28 @@ function SummaryView({ state, config, sendCommand }) {
|
|
46
45
|
initialLoad,
|
47
46
|
state.players
|
48
47
|
]);
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
: (0, jsx_runtime_1.
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
48
|
+
const [selectedSource, setSelectedSource] = (0, react_1.useState)(previewSource ?? state.activeSource);
|
49
|
+
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("div", { className: "space-y-2", children: [(0, jsx_runtime_1.jsx)("label", { htmlFor: "select-preview", className: "mt-2", children: "Source" }), (0, jsx_runtime_1.jsxs)(select_1.Select, { onValueChange: (value) => {
|
50
|
+
setPreviewSource(JSON.parse(value));
|
51
|
+
setSelectedSource(JSON.parse(value));
|
52
|
+
}, value: JSON.stringify(previewSource), children: [(0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { className: "w-full", children: selectedSource ?
|
53
|
+
(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-2", children: [(0, jsx_runtime_1.jsx)("div", { className: `w-4 h-4 rounded-full ${selectedSource.sourceName == state.activeSource.sourceName ? "bg-live" : "bg-standby"}` }), (0, jsx_runtime_1.jsx)("span", { className: "text-gray-900 dark:text-white", children: selectedSource.sourceName })] })
|
54
|
+
: (0, jsx_runtime_1.jsx)(select_1.SelectValue, { placeholder: "Select a source" }) }), (0, jsx_runtime_1.jsx)(select_1.SelectContent, { className: "w-full", children: state.knownSources.map((s, i) => {
|
55
|
+
const isAvailable = state.availableSources.find((a) => s.sourceName == a.sourceName);
|
56
|
+
const isActive = state.activeSource.sourceName == s.sourceName;
|
57
|
+
const indicatorClasses = (0, utils_1.cn)("w-4 h-4 rounded-full", isActive ? "bg-live" : isAvailable ? "bg-standby" : "bg-offline");
|
58
|
+
const textClasses = (0, utils_1.cn)("text-gray-900 dark:text-white", !isAvailable && "opacity-50");
|
59
|
+
return (0, jsx_runtime_1.jsx)(select_1.SelectItem, { disabled: !isAvailable, value: JSON.stringify(s), children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-2", children: [(0, jsx_runtime_1.jsxs)("div", { className: "relative", children: [(0, jsx_runtime_1.jsx)("div", { className: indicatorClasses }), isActive && (0, jsx_runtime_1.jsx)("div", { className: "absolute inset-0 flex items-center justify-center", children: (0, jsx_runtime_1.jsx)("div", { className: "w-3 h-3 rounded-full bg-live animate-ping duration-150" }) })] }), (0, jsx_runtime_1.jsx)("span", { className: textClasses, children: s.sourceName }), (0, jsx_runtime_1.jsxs)("span", { className: "text-gray-500 dark:text-gray-400", children: ["(", isActive ? "Active" : isAvailable ? "Available" : "Unavailable", ")"] })] }) }, i);
|
60
|
+
}) })] })] }), (0, jsx_runtime_1.jsx)("button", { disabled: !previewSource || previewSource == state.activeSource, type: "button", className: "mt-2 mb-2 text-white w-full justify-center bg-primary-700 hover:bg-primary-800 focus:ring-4 focus:outline-none focus:ring-primary-300 font-medium rounded-lg text-sm px-4 py-2 text-center dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800 disabled:opacity-50 disabled:cursor-not-allowed", onClick: (e) => {
|
58
61
|
e.preventDefault();
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
+
if (previewSource) {
|
63
|
+
sendCommand({ type: "select-source", source: previewSource, overlays: [] });
|
64
|
+
setPreviewSource(undefined);
|
65
|
+
setSelectedSource(previewSource);
|
66
|
+
}
|
67
|
+
}, children: "Make Active" }), config.enablePreviews ?
|
68
|
+
(0, jsx_runtime_1.jsxs)("div", { className: "space-y-2", children: [(0, jsx_runtime_1.jsx)("h4", { className: "text-gray-500 dark:text-gray-400 font-medium", children: "Preview:" }), (0, jsx_runtime_1.jsx)("div", { className: "relative w-full aspect-video bg-gray-200 dark:bg-gray-900 rounded-lg overflow-hidden", children: (0, jsx_runtime_1.jsx)("div", { id: `${config.id}-preview`, className: "absolute inset-0" }) })] })
|
69
|
+
: null] });
|
62
70
|
}
|
63
71
|
exports.default = SummaryView;
|
64
72
|
//# sourceMappingURL=summary-view.js.map
|
package/lib/summary-view.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"summary-view.js","sourceRoot":"","sources":["../src/summary-view.tsx"],"names":[],"mappings":";;;AAAA,iCAA4C;AAG5C,6DAAsD;
|
1
|
+
{"version":3,"file":"summary-view.js","sourceRoot":"","sources":["../src/summary-view.tsx"],"names":[],"mappings":"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"}
|
package/lib/utils.js
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.cn = cn;
|
4
|
+
const clsx_1 = require("clsx");
|
5
|
+
const tailwind_merge_1 = require("tailwind-merge");
|
6
|
+
function cn(...inputs) {
|
7
|
+
return (0, tailwind_merge_1.twMerge)((0, clsx_1.clsx)(inputs));
|
8
|
+
}
|
9
|
+
//# sourceMappingURL=utils.js.map
|
package/lib/utils.js.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;AAGA,gBAEC;AALD,+BAA4C;AAC5C,mDAAwC;AAExC,SAAgB,EAAE,CAAC,GAAG,MAAoB;IACxC,OAAO,IAAA,wBAAO,EAAC,IAAA,WAAI,EAAC,MAAM,CAAC,CAAC,CAAA;AAC9B,CAAC"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@norskvideo/norsk-studio-source-switcher",
|
3
|
-
"version": "1.27.0-2025-04-
|
3
|
+
"version": "1.27.0-2025-04-10-614c23ec",
|
4
4
|
"description": "",
|
5
5
|
"scripts": {
|
6
6
|
"clean": "rm -rf lib",
|
@@ -24,8 +24,8 @@
|
|
24
24
|
"@aws-sdk/client-medialive": "^3.499.0",
|
25
25
|
"@aws-sdk/client-mediapackage": "^3.499.0",
|
26
26
|
"@aws-sdk/client-translate": "^3.535.0",
|
27
|
-
"@norskvideo/norsk-sdk": "^1.0.401-2025-04-
|
28
|
-
"@norskvideo/norsk-studio": "1.27.0-2025-04-
|
27
|
+
"@norskvideo/norsk-sdk": "^1.0.401-2025-04-10-b3850791",
|
28
|
+
"@norskvideo/norsk-studio": "1.27.0-2025-04-10-614c23ec",
|
29
29
|
"@norskvideo/webrtc-client": "^0.1.2",
|
30
30
|
"chart.js": "^4.4.2",
|
31
31
|
"express": "^4.18.2",
|