@logo-software/timepicker
Version:
Timepicker helps users select and set a specific time in your timesheet in 24-hour format.
84 lines • 9.17 kB
JavaScript
/**
* @license
* Copyright LOGO YAZILIM SANAYİ VE TİCARET A.Ş. All Rights Reserved.
*
* Save to the extent permitted by law, you may not use, copy, modify,
* distribute or create derivative works of this material or any part
* of it without the prior written consent of LOGO YAZILIM SANAYİ VE TİCARET A.Ş. Limited.
* Any reproduction of this material must contain this notice.
*/
/**
* Util class for common javascript operations
*/
export class Util {
/**
* https://gist.github.com/barlas/760cbf77b31c6922d159
* This method returns turkish chars to english lowercase version
*
* __Usage:__
* ```javascript
* Util.turkishToLower("türkçeişğİIiıŞÜĞ");
* ```
*/
static turkishToLower(value) {
let string = value;
const letters = { 'İ': 'i', 'I': 'ı', 'Ş': 'ş', 'Ğ': 'ğ', 'Ü': 'ü', 'Ö': 'ö', 'Ç': 'ç' };
string = string.replace(/(([İIŞĞÜÇÖ]))/g, (letter) => {
return letters[letter];
});
return string.toLowerCase();
}
/**
* https://gist.github.com/barlas/760cbf77b31c6922d159
* This method returns turkish chars to english uppercase version
* Usage: Util.turkishToUpper("türkçeişğİIiıŞÜĞ");
*/
static turkishToUpper(value) {
let string = value;
const letters = { 'i': 'İ', 'ş': 'Ş', 'ğ': 'Ğ', 'ü': 'Ü', 'ö': 'Ö', 'ç': 'Ç', 'ı': 'I' };
string = string.replace(/(([iışğüçö]))/g, (letter) => {
return letters[letter];
});
return string.toUpperCase();
}
/**
* Creates an array of unique values
* @param array - The arrays to inspect
*/
static union(...array) {
const newFlatArray = [...array].flat(Infinity);
const filter = (item, pos) => {
return newFlatArray.indexOf(item) === pos;
};
return newFlatArray.filter(filter);
}
/**
* Find index of given value inside array
* Usage:
* @param array - source array
* @param value - variable will be find index
* @returns - Array<number>
*/
static findAllIndex(array, value) {
const method = (a, e, i) => {
if (e === value) {
a.push(i);
}
return a;
};
return array.reduce(method, []);
}
/**
* Remove character from given string with given count
* Usage: Util.removeCharsBetween('serkan', 3, 2);
* @param value - String value will be split
* @param start - start position, 0 (zero) is first char
* @param count - how much char will be get
*/
static removeCharsBetween(value, start, count = 1) {
const str = value.split('');
str.splice(start, count);
return str.join('');
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xvZ28tc29mdHdhcmUvdGltZXBpY2tlci9zcmMvbGliL3V0aWwvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVIOztHQUVHO0FBQ0gsTUFBTSxPQUFPLElBQUk7SUFFZjs7Ozs7Ozs7T0FRRztJQUNILE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBVTtRQUM5QixJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbkIsTUFBTSxPQUFPLEdBQVEsRUFBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFDLENBQUM7UUFDNUYsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxNQUFjLEVBQUUsRUFBRTtZQUMzRCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFVO1FBQzlCLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNuQixNQUFNLE9BQU8sR0FBUSxFQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUMsQ0FBQztRQUM1RixNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLE1BQWMsRUFBRSxFQUFFO1lBQzNELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFZO1FBQzFCLE1BQU0sWUFBWSxHQUFXLENBQUMsR0FBRyxLQUFLLENBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDL0QsTUFBTSxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDM0IsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQztRQUM1QyxDQUFDLENBQUM7UUFDRixPQUFPLFlBQVksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBWSxFQUFFLEtBQVU7UUFDMUMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFNLEVBQUUsQ0FBUyxFQUFFLENBQU0sRUFBRSxFQUFFO1lBQzNDLElBQUksQ0FBQyxLQUFLLEtBQUssRUFBRTtnQkFDZixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ1g7WUFDRCxPQUFPLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQztRQUNGLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFhLEVBQUUsS0FBYSxFQUFFLEtBQUssR0FBRyxDQUFDO1FBQy9ELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDNUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDekIsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBMT0dPIFlBWklMSU0gU0FOQVnEsCBWRSBUxLBDQVJFVCBBLsWeLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFNhdmUgdG8gdGhlIGV4dGVudCBwZXJtaXR0ZWQgYnkgbGF3LCB5b3UgbWF5IG5vdCB1c2UsIGNvcHksIG1vZGlmeSxcbiAqIGRpc3RyaWJ1dGUgb3IgY3JlYXRlIGRlcml2YXRpdmUgd29ya3Mgb2YgdGhpcyBtYXRlcmlhbCBvciBhbnkgcGFydFxuICogb2YgaXQgd2l0aG91dCB0aGUgcHJpb3Igd3JpdHRlbiBjb25zZW50IG9mIExPR08gWUFaSUxJTSBTQU5BWcSwIFZFIFTEsENBUkVUIEEuxZ4uIExpbWl0ZWQuXG4gKiBBbnkgcmVwcm9kdWN0aW9uIG9mIHRoaXMgbWF0ZXJpYWwgbXVzdCBjb250YWluIHRoaXMgbm90aWNlLlxuICovXG5cbi8qKlxuICogVXRpbCBjbGFzcyBmb3IgY29tbW9uIGphdmFzY3JpcHQgb3BlcmF0aW9uc1xuICovXG5leHBvcnQgY2xhc3MgVXRpbCB7XG5cbiAgLyoqXG4gICAqIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2Jhcmxhcy83NjBjYmY3N2IzMWM2OTIyZDE1OVxuICAgKiBUaGlzIG1ldGhvZCByZXR1cm5zIHR1cmtpc2ggY2hhcnMgdG8gZW5nbGlzaCBsb3dlcmNhc2UgdmVyc2lvblxuICAgKlxuICAgKiBfX1VzYWdlOl9fXG4gICAqIGBgYGphdmFzY3JpcHRcbiAgICogVXRpbC50dXJraXNoVG9Mb3dlcihcInTDvHJrw6dlacWfxJ/EsElpxLHFnsOcxJ5cIik7XG4gICAqIGBgYFxuICAgKi9cbiAgc3RhdGljIHR1cmtpc2hUb0xvd2VyKHZhbHVlOiBhbnkpIHtcbiAgICBsZXQgc3RyaW5nID0gdmFsdWU7XG4gICAgY29uc3QgbGV0dGVyczogYW55ID0geyfEsCc6ICdpJywgJ0knOiAnxLEnLCAnxZ4nOiAnxZ8nLCAnxJ4nOiAnxJ8nLCAnw5wnOiAnw7wnLCAnw5YnOiAnw7YnLCAnw4cnOiAnw6cnfTtcbiAgICBzdHJpbmcgPSBzdHJpbmcucmVwbGFjZSgvKChbxLBJxZ7EnsOcw4fDll0pKS9nLCAobGV0dGVyOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBsZXR0ZXJzW2xldHRlcl07XG4gICAgfSk7XG4gICAgcmV0dXJuIHN0cmluZy50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2Jhcmxhcy83NjBjYmY3N2IzMWM2OTIyZDE1OVxuICAgKiBUaGlzIG1ldGhvZCByZXR1cm5zIHR1cmtpc2ggY2hhcnMgdG8gZW5nbGlzaCB1cHBlcmNhc2UgdmVyc2lvblxuICAgKiBVc2FnZTogVXRpbC50dXJraXNoVG9VcHBlcihcInTDvHJrw6dlacWfxJ/EsElpxLHFnsOcxJ5cIik7XG4gICAqL1xuICBzdGF0aWMgdHVya2lzaFRvVXBwZXIodmFsdWU6IGFueSkge1xuICAgIGxldCBzdHJpbmcgPSB2YWx1ZTtcbiAgICBjb25zdCBsZXR0ZXJzOiBhbnkgPSB7J2knOiAnxLAnLCAnxZ8nOiAnxZ4nLCAnxJ8nOiAnxJ4nLCAnw7wnOiAnw5wnLCAnw7YnOiAnw5YnLCAnw6cnOiAnw4cnLCAnxLEnOiAnSSd9O1xuICAgIHN0cmluZyA9IHN0cmluZy5yZXBsYWNlKC8oKFtpxLHFn8Sfw7zDp8O2XSkpL2csIChsZXR0ZXI6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIGxldHRlcnNbbGV0dGVyXTtcbiAgICB9KTtcbiAgICByZXR1cm4gc3RyaW5nLnRvVXBwZXJDYXNlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBhcnJheSBvZiB1bmlxdWUgdmFsdWVzXG4gICAqIEBwYXJhbSBhcnJheSAtIFRoZSBhcnJheXMgdG8gaW5zcGVjdFxuICAgKi9cbiAgc3RhdGljIHVuaW9uKC4uLmFycmF5OiBhbnlbXSkge1xuICAgIGNvbnN0IG5ld0ZsYXRBcnJheTogYW55W10gPSAoWy4uLmFycmF5XSBhcyBhbnkpLmZsYXQoSW5maW5pdHkpO1xuICAgIGNvbnN0IGZpbHRlciA9IChpdGVtLCBwb3MpID0+IHtcbiAgICAgIHJldHVybiBuZXdGbGF0QXJyYXkuaW5kZXhPZihpdGVtKSA9PT0gcG9zO1xuICAgIH07XG4gICAgcmV0dXJuIG5ld0ZsYXRBcnJheS5maWx0ZXIoZmlsdGVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIGluZGV4IG9mIGdpdmVuIHZhbHVlIGluc2lkZSBhcnJheVxuICAgKiBVc2FnZTpcbiAgICogQHBhcmFtIGFycmF5IC0gc291cmNlIGFycmF5XG4gICAqIEBwYXJhbSB2YWx1ZSAtIHZhcmlhYmxlIHdpbGwgYmUgZmluZCBpbmRleFxuICAgKiBAcmV0dXJucyAtIEFycmF5PG51bWJlcj5cbiAgICovXG4gIHN0YXRpYyBmaW5kQWxsSW5kZXgoYXJyYXk6IGFueVtdLCB2YWx1ZTogYW55KTogbnVtYmVyW10ge1xuICAgIGNvbnN0IG1ldGhvZCA9IChhOiBhbnksIGU6IG51bWJlciwgaTogYW55KSA9PiB7XG4gICAgICBpZiAoZSA9PT0gdmFsdWUpIHtcbiAgICAgICAgYS5wdXNoKGkpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGE7XG4gICAgfTtcbiAgICByZXR1cm4gYXJyYXkucmVkdWNlKG1ldGhvZCwgW10pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBjaGFyYWN0ZXIgZnJvbSBnaXZlbiBzdHJpbmcgd2l0aCBnaXZlbiBjb3VudFxuICAgKiBVc2FnZTogVXRpbC5yZW1vdmVDaGFyc0JldHdlZW4oJ3NlcmthbicsIDMsIDIpO1xuICAgKiBAcGFyYW0gdmFsdWUgLSBTdHJpbmcgdmFsdWUgd2lsbCBiZSBzcGxpdFxuICAgKiBAcGFyYW0gc3RhcnQgLSBzdGFydCBwb3NpdGlvbiwgMCAoemVybykgaXMgZmlyc3QgY2hhclxuICAgKiBAcGFyYW0gY291bnQgLSBob3cgbXVjaCBjaGFyIHdpbGwgYmUgZ2V0XG4gICAqL1xuICBzdGF0aWMgcmVtb3ZlQ2hhcnNCZXR3ZWVuKHZhbHVlOiBzdHJpbmcsIHN0YXJ0OiBudW1iZXIsIGNvdW50ID0gMSkge1xuICAgIGNvbnN0IHN0ciA9IHZhbHVlLnNwbGl0KCcnKTtcbiAgICBzdHIuc3BsaWNlKHN0YXJ0LCBjb3VudCk7XG4gICAgcmV0dXJuIHN0ci5qb2luKCcnKTtcbiAgfVxufVxuIl19