Use @mdi/js icons

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel 2021-10-25 11:41:04 +02:00
parent e41039922c
commit b08356b674
No known key found for this signature in database
GPG Key ID: A061B9DDE0CA0773
93 changed files with 4285 additions and 405 deletions

View File

@ -116,15 +116,6 @@ config :mobilizon, Mobilizon.Web.Email.Mailer,
# can be `true`
no_mx_lookups: false
config :esbuild,
version: "0.12.18",
default: [
args:
~w(src/main.js --bundle --target=es2016 --outdir=../priv/static/assets --external:/fonts/* --external:/images/*),
cd: Path.expand("../js", __DIR__),
env: %{"NODE_PATH" => Path.expand("../deps", __DIR__)}
]
# Configures Elixir's Logger
config :logger, :console,
backends: [:console],

View File

@ -15,7 +15,7 @@ config :mobilizon, Mobilizon.Web.Endpoint,
check_origin: false,
watchers: [
node: [
"node_modules/.bin/vite",
"dev.js",
cd: Path.expand("../js", __DIR__)
]
]
@ -40,7 +40,7 @@ config :mobilizon, Mobilizon.Web.Endpoint,
config :mobilizon, Mobilizon.Web.Endpoint,
live_reload: [
patterns: [
~r{priv/static/.*(js|css|png|jpeg|jpg|gif|svg)$},
~r{priv/static/index.html$},
~r{priv/gettext/.*(po)$},
~r{lib/web/(live|views)/.*(ex)$},
~r{lib/web/templates/.*(eex)$}
@ -92,3 +92,21 @@ config :mobilizon, :anonymous,
reports: [
allowed: true
]
config :mobilizon, :http_security,
enabled: true,
sts: false,
sts_max_age: 31_536_000,
csp_policy: [
script_src: ["localhost:3000"],
style_src: [],
connect_src: [],
font_src: [],
img_src: ["*.tile.openstreetmap.org"],
manifest_src: [],
media_src: [],
object_src: [],
frame_src: [],
frame_ancestors: []
],
referrer_policy: "same-origin"

11
js/dev.js Normal file
View File

@ -0,0 +1,11 @@
const { spawn } = require("child_process");
const child = spawn("./node_modules/.bin/vite", { stdio: "inherit" });
process.stdin.on("end", function () {
console.log("stdin close");
child.kill();
process.exit();
});
process.stdin.resume();

View File

@ -11,7 +11,7 @@
"@absinthe/socket": "^0.2.1",
"@absinthe/socket-apollo-link": "^0.2.1",
"@apollo/client": "^3.3.16",
"@mdi/font": "^6.1.95",
"@mdi/js": "^6.3.95",
"@tiptap/core": "^2.0.0-beta.41",
"@tiptap/extension-blockquote": "^2.0.0-beta.6",
"@tiptap/extension-bubble-menu": "^2.0.0-beta.9",
@ -42,6 +42,7 @@
"leaflet": "^1.4.0",
"leaflet.locatecontrol": "^0.74.0",
"lodash": "^4.17.11",
"mdi-vue": "^3.0.8",
"ngeohash": "^0.6.3",
"p-debounce": "^4.0.0",
"phoenix": "^1.6",
@ -77,8 +78,10 @@
"flush-promises": "^1.0.2",
"mock-apollo-client": "^1.1.0",
"prettier": "^2.2.1",
"rollup-plugin-visualizer": "^5.5.2",
"sass": "^1.43.3",
"typescript": "^4.3.2",
"unplugin-icons": "^0.12.16",
"vite": "^2.6.4",
"vite-plugin-html": "^2.1.1",
"vite-plugin-pwa": "^0.11.3",

View File

@ -243,26 +243,26 @@ export default class App extends Vue {
<style lang="scss">
@import "variables";
/* Icons */
@import "node_modules/@mdi/font/scss/variables";
@import "node_modules/@mdi/font/scss/functions";
// /* Icons */
// @import "node_modules/@mdi/font/scss/variables";
// @import "node_modules/@mdi/font/scss/functions";
@font-face {
font-family: '#{$mdi-font-name}';
src: url('../node_modules/@mdi/font/materialdesignicons-webfont.eot');
src: url('../node_modules/@mdi/font/materialdesignicons-webfont.eot?#iefix') format('embedded-opentype'),
url('../node_modules/@mdi/font/materialdesignicons-webfont.woff2') format('woff2'),
url('../node_modules/@mdi/font/materialdesignicons-webfont.woff') format('woff'),
url('../node_modules/@mdi/font/materialdesignicons-webfont.ttf') format('truetype');
font-weight: normal;
font-style: normal;
}
// @font-face {
// font-family: '#{$mdi-font-name}';
// src: url('../node_modules/@mdi/font/materialdesignicons-webfont.eot');
// src: url('../node_modules/@mdi/font/materialdesignicons-webfont.eot?#iefix') format('embedded-opentype'),
// url('../node_modules/@mdi/font/materialdesignicons-webfont.woff2') format('woff2'),
// url('../node_modules/@mdi/font/materialdesignicons-webfont.woff') format('woff'),
// url('../node_modules/@mdi/font/materialdesignicons-webfont.ttf') format('truetype');
// font-weight: normal;
// font-style: normal;
// }
@import "node_modules/@mdi/font/scss/core";
@import "node_modules/@mdi/font/scss/icons";
@import "node_modules/@mdi/font/scss/extras";
@import "node_modules/@mdi/font/scss/animated";
// @import "node_modules/@mdi/font/scss/core";
// @import "node_modules/@mdi/font/scss/icons";
// @import "node_modules/@mdi/font/scss/extras";
// @import "node_modules/@mdi/font/scss/animated";

View File

@ -19,7 +19,7 @@
v-if="props.option.avatar"
alt=""
/>
<b-icon v-else icon="account-circle" />
<mdicon v-else name="account-circle" />
</div>
<div class="media-content">
<span v-if="props.option.name">

View File

@ -5,7 +5,7 @@
<figure class="image is-32x32" v-if="actor.avatar">
<img class="is-rounded" :src="actor.avatar.url" alt="" />
</figure>
<b-icon v-else size="is-medium" icon="account-circle" />
<mdicon v-else size="is-medium" name="account-circle" />
</div>
<div class="media-content">

View File

@ -4,7 +4,7 @@
<figure class="image is-24x24" v-if="actor.avatar">
<img class="is-rounded" :src="actor.avatar.url" alt="" />
</figure>
<b-icon v-else size="is-medium" icon="account-circle" />
<mdicon v-else size="is-medium" name="account-circle" />
</div>
<div class="actor-name">

View File

@ -1,6 +1,6 @@
<template>
<div class="activity-item">
<b-icon :icon="'chat'" :type="iconColor" />
<mdicon :name="'chat'" :type="iconColor" />
<div class="subject">
<i18n :path="translation" tag="p">
<router-link

View File

@ -1,6 +1,6 @@
<template>
<div class="activity-item">
<b-icon :icon="'calendar'" :type="iconColor" />
<mdicon :name="'calendar'" :type="iconColor" />
<div class="subject">
<i18n :path="translation" tag="p">
<router-link

View File

@ -1,6 +1,6 @@
<template>
<div class="activity-item">
<b-icon :icon="'cog'" :type="iconColor" />
<mdicon :name="'cog'" :type="iconColor" />
<div class="subject">
<i18n :path="translation" tag="p">
<router-link

View File

@ -1,6 +1,6 @@
<template>
<div class="activity-item">
<b-icon :icon="icon" :type="iconColor" />
<mdicon :name="icon" :type="iconColor" />
<div class="subject">
<i18n :path="translation" tag="p">
<popover-actor-card

View File

@ -1,6 +1,6 @@
<template>
<div class="activity-item">
<b-icon :icon="'bullhorn'" :type="iconColor" />
<mdicon :name="'bullhorn'" :type="iconColor" />
<div class="subject">
<i18n :path="translation" tag="p">
<router-link

View File

@ -1,6 +1,6 @@
<template>
<div class="activity-item">
<b-icon :icon="'link'" :type="iconColor" />
<mdicon :name="'link'" :type="iconColor" />
<div class="subject">
<i18n :path="translation" tag="p">
<router-link v-if="activity.object" slot="resource" :to="path">{{

View File

@ -1,8 +1,8 @@
<template>
<address>
<b-icon
<mdicon
v-if="showIcon"
:icon="address.poiInfos.poiIcon.icon"
:name="address.poiInfos.poiIcon.icon"
size="is-medium"
class="icon"
/>

View File

@ -7,7 +7,7 @@
ref="table"
:checked-rows.sync="checkedRows"
detailed
:show-detail-icon="false"
:show-detail-name="false"
paginated
backend-pagination
:current-page.sync="page"
@ -36,8 +36,8 @@
width="80"
v-slot="props"
>
<b-icon icon="lan" v-if="RelayMixin.isInstance(props.row.actor)" />
<b-icon icon="account-circle" v-else />
<mdicon name="lan" v-if="RelayMixin.isInstance(props.row.actor)" />
<mdicon name="account-circle" v-else />
</b-table-column>
<b-table-column

View File

@ -29,7 +29,7 @@
:checked-rows.sync="checkedRows"
:is-row-checkable="(row) => row.id !== 3"
detailed
:show-detail-icon="false"
:show-detail-name="false"
paginated
backend-pagination
:current-page.sync="page"
@ -58,11 +58,11 @@
width="80"
v-slot="props"
>
<b-icon
icon="lan"
<mdicon
name="lan"
v-if="RelayMixin.isInstance(props.row.targetActor)"
/>
<b-icon icon="account-circle" v-else />
<mdicon name="account-circle" v-else />
</b-table-column>
<b-table-column

View File

@ -19,7 +19,7 @@
>
<img class="is-rounded" :src="comment.actor.avatar.url" alt="" />
</figure>
<b-icon class="media-left" v-else icon="account-circle" />
<mdicon class="media-left" v-else name="account-circle" />
</popover-actor-card>
<div v-else class="media-left">
<figure
@ -28,7 +28,7 @@
>
<img class="is-rounded" :src="comment.actor.avatar.url" alt="" />
</figure>
<b-icon v-else icon="account-circle" />
<mdicon v-else name="account-circle" />
</div>
<div class="media-content">
<div class="content">
@ -54,11 +54,11 @@
v-if="comment.actor.id === currentActor.id"
@click="deleteComment"
>
<b-icon icon="delete" size="is-small" aria-hidden="true" />
<mdicon name="delete" size="is-small" aria-hidden="true" />
<span class="visually-hidden">{{ $t("Delete") }}</span>
</button>
<button @click="reportModal()">
<b-icon icon="alert" size="is-small" />
<mdicon name="alert" size="is-small" />
<span class="visually-hidden">{{ $t("Report") }}</span>
</button>
</span>
@ -67,7 +67,7 @@
<div v-else>{{ $t("[This comment has been deleted]") }}</div>
<div class="load-replies" v-if="comment.totalReplies">
<p v-if="!showReplies" @click="fetchReplies">
<b-icon icon="chevron-down" class="reply-btn" />
<mdicon name="chevron-down" class="reply-btn" />
<span class="reply-btn">{{
$tc("View a reply", comment.totalReplies, {
totalReplies: comment.totalReplies,
@ -78,7 +78,7 @@
v-else-if="comment.totalReplies && showReplies"
@click="showReplies = false"
>
<b-icon icon="chevron-up" class="reply-btn" />
<mdicon name="chevron-up" class="reply-btn" />
<span class="reply-btn">{{ $t("Hide replies") }}</span>
</p>
</div>
@ -98,7 +98,7 @@
@click="createReplyToComment()"
>
<span class="icon is-small">
<b-icon icon="reply" />
<mdicon name="reply" />
</span>
<span>{{ $t("Reply") }}</span>
</span>
@ -118,11 +118,11 @@
<img :src="currentActor.avatar.url" alt="" />
</p>
</figure>
<b-icon
<mdicon
class="media-left"
v-else
size="is-large"
icon="account-circle"
size="48"
name="account-circle"
/>
<div class="media-content">
<div class="content">

View File

@ -7,7 +7,7 @@
>
<img class="is-rounded" :src="comment.actor.avatar.url" alt="" />
</figure>
<b-icon v-else size="is-large" icon="account-circle" />
<mdicon v-else size="48" name="account-circle" />
</div>
<div class="body">
<div class="meta">
@ -30,14 +30,14 @@
"
>
<b-dropdown aria-role="list">
<b-icon slot="trigger" role="button" icon="dots-horizontal" />
<mdicon slot="trigger" role="button" name="dots-horizontal" />
<b-dropdown-item
v-if="comment.actor.id === currentActor.id"
@click="toggleEditMode"
aria-role="menuitem"
>
<b-icon icon="pencil"></b-icon>
<mdicon name="pencil"></mdicon>
{{ $t("Edit") }}
</b-dropdown-item>
<b-dropdown-item
@ -45,11 +45,11 @@
@click="$emit('delete-comment', comment)"
aria-role="menuitem"
>
<b-icon icon="delete"></b-icon>
<mdicon name="delete"></mdicon>
{{ $t("Delete") }}
</b-dropdown-item>
<!-- <b-dropdown-item aria-role="listitem" @click="isReportModalActive = true">
<b-icon icon="flag" />
<mdicon name="flag" />
{{ $t("Report") }}
</b-dropdown-item> -->
</b-dropdown>

View File

@ -19,7 +19,7 @@
alt
/>
</figure>
<b-icon v-else size="is-medium" icon="account-circle" />
<mdicon v-else size="is-medium" name="account-circle" />
</div>
<div class="title-info-wrapper">
<div class="title-and-date">

View File

@ -18,7 +18,7 @@
type="button"
:title="$t('Bold')"
>
<b-icon icon="format-bold" />
<mdicon name="format-bold" />
</button>
<button
@ -28,7 +28,7 @@
type="button"
:title="$t('Italic')"
>
<b-icon icon="format-italic" />
<mdicon name="format-italic" />
</button>
<button
@ -38,7 +38,7 @@
type="button"
:title="$t('Underline')"
>
<b-icon icon="format-underline" />
<mdicon name="format-underline" />
</button>
<button
@ -49,7 +49,7 @@
type="button"
:title="$t('Heading Level 1')"
>
<b-icon icon="format-header-1" />
<mdicon name="format-header-1" />
</button>
<button
@ -60,7 +60,7 @@
type="button"
:title="$t('Heading Level 2')"
>
<b-icon icon="format-header-2" />
<mdicon name="format-header-2" />
</button>
<button
@ -71,7 +71,7 @@
type="button"
:title="$t('Heading Level 3')"
>
<b-icon icon="format-header-3" />
<mdicon name="format-header-3" />
</button>
<button
@ -81,7 +81,7 @@
type="button"
:title="$t('Add link')"
>
<b-icon icon="link" />
<mdicon name="link" />
</button>
<button
@ -91,7 +91,7 @@
type="button"
:title="$t('Remove link')"
>
<b-icon icon="link-off" />
<mdicon name="link-off" />
</button>
<button
@ -101,7 +101,7 @@
type="button"
:title="$t('Add picture')"
>
<b-icon icon="image" />
<mdicon name="image" />
</button>
<button
@ -112,7 +112,7 @@
type="button"
:title="$t('Bullet list')"
>
<b-icon icon="format-list-bulleted" />
<mdicon name="format-list-bulleted" />
</button>
<button
@ -123,7 +123,7 @@
type="button"
:title="$t('Ordered list')"
>
<b-icon icon="format-list-numbered" />
<mdicon name="format-list-numbered" />
</button>
<button
@ -134,7 +134,7 @@
type="button"
:title="$t('Quote')"
>
<b-icon icon="format-quote-close" />
<mdicon name="format-quote-close" />
</button>
<button
@ -144,7 +144,7 @@
type="button"
:title="$t('Undo')"
>
<b-icon icon="undo" />
<mdicon name="undo" />
</button>
<button
@ -154,7 +154,7 @@
type="button"
:title="$t('Redo')"
>
<b-icon icon="redo" />
<mdicon name="redo" />
</button>
</div>
@ -171,7 +171,7 @@
type="button"
:title="$t('Bold')"
>
<b-icon icon="format-bold" />
<mdicon name="format-bold" />
<span class="visually-hidden">{{ $t("Bold") }}</span>
</button>
@ -182,7 +182,7 @@
type="button"
:title="$t('Italic')"
>
<b-icon icon="format-italic" />
<mdicon name="format-italic" />
<span class="visually-hidden">{{ $t("Italic") }}</span>
</button>
</bubble-menu>

View File

@ -8,13 +8,13 @@
field="fullName"
:loading="isFetching"
@typing="fetchAsyncData"
icon="map-marker"
name="map-marker"
expanded
@select="updateSelected"
v-bind="$attrs"
>
<template #default="{ option }">
<b-icon :icon="option.poiInfos.poiIcon.icon" />
<mdicon :name="option.poiInfos.poiIcon.icon" />
<b>{{ option.poiInfos.name }}</b
><br />
<small>{{ option.poiInfos.alternativeName }}</small>

View File

@ -33,18 +33,18 @@
</div>
<div class="participation-actor">
<span>
<b-icon
icon="earth"
<mdicon
name="earth"
v-if="participation.event.visibility === EventVisibility.PUBLIC"
/>
<b-icon
icon="link"
<mdicon
name="link"
v-else-if="
participation.event.visibility === EventVisibility.UNLISTED
"
/>
<b-icon
icon="lock"
<mdicon
name="lock"
v-else-if="
participation.event.visibility === EventVisibility.PRIVATE
"
@ -157,7 +157,7 @@
})
"
>
<b-icon icon="pencil" />
<mdicon name="pencil" />
{{ $t("Edit") }}
</b-dropdown-item>
@ -171,7 +171,7 @@
})
"
>
<b-icon icon="content-duplicate" />
<mdicon name="content-duplicate" />
{{ $t("Duplicate") }}
</b-dropdown-item>
@ -185,7 +185,7 @@
aria-role="listitem"
@click="openDeleteEventModalWrapper"
>
<b-icon icon="delete" />
<mdicon name="delete" />
{{ $t("Delete") }}
</b-dropdown-item>
@ -204,7 +204,7 @@
})
"
>
<b-icon icon="account-multiple-plus" />
<mdicon name="account-multiple-plus" />
{{ $t("Manage participations") }}
</b-dropdown-item>
@ -215,7 +215,7 @@
params: { uuid: participation.event.uuid },
}"
>
<b-icon icon="view-compact" />
<mdicon name="view-compact" />
{{ $t("View event page") }}
</router-link>
</b-dropdown-item>

View File

@ -33,16 +33,16 @@
</div>
<div class="columns">
<span class="column is-narrow">
<b-icon
icon="earth"
<mdicon
name="earth"
v-if="event.visibility === EventVisibility.PUBLIC"
/>
<b-icon
icon="link"
<mdicon
name="link"
v-if="event.visibility === EventVisibility.UNLISTED"
/>
<b-icon
icon="lock"
<mdicon
name="lock"
v-if="event.visibility === EventVisibility.PRIVATE"
/>
</span>

View File

@ -5,16 +5,16 @@
<!-- Custom icons -->
<span
class="icon is-medium"
v-if="icon && icon.substring(0, 7) === 'mz:icon'"
v-if="name && name.substring(0, 7) === 'mz:icon'"
>
<img
:src="`/img/${icon.substring(8)}_monochrome.svg`"
:src="`/img/${name.substring(8)}_monochrome.svg`"
width="32"
height="32"
/>
</span>
<b-icon v-else-if="icon" :icon="icon" size="is-medium" />
<p :class="{ 'padding-left': icon }">
<mdicon v-else-if="name" :name="name" size="36" />
<p :class="{ 'padding-left': name }">
<slot></slot>
</p>
</div>
@ -25,7 +25,7 @@ import { Component, Prop, Vue } from "vue-property-decorator";
@Component
export default class EventMetadataBlock extends Vue {
@Prop({ required: false, type: String }) icon!: string;
@Prop({ required: false, type: String }) name!: string;
@Prop({ required: true, type: String }) title!: string;
}

View File

@ -12,8 +12,8 @@
alt=""
/>
<b-icon v-else-if="metadataItem.icon" :icon="metadataItem.icon" />
<b-icon v-else icon="help-circle" />
<mdicon v-else-if="metadataItem.icon" :name="metadataItem.icon" />
<mdicon v-else name="help-circle" />
</div>
<div class="media-content">
<b>{{ metadataItem.title || metadataItem.label }}</b>

View File

@ -39,8 +39,8 @@
height="24"
alt=""
/>
<b-icon v-else-if="props.option.icon" :icon="props.option.icon" />
<b-icon v-else icon="help-circle" />
<mdicon v-else-if="props.option.icon" :name="props.option.icon" />
<mdicon v-else name="help-circle" />
</div>
<div class="media-content">
<b>{{ props.option.label }}</b>

View File

@ -3,7 +3,7 @@
<event-metadata-block
v-if="!event.options.isOnline"
:title="$t('Location')"
:icon="physicalAddress ? physicalAddress.poiInfos.poiIcon.icon : 'earth'"
:name="physicalAddress ? physicalAddress.poiInfos.poiIcon.icon : 'earth'"
>
<div class="address-wrapper">
<span v-if="!physicalAddress">{{ $t("No address defined") }}</span>
@ -20,7 +20,7 @@
</div>
</div>
</event-metadata-block>
<event-metadata-block :title="$t('Date and time')" icon="calendar">
<event-metadata-block :title="$t('Date and time')" name="calendar">
<event-full-date
:beginsOn="event.beginsOn"
:show-start-time="event.options.showStartTime"
@ -69,7 +69,7 @@
</event-metadata-block>
<event-metadata-block
v-if="event.onlineAddress && urlToHostname(event.onlineAddress)"
icon="link"
name="link"
:title="$t('Website')"
>
<a
@ -87,7 +87,7 @@
<event-metadata-block
v-for="extra in extraMetadata"
:title="extra.title || extra.label"
:icon="extra.icon"
:name="extra.icon"
:key="extra.key"
>
<span

View File

@ -29,7 +29,7 @@
field="fullName"
:loading="isFetching"
@typing="fetchAsyncData"
icon="map-marker"
name="map-marker"
expanded
@select="updateSelected"
v-bind="$attrs"
@ -37,7 +37,7 @@
:disabled="disabled"
>
<template #default="{ option }">
<b-icon :icon="option.poiInfos.poiIcon.icon" />
<mdicon :name="option.poiInfos.poiIcon.icon" />
<b>{{ option.poiInfos.name }}</b
><br />
<small>{{ option.poiInfos.alternativeName }}</small>
@ -74,7 +74,7 @@
<div class="card-content">
<address-info
:address="selected"
:show-icon="true"
:show-name="true"
:show-timezone="true"
:user-timezone="userTimezone"
/>

View File

@ -19,11 +19,11 @@
alt=""
/>
</figure>
<b-icon
<mdicon
class="media-left"
v-else
size="is-large"
icon="account-circle"
size="48"
name="account-circle"
/>
<div class="media-content">
<h3>{{ availableActor.name }}</h3>

View File

@ -15,7 +15,7 @@
:alt="selectedActor.avatar.alt || ''"
/>
</figure>
<b-icon v-else size="is-large" icon="account-circle" />
<mdicon v-else size="48" name="account-circle" />
</div>
<div class="media-content" v-if="selectedActor.name">
<p class="is-4">{{ selectedActor.name }}</p>
@ -43,7 +43,7 @@
:src="selectedActor.avatar.url"
:alt="selectedActor.avatar.alt"
/>
<b-icon v-else size="is-large" icon="account-circle" />
<mdicon v-else size="48" name="account-circle" />
</span>
<b-modal :active.sync="isComponentModalActive" has-modal-card>
<div class="modal-card">
@ -81,7 +81,7 @@
:alt="actor.avatar.alt"
/>
</figure>
<b-icon v-else size="is-large" icon="account-circle" />
<mdicon v-else size="48" name="account-circle" />
</div>
<div class="media-content" v-if="actor.name">
<p class="is-4">{{ actor.name }}</p>

View File

@ -37,11 +37,11 @@
class="dropdown-disabled"
>
<button class="button is-success is-large" type="button" slot="trigger">
<b-icon icon="timer-sand-empty" />
<mdicon name="timer-sand-empty" />
<template>
<span>{{ $t("I participate") }}</span>
</template>
<b-icon icon="menu-down" />
<mdicon name="menu-down" />
</button>
<!-- <b-dropdown-item :value="false" aria-role="listitem">-->

View File

@ -59,7 +59,7 @@
target="_blank"
rel="nofollow noopener"
title="Twitter"
><b-icon icon="twitter" size="is-large" type="is-primary"
><mdicon name="twitter" size="48" type="is-primary"
/></a>
<a
:href="mastodonShareUrl"
@ -75,14 +75,14 @@
target="_blank"
rel="nofollow noopener"
title="Facebook"
><b-icon icon="facebook" size="is-large" type="is-primary"
><mdicon name="facebook" size="48" type="is-primary"
/></a>
<a
:href="whatsAppShareUrl"
target="_blank"
rel="nofollow noopener"
title="WhatsApp"
><b-icon icon="whatsapp" size="is-large" type="is-primary"
><mdicon name="whatsapp" size="48" type="is-primary"
/></a>
<a
:href="telegramShareUrl"
@ -98,7 +98,7 @@
target="_blank"
rel="nofollow noopener"
title="LinkedIn"
><b-icon icon="linkedin" size="is-large" type="is-primary"
><mdicon name="linkedin" size="48" type="is-primary"
/></a>
<a
:href="diasporaShareUrl"
@ -114,7 +114,7 @@
target="_blank"
rel="nofollow noopener"
title="Email"
><b-icon icon="email" size="is-large" type="is-primary"
><mdicon name="email" size="48" type="is-primary"
/></a>
</div>
</div>

View File

@ -8,7 +8,7 @@
$t('You can add tags by hitting the Enter key or by adding a comma')
"
>
<b-icon size="is-small" icon="help-circle-outline"></b-icon>
<mdicon name="help-circle-outline" :size="24"></mdicon>
</b-tooltip>
</template>
<b-taginput
@ -17,7 +17,7 @@
autocomplete
:allow-new="true"
:field="'title'"
icon="label"
name="label"
maxlength="20"
maxtags="10"
:placeholder="$t('Eg: Stockholm, Dance, Chess…')"

View File

@ -6,7 +6,7 @@
<figure class="image is-48x48" v-if="group.avatar">
<img class="is-rounded" :src="group.avatar.url" alt="" />
</figure>
<b-icon v-else size="is-large" icon="account-group" />
<mdicon v-else size="48" name="account-group" />
</div>
<div class="media-content">
<router-link

View File

@ -13,7 +13,7 @@
<figure class="image is-48x48" v-if="member.parent.avatar">
<img class="is-rounded" :src="member.parent.avatar.url" alt="" />
</figure>
<b-icon v-else size="is-large" icon="account-group" />
<mdicon v-else size="48" name="account-group" />
</div>
<div class="media-content">
<router-link
@ -52,10 +52,10 @@
</div>
<div>
<b-dropdown aria-role="list" position="is-bottom-left">
<b-icon icon="dots-horizontal" slot="trigger" />
<mdicon name="dots-horizontal" slot="trigger" />
<b-dropdown-item aria-role="listitem" @click="$emit('leave')">
<b-icon icon="exit-to-app" />
<mdicon name="exit-to-app" />
{{ $t("Leave") }}
</b-dropdown-item>
</b-dropdown>

View File

@ -2,7 +2,7 @@
<section>
<div class="group-section-title" :class="{ privateSection }">
<h2>
<b-icon :icon="icon" />
<mdicon :name="icon" />
<span>{{ title }}</span>
</h2>
<router-link :to="route">{{ $t("View all") }}</router-link>

View File

@ -14,7 +14,7 @@
<figure class="image is-48x48" v-if="member.parent.avatar">
<img class="is-rounded" :src="member.parent.avatar.url" alt="" />
</figure>
<b-icon v-else size="is-large" icon="account-group" />
<mdicon v-else size="48" name="account-group" />
</div>
<div class="media-content">
<div class="level">

View File

@ -49,7 +49,7 @@
target="_blank"
rel="nofollow noopener"
title="Twitter"
><b-icon icon="twitter" size="is-large" type="is-primary"
><mdicon name="twitter" size="48" type="is-primary"
/></a>
<a
:href="mastodonShareUrl"
@ -65,21 +65,21 @@
target="_blank"
rel="nofollow noopener"
title="Facebook"
><b-icon icon="facebook" size="is-large" type="is-primary"
><mdicon name="facebook" size="48" type="is-primary"
/></a>
<a
:href="linkedInShareUrl"
target="_blank"
rel="nofollow noopener"
title="LinkedIn"
><b-icon icon="linkedin" size="is-large" type="is-primary"
><mdicon name="linkedin" size="48" type="is-primary"
/></a>
<a
:href="whatsAppShareUrl"
target="_blank"
rel="nofollow noopener"
title="WhatsApp"
><b-icon icon="whatsapp" size="is-large" type="is-primary"
><mdicon name="whatsapp" size="48" type="is-primary"
/></a>
<a
:href="telegramShareUrl"
@ -104,7 +104,7 @@
target="_blank"
rel="nofollow noopener"
title="Email"
><b-icon icon="email" size="is-large" type="is-primary"
><mdicon name="email" size="48" type="is-primary"
/></a>
</div>
</div>

View File

@ -96,7 +96,7 @@
:src="currentActor.avatar.url"
/>
</figure>
<b-icon v-else icon="account-circle" />
<mdicon v-else name="account-circle" />
</div>
<div class="media-content is-hidden-desktop">
<span>{{ displayName(currentActor) }}</span>
@ -129,7 +129,7 @@
alt
/>
</figure>
<b-icon v-else size="is-medium" icon="account-circle" />
<mdicon v-else size="is-medium" name="account-circle" />
</div>
<div class="media-content">

View File

@ -29,7 +29,7 @@
class="is-clickable"
@click="isAnonymousParticipationModalOpen = true"
>
<b-icon size="is-small" icon="information-outline" />
<mdicon size="is-small" name="information-outline" />
</span>
</b-tooltip>
</small>
@ -49,7 +49,7 @@
"
>
<router-link :to="{ name: RouteName.TERMS }">
<b-icon size="is-small" icon="help-circle-outline" />
<mdicon size="is-small" name="help-circle-outline" />
</router-link>
</b-tooltip>
</small>
@ -59,7 +59,7 @@
<template>
<span>{{ $t("Event already passed") }}</span>
</template>
<b-icon icon="menu-down" />
<mdicon name="menu-down" />
</button>
</div>
<b-modal

View File

@ -40,7 +40,7 @@
)
"
>
<b-icon size="is-small" icon="help-circle-outline" />
<mdicon size="is-small" name="help-circle-outline" />
</b-tooltip>
</p>
</div>

