Intent share URL Query string for Pinafore

Recieve "text" value and overwrite compose-box

Fra og med 06.02.2023. Se den nyeste version.

// ==UserScript==
// @name           Intent share URL Query string for Pinafore
// @name:ja        共有URLクエリ文字列 for Pinafore
// @namespace      https://greasyfork.org/ja/users/747568-yomosu
// @description    Recieve "text" value and overwrite compose-box
// @description:ja textの値を受け取り投稿ボックスを上書きする
// @version        0.1.20230201.3
// @license        CC0-1.0
// @match          *://pinafore.social/?text=*
// @grant          none
// @run-at         document-end
// ==/UserScript==

(function() {
  'use strict';
  const params = (new URL(document.location)).searchParams;
  const encoded = params.get('text');
  if (!encoded) return;

  const currentInstance = localStorage.getItem("store_currentInstance").slice(1,-1);
  if (!currentInstance) return;
  const savedData = localStorage.getItem("store_composeData");
  const tmpJson = savedData ? JSON.parse(savedData) : {};
  if (!tmpJson[currentInstance]) {
    const date = new Date();
    tmpJson[currentInstance] = {"home": {"ts" : 0}};
    tmpJson[currentInstance].home.ts = date.getTime();
  }
  const decoded = decodeURIComponent(encoded);
  if (tmpJson[currentInstance].home.text === decoded) return;
  tmpJson[currentInstance].home.text = decoded;
  const newData = JSON.stringify(tmpJson);
  localStorage.setItem("store_composeData", newData);
  location.reload();
})();