From bd2205ed5f83c3c550f68e3562fbdd0fe01b3ddc Mon Sep 17 00:00:00 2001 From: octospacc Date: Fri, 5 Jan 2024 23:57:30 +0100 Subject: [PATCH] Update MatrixStickerHelper, add local fonts --- .../0nkwC9f7MfsBiWcLtY65AWDK873ljiK-.ttf | Bin 0 -> 53804 bytes .../NeuchaPatrickHandSC.css | 14 + public/MatrixStickerHelper/index.html | 525 +++++++++++------- public/MatrixStickerHelper/paper.min.css | 4 +- .../q5uGsou0JOdh94bfvQlo.ttf | Bin 0 -> 65812 bytes 5 files changed, 343 insertions(+), 200 deletions(-) create mode 100644 public/MatrixStickerHelper/0nkwC9f7MfsBiWcLtY65AWDK873ljiK-.ttf create mode 100644 public/MatrixStickerHelper/NeuchaPatrickHandSC.css create mode 100644 public/MatrixStickerHelper/q5uGsou0JOdh94bfvQlo.ttf diff --git a/public/MatrixStickerHelper/0nkwC9f7MfsBiWcLtY65AWDK873ljiK-.ttf b/public/MatrixStickerHelper/0nkwC9f7MfsBiWcLtY65AWDK873ljiK-.ttf new file mode 100644 index 0000000000000000000000000000000000000000..15c65025ff60096bca774a57bec9b0db0fc5eb1b GIT binary patch literal 53804 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 A&Hw-a literal 0 HcmV?d00001 diff --git a/public/MatrixStickerHelper/NeuchaPatrickHandSC.css b/public/MatrixStickerHelper/NeuchaPatrickHandSC.css new file mode 100644 index 0000000..901b7aa --- /dev/null +++ b/public/MatrixStickerHelper/NeuchaPatrickHandSC.css @@ -0,0 +1,14 @@ +@font-face { + font-family: 'Neucha'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(q5uGsou0JOdh94bfvQlo.ttf) format('truetype'); +} +@font-face { + font-family: 'Patrick Hand SC'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(0nkwC9f7MfsBiWcLtY65AWDK873ljiK-.ttf) format('truetype'); +} diff --git a/public/MatrixStickerHelper/index.html b/public/MatrixStickerHelper/index.html index 32df29d..dd9ecbc 100644 --- a/public/MatrixStickerHelper/index.html +++ b/public/MatrixStickerHelper/index.html @@ -20,17 +20,21 @@ +

+ This application requires modern JavaScript. +

+

- 🃏️ [Matrix] Sticker Helper Early Version, - created with ☕️ by OctoSpacc. + 🃏️ [Matrix] Sticker Helper WIP Version, + created with 💕️ and ☕️ by OctoSpacc.
Made possible by Maunium sticker picker, brought to paper thanks to PaperCSS.

+

+ Note: importing stickers from files is currently experimental, and error handling isn't the best. + Make sure that your Internet connection is stable when uploading files. +

+

Help and Information

@@ -88,22 +110,29 @@ TODO: after finding the maunium/stickerpicker import procedure uncomfortable.
Read more (and follow the development I guess?) at - https://octospacc.altervista.org/tag/matrixstickerhelper/. + octospacc.altervista.org/#MatrixStickerHelper.

How can I add sticker packs to my collection?

- To add new sticker packs to your collection, you can use the dedicated section to - input an URL pointing to the JSON data file (in the format used by maunium/stickerpicker) - of an already existing collection (index.json) or individual pack (created by other users, or from your backups). + To add new sticker packs to your collection, you can use the dedicated section, which offers 2 options. You can: +

  • + Either leave the optional text field blank to create a brand-new pack, to be filled with stickers by importing media files; +
  • +
  • + Or, input an URL pointing to the JSON data file (in the format used by maunium/stickerpicker) + of an already existing collection (index.json) or individual pack (created by other users, or from your backups). +

  • - The ability to create sticker packs by uploading files from your device's storage will soon be available, - as well as from the messages sent by other Matrix users. + Currently, you can import common picture files (JPEG, WebP, PNG, GIF) from your device's storage as stickers. + Sooner, you will be able to also import media files from URL, as well as importing video files (like MP4) for automatic conversion into GIF.
    - Importing stickers from LINE or Telegram is planned for the more distant future. + Importing stickers and packs from Matrix messages, or the LINE or Telegram library, is planned for the more distant future.

    Stickerpicker information

    - This project is not a substitute of maunium/stickerpicker, and is not affiliated with it, but rather complements it. + This project is not a substitute of maunium/stickerpicker, + is not affiliated with it, and doesn't use any part of its code, but rather complements it. +
    It sets that up as the sticker picker integration for your Matrix account if you don't have it already, and allows you to manage your sticker collection in a way that is fully compatible with it, but without the manual setup.

    @@ -127,6 +156,28 @@ TODO: Maybe join my Matrix space, if you need some support: https://matrix.to/#/#Spacc:matrix.org.

    +
    +

    Changelog

    +

    + [2024-01-05] +

  • Uploading stickers from (multiple) local image files
  • +
  • Deleting individual stickers from packs
  • +
  • Various bugfixes and UX improvements
  • +

    +

    + [2024-01-04] +

  • Importing entire sticker collections from URL
  • +
  • Fix stickers not loading from accounts already setup with stock stickerpicker
  • +
  • Add help and changelog
  • +

    +

    + [2024-01-03] +

  • First release
  • +
  • Account management (logging in, reading and writing data)
  • +
  • Visualization of current account stickers
  • +
  • Importing sticker packs from URL
  • +

    +