@norskvideo/norsk-studio-source-switcher 1.27.0-2025-05-21-b03b48ea → 1.27.0-2025-05-26-a443eb84

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.
Files changed (2) hide show
  1. package/client/info.js +111 -145
  2. package/package.json +4 -3
package/client/info.js CHANGED
@@ -24645,32 +24645,32 @@ function clsx() {
24645
24645
 
24646
24646
  // ../../node_modules/tailwind-merge/dist/bundle-mjs.mjs
24647
24647
  var CLASS_PART_SEPARATOR = "-";
24648
- function createClassGroupUtils(config) {
24648
+ var createClassGroupUtils = (config) => {
24649
24649
  const classMap = createClassMap(config);
24650
24650
  const {
24651
24651
  conflictingClassGroups,
24652
24652
  conflictingClassGroupModifiers
24653
24653
  } = config;
24654
- function getClassGroupId(className) {
24654
+ const getClassGroupId = (className) => {
24655
24655
  const classParts = className.split(CLASS_PART_SEPARATOR);
24656
24656
  if (classParts[0] === "" && classParts.length !== 1) {
24657
24657
  classParts.shift();
24658
24658
  }
24659
24659
  return getGroupRecursive(classParts, classMap) || getGroupIdForArbitraryProperty(className);
24660
- }
24661
- function getConflictingClassGroupIds(classGroupId, hasPostfixModifier) {
24660
+ };
24661
+ const getConflictingClassGroupIds = (classGroupId, hasPostfixModifier) => {
24662
24662
  const conflicts = conflictingClassGroups[classGroupId] || [];
24663
24663
  if (hasPostfixModifier && conflictingClassGroupModifiers[classGroupId]) {
24664
24664
  return [...conflicts, ...conflictingClassGroupModifiers[classGroupId]];
24665
24665
  }
24666
24666
  return conflicts;
24667
- }
24667
+ };
24668
24668
  return {
24669
24669
  getClassGroupId,
24670
24670
  getConflictingClassGroupIds
24671
24671
  };
24672
- }
24673
- function getGroupRecursive(classParts, classPartObject) {
24672
+ };
24673
+ var getGroupRecursive = (classParts, classPartObject) => {
24674
24674
  if (classParts.length === 0) {
24675
24675
  return classPartObject.classGroupId;
24676
24676
  }
@@ -24687,9 +24687,9 @@ function getGroupRecursive(classParts, classPartObject) {
24687
24687
  return classPartObject.validators.find(({
24688
24688
  validator
24689
24689
  }) => validator(classRest))?.classGroupId;
24690
- }
24690
+ };
24691
24691
  var arbitraryPropertyRegex = /^\[(.+)\]$/;
24692
- function getGroupIdForArbitraryProperty(className) {
24692
+ var getGroupIdForArbitraryProperty = (className) => {
24693
24693
  if (arbitraryPropertyRegex.test(className)) {
24694
24694
  const arbitraryPropertyClassName = arbitraryPropertyRegex.exec(className)[1];
24695
24695
  const property = arbitraryPropertyClassName?.substring(0, arbitraryPropertyClassName.indexOf(":"));
@@ -24697,8 +24697,8 @@ function getGroupIdForArbitraryProperty(className) {
24697
24697
  return "arbitrary.." + property;
24698
24698
  }
24699
24699
  }
24700
- }
24701
- function createClassMap(config) {
24700
+ };
24701
+ var createClassMap = (config) => {
24702
24702
  const {
24703
24703
  theme,
24704
24704
  prefix
@@ -24712,8 +24712,8 @@ function createClassMap(config) {
24712
24712
  processClassesRecursively(classGroup, classMap, classGroupId, theme);
24713
24713
  });
24714
24714
  return classMap;
24715
- }
24716
- function processClassesRecursively(classGroup, classPartObject, classGroupId, theme) {
24715
+ };
24716
+ var processClassesRecursively = (classGroup, classPartObject, classGroupId, theme) => {
24717
24717
  classGroup.forEach((classDefinition) => {
24718
24718
  if (typeof classDefinition === "string") {
24719
24719
  const classPartObjectToEdit = classDefinition === "" ? classPartObject : getPart(classPartObject, classDefinition);
@@ -24735,8 +24735,8 @@ function processClassesRecursively(classGroup, classPartObject, classGroupId, th
24735
24735
  processClassesRecursively(classGroup2, getPart(classPartObject, key), classGroupId, theme);
24736
24736
  });
24737
24737
  });
24738
- }
24739
- function getPart(classPartObject, path) {
24738
+ };
24739
+ var getPart = (classPartObject, path) => {
24740
24740
  let currentClassPartObject = classPartObject;
24741
24741
  path.split(CLASS_PART_SEPARATOR).forEach((pathPart) => {
24742
24742
  if (!currentClassPartObject.nextPart.has(pathPart)) {
@@ -24748,11 +24748,9 @@ function getPart(classPartObject, path) {
24748
24748
  currentClassPartObject = currentClassPartObject.nextPart.get(pathPart);
24749
24749
  });
24750
24750
  return currentClassPartObject;
24751
- }
24752
- function isThemeGetter(func) {
24753
- return func.isThemeGetter;
24754
- }
24755
- function getPrefixedClassGroupEntries(classGroupEntries, prefix) {
24751
+ };
24752
+ var isThemeGetter = (func) => func.isThemeGetter;
24753
+ var getPrefixedClassGroupEntries = (classGroupEntries, prefix) => {
24756
24754
  if (!prefix) {
24757
24755
  return classGroupEntries;
24758
24756
  }
@@ -24768,8 +24766,8 @@ function getPrefixedClassGroupEntries(classGroupEntries, prefix) {
24768
24766
  });
24769
24767
  return [classGroupId, prefixedClassGroup];
24770
24768
  });
24771
- }
24772
- function createLruCache(maxCacheSize) {
24769
+ };
24770
+ var createLruCache = (maxCacheSize) => {
24773
24771
  if (maxCacheSize < 1) {
24774
24772
  return {
24775
24773
  get: () => void 0,
@@ -24780,7 +24778,7 @@ function createLruCache(maxCacheSize) {
24780
24778
  let cacheSize = 0;
24781
24779
  let cache = /* @__PURE__ */ new Map();
24782
24780
  let previousCache = /* @__PURE__ */ new Map();
24783
- function update(key, value) {
24781
+ const update = (key, value) => {
24784
24782
  cache.set(key, value);
24785
24783
  cacheSize++;
24786
24784
  if (cacheSize > maxCacheSize) {
@@ -24788,7 +24786,7 @@ function createLruCache(maxCacheSize) {
24788
24786
  previousCache = cache;
24789
24787
  cache = /* @__PURE__ */ new Map();
24790
24788
  }
24791
- }
24789
+ };
24792
24790
  return {
24793
24791
  get(key) {
24794
24792
  let value = cache.get(key);
@@ -24808,9 +24806,9 @@ function createLruCache(maxCacheSize) {
24808
24806
  }
24809
24807
  }
24810
24808
  };
24811
- }
24809
+ };
24812
24810
  var IMPORTANT_MODIFIER = "!";
24813
- function createParseClassName(config) {
24811
+ var createParseClassName = (config) => {
24814
24812
  const {
24815
24813
  separator,
24816
24814
  experimentalParseClassName
@@ -24818,7 +24816,7 @@ function createParseClassName(config) {
24818
24816
  const isSeparatorSingleCharacter = separator.length === 1;
24819
24817
  const firstSeparatorCharacter = separator[0];
24820
24818
  const separatorLength = separator.length;
24821
- function parseClassName(className) {
24819
+ const parseClassName = (className) => {
24822
24820
  const modifiers = [];
24823
24821
  let bracketDepth = 0;
24824
24822
  let modifierStart = 0;
@@ -24852,18 +24850,16 @@ function createParseClassName(config) {
24852
24850
  baseClassName,
24853
24851
  maybePostfixModifierPosition
24854
24852
  };
24855
- }
24853
+ };
24856
24854
  if (experimentalParseClassName) {
24857
- return function parseClassNameExperimental(className) {
24858
- return experimentalParseClassName({
24859
- className,
24860
- parseClassName
24861
- });
24862
- };
24855
+ return (className) => experimentalParseClassName({
24856
+ className,
24857
+ parseClassName
24858
+ });
24863
24859
  }
24864
24860
  return parseClassName;
24865
- }
24866
- function sortModifiers(modifiers) {
24861
+ };
24862
+ var sortModifiers = (modifiers) => {
24867
24863
  if (modifiers.length <= 1) {
24868
24864
  return modifiers;
24869
24865
  }
@@ -24880,23 +24876,24 @@ function sortModifiers(modifiers) {
24880
24876
  });
24881
24877
  sortedModifiers.push(...unsortedModifiers.sort());
24882
24878
  return sortedModifiers;
24883
- }
24884
- function createConfigUtils(config) {
24885
- return {
24886
- cache: createLruCache(config.cacheSize),
24887
- parseClassName: createParseClassName(config),
24888
- ...createClassGroupUtils(config)
24889
- };
24890
- }
24879
+ };
24880
+ var createConfigUtils = (config) => ({
24881
+ cache: createLruCache(config.cacheSize),
24882
+ parseClassName: createParseClassName(config),
24883
+ ...createClassGroupUtils(config)
24884
+ });
24891
24885
  var SPLIT_CLASSES_REGEX = /\s+/;
24892
- function mergeClassList(classList, configUtils) {
24886
+ var mergeClassList = (classList, configUtils) => {
24893
24887
  const {
24894
24888
  parseClassName,
24895
24889
  getClassGroupId,
24896
24890
  getConflictingClassGroupIds
24897
24891
  } = configUtils;
24898
- const classGroupsInConflict = /* @__PURE__ */ new Set();
24899
- return classList.trim().split(SPLIT_CLASSES_REGEX).map((originalClassName) => {
24892
+ const classGroupsInConflict = [];
24893
+ const classNames = classList.trim().split(SPLIT_CLASSES_REGEX);
24894
+ let result = "";
24895
+ for (let index2 = classNames.length - 1; index2 >= 0; index2 -= 1) {
24896
+ const originalClassName = classNames[index2];
24900
24897
  const {
24901
24898
  modifiers,
24902
24899
  hasImportantModifier,
@@ -24907,47 +24904,32 @@ function mergeClassList(classList, configUtils) {
24907
24904
  let classGroupId = getClassGroupId(hasPostfixModifier ? baseClassName.substring(0, maybePostfixModifierPosition) : baseClassName);
24908
24905
  if (!classGroupId) {
24909
24906
  if (!hasPostfixModifier) {
24910
- return {
24911
- isTailwindClass: false,
24912
- originalClassName
24913
- };
24907
+ result = originalClassName + (result.length > 0 ? " " + result : result);
24908
+ continue;
24914
24909
  }
24915
24910
  classGroupId = getClassGroupId(baseClassName);
24916
24911
  if (!classGroupId) {
24917
- return {
24918
- isTailwindClass: false,
24919
- originalClassName
24920
- };
24912
+ result = originalClassName + (result.length > 0 ? " " + result : result);
24913
+ continue;
24921
24914
  }
24922
24915
  hasPostfixModifier = false;
24923
24916
  }
24924
24917
  const variantModifier = sortModifiers(modifiers).join(":");
24925
24918
  const modifierId = hasImportantModifier ? variantModifier + IMPORTANT_MODIFIER : variantModifier;
24926
- return {
24927
- isTailwindClass: true,
24928
- modifierId,
24929
- classGroupId,
24930
- originalClassName,
24931
- hasPostfixModifier
24932
- };
24933
- }).reverse().filter((parsed) => {
24934
- if (!parsed.isTailwindClass) {
24935
- return true;
24936
- }
24937
- const {
24938
- modifierId,
24939
- classGroupId,
24940
- hasPostfixModifier
24941
- } = parsed;
24942
24919
  const classId = modifierId + classGroupId;
24943
- if (classGroupsInConflict.has(classId)) {
24944
- return false;
24920
+ if (classGroupsInConflict.includes(classId)) {
24921
+ continue;
24945
24922
  }
24946
- classGroupsInConflict.add(classId);
24947
- getConflictingClassGroupIds(classGroupId, hasPostfixModifier).forEach((group) => classGroupsInConflict.add(modifierId + group));
24948
- return true;
24949
- }).reverse().map((parsed) => parsed.originalClassName).join(" ");
24950
- }
24923
+ classGroupsInConflict.push(classId);
24924
+ const conflictGroups = getConflictingClassGroupIds(classGroupId, hasPostfixModifier);
24925
+ for (let i = 0; i < conflictGroups.length; ++i) {
24926
+ const group = conflictGroups[i];
24927
+ classGroupsInConflict.push(modifierId + group);
24928
+ }
24929
+ result = originalClassName + (result.length > 0 ? " " + result : result);
24930
+ }
24931
+ return result;
24932
+ };
24951
24933
  function twJoin() {
24952
24934
  let index2 = 0;
24953
24935
  let argument;
@@ -24963,7 +24945,7 @@ function twJoin() {
24963
24945
  }
24964
24946
  return string;
24965
24947
  }
24966
- function toValue(mix) {
24948
+ var toValue = (mix) => {
24967
24949
  if (typeof mix === "string") {
24968
24950
  return mix;
24969
24951
  }
@@ -24978,7 +24960,7 @@ function toValue(mix) {
24978
24960
  }
24979
24961
  }
24980
24962
  return string;
24981
- }
24963
+ };
24982
24964
  function createTailwindMerge(createConfigFirst, ...createConfigRest) {
24983
24965
  let configUtils;
24984
24966
  let cacheGet;
@@ -25005,11 +24987,11 @@ function createTailwindMerge(createConfigFirst, ...createConfigRest) {
25005
24987
  return functionToCall(twJoin.apply(null, arguments));
25006
24988
  };
25007
24989
  }
25008
- function fromTheme(key) {
24990
+ var fromTheme = (key) => {
25009
24991
  const themeGetter = (theme) => theme[key] || [];
25010
24992
  themeGetter.isThemeGetter = true;
25011
24993
  return themeGetter;
25012
- }
24994
+ };
25013
24995
  var arbitraryValueRegex = /^\[(?:([a-z-]+):)?(.+)\]$/i;
25014
24996
  var fractionRegex = /^\d+\/\d+$/;
25015
24997
  var stringLengths = /* @__PURE__ */ new Set(["px", "full", "screen"]);
@@ -25018,48 +25000,22 @@ var lengthUnitRegex = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|
25018
25000
  var colorFunctionRegex = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/;
25019
25001
  var shadowRegex = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/;
25020
25002
  var imageRegex = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/;
25021
- function isLength(value) {
25022
- return isNumber(value) || stringLengths.has(value) || fractionRegex.test(value);
25023
- }
25024
- function isArbitraryLength(value) {
25025
- return getIsArbitraryValue(value, "length", isLengthOnly);
25026
- }
25027
- function isNumber(value) {
25028
- return Boolean(value) && !Number.isNaN(Number(value));
25029
- }
25030
- function isArbitraryNumber(value) {
25031
- return getIsArbitraryValue(value, "number", isNumber);
25032
- }
25033
- function isInteger(value) {
25034
- return Boolean(value) && Number.isInteger(Number(value));
25035
- }
25036
- function isPercent(value) {
25037
- return value.endsWith("%") && isNumber(value.slice(0, -1));
25038
- }
25039
- function isArbitraryValue(value) {
25040
- return arbitraryValueRegex.test(value);
25041
- }
25042
- function isTshirtSize(value) {
25043
- return tshirtUnitRegex.test(value);
25044
- }
25003
+ var isLength = (value) => isNumber(value) || stringLengths.has(value) || fractionRegex.test(value);
25004
+ var isArbitraryLength = (value) => getIsArbitraryValue(value, "length", isLengthOnly);
25005
+ var isNumber = (value) => Boolean(value) && !Number.isNaN(Number(value));
25006
+ var isArbitraryNumber = (value) => getIsArbitraryValue(value, "number", isNumber);
25007
+ var isInteger = (value) => Boolean(value) && Number.isInteger(Number(value));
25008
+ var isPercent = (value) => value.endsWith("%") && isNumber(value.slice(0, -1));
25009
+ var isArbitraryValue = (value) => arbitraryValueRegex.test(value);
25010
+ var isTshirtSize = (value) => tshirtUnitRegex.test(value);
25045
25011
  var sizeLabels = /* @__PURE__ */ new Set(["length", "size", "percentage"]);
25046
- function isArbitrarySize(value) {
25047
- return getIsArbitraryValue(value, sizeLabels, isNever);
25048
- }
25049
- function isArbitraryPosition(value) {
25050
- return getIsArbitraryValue(value, "position", isNever);
25051
- }
25012
+ var isArbitrarySize = (value) => getIsArbitraryValue(value, sizeLabels, isNever);
25013
+ var isArbitraryPosition = (value) => getIsArbitraryValue(value, "position", isNever);
25052
25014
  var imageLabels = /* @__PURE__ */ new Set(["image", "url"]);
25053
- function isArbitraryImage(value) {
25054
- return getIsArbitraryValue(value, imageLabels, isImage);
25055
- }
25056
- function isArbitraryShadow(value) {
25057
- return getIsArbitraryValue(value, "", isShadow);
25058
- }
25059
- function isAny() {
25060
- return true;
25061
- }
25062
- function getIsArbitraryValue(value, label, testValue) {
25015
+ var isArbitraryImage = (value) => getIsArbitraryValue(value, imageLabels, isImage);
25016
+ var isArbitraryShadow = (value) => getIsArbitraryValue(value, "", isShadow);
25017
+ var isAny = () => true;
25018
+ var getIsArbitraryValue = (value, label, testValue) => {
25063
25019
  const result = arbitraryValueRegex.exec(value);
25064
25020
  if (result) {
25065
25021
  if (result[1]) {
@@ -25068,20 +25024,17 @@ function getIsArbitraryValue(value, label, testValue) {
25068
25024
  return testValue(result[2]);
25069
25025
  }
25070
25026
  return false;
25071
- }
25072
- function isLengthOnly(value) {
25073
- return lengthUnitRegex.test(value) && !colorFunctionRegex.test(value);
25074
- }
25075
- function isNever() {
25076
- return false;
25077
- }
25078
- function isShadow(value) {
25079
- return shadowRegex.test(value);
25080
- }
25081
- function isImage(value) {
25082
- return imageRegex.test(value);
25083
- }
25084
- function getDefaultConfig() {
25027
+ };
25028
+ var isLengthOnly = (value) => (
25029
+ // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
25030
+ // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
25031
+ // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
25032
+ lengthUnitRegex.test(value) && !colorFunctionRegex.test(value)
25033
+ );
25034
+ var isNever = () => false;
25035
+ var isShadow = (value) => shadowRegex.test(value);
25036
+ var isImage = (value) => imageRegex.test(value);
25037
+ var getDefaultConfig = () => {
25085
25038
  const colors = fromTheme("colors");
25086
25039
  const spacing = fromTheme("spacing");
25087
25040
  const blur = fromTheme("blur");
@@ -25119,7 +25072,6 @@ function getDefaultConfig() {
25119
25072
  const getAlign = () => ["start", "end", "center", "between", "around", "evenly", "stretch"];
25120
25073
  const getZeroAndEmpty = () => ["", "0", isArbitraryValue];
25121
25074
  const getBreaks = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"];
25122
- const getNumber = () => [isNumber, isArbitraryNumber];
25123
25075
  const getNumberAndArbitrary = () => [isNumber, isArbitraryValue];
25124
25076
  return {
25125
25077
  cacheSize: 500,
@@ -25128,12 +25080,12 @@ function getDefaultConfig() {
25128
25080
  colors: [isAny],
25129
25081
  spacing: [isLength, isArbitraryLength],
25130
25082
  blur: ["none", "", isTshirtSize, isArbitraryValue],
25131
- brightness: getNumber(),
25083
+ brightness: getNumberAndArbitrary(),
25132
25084
  borderColor: [colors],
25133
25085
  borderRadius: ["none", "", "full", isTshirtSize, isArbitraryValue],
25134
25086
  borderSpacing: getSpacingWithArbitrary(),
25135
25087
  borderWidth: getLengthWithEmptyAndArbitrary(),
25136
- contrast: getNumber(),
25088
+ contrast: getNumberAndArbitrary(),
25137
25089
  grayscale: getZeroAndEmpty(),
25138
25090
  hueRotate: getNumberAndArbitrary(),
25139
25091
  invert: getZeroAndEmpty(),
@@ -25142,10 +25094,10 @@ function getDefaultConfig() {
25142
25094
  gradientColorStopPositions: [isPercent, isArbitraryLength],
25143
25095
  inset: getSpacingWithAutoAndArbitrary(),
25144
25096
  margin: getSpacingWithAutoAndArbitrary(),
25145
- opacity: getNumber(),
25097
+ opacity: getNumberAndArbitrary(),
25146
25098
  padding: getSpacingWithArbitrary(),
25147
- saturate: getNumber(),
25148
- scale: getNumber(),
25099
+ saturate: getNumberAndArbitrary(),
25100
+ scale: getNumberAndArbitrary(),
25149
25101
  sepia: getZeroAndEmpty(),
25150
25102
  skew: getNumberAndArbitrary(),
25151
25103
  space: getSpacingWithArbitrary(),
@@ -25846,7 +25798,7 @@ function getDefaultConfig() {
25846
25798
  * Font Variant Numeric
25847
25799
  * @see https://tailwindcss.com/docs/font-variant-numeric
25848
25800
  */
25849
- "fvn-fraction": ["diagonal-fractions", "stacked-fractons"],
25801
+ "fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
25850
25802
  /**
25851
25803
  * Letter Spacing
25852
25804
  * @see https://tailwindcss.com/docs/letter-spacing
@@ -26370,6 +26322,20 @@ function getDefaultConfig() {
26370
26322
  "border-color-y": [{
26371
26323
  "border-y": [borderColor]
26372
26324
  }],
26325
+ /**
26326
+ * Border Color S
26327
+ * @see https://tailwindcss.com/docs/border-color
26328
+ */
26329
+ "border-color-s": [{
26330
+ "border-s": [borderColor]
26331
+ }],
26332
+ /**
26333
+ * Border Color E
26334
+ * @see https://tailwindcss.com/docs/border-color
26335
+ */
26336
+ "border-color-e": [{
26337
+ "border-e": [borderColor]
26338
+ }],
26373
26339
  /**
26374
26340
  * Border Color Top
26375
26341
  * @see https://tailwindcss.com/docs/border-color
@@ -27116,7 +27082,7 @@ function getDefaultConfig() {
27116
27082
  "border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
27117
27083
  "border-w-x": ["border-w-r", "border-w-l"],
27118
27084
  "border-w-y": ["border-w-t", "border-w-b"],
27119
- "border-color": ["border-color-t", "border-color-r", "border-color-b", "border-color-l"],
27085
+ "border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
27120
27086
  "border-color-x": ["border-color-r", "border-color-l"],
27121
27087
  "border-color-y": ["border-color-t", "border-color-b"],
27122
27088
  "scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
@@ -27134,7 +27100,7 @@ function getDefaultConfig() {
27134
27100
  "font-size": ["leading"]
27135
27101
  }
27136
27102
  };
27137
- }
27103
+ };
27138
27104
  var twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
27139
27105
 
27140
27106
  // build/utils.js
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@norskvideo/norsk-studio-source-switcher",
3
- "version": "1.27.0-2025-05-21-b03b48ea",
3
+ "version": "1.27.0-2025-05-26-a443eb84",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "clean": "rm -rf lib client build",
@@ -25,8 +25,8 @@
25
25
  "@aws-sdk/client-medialive": "^3.499.0",
26
26
  "@aws-sdk/client-mediapackage": "^3.499.0",
27
27
  "@aws-sdk/client-translate": "^3.535.0",
28
- "@norskvideo/norsk-sdk": "^1.0.402-2025-05-21-59ecadb4",
29
- "@norskvideo/norsk-studio": "1.27.0-2025-05-21-b03b48ea",
28
+ "@norskvideo/norsk-sdk": "^1.0.402-2025-05-26-c7282067",
29
+ "@norskvideo/norsk-studio": "1.27.0-2025-05-26-a443eb84",
30
30
  "@norskvideo/webrtc-client": "^0.1.2",
31
31
  "chart.js": "^4.4.2",
32
32
  "express": "^4.18.2",
@@ -60,6 +60,7 @@
60
60
  "npm-run-all": "^4.1.5",
61
61
  "openapi-typescript": "^7.3.0",
62
62
  "puppeteer": "^21.5.2",
63
+ "tailwind-merge": "^2.6.0",
63
64
  "tailwindcss": "^3.4.1",
64
65
  "typescript": "^5.4.5"
65
66
  }