View File

@ -33,7 +33,7 @@
<b-field class="file is-primary">
<b-upload @input="onFileChanged" :accept="accept" class="file-label">
<span class="file-cta">
<b-icon class="file-icon" icon="upload" />
<mdicon class="file-icon" name="upload" />
<span>{{ $t("Click to upload") }}</span>
</span>
</b-upload>

View File

@ -9,7 +9,7 @@
<figure class="image is-96x96" v-if="post.picture">
<img :src="post.picture.url" alt="" />
</figure>
<b-icon v-else size="is-large" icon="post" />
<mdicon v-else size="48" name="post" />
</div>
<div class="media-content">
<p class="post-minimalist-title">{{ post.title }}</p>
@ -24,13 +24,13 @@
"
class="has-text-grey-dark"
>
<b-icon icon="earth" size="is-small" />{{ $t("Public") }}</small
<mdicon name="earth" size="is-small" />{{ $t("Public") }}</small
>
<small
v-else-if="post.visibility === PostVisibility.UNLISTED"
class="has-text-grey-dark"
>
<b-icon icon="link" size="is-small" />{{
<mdicon name="link" size="is-small" />{{
$t("Accessible through link")
}}</small
>
@ -38,7 +38,7 @@
v-else-if="post.visibility === PostVisibility.PRIVATE"
class="has-text-grey-dark"
>
<b-icon icon="lock" size="is-small" />{{
<mdicon name="lock" size="is-small" />{{
$t("Accessible only to members", {
group: post.attributedTo.name,
})

View File

@ -6,7 +6,7 @@
<figure class="image is-48x48" v-if="report.reported.avatar">
<img alt="" :src="report.reported.avatar.url" />
</figure>
<b-icon v-else size="is-large" icon="account-circle" />
<mdicon v-else size="48" name="account-circle" />
</div>
<div class="media-content">
<p class="title is-4">{{ report.reported.name }}</p>

View File

@ -10,7 +10,7 @@
>
<div class="media">
<div class="media-left">
<b-icon icon="alert" type="is-warning" size="is-large" />
<mdicon name="alert" type="is-warning" size="48" />
</div>
<div class="media-content">
<div class="box" v-if="comment">
@ -19,11 +19,11 @@
<figure class="image is-48x48" v-if="comment.actor.avatar">
<img :src="comment.actor.avatar.url" alt="Image" />
</figure>
<b-icon
<mdicon
class="media-left"
v-else
size="is-large"
icon="account-circle"
size="48"
name="account-circle"
/>
</div>
<div class="media-content">

View File

@ -10,7 +10,7 @@
}"
>
<div class="preview">
<b-icon icon="folder" size="is-large" />
<mdicon name="folder" size="48" />
</div>
<div class="body">
<h3>{{ resource.title }}</h3>

View File

@ -1,17 +1,17 @@
<template>
<b-dropdown aria-role="list" position="is-bottom-left">
<b-icon icon="dots-horizontal" slot="trigger" />
<mdicon name="dots-horizontal" slot="trigger" />
<b-dropdown-item aria-role="listitem" @click="$emit('rename')">
<b-icon icon="pencil" />
<mdicon name="pencil" />
{{ $t("Rename") }}
</b-dropdown-item>
<b-dropdown-item aria-role="listitem" @click="$emit('move')">
<b-icon icon="folder-move" />
<mdicon name="folder-move" />
{{ $t("Move") }}
</b-dropdown-item>
<b-dropdown-item aria-role="listitem" @click="$emit('delete')">
<b-icon icon="delete" />
<mdicon name="delete" />
{{ $t("Delete") }}
</b-dropdown-item>
</b-dropdown>

View File

@ -8,7 +8,7 @@
Object.keys(mapServiceTypeToIcon).includes(resource.type)
"
>
<b-icon :icon="mapServiceTypeToIcon[resource.type]" size="is-large" />
<mdicon :name="mapServiceTypeToIcon[resource.type]" size="48" />
</div>
<div
class="preview-image"
@ -16,7 +16,7 @@
:style="`background-image: url(${resource.metadata.imageRemoteUrl})`"
/>
<div class="preview-type" v-else>
<b-icon icon="link" size="is-large" />
<mdicon name="link" size="48" />
</div>
</div>
<div class="body">

View File

@ -12,7 +12,7 @@
v-if="resource.parent"
>
<span class="panel-icon">
<b-icon icon="chevron-up" size="is-small" />
<mdicon name="chevron-up" size="is-small" />
</span>
{{ $t("Parent folder") }}
</a>
@ -22,7 +22,7 @@
v-else-if="resource.path.length > 1"
>
<span class="panel-icon">
<b-icon icon="chevron-up" size="is-small" />
<mdicon name="chevron-up" size="is-small" />
</span>
{{ $t("Parent folder") }}
</a>
@ -38,12 +38,12 @@
@click="goDown(element)"
>
<span class="panel-icon">
<b-icon
icon="folder"
<mdicon
name="folder"
size="is-small"
v-if="element.type === 'folder'"
/>
<b-icon icon="link" size="is-small" v-else />
<mdicon name="link" size="is-small" v-else />
</span>
{{ element.title }}
<span v-if="element.id === initialResource.id">

View File

@ -4,7 +4,7 @@
<b-input
custom-class="searchField"
id="navSearchField"
icon="magnify"
name="magnify"
type="search"
rounded
:placeholder="defaultPlaceHolder"

View File

@ -1,9 +1,11 @@
<template>
<span class="icon has-text-primary is-large">
<span class="mdi">
<svg
version="1.1"
viewBox="0 0 65.131 65.131"
xmlns="http://www.w3.org/2000/svg"
width="48"
height="48" fill="currentColor"
>
<title>Diaspora logo</title>
<path

View File

@ -1,10 +1,11 @@
<template>
<span class="icon has-text-primary is-large">
<span class="mdi">
<svg
xmlns="http://www.w3.org/2000/svg"
width="61.076954mm"
height="65.47831mm"
width="48"
height="48"
viewBox="0 0 216.4144 232.00976"
fill="currentColor"
>
<title>Mastodon logo</title>
<path

View File

@ -1,6 +1,7 @@
<template>
<span class="icon has-text-primary is-large">
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<span class="mdi">
<svg role="img" width="48"
height="48" fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<title>Telegram</title>
<path
d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"

View File

@ -8,11 +8,11 @@
>
<span class="details has-text-grey">
<span v-if="todo.dueDate" class="due_date">
<b-icon icon="calendar" />
<mdicon name="calendar" />
{{ todo.dueDate | formatDateString }}
</span>
<span v-if="todo.assignedTo" class="assigned_to">
<b-icon icon="account" />
<mdicon name="account" />
{{ `@${todo.assignedTo.preferredUsername}` }}
<span v-if="todo.assignedTo.domain">{{
`@${todo.assignedTo.domain}`

View File

@ -4,7 +4,7 @@
v-if="isProviderSelected && oauthProvider.label === null"
:href="`/auth/${oauthProvider.id}`"
>
<b-icon :icon="oauthProvider.id" />
<mdicon :name="oauthProvider.id" />
<span>{{ SELECTED_PROVIDERS[oauthProvider.id] }}</span></a
>
<a
@ -12,7 +12,7 @@
:href="`/auth/${oauthProvider.id}`"
v-else-if="isProviderSelected"
>
<b-icon icon="lock" />
<mdicon name="lock" />
<span>{{ oauthProvider.label }}</span>
</a>
</template>

View File

@ -1,13 +1,13 @@
<template>
<div class="empty-content" :class="{ inline }" role="note">
<b-icon :icon="icon" size="is-large" />
<mdicon :name="icon" size="48" />
<h2 class="empty-content__title">
<!-- @slot Mandatory title -->
<slot />
</h2>
<p v-show="$slots.desc">
<!-- @slot Optional description -->
<slot name="desc" />
<slot icon="desc" />
</p>
</div>
</template>

View File

@ -0,0 +1,8 @@
<template>
<mdicon :name="icon[1]" size="size" />
</template>
<script lang="ts">
export default {
props: ['icon','size'],
}
</script>

201
js/src/icons.ts Normal file
View File

@ -0,0 +1,201 @@
import {
mdiFormatBold,
mdiFormatItalic,
mdiFormatUnderline,
mdiFormatHeader1,
mdiFormatHeader2,
mdiFormatHeader3,
mdiLink,
mdiLinkOff,
mdiImage,
mdiFormatListBulleted,
mdiFormatListNumbered,
mdiFormatQuoteClose,
mdiUndo,
mdiRedo,
mdiAccountCircle,
mdiUpload,
mdiChat,
mdiCalendar,
mdiCog,
mdiAccountMultiplePlus,
mdiAccountMultipleMinus,
mdiAccountMultiple,
mdiBullhorn,
mdiMapMarker,
mdiCity,
mdiRoadVariant,
mdiHome,
mdiDramaMasks,
mdiParking,
mdiPoliceBadge,
mdiEmail,
mdiSchool,
mdiPineTree,
mdiBicycle,
mdiHospitalBox,
mdiOfficeBuilding,
mdiHumanMaleFemale,
mdiContentCut,
mdiLan,
mdiDelete,
mdiAlert,
mdiChevronUp,
mdiChevronDown,
mdiReply,
mdiDotsHorizontal,
mdiPencil,
mdiFlag,
mdiEarth,
mdiLock,
mdiContentDuplicate,
mdiViewCompact,
mdiHelpCircle,
mdiTimerSandEmpty,
mdiMenuDown,
mdiTwitter,
mdiFacebook,
mdiWhatsapp,
mdiLinkedin,
mdiHelpCircleOutline,
mdiAccountGroup,
mdiExitToApp,
mdiInformationOutline,
mdiPost,
mdiFolder,
mdiFolderMove,
mdiInboxArrowDown,
mdiInboxArrowUp,
mdiCalendarQuestion,
mdiCalendarCheck,
mdiCalendarRemove,
mdiTicketConfirmationOutline,
mdiShare,
mdiCalendarPlus,
mdiFileDelimited,
mdiFilePdfBox,
mdiGoogleSpreadsheet,
mdiIncognito,
mdiRss,
mdiCalendarSync,
mdiTimelineText,
mdiClock,
mdiFileDocumentOutline,
mdiWebcam,
mdiSend,
mdiContentPaste,
mdiRefresh,
mdiWalk,
mdiBike,
mdiBus,
mdiCar,
mdiChevronLeft,
mdiChevronRight,
mdiChevronDoubleUp,
mdiChevronDoubleDown,
mdiClose,
mdiChatAlert,
mdiMinus,
mdiPlus,
} from "@mdi/js";
export default {
mdiFormatBold,
mdiFormatItalic,
mdiFormatUnderline,
mdiFormatHeader1,
mdiFormatHeader2,
mdiFormatHeader3,
mdiLink,
mdiLinkOff,
mdiImage,
mdiFormatListBulleted,
mdiFormatListNumbered,
mdiFormatQuoteClose,
mdiUndo,
mdiRedo,
mdiAccountCircle,
mdiUpload,
mdiChat,
mdiCalendar,
mdiCog,
mdiAccountMultiplePlus,
mdiAccountMultipleMinus,
mdiAccountMultiple,
mdiBullhorn,
mdiMapMarker,
mdiCity,
mdiRoadVariant,
mdiHome,
mdiDramaMasks,
mdiParking,
mdiPoliceBadge,
mdiEmail,
mdiSchool,
mdiPineTree,
mdiBicycle,
mdiHospitalBox,
mdiOfficeBuilding,
mdiHumanMaleFemale,
mdiContentCut,
mdiLan,
mdiDelete,
mdiAlert,
mdiChevronUp,
mdiChevronDown,
mdiReply,
mdiDotsHorizontal,
mdiPencil,
mdiFlag,
mdiEarth,
mdiLock,
mdiContentDuplicate,
mdiViewCompact,
mdiHelpCircle,
mdiTimerSandEmpty,
mdiMenuDown,
mdiTwitter,
mdiFacebook,
mdiWhatsapp,
mdiLinkedin,
mdiHelpCircleOutline,
mdiAccountGroup,
mdiExitToApp,
mdiInformationOutline,
mdiPost,
mdiFolder,
mdiFolderMove,
mdiInboxArrowDown,
mdiInboxArrowUp,
mdiCalendarQuestion,
mdiCalendarCheck,
mdiCalendarRemove,
mdiTicketConfirmationOutline,
mdiShare,
mdiCalendarPlus,
mdiFileDelimited,
mdiFilePdfBox,
mdiGoogleSpreadsheet,
mdiIncognito,
mdiRss,
mdiCalendarSync,
mdiTimelineText,
mdiClock,
mdiFileDocumentOutline,
mdiWebcam,
mdiSend,
mdiContentPaste,
mdiRefresh,
mdiWalk,
mdiBike,
mdiBus,
mdiCar,
mdiChevronLeft,
mdiChevronRight,
mdiChevronDoubleUp,
mdiChevronDoubleDown,
mdiClose,
mdiChatAlert,
mdiMinus,
mdiPlus,
};

View File

@ -17,10 +17,14 @@ import filters from "./filters";
import { i18n } from "./utils/i18n";
import apolloProvider from "./vue-apollo";
import "./registerServiceWorker";
import SvgIcon from "./components/Utils/SVGIcon.vue";
// @ts-ignore
import mdiVue from "mdi-vue/v2";
import icons from "./icons";
Vue.config.productionTip = false;
Vue.use(Buefy);
Vue.use(Buefy, { defaultIconPack: null, defaultIconComponent: SvgIcon });
Vue.use(NotifierPlugin);
Vue.use(filters);
Vue.use(VueMeta);
@ -28,6 +32,9 @@ Vue.use(VueScrollTo);
Vue.use(VTooltip);
Vue.use(VueAnnouncer);
Vue.use(VueSkipTo);
Vue.use(mdiVue, {
icons,
});
// Register the router hooks with their names
Component.registerHooks([

View File

@ -21,11 +21,11 @@
:src="identity.avatar.url"
alt=""
/>
<b-icon
<mdicon
class="media-left"
v-else
size="is-large"
icon="account-circle"
size="48"
name="account-circle"
/>
<div class="media-content">
<h3>@{{ identity.preferredUsername }}</h3>

View File

@ -18,7 +18,7 @@
alt=""
/>
</figure>
<b-icon v-else size="is-large" icon="account-circle" />
<mdicon v-else size="48" name="account-circle" />
</div>
<div class="media-content" v-if="currentIdentity.name">
<p class="is-4">{{ currentIdentity.name }}</p>
@ -43,7 +43,7 @@
<figure class="image is-48x48" v-if="currentIdentity.avatar">
<img class="is-rounded" :src="currentIdentity.avatar.url" alt="" />
</figure>
<b-icon v-else size="is-large" icon="account-circle" />
<mdicon v-else size="48" name="account-circle" />
</span>
<b-modal v-model="isComponentModalActive" has-modal-card>
<identity-picker v-model="currentIdentity" />

View File

@ -25,7 +25,7 @@
<b-dropdown hoverable has-link aria-role="list">
<button class="button is-primary" slot="trigger">
{{ $t("Public feeds") }}
<b-icon icon="menu-down"></b-icon>
<mdicon name="menu-down"></mdicon>
</button>
<b-dropdown-item aria-role="listitem">
@ -48,7 +48,7 @@
>
<button class="button is-info" slot="trigger">
{{ $t("Private feeds") }}
<b-icon icon="menu-down"></b-icon>
<mdicon name="menu-down"></mdicon>
</button>
<b-dropdown-item aria-role="listitem">

View File

@ -122,11 +122,10 @@
alt=""
/>
</figure>
<b-icon
class="media-left"
<mdicon class="media-left"
v-else
size="is-large"
icon="account-circle"
size="48"
name="account-circle"
/>
<div class="media-content">
<div class="content">

View File

@ -189,11 +189,11 @@
alt=""
/>
</figure>
<b-icon
<mdicon
class="media-left"
v-else
size="is-large"
icon="account-circle"
name="account-circle"
/>
<div class="media-content">
<div class="content">

View File

@ -34,7 +34,7 @@
:to="{ name: RouteName.RELAY_FOLLOWINGS }"
>
<a>
<b-icon icon="inbox-arrow-down"></b-icon>
<mdicon name="inbox-arrow-down"></mdicon>
<span>
{{ $t("Followings") }}
<b-tag rounded>{{ relayFollowings.total }}</b-tag>
@ -47,7 +47,7 @@
:to="{ name: RouteName.RELAY_FOLLOWERS }"
>
<a>
<b-icon icon="inbox-arrow-up"></b-icon>
<mdicon name="inbox-arrow-up"></mdicon>
<span>
{{ $t("Followers") }}
<b-tag rounded>{{ relayFollowers.total }}</b-tag>

View File

@ -51,7 +51,7 @@
:aria-label="$t('Filter')"
v-model="props.filters.preferredUsername"
:placeholder="$t('Filter')"
icon="magnify"
name="magnify"
/>
</template>
<template v-slot:default="props">
@ -89,7 +89,7 @@
:aria-label="$t('Filter')"
v-model="props.filters.domain"
:placeholder="$t('Filter')"
icon="magnify"
name="magnify"
/>
</template>
<template v-slot:default="props">

View File

@ -44,7 +44,7 @@
v-model="props.filters.preferredUsername"
:aria-label="$t('Filter')"
:placeholder="$t('Filter')"
icon="magnify"
name="magnify"
/>
</template>
<template v-slot:default="props">
@ -82,7 +82,7 @@
v-model="props.filters.domain"
:aria-label="$t('Filter')"
:placeholder="$t('Filter')"
icon="magnify"
name="magnify"
/>
</template>
<template v-slot:default="props">

View File

@ -84,7 +84,7 @@
autocomplete
:open-on-focus="true"
field="name"
icon="label"
name="label"
:placeholder="$t('Select languages')"
@typing="getFilteredLanguages"
id="instance-languages"

View File

@ -27,7 +27,7 @@
:aria-previous-label="$t('Previous page')"
:aria-page-label="$t('Page')"
:aria-current-label="$t('Current page')"
:show-detail-icon="true"
:show-detail-name="true"
:total="users.total"
:per-page="USERS_PER_PAGE"
:has-detailed-visible="(row) => row.actors.length > 0"
@ -43,7 +43,7 @@
v-model="props.filters.email"
:aria-label="$t('Filter')"
:placeholder="$t('Filter')"
icon="magnify"
name="magnify"
/>
</template>
<template v-slot:default="props">
@ -93,7 +93,7 @@
<p class="image is-32x32" v-if="actor.avatar">
<img :src="actor.avatar.url" />
</p>
<b-icon v-else size="is-medium" icon="account-circle" />
<mdicon v-else size="is-medium" name="account-circle" />
</figure>
<div class="media-content">
<div class="content">

View File

@ -42,7 +42,7 @@
<b-datetimepicker
class="datepicker starts-on"
:placeholder="$t('Type or select a date…')"
icon="calendar-today"
name="calendar-today"
:locale="$i18n.locale"
v-model="beginsOn"
horizontal-time-picker
@ -61,7 +61,7 @@
<b-datetimepicker
class="datepicker ends-on"
:placeholder="$t('Type or select a date…')"
icon="calendar-today"
name="calendar-today"
:locale="$i18n.locale"
v-model="endsOn"
horizontal-time-picker
@ -102,7 +102,7 @@
<b-field :label="$t('Website / URL')" label-for="website-url">
<b-input
icon="link"
name="link"
type="url"
v-model="event.onlineAddress"
placeholder="URL"
@ -308,7 +308,7 @@
type="is-warning"
:native-value="EventStatus.TENTATIVE"
>
<b-icon icon="calendar-question" />
<mdicon name="calendar-question" />
{{ $t("Tentative: Will be confirmed later") }}
</b-radio-button>
<b-radio-button
@ -317,7 +317,7 @@
type="is-success"
:native-value="EventStatus.CONFIRMED"
>
<b-icon icon="calendar-check" />
<mdicon name="calendar-check" />
{{ $t("Confirmed: Will happen") }}
</b-radio-button>
<b-radio-button
@ -326,7 +326,7 @@
type="is-danger"
:native-value="EventStatus.CANCELLED"
>
<b-icon icon="calendar-remove" />
<mdicon name="calendar-remove" />
{{ $t("Cancelled: Won't happen") }}
</b-radio-button>
</b-field>

View File

@ -113,11 +113,11 @@
<template class="visibility" v-if="!event.draft">
<p v-if="event.visibility === EventVisibility.PUBLIC">
{{ $t("Public event") }}
<b-icon icon="earth" />
<mdicon name="earth" />
</p>
<p v-if="event.visibility === EventVisibility.UNLISTED">
{{ $t("Private event") }}
<b-icon icon="link" />
<mdicon name="link" />
</p>
</template>
<template v-if="!event.local && organizer.domain">
@ -199,9 +199,9 @@
)
"
>
<b-icon size="is-small" icon="help-circle-outline" />
<mdicon size="is-small" name="help-circle-outline" />
</b-tooltip>
<b-icon icon="ticket-confirmation-outline" />
<mdicon name="ticket-confirmation-outline" />
</p>
<b-dropdown position="is-bottom-left" aria-role="list">
<b-button
@ -223,7 +223,7 @@
}"
>
{{ $t("Edit") }}
<b-icon icon="pencil" />
<mdicon name="pencil" />
</router-link>
</b-dropdown-item>
<b-dropdown-item
@ -238,7 +238,7 @@
}"
>
{{ $t("Duplicate") }}
<b-icon icon="content-duplicate" />
<mdicon name="content-duplicate" />
</router-link>
</b-dropdown-item>
<b-dropdown-item
@ -248,7 +248,7 @@
@keyup.enter="openDeleteEventModalWrapper"
>
{{ $t("Delete") }}
<b-icon icon="delete" />
<mdicon name="delete" />
</b-dropdown-item>
<hr
@ -265,7 +265,7 @@
>
<span>
{{ $t("Share this event") }}
<b-icon icon="share" />
<mdicon name="share" />
</span>
</b-dropdown-item>
<b-dropdown-item
@ -276,7 +276,7 @@
>
<span>
{{ $t("Add to my calendar") }}
<b-icon icon="calendar-plus" />
<mdicon name="calendar-plus" />
</span>
</b-dropdown-item>
<b-dropdown-item
@ -287,7 +287,7 @@
>
<span>
{{ $t("Report") }}
<b-icon icon="flag" />
<mdicon name="flag" />
</span>
</b-dropdown-item>
</b-dropdown>

View File

@ -70,7 +70,7 @@
@keyup.enter="exportParticipants(format)"
>
<button class="dropdown-button">
<b-icon :icon="formatToIcon(format)"></b-icon>
<mdicon :name="formatToIcon(format)"></mdicon>
{{ format }}
</button>
</b-dropdown-item>
@ -87,7 +87,7 @@
checkable
:is-row-checkable="(row) => row.role !== ParticipantRole.CREATOR"
checkbox-position="left"
:show-detail-icon="false"
:show-detail-name="false"
:loading="this.$apollo.loading"
paginated
backend-pagination
@ -116,17 +116,17 @@
>
<img class="is-rounded" :src="props.row.actor.avatar.url" alt="" />
</figure>
<b-icon
<mdicon
class="media-left"
v-else-if="props.row.actor.preferredUsername === 'anonymous'"
size="is-large"
icon="incognito"
size="48"
name="incognito"
/>
<b-icon
<mdicon
class="media-left"
v-else
size="is-large"
icon="account-circle"
size="48"
name="account-circle"
/>
<div class="media-content">
<div class="content">

View File

@ -55,7 +55,7 @@
<figure class="image is-128x128" v-if="group.avatar">
<img class="is-rounded" :src="group.avatar.url" alt="" />
</figure>
<b-icon v-else size="is-large" icon="account-group" />
<mdicon v-else size="48" name="account-group" />
</div>
<div class="title-container">
<h1 v-if="group.name">{{ group.name }}</h1>
@ -89,7 +89,7 @@
v-if="member.actor.avatar"
alt
/>
<b-icon v-else size="is-medium" icon="account-circle" />
<mdicon v-else size="is-medium" name="account-circle" />
</figure>
</div>
<p>
@ -198,7 +198,7 @@
@click="triggerShare()"
>
<span>
<b-icon icon="share" />
<mdicon name="share" />
{{ $t("Share") }}
</span>
</b-dropdown-item>
@ -212,7 +212,7 @@
:href="`@${preferredUsername}/feed/atom`"
:title="$t('Atom feed for events and posts')"
>
<b-icon icon="rss" />
<mdicon name="rss" />
{{ $t("RSS/Atom Feed") }}
</a>
</b-dropdown-item>
@ -221,7 +221,7 @@
:href="`@${preferredUsername}/feed/ics`"
:title="$t('ICS feed for events')"
>
<b-icon icon="calendar-sync" />
<mdicon name="calendar-sync" />
{{ $t("ICS/WebCal Feed") }}
</a>
</b-dropdown-item>
@ -232,7 +232,7 @@
@click="isReportModalActive = true"
>
<span>
<b-icon icon="flag" />
<mdicon name="flag" />
{{ $t("Report") }}
</span>
</b-dropdown-item>
@ -242,7 +242,7 @@
@click="leaveGroup"
>
<span>
<b-icon icon="exit-to-app" />
<mdicon name="exit-to-app" />
{{ $t("Leave") }}
</span>
</b-dropdown-item>
@ -417,7 +417,7 @@
<div v-else-if="group" class="public-container">
<aside class="group-metadata">
<div class="sticky">
<event-metadata-block :title="$t('Members')" icon="account-group">
<event-metadata-block :title="$t('Members')" name="account-group">
{{
$tc("{count} members", group.members.total, {
count: group.members.total,
@ -427,7 +427,7 @@
<event-metadata-block
v-if="physicalAddress"
:title="$t('Location')"
:icon="
:name="
physicalAddress ? physicalAddress.poiInfos.poiIcon.icon : 'earth'
"
>

View File

@ -75,11 +75,11 @@
alt=""
/>
</figure>
<b-icon
<mdicon
class="media-left"
v-else
size="is-large"
icon="account-circle"
size="48"
name="account-circle"
/>
<div class="media-content">
<div class="content">

View File

@ -131,11 +131,11 @@
:alt="props.row.actor.avatar.alt || ''"
/>
</figure>
<b-icon
<mdicon
class="media-left"
v-else
size="is-large"
icon="account-circle"
size="48"
name="account-circle"
/>
<div class="media-content">
<div class="content">

View File

@ -25,69 +25,69 @@
<section class="timeline">
<b-field>
<b-radio-button v-model="activityType" :native-value="undefined">
<b-icon icon="timeline-text"></b-icon>
<mdicon name="timeline-text"></mdicon>
{{ $t("All activities") }}</b-radio-button
>
<b-radio-button
v-model="activityType"
:native-value="ActivityType.MEMBER"
>
<b-icon icon="account-multiple-plus"></b-icon>
<mdicon name="account-multiple-plus"></mdicon>
{{ $t("Members") }}</b-radio-button
>
<b-radio-button
v-model="activityType"
:native-value="ActivityType.GROUP"
>
<b-icon icon="cog"></b-icon>
<mdicon name="cog"></mdicon>
{{ $t("Settings") }}</b-radio-button
>
<b-radio-button
v-model="activityType"
:native-value="ActivityType.EVENT"
>
<b-icon icon="calendar"></b-icon>
<mdicon name="calendar"></mdicon>
{{ $t("Events") }}</b-radio-button
>
<b-radio-button
v-model="activityType"
:native-value="ActivityType.POST"
>
<b-icon icon="bullhorn"></b-icon>
<mdicon name="bullhorn"></mdicon>
{{ $t("Posts") }}</b-radio-button
>
<b-radio-button
v-model="activityType"
:native-value="ActivityType.DISCUSSION"
>
<b-icon icon="chat"></b-icon>
<mdicon name="chat"></mdicon>
{{ $t("Discussions") }}</b-radio-button
>
<b-radio-button
v-model="activityType"
:native-value="ActivityType.RESOURCE"
>
<b-icon icon="link"></b-icon>
<mdicon name="link"></mdicon>
{{ $t("Resources") }}</b-radio-button
>
</b-field>
<b-field>
<b-radio-button v-model="activityAuthor" :native-value="undefined">
<b-icon icon="timeline-text"></b-icon>
<mdicon name="timeline-text"></mdicon>
{{ $t("All activities") }}</b-radio-button
>
<b-radio-button
v-model="activityAuthor"
:native-value="ActivityAuthorFilter.SELF"
>
<b-icon icon="account"></b-icon>
<mdicon name="account"></mdicon>
{{ $t("From yourself") }}</b-radio-button
>
<b-radio-button
v-model="activityAuthor"
:native-value="ActivityAuthorFilter.BY"
>
<b-icon icon="account-multiple"></b-icon>
<mdicon name="account-multiple"></mdicon>
{{ $t("By others") }}</b-radio-button
>
</b-field>

View File

@ -284,7 +284,7 @@
:to="{ name: RouteName.PREFERENCES }"
:title="$t('Change')"
>
<b-icon class="clickable" icon="pencil" size="is-small" />
<mdicon class="clickable" name="pencil" size="is-small" />
</router-link>
<b-loading :active.sync="$apollo.loading" />
</p>
@ -335,7 +335,7 @@
<b-message v-else type="is-danger"
>{{ $t("No events found") }}<br />
<div v-if="goingToEvents.size > 0 || lastWeekEvents.length > 0">
<b-icon size="is-small" icon="information-outline" />
<mdicon size="is-small" name="information-outline" />
<small>{{
$t("The events you created are not shown here.")
}}</small>

View File

@ -211,11 +211,11 @@
>
<img :src="comment.actor.avatar.url" alt="Image" />
</figure>
<b-icon
<mdicon
class="media-left"
v-else
size="is-large"
icon="account-circle"
size="48"
name="account-circle"
/>
</div>
<div class="media-content">

View File

@ -50,7 +50,7 @@
{{ $t("No open reports yet") }}
</empty-content>
<empty-content
icon="chat-alert"
name="chat-alert"
inline
v-if="status === ReportStatusEnum.RESOLVED"
>

View File

@ -42,7 +42,7 @@
<b-field class="search">
<b-input
expanded
icon="magnify"
name="magnify"
type="search"
:placeholder="searchPlaceHolder"
v-model="searchText"

View File

@ -266,7 +266,7 @@ export default class EditPost extends mixins(GroupMixin) {
RouteName = RouteName;
editablePost!: IPost;
editablePost: IPost = this.post;
usernameWithDomain = usernameWithDomain;

View File

@ -21,7 +21,7 @@
<actor-inline :actor="post.attributedTo" />
</router-link>
<span class="published has-text-grey-dark" v-if="!post.draft">
<b-icon icon="clock" size="is-small" />
<mdicon name="clock" size="is-small" />
{{ post.publishAt | formatDateTimeString }}
</span>
<span
@ -36,7 +36,7 @@
"
v-else
>
<b-icon icon="clock" size="is-small" />
<mdicon name="clock" size="is-small" />
{{
$t("Edited {relative_time} ago", {
relative_time: formatDistanceToNowStrict(
@ -52,7 +52,7 @@
v-if="post.visibility === PostVisibility.PRIVATE"
class="has-text-grey-dark"
>
<b-icon icon="lock" size="is-small" />
<mdicon name="lock" size="is-small" />
{{
$t("Accessible only to members", {
group: post.attributedTo.name,

View File

@ -47,14 +47,14 @@
<b-button class="button is-primary" slot="trigger">+</b-button>
<b-dropdown-item aria-role="listitem" @click="createFolderModal">
<b-icon icon="folder" />
<mdicon name="folder" />
{{ $t("New folder") }}
</b-dropdown-item>
<b-dropdown-item
aria-role="listitem"
@click="createLinkResourceModal = true"
>
<b-icon icon="link" />
<mdicon name="link" />
{{ $t("New link") }}
</b-dropdown-item>
<hr
@ -68,7 +68,7 @@
:key="resourceProvider.software"
@click="createResourceFromProvider(resourceProvider)"
>
<b-icon :icon="mapServiceTypeToIcon[resourceProvider.software]" />
<mdicon :name="mapServiceTypeToIcon[resourceProvider.software]" />
{{ createSentenceForType(resourceProvider.software) }}
</b-dropdown-item>
</b-dropdown>

View File

@ -11,7 +11,7 @@
<form @submit.prevent="submit()">
<b-field :label="$t('Key words')" label-for="search" expanded>
<b-input
icon="magnify"
name="magnify"
type="search"
id="search"
size="is-large"
@ -102,7 +102,7 @@
<b-loading :active.sync="$apollo.loading"></b-loading>
<b-tab-item>
<template slot="header">
<b-icon icon="calendar"></b-icon>
<mdicon name="calendar"></mdicon>
<span>
{{ $t("Events") }}
<b-tag rounded>{{ searchEvents.total }}</b-tag>
@ -137,7 +137,7 @@
</b-tab-item>
<b-tab-item v-if="!tag">
<template slot="header">
<b-icon icon="account-multiple"></b-icon>
<mdicon name="account-multiple"></mdicon>
<span>
{{ $t("Groups") }} <b-tag rounded>{{ searchGroups.total }}</b-tag>
</span>

View File

@ -195,7 +195,7 @@
password-reveal
id="account-deletion-password"
:aria-label="$t('Password')"
icon="lock"
name="lock"
:placeholder="$t('Password')"
/>
<template #message>

3279
js/stats.html Normal file

File diff suppressed because one or more lines are too long

View File

@ -1,6 +1,7 @@
import { defineConfig } from "vite";
import { createVuePlugin } from "vite-plugin-vue2";
import { VitePWA } from "vite-plugin-pwa";
import visualizer from "rollup-plugin-visualizer";
import dynamicImportVars from "@rollup/plugin-dynamic-import-vars";
const path = require("path");
@ -10,6 +11,8 @@ export default defineConfig({
// generate manifest.json in outDir
manifest: true,
minify: true,
sourcemap: true,
emptyOutDir: true,
rollupOptions: {
// overwrite default .html entry
input: "src/main.ts",
@ -17,10 +20,14 @@ export default defineConfig({
dynamicImportVars({
// options
}),
visualizer(),
],
},
outDir: path.resolve(__dirname, "../priv/static"),
},
optimizeDeps: {
exclude: ["date-fns"],
},
resolve: {
alias: {
"@": path.resolve(__dirname, "/src"),

View File

@ -27,6 +27,21 @@
core-js "2.6.0"
zen-observable "0.8.11"
"@antfu/install-pkg@^0.1.0":
version "0.1.0"
resolved "https://registry.yarnpkg.com/@antfu/install-pkg/-/install-pkg-0.1.0.tgz#8d8c61820cbc32e5c37d82d515485ad3ee9bd052"
integrity sha512-VaIJd3d1o7irZfK1U0nvBsHMyjkuyMP3HKYVV53z8DKyulkHKmjhhtccXO51WSPeeSHIeoJEoNOKavYpS7jkZw==
dependencies:
execa "^5.1.1"
find-up "^5.0.0"
"@antfu/utils@^0.3.0":
version "0.3.0"
resolved "https://registry.yarnpkg.com/@antfu/utils/-/utils-0.3.0.tgz#6306c43b52a883bd8e973e3ed8dd64248418bcc4"
integrity sha512-UU8TLr/EoXdg7OjMp0h9oDoIAVr+Z/oW9cpOxQQyrsz6Qzd2ms/1CdWx8fl2OQdFpxGmq5Vc4TwfLHId6nAZjA==
dependencies:
"@types/throttle-debounce" "^2.1.0"
"@apideck/better-ajv-errors@^0.2.4":
version "0.2.6"
resolved "https://registry.yarnpkg.com/@apideck/better-ajv-errors/-/better-ajv-errors-0.2.6.tgz#f12e5176a04c84caade85100fa33317a1457f372"
@ -971,6 +986,18 @@
resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.1.0.tgz#0eee6373e11418bfe0b5638f654df7a4ca6a3950"
integrity sha512-wYn6r8zVZyQJ6rQaALBEln5B1pzxb9shV5Ef97kTvn6yVGrqyXVnDqnU24MXnFubR+rZjBY9NWuxX3FB2sTsjg==
"@iconify/types@^1.0.10":
version "1.0.10"
resolved "https://registry.yarnpkg.com/@iconify/types/-/types-1.0.10.tgz#951122c19d3717e308a3ceac6eaafda27bd9993d"
integrity sha512-SN3z6einVeUckDQiE8p4POF7X4hk4/y2+a7a4ogJOCxX5XT6z1zXNN8dwS5O1vloXpc6mkHizRZm2qPnhK6NnQ==
"@iconify/utils@^1.0.14":
version "1.0.18"
resolved "https://registry.yarnpkg.com/@iconify/utils/-/utils-1.0.18.tgz#569737b78218034d19f3f067af9196293a71f145"
integrity sha512-uCfJ7FdTxDk1DLKsvynTsYX4LnkGIDw+LCpoY0mRdl+NrNPCjYZ8HHYs4xzmo7cryRe0ZT0yuF2f3oipPIHn8w==
dependencies:
"@iconify/types" "^1.0.10"
"@jest/types@^27.2.5":
version "27.2.5"
resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.2.5.tgz#420765c052605e75686982d24b061b4cbba22132"
@ -1011,10 +1038,10 @@
core-js "2.6.0"
graphql "14.0.2"
"@mdi/font@^6.1.95":
version "6.3.95"
resolved "https://registry.yarnpkg.com/@mdi/font/-/font-6.3.95.tgz#5e22e0626ec652028a19aa541a20b28280399dd9"
integrity sha512-bbvnF7rNX9aMn7PeqDCa8ZQTPxEqerZeXo/lQQxE84Ka/7UrFcqvOO3XXVLtrCCtyA6uIqiG4oYFRPVJqv247Q==
"@mdi/js@*", "@mdi/js@^6.3.95":
version "6.4.95"
resolved "https://registry.yarnpkg.com/@mdi/js/-/js-6.4.95.tgz#3ba2c04b702f1f7b71c41d5c86d2849868c866c8"
integrity sha512-b1/P//1D2KOzta8YRGyoSLGsAlWyUHfxzVBhV4e/ppnjM4DfBgay/vWz7Eg5Ee80JZ4zsQz8h54X+KOahtBk5Q==
"@nodelib/fs.scandir@2.1.5":
version "2.1.5"
@ -1105,10 +1132,10 @@
ejs "^2.6.1"
magic-string "^0.25.0"
"@tiptap/core@^2.0.0-beta.126", "@tiptap/core@^2.0.0-beta.41":
version "2.0.0-beta.126"
resolved "https://registry.yarnpkg.com/@tiptap/core/-/core-2.0.0-beta.126.tgz#6d7b1210cf8364acd9d0e09bcf4cc963f286506c"
integrity sha512-N0m74nkGaX8MIVd71iqng1ovGZsPnD2f4H4CeMS4ZnKCLXZdt+v4Hqh3pOtiVzOnrdG9u78MWK3zhAJtpN3EuA==
"@tiptap/core@^2.0.0-beta.127", "@tiptap/core@^2.0.0-beta.41":
version "2.0.0-beta.127"
resolved "https://registry.yarnpkg.com/@tiptap/core/-/core-2.0.0-beta.127.tgz#79678111bdb64265be555dafa6ac0092921d036f"
integrity sha512-vUjhvUUHhJcT9Rzg2duQuZ5idQ1AjWhmbAdaeuuethaVUKqOQmkUtEBMaOcZu9Bss5m81ISyuu7cVzn7TPBaGg==
dependencies:
"@types/prosemirror-commands" "^1.0.4"
"@types/prosemirror-keymap" "^1.0.4"
@ -1279,11 +1306,11 @@
integrity sha512-N3wMfSJkn+A5HbuLSpbn1Zp9CWWLXfMexpVdg4eUwTMOgF/kpVRaPGCkBonhHH3NfWtT7QbSipdWc7DKpBb8Jw==
"@tiptap/starter-kit@^2.0.0-beta.37":
version "2.0.0-beta.128"
resolved "https://registry.yarnpkg.com/@tiptap/starter-kit/-/starter-kit-2.0.0-beta.128.tgz#3a0edcace0965ec41e78e9c95ec659eab8277448"
integrity sha512-kj+WM30ZemeDy0uY/3/DtRaNDE9YQ8BLq2Qy4hcH6j9jufqUW4Fe2VC7QZ3xGHbKGhYu4tgXjAZKzvEserBGKg==
version "2.0.0-beta.129"
resolved "https://registry.yarnpkg.com/@tiptap/starter-kit/-/starter-kit-2.0.0-beta.129.tgz#71d2643511b6309b7577c06d11a21da628b7b940"
integrity sha512-JCM0Upscww5s0N0ZWk9z+2zbDlYebygnxT5kofoBZB5Qs4yFee/AfvuE4KHtbwL5bk3zPlHWNVePivCYhKwz6Q==
dependencies:
"@tiptap/core" "^2.0.0-beta.126"
"@tiptap/core" "^2.0.0-beta.127"
"@tiptap/extension-blockquote" "^2.0.0-beta.19"
"@tiptap/extension-bold" "^2.0.0-beta.19"
"@tiptap/extension-bullet-list" "^2.0.0-beta.18"
@ -1383,9 +1410,9 @@
integrity sha512-rr20mmx41OkWx4q5du2dv2sESR/6xH2tzScUQXwO8SiaQWa6PYTuan1nqBtA76FR9qkVfZY7nwQwZNC9StX/Ww==
"@types/node@*", "@types/node@^16.11.3":
version "16.11.3"
resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.3.tgz#fad0b069ec205b0e81429c805d306d2c12e26be1"
integrity sha512-aIYL9Eemcecs1y77XzFGiSc+FdfN58k4J23UEe6+hynf4Wd9g4DzQPwIKL080vSMuubFqy2hWwOzCtJdc6vFKw==
version "16.11.4"
resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.4.tgz#90771124822d6663814f7c1c9b45a6654d8fd964"
integrity sha512-TMgXmy0v2xWyuCSCJM6NCna2snndD8yvQF67J29ipdzMcsPa9u+o0tjF5+EQNdhcuZplYuouYqpc4zcd5I6amQ==
"@types/orderedmap@*":
version "1.0.0"
@ -1495,6 +1522,11 @@
dependencies:
"@types/node" "*"
"@types/throttle-debounce@^2.1.0":
version "2.1.0"
resolved "https://registry.yarnpkg.com/@types/throttle-debounce/-/throttle-debounce-2.1.0.tgz#1c3df624bfc4b62f992d3012b84c56d41eab3776"
integrity sha512-5eQEtSCoESnh2FsiLTxE121IiE60hnMqcb435fShf4bpLRjEu1Eoekht23y6zXS9Ts3l+Szu3TARnTsA0GkOkQ==
"@types/trusted-types@^2.0.2":
version "2.0.2"
resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.2.tgz#fc25ad9943bcac11cceb8168db4f275e0e72e756"
@ -1715,7 +1747,7 @@ ansi-styles@^3.2.1:
dependencies:
color-convert "^1.9.0"
ansi-styles@^4.1.0:
ansi-styles@^4.0.0, ansi-styles@^4.1.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
@ -2321,15 +2353,15 @@ browserslist@^3.2.6:
caniuse-lite "^1.0.30000844"
electron-to-chromium "^1.3.47"
browserslist@^4.16.6, browserslist@^4.17.3:
version "4.17.4"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.4.tgz#72e2508af2a403aec0a49847ef31bd823c57ead4"
integrity sha512-Zg7RpbZpIJRW3am9Lyckue7PLytvVxxhJj1CaJVlCWENsGEAOlnlt8X0ZxGRPp7Bt9o8tIRM5SEXy4BCPMJjLQ==
browserslist@^4.16.6, browserslist@^4.17.5:
version "4.17.5"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.5.tgz#c827bbe172a4c22b123f5e337533ceebadfdd559"
integrity sha512-I3ekeB92mmpctWBoLXe0d5wPS2cBuRvvW0JyyJHMrk9/HmP2ZjrTboNAZ8iuGqaEIlKguljbQY32OkOJIRrgoA==
dependencies:
caniuse-lite "^1.0.30001265"
electron-to-chromium "^1.3.867"
caniuse-lite "^1.0.30001271"
electron-to-chromium "^1.3.878"
escalade "^3.1.1"
node-releases "^2.0.0"
node-releases "^2.0.1"
picocolors "^1.0.0"
buefy@^0.9.0:
@ -2349,6 +2381,13 @@ builtin-modules@^3.1.0:
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887"
integrity sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==
builtins@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/builtins/-/builtins-4.0.0.tgz#a8345420de82068fdc4d6559d0456403a8fb1905"
integrity sha512-qC0E2Dxgou1IHhvJSLwGDSTvokbRovU5zZFuDY6oY8Y2lF3nGt5Ad8YZK7GMtqzY84Wu7pXTPeHQeHcXSXsRhw==
dependencies:
semver "^7.0.0"
bulma-divider@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/bulma-divider/-/bulma-divider-0.2.0.tgz#a9b4d9fe8b270c7cb7573023c575062bc62616f3"
@ -2380,7 +2419,7 @@ camelcase@^5.0.0:
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30001265:
caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30001271:
version "1.0.30001271"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001271.tgz#0dda0c9bcae2cf5407cd34cac304186616cc83e8"
integrity sha512-BBruZFWmt3HFdVPS8kceTBIguKxu4f99n5JNp06OlPD/luoAMIaIK5ieV5YjnBLH3Nysai9sxj9rpJj4ZisXOA==
@ -2435,6 +2474,15 @@ clean-css@^4.2.3:
dependencies:
source-map "~0.6.0"
cliui@^7.0.2:
version "7.0.4"
resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==
dependencies:
string-width "^4.2.0"
strip-ansi "^6.0.0"
wrap-ansi "^7.0.0"
color-convert@^1.9.0:
version "1.9.3"
resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
@ -2518,11 +2566,11 @@ convert-source-map@^1.7.0:
safe-buffer "~5.1.1"
core-js-compat@^3.16.0, core-js-compat@^3.16.2:
version "3.18.3"
resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.18.3.tgz#e0e7e87abc55efb547e7fa19169e45fa9df27a67"
integrity sha512-4zP6/y0a2RTHN5bRGT7PTq9lVt3WzvffTNjqnTKsXhkAYNDTkdCLOIfAdOLcQ/7TDdyRj3c+NeHe1NmF1eDScw==
version "3.19.0"
resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.19.0.tgz#b3b93f93c8721b3ed52b91f12f964cc410967f8b"
integrity sha512-R09rKZ56ccGBebjTLZHvzDxhz93YPT37gBm6qUhnwj3Kt7aCjjZWD1injyNbyeFHxNKfeZBSyds6O9n3MKq1sw==
dependencies:
browserslist "^4.17.3"
browserslist "^4.17.5"
semver "7.0.0"
core-js@2.6.0:
@ -2535,6 +2583,15 @@ core-js@^2.4.0, core-js@^2.5.0:
resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec"
integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==
cross-spawn@^7.0.3:
version "7.0.3"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
dependencies:
path-key "^3.1.0"
shebang-command "^2.0.0"
which "^2.0.1"
crypto-random-string@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5"
@ -2658,118 +2715,123 @@ ejs@^3.1.6:
dependencies:
jake "^10.6.1"
electron-to-chromium@^1.3.47, electron-to-chromium@^1.3.867:
version "1.3.877"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.877.tgz#956870eea7c9d8cf43cc54ea40687fee4dc0c12a"
integrity sha512-fT5mW5Giw5iyVukeHb2XvB4joBKvzHtl8Vs3QzE7APATpFMt/T7RWyUcIKSZzYkKQgpMbu+vDBTCHfQZvh8klA==
electron-to-chromium@^1.3.47, electron-to-chromium@^1.3.878:
version "1.3.878"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.878.tgz#baa9fb5c24b9b580f08fb245cbb52a22f8fc8fa8"
integrity sha512-O6yxWCN9ph2AdspAIszBnd9v8s11hQx8ub9w4UGApzmNRnoKhbulOWqbO8THEQec/aEHtvy+donHZMlh6l1rbA==
esbuild-android-arm64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.13.8.tgz#c20e875c3c98164b1ffba9b28637bdf96f5e9e7c"
integrity sha512-AilbChndywpk7CdKkNSZ9klxl+9MboLctXd9LwLo3b0dawmOF/i/t2U5d8LM6SbT1Xw36F8yngSUPrd8yPs2RA==
emoji-regex@^8.0.0:
version "8.0.0"
resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
esbuild-darwin-64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.13.8.tgz#f46e6b471ddbf62265234808a6a1aa91df18a417"
integrity sha512-b6sdiT84zV5LVaoF+UoMVGJzR/iE2vNUfUDfFQGrm4LBwM/PWXweKpuu6RD9mcyCq18cLxkP6w/LD/w9DtX3ng==
esbuild-android-arm64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.13.9.tgz#6cc4a0c623332c0830a311ddd8242b1f496ff940"
integrity sha512-Ty0hKldtjJVLHwUwbKR4GFPiXBo5iQ3aE1OLBar9lh3myaRkUGEb+Ypl74LEKa0+t/9lS3Ev1N5+5P2Sq6UvNQ==
esbuild-darwin-arm64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.8.tgz#a991157a6013facd4f2e14159b7da52626c90154"
integrity sha512-R8YuPiiJayuJJRUBG4H0VwkEKo6AvhJs2m7Tl0JaIer3u1FHHXwGhMxjJDmK+kXwTFPriSysPvcobXC/UrrZCQ==
esbuild-darwin-64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.13.9.tgz#df44297c2438032cda2b21548a82bb007e2105cc"
integrity sha512-Ay0/b98v0oYp3ApXNQ7QPbaSkCT9WjBU6h8bMB1SYrQ/PmHgwph91fb9V0pfOLKK1rYWypfrNbI0MyT2tWN+rQ==
esbuild-freebsd-64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.8.tgz#301601d2e443ad458960e359b402a17d9500be9d"
integrity sha512-zBn6urrn8FnKC+YSgDxdof9jhPCeU8kR/qaamlV4gI8R3KUaUK162WYM7UyFVAlj9N0MyD3AtB+hltzu4cysTw==
esbuild-darwin-arm64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.9.tgz#704ef404a6a38eda190d40ed354e7f2c1c839081"
integrity sha512-nJB8chaJdWathCe6EyIiMIqfyEzbuXPyNsPlL3bYRB1zFCF8feXT874D4IHbJ/w8B6BpY3sM1Clr/I/DK8E4ow==
esbuild-freebsd-arm64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.8.tgz#039a63acc12ec0892006c147ea221e55f9125a9f"
integrity sha512-pWW2slN7lGlkx0MOEBoUGwRX5UgSCLq3dy2c8RIOpiHtA87xAUpDBvZK10MykbT+aMfXc0NI2lu1X+6kI34xng==
esbuild-freebsd-64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.9.tgz#fbbf22c99e15f27d0f8a1a040d7961a86f0d3a4e"
integrity sha512-ktaBujf12XLkVXLGx7WjFcmh1tt34tm7gP4pHkhvbzbHrq+BbXwcl4EsW+5JT9VNKl7slOGf4Qnua/VW7ZcnIw==
esbuild-linux-32@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.13.8.tgz#c537b67d7e694b60bfa2786581412838c6ba0284"
integrity sha512-T0I0ueeKVO/Is0CAeSEOG9s2jeNNb8jrrMwG9QBIm3UU18MRB60ERgkS2uV3fZ1vP2F8i3Z2e3Zju4lg9dhVmw==
esbuild-freebsd-arm64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.9.tgz#809fff4c43653dbbf071ffce9f80a030b278098e"
integrity sha512-vVa5zps4dmwpXwv/amxVpIWvFJuUPWQkpV+PYtZUW9lqjXsQ3LBHP51Q1cXZZBIrqwszLsEyJPa5GuDOY15hzQ==
esbuild-linux-64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.13.8.tgz#0092fc8a064001a777bfa0e3b425bb8be8f96e6a"
integrity sha512-Bm8SYmFtvfDCIu9sjKppFXzRXn2BVpuCinU1ChTuMtdKI/7aPpXIrkqBNOgPTOQO9AylJJc1Zw6EvtKORhn64w==
esbuild-linux-32@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.13.9.tgz#f9fd3423481e51674e9817d5eea25689889a5f5a"
integrity sha512-HxoW9QNqhO8VW1l7aBiYQH4lobeHq85+blZ4nlZ7sg5CNhGRRwnMlV6S08VYKz6V0YKnHb5OqJxx2HZuTZ7tgQ==
esbuild-linux-arm64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.8.tgz#5cd3f2bb924212971482e8dbc25c4afd09b28110"
integrity sha512-X4pWZ+SL+FJ09chWFgRNO3F+YtvAQRcWh0uxKqZSWKiWodAB20flsW/OWFYLXBKiVCTeoGMvENZS/GeVac7+tQ==
esbuild-linux-64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.13.9.tgz#9d7f66866dae1abaff7cbc3749f2847d5fb72fd5"
integrity sha512-L+eAR8o1lAUr9g64RXnBLuWZjAItAOWSUpvkchpa6QvSnXFA/nG6PgGsOBEqhDXl9qYEpGI0ReDrFkf8ByapvQ==
esbuild-linux-arm@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.13.8.tgz#ad634f96bf2975536907aeb9fdb75a3194f4ddce"
integrity sha512-4/HfcC40LJ4GPyboHA+db0jpFarTB628D1ifU+/5bunIgY+t6mHkJWyxWxAAE8wl/ZIuRYB9RJFdYpu1AXGPdg==
esbuild-linux-arm64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.9.tgz#669202e71b9ced4d285bfd1d69de948e013ac28f"
integrity sha512-IjbhZpW5VQYK4nVI4dj/mLvH5oXAIf57OI8BYVkCqrdVXJwR8nVrSqux3zJSY+ElrkOK3DtG9iTPpmqvBXaU0g==
esbuild-linux-mips64le@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.8.tgz#57857edfebf9bf65766dc8be1637f2179c990572"
integrity sha512-o7e0D+sqHKT31v+mwFircJFjwSKVd2nbkHEn4l9xQ1hLR+Bv8rnt3HqlblY3+sBdlrOTGSwz0ReROlKUMJyldA==
esbuild-linux-arm@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.13.9.tgz#c3ceb56ec0e3dbd1a3a89dca6cb7fc0ca360bcc8"
integrity sha512-DT0S+ufCVXatPZHjkCaBgZSFIV8FzY4GEHz/BlkitTWzUvT1dIUXjPIRPnqBUVa+0AyS1bZSfHzv9hTT4LHz7A==
esbuild-linux-ppc64le@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.8.tgz#fdb82a059a5b86bb10fb42091b4ebcf488b9cd46"
integrity sha512-eZSQ0ERsWkukJp2px/UWJHVNuy0lMoz/HZcRWAbB6reoaBw7S9vMzYNUnflfL3XA6WDs+dZn3ekHE4Y2uWLGig==
esbuild-linux-mips64le@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.9.tgz#bf4bd389ee14b67c5c77669952f2de6b2cc8a003"
integrity sha512-ec9RgAM4r+fe1ZmG16qeMwEHdcIvqeW8tpnpkfSQu9T4487KtQF6lg3TQasTarrLLEe7Qpy+E+r4VwC8eeZySQ==
esbuild-netbsd-64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.8.tgz#d7879e7123d3b2c04754ece8bd061aa6866deeff"
integrity sha512-gZX4kP7gVvOrvX0ZwgHmbuHczQUwqYppxqtoyC7VNd80t5nBHOFXVhWo2Ad/Lms0E8b+wwgI/WjZFTCpUHOg9Q==
esbuild-linux-ppc64le@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.9.tgz#465b7bdc70577da606b3b5d463028292b6d834ad"
integrity sha512-7b2/wg8T1n/L1BgCWlMSez0aXfGkNjFuOqMBQdnTti3LRuUwzGJcrhRf/FdZGJ5/evML9mqu60vLRuXW1TdXCg==
esbuild-openbsd-64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.8.tgz#88b280b6cb0a3f6adb60abf27fc506c506a35cf0"
integrity sha512-afzza308X4WmcebexbTzAgfEWt9MUkdTvwIa8xOu4CM2qGbl2LanqEl8/LUs8jh6Gqw6WsicEK52GPrS9wvkcw==
esbuild-netbsd-64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.9.tgz#94f2dabe83520066cc1e1fae3ecff78695a8ebb1"
integrity sha512-PiZu3h4+Szj0iZPgvuD2Y0isOXnlNetmF6jMcOwW54BScwynW24/baE+z7PfDyNFgjV04Ga2THdcpbKBDhgWQw==
esbuild-sunos-64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.13.8.tgz#229ae7c7703196a58acd0f0291ad9bebda815d63"
integrity sha512-mWPZibmBbuMKD+LDN23LGcOZ2EawMYBONMXXHmbuxeT0XxCNwadbCVwUQ/2p5Dp5Kvf6mhrlIffcnWOiCBpiVw==
esbuild-openbsd-64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.9.tgz#b47f6a641ca37358aeedb2b7c4bb73dd0682c6d5"
integrity sha512-SJKN4Ez+ilY7mu+1gAdGQ9N6dktBfbEkiOAvw+hT7xHrNnTnrTGH0FT4qx9dazB9HX6D04L4PXmVOyynqi+oEQ==
esbuild-windows-32@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.13.8.tgz#892d093e32a21c0c9135e5a0ffdc380aeb70e763"
integrity sha512-QsZ1HnWIcnIEApETZWw8HlOhDSWqdZX2SylU7IzGxOYyVcX7QI06ety/aDcn437mwyO7Ph4RrbhB+2ntM8kX8A==
esbuild-sunos-64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.13.9.tgz#b0df4a316b7c98eb490f4bd0db381cf2c391ae73"
integrity sha512-9N0RjZ7cElE8ifrS0nBrLQgBMQNPiIIKO2GzLXy7Ms8AM3KjfLiV2G2+9O0B9paXjRAHchIwazTeOyeWb1vyWA==
esbuild-windows-64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.13.8.tgz#7defd8d79ae3bb7e6f53b65a7190be7daf901686"
integrity sha512-76Fb57B9eE/JmJi1QmUW0tRLQZfGo0it+JeYoCDTSlbTn7LV44ecOHIMJSSgZADUtRMWT9z0Kz186bnaB3amSg==
esbuild-windows-32@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.13.9.tgz#e229563e134e634f9748cc8315c691e2013259ef"
integrity sha512-awxWs1kns+RfjhqBbTbdlePjqZrAE2XMaAQJNg9dtu+C7ghC3QKsqXbu0C26OuF5YeAdJcq9q+IdG6WPLjvj9w==
esbuild-windows-arm64@0.13.8:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.8.tgz#e59ae004496fd8a5ab67bfc7945a2e47480d6fb9"
integrity sha512-HW6Mtq5eTudllxY2YgT62MrVcn7oq2o8TAoAvDUhyiEmRmDY8tPwAhb1vxw5/cdkbukM3KdMYtksnUhF/ekWeg==
esbuild-windows-64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.13.9.tgz#103ad3f13e1a0e44934b91f358e81dd201b86b34"
integrity sha512-VmA9GQMCzOr8rFfD72Dum1+AWhJui7ZO6sYwp6rBHYu4vLmWITTSUsd/zgXXmZuHBPkkvxLJLF8XsKFCRKflJA==
esbuild-windows-arm64@0.13.9:
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.9.tgz#545bb58848008258b339b1b00fcfe92c85bc7251"
integrity sha512-P/jPY2JwmTpgEPh9BkXpCe690tcDSSo0K9BHTniSeEAEz26kPpqldVa4XDm0R+hNnFA7ecEgNskr4QAxE1ry0w==
esbuild@^0.13.2:
version "0.13.8"
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.13.8.tgz#bd7cc51b881ab067789f88e17baca74724c1ec4f"
integrity sha512-A4af7G7YZLfG5OnARJRMtlpEsCkq/zHZQXewgPA864l9D6VjjbH1SuFYK/OSV6BtHwDGkdwyRrX0qQFLnMfUcw==
version "0.13.9"
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.13.9.tgz#aafc4b3375ac443ae7b223c26c4e58d10d2d535b"
integrity sha512-8bYcckmisXjGvBMeylp1PRtu21uOoCDFAgXGGF2BR241zYQDN6ZLNvcmQlnQ7olG0p6PRWmJI8WVH3ca8viPuw==
optionalDependencies:
esbuild-android-arm64 "0.13.8"
esbuild-darwin-64 "0.13.8"
esbuild-darwin-arm64 "0.13.8"
esbuild-freebsd-64 "0.13.8"
esbuild-freebsd-arm64 "0.13.8"
esbuild-linux-32 "0.13.8"
esbuild-linux-64 "0.13.8"
esbuild-linux-arm "0.13.8"
esbuild-linux-arm64 "0.13.8"
esbuild-linux-mips64le "0.13.8"
esbuild-linux-ppc64le "0.13.8"
esbuild-netbsd-64 "0.13.8"
esbuild-openbsd-64 "0.13.8"
esbuild-sunos-64 "0.13.8"
esbuild-windows-32 "0.13.8"
esbuild-windows-64 "0.13.8"
esbuild-windows-arm64 "0.13.8"
esbuild-android-arm64 "0.13.9"
esbuild-darwin-64 "0.13.9"
esbuild-darwin-arm64 "0.13.9"
esbuild-freebsd-64 "0.13.9"
esbuild-freebsd-arm64 "0.13.9"
esbuild-linux-32 "0.13.9"
esbuild-linux-64 "0.13.9"
esbuild-linux-arm "0.13.9"
esbuild-linux-arm64 "0.13.9"
esbuild-linux-mips64le "0.13.9"
esbuild-linux-ppc64le "0.13.9"
esbuild-netbsd-64 "0.13.9"
esbuild-openbsd-64 "0.13.9"
esbuild-sunos-64 "0.13.9"
esbuild-windows-32 "0.13.9"
esbuild-windows-64 "0.13.9"
esbuild-windows-arm64 "0.13.9"
escalade@^3.1.1:
version "3.1.1"
@ -2796,6 +2858,21 @@ esutils@^2.0.2:
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
execa@^5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd"
integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==
dependencies:
cross-spawn "^7.0.3"
get-stream "^6.0.0"
human-signals "^2.1.0"
is-stream "^2.0.0"
merge-stream "^2.0.0"
npm-run-path "^4.0.1"
onetime "^5.1.2"
signal-exit "^3.0.3"
strip-final-newline "^2.0.0"
extend-shallow@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
@ -2857,6 +2934,14 @@ fill-range@^7.0.1:
dependencies:
to-regex-range "^5.0.1"
find-up@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"
integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==
dependencies:
locate-path "^6.0.0"
path-exists "^4.0.0"
flow-static-land@0.2.7:
version "0.2.7"
resolved "https://registry.yarnpkg.com/flow-static-land/-/flow-static-land-0.2.7.tgz#937f9dcb2780889a609155e5d1a55a993bc2ffb3"
@ -2911,6 +2996,11 @@ gensync@^1.0.0-beta.2:
resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
get-caller-file@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
get-intrinsic@^1.0.2:
version "1.1.1"
resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6"
@ -2925,6 +3015,11 @@ get-own-enumerable-property-symbols@^3.0.0:
resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664"
integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==
get-stream@^6.0.0:
version "6.0.1"
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
glob-parent@^5.1.2, glob-parent@~5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
@ -3059,6 +3154,11 @@ html-tags@^2.0.0:
resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-2.0.0.tgz#10b30a386085f43cede353cc8fa7cb0deeea668b"
integrity sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=
human-signals@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
idb@^6.0.0:
version "6.1.5"
resolved "https://registry.yarnpkg.com/idb/-/idb-6.1.5.tgz#dbc53e7adf1ac7c59f9b2bf56e00b4ea4fce8c7b"
@ -3069,6 +3169,13 @@ ignore@^5.1.4:
resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57"
integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==
import-meta-resolve@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/import-meta-resolve/-/import-meta-resolve-1.1.1.tgz#244fd542fd1fae73550d4f8b3cde3bba1d7b2b18"
integrity sha512-JiTuIvVyPaUg11eTrNDx5bgQ/yMKMZffc7YSjvQeSMXy58DO2SQ8BtAf3xteZvmzvjYh14wnqNjL8XVeDy2o9A==
dependencies:
builtins "^4.0.0"
inflight@^1.0.4:
version "1.0.6"
resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
@ -3118,6 +3225,11 @@ is-core-module@^2.2.0:
dependencies:
has "^1.0.3"
is-docker@^2.0.0:
version "2.2.1"
resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa"
integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==
is-extendable@^0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
@ -3128,6 +3240,11 @@ is-extglob@^2.1.1:
resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
is-fullwidth-code-point@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
is-glob@^4.0.1, is-glob@~4.0.1:
version "4.0.3"
resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
@ -3165,6 +3282,18 @@ is-whitespace@^0.3.0:
resolved "https://registry.yarnpkg.com/is-whitespace/-/is-whitespace-0.3.0.tgz#1639ecb1be036aec69a54cbb401cfbed7114ab7f"
integrity sha1-Fjnssb4DauxppUy7QBz77XEUq38=
is-wsl@^2.1.1:
version "2.2.0"
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271"
integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==
dependencies:
is-docker "^2.0.0"
isexe@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
iterall@^1.2.2:
version "1.3.0"
resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea"
@ -3277,6 +3406,11 @@ kind-of@^3.0.2:
dependencies:
is-buffer "^1.1.5"
kolorist@^1.5.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/kolorist/-/kolorist-1.5.0.tgz#a06f7dd11d1b5fdb743d79c8acd4e1ecbcbd89b3"
integrity sha512-pPobydIHK884YBtkS/tWSZXpSAEpcMbilyun3KL37ot935qL2HNKm/tI45i/Rd+MxdIWEhm7/LmUQzWZYK+Qhg==
leaflet.locatecontrol@^0.74.0:
version "0.74.0"
resolved "https://registry.yarnpkg.com/leaflet.locatecontrol/-/leaflet.locatecontrol-0.74.0.tgz#a62153a0de5e05ef7efd73df7247a23060330fd7"
@ -3297,6 +3431,20 @@ linkifyjs@^3.0.3:
resolved "https://registry.yarnpkg.com/linkifyjs/-/linkifyjs-3.0.3.tgz#51ea2160b4c60c2c87c27757a1e9eacd422c6076"
integrity sha512-ba5opS5wRHSbDC8VaiDdN14nPGm6LqyRsIPQZGG4qXV4scFdrPneT/uoZOaq9QAPBf6W9I9D/6tNSzWH//815Q==
local-pkg@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.4.0.tgz#e6221171813d5a0812dd84fa80ffb1c8fcc00531"
integrity sha512-2XBWjO/v63JeR1HPzLJxdTVRQDB84Av2p2KtBA5ahvpyLUPubcAU6iXlAJrONcY7aSqgJhXxElAnKtnYsRolPQ==
dependencies:
mlly "^0.2.2"
locate-path@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286"
integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==
dependencies:
p-locate "^5.0.0"
lodash.debounce@^4.0.8:
version "4.0.8"
resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
@ -3339,6 +3487,13 @@ lru-cache@^4.1.2, lru-cache@^4.1.5:
pseudomap "^1.0.2"
yallist "^2.1.2"
lru-cache@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
dependencies:
yallist "^4.0.0"
magic-string@^0.25.0, magic-string@^0.25.7:
version "0.25.7"
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051"
@ -3346,6 +3501,13 @@ magic-string@^0.25.0, magic-string@^0.25.7:
dependencies:
sourcemap-codec "^1.4.4"
mdi-vue@^3.0.8:
version "3.0.8"
resolved "https://registry.yarnpkg.com/mdi-vue/-/mdi-vue-3.0.8.tgz#443477938a62c43deb21c4ac21c9b98f47fd6f74"
integrity sha512-HiJGLYflAAQnEanMzsAbUF4sTEc4rOwQ70Ev8Dn7Qgt3TTb1RQhjliYx2VF8oteoUkcD8P92s2JAUNey1ams7w==
dependencies:
"@mdi/js" "*"
merge-source-map@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646"
@ -3371,6 +3533,11 @@ micromatch@^4.0.4:
braces "^3.0.1"
picomatch "^2.2.3"
mimic-fn@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
minimatch@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
@ -3383,6 +3550,13 @@ minimist@^1.2.5:
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
mlly@^0.2.2:
version "0.2.10"
resolved "https://registry.yarnpkg.com/mlly/-/mlly-0.2.10.tgz#645902c9761dc6b5ded174b8e717147fe52e4893"
integrity sha512-xfyW6c2QBGArtctzNnTV5leOKX8nOMz2simeubtXofdsdSJFSNw+Ncvrs8kxcN3pBrQLXuYBHNFV6NgZ5Ryf4A==
dependencies:
import-meta-resolve "^1.1.1"
mock-apollo-client@^1.1.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/mock-apollo-client/-/mock-apollo-client-1.2.0.tgz#72543df0d74577d29be1b34cecba8898c7e71451"
@ -3398,7 +3572,7 @@ ms@2.1.2:
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
nanoid@^3.1.30:
nanoid@^3.1.22, nanoid@^3.1.30:
version "3.1.30"
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.30.tgz#63f93cc548d2a113dc5dfbc63bfa09e2b9b64362"
integrity sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==
@ -3416,7 +3590,7 @@ no-case@^3.0.4:
lower-case "^2.0.2"
tslib "^2.0.3"
node-releases@^2.0.0:
node-releases@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5"
integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==
@ -3433,6 +3607,13 @@ normalize-path@^3.0.0, normalize-path@~3.0.0:
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
npm-run-path@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
dependencies:
path-key "^3.0.0"
object-assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
@ -3460,6 +3641,21 @@ once@^1.3.0:
dependencies:
wrappy "1"
onetime@^5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
dependencies:
mimic-fn "^2.1.0"
open@^7.4.2:
version "7.4.2"
resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321"
integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==
dependencies:
is-docker "^2.0.0"
is-wsl "^2.1.1"
optimism@^0.16.1:
version "0.16.1"
resolved "https://registry.yarnpkg.com/optimism/-/optimism-0.16.1.tgz#7c8efc1f3179f18307b887e18c15c5b7133f6e7d"
@ -3478,6 +3674,20 @@ p-debounce@^4.0.0:
resolved "https://registry.yarnpkg.com/p-debounce/-/p-debounce-4.0.0.tgz#348e3f44489baa9435cc7d807f17b3bb2fb16b24"
integrity sha512-4Ispi9I9qYGO4lueiLDhe4q4iK5ERK8reLsuzH6BPaXn53EGaua8H66PXIFGrW897hwjXp+pVLrm/DLxN0RF0A==
p-limit@^3.0.2:
version "3.1.0"
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
dependencies:
yocto-queue "^0.1.0"
p-locate@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834"
integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==
dependencies:
p-limit "^3.0.2"
param-case@^3.0.3:
version "3.0.4"
resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5"
@ -3494,11 +3704,21 @@ pascal-case@^3.1.2:
no-case "^3.0.4"
tslib "^2.0.3"
path-exists@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
path-is-absolute@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
path-key@^3.0.0, path-key@^3.1.0:
version "3.1.1"
resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
path-parse@^1.0.6:
version "1.0.7"
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
@ -3653,9 +3873,9 @@ prosemirror-keymap@^1.0.0, prosemirror-keymap@^1.1.3:
w3c-keyname "^2.2.0"
prosemirror-model@^1.0.0, prosemirror-model@^1.14.3:
version "1.14.3"
resolved "https://registry.yarnpkg.com/prosemirror-model/-/prosemirror-model-1.14.3.tgz#a9c250d3c4023ddf10ecb41a0a7a130e9741d37e"
integrity sha512-yzZlBaSxfUPIIP6U5Edh5zKxJPZ5f7bwZRhiCuH3UYkWhj+P3d8swHsbuAMOu/iDatDc5J/Qs5Mb3++mZf+CvQ==
version "1.15.0"
resolved "https://registry.yarnpkg.com/prosemirror-model/-/prosemirror-model-1.15.0.tgz#23bc09098daa7c309dba90a76a1b989ce6f61405"
integrity sha512-hQJv7SnIhlAy9ga3lhPPgaufhvCbQB9tHwscJ9E1H1pPHmN8w5V/lURueoYv9Kc3/bpNWoyHa8r3g//m7N0ChQ==
dependencies:
orderedmap "^1.1.0"
@ -3843,6 +4063,11 @@ relateurl@^0.2.7:
resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=
require-directory@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I=
require-from-string@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
@ -3876,10 +4101,20 @@ rollup-plugin-terser@^7.0.0:
serialize-javascript "^4.0.0"
terser "^5.0.0"
rollup-plugin-visualizer@^5.5.2:
version "5.5.2"
resolved "https://registry.yarnpkg.com/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.5.2.tgz#ae2130ee5ae4a2d901e764e492b71357cb95eed7"
integrity sha512-sh+P9KhuWTzeStyRA5yNZpoEFGuj5Ph34JLMa9+muhU8CneFf9L0XE4fmAwAojJLWp//uLUEyytBPSCdZEg5AA==
dependencies:
nanoid "^3.1.22"
open "^7.4.2"
source-map "^0.7.3"
yargs "^16.2.0"
rollup@^2.43.1, rollup@^2.57.0, rollup@^2.58.0:
version "2.58.0"
resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.58.0.tgz#a643983365e7bf7f5b7c62a8331b983b7c4c67fb"
integrity sha512-NOXpusKnaRpbS7ZVSzcEXqxcLDOagN6iFS8p45RkoiMqPHDLwJm758UF05KlMoCRbLBTZsPOIa887gZJ1AiXvw==
version "2.58.1"
resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.58.1.tgz#b9a0f9e601129d9a4686b7ec3159095f7a73825f"
integrity sha512-dNhchlN/3k3EKtyPXWdEEI7wiPQ07WInzsklWFm/6dUZspF63nj0O1A9PTsMxbmtQziwnOOl5oR+BgWNjTEYLA==
optionalDependencies:
fsevents "~2.3.2"
@ -3934,6 +4169,13 @@ semver@^6.1.1, semver@^6.1.2, semver@^6.3.0:
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
semver@^7.0.0:
version "7.3.5"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
dependencies:
lru-cache "^6.0.0"
serialize-javascript@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa"
@ -3941,11 +4183,28 @@ serialize-javascript@^4.0.0:
dependencies:
randombytes "^2.1.0"
shebang-command@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
dependencies:
shebang-regex "^3.0.0"
shebang-regex@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
sigmund@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590"
integrity sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=
signal-exit@^3.0.3:
version "3.0.5"
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz#9e3e8cc0c75a99472b44321033a7702e7738252f"
integrity sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==
slash@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
@ -4017,6 +4276,15 @@ sourcemap-codec@^1.4.4:
resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
string-width@^4.1.0, string-width@^4.2.0:
version "4.2.3"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
dependencies:
emoji-regex "^8.0.0"
is-fullwidth-code-point "^3.0.0"
strip-ansi "^6.0.1"
stringify-object@^3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629"
@ -4033,11 +4301,23 @@ strip-ansi@^3.0.0:
dependencies:
ansi-regex "^2.0.0"
strip-ansi@^6.0.0, strip-ansi@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
dependencies:
ansi-regex "^5.0.1"
strip-comments@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/strip-comments/-/strip-comments-2.0.1.tgz#4ad11c3fbcac177a67a40ac224ca339ca1c1ba9b"
integrity sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==
strip-final-newline@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
supports-color@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
@ -4210,6 +4490,26 @@ universalify@^2.0.0:
resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717"
integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==
unplugin-icons@^0.12.16:
version "0.12.16"
resolved "https://registry.yarnpkg.com/unplugin-icons/-/unplugin-icons-0.12.16.tgz#ad52886b77134173b4864c70175add471d603a55"
integrity sha512-eGxlLrf/aExIgfRTqv9ALFZSyurYUxPHYb7lDFBc1KfhVhnvq7TdLE3d5AUJgiNh7QxcO0ezsBQ8mQNlCH/+Og==
dependencies:
"@antfu/install-pkg" "^0.1.0"
"@antfu/utils" "^0.3.0"
"@iconify/utils" "^1.0.14"
debug "^4.3.2"
kolorist "^1.5.0"
local-pkg "^0.4.0"
unplugin "^0.2.16"
unplugin@^0.2.16:
version "0.2.16"
resolved "https://registry.yarnpkg.com/unplugin/-/unplugin-0.2.16.tgz#6f34e9f5068ca3ec92a36b016f47b5ad8bb875ca"
integrity sha512-KkXatHba0baJszSHW+2e8EQU/5Bz7rYwzYXu8wUeq97tE6K3wvub+7OWSuRv04LttvzNLsJ2jXEyR35gofv74Q==
dependencies:
webpack-virtual-modules "^0.4.3"
upath@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894"
@ -4387,6 +4687,11 @@ webidl-conversions@^4.0.2:
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==
webpack-virtual-modules@^0.4.3:
version "0.4.3"
resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.4.3.tgz#cd597c6d51d5a5ecb473eea1983a58fa8a17ded9"
integrity sha512-5NUqC2JquIL2pBAAo/VfBP6KuGkHIZQXW/lNKupLPfhViwh8wNsu0BObtl09yuKZszeEUfbXz8xhrHvSG16Nqw==
whatwg-url@^7.0.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06"
@ -4396,6 +4701,13 @@ whatwg-url@^7.0.0:
tr46 "^1.0.1"
webidl-conversions "^4.0.2"
which@^2.0.1:
version "2.0.2"
resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
dependencies:
isexe "^2.0.0"
workbox-background-sync@6.3.0:
version "6.3.0"
resolved "https://registry.yarnpkg.com/workbox-background-sync/-/workbox-background-sync-6.3.0.tgz#d661296b4662e40a7589f0308affc2c9096da001"
@ -4555,16 +4867,58 @@ workbox-window@6.3.0, workbox-window@^6.3.0:
"@types/trusted-types" "^2.0.2"
workbox-core "6.3.0"
wrap-ansi@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
dependencies:
ansi-styles "^4.0.0"
string-width "^4.1.0"
strip-ansi "^6.0.0"
wrappy@1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
y18n@^5.0.5:
version "5.0.8"
resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
yallist@^2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
yallist@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
yargs-parser@^20.2.2:
version "20.2.9"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
yargs@^16.2.0:
version "16.2.0"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"
integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==
dependencies:
cliui "^7.0.2"
escalade "^3.1.1"
get-caller-file "^2.0.5"
require-directory "^2.1.1"
string-width "^4.2.0"
y18n "^5.0.5"
yargs-parser "^20.2.2"
yocto-queue@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
zen-observable-ts@^0.8.12:
version "0.8.21"
resolved "https://registry.yarnpkg.com/zen-observable-ts/-/zen-observable-ts-0.8.21.tgz#85d0031fbbde1eba3cd07d3ba90da241215f421d"

View File

@ -49,7 +49,7 @@ defmodule Mobilizon.Web.Endpoint do
at: "/",
from: {:mobilizon, "priv/static"},
gzip: false,
only: ~w(index.html manifest.json sw.js registerSW.js assets favicon.ico robots.txt),
only: ~w(index.html img manifest.json sw.js registerSW.js assets favicon.ico robots.txt),
only_matching: ["precache-manifest"]
)

View File

@ -60,7 +60,7 @@ defmodule Mobilizon.Web.Plugs.HTTPSecurityPlug do
@spec csp_string(Keyword.t()) :: String.t()
defp csp_string(options) do
scheme = Keyword.get(options, :scheme, Config.get([Pleroma.Web.Endpoint, :url])[:scheme])
scheme = Keyword.get(options, :scheme, Config.get([Mobilizon.Web.Endpoint, :url])[:scheme])
static_url = Mobilizon.Web.Endpoint.static_url()
websocket_url = Mobilizon.Web.Endpoint.websocket_url()

View File

@ -226,8 +226,7 @@ defmodule Mobilizon.Mixfile do
{:mox, "~> 1.0", only: :test},
{:junit_formatter, "~> 3.1", only: [:test]},
{:sobelow, "~> 0.8", only: [:dev, :test]},
{:doctor, "~> 0.18.0", only: :dev},
{:esbuild, "~> 0.2", runtime: Mix.env() == :dev}
{:doctor, "~> 0.18.0", only: :dev}
] ++ oauth_deps()
end

View File

@ -37,7 +37,6 @@
"elixir_make": {:hex, :elixir_make, "0.6.3", "bc07d53221216838d79e03a8019d0839786703129599e9619f4ab74c8c096eac", [:mix], [], "hexpm", "f5cbd651c5678bcaabdbb7857658ee106b12509cd976c2c2fca99688e1daf716"},
"erlex": {:hex, :erlex, "0.2.6", "c7987d15e899c7a2f34f5420d2a2ea0d659682c06ac607572df55a43753aa12e", [:mix], [], "hexpm", "2ed2e25711feb44d52b17d2780eabf998452f6efda104877a3881c2f8c0c0c75"},
"erlport": {:hex, :erlport, "0.10.1", "c96ffa51bbcab0298232fcdfe8c3e110f1598011de71ae6b9082b80c9e2e476a", [:rebar3], [], "hexpm", "34931e8cb62a131d1bc8a2bd04d4007c73c03e4f10e22ee4a218e7172227a918"},
"esbuild": {:hex, :esbuild, "0.3.3", "1af589106b33bf125f6380459a55847d2bcc9d60bc4605170de8548fb18060b3", [:mix], [{:castore, ">= 0.0.0", [hex: :castore, repo: "hexpm", optional: false]}], "hexpm", "6f860ca9298373a55c58db24f6d5c62c5f7ca1e9d2b8e1602e5f7abc5d6b07bf"},
"eternal": {:hex, :eternal, "1.2.2", "d1641c86368de99375b98d183042dd6c2b234262b8d08dfd72b9eeaafc2a1abd", [:mix], [], "hexpm", "2c9fe32b9c3726703ba5e1d43a1d255a4f3f2d8f8f9bc19f094c7cb1a7a9e782"},
"ex_cldr": {:hex, :ex_cldr, "2.23.2", "76c51b722cefdcd1a13eb5e7c7f4da5b9acfd64ff054424a977ff6e2d6a78981", [:mix], [{:castore, "~> 0.1", [hex: :castore, repo: "hexpm", optional: true]}, {:certifi, "~> 2.5", [hex: :certifi, repo: "hexpm", optional: true]}, {:cldr_utils, "~> 2.15", [hex: :cldr_utils, repo: "hexpm", optional: false]}, {:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:gettext, "~> 0.13", [hex: :gettext, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:nimble_parsec, "~> 0.5 or ~> 1.0", [hex: :nimble_parsec, repo: "hexpm", optional: true]}, {:plug, "~> 1.9", [hex: :plug, repo: "hexpm", optional: true]}], "hexpm", "d9ce03c8d3fdc7ab751bdb2be742b6972f94adc856d51dfe5bb06a51ac96b8f4"},
"ex_cldr_calendars": {:hex, :ex_cldr_calendars, "1.16.0", "7f076c85b63b03cf2c5719b75a9c1ca1b177d6d164a94a1eaf4bfb1a5dca152a", [:mix], [{:calendar_interval, "~> 0.2", [hex: :calendar_interval, repo: "hexpm", optional: true]}, {:earmark, "~> 1.0", [hex: :earmark, repo: "hexpm", optional: false]}, {:ex_cldr, "~> 2.23", [hex: :ex_cldr, repo: "hexpm", optional: false]}, {:ex_cldr_units, "~> 3.7", [hex: :ex_cldr_units, repo: "hexpm", optional: true]}, {:ex_doc, "~> 0.21", [hex: :ex_doc, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "483d91a0fb4909efe211ae59a3620a28bf1a72d64dbf922ae940115e64f6138a"},