Update detsys-ts

This commit is contained in:
Graham Christensen 2024-05-06 17:34:23 -04:00
parent 8363f28293
commit 6d82bce8ec
5 changed files with 490 additions and 586 deletions

437
dist/index.js vendored
View file

@ -86439,7 +86439,7 @@ var external_os_ = __nccwpck_require__(2037);
const external_node_crypto_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:crypto"); const external_node_crypto_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:crypto");
// EXTERNAL MODULE: ./node_modules/.pnpm/@actions+cache@3.2.4/node_modules/@actions/cache/lib/cache.js // EXTERNAL MODULE: ./node_modules/.pnpm/@actions+cache@3.2.4/node_modules/@actions/cache/lib/cache.js
var cache = __nccwpck_require__(6878); var cache = __nccwpck_require__(6878);
;// CONCATENATED MODULE: ./node_modules/.pnpm/@sindresorhus+is@6.2.0/node_modules/@sindresorhus/is/dist/index.js ;// CONCATENATED MODULE: ./node_modules/.pnpm/@sindresorhus+is@6.3.0/node_modules/@sindresorhus/is/dist/index.js
const typedArrayTypeNames = [ const typedArrayTypeNames = [
'Int8Array', 'Int8Array',
'Uint8Array', 'Uint8Array',
@ -87291,458 +87291,458 @@ function assertAny(predicate, ...values) {
throw new TypeError(typeErrorMessageMultipleValues(expectedTypes, values)); throw new TypeError(typeErrorMessageMultipleValues(expectedTypes, values));
} }
} }
function assertArray(value, assertion) { function assertArray(value, assertion, message) {
if (!isArray(value)) { if (!isArray(value)) {
throw new TypeError(typeErrorMessage('Array', value)); throw new TypeError(message ?? typeErrorMessage('Array', value));
} }
if (assertion) { if (assertion) {
// eslint-disable-next-line unicorn/no-array-for-each, unicorn/no-array-callback-reference // eslint-disable-next-line unicorn/no-array-for-each, unicorn/no-array-callback-reference
value.forEach(assertion); value.forEach(assertion);
} }
} }
function assertArrayBuffer(value) { function assertArrayBuffer(value, message) {
if (!isArrayBuffer(value)) { if (!isArrayBuffer(value)) {
throw new TypeError(typeErrorMessage('ArrayBuffer', value)); throw new TypeError(message ?? typeErrorMessage('ArrayBuffer', value));
} }
} }
function assertArrayLike(value) { function assertArrayLike(value, message) {
if (!isArrayLike(value)) { if (!isArrayLike(value)) {
throw new TypeError(typeErrorMessage('array-like', value)); throw new TypeError(message ?? typeErrorMessage('array-like', value));
} }
} }
// eslint-disable-next-line @typescript-eslint/ban-types // eslint-disable-next-line @typescript-eslint/ban-types
function assertAsyncFunction(value) { function assertAsyncFunction(value, message) {
if (!isAsyncFunction(value)) { if (!isAsyncFunction(value)) {
throw new TypeError(typeErrorMessage('AsyncFunction', value)); throw new TypeError(message ?? typeErrorMessage('AsyncFunction', value));
} }
} }
function assertAsyncGenerator(value) { function assertAsyncGenerator(value, message) {
if (!isAsyncGenerator(value)) { if (!isAsyncGenerator(value)) {
throw new TypeError(typeErrorMessage('AsyncGenerator', value)); throw new TypeError(message ?? typeErrorMessage('AsyncGenerator', value));
} }
} }
function assertAsyncGeneratorFunction(value) { function assertAsyncGeneratorFunction(value, message) {
if (!isAsyncGeneratorFunction(value)) { if (!isAsyncGeneratorFunction(value)) {
throw new TypeError(typeErrorMessage('AsyncGeneratorFunction', value)); throw new TypeError(message ?? typeErrorMessage('AsyncGeneratorFunction', value));
} }
} }
function assertAsyncIterable(value) { function assertAsyncIterable(value, message) {
if (!isAsyncIterable(value)) { if (!isAsyncIterable(value)) {
throw new TypeError(typeErrorMessage('AsyncIterable', value)); throw new TypeError(message ?? typeErrorMessage('AsyncIterable', value));
} }
} }
function assertBigint(value) { function assertBigint(value, message) {
if (!isBigint(value)) { if (!isBigint(value)) {
throw new TypeError(typeErrorMessage('bigint', value)); throw new TypeError(message ?? typeErrorMessage('bigint', value));
} }
} }
function assertBigInt64Array(value) { function assertBigInt64Array(value, message) {
if (!isBigInt64Array(value)) { if (!isBigInt64Array(value)) {
throw new TypeError(typeErrorMessage('BigInt64Array', value)); throw new TypeError(message ?? typeErrorMessage('BigInt64Array', value));
} }
} }
function assertBigUint64Array(value) { function assertBigUint64Array(value, message) {
if (!isBigUint64Array(value)) { if (!isBigUint64Array(value)) {
throw new TypeError(typeErrorMessage('BigUint64Array', value)); throw new TypeError(message ?? typeErrorMessage('BigUint64Array', value));
} }
} }
function assertBlob(value) { function assertBlob(value, message) {
if (!isBlob(value)) { if (!isBlob(value)) {
throw new TypeError(typeErrorMessage('Blob', value)); throw new TypeError(message ?? typeErrorMessage('Blob', value));
} }
} }
function assertBoolean(value) { function assertBoolean(value, message) {
if (!isBoolean(value)) { if (!isBoolean(value)) {
throw new TypeError(typeErrorMessage('boolean', value)); throw new TypeError(message ?? typeErrorMessage('boolean', value));
} }
} }
// eslint-disable-next-line @typescript-eslint/ban-types // eslint-disable-next-line @typescript-eslint/ban-types
function assertBoundFunction(value) { function assertBoundFunction(value, message) {
if (!isBoundFunction(value)) { if (!isBoundFunction(value)) {
throw new TypeError(typeErrorMessage('Function', value)); throw new TypeError(message ?? typeErrorMessage('Function', value));
} }
} }
function assertBuffer(value) { function assertBuffer(value, message) {
if (!isBuffer(value)) { if (!isBuffer(value)) {
throw new TypeError(typeErrorMessage('Buffer', value)); throw new TypeError(message ?? typeErrorMessage('Buffer', value));
} }
} }
function assertClass(value) { function assertClass(value, message) {
if (!isClass(value)) { if (!isClass(value)) {
throw new TypeError(typeErrorMessage('Class', value)); throw new TypeError(message ?? typeErrorMessage('Class', value));
} }
} }
function assertDataView(value) { function assertDataView(value, message) {
if (!isDataView(value)) { if (!isDataView(value)) {
throw new TypeError(typeErrorMessage('DataView', value)); throw new TypeError(message ?? typeErrorMessage('DataView', value));
} }
} }
function assertDate(value) { function assertDate(value, message) {
if (!isDate(value)) { if (!isDate(value)) {
throw new TypeError(typeErrorMessage('Date', value)); throw new TypeError(message ?? typeErrorMessage('Date', value));
} }
} }
function assertDirectInstanceOf(instance, class_) { function assertDirectInstanceOf(instance, class_, message) {
if (!isDirectInstanceOf(instance, class_)) { if (!isDirectInstanceOf(instance, class_)) {
throw new TypeError(typeErrorMessage('T', instance)); throw new TypeError(message ?? typeErrorMessage('T', instance));
} }
} }
function assertEmptyArray(value) { function assertEmptyArray(value, message) {
if (!isEmptyArray(value)) { if (!isEmptyArray(value)) {
throw new TypeError(typeErrorMessage('empty array', value)); throw new TypeError(message ?? typeErrorMessage('empty array', value));
} }
} }
function assertEmptyMap(value) { function assertEmptyMap(value, message) {
if (!isEmptyMap(value)) { if (!isEmptyMap(value)) {
throw new TypeError(typeErrorMessage('empty map', value)); throw new TypeError(message ?? typeErrorMessage('empty map', value));
} }
} }
function assertEmptyObject(value) { function assertEmptyObject(value, message) {
if (!isEmptyObject(value)) { if (!isEmptyObject(value)) {
throw new TypeError(typeErrorMessage('empty object', value)); throw new TypeError(message ?? typeErrorMessage('empty object', value));
} }
} }
function assertEmptySet(value) { function assertEmptySet(value, message) {
if (!isEmptySet(value)) { if (!isEmptySet(value)) {
throw new TypeError(typeErrorMessage('empty set', value)); throw new TypeError(message ?? typeErrorMessage('empty set', value));
} }
} }
function assertEmptyString(value) { function assertEmptyString(value, message) {
if (!isEmptyString(value)) { if (!isEmptyString(value)) {
throw new TypeError(typeErrorMessage('empty string', value)); throw new TypeError(message ?? typeErrorMessage('empty string', value));
} }
} }
function assertEmptyStringOrWhitespace(value) { function assertEmptyStringOrWhitespace(value, message) {
if (!isEmptyStringOrWhitespace(value)) { if (!isEmptyStringOrWhitespace(value)) {
throw new TypeError(typeErrorMessage('empty string or whitespace', value)); throw new TypeError(message ?? typeErrorMessage('empty string or whitespace', value));
} }
} }
function assertEnumCase(value, targetEnum) { function assertEnumCase(value, targetEnum, message) {
if (!isEnumCase(value, targetEnum)) { if (!isEnumCase(value, targetEnum)) {
throw new TypeError(typeErrorMessage('EnumCase', value)); throw new TypeError(message ?? typeErrorMessage('EnumCase', value));
} }
} }
function assertError(value) { function assertError(value, message) {
if (!isError(value)) { if (!isError(value)) {
throw new TypeError(typeErrorMessage('Error', value)); throw new TypeError(message ?? typeErrorMessage('Error', value));
} }
} }
function assertEvenInteger(value) { function assertEvenInteger(value, message) {
if (!isEvenInteger(value)) { if (!isEvenInteger(value)) {
throw new TypeError(typeErrorMessage('even integer', value)); throw new TypeError(message ?? typeErrorMessage('even integer', value));
} }
} }
function assertFalsy(value) { function assertFalsy(value, message) {
if (!isFalsy(value)) { if (!isFalsy(value)) {
throw new TypeError(typeErrorMessage('falsy', value)); throw new TypeError(message ?? typeErrorMessage('falsy', value));
} }
} }
function assertFloat32Array(value) { function assertFloat32Array(value, message) {
if (!isFloat32Array(value)) { if (!isFloat32Array(value)) {
throw new TypeError(typeErrorMessage('Float32Array', value)); throw new TypeError(message ?? typeErrorMessage('Float32Array', value));
} }
} }
function assertFloat64Array(value) { function assertFloat64Array(value, message) {
if (!isFloat64Array(value)) { if (!isFloat64Array(value)) {
throw new TypeError(typeErrorMessage('Float64Array', value)); throw new TypeError(message ?? typeErrorMessage('Float64Array', value));
} }
} }
function assertFormData(value) { function assertFormData(value, message) {
if (!isFormData(value)) { if (!isFormData(value)) {
throw new TypeError(typeErrorMessage('FormData', value)); throw new TypeError(message ?? typeErrorMessage('FormData', value));
} }
} }
// eslint-disable-next-line @typescript-eslint/ban-types // eslint-disable-next-line @typescript-eslint/ban-types
function assertFunction(value) { function assertFunction(value, message) {
if (!isFunction(value)) { if (!isFunction(value)) {
throw new TypeError(typeErrorMessage('Function', value)); throw new TypeError(message ?? typeErrorMessage('Function', value));
} }
} }
function assertGenerator(value) { function assertGenerator(value, message) {
if (!isGenerator(value)) { if (!isGenerator(value)) {
throw new TypeError(typeErrorMessage('Generator', value)); throw new TypeError(message ?? typeErrorMessage('Generator', value));
} }
} }
function assertGeneratorFunction(value) { function assertGeneratorFunction(value, message) {
if (!isGeneratorFunction(value)) { if (!isGeneratorFunction(value)) {
throw new TypeError(typeErrorMessage('GeneratorFunction', value)); throw new TypeError(message ?? typeErrorMessage('GeneratorFunction', value));
} }
} }
function assertHtmlElement(value) { function assertHtmlElement(value, message) {
if (!isHtmlElement(value)) { if (!isHtmlElement(value)) {
throw new TypeError(typeErrorMessage('HTMLElement', value)); throw new TypeError(message ?? typeErrorMessage('HTMLElement', value));
} }
} }
function assertInfinite(value) { function assertInfinite(value, message) {
if (!isInfinite(value)) { if (!isInfinite(value)) {
throw new TypeError(typeErrorMessage('infinite number', value)); throw new TypeError(message ?? typeErrorMessage('infinite number', value));
} }
} }
function assertInRange(value, range) { function assertInRange(value, range, message) {
if (!isInRange(value, range)) { if (!isInRange(value, range)) {
throw new TypeError(typeErrorMessage('in range', value)); throw new TypeError(message ?? typeErrorMessage('in range', value));
} }
} }
function assertInt16Array(value) { function assertInt16Array(value, message) {
if (!isInt16Array(value)) { if (!isInt16Array(value)) {
throw new TypeError(typeErrorMessage('Int16Array', value)); throw new TypeError(message ?? typeErrorMessage('Int16Array', value));
} }
} }
function assertInt32Array(value) { function assertInt32Array(value, message) {
if (!isInt32Array(value)) { if (!isInt32Array(value)) {
throw new TypeError(typeErrorMessage('Int32Array', value)); throw new TypeError(message ?? typeErrorMessage('Int32Array', value));
} }
} }
function assertInt8Array(value) { function assertInt8Array(value, message) {
if (!isInt8Array(value)) { if (!isInt8Array(value)) {
throw new TypeError(typeErrorMessage('Int8Array', value)); throw new TypeError(message ?? typeErrorMessage('Int8Array', value));
} }
} }
function assertInteger(value) { function assertInteger(value, message) {
if (!isInteger(value)) { if (!isInteger(value)) {
throw new TypeError(typeErrorMessage('integer', value)); throw new TypeError(message ?? typeErrorMessage('integer', value));
} }
} }
function assertIterable(value) { function assertIterable(value, message) {
if (!isIterable(value)) { if (!isIterable(value)) {
throw new TypeError(typeErrorMessage('Iterable', value)); throw new TypeError(message ?? typeErrorMessage('Iterable', value));
} }
} }
function assertMap(value) { function assertMap(value, message) {
if (!isMap(value)) { if (!isMap(value)) {
throw new TypeError(typeErrorMessage('Map', value)); throw new TypeError(message ?? typeErrorMessage('Map', value));
} }
} }
function assertNan(value) { function assertNan(value, message) {
if (!isNan(value)) { if (!isNan(value)) {
throw new TypeError(typeErrorMessage('NaN', value)); throw new TypeError(message ?? typeErrorMessage('NaN', value));
} }
} }
function assertNativePromise(value) { function assertNativePromise(value, message) {
if (!isNativePromise(value)) { if (!isNativePromise(value)) {
throw new TypeError(typeErrorMessage('native Promise', value)); throw new TypeError(message ?? typeErrorMessage('native Promise', value));
} }
} }
function assertNegativeNumber(value) { function assertNegativeNumber(value, message) {
if (!isNegativeNumber(value)) { if (!isNegativeNumber(value)) {
throw new TypeError(typeErrorMessage('negative number', value)); throw new TypeError(message ?? typeErrorMessage('negative number', value));
} }
} }
function assertNodeStream(value) { function assertNodeStream(value, message) {
if (!isNodeStream(value)) { if (!isNodeStream(value)) {
throw new TypeError(typeErrorMessage('Node.js Stream', value)); throw new TypeError(message ?? typeErrorMessage('Node.js Stream', value));
} }
} }
function assertNonEmptyArray(value) { function assertNonEmptyArray(value, message) {
if (!isNonEmptyArray(value)) { if (!isNonEmptyArray(value)) {
throw new TypeError(typeErrorMessage('non-empty array', value)); throw new TypeError(message ?? typeErrorMessage('non-empty array', value));
} }
} }
function assertNonEmptyMap(value) { function assertNonEmptyMap(value, message) {
if (!isNonEmptyMap(value)) { if (!isNonEmptyMap(value)) {
throw new TypeError(typeErrorMessage('non-empty map', value)); throw new TypeError(message ?? typeErrorMessage('non-empty map', value));
} }
} }
function assertNonEmptyObject(value) { function assertNonEmptyObject(value, message) {
if (!isNonEmptyObject(value)) { if (!isNonEmptyObject(value)) {
throw new TypeError(typeErrorMessage('non-empty object', value)); throw new TypeError(message ?? typeErrorMessage('non-empty object', value));
} }
} }
function assertNonEmptySet(value) { function assertNonEmptySet(value, message) {
if (!isNonEmptySet(value)) { if (!isNonEmptySet(value)) {
throw new TypeError(typeErrorMessage('non-empty set', value)); throw new TypeError(message ?? typeErrorMessage('non-empty set', value));
} }
} }
function assertNonEmptyString(value) { function assertNonEmptyString(value, message) {
if (!isNonEmptyString(value)) { if (!isNonEmptyString(value)) {
throw new TypeError(typeErrorMessage('non-empty string', value)); throw new TypeError(message ?? typeErrorMessage('non-empty string', value));
} }
} }
function assertNonEmptyStringAndNotWhitespace(value) { function assertNonEmptyStringAndNotWhitespace(value, message) {
if (!isNonEmptyStringAndNotWhitespace(value)) { if (!isNonEmptyStringAndNotWhitespace(value)) {
throw new TypeError(typeErrorMessage('non-empty string and not whitespace', value)); throw new TypeError(message ?? typeErrorMessage('non-empty string and not whitespace', value));
} }
} }
// eslint-disable-next-line @typescript-eslint/ban-types // eslint-disable-next-line @typescript-eslint/ban-types
function assertNull(value) { function assertNull(value, message) {
if (!isNull(value)) { if (!isNull(value)) {
throw new TypeError(typeErrorMessage('null', value)); throw new TypeError(message ?? typeErrorMessage('null', value));
} }
} }
// eslint-disable-next-line @typescript-eslint/ban-types // eslint-disable-next-line @typescript-eslint/ban-types
function assertNullOrUndefined(value) { function assertNullOrUndefined(value, message) {
if (!isNullOrUndefined(value)) { if (!isNullOrUndefined(value)) {
throw new TypeError(typeErrorMessage('null or undefined', value)); throw new TypeError(message ?? typeErrorMessage('null or undefined', value));
} }
} }
function assertNumber(value) { function assertNumber(value, message) {
if (!isNumber(value)) { if (!isNumber(value)) {
throw new TypeError(typeErrorMessage('number', value)); throw new TypeError(message ?? typeErrorMessage('number', value));
} }
} }
function assertNumericString(value) { function assertNumericString(value, message) {
if (!isNumericString(value)) { if (!isNumericString(value)) {
throw new TypeError(typeErrorMessage('string with a number', value)); throw new TypeError(message ?? typeErrorMessage('string with a number', value));
} }
} }
// eslint-disable-next-line @typescript-eslint/ban-types // eslint-disable-next-line @typescript-eslint/ban-types
function assertObject(value) { function assertObject(value, message) {
if (!isObject(value)) { if (!isObject(value)) {
throw new TypeError(typeErrorMessage('Object', value)); throw new TypeError(message ?? typeErrorMessage('Object', value));
} }
} }
function assertObservable(value) { function assertObservable(value, message) {
if (!isObservable(value)) { if (!isObservable(value)) {
throw new TypeError(typeErrorMessage('Observable', value)); throw new TypeError(message ?? typeErrorMessage('Observable', value));
} }
} }
function assertOddInteger(value) { function assertOddInteger(value, message) {
if (!isOddInteger(value)) { if (!isOddInteger(value)) {
throw new TypeError(typeErrorMessage('odd integer', value)); throw new TypeError(message ?? typeErrorMessage('odd integer', value));
} }
} }
function assertPlainObject(value) { function assertPlainObject(value, message) {
if (!isPlainObject(value)) { if (!isPlainObject(value)) {
throw new TypeError(typeErrorMessage('plain object', value)); throw new TypeError(message ?? typeErrorMessage('plain object', value));
} }
} }
function assertPositiveNumber(value) { function assertPositiveNumber(value, message) {
if (!isPositiveNumber(value)) { if (!isPositiveNumber(value)) {
throw new TypeError(typeErrorMessage('positive number', value)); throw new TypeError(message ?? typeErrorMessage('positive number', value));
} }
} }
function assertPrimitive(value) { function assertPrimitive(value, message) {
if (!isPrimitive(value)) { if (!isPrimitive(value)) {
throw new TypeError(typeErrorMessage('primitive', value)); throw new TypeError(message ?? typeErrorMessage('primitive', value));
} }
} }
function assertPromise(value) { function assertPromise(value, message) {
if (!isPromise(value)) { if (!isPromise(value)) {
throw new TypeError(typeErrorMessage('Promise', value)); throw new TypeError(message ?? typeErrorMessage('Promise', value));
} }
} }
function assertPropertyKey(value) { function assertPropertyKey(value, message) {
if (!isPropertyKey(value)) { if (!isPropertyKey(value)) {
throw new TypeError(typeErrorMessage('PropertyKey', value)); throw new TypeError(message ?? typeErrorMessage('PropertyKey', value));
} }
} }
function assertRegExp(value) { function assertRegExp(value, message) {
if (!isRegExp(value)) { if (!isRegExp(value)) {
throw new TypeError(typeErrorMessage('RegExp', value)); throw new TypeError(message ?? typeErrorMessage('RegExp', value));
} }
} }
function assertSafeInteger(value) { function assertSafeInteger(value, message) {
if (!isSafeInteger(value)) { if (!isSafeInteger(value)) {
throw new TypeError(typeErrorMessage('integer', value)); throw new TypeError(message ?? typeErrorMessage('integer', value));
} }
} }
function assertSet(value) { function assertSet(value, message) {
if (!isSet(value)) { if (!isSet(value)) {
throw new TypeError(typeErrorMessage('Set', value)); throw new TypeError(message ?? typeErrorMessage('Set', value));
} }
} }
function assertSharedArrayBuffer(value) { function assertSharedArrayBuffer(value, message) {
if (!isSharedArrayBuffer(value)) { if (!isSharedArrayBuffer(value)) {
throw new TypeError(typeErrorMessage('SharedArrayBuffer', value)); throw new TypeError(message ?? typeErrorMessage('SharedArrayBuffer', value));
} }
} }
function assertString(value) { function assertString(value, message) {
if (!isString(value)) { if (!isString(value)) {
throw new TypeError(typeErrorMessage('string', value)); throw new TypeError(message ?? typeErrorMessage('string', value));
} }
} }
function assertSymbol(value) { function assertSymbol(value, message) {
if (!isSymbol(value)) { if (!isSymbol(value)) {
throw new TypeError(typeErrorMessage('symbol', value)); throw new TypeError(message ?? typeErrorMessage('symbol', value));
} }
} }
function assertTruthy(value) { function assertTruthy(value, message) {
if (!isTruthy(value)) { if (!isTruthy(value)) {
throw new TypeError(typeErrorMessage('truthy', value)); throw new TypeError(message ?? typeErrorMessage('truthy', value));
} }
} }
function assertTupleLike(value, guards) { function assertTupleLike(value, guards, message) {
if (!isTupleLike(value, guards)) { if (!isTupleLike(value, guards)) {
throw new TypeError(typeErrorMessage('tuple-like', value)); throw new TypeError(message ?? typeErrorMessage('tuple-like', value));
} }
} }
function assertTypedArray(value) { function assertTypedArray(value, message) {
if (!isTypedArray(value)) { if (!isTypedArray(value)) {
throw new TypeError(typeErrorMessage('TypedArray', value)); throw new TypeError(message ?? typeErrorMessage('TypedArray', value));
} }
} }
function assertUint16Array(value) { function assertUint16Array(value, message) {
if (!isUint16Array(value)) { if (!isUint16Array(value)) {
throw new TypeError(typeErrorMessage('Uint16Array', value)); throw new TypeError(message ?? typeErrorMessage('Uint16Array', value));
} }
} }
function assertUint32Array(value) { function assertUint32Array(value, message) {
if (!isUint32Array(value)) { if (!isUint32Array(value)) {
throw new TypeError(typeErrorMessage('Uint32Array', value)); throw new TypeError(message ?? typeErrorMessage('Uint32Array', value));
} }
} }
function assertUint8Array(value) { function assertUint8Array(value, message) {
if (!isUint8Array(value)) { if (!isUint8Array(value)) {
throw new TypeError(typeErrorMessage('Uint8Array', value)); throw new TypeError(message ?? typeErrorMessage('Uint8Array', value));
} }
} }
function assertUint8ClampedArray(value) { function assertUint8ClampedArray(value, message) {
if (!isUint8ClampedArray(value)) { if (!isUint8ClampedArray(value)) {
throw new TypeError(typeErrorMessage('Uint8ClampedArray', value)); throw new TypeError(message ?? typeErrorMessage('Uint8ClampedArray', value));
} }
} }
function assertUndefined(value) { function assertUndefined(value, message) {
if (!isUndefined(value)) { if (!isUndefined(value)) {
throw new TypeError(typeErrorMessage('undefined', value)); throw new TypeError(message ?? typeErrorMessage('undefined', value));
} }
} }
function assertUrlInstance(value) { function assertUrlInstance(value, message) {
if (!isUrlInstance(value)) { if (!isUrlInstance(value)) {
throw new TypeError(typeErrorMessage('URL', value)); throw new TypeError(message ?? typeErrorMessage('URL', value));
} }
} }
// eslint-disable-next-line unicorn/prevent-abbreviations // eslint-disable-next-line unicorn/prevent-abbreviations
function assertUrlSearchParams(value) { function assertUrlSearchParams(value, message) {
if (!isUrlSearchParams(value)) { if (!isUrlSearchParams(value)) {
throw new TypeError(typeErrorMessage('URLSearchParams', value)); throw new TypeError(message ?? typeErrorMessage('URLSearchParams', value));
} }
} }
function assertUrlString(value) { function assertUrlString(value, message) {
if (!isUrlString(value)) { if (!isUrlString(value)) {
throw new TypeError(typeErrorMessage('string with a URL', value)); throw new TypeError(message ?? typeErrorMessage('string with a URL', value));
} }
} }
function assertValidDate(value) { function assertValidDate(value, message) {
if (!isValidDate(value)) { if (!isValidDate(value)) {
throw new TypeError(typeErrorMessage('valid Date', value)); throw new TypeError(message ?? typeErrorMessage('valid Date', value));
} }
} }
function assertValidLength(value) { function assertValidLength(value, message) {
if (!isValidLength(value)) { if (!isValidLength(value)) {
throw new TypeError(typeErrorMessage('valid length', value)); throw new TypeError(message ?? typeErrorMessage('valid length', value));
} }
} }
// eslint-disable-next-line @typescript-eslint/ban-types // eslint-disable-next-line @typescript-eslint/ban-types
function assertWeakMap(value) { function assertWeakMap(value, message) {
if (!isWeakMap(value)) { if (!isWeakMap(value)) {
throw new TypeError(typeErrorMessage('WeakMap', value)); throw new TypeError(message ?? typeErrorMessage('WeakMap', value));
} }
} }
// eslint-disable-next-line @typescript-eslint/ban-types // eslint-disable-next-line @typescript-eslint/ban-types
function assertWeakRef(value) { function assertWeakRef(value, message) {
if (!isWeakRef(value)) { if (!isWeakRef(value)) {
throw new TypeError(typeErrorMessage('WeakRef', value)); throw new TypeError(message ?? typeErrorMessage('WeakRef', value));
} }
} }
// eslint-disable-next-line @typescript-eslint/ban-types // eslint-disable-next-line @typescript-eslint/ban-types
function assertWeakSet(value) { function assertWeakSet(value, message) {
if (!isWeakSet(value)) { if (!isWeakSet(value)) {
throw new TypeError(typeErrorMessage('WeakSet', value)); throw new TypeError(message ?? typeErrorMessage('WeakSet', value));
} }
} }
function assertWhitespaceString(value) { function assertWhitespaceString(value, message) {
if (!isWhitespaceString(value)) { if (!isWhitespaceString(value)) {
throw new TypeError(typeErrorMessage('whitespace string', value)); throw new TypeError(message ?? typeErrorMessage('whitespace string', value));
} }
} }
/* harmony default export */ const dist = (is); /* harmony default export */ const dist = (is);
@ -93394,7 +93394,9 @@ const promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.ur
const external_node_path_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:path"); const external_node_path_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:path");
;// CONCATENATED MODULE: external "node:stream/promises" ;// CONCATENATED MODULE: external "node:stream/promises"
const external_node_stream_promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:stream/promises"); const external_node_stream_promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:stream/promises");
;// CONCATENATED MODULE: ./node_modules/.pnpm/github.com+DeterminateSystems+detsys-ts@cd38b227c4d6faca10aed591b1f8863ef7b93dce_nckxvs7jbq6qb4vr5xhgyxcrgy/node_modules/detsys-ts/dist/index.js ;// CONCATENATED MODULE: external "node:zlib"
const external_node_zlib_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:zlib");
;// CONCATENATED MODULE: ./node_modules/.pnpm/github.com+DeterminateSystems+detsys-ts@38e5bec8265276e0ffc60a474eeb0fe563690ad1_ohjjfxyz5zc5v7acp635bu77r4/node_modules/detsys-ts/dist/index.js
var __defProp = Object.defineProperty; var __defProp = Object.defineProperty;
var __export = (target, all) => { var __export = (target, all) => {
for (var name in all) for (var name in all)
@ -93740,22 +93742,30 @@ function getNixPlatform(archOs) {
// src/inputs.ts // src/inputs.ts
var inputs_exports = {}; var inputs_exports = {};
__export(inputs_exports, { __export(inputs_exports, {
getArrayOfStrings: () => getArrayOfStrings,
getBool: () => getBool, getBool: () => getBool,
getCommaSeparatedArrayOfStrings: () => getCommaSeparatedArrayOfStrings,
getMultilineStringOrNull: () => getMultilineStringOrNull, getMultilineStringOrNull: () => getMultilineStringOrNull,
getNumberOrNull: () => getNumberOrNull, getNumberOrNull: () => getNumberOrNull,
getString: () => getString, getString: () => getString,
getStringOrNull: () => getStringOrNull, getStringOrNull: () => getStringOrNull,
getStringOrUndefined: () => getStringOrUndefined getStringOrUndefined: () => getStringOrUndefined,
handleString: () => handleString
}); });
var getBool = (name) => { var getBool = (name) => {
return core.getBooleanInput(name); return core.getBooleanInput(name);
}; };
var getCommaSeparatedArrayOfStrings = (name, stripWhitespace) => { var getArrayOfStrings = (name, separator) => {
const strip = stripWhitespace ?? false;
const original = getString(name); const original = getString(name);
return (strip ? original.replace(/\s+/g, "") : original).split(","); return handleString(original, separator);
};
var handleString = (input, separator) => {
const sepChar = separator === "comma" ? "," : /\s+/;
const trimmed = input.trim();
if (trimmed === "") {
return [];
}
return trimmed.split(sepChar).map((s) => s.trim());
}; };
var getMultilineStringOrNull = (name) => { var getMultilineStringOrNull = (name) => {
const value = core.getMultilineInput(name); const value = core.getMultilineInput(name);
@ -93836,18 +93846,24 @@ function constructSourceParameters(legacyPrefix) {
var DEFAULT_IDS_HOST = "https://install.determinate.systems"; var DEFAULT_IDS_HOST = "https://install.determinate.systems";
var IDS_HOST = process.env["IDS_HOST"] ?? DEFAULT_IDS_HOST; var IDS_HOST = process.env["IDS_HOST"] ?? DEFAULT_IDS_HOST;
var EVENT_EXCEPTION = "exception"; var EVENT_EXCEPTION = "exception";
var EVENT_ARTIFACT_CACHE_HIT = "artifact_cache_hit"; var EVENT_ARTIFACT_CACHE_HIT = "artifact_cache_hit";
var EVENT_ARTIFACT_CACHE_MISS = "artifact_cache_miss"; var EVENT_ARTIFACT_CACHE_MISS = "artifact_cache_miss";
var EVENT_ARTIFACT_CACHE_PERSIST = "artifact_cache_persist";
var FACT_ENDED_WITH_EXCEPTION = "ended_with_exception"; var FACT_ENDED_WITH_EXCEPTION = "ended_with_exception";
var FACT_FINAL_EXCEPTION = "final_exception"; var FACT_FINAL_EXCEPTION = "final_exception";
var FACT_SOURCE_URL = "source_url";
var FACT_SOURCE_URL_ETAG = "source_url_etag";
var IdsToolbox = class { var IdsToolbox = class {
constructor(actionOptions) { constructor(actionOptions) {
this.actionOptions = makeOptionsConfident(actionOptions); this.actionOptions = makeOptionsConfident(actionOptions);
this.hookMain = void 0; this.hookMain = void 0;
this.hookPost = void 0; this.hookPost = void 0;
this.exceptionAttachments = /* @__PURE__ */ new Map();
this.events = []; this.events = [];
this.client = got_dist_source.extend({ this.client = got_dist_source.extend({
retry: { retry: {
@ -93926,6 +93942,17 @@ var IdsToolbox = class {
); );
this.recordEvent(`begin_${this.executionPhase}`); this.recordEvent(`begin_${this.executionPhase}`);
} }
/**
* Attach a file to the diagnostics data in error conditions.
*
* The file at `location` doesn't need to exist when stapleFile is called.
*
* If the file doesn't exist or is unreadable when trying to staple the attachments, the JS error will be stored in a context value at `staple_failure_{name}`.
* If the file is readable, the file's contents will be stored in a context value at `staple_value_{name}`.
*/
stapleFile(name, location) {
this.exceptionAttachments.set(name, location);
}
onMain(callback) { onMain(callback) {
this.hookMain = callback; this.hookMain = callback;
} }
@ -93938,6 +93965,9 @@ var IdsToolbox = class {
process.exitCode = 1; process.exitCode = 1;
}); });
} }
stringifyError(error2) {
return error2 instanceof Error || typeof error2 == "string" ? error2.toString() : JSON.stringify(error2);
}
async executeAsync() { async executeAsync() {
try { try {
process.env.DETSYS_CORRELATION = JSON.stringify( process.env.DETSYS_CORRELATION = JSON.stringify(
@ -93955,14 +93985,31 @@ var IdsToolbox = class {
this.addFact(FACT_ENDED_WITH_EXCEPTION, false); this.addFact(FACT_ENDED_WITH_EXCEPTION, false);
} catch (error2) { } catch (error2) {
this.addFact(FACT_ENDED_WITH_EXCEPTION, true); this.addFact(FACT_ENDED_WITH_EXCEPTION, true);
const reportable = error2 instanceof Error || typeof error2 == "string" ? error2.toString() : JSON.stringify(error2); const reportable = this.stringifyError(error2);
this.addFact(FACT_FINAL_EXCEPTION, reportable); this.addFact(FACT_FINAL_EXCEPTION, reportable);
if (this.executionPhase === "post") { if (this.executionPhase === "post") {
core.warning(reportable); core.warning(reportable);
} else { } else {
core.setFailed(reportable); core.setFailed(reportable);
} }
this.recordEvent(EVENT_EXCEPTION); const do_gzip = (0,external_node_util_.promisify)(external_node_zlib_namespaceObject.gzip);
const exceptionContext = /* @__PURE__ */ new Map();
for (const [attachmentLabel, filePath] of this.exceptionAttachments) {
try {
const logText = (0,external_node_fs_namespaceObject.readFileSync)(filePath);
const buf = await do_gzip(logText);
exceptionContext.set(
`staple_value_${attachmentLabel}`,
buf.toString("base64")
);
} catch (e) {
exceptionContext.set(
`staple_failure_${attachmentLabel}`,
this.stringifyError(e)
);
}
}
this.recordEvent(EVENT_EXCEPTION, Object.fromEntries(exceptionContext));
} finally { } finally {
await this.complete(); await this.complete();
} }
@ -94004,6 +94051,7 @@ var IdsToolbox = class {
const versionCheckup = await this.client.head(correlatedUrl); const versionCheckup = await this.client.head(correlatedUrl);
if (versionCheckup.headers.etag) { if (versionCheckup.headers.etag) {
const v = versionCheckup.headers.etag; const v = versionCheckup.headers.etag;
this.addFact(FACT_SOURCE_URL_ETAG, v);
core.debug( core.debug(
`Checking the tool cache for ${this.getUrl()} at ${v}` `Checking the tool cache for ${this.getUrl()} at ${v}`
); );
@ -94052,6 +94100,7 @@ var IdsToolbox = class {
getUrl() { getUrl() {
const p = this.sourceParameters; const p = this.sourceParameters;
if (p.url) { if (p.url) {
this.addFact(FACT_SOURCE_URL, p.url);
return new URL(p.url); return new URL(p.url);
} }
const fetchUrl = new URL(IDS_HOST); const fetchUrl = new URL(IDS_HOST);
@ -94068,6 +94117,7 @@ var IdsToolbox = class {
fetchUrl.pathname += `/stable`; fetchUrl.pathname += `/stable`;
} }
fetchUrl.pathname += `/${this.architectureFetchSuffix}`; fetchUrl.pathname += `/${this.architectureFetchSuffix}`;
this.addFact(FACT_SOURCE_URL, fetchUrl.toString());
return fetchUrl; return fetchUrl;
} }
cacheKey(version2) { cacheKey(version2) {
@ -94115,7 +94165,7 @@ var IdsToolbox = class {
void 0, void 0,
true true
); );
this.recordEvent(EVENT_ARTIFACT_CACHE_HIT); this.recordEvent(EVENT_ARTIFACT_CACHE_PERSIST);
} finally { } finally {
process.env.GITHUB_WORKSPACE = process.env.GITHUB_WORKSPACE_BACKUP; process.env.GITHUB_WORKSPACE = process.env.GITHUB_WORKSPACE_BACKUP;
delete process.env.GITHUB_WORKSPACE_BACKUP; delete process.env.GITHUB_WORKSPACE_BACKUP;
@ -94302,11 +94352,8 @@ var UpdateFlakeLockAction = class {
}; };
this.idslib = new IdsToolbox(options); this.idslib = new IdsToolbox(options);
this.commitMessage = inputs_exports.getString("commit-msg"); this.commitMessage = inputs_exports.getString("commit-msg");
this.flakeInputs = inputs_exports.getCommaSeparatedArrayOfStrings("inputs", true); this.flakeInputs = inputs_exports.getArrayOfStrings("inputs", "comma");
this.nixOptions = inputs_exports.getCommaSeparatedArrayOfStrings( this.nixOptions = inputs_exports.getArrayOfStrings("nix-options", "comma");
"nix-options",
true
);
this.pathToFlakeDir = inputs_exports.getStringOrNull("path-to-flake-dir"); this.pathToFlakeDir = inputs_exports.getStringOrNull("path-to-flake-dir");
} }
async update() { async update() {
@ -94315,6 +94362,14 @@ var UpdateFlakeLockAction = class {
this.flakeInputs, this.flakeInputs,
this.commitMessage this.commitMessage
); );
core.debug(
JSON.stringify({
options: this.nixOptions,
inputs: this.flakeInputs,
message: this.commitMessage,
args: nixCommandArgs
})
);
const execOptions = {}; const execOptions = {};
if (this.pathToFlakeDir !== null) { if (this.pathToFlakeDir !== null) {
execOptions.cwd = this.pathToFlakeDir; execOptions.cwd = this.pathToFlakeDir;

2
dist/index.js.map vendored
View file

@ -1 +1 @@
{"version":3,"sources":["../src/nix.ts","../src/index.ts"],"sourcesContent":["// Build the Nix args out of inputs from the Actions environment\nexport function makeNixCommandArgs(\n nixOptions: string[],\n flakeInputs: string[],\n commitMessage: string,\n): string[] {\n const flakeInputFlags = flakeInputs.flatMap((input) => [\n \"--update-input\",\n input,\n ]);\n\n return nixOptions\n .concat([\"flake\", \"lock\"])\n .concat(flakeInputFlags)\n .concat([\n \"--commit-lock-file\",\n \"--commit-lock-file-summary\",\n `\"${commitMessage}\"`,\n ]);\n}\n","import { makeNixCommandArgs } from \"./nix.js\";\nimport * as actionsCore from \"@actions/core\";\nimport * as actionsExec from \"@actions/exec\";\nimport { ActionOptions, IdsToolbox, inputs } from \"detsys-ts\";\n\nconst EVENT_EXECUTION_FAILURE = \"execution_failure\";\n\nclass UpdateFlakeLockAction {\n idslib: IdsToolbox;\n private commitMessage: string;\n private nixOptions: string[];\n private flakeInputs: string[];\n private pathToFlakeDir: string | null;\n\n constructor() {\n const options: ActionOptions = {\n name: \"update-flake-lock\",\n fetchStyle: \"universal\",\n requireNix: \"fail\",\n };\n\n this.idslib = new IdsToolbox(options);\n this.commitMessage = inputs.getString(\"commit-msg\");\n this.flakeInputs = inputs.getCommaSeparatedArrayOfStrings(\"inputs\", true);\n this.nixOptions = inputs.getCommaSeparatedArrayOfStrings(\n \"nix-options\",\n true,\n );\n this.pathToFlakeDir = inputs.getStringOrNull(\"path-to-flake-dir\");\n }\n\n async update(): Promise<void> {\n // Nix command of this form:\n // nix ${maybe nix options} flake lock ${maybe --update-input flags} --commit-lock-file --commit-lock-file-summary ${commit message}\n // Example commands:\n // nix --extra-substituters https://example.com flake lock --update-input nixpkgs --commit-lock-file --commit-lock-file-summary \"updated flake.lock\"\n // nix flake lock --commit-lock-file --commit-lock-file-summary \"updated flake.lock\"\n const nixCommandArgs: string[] = makeNixCommandArgs(\n this.nixOptions,\n this.flakeInputs,\n this.commitMessage,\n );\n\n const execOptions: actionsExec.ExecOptions = {};\n if (this.pathToFlakeDir !== null) {\n execOptions.cwd = this.pathToFlakeDir;\n }\n\n const exitCode = await actionsExec.exec(\"nix\", nixCommandArgs, execOptions);\n\n if (exitCode !== 0) {\n this.idslib.recordEvent(EVENT_EXECUTION_FAILURE, {\n exitCode,\n });\n actionsCore.setFailed(`non-zero exit code of ${exitCode} detected`);\n } else {\n actionsCore.info(`flake.lock file was successfully updated`);\n }\n }\n}\n\nfunction main(): void {\n const updateFlakeLock = new UpdateFlakeLockAction();\n\n updateFlakeLock.idslib.onMain(async () => {\n await updateFlakeLock.update();\n });\n\n updateFlakeLock.idslib.execute();\n}\n\nmain();\n"],"mappings":";AACO,SAAS,mBACd,YACA,aACA,eACU;AACV,QAAM,kBAAkB,YAAY,QAAQ,CAAC,UAAU;AAAA,IACrD;AAAA,IACA;AAAA,EACF,CAAC;AAED,SAAO,WACJ,OAAO,CAAC,SAAS,MAAM,CAAC,EACxB,OAAO,eAAe,EACtB,OAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA,IAAI,aAAa;AAAA,EACnB,CAAC;AACL;;;AClBA,YAAY,iBAAiB;AAC7B,YAAY,iBAAiB;AAC7B,SAAwB,YAAY,cAAc;AAElD,IAAM,0BAA0B;AAEhC,IAAM,wBAAN,MAA4B;AAAA,EAO1B,cAAc;AACZ,UAAM,UAAyB;AAAA,MAC7B,MAAM;AAAA,MACN,YAAY;AAAA,MACZ,YAAY;AAAA,IACd;AAEA,SAAK,SAAS,IAAI,WAAW,OAAO;AACpC,SAAK,gBAAgB,OAAO,UAAU,YAAY;AAClD,SAAK,cAAc,OAAO,gCAAgC,UAAU,IAAI;AACxE,SAAK,aAAa,OAAO;AAAA,MACvB;AAAA,MACA;AAAA,IACF;AACA,SAAK,iBAAiB,OAAO,gBAAgB,mBAAmB;AAAA,EAClE;AAAA,EAEA,MAAM,SAAwB;AAM5B,UAAM,iBAA2B;AAAA,MAC/B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,IACP;AAEA,UAAM,cAAuC,CAAC;AAC9C,QAAI,KAAK,mBAAmB,MAAM;AAChC,kBAAY,MAAM,KAAK;AAAA,IACzB;AAEA,UAAM,WAAW,MAAkB,iBAAK,OAAO,gBAAgB,WAAW;AAE1E,QAAI,aAAa,GAAG;AAClB,WAAK,OAAO,YAAY,yBAAyB;AAAA,QAC/C;AAAA,MACF,CAAC;AACD,MAAY,sBAAU,yBAAyB,QAAQ,WAAW;AAAA,IACpE,OAAO;AACL,MAAY,iBAAK,0CAA0C;AAAA,IAC7D;AAAA,EACF;AACF;AAEA,SAAS,OAAa;AACpB,QAAM,kBAAkB,IAAI,sBAAsB;AAElD,kBAAgB,OAAO,OAAO,YAAY;AACxC,UAAM,gBAAgB,OAAO;AAAA,EAC/B,CAAC;AAED,kBAAgB,OAAO,QAAQ;AACjC;AAEA,KAAK;","names":[]} {"version":3,"sources":["../src/nix.ts","../src/index.ts"],"sourcesContent":["// Build the Nix args out of inputs from the Actions environment\nexport function makeNixCommandArgs(\n nixOptions: string[],\n flakeInputs: string[],\n commitMessage: string,\n): string[] {\n const flakeInputFlags = flakeInputs.flatMap((input) => [\n \"--update-input\",\n input,\n ]);\n\n return nixOptions\n .concat([\"flake\", \"lock\"])\n .concat(flakeInputFlags)\n .concat([\n \"--commit-lock-file\",\n \"--commit-lock-file-summary\",\n `\"${commitMessage}\"`,\n ]);\n}\n","import { makeNixCommandArgs } from \"./nix.js\";\nimport * as actionsCore from \"@actions/core\";\nimport * as actionsExec from \"@actions/exec\";\nimport { ActionOptions, IdsToolbox, inputs } from \"detsys-ts\";\n\nconst EVENT_EXECUTION_FAILURE = \"execution_failure\";\n\nclass UpdateFlakeLockAction {\n idslib: IdsToolbox;\n private commitMessage: string;\n private nixOptions: string[];\n private flakeInputs: string[];\n private pathToFlakeDir: string | null;\n\n constructor() {\n const options: ActionOptions = {\n name: \"update-flake-lock\",\n fetchStyle: \"universal\",\n requireNix: \"fail\",\n };\n\n this.idslib = new IdsToolbox(options);\n this.commitMessage = inputs.getString(\"commit-msg\");\n this.flakeInputs = inputs.getArrayOfStrings(\"inputs\", \"comma\");\n this.nixOptions = inputs.getArrayOfStrings(\"nix-options\", \"comma\");\n this.pathToFlakeDir = inputs.getStringOrNull(\"path-to-flake-dir\");\n }\n\n async update(): Promise<void> {\n // Nix command of this form:\n // nix ${maybe nix options} flake lock ${maybe --update-input flags} --commit-lock-file --commit-lock-file-summary ${commit message}\n // Example commands:\n // nix --extra-substituters https://example.com flake lock --update-input nixpkgs --commit-lock-file --commit-lock-file-summary \"updated flake.lock\"\n // nix flake lock --commit-lock-file --commit-lock-file-summary \"updated flake.lock\"\n const nixCommandArgs: string[] = makeNixCommandArgs(\n this.nixOptions,\n this.flakeInputs,\n this.commitMessage,\n );\n\n actionsCore.debug(\n JSON.stringify({\n options: this.nixOptions,\n inputs: this.flakeInputs,\n message: this.commitMessage,\n args: nixCommandArgs,\n }),\n );\n\n const execOptions: actionsExec.ExecOptions = {};\n if (this.pathToFlakeDir !== null) {\n execOptions.cwd = this.pathToFlakeDir;\n }\n\n const exitCode = await actionsExec.exec(\"nix\", nixCommandArgs, execOptions);\n\n if (exitCode !== 0) {\n this.idslib.recordEvent(EVENT_EXECUTION_FAILURE, {\n exitCode,\n });\n actionsCore.setFailed(`non-zero exit code of ${exitCode} detected`);\n } else {\n actionsCore.info(`flake.lock file was successfully updated`);\n }\n }\n}\n\nfunction main(): void {\n const updateFlakeLock = new UpdateFlakeLockAction();\n\n updateFlakeLock.idslib.onMain(async () => {\n await updateFlakeLock.update();\n });\n\n updateFlakeLock.idslib.execute();\n}\n\nmain();\n"],"mappings":";AACO,SAAS,mBACd,YACA,aACA,eACU;AACV,QAAM,kBAAkB,YAAY,QAAQ,CAAC,UAAU;AAAA,IACrD;AAAA,IACA;AAAA,EACF,CAAC;AAED,SAAO,WACJ,OAAO,CAAC,SAAS,MAAM,CAAC,EACxB,OAAO,eAAe,EACtB,OAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA,IAAI,aAAa;AAAA,EACnB,CAAC;AACL;;;AClBA,YAAY,iBAAiB;AAC7B,YAAY,iBAAiB;AAC7B,SAAwB,YAAY,cAAc;AAElD,IAAM,0BAA0B;AAEhC,IAAM,wBAAN,MAA4B;AAAA,EAO1B,cAAc;AACZ,UAAM,UAAyB;AAAA,MAC7B,MAAM;AAAA,MACN,YAAY;AAAA,MACZ,YAAY;AAAA,IACd;AAEA,SAAK,SAAS,IAAI,WAAW,OAAO;AACpC,SAAK,gBAAgB,OAAO,UAAU,YAAY;AAClD,SAAK,cAAc,OAAO,kBAAkB,UAAU,OAAO;AAC7D,SAAK,aAAa,OAAO,kBAAkB,eAAe,OAAO;AACjE,SAAK,iBAAiB,OAAO,gBAAgB,mBAAmB;AAAA,EAClE;AAAA,EAEA,MAAM,SAAwB;AAM5B,UAAM,iBAA2B;AAAA,MAC/B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,IACP;AAEA,IAAY;AAAA,MACV,KAAK,UAAU;AAAA,QACb,SAAS,KAAK;AAAA,QACd,QAAQ,KAAK;AAAA,QACb,SAAS,KAAK;AAAA,QACd,MAAM;AAAA,MACR,CAAC;AAAA,IACH;AAEA,UAAM,cAAuC,CAAC;AAC9C,QAAI,KAAK,mBAAmB,MAAM;AAChC,kBAAY,MAAM,KAAK;AAAA,IACzB;AAEA,UAAM,WAAW,MAAkB,iBAAK,OAAO,gBAAgB,WAAW;AAE1E,QAAI,aAAa,GAAG;AAClB,WAAK,OAAO,YAAY,yBAAyB;AAAA,QAC/C;AAAA,MACF,CAAC;AACD,MAAY,sBAAU,yBAAyB,QAAQ,WAAW;AAAA,IACpE,OAAO;AACL,MAAY,iBAAK,0CAA0C;AAAA,IAC7D;AAAA,EACF;AACF;AAEA,SAAS,OAAa;AACpB,QAAM,kBAAkB,IAAI,sBAAsB;AAElD,kBAAgB,OAAO,OAAO,YAAY;AACxC,UAAM,gBAAgB,OAAO;AAAA,EAC/B,CAAC;AAED,kBAAgB,OAAO,QAAQ;AACjC;AAEA,KAAK;","names":[]}

View file

@ -28,11 +28,11 @@
"dependencies": { "dependencies": {
"@actions/core": "^1.10.1", "@actions/core": "^1.10.1",
"@actions/exec": "^1.1.1", "@actions/exec": "^1.1.1",
"detsys-ts": "github:DeterminateSystems/detsys-ts" "detsys-ts": "github:DeterminateSystems/detsys-ts#array-inputs"
}, },
"devDependencies": { "devDependencies": {
"@trivago/prettier-plugin-sort-imports": "^4.3.0", "@trivago/prettier-plugin-sort-imports": "^4.3.0",
"@typescript-eslint/eslint-plugin": "^7.7.0", "@typescript-eslint/eslint-plugin": "^7.8.0",
"@vercel/ncc": "^0.38.1", "@vercel/ncc": "^0.38.1",
"eslint": "^8.57.0", "eslint": "^8.57.0",
"eslint-import-resolver-typescript": "^3.6.1", "eslint-import-resolver-typescript": "^3.6.1",
@ -42,6 +42,6 @@
"prettier": "^3.2.5", "prettier": "^3.2.5",
"tsup": "^8.0.2", "tsup": "^8.0.2",
"typescript": "^5.4.5", "typescript": "^5.4.5",
"vitest": "^1.5.2" "vitest": "^1.6.0"
} }
} }

File diff suppressed because it is too large Load diff

View file

@ -21,11 +21,8 @@ class UpdateFlakeLockAction {
this.idslib = new IdsToolbox(options); this.idslib = new IdsToolbox(options);
this.commitMessage = inputs.getString("commit-msg"); this.commitMessage = inputs.getString("commit-msg");
this.flakeInputs = inputs.getCommaSeparatedArrayOfStrings("inputs", true); this.flakeInputs = inputs.getArrayOfStrings("inputs", "comma");
this.nixOptions = inputs.getCommaSeparatedArrayOfStrings( this.nixOptions = inputs.getArrayOfStrings("nix-options", "comma");
"nix-options",
true,
);
this.pathToFlakeDir = inputs.getStringOrNull("path-to-flake-dir"); this.pathToFlakeDir = inputs.getStringOrNull("path-to-flake-dir");
} }
@ -41,6 +38,15 @@ class UpdateFlakeLockAction {
this.commitMessage, this.commitMessage,
); );
actionsCore.debug(
JSON.stringify({
options: this.nixOptions,
inputs: this.flakeInputs,
message: this.commitMessage,
args: nixCommandArgs,
}),
);
const execOptions: actionsExec.ExecOptions = {}; const execOptions: actionsExec.ExecOptions = {};
if (this.pathToFlakeDir !== null) { if (this.pathToFlakeDir !== null) {
execOptions.cwd = this.pathToFlakeDir; execOptions.cwd = this.pathToFlakeDir;