だめでした
@Momizi@negi.fjordur.net かわいいだけで得してるのは本人より目の保養にできる周り説 自分の顔って見れないし
Aの
HTMLElementTagNameMap[K][attr] extends string | undefined
? HTMLElementTagNameMap[K][attr]
: never
が一見無駄に二回書かれてるのはObject.entries(attrs)
の型チェックを納得させるためconst a = e("a", {}, []);
みたいに使ったときに{}
にアトリビュートが補完に出てくる最強のcreateElementできた
export function e<
K extends keyof HTMLElementTagNameMap,
A extends {
[attr in keyof HTMLElementTagNameMap[K] as HTMLElementTagNameMap[K][attr] extends
| string
| undefined
? attr
: never]?: HTMLElementTagNameMap[K][attr] extends string | undefined
? HTMLElementTagNameMap[K][attr]
: never;
}
>(tagName: K, attrs: A, children: Iterable): HTMLElementTagNameMap[K] {
const el = document.createElement(tagName);
for (const [k, v] of Object.entries(attrs)) {
if (v) {
el.setAttribute(k, v);
}
}
for (const child of children) {
el.appendChild(child);
}
return el;
}
const q = document.querySelector;
にちゃんと型をつけてみた
export function q<
Q extends
| keyof HTMLElementTagNameMap
| keyof SVGElementTagNameMap
| keyof MathMLElementTagNameMap
| string = string,
E extends
| HTMLElementTagNameMap[Q extends keyof HTMLElementTagNameMap ? Q : never]
| SVGElementTagNameMap[Q extends keyof SVGElementTagNameMap ? Q : never]
| MathMLElementTagNameMap[Q extends keyof MathMLElementTagNameMap
? Q
: never]
| Element = Q extends keyof HTMLElementTagNameMap
? HTMLElementTagNameMap[Q]
: Q extends keyof SVGElementTagNameMap
? SVGElementTagNameMap[Q]
: Q extends keyof MathMLElementTagNameMap
? MathMLElementTagNameMap[Q]
: Element
>(query: Q): E | undefined {
return document.querySelector(query) ?? undefined;
}
地方創生、外から人を呼び込むのはゼロサムゲームになるし日本全体で人口が減ってる以上ジリ貧だからガンガン人を流出させて日本全体を活性化させつつ出ていく以上に産むしか無いよな
ロシア(ソ連)って人口そんなでもないのになんで兵士が畑で取れるんだろって思ったけど、ググってみたら流石にまあまあ人口おるね(大体ソ連3億ロシア1.5億ぐらい?)
QRコード読むだけなら光学式マウスについてるようなイメージセンサぐらいの性能でもいけそうなきがする(素人並み感)
RE: https://mstdn.maud.io/users/kb10uy/statuses/113631227004228811
@koba789@misskey.io
パラグアイ ← 言葉の響きがパラグライダーっぽい
飛ぶ ← パラグライダーは飛ぶ
よってパラグアイはパラグライダーであり、パラグアイダーなんですよね
🪂←パラグライダーの絵文字がなかったので代理のパラシュート
console.log
でレスポンスの本文しか表示させてなくてヘッダーを表示してなかったのであとどれぐらいでレート制限が解除されるのかわからん
Twitterのレートリミットに引っかかってるっぽいのでmi2tw.1inguini.comの動作確認ができない
次の目標はこう↓いうふうにtwitterのリンクを貼ったらtwitter側では引用リツイートになるようにしたいね
https://twitter.com/1inguini/status/1866544986319360289
@lamazeP@friends.cafe 一度酔ってHMDかぶった状態でボウルに排尿して飲み干すってのをやってウケたので一時期HMDをかぶったりかぶらなかったり(かぶってると音を入れづらいので)しながらボウルに排尿してたことがあります。ある時こういう下ネタでわかりやすい狂人アピールするのはサムいと気づいたのでやめました
つまり安易に排尿するとそれがアイデンティティになってしまうので気をつけましょう
旧mi2tw.1inguini.comのアクセストークンのリフレッシュがうまく行ってなかった問題(多分期限をUNIXタイムスタンプにしてDBに保存するときに足し算のつもりが文字列結合になってたっぽい)、解決なるか
あとtwitterだとurlは一文字判定っぽいけどmi2tw.1inguini.comは違うので本文が削られすぎてしまう
あとは@1inguiniみたいなhttps://pasokey.net 内のメンションの置換([^-_a-zA-Z0-9])@([-_a-zA-Z0-9]+)([^@]|$)
って正規表現でちゃんと末尾のも置き換えられるか、@1inguini@misskey.ioみたいな他サーバーへのメンションで誤作動しないか
@1inguini
もっかい140字超えノートします
mi2tw.1inguini.comを改修して@1inguini@misskey.ioみたいなメンションをプロフィールのリンクに置き換えたりhttps://twitter.com/1inguiniみたいなユーザーへのリンクもメンションに置き換えてくれるはず
あと140字を超えた分は削って3点リーダーに置き換える機能もつけた
ああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああ
mi2tw.1inguini.comを改修して@1inguini@misskey.ioみたいなメンションをプロフィールのリンクに置き換えたりhttps://twitter.com/1inguiniみたいなユーザーへのリンクもメンションに置き換えてくれるはず
あと140字を超えた分は削って3点リーダーに置き換える機能もつけた
ああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああ
一時期一つのwebhookから複数の投稿先に投稿できるようにしようと思ってたからD1にしたんだったけど、今のスキーマだとWebhookとアクセストークンが1対1対応になってるんだよね
mi2tw.1inguini.comは本家mi2twと違ってKVじゃなくてD1使ってるんだけど、必要ないな?