Skip to content

Instantly share code, notes, and snippets.

@sillvva
Created August 31, 2020 18:56
Show Gist options
  • Save sillvva/9627e4db049b6968cc68d73d5d4ff0d2 to your computer and use it in GitHub Desktop.
Save sillvva/9627e4db049b6968cc68d73d5d4ff0d2 to your computer and use it in GitHub Desktop.
name: AL_Logsheet
description: ''
host: EXCEL
api_set: {}
script:
content: >-
/** @CustomFunction */
function AddingMagicItems(PreviousItems: string, NewItems: string): string {
try {
if (NewItems.trim().length == 0) return PreviousItems;
var merged = PreviousItems+","+NewItems;
var mergedSplit = merged.split(",");
return mergedSplit.map(function(el) { return el.trim(); }).filter(function(el) { return el.length > 0; }).join(",");
}
catch(err) {
console.log(err);
return "";
}
}
/** @CustomFunction */
function TradingMagicItems(PreviousItems: string, OldItem: string, NewItem:
string): string {
try {
if (OldItem.trim().length == 0 && NewItem.trim().length == 0) return PreviousItems;
var merged = PreviousItems;
var mergedSplit = merged.split(",")
.map(function (el) { return el.trim(); });
mergedSplit.splice(mergedSplit.indexOf(OldItem.trim()), 1);
mergedSplit.push(NewItem.trim());
return mergedSplit
.filter(function (el) { return el.length > 0; })
.join(",");
}
catch (err) {
console.log(err);
return "";
}
}
/** @CustomFunction */
function ConsolidateMagicItems(Items: string): string {
try {
var splitValue = Items.split(",");
splitValue = splitValue.map(function (v) { return v.trim(); });
var i = 0;
while (i < splitValue.length) {
var val = splitValue[i];
var cnt = splitValue.filter(function (v) { return v === val; }).length;
if (cnt > 1) {
splitValue[i] = cnt + "x " + val;
splitValue = splitValue.filter(function (v) { return v !== val; });
}
i++;
}
return splitValue.join(" | ");
}
catch (err) {
return Items;
}
}
language: typescript
libraries: |
https://appsforoffice.microsoft.com/lib/1/hosted/office.js
@types/office-js
office-ui-fabric-js@1.4.0/dist/css/fabric.min.css
office-ui-fabric-js@1.4.0/dist/css/fabric.components.min.css
core-js@2.4.1/client/core.min.js
@types/core-js
jquery@3.1.1
@types/jquery@3.3.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment