Skip to content

Instantly share code, notes, and snippets.

@knz21
knz21 / tweet_composition.gs
Last active September 23, 2019 00:08
TANITAの体組成計連携Tweetを元に作成したグラフを投稿
// HealthPlanet側のTwitterテンプレート '体重:#WHT#kg 体脂肪率:#BFP#% 筋肉量:#MBK#kg 筋肉スコア:#MBS# 内臓脂肪レベル:#VFL# 基礎代謝量:#BAR# 体内年齢:#BDA#歳 推定骨量:#APB#'
var SPREADSHEET_ID = '保存先スプレッドシートのID'
var COL_INDEX = {
'date': 1,
'weight': 2,
'fat': 3,
'muscle': 4,
'muscle_score': 5,
'visceral_fat': 6,
@knz21
knz21 / copy_github_commits.js
Created March 9, 2018 01:25
Copy github commit messages.
var commits = '';
Array.prototype.slice.call(document.getElementsByTagName('code')).filter(function (code) {
return code.children[0].classList.contains("message");
}).forEach(function (code) {
var commit = code.children[0].text;
if (commit.indexOf('Merge') != 0) commits += commit + "\r";
});
var body = document.getElementsByTagName('body')[0];
var span = document.createElement('span');
span.textContent = commits;
@knz21
knz21 / copy_firebase_abtest_parameters.js
Created February 16, 2018 02:32
Copy A/B test parameters from Firebase Console.
$('.mat-expansion-panel-header').click();
setTimeout(function () {
var $params = $('.variant-summary-content').find('.content-values');
var text = '';
$params.find('.header').find('.param-key').each(function (i, v) {
text += $(v).text().trim();
});
$params.find('.values').children().each(function (i, row) {
$(row).find('.param-value').each(function (j, v) {
text += $(v).text().trim();
@knz21
knz21 / input.js
Last active March 14, 2017 07:50
React component of input tag receiving value and keeping cursor index.
var React = require('react');
module.exports = React.createClass({
propTypes: {
id: React.PropTypes.string.isRequired,
className: React.PropTypes.string,
value: React.PropTypes.string.isRequired,
placeholder: React.PropTypes.string,
onChange: React.PropTypes.func.isRequired,
adjustCursor: React.PropTypes.func