Skip to content

Instantly share code, notes, and snippets.

@ptheofan
Created March 21, 2023 12:18
Show Gist options
  • Save ptheofan/105f5338811944805f91f9a01a9059d8 to your computer and use it in GitHub Desktop.
Save ptheofan/105f5338811944805f91f9a01a9059d8 to your computer and use it in GitHub Desktop.
copilot-infinite-loop

Having fun with copilot... all I had was a class Token with a handful of properties and then with every new line it went from withoutX to withoutXandXandX.... enjoy... no idea if it would ever really run out of suggesstions there.

get payloadWithoutNulls(): any {
    const payload = this.payload;
    Object.keys(payload).forEach(key => payload[key] == null && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArrays(): any {
    const payload = this.payloadWithoutNulls;
    Object.keys(payload).forEach(key => payload[key] instanceof Array && payload[key].length === 0 && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStrings(): any {
    const payload = this.payloadWithoutNullsAndEmptyArrays;
    Object.keys(payload).forEach(key => payload[key] === '' && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjects(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStrings;
    Object.keys(payload).forEach(key => payload[key] instanceof Object && Object.keys(payload[key]).length === 0 && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySets(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjects;
    Object.keys(payload).forEach(key => payload[key] instanceof Set && payload[key].size === 0 && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMaps(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySets;
    Object.keys(payload).forEach(key => payload[key] instanceof Map && payload[key].size === 0 && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleans(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMaps;
    Object.keys(payload).forEach(key => payload[key] === false && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbers(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleans;
    Object.keys(payload).forEach(key => payload[key] === 0 && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigInts(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbers;
    Object.keys(payload).forEach(key => payload[key] === 0n && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDates(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigInts;
    Object.keys(payload).forEach(key => payload[key] instanceof Date && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDatesAndEmptyFunctions(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDates;
    Object.keys(payload).forEach(key => payload[key] instanceof Function && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDatesAndEmptyFunctionsAndEmptySymbols(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDatesAndEmptyFunctions;
    Object.keys(payload).forEach(key => payload[key] instanceof Symbol && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDatesAndEmptyFunctionsAndEmptySymbolsAndEmptyRegexes(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDatesAndEmptyFunctionsAndEmptySymbols;
    Object.keys(payload).forEach(key => payload[key] instanceof RegExp && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDatesAndEmptyFunctionsAndEmptySymbolsAndEmptyRegexesAndEmptyErrors(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDatesAndEmptyFunctionsAndEmptySymbolsAndEmptyRegexes;
    Object.keys(payload).forEach(key => payload[key] instanceof Error && delete payload[key]);
    return payload;
  }
  
  get payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDatesAndEmptyFunctionsAndEmptySymbolsAndEmptyRegexesAndEmptyErrorsAndEmptyPromises(): any {
    const payload = this.payloadWithoutNullsAndEmptyArraysAndEmptyStringsAndEmptyObjectsAndEmptySetsAndEmptyMapsAndEmptyBooleansAndEmptyNumbersAndEmptyBigIntsAndEmptyDatesAndEmptyFunctionsAndEmptySymbolsAndEmptyRegexesAndEmptyErrors;
    Object.keys(payload).forEach(key => payload[key] instanceof Promise && delete payload[key]);
    return payload;
  }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment