Compare commits

..
35 Commits
Author SHA1 Message Date
bachir 6c4cac163f champs recherche moche 2026-09-15 11:45:06 +02:00
bachir b78b71691e capsule modale click (not over) 2026-09-15 11:25:50 +02:00
bachir f0ac0ded56 liens transversaux: wysiwyg linkit + wysiwyg style + css 2026-09-15 10:43:13 +02:00
bachir 0b28f5518c liens transversaux: wysiwyg linkit + wysiwyg style + css 2026-09-15 10:42:52 +02:00
bachir 41b2abd408 capsules plus a la ligne, site name MATHALLO wysiwyg style 2026-09-15 10:27:25 +02:00
bachir 0d84a8fc22 node page title 2026-09-15 09:48:39 +02:00
bachir aa322dded3 reperers/en pratique backcard opacity 2026-09-15 09:44:05 +02:00
bachir 2e4fa3d2e3 reperers/en pratique backcard opacity 2026-09-15 09:41:25 +02:00
bachir 368a2b204a reperers/en pratique backcard opacity 2026-09-15 09:41:05 +02:00
bachir c210e3e677 footer block IUF replace humanum 2026-09-14 20:22:36 +02:00
bachir 8d1524f571 footer block humanum fix 2026-09-14 10:23:09 +02:00
bachir bc857d0c85 footer block humanum 2026-09-14 10:05:14 +02:00
bachir 7cc3a4a1df new block type logo-link 2026-09-14 09:53:26 +02:00
bachir dd5c330e98 better home presentation 2026-09-14 09:41:06 +02:00
bachir 3b1013bc8f forgot to npm run build 2026-07-10 18:20:04 +02:00
bachir e2f4c717e6 better capsule (aka footnotes) positionning 2026-07-08 14:47:55 +02:00
bachir 015e3654fe better capsule (aka footnotes) 2026-07-07 16:31:47 +02:00
bachir 13679a38b9 hierarchie ressources 2026-07-07 15:20:56 +02:00
bachir 77fbbdff9a bulle conceptuelle 2026-07-07 12:02:08 +02:00
bachir f6aaf54e42 reperes & en pratique onglets 2026-07-06 16:24:10 +02:00
bachir db25fcf531 better home pres paragraph with formes 2026-07-06 16:08:18 +02:00
bachir 2bc69be75f capsules 2026-06-23 16:04:57 +02:00
bachir 223c5be097 ressources 2026-06-08 13:38:04 +02:00
bachir 67b655a166 corrections 2026-06-08 13:28:11 +02:00
bachir 7f852a2894 link fields target attributes 2026-05-18 16:57:15 +02:00
bachir 335127647c improved next chapitre | partie blocks positioning 2026-02-21 10:56:46 +01:00
bachir 367e2353ce bg formes with drop-shadow filter and white border (like paper) 2026-02-20 22:37:44 +01:00
bachir 207f12052e refactoring 2026-02-20 11:52:03 +01:00
bachir c8c5901a6a refresh formes pos on window resize 2026-02-20 11:43:50 +01:00
bachir 300f6c5b70 fixed config ignore for shield 2026-02-20 11:13:06 +01:00
bachir 105aa05f2e better parallax-bg 2026-02-20 11:09:55 +01:00
bachir 9e5b15d9de prev next chapitre block drupal settings 2026-02-20 11:05:04 +01:00
bachir e06e6dd3e0 restored config shield.settings.yml 2026-02-20 11:04:22 +01:00
bachir 82c996e987 config shield.settings.yml 2026-02-20 10:38:41 +01:00
bachir 773e0ca105 fixed grid_0.svg 2026-02-20 10:35:48 +01:00
79 changed files with 4018 additions and 375 deletions
+1 -1
View File
@@ -30,7 +30,7 @@
# npm
node_modules/
*.patch
#*.patch
/.csslintrc
/.eslintrc.json
/.ht.router.php
+6
View File
@@ -22,10 +22,13 @@
"drupal/core-project-message": "^10.4",
"drupal/core-recommended": "^10.4",
"drupal/entity_block": "^2.0",
"drupal/footnotes": "^4.0@RC",
"drupal/linked_field": "^1.7",
"drupal/page_manager": "^4.0@RC",
"drupal/paragraphs": "^1.20",
"drupal/redirect": "^1.12",
"drupal/shield": "^1.8",
"drupal/structure_sync": "^2.0",
"drupal/upgrade_status": "^4.3",
"wikimedia/composer-merge-plugin": "^2.1"
},
@@ -120,6 +123,9 @@
},
"drupal/core": {
"CKEDITOR for summary https://www.drupal.org/project/drupal/issues/2671162":"https://www.drupal.org/files/issues/2025-08-23/2671162-158.patch"
},
"drupal/footnotes": {
"leave paragraphs tags in place":"./patches/footnotes-leave-paragraphs.patch"
}
}
}
Generated
+213 -1
View File
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "262ce40a93ec66896b34a5e1196ff80b",
"content-hash": "70053163e5a41445ee80f289c51828ff",
"packages": [
{
"name": "asm89/stack-cors",
@@ -4343,6 +4343,84 @@
"issues": "https://www.drupal.org/project/issues/filter_perms?categories=All"
}
},
{
"name": "drupal/footnotes",
"version": "4.0.0-rc2",
"source": {
"type": "git",
"url": "https://git.drupalcode.org/project/footnotes.git",
"reference": "4.0.0-rc2"
},
"dist": {
"type": "zip",
"url": "https://ftp.drupal.org/files/projects/footnotes-4.0.0-rc2.zip",
"reference": "4.0.0-rc2",
"shasum": "7cffeea7f3bc05f3a65ced67231cbb157660b6e0"
},
"require": {
"drupal/core": ">=10.0"
},
"require-dev": {
"drupal/metatag": "^2.0",
"drupal/search_api": "*"
},
"type": "drupal-module",
"extra": {
"drupal": {
"version": "4.0.0-rc2",
"datestamp": "1779606276",
"security-coverage": {
"status": "not-covered",
"message": "RC releases are not covered by Drupal security advisories."
}
}
},
"notification-url": "https://packages.drupal.org/8/downloads",
"license": [
"GPL-2.0+"
],
"authors": [
{
"name": "Andrii Aleksandrov (id.aleks)",
"homepage": "https://www.drupal.org/u/idaleks",
"role": "Maintainer"
},
{
"name": "Oleksandr Dekhteruk (pifagor)",
"homepage": "https://www.drupal.org/u/pifagor",
"role": "Maintainer"
},
{
"name": "Fernando Conceição (yukare)",
"homepage": "https://www.drupal.org/u/yukare",
"role": "Maintainer"
},
{
"name": "Henrik Ingo (hingo)",
"homepage": "https://www.drupal.org/u/hingo",
"role": "Maintainer"
},
{
"name": "Scott Euser (scott_euser)",
"homepage": "https://www.drupal.org/u/scott_euser",
"role": "Maintainer"
},
{
"name": "smulvih2",
"homepage": "https://www.drupal.org/user/795442"
},
{
"name": "yukare",
"homepage": "https://www.drupal.org/user/889254"
}
],
"description": "Add automatically numbered footnotes to your posts.",
"homepage": "https://drupal.org/project/footnotes",
"support": {
"source": "https://cgit.drupalcode.org/footnotes",
"issues": "https://drupal.org/project/issues/footnotes"
}
},
{
"name": "drupal/formatter_suite",
"version": "2.1.0",
@@ -5030,6 +5108,58 @@
"issues": "https://www.drupal.org/project/issues/link_attributes"
}
},
{
"name": "drupal/linked_field",
"version": "1.7.0",
"source": {
"type": "git",
"url": "https://git.drupalcode.org/project/linked_field.git",
"reference": "8.x-1.7"
},
"dist": {
"type": "zip",
"url": "https://ftp.drupal.org/files/projects/linked_field-8.x-1.7.zip",
"reference": "8.x-1.7",
"shasum": "c304792746a92d105f08931d2b6e09b20ee8d618"
},
"require": {
"drupal/core": "^8.8 || ^9 || ^10 || ^11"
},
"type": "drupal-module",
"extra": {
"drupal": {
"version": "8.x-1.7",
"datestamp": "1748842765",
"security-coverage": {
"status": "covered",
"message": "Covered by Drupal's security advisory policy"
}
}
},
"notification-url": "https://packages.drupal.org/8/downloads",
"license": [
"GPL-2.0-or-later"
],
"authors": [
{
"name": "jcnventura",
"homepage": "https://www.drupal.org/user/122464"
},
{
"name": "vitaliyb98",
"homepage": "https://www.drupal.org/user/3514011"
},
{
"name": "yannickoo",
"homepage": "https://www.drupal.org/user/531118"
}
],
"description": "Adds the functionality to link fields to a specific destination.",
"homepage": "https://www.drupal.org/project/linked_field",
"support": {
"source": "https://git.drupalcode.org/project/linked_field"
}
},
{
"name": "drupal/linkit",
"version": "7.0.12",
@@ -6590,6 +6720,87 @@
"source": "https://git.drupalcode.org/project/sophron"
}
},
{
"name": "drupal/structure_sync",
"version": "2.0.8",
"source": {
"type": "git",
"url": "https://git.drupalcode.org/project/structure_sync.git",
"reference": "2.0.8"
},
"dist": {
"type": "zip",
"url": "https://ftp.drupal.org/files/projects/structure_sync-2.0.8.zip",
"reference": "2.0.8",
"shasum": "3f1bd24d7f048cdd9f49e178af9fa47d291d3525"
},
"require": {
"drupal/core": "^8 || ^9 || ^10 || ^11",
"php": ">=7.1"
},
"require-dev": {
"drush/drush": "^9 || ^10 || ^11 || ^12 || ^13"
},
"type": "drupal-module",
"extra": {
"drupal": {
"version": "2.0.8",
"datestamp": "1728580642",
"security-coverage": {
"status": "covered",
"message": "Covered by Drupal's security advisory policy"
}
},
"drush": {
"services": {
"drush.services.yml": "^9 || ^10 || ^11 || ^12 || ^13"
}
}
},
"notification-url": "https://packages.drupal.org/8/downloads",
"license": [
"GPL-2.0-or-later"
],
"authors": [
{
"name": "colan",
"homepage": "https://www.drupal.org/user/58704"
},
{
"name": "fidovdbos",
"homepage": "https://www.drupal.org/user/1494332"
},
{
"name": "joachim",
"homepage": "https://www.drupal.org/user/107701"
},
{
"name": "louis-cuny",
"homepage": "https://www.drupal.org/user/3606332"
},
{
"name": "mparker17",
"homepage": "https://www.drupal.org/user/536298"
},
{
"name": "spiderman",
"homepage": "https://www.drupal.org/user/1631"
},
{
"name": "timkruijsen",
"homepage": "https://www.drupal.org/user/3513437"
},
{
"name": "vinlaurens",
"homepage": "https://www.drupal.org/user/2945689"
}
],
"description": "Tool for syncing structural data that is stored as content.",
"homepage": "https://www.drupal.org/project/structure_sync",
"support": {
"source": "https://git.drupalcode.org/project/structure_sync"
}
},
{
"name": "drupal/synonyms",
"version": "2.1.4",
@@ -12335,6 +12546,7 @@
"drupal/entity_clone": 20,
"drupal/field_group": 20,
"drupal/filter_perms": 20,
"drupal/footnotes": 5,
"drupal/inline_entity_form": 5,
"drupal/login_destination": 20,
"drupal/maillog": 20,
@@ -0,0 +1,47 @@
uuid: e74678f7-d85f-4b43-9301-dc7952b86aa1
langcode: fr
status: true
dependencies:
config:
- system.menu.contenu
module:
- block_class
- menu_block
- node
theme:
- mathallo
third_party_settings:
block_class:
classes: next-chapitre
id: mathallo_contenu_3
theme: mathallo
region: content
weight: -2
provider: null
plugin: 'menu_block:contenu'
settings:
id: 'menu_block:contenu'
label: 'Contenu next chapitre'
label_display: '0'
provider: menu_block
follow: true
follow_parent: active
display_empty: false
label_link: false
label_type: block
level: 1
depth: 1
expand_all_items: false
parent: 'contenu:'
render_parent: false
suggestion: contenu
hide_on_nonactive: true
visibility:
'entity_bundle:node':
id: 'entity_bundle:node'
negate: false
context_mapping:
node: '@node.node_route_context:node'
bundles:
chapitre: chapitre
partie: partie
@@ -0,0 +1,47 @@
uuid: fa1097ba-d47a-4939-97a1-c310e6257709
langcode: fr
status: true
dependencies:
config:
- system.menu.contenu
module:
- block_class
- menu_block
- node
theme:
- mathallo
third_party_settings:
block_class:
classes: prev-chapitre
id: mathallo_contenu_4
theme: mathallo
region: content
weight: -3
provider: null
plugin: 'menu_block:contenu'
settings:
id: 'menu_block:contenu'
label: 'Contenu prev chapitre'
label_display: '0'
provider: menu_block
follow: true
follow_parent: active
display_empty: false
label_link: false
label_type: block
level: 1
depth: 1
expand_all_items: false
parent: 'contenu:'
render_parent: false
suggestion: contenu
hide_on_nonactive: true
visibility:
'entity_bundle:node':
id: 'entity_bundle:node'
negate: false
context_mapping:
node: '@node.node_route_context:node'
bundles:
chapitre: chapitre
partie: partie
@@ -0,0 +1,25 @@
uuid: c1f6a423-d0ea-44b1-830b-e56a63562c89
langcode: fr
status: true
dependencies:
content:
- 'block_content:logo_link:7c4d9f53-a289-4437-a374-15f8ac471359'
module:
- block_content
theme:
- mathallo
id: mathallo_humanun
theme: mathallo
region: footer
weight: 0
provider: null
plugin: 'block_content:7c4d9f53-a289-4437-a374-15f8ac471359'
settings:
id: 'block_content:7c4d9f53-a289-4437-a374-15f8ac471359'
label: humanun
label_display: '0'
provider: block_content
status: true
info: ''
view_mode: full
visibility: { }
+3
View File
@@ -4,6 +4,9 @@ langcode: fr
maxlength_block_class_field: 255
field_type: multiple_textfields
default_case: standard
block_classes_stored:
- next-chapitre
- prev-chapitre
enable_attributes: true
enable_auto_complete: true
qty_classes_per_block: 10
@@ -0,0 +1,8 @@
uuid: 6d872bd0-154d-499f-b2b3-4e5329e74a73
langcode: fr
status: true
dependencies: { }
id: logo_link
label: 'logo link'
revision: false
description: null
+5 -2
View File
@@ -1,6 +1,9 @@
_core:
default_config_hash: LzdDtE3Im_Ysio7g1Eo8ymSMq0mgSQMPzv0khsr_J64
langcode: fr
mode: simple
mode: intermediate
ignored_config_entities:
- shield.settings.yml
import:
- shield.settings
export:
- shield.settings
@@ -0,0 +1,49 @@
uuid: cc1141d6-5782-432c-9102-8a4b4918fff4
langcode: fr
status: true
dependencies:
config:
- block_content.type.logo_link
- field.field.block_content.logo_link.field_lien
- field.field.block_content.logo_link.field_logo
- image.style.thumbnail
module:
- image
- link
id: block_content.logo_link.default
targetEntityType: block_content
bundle: logo_link
mode: default
content:
field_lien:
type: link_default
weight: 26
region: content
settings:
placeholder_url: ''
placeholder_title: ''
third_party_settings: { }
field_logo:
type: image_image
weight: 27
region: content
settings:
progress_indicator: throbber
preview_image_style: thumbnail
third_party_settings: { }
info:
type: string_textfield
weight: -5
region: content
settings:
size: 60
placeholder: ''
third_party_settings: { }
langcode:
type: language_select
weight: 2
region: content
settings:
include_locked: true
third_party_settings: { }
hidden: { }
@@ -22,8 +22,8 @@ third_party_settings:
children:
- group_corps
- group_principes_reflexion_en_pra
- group_ressources
- group_pour_aller_plus_loin
- group_ressources
label: Tabs
region: content
parent_name: ''
@@ -95,7 +95,7 @@ third_party_settings:
label: Ressources
region: hidden
parent_name: group_tabs
weight: 22
weight: 23
format_type: tab
format_settings:
classes: ''
@@ -108,10 +108,10 @@ third_party_settings:
group_pour_aller_plus_loin:
children:
- field_pour_aller_plus_loin
label: 'Pour aller plus loin'
label: 'Bulle conceptuelle'
region: hidden
parent_name: group_tabs
weight: 23
weight: 22
format_type: tab
format_settings:
classes: ''
@@ -8,7 +8,7 @@ dependencies:
- field.field.paragraph.complement.field_titre
- paragraphs.paragraphs_type.complement
module:
- link
- link_attributes
- text
id: paragraph.complement.default
targetEntityType: paragraph
@@ -24,12 +24,22 @@ content:
placeholder: ''
third_party_settings: { }
field_liens:
type: link_default
type: link_attributes
weight: 2
region: content
settings:
placeholder_url: ''
placeholder_title: ''
enabled_attributes:
target: true
id: false
name: false
rel: false
class: false
accesskey: false
aria-label: false
title: false
widget_default_open: expanded
third_party_settings: { }
field_titre:
type: string_textfield
@@ -10,7 +10,7 @@ dependencies:
- paragraphs.paragraphs_type.ressource
module:
- file
- link
- link_attributes
- text
id: paragraph.ressource.default
targetEntityType: paragraph
@@ -33,12 +33,22 @@ content:
progress_indicator: throbber
third_party_settings: { }
field_liens:
type: link_default
type: link_attributes
weight: 2
region: content
settings:
placeholder_url: ''
placeholder_title: ''
enabled_attributes:
target: true
id: false
name: false
rel: false
class: false
accesskey: false
aria-label: false
title: false
widget_default_open: expandIfValuesSet
third_party_settings: { }
field_titre:
type: string_textfield
@@ -0,0 +1,39 @@
uuid: 7dfb0049-bde3-4738-8ae9-fd78f513f401
langcode: fr
status: true
dependencies:
config:
- block_content.type.logo_link
- field.field.block_content.logo_link.field_lien
- field.field.block_content.logo_link.field_logo
- image.style.thumbnail
module:
- image
- linked_field
id: block_content.logo_link.default
targetEntityType: block_content
bundle: logo_link
mode: default
content:
field_logo:
type: image
label: hidden
settings:
image_link: ''
image_style: thumbnail
image_loading:
attribute: lazy
third_party_settings:
linked_field:
linked: '1'
type: field
destination: field_lien
advanced:
target: _blank
token: ''
weight: 0
region: content
hidden:
field_lien: true
langcode: true
search_api_excerpt: true
@@ -50,7 +50,7 @@ content:
view_mode: default
link: ''
third_party_settings: { }
weight: 6
weight: 5
region: content
field_principes_reflexions:
type: text_default
@@ -66,7 +66,7 @@ content:
view_mode: default
link: ''
third_party_settings: { }
weight: 5
weight: 6
region: content
links:
settings: { }
@@ -23,14 +23,14 @@ content:
weight: 1
region: content
field_liens:
type: link
label: visually_hidden
type: link_separate
label: above
settings:
trim_length: 80
url_only: false
url_plain: false
rel: ''
target: ''
rel: '0'
target: _blank
third_party_settings: { }
weight: 2
region: content
@@ -28,7 +28,7 @@ content:
type: file_default
label: visually_hidden
settings:
use_description_as_link_text: true
use_description_as_link_text: false
third_party_settings: { }
weight: 3
region: content
@@ -39,8 +39,8 @@ content:
trim_length: 80
url_only: false
url_plain: false
rel: ''
target: ''
rel: nofollow
target: '0'
third_party_settings: { }
weight: 2
region: content
@@ -0,0 +1,13 @@
uuid: 975423d5-16c6-4c27-b801-bf1950bf5c71
langcode: en
status: false
dependencies:
module:
- media
_core:
default_config_hash: dTfAUHooYV0uOVPO3saGpgv-c5PppJXDwxvwRTJOycM
id: media.full
label: 'Full content'
description: ''
targetEntityType: media
cache: true
@@ -1,5 +1,5 @@
uuid: 74f4d612-52d4-4c83-9ae2-b3fb78a6a82b
langcode: en
langcode: fr
status: true
dependencies:
module:
@@ -7,7 +7,7 @@ dependencies:
_core:
default_config_hash: h3BeHVei4Lnyqbkao3YiF4KqoY-DhRvUNfEgKG8Rgjg
id: paragraph.preview
label: Preview
label: Aperçu
description: ''
targetEntityType: paragraph
cache: true
+4
View File
@@ -51,6 +51,7 @@ module:
file: 0
filter: 0
filter_perms: 0
footnotes: 0
formatter_suite: 0
help: 0
honeypot: 0
@@ -66,6 +67,7 @@ module:
maillog: 0
mathallomod: 0
maxlength: 0
media: 0
menu_block: 0
menu_link_content: 0
menu_ui: 0
@@ -89,6 +91,7 @@ module:
shield: 0
smart_trim: 0
smtp: 0
structure_sync: 0
system: 0
taxonomy: 0
telephone: 0
@@ -109,6 +112,7 @@ module:
content_translation: 10
views: 10
paragraphs: 11
linked_field: 100
figli_starter_kit: 1000
theme:
seven: 0
+37
View File
@@ -0,0 +1,37 @@
uuid: 71a5dbbb-c29e-41b5-9ec0-97cdc449b1e8
langcode: en
status: true
dependencies:
config:
- filter.format.footnote
module:
- ckeditor5
_core:
default_config_hash: SyHxfjreOgdyYXaIXOlKvLazJjPl6X-6ywdJeSruOzg
format: footnote
editor: ckeditor5
settings:
toolbar:
items:
- bold
- italic
- underline
- bulletedList
- drupalInsertImage
- showBlocks
plugins:
ckeditor5_imageResize:
allow_resize: true
ckeditor5_list:
properties:
reversed: false
startIndex: false
multiBlock: false
image_upload:
status: true
scheme: public
directory: inline-images
max_size: null
max_dimensions:
width: 1080
height: null
+18
View File
@@ -13,7 +13,10 @@ editor: ckeditor5
settings:
toolbar:
items:
- undo
- redo
- heading
- style
- bold
- italic
- bulletedList
@@ -22,7 +25,9 @@ settings:
- blockQuote
- indent
- outdent
- footnotes
- showBlocks
- sourceEditing
plugins:
ckeditor5_heading:
enabled_headings:
@@ -36,5 +41,18 @@ settings:
reversed: true
startIndex: true
multiBlock: true
ckeditor5_sourceEditing:
allowed_tags: { }
ckeditor5_style:
styles:
-
label: mathallo
element: '<span class="mathallo-site-name">'
-
label: 'Lien transversal'
element: '<p class="lien-transversal">'
linkit_extension:
linkit_enabled: true
linkit_profile: default
image_upload:
status: false
@@ -0,0 +1,23 @@
uuid: d63a6e6b-64b6-43bd-a58b-2ee3e106a41b
langcode: fr
status: true
dependencies:
config:
- block_content.type.logo_link
- field.storage.block_content.field_lien
module:
- link
id: block_content.logo_link.field_lien
field_name: field_lien
entity_type: block_content
bundle: logo_link
label: Lien
description: ''
required: false
translatable: false
default_value: { }
default_value_callback: ''
settings:
title: 0
link_type: 16
field_type: link
@@ -0,0 +1,38 @@
uuid: 727398e0-2cd1-42ba-bafb-cd733f136caa
langcode: fr
status: true
dependencies:
config:
- block_content.type.logo_link
- field.storage.block_content.field_logo
module:
- image
id: block_content.logo_link.field_logo
field_name: field_logo
entity_type: block_content
bundle: logo_link
label: Logo
description: ''
required: false
translatable: false
default_value: { }
default_value_callback: ''
settings:
handler: 'default:file'
handler_settings: { }
file_directory: '[date:custom:Y]-[date:custom:m]'
file_extensions: 'png gif jpg jpeg webp'
max_filesize: ''
max_resolution: ''
min_resolution: ''
alt_field: true
alt_field_required: true
title_field: false
title_field_required: false
default_image:
uuid: ''
alt: ''
title: ''
width: null
height: null
field_type: image
@@ -12,7 +12,7 @@ id: node.partie.field_pour_aller_plus_loin
field_name: field_pour_aller_plus_loin
entity_type: node
bundle: partie
label: 'Pour aller plus loin'
label: 'Bulle conceptuelle'
description: ''
required: false
translatable: false
@@ -12,7 +12,7 @@ id: node.partie.field_principes_reflexions
field_name: field_principes_reflexions
entity_type: node
bundle: partie
label: Principes/réflexions
label: Repères
description: ''
required: false
translatable: false
@@ -11,7 +11,7 @@ id: paragraph.complement.field_liens
field_name: field_liens
entity_type: paragraph
bundle: complement
label: Liens
label: 'Pour aller plus loin'
description: ''
required: false
translatable: false
@@ -0,0 +1,19 @@
uuid: feb6db14-a228-4db7-bd2b-f1f7a7e67add
langcode: fr
status: true
dependencies:
module:
- block_content
- link
id: block_content.field_lien
field_name: field_lien
entity_type: block_content
type: link
settings: { }
module: link
locked: false
cardinality: 1
translatable: true
indexes: { }
persist_with_no_fields: false
custom_storage: false
@@ -0,0 +1,30 @@
uuid: 816a5b21-af77-44d6-ae56-1929fabe039f
langcode: fr
status: true
dependencies:
module:
- block_content
- file
- image
id: block_content.field_logo
field_name: field_logo
entity_type: block_content
type: image
settings:
target_type: file
display_field: false
display_default: true
uri_scheme: public
default_image:
uuid: ''
alt: ''
title: ''
width: null
height: null
module: image
locked: false
cardinality: 1
translatable: true
indexes: { }
persist_with_no_fields: false
custom_storage: false
+121
View File
@@ -0,0 +1,121 @@
uuid: 35cc332e-bda2-4b22-9b11-f4a047e349ed
langcode: en
status: true
dependencies:
module:
- editor
- footnotes
- linkit
- media
- pathologic
_core:
default_config_hash: SYAah-i4HbJnc3ZnKC9NmY4M0UAFYpfobYzxg0eMunM
name: Footnote
format: footnote
weight: 0
filters:
editor_file_reference:
id: editor_file_reference
provider: editor
status: true
weight: -48
settings: { }
filter_align:
id: filter_align
provider: filter
status: false
weight: -47
settings: { }
filter_autop:
id: filter_autop
provider: filter
status: true
weight: -43
settings: { }
filter_caption:
id: filter_caption
provider: filter
status: false
weight: -46
settings: { }
filter_footnotes:
id: filter_footnotes
provider: footnotes
status: false
weight: -44
settings:
footnotes_collapse: false
footnotes_css: true
footnotes_dialog: false
footnotes_dialog_prevent_bubbling: false
footnotes_footer_disable: false
footnotes_preview_show_text: true
footnotes_preview_character: ''
filter_html:
id: filter_html
provider: filter
status: true
weight: -50
settings:
allowed_html: '<br> <p> <strong> <em> <u> <ul> <ol> <li> <img src alt height width data-entity-uuid data-entity-type>'
filter_html_help: false
filter_html_nofollow: false
filter_html_escape:
id: filter_html_escape
provider: filter
status: false
weight: -49
settings: { }
filter_html_image_secure:
id: filter_html_image_secure
provider: filter
status: false
weight: -41
settings: { }
filter_htmlcorrector:
id: filter_htmlcorrector
provider: filter
status: false
weight: -40
settings: { }
filter_image_lazy_load:
id: filter_image_lazy_load
provider: filter
status: false
weight: -39
settings: { }
filter_pathologic:
id: filter_pathologic
provider: pathologic
status: false
weight: -38
settings:
settings_source: global
local_settings:
protocol_style: full
local_paths: ''
keep_language_prefix: true
filter_url:
id: filter_url
provider: filter
status: false
weight: -45
settings:
filter_url_length: 72
linkit:
id: linkit
provider: linkit
status: false
weight: -42
settings:
title: true
media_substitution: metadata
media_embed:
id: media_embed
provider: media
status: false
weight: -37
settings:
default_view_mode: default
allowed_view_modes: { }
allowed_media_types: { }
+44 -13
View File
@@ -4,7 +4,9 @@ status: true
dependencies:
module:
- editor
- footnotes
- linkit
- media
- pathologic
_core:
default_config_hash: a0dSxrd1nnzeSvKpvFmtoLpxDd3Nj6E7dQN-MZUi20g
@@ -22,52 +24,71 @@ filters:
id: filter_align
provider: filter
status: false
weight: -41
weight: -42
settings: { }
filter_autop:
id: filter_autop
provider: filter
status: true
weight: -49
status: false
weight: -45
settings: { }
filter_caption:
id: filter_caption
provider: filter
status: false
weight: -40
weight: -41
settings: { }
filter_footnotes:
id: filter_footnotes
provider: footnotes
status: true
weight: -47
settings:
footnotes_collapse: false
footnotes_css: false
footnotes_dialog: false
footnotes_dialog_prevent_bubbling: true
footnotes_footer_disable: true
footnotes_preview_show_text: false
footnotes_preview_character: ''
filter_html:
id: filter_html
provider: filter
status: false
weight: -43
weight: -44
settings:
allowed_html: '<em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h5 id> <h6 id> <u> <a href hreflang !href accesskey id rel target title data-entity-type data-entity-uuid data-entity-substitution> <img src alt data-entity-type data-entity-uuid data-entity-substitution> <p> <h1> <pre> <h4 id class="inter-titre">'
allowed_html: '<span class="mathallo-site-name"> <p class="lien-transversal">'
filter_html_help: true
filter_html_nofollow: false
filter_html_escape:
id: filter_html_escape
provider: filter
status: false
weight: -42
weight: -43
settings: { }
filter_html_image_secure:
id: filter_html_image_secure
provider: filter
status: true
weight: -48
weight: -49
settings: { }
filter_htmlcorrector:
id: filter_htmlcorrector
provider: filter
status: true
weight: -47
weight: -46
settings: { }
filter_image_lazy_load:
id: filter_image_lazy_load
provider: filter
status: false
weight: -39
settings: { }
filter_pathologic:
id: filter_pathologic
provider: pathologic
status: false
weight: 50
weight: -38
settings:
settings_source: global
local_settings:
@@ -78,13 +99,23 @@ filters:
id: filter_url
provider: filter
status: true
weight: -45
weight: -48
settings:
filter_url_length: 72
linkit:
id: linkit
provider: linkit
status: false
weight: 0
status: true
weight: -40
settings:
title: true
media_substitution: metadata
media_embed:
id: media_embed
provider: media
status: false
weight: -37
settings:
default_view_mode: default
allowed_view_modes: { }
allowed_media_types: { }
@@ -0,0 +1,11 @@
uuid: 284462f0-456e-4178-a946-51ad5a7d30ee
langcode: fr
status: true
dependencies:
config:
- block_content.type.logo_link
id: block_content.logo_link
target_entity_type_id: block_content
target_bundle: logo_link
default_langcode: site_default
language_alterable: false
+15
View File
@@ -0,0 +1,15 @@
_core:
default_config_hash: PQasQC1X7aWGPpdeZMscZrE9K0RnK_czZQedrwTJor8
attributes:
title:
label: ''
description: ''
target:
label: ''
description: ''
class:
label: ''
description: ''
rel:
label: Relationship
description: ''
+6
View File
@@ -0,0 +1,6 @@
_core:
default_config_hash: WCFqLQAxMw1weToDJEhfnW1Z-iOF7cqMdL8X7YTFxBA
icon_base_uri: 'public://media-icons/generic'
iframe_domain: null
oembed_providers_url: 'https://oembed.com/providers.json'
standalone_url: false
+3 -3
View File
@@ -1,11 +1,11 @@
_core:
default_config_hash: FLJZME3II5fjmMSrdEvJHp95ZJf8V_X0jbX0VdVU1BU
shield_enable: false
shield_enable: true
credential_provider: shield
credentials:
shield:
user: ''
pass: ''
user: mathallo
pass: 6eATX3mpGf2TvX
allow_cli: true
debug_header: false
unset_basic_auth_headers: true
+21
View File
@@ -0,0 +1,21 @@
blocks:
-
info: IUF
langcode: fr
uuid: 7c4d9f53-a289-4437-a374-15f8ac471359
bundle: logo_link
revision_id: null
rev_id_current: null
fields:
field_lien:
-
uri: 'https://www.iufrance.fr/'
title: ''
options: { }
field_logo:
-
target_id: '4'
alt: 'Institut Universitaire de France '
title: ''
width: '751'
height: '264'
@@ -0,0 +1,13 @@
uuid: fccdbdf2-2c41-4cd6-8b6e-b74fcae8ef12
langcode: en
status: true
dependencies:
module:
- media
_core:
default_config_hash: FrZy1tmuXJcOxhXlBoI1Hsnen5TT-9OCC1iolWH84go
id: media_delete_action
label: 'Delete media'
type: media
plugin: 'entity:delete_action:media'
configuration: { }
@@ -0,0 +1,14 @@
uuid: 137669ed-9478-4e7b-b710-5a94900c1ad4
langcode: en
status: true
dependencies:
module:
- media
- views_bulk_edit
_core:
default_config_hash: xN0kWpQZeiYp9xWNycp37rmLmAcnEyS9LDjPPTPce2w
id: media_edit_action
label: 'Edit media'
type: media
plugin: 'entity:edit_action:media'
configuration: { }
@@ -0,0 +1,13 @@
uuid: 4cb7ca5e-ee62-4165-b5dc-c6334acb25ed
langcode: en
status: true
dependencies:
module:
- media
_core:
default_config_hash: nh83qNNrmWE-CDdHz2MdFOAk60T9mzv3R-MaKfZR2jw
id: media_publish_action
label: 'Publish media'
type: media
plugin: 'entity:publish_action:media'
configuration: { }
@@ -0,0 +1,13 @@
uuid: 4ee08a45-c42d-4332-a122-ed65596cc802
langcode: en
status: true
dependencies:
module:
- media
_core:
default_config_hash: VVyUA6PIaVeGtcIbgEWqJ6SYDiJdReBeojFswURFpKs
id: media_save_action
label: 'Save media'
type: media
plugin: 'entity:save_action:media'
configuration: { }
@@ -0,0 +1,13 @@
uuid: 82e0950e-8a42-4bd7-b4ad-30bfbae269fe
langcode: en
status: true
dependencies:
module:
- media
_core:
default_config_hash: CsK6TseQ2DatEbZgbd30swOlZ28_HHwAESU2LvEnWq0
id: media_unpublish_action
label: 'Unpublish media'
type: media
plugin: 'entity:unpublish_action:media'
configuration: { }
+3
View File
@@ -3,6 +3,7 @@ langcode: fr
status: true
dependencies:
config:
- filter.format.footnote
- node.type.chapitre
- node.type.partie
- node.type.static
@@ -10,6 +11,7 @@ dependencies:
- actions_permissions
- content_translation
- file
- filter
- node
- system
- toolbar
@@ -53,6 +55,7 @@ permissions:
- 'revert partie revisions'
- 'revert static revisions'
- 'update content translations'
- 'use text format footnote'
- 'view chapitre revisions'
- 'view own unpublished content'
- 'view partie revisions'
+2
View File
@@ -4,6 +4,7 @@ status: true
dependencies:
module:
- devel
- media
- search
- system
_core:
@@ -16,3 +17,4 @@ permissions:
- 'access content'
- 'access devel information'
- 'search content'
- 'view media'
+2
View File
@@ -4,6 +4,7 @@ status: true
dependencies:
module:
- devel
- media
- search
- system
_core:
@@ -16,3 +17,4 @@ permissions:
- 'access content'
- 'access devel information'
- 'search content'
- 'view media'
+2
View File
@@ -3,6 +3,7 @@ langcode: fr
status: true
dependencies:
config:
- filter.format.footnote
- filter.format.wysiwyg
- node.type.chapitre
- node.type.partie
@@ -49,6 +50,7 @@ permissions:
- 'translate editable entities'
- 'translate interface'
- 'update content translations'
- 'use text format footnote'
- 'use text format wysiwyg'
- 'view chapitre revisions'
- 'view own unpublished content'
+920
View File
@@ -0,0 +1,920 @@
uuid: 34a2d9c2-63e0-4f93-b857-2e4ffdb9dff8
langcode: en
status: true
dependencies:
config:
- image.style.thumbnail
module:
- image
- media
- user
_core:
default_config_hash: kOTUk5XWeupgBOJuRRarCiDcFKVZcvaW-FT5MTzrML8
id: media
label: Media
module: views
description: 'Find and manage media.'
tag: ''
base_table: media_field_data
base_field: mid
display:
default:
id: default
display_title: Default
display_plugin: default
position: 0
display_options:
title: Media
fields:
media_bulk_form:
id: media_bulk_form
table: media
field: media_bulk_form
relationship: none
group_type: group
admin_label: ''
entity_type: media
plugin_id: bulk_form
label: ''
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: false
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
action_title: Action
include_exclude: exclude
selected_actions: { }
thumbnail__target_id:
id: thumbnail__target_id
table: media_field_data
field: thumbnail__target_id
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: thumbnail
plugin_id: field
label: Thumbnail
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: target_id
type: image
settings:
image_link: ''
image_style: thumbnail
image_loading:
attribute: lazy
group_column: ''
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
name:
id: name
table: media_field_data
field: name
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: media
plugin_id: field
label: 'Media name'
exclude: false
alter:
alter_text: false
make_link: false
absolute: false
word_boundary: false
ellipsis: false
strip_tags: false
trim: false
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: string
settings:
link_to_entity: true
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
bundle:
id: bundle
table: media_field_data
field: bundle
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: bundle
plugin_id: field
label: Type
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: target_id
type: entity_reference_label
settings:
link: false
group_column: target_id
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
uid:
id: uid
table: media_field_data
field: uid
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: uid
plugin_id: field
label: Author
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: target_id
type: entity_reference_label
settings:
link: true
group_column: target_id
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
status:
id: status
table: media_field_data
field: status
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: status
plugin_id: field
label: Status
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: boolean
settings:
format: custom
format_custom_false: Unpublished
format_custom_true: Published
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
changed:
id: changed
table: media_field_data
field: changed
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: changed
plugin_id: field
label: Updated
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: timestamp
settings:
date_format: short
custom_date_format: ''
timezone: ''
tooltip:
date_format: long
custom_date_format: ''
time_diff:
enabled: false
future_format: '@interval hence'
past_format: '@interval ago'
granularity: 2
refresh: 60
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
operations:
id: operations
table: media
field: operations
relationship: none
group_type: group
admin_label: ''
entity_type: media
plugin_id: entity_operations
label: Operations
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
destination: true
pager:
type: full
options:
offset: 0
pagination_heading_level: h4
items_per_page: 50
total_pages: null
id: 0
tags:
next: 'Next ›'
previous: '‹ Previous'
first: '« First'
last: 'Last »'
expose:
items_per_page: false
items_per_page_label: 'Items per page'
items_per_page_options: '5, 10, 25, 50'
items_per_page_options_all: false
items_per_page_options_all_label: '- All -'
offset: false
offset_label: Offset
quantity: 9
exposed_form:
type: basic
options:
submit_button: Filter
reset_button: false
reset_button_label: Reset
exposed_sorts_label: 'Sort by'
expose_sort_order: true
sort_asc_label: Asc
sort_desc_label: Desc
access:
type: perm
options:
perm: 'access media overview'
cache:
type: tag
options: { }
empty:
area_text_custom:
id: area_text_custom
table: views
field: area_text_custom
relationship: none
group_type: group
admin_label: ''
plugin_id: text_custom
empty: true
content: 'No media available.'
tokenize: false
sorts:
created:
id: created
table: media_field_data
field: created
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: created
plugin_id: date
order: DESC
expose:
label: ''
field_identifier: created
exposed: false
granularity: second
arguments: { }
filters:
name:
id: name
table: media_field_data
field: name
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: name
plugin_id: string
operator: contains
value: ''
group: 1
exposed: true
expose:
operator_id: name_op
label: 'Media name'
description: ''
use_operator: false
operator: name_op
operator_limit_selection: false
operator_list: { }
identifier: name
required: false
remember: false
multiple: false
remember_roles:
authenticated: authenticated
anonymous: '0'
administrator: '0'
is_grouped: false
group_info:
label: ''
description: ''
identifier: ''
optional: true
widget: select
multiple: false
remember: false
default_group: All
default_group_multiple: { }
group_items: { }
bundle:
id: bundle
table: media_field_data
field: bundle
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: bundle
plugin_id: bundle
operator: in
value: { }
group: 1
exposed: true
expose:
operator_id: bundle_op
label: Type
description: ''
use_operator: false
operator: bundle_op
operator_limit_selection: false
operator_list: { }
identifier: type
required: false
remember: false
multiple: false
remember_roles:
authenticated: authenticated
anonymous: '0'
administrator: '0'
reduce: false
is_grouped: false
group_info:
label: ''
description: ''
identifier: ''
optional: true
widget: select
multiple: false
remember: false
default_group: All
default_group_multiple: { }
group_items: { }
status:
id: status
table: media_field_data
field: status
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: status
plugin_id: boolean
operator: '='
value: '1'
group: 1
exposed: true
expose:
operator_id: ''
label: 'True'
description: null
use_operator: false
operator: status_op
operator_limit_selection: false
operator_list: { }
identifier: status
required: true
remember: false
multiple: false
remember_roles:
authenticated: authenticated
is_grouped: true
group_info:
label: 'Published status'
description: ''
identifier: status
optional: true
widget: select
multiple: false
remember: false
default_group: All
default_group_multiple: { }
group_items:
1:
title: Published
operator: '='
value: '1'
2:
title: Unpublished
operator: '='
value: '0'
status_extra:
id: status_extra
table: media_field_data
field: status_extra
relationship: none
group_type: group
admin_label: ''
entity_type: media
plugin_id: media_status
operator: '='
value: ''
group: 1
exposed: false
expose:
operator_id: ''
label: ''
description: ''
use_operator: false
operator: ''
operator_limit_selection: false
operator_list: { }
identifier: ''
required: false
remember: false
multiple: false
remember_roles:
authenticated: authenticated
is_grouped: false
group_info:
label: ''
description: ''
identifier: ''
optional: true
widget: select
multiple: false
remember: false
default_group: All
default_group_multiple: { }
group_items: { }
langcode:
id: langcode
table: media_field_data
field: langcode
relationship: none
group_type: group
admin_label: ''
entity_type: media
entity_field: langcode
plugin_id: language
operator: in
value: { }
group: 1
exposed: true
expose:
operator_id: langcode_op
label: Language
description: ''
use_operator: false
operator: langcode_op
operator_limit_selection: false
operator_list: { }
identifier: langcode
required: false
remember: false
multiple: false
remember_roles:
authenticated: authenticated
anonymous: '0'
administrator: '0'
reduce: false
is_grouped: false
group_info:
label: ''
description: ''
identifier: ''
optional: true
widget: select
multiple: false
remember: false
default_group: All
default_group_multiple: { }
group_items: { }
style:
type: table
options:
grouping: { }
row_class: ''
default_row_class: true
columns:
name: name
bundle: bundle
changed: changed
uid: uid
status: status
thumbnail__target_id: thumbnail__target_id
default: changed
info:
name:
sortable: true
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
bundle:
sortable: true
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
changed:
sortable: true
default_sort_order: desc
align: ''
separator: ''
empty_column: false
responsive: ''
uid:
sortable: false
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
status:
sortable: true
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
thumbnail__target_id:
sortable: false
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
override: true
sticky: false
summary: ''
empty_table: true
caption: ''
description: ''
row:
type: fields
query:
type: views_query
options:
query_comment: ''
disable_sql_rewrite: false
distinct: false
replica: false
query_tags: { }
relationships: { }
header: { }
footer: { }
display_extenders: { }
cache_metadata:
max-age: 0
contexts:
- 'languages:language_content'
- 'languages:language_interface'
- url
- url.query_args
- user
- user.permissions
tags: { }
media_page_list:
id: media_page_list
display_title: Media
display_plugin: page
position: 1
display_options:
display_description: ''
display_extenders: { }
path: admin/content/media
menu:
type: tab
title: Media
description: ''
weight: 0
expanded: false
menu_name: main
parent: ''
context: '0'
cache_metadata:
max-age: 0
contexts:
- 'languages:language_content'
- 'languages:language_interface'
- url
- url.query_args
- user
- user.permissions
tags: { }
+13
View File
@@ -0,0 +1,13 @@
diff --git a/src/Plugin/Filter/FootnotesFilter.php b/src/Plugin/Filter/FootnotesFilter.php
index 03bff31..8189be0 100644
--- a/src/Plugin/Filter/FootnotesFilter.php
+++ b/src/Plugin/Filter/FootnotesFilter.php
@@ -168,7 +168,7 @@ class FootnotesFilter extends FilterBase implements ContainerFactoryPluginInterf
// Citations should not contain paragraph tags as they should be inline
// content. This attempts to remove them; however, if the 'Convert line
// breaks filter' runs after this filter, it will still be an issue.
- $markup = str_replace(['<p>', '</p>'], '', $markup);
+ // $markup = str_replace(['<p>', '</p>'], '', $markup);
static::replaceNodeContent($node, $markup);
}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a2"
viewBox="-35.954 -35.954 300.00001 300.00001"
fill="none"
stroke="#1642bc"
version="1.1"
sodipodi:docname="cone.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs3" />
<sodipodi:namedview
id="namedview3"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="2.3878158"
inkscape:cx="139.87678"
inkscape:cy="175.47417"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="shape-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a2" />
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a2"
rx="0"
ry="0"
transform="matrix(1.5754364,0,0,1.5754364,-78.937998,-42.698956)"
style="stroke-width:0.634745">
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a4-6"
style="fill:#ff0e0e;fill-opacity:1;stroke:none;stroke-width:0.615127;stroke-dasharray:3.69075, 3.69075;stroke-dashoffset:0;stroke-opacity:1"
transform="matrix(1.0325047,0,0,1.0312802,-3.887793,-3.4080293)">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a4-2"
style="fill:#ff0e0e;fill-opacity:1;stroke:none;stroke-width:0.615127;stroke-dasharray:3.69075, 3.69075;stroke-dashoffset:0;stroke-opacity:1">
<ellipse
cx="127.12667"
cy="143.76231"
rx="80.485847"
ry="30.115566"
transform="rotate(-23.763291,127.12683,143.76245)"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.615127;stroke-dasharray:3.69075, 3.69075;stroke-dashoffset:0;stroke-opacity:1"
id="ellipse2-9" />
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a3-6"
rx="0"
ry="0"
style="fill:#ff1212;fill-opacity:1;stroke-width:0.596541;stroke-dasharray:3.57925, 3.57925;stroke-dashoffset:0;stroke-opacity:1;stroke:none"
transform="matrix(1.0640422,0,0,1.0640422,-8.0692563,-5.9123574)">
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a5-7"
style="fill:#ff1212;fill-opacity:1;stroke-width:0.596541;stroke-dasharray:3.57925, 3.57925;stroke-dashoffset:0;stroke-opacity:1;stroke:none">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a5-5"
style="fill:#ff1212;fill-opacity:1;stroke-width:0.596541;stroke-dasharray:3.57925, 3.57925;stroke-dashoffset:0;stroke-opacity:1;stroke:none">
<path
d="M 54.812108,167.67614 69.291507,10.8426 194.83131,105.5532"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.596541;stroke-dasharray:3.57925, 3.57925;stroke-dashoffset:0;stroke-opacity:1"
id="path1-3"
sodipodi:nodetypes="ccc" />
</g>
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a3"
rx="0"
ry="0"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.634745;stroke-dasharray:3.80847, 3.80847;stroke-dashoffset:0;stroke-opacity:1">
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a5"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.634745;stroke-dasharray:3.80847, 3.80847;stroke-dashoffset:0;stroke-opacity:1">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a5"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.634745;stroke-dasharray:3.80847, 3.80847;stroke-dashoffset:0;stroke-opacity:1">
<path
d="M 52.854845,168.66826 67.465645,9.5801487 199.89497,109.98786"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.634745;stroke-dasharray:3.80847, 3.80847;stroke-dashoffset:0;stroke-opacity:1"
id="path1"
sodipodi:nodetypes="ccc" />
</g>
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a4"
style="stroke-width:0.634745;fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:3.80847001,3.80847001;stroke-dashoffset:0">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b2221a5a4"
style="stroke-width:0.634745;fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:3.80847001,3.80847001;stroke-dashoffset:0">
<ellipse
cx="127.12667"
cy="143.76231"
rx="80.485847"
ry="30.115566"
transform="rotate(-23.763291,127.12683,143.76245)"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.634745;stroke-opacity:1;stroke-dasharray:3.80847001,3.80847001;stroke-dashoffset:0"
id="ellipse2" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.1 KiB

@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-d8ccbdb6-0d67-80f5-8007-0f4cd3df90e2"
viewBox="4465 2506 300 300"
fill="none"
stroke="#1642bc"
version="1.1"
sodipodi:docname="croissant.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs2" />
<sodipodi:namedview
id="namedview2"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="3.020485"
inkscape:cx="132.76014"
inkscape:cy="122.16581"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="shape-d8ccbdb6-0d67-80f5-8007-0f4cd3df90e2" />
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f4cd3df90e2">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f4cd3df90e2-3"
transform="matrix(1.2497704,0,0,1.251775,-1163.6223,-595.91714)"
style="fill:#ff1a1a;fill-opacity:1;stroke:none;stroke-width:0.799506;stroke-dasharray:4.79704, 4.79704;stroke-dashoffset:0;stroke-opacity:1">
<path
d="m 4571.9961,2675.9731 c -59.0527,-34.041 -77.6331,-109.8383 -43.4378,-169.1591 0.626,-1.085 213.0169,120.6733 212.3909,121.7587 -34.1953,59.3203 -109.9009,81.4419 -168.9531,47.4004"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.799506;stroke-dasharray:4.79704, 4.79704;stroke-dashoffset:0;stroke-opacity:1"
id="path1-2"
sodipodi:nodetypes="cccc" />
</g>
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f4cd3df90e2"
transform="matrix(1.2067065,0,0,1.2067065,-964.42483,-478.75662)"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.828702;stroke-dasharray:4.97222, 4.97222;stroke-dashoffset:0;stroke-opacity:1">
<path
d="m 4571.9961,2675.9731 c -59.0527,-34.041 -79.2334,-109.8383 -45.0381,-169.1591 0.626,-1.085 214.6172,122.271 213.9912,123.3564 -34.1953,59.3203 -109.9009,79.8442 -168.9531,45.8027"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.828702;stroke-dasharray:4.97222, 4.97222;stroke-dashoffset:0;stroke-opacity:1"
id="path1" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

@@ -0,0 +1,85 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-52808c91-ee87-8059-8007-0f133be4024b"
viewBox="-22.648 -22.505 300.00001 299.99999"
stroke="#1642bc"
fill="none"
version="1.1"
sodipodi:docname="cube.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs5" />
<sodipodi:namedview
id="namedview5"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="2.5166974"
inkscape:cx="119.00517"
inkscape:cy="139.4685"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="screenshot-52808c91-ee87-8059-8007-0f133be4024b" />
<g
class="fills"
id="fills-52808c91-ee87-8059-8007-0f133be402cf"
style="stroke-width:1.44726;fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:8.68356014, 8.68356014;stroke-dashoffset:0"
transform="matrix(0.6909633,0,0,0.6909633,2.3937652,1.3554119)">
<path
d="M -25.884046,338.93863 9.4989997,71.038129 171.61266,-6.5486259 386.14573,23.416264 354.45851,267.61218 245.24038,376.17025 Z"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.44726;stroke-dasharray:8.68356, 8.68356;stroke-dashoffset:0;stroke-opacity:1"
id="path1-6"
sodipodi:nodetypes="ccccccc" />
<path
d="m -22.647984,336.22495 35.704591,-263.827687 2.1e-5,-1.1e-4 L 170.13913,-2.9843304 382.64841,25.774946 349.95651,267.34427 243.0152,372.17807 h 3.9e-4 z"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.44726;stroke-dasharray:8.68356, 8.68356;stroke-dashoffset:0;stroke-opacity:1"
id="path1"
sodipodi:nodetypes="ccccccccc" />
</g>
<g
id="strokes-5b0d4cb0-e4c2-80ff-8007-914867142e14-52808c91-ee87-8059-8007-0f133be402d0"
class="strokes"
style="stroke-width:1.44726;fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:8.68356014,8.68356014;stroke-dashoffset:0"
transform="matrix(0.6909633,0,0,0.6909633,2.3937652,1.3554119)" />
<g
class="fills"
id="fills-52808c91-ee87-8059-8007-0f133be402d1"
style="stroke-width:1.44726;fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:8.68356014,8.68356014;stroke-dashoffset:0"
transform="matrix(0.6909633,0,0,0.6909633,2.3937652,1.3554119)" />
<g
class="fills"
id="fills-52808c91-ee87-8059-8007-0f133be402d2"
style="stroke-width:1.44726;fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:8.68356014,8.68356014;stroke-dashoffset:0"
transform="matrix(0.6909633,0,0,0.6909633,2.3937652,1.3554119)">
<path
d="M 278.71994,108.35033 382.64841,25.774946"
id="path4"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.44725;stroke-dasharray:8.68353, 8.68353;stroke-dashoffset:13.7489;stroke-opacity:1"
sodipodi:nodetypes="cc" />
</g>
<g
class="fills"
id="fills-52808c91-ee87-8059-8007-0f133be402d0"
style="stroke-width:1.44726;fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:8.68356014, 8.68356014;stroke-dashoffset:0"
transform="matrix(0.6909633,0,0,0.6909633,2.393765,1.355412)">
<path
id="rect1"
transform="rotate(7.7072189,128.03627,222.28682)"
d="M -6.0065407,89.171249 H 262.07857 V 355.40407"
sodipodi:nodetypes="ccc"
style="fill:none" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

@@ -0,0 +1,146 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-52808c91-ee87-8059-8007-0f133be4024a"
viewBox="42.252 -118.216 300 300"
fill="none"
stroke="#1642bc"
version="1.1"
sodipodi:docname="cylindre.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs6" />
<sodipodi:namedview
id="namedview6"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="2.8666667"
inkscape:cx="147.55814"
inkscape:cy="197.09302"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="g7" />
<ellipse
cx="68.153976"
cy="-199.53601"
rx="53.531544"
ry="81.842812"
transform="matrix(-0.25169211,0.96780736,-0.96394053,-0.26611775,0,0)"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.00007;stroke-dasharray:6.00033, 6.00033;stroke-dashoffset:0;stroke-opacity:1"
id="ellipse4-2" />
<path
id="rect1-0"
style="fill:#ffffff;stroke:none;stroke-dasharray:6, 6;fill-opacity:1"
transform="rotate(104.99999)"
d="m -110.1425,-282.05223 183.538883,0.29498 -3.033288,163.51344 -174.799505,-0.83321 z"
sodipodi:nodetypes="ccccc" />
<path
style="baseline-shift:baseline;display:inline;overflow:visible;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.999995;stroke-dasharray:6, 6;stroke-dashoffset:0;stroke-opacity:1;enable-background:accumulate;stop-color:#000000"
d="m 207.64233,-1.1595051 a 81.877644,51.978142 14.84454 0 1 -65.60087,-71.2918789 81.877644,51.978142 14.84454 0 1 92.62308,-29.091416 81.877644,51.978142 14.84454 0 1 65.60088,71.291872 81.877644,51.978142 14.84454 0 1 -92.62309,29.0914229 z"
id="path1-0" />
<g
id="g7"
transform="matrix(0.63902778,0,0,0.63902778,59.969996,-43.573019)"
style="stroke-width:1.56488">
<g
id="shape-52808c91-ee87-8059-8007-0f133be402cb"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:6.72898405;stroke-opacity:1">
<g
class="fills"
id="fills-52808c91-ee87-8059-8007-0f133be402cb"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:6.72898405;stroke-opacity:1">
<rect
rx="0"
ry="0"
x="76.110184"
y="-1.2839383"
transform="rotate(104.99999,216.34401,120.71608)"
width="280.46768"
height="244"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:6.72898405;stroke-opacity:1"
id="rect1" />
</g>
</g>
<g
id="shape-52808c91-ee87-8059-8007-0f133be402cc"
style="fill:none;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0;stroke-opacity:1">
<g
class="fills"
id="fills-52808c91-ee87-8059-8007-0f133be402cc"
style="fill:none;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0;stroke-opacity:1">
<g
id="ellipse2"
style="opacity:1;fill:none;stroke-opacity:1;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0"
transform="rotate(104.99999,251.77914,-11.529559)">
<path
style="baseline-shift:baseline;display:inline;overflow:visible;vector-effect:none;enable-background:accumulate;stop-color:#000000;stop-opacity:1;fill:#ffffff;stroke-opacity:1;fill-opacity:1;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0"
d="m 329.53915,-11.529586 a 77.760002,122 0 0 1 -77.76001,121.999996 77.760002,122 0 0 1 -77.76,-121.999996 77.760002,122 0 0 1 77.76,-122.000004 77.760002,122 0 0 1 77.76001,122.000004 z"
id="path1" />
</g>
<g
id="ellipse2-7"
style="fill:none;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0;stroke-opacity:1"
transform="rotate(104.99999,252.97991,-13.094436)" />
</g>
<g
class="fills"
id="fills-52808c91-ee87-8059-8007-0f133be402cc-6"
style="fill:none;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0;stroke-opacity:1"
transform="translate(0,-3.1297544)" />
<g
id="strokes-f430270b-0cf6-8015-8007-91483f8a85da-52808c91-ee87-8059-8007-0f133be402cc"
class="strokes"
style="fill:none;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0;stroke-opacity:1" />
</g>
<g
id="shape-52808c91-ee87-8059-8007-0f133be402cd"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0;stroke-opacity:1">
<g
class="fills"
id="fills-52808c91-ee87-8059-8007-0f133be402cd"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0;stroke-opacity:1">
<ellipse
cx="180.22086"
cy="255.52959"
rx="77.760002"
ry="122"
transform="rotate(104.99999,180.22082,255.52959)"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.56488;stroke-dasharray:9.38928009,9.38928009;stroke-dashoffset:0;stroke-opacity:1"
id="ellipse4" />
</g>
</g>
<g
id="shape-52808c91-ee87-8059-8007-0f133be402ce"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.56239;stroke-dasharray:9.37438, 9.37438;stroke-dashoffset:0;stroke-opacity:1"
transform="matrix(1.003179,0,0,1,-1.0227586,0)">
<g
class="fills"
id="fills-52808c91-ee87-8059-8007-0f133be402ce"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.56239;stroke-dasharray:9.37438, 9.37438;stroke-dashoffset:0;stroke-opacity:1">
<rect
rx="0"
ry="0"
x="145.76228"
y="87.349953"
transform="rotate(104.99999,192.94994,208.02388)"
width="94.375381"
height="241.34782"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.56239;stroke-dasharray:9.37438, 9.37438;stroke-dashoffset:0;stroke-opacity:1"
id="rect6" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.8 KiB

@@ -0,0 +1,79 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-d8ccbdb6-0d67-80f5-8007-0f486309a42a"
viewBox="-31.943 -18.675 300.00001 299.99999"
fill="none"
stroke="#1642bc"
version="1.1"
sodipodi:docname="diamant.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs5" />
<sodipodi:namedview
id="namedview5"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="2.3117627"
inkscape:cx="125.01283"
inkscape:cy="175.19099"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="screenshot-d8ccbdb6-0d67-80f5-8007-0f486309a42a" />
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f486309a42b-4"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.946691;stroke-opacity:1"
transform="matrix(1.0414698,-0.17644525,0.17644525,1.0414698,-14.119976,-6.6135955)">
<path
d="M 194.34372,127.27941 63.900356,4.0450368 2.6562154,172.72058 133.09958,295.9552 194.34372,127.27941 v 0"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.896224;stroke-dasharray:5.68015, 5.68015;stroke-dashoffset:0;stroke-opacity:1"
id="path1-7" />
</g>
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f486309a42b"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1"
transform="rotate(-9.6157139,1.0632187,43.434858)">
<path
d="M 194.34372,127.27941 63.900356,4.0450368 2.6562154,172.72058 133.09958,295.9552 194.34372,127.27941 v 0"
style="fill:#ffffff;fill-opacity:1;stroke-dasharray:6, 6;stroke-dashoffset:0;stroke-opacity:1"
id="path1" />
</g>
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f486309a42c"
transform="rotate(-9.6157139,1.0632187,43.434858)"
style="stroke-dasharray:6, 6;stroke-dashoffset:0">
<path
d="m 64.296837,5.7176442 45.140133,123.5798458 24.4961,166.4602"
id="path2"
style="stroke-dasharray:6, 6;stroke-dashoffset:0" />
</g>
<g
id="strokes-2cdddd35-cea9-805d-8007-9147f4af12eb-d8ccbdb6-0d67-80f5-8007-0f486309a42d"
class="strokes"
transform="rotate(-9.6157139,1.0632187,43.434858)">
<g
class="stroke-shape"
id="g5">
<path
d="M 4.6205711,173.57971 110.0317,131.80676 l 83.57764,-3.91163"
style="fill:none;stroke-width:1;stroke-dasharray:6, 6;stroke-dashoffset:0;stroke-opacity:1"
id="path5" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

@@ -0,0 +1,79 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-d8ccbdb6-0d67-80f5-8007-0f3aa2a8cd91"
viewBox="1592 1007 300.00001 300.00001"
fill="none"
stroke="#1642bc"
version="1.1"
sodipodi:docname="infinite.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs2" />
<sodipodi:namedview
id="namedview2"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="2.5685376"
inkscape:cx="93.827711"
inkscape:cy="171.3037"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="shape-d8ccbdb6-0d67-80f5-8007-0f3aa2a8cd91" />
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3aa2a8cd91">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3aa2a8cd91-1"
style="stroke-width:0.694543;stroke-dasharray:0.694543, 0.694543;stroke-dashoffset:0;stroke-opacity:1;stroke:none;fill:#ff0000;fill-opacity:1"
transform="matrix(1.4397974,0,0,1.4397974,-719.79619,-420.63316)">
<path
d="m 1612.141,1133.6605 c -14.7687,-33.7845 12.1847,-73.2488 52.4028,-67.8611 13.2492,1.7752 24.2855,5.5822 38.16,11.5493 0.631,0.2712 0.8173,0.1404 1.061,-0.4517 8.9624,-21.7617 20.5348,-51.2915 55.3467,-54.8213 14.6506,-1.4856 27.8447,3.7232 37.7493,14.6395 33.1484,36.5354 2.5237,90.2544 -45.4198,82.3911 -12.0919,-1.9834 -21.0395,-5.6878 -35.0282,-11.7279 -0.7468,-0.3225 -0.953,-0.1489 -1.2345,0.5352 -6.5562,15.9272 -12.9624,31.0688 -25.7414,42.3296 -26.0049,22.915 -62.9037,16.1658 -77.2959,-16.5827 z m 22.9918,-7.9063 c 11.3443,18.0499 24.5453,17.301 39.2022,7.2173 9.7322,-6.723 15.1666,-19.9315 20.9012,-34.2515 0.1934,-0.4827 -0.052,-0.5459 -0.3702,-0.6673 -11.9401,-4.5493 -20.4865,-9.4427 -33.1875,-10.1739 -24.6164,-1.4173 -33.6809,20.1817 -26.5457,37.8754 z m 149.4226,-63.698 c -4.2136,-12.7749 -21.7635,-23.129 -37.3458,-12.0033 -12.2604,8.7539 -18.1173,22.364 -23.6802,36.246 -0.193,0.4815 0,0.5901 0.3802,0.7344 16.6674,6.3484 35.4697,16.1641 51.0375,6.3077 9.7048,-6.2502 13.8219,-18.51 9.6083,-31.2848 z"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.694543;stroke-dasharray:4.16725, 4.16725;stroke-dashoffset:0;stroke-opacity:1"
id="path1-5"
sodipodi:nodetypes="ccccccccccccccccczscccz" />
</g>
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3aa2a8cd91"
style="stroke-width:0.719491;stroke-dasharray:0.719491, 0.719491;stroke-dashoffset:0;stroke-opacity:1"
transform="matrix(1.3898722,0,0,1.3898722,-634.4535,-366.08988)">
<path
d="m 1610.8833,1134.1846 c -14.7687,-33.7845 12.4991,-72.9344 52.7172,-67.5467 13.2492,1.7752 26.0938,7.1809 39.9683,13.148 0.631,0.2712 0.8173,0.1404 1.061,-0.4517 8.9624,-21.7617 21.4516,-54.4624 56.2635,-57.9922 14.6506,-1.4856 27.2158,3.304 37.1204,14.2203 33.1484,36.5354 3.0478,90.3591 -44.8957,82.4958 -12.0919,-1.9834 -23.7912,-6.7624 -37.7799,-12.8025 -0.7468,-0.3225 -0.953,-0.1489 -1.2345,0.5352 -6.5562,15.9272 -13.5647,33.1916 -26.3437,44.4524 -26.0049,22.915 -62.4844,16.6899 -76.8766,-16.0586 z m 18.6932,-8.4304 c 9.0384,19.3076 27.9006,22.3068 42.5575,12.2231 12.6669,-8.7144 19.3014,-25.7669 25.036,-40.0869 0.1934,-0.4827 -0.052,-0.5459 -0.3702,-0.6673 -11.9401,-4.5493 -24.4117,-10.9721 -37.1127,-11.7033 -24.6164,-1.4173 -38.0843,20.9685 -30.1106,40.2344 z m 159.6901,-66.3953 c -8.4126,-18.7915 -27.6301,-23.0366 -43.2124,-11.9109 -12.2604,8.7539 -18.851,25.7205 -24.4139,39.6025 -0.193,0.4815 0,0.5901 0.3802,0.7344 16.6674,6.3484 38.1795,18.3396 56.0532,7.2254 11.9058,-7.4031 16.6516,-22.4085 11.1929,-35.6514 z"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.719491;stroke-dasharray:4.31694, 4.31694;stroke-dashoffset:0;stroke-opacity:1"
id="path1" />
</g>
<g
class="inner-stroke-shape"
id="g2"
transform="matrix(1.3898722,0,0,1.3898722,-634.4535,-366.08988)"
style="stroke-width:0.719491">
<defs
id="defs1">
<clipPath
id="inner-stroke-render-1-d8ccbdb6-0d67-80f5-8007-0f3aa2a8cd91-0">
<use
href="#stroke-shape-render-1-d8ccbdb6-0d67-80f5-8007-0f3aa2a8cd91-0"
id="use1" />
</clipPath>
<path
d="m 1610.8833,1134.1846 c -14.7687,-33.7845 12.4991,-72.9344 52.7172,-67.5467 13.2492,1.7752 26.0938,7.1809 39.9683,13.148 0.631,0.2712 0.8173,0.1404 1.061,-0.4517 8.9624,-21.7617 21.4516,-54.4624 56.2635,-57.9922 14.6506,-1.4856 27.2158,3.304 37.1204,14.2203 33.1484,36.5354 3.0478,90.3591 -44.8957,82.4958 -12.0919,-1.9834 -23.7912,-6.7624 -37.7799,-12.8025 -0.7468,-0.3225 -0.953,-0.1489 -1.2345,0.5352 -6.5562,15.9272 -13.5647,33.1916 -26.3437,44.4524 -26.0049,22.915 -62.4844,16.6899 -76.8766,-16.0586 z m 18.6932,-8.4304 c 9.0384,19.3076 27.9006,22.3068 42.5575,12.2231 12.6669,-8.7144 19.3014,-25.7669 25.036,-40.0869 0.1934,-0.4827 -0.052,-0.5459 -0.3702,-0.6673 -11.9401,-4.5493 -24.4117,-10.9721 -37.1127,-11.7033 -24.6164,-1.4173 -38.0843,20.9685 -30.1106,40.2344 z m 159.6901,-66.3953 c -8.4126,-18.7915 -27.6301,-23.0366 -43.2124,-11.9109 -12.2604,8.7539 -18.851,25.7205 -24.4139,39.6025 -0.193,0.4815 0,0.5901 0.3802,0.7344 16.6674,6.3484 38.1795,18.3396 56.0532,7.2254 11.9058,-7.4031 16.6516,-22.4085 11.1929,-35.6514 z"
id="stroke-shape-render-1-d8ccbdb6-0d67-80f5-8007-0f3aa2a8cd91-0"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" />
</defs>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.9 KiB

@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-d8ccbdb6-0d67-80f5-8007-0f3b08c23460"
viewBox="1220 3305 299.99999 300"
fill="none"
stroke="#1642bc"
version="1.1"
sodipodi:docname="pi.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs2" />
<sodipodi:namedview
id="namedview2"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="1.9600165"
inkscape:cx="153.57014"
inkscape:cy="233.67151"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="shape-d8ccbdb6-0d67-80f5-8007-0f3b08c23460" />
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b08c23460">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b08c23460-2"
style="fill:#ff2f2f;fill-opacity:1;stroke-width:1.0518;stroke-dasharray:6.3108, 6.3108;stroke-dashoffset:0;stroke-opacity:1;stroke:none"
transform="matrix(0.98756388,0,0,0.91530799,-2.0972688,284.37133)">
<path
d="m 1391.8722,3499.2532 c 17.6236,-53.065 25.1704,-83.0335 32.2181,-104.3948 l -55.4806,-20.4946 -58.5197,194.0049 -40.6962,-15.0188 59.7597,-192.8186 -38.2911,-13.5552 13.7178,-42.1427 210.2561,74.9849 -13.7331,42.7768 -37.1617,-12.9961 -32.0199,103.3444 c 0,0 -5.9628,21.6096 4.989,41.5026 12.1043,21.9849 32.6302,26.2533 32.6302,26.2533 l -12.2805,39.0482 c 0,0 -6.5854,-2.8555 -18.1949,-6.7115 -18.8872,-6.2729 -36.2335,-33.3227 -43.5005,-50.0124 -10.7454,-24.1812 -9.077,-47.5585 -3.6927,-63.7704 z"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.0518;stroke-dasharray:6.3108, 6.3108;stroke-dashoffset:0;stroke-opacity:1"
id="path1-7"
sodipodi:nodetypes="cccccccccccccccccc" />
</g>
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b08c23460"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.1176;stroke-dasharray:6.70558, 6.70558;stroke-dashoffset:0;stroke-opacity:1"
transform="matrix(0.8947766,0,0,0.8947766,127.10472,355.4647)">
<path
d="m 1397.8412,3563.5229 c -10.8759,-23.4223 -8.2047,-46.956 -2.8204,-63.1679 17.6236,-53.065 29.0848,-87.7161 36.1325,-109.0774 l -66.6282,-22.0554 -65.0722,196.5757 -37.6327,-12.5398 65.0476,-196.5015 -41.6288,-13.78 12.5759,-37.7422 225.2723,74.5703 -12.576,37.7422 -41.7519,-13.8208 -36.1391,109.2173 c 0,0 -6.5218,22.749 4.43,42.642 12.1043,21.9849 37.1178,29.5455 37.1178,29.5455 l -11.2166,34.9677 c 0,0 -7.316,-2.9477 -18.9255,-6.8037 -18.8872,-6.2729 -38.7871,-33.8413 -46.1847,-49.772"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.1176;stroke-dasharray:6.70558, 6.70558;stroke-dashoffset:0;stroke-opacity:1"
id="path1" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

@@ -0,0 +1,137 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-d8ccbdb6-0d67-80f5-8007-0f3a77a9213a"
viewBox="0 0 300 300"
fill="none"
stroke="#1642bc"
version="1.1"
sodipodi:docname="prct.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs6" />
<sodipodi:namedview
id="namedview6"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="2.103479"
inkscape:cx="136.91603"
inkscape:cy="155.93215"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="shape-d8ccbdb6-0d67-80f5-8007-0f3a77a9213a" />
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3a77a9213a"
rx="0"
ry="0"
transform="translate(6,10)">
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3a77a9213d-8"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.932566;stroke-dasharray:5.5954, 5.5954;stroke-dashoffset:0;stroke-opacity:1"
transform="matrix(1.0723101,0,0,1.0723101,-10.021936,-9.9743079)">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3a77a9213d-7"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.869679;stroke-dasharray:5.5954, 5.5954;stroke-dashoffset:0;stroke-opacity:1">
<rect
rx="0"
ry="0"
x="-17.165621"
y="110.1659"
transform="matrix(0.706771,-0.707443,0.706771,0.707443,-56.849936,138.40387)"
width="311.86322"
height="55.205261"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.932566;stroke-dasharray:5.5954, 5.5954;stroke-dashoffset:0;stroke-opacity:1"
id="rect4-9" />
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3a77a9213b-9"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.924827;stroke-dasharray:5.54896, 5.54896;stroke-dashoffset:0;stroke-opacity:1;stroke:none"
transform="matrix(1.0812832,0,0,1.0812832,-4.749514,-4.7540289)">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3a77a9213b-3"
style="fill:#ffffff;fill-opacity:1;stroke-width:0.924827;stroke-dasharray:5.54896, 5.54896;stroke-dashoffset:0;stroke-opacity:1;stroke:none">
<path
d="m 58.431641,0 c 32.249387,0 58.431759,26.207275 58.431759,58.487305 0,32.279907 -26.182372,58.487185 -58.431759,58.487185 C 26.182373,116.97449 1.134711e-7,90.767212 1.134711e-7,58.487305 1.1347111e-7,26.207275 26.182373,0 58.431641,0 M 34.764782,58.487305 c 0,13.0724 10.950557,23.694568 23.666859,23.694568 12.716302,0 23.666983,-12.581994 23.666983,-23.694568 0,-11.112574 -8.777002,-23.694691 -23.666983,-23.694691 -14.889981,0 -23.666859,10.622291 -23.666859,23.694691 z"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.924827;stroke-dasharray:5.54896, 5.54896;stroke-dashoffset:0;stroke-opacity:1"
id="path1-6"
sodipodi:nodetypes="csssczzzzz" />
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3a77a9213b-9-6"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.924827;stroke-dasharray:5.54896, 5.54896;stroke-dashoffset:0;stroke-opacity:1"
transform="matrix(1.0812832,0,0,1.0812832,167.63757,157.7101)">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3a77a9213b-3-2"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.924827;stroke-dasharray:5.54896, 5.54896;stroke-dashoffset:0;stroke-opacity:1">
<path
d="m 58.431641,0 c 32.249387,0 58.431759,26.207275 58.431759,58.487305 0,32.279907 -26.182372,58.487185 -58.431759,58.487185 C 26.182373,116.97449 1.134711e-7,90.767212 1.134711e-7,58.487305 1.1347111e-7,26.207275 26.182373,0 58.431641,0 M 34.764782,58.487305 c 0,13.0724 10.950557,23.694568 23.666859,23.694568 12.716302,0 23.666983,-12.581994 23.666983,-23.694568 0,-11.112574 -8.777002,-23.694691 -23.666983,-23.694691 -14.889981,0 -23.666859,10.622291 -23.666859,23.694691 z"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.924827;stroke-dasharray:5.54896, 5.54896;stroke-dashoffset:0;stroke-opacity:1"
id="path1-6-6"
sodipodi:nodetypes="csssczzzzz" />
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3a77a9213b"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:6, 6;stroke-dashoffset:0">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3a77a9213b"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:6, 6;stroke-dashoffset:0">
<path
d="M 58.431641,0 C 90.68103,0 116.8634,26.207275 116.8634,58.487305 c 0,32.279907 -26.18237,58.487185 -58.431759,58.487185 C 26.182373,116.97449 0,90.767212 0,58.487305 0,26.207275 26.182373,0 58.431641,0 m 0,29.243652 c -16.124634,0 -29.215821,13.103638 -29.215821,29.243653 0,16.139892 13.091187,29.24353 29.215821,29.24353 16.124755,0 29.215942,-13.103638 29.215942,-29.24353 0,-16.140015 -13.091187,-29.243653 -29.215942,-29.243653"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:6, 6;stroke-dashoffset:0"
id="path1" />
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3a77a9213c"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:6, 6;stroke-dashoffset:0">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3a77a9213c"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:6, 6;stroke-dashoffset:0">
<path
d="M 230.56836,162.02551 C 262.81763,162.02551 289,188.23279 289,220.5127 289,252.79272 262.81763,279 230.56836,279 c -32.24939,0 -58.43176,-26.20728 -58.43176,-58.4873 0,-32.27991 26.18237,-58.48719 58.43176,-58.48719 m 0,29.24366 c -16.12476,0 -29.21594,13.10363 -29.21594,29.24353 0,16.14001 13.09118,29.24365 29.21594,29.24365 16.12463,0 29.21582,-13.10364 29.21582,-29.24365 0,-16.1399 -13.09119,-29.24353 -29.21582,-29.24353"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:6, 6;stroke-dashoffset:0"
id="path2" />
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3a77a9213d"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:6, 6;stroke-dashoffset:0">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3a77a9213d"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:6, 6;stroke-dashoffset:0">
<rect
rx="0"
ry="0"
x="-23.747015"
y="114.23817"
transform="matrix(0.706771,-0.707443,0.706771,0.707443,-56.849936,138.40387)"
width="324.6871"
height="47.399578"
style="fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:5.99999882, 5.99999882;stroke-dashoffset:0"
id="rect4" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 7.3 KiB

@@ -0,0 +1,190 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-86032aec-245b-8085-8006-fcc8db0f2a47"
viewBox="166 965.643 299.99999 300.00001"
fill="none"
stroke="#1642bc"
version="1.1"
sodipodi:docname="pyramide.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs2"><clipPath
id="inner-stroke-render-2-86032aec-245b-8085-8006-fcc8db0f2a47-0-0"><use
href="#stroke-shape-render-2-86032aec-245b-8085-8006-fcc8db0f2a47-0-2"
id="use1-6" /></clipPath><clipPath
id="clipPath2"><use
href="#stroke-shape-render-2-86032aec-245b-8085-8006-fcc8db0f2a47-0-2"
id="use2-0" /></clipPath><path
d="M 458.56934,965.64209 633.07031,1475.6133 283.56299,1409.3257 458.56934,965.64209"
id="stroke-shape-render-2-86032aec-245b-8085-8006-fcc8db0f2a47-0-2"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /><clipPath
id="inner-stroke-render-1-86032aec-245b-8085-8006-fcc8db0f2a46-0-7"><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="use1-5"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></clipPath><clipPath
id="clipPath5"><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="use5"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></clipPath><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path5"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /><clipPath
id="inner-stroke-render-1-86032aec-245b-8085-8006-fcc8db0f2a47-0"><use
href="#stroke-shape-render-1-86032aec-245b-8085-8006-fcc8db0f2a47-0"
id="use1" /></clipPath><path
d="M 458.56934,965.64209 633.07031,1475.6133 283.56299,1409.3257 458.56934,965.64209"
id="stroke-shape-render-1-86032aec-245b-8085-8006-fcc8db0f2a47-0"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /><clipPath
id="clipPath4-7"><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="use4-0"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></clipPath><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path4-9"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /><clipPath
id="clipPath6-9"><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path6-2"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></clipPath><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path7-2"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /><clipPath
id="clipPath4-3"><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="use4-1"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></clipPath><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path4-94"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></defs><sodipodi:namedview
id="namedview2"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="1.9819577"
inkscape:cx="142.78812"
inkscape:cy="168.0157"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="screenshot-86032aec-245b-8085-8006-fcc8db0f2a47"
showgrid="false"><inkscape:grid
id="grid1"
units="px"
originx="0"
originy="0"
spacingx="0.99999998"
spacingy="1"
empcolor="#3f3fff"
empopacity="0.25098039"
color="#3f3fff"
opacity="0.1254902"
empspacing="5"
enabled="true"
visible="false" /></sodipodi:namedview><g
id="shape-86032aec-245b-8085-8006-fcc8db0f2a46-5-7"
transform="matrix(0.50472229,0,0,0.50472229,25.141452,503.24977)"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.933302;stroke-dasharray:11.8878, 11.8878;stroke-dashoffset:0;stroke-opacity:1"><g
class="fills"
id="fills-86032aec-245b-8085-8006-fcc8db0f2a46-6-3"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.933302;stroke-dasharray:11.8878, 11.8878;stroke-dashoffset:0;stroke-opacity:1" /><g
id="strokes-810b715b-abb2-8072-8007-9122d962ac84-86032aec-245b-8085-8006-fcc8db0f2a46-9-6"
class="strokes"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.933302;stroke-dasharray:11.8878, 11.8878;stroke-dashoffset:0;stroke-opacity:1"><g
class="inner-stroke-shape"
id="g2-1-12"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.933302;stroke-dasharray:11.8878, 11.8878;stroke-dashoffset:0;stroke-opacity:1"><defs
id="defs2-2-9"><clipPath
id="clipPath3"><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path3"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></clipPath><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path8"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></defs><path
d="M 637.80993,1469.3666 867.33203,1209.5723 466.85047,971.94563 Z"
id="use3-3-7"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.933302;stroke-dasharray:11.8878, 11.8878;stroke-dashoffset:0;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g></g></g><g
id="shape-86032aec-245b-8085-8006-fcc8db0f2a46-5-6-0"
transform="matrix(0.49798409,0,0,0.49798409,34.211855,510.13475)"
style="fill:#ff0e0e;fill-opacity:1;stroke:none;stroke-width:0.945931;stroke-dasharray:12.0486, 12.0486;stroke-dashoffset:0;stroke-opacity:1"><g
class="fills"
id="fills-86032aec-245b-8085-8006-fcc8db0f2a46-6-2-2"
style="fill:#ff0e0e;fill-opacity:1;stroke:none;stroke-width:0.945931;stroke-dasharray:12.0486, 12.0486;stroke-dashoffset:0;stroke-opacity:1" /><g
id="strokes-810b715b-abb2-8072-8007-9122d962ac84-86032aec-245b-8085-8006-fcc8db0f2a46-9-9-3"
class="strokes"
style="fill:#ff0e0e;fill-opacity:1;stroke:none;stroke-width:0.945931;stroke-dasharray:12.0486, 12.0486;stroke-dashoffset:0;stroke-opacity:1"><g
class="inner-stroke-shape"
id="g2-1-1-7"
style="fill:#ff0e0e;fill-opacity:1;stroke:none;stroke-width:0.945931;stroke-dasharray:12.0486, 12.0486;stroke-dashoffset:0;stroke-opacity:1"><defs
id="defs2-2-2-5"><clipPath
id="clipPath1"><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path1"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></clipPath><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path2"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></defs><path
d="M 628.22586,1475.4228 282.19172,1409.7943 454.95316,971.27128 Z"
id="use3-3-3-8"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.945931;stroke-dasharray:12.0486, 12.0486;stroke-dashoffset:0;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g></g></g><g
id="shape-86032aec-245b-8085-8006-fcc8db0f2a46-5"
transform="matrix(0.47105857,0,0,0.47105857,47.435811,544.35641)"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-opacity:1;stroke-dasharray:12.73726987,12.73726987;stroke-dashoffset:0"><g
class="fills"
id="fills-86032aec-245b-8085-8006-fcc8db0f2a46-6"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-opacity:1;stroke-dasharray:12.73726987,12.73726987;stroke-dashoffset:0" /><g
id="strokes-810b715b-abb2-8072-8007-9122d962ac84-86032aec-245b-8085-8006-fcc8db0f2a46-9"
class="strokes"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-opacity:1;stroke-dasharray:12.73726987,12.73726987;stroke-dashoffset:0"><g
class="inner-stroke-shape"
id="g2-1"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-opacity:1;stroke-dasharray:12.73726987,12.73726987;stroke-dashoffset:0"><defs
id="defs2-2"><clipPath
id="clipPath4"><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="use4"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></clipPath><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path4"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></defs><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="use3-3"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-dasharray:12.73726987,12.73726987;stroke-opacity:1;stroke-dashoffset:0" /></g></g></g><g
id="shape-86032aec-245b-8085-8006-fcc8db0f2a46-5-6"
transform="matrix(0.47105857,0,0,0.47105857,47.435811,544.35641)"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-opacity:1;stroke-dasharray:12.73726987,12.73726987;stroke-dashoffset:0"><g
class="fills"
id="fills-86032aec-245b-8085-8006-fcc8db0f2a46-6-2"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-opacity:1;stroke-dasharray:12.73726987,12.73726987;stroke-dashoffset:0" /><g
id="strokes-810b715b-abb2-8072-8007-9122d962ac84-86032aec-245b-8085-8006-fcc8db0f2a46-9-9"
class="strokes"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-opacity:1;stroke-dasharray:12.73726987,12.73726987;stroke-dashoffset:0"><g
class="inner-stroke-shape"
id="g2-1-1"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-opacity:1;stroke-dasharray:12.73726987,12.73726987;stroke-dashoffset:0"><defs
id="defs2-2-2"><clipPath
id="clipPath6"><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path6"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></clipPath><path
d="m 457.20117,966.11035 174.5,509.97165 235.63086,-266.5097 -410.13086,-243.46195"
id="path7"
style="fill:none;stroke-width:2;stroke-dasharray:11, 11;stroke-opacity:1" /></defs><path
d="m 457.20117,966.11035 174.5,509.97165 -349.50945,-66.2877 175.00945,-443.68395"
id="use3-3-3"
style="fill:#ffffff;fill-opacity:1;stroke-width:1;stroke-dasharray:12.73726987,12.73726987;stroke-opacity:1;stroke-dashoffset:0"
sodipodi:nodetypes="cccc" /></g></g></g></svg>

After

Width:  |  Height:  |  Size: 12 KiB

@@ -0,0 +1,110 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="300"
height="300"
id="screenshot-d8ccbdb6-0d67-80f5-8007-0f3b52c5e036"
viewBox="-62.985 -37.071 299.99999 300"
fill="none"
stroke="#1642bc"
version="1.1"
sodipodi:docname="supeg.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs4" />
<sodipodi:namedview
id="namedview4"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="1.7551409"
inkscape:cx="129.9041"
inkscape:cy="103.12562"
inkscape:window-width="1920"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="shape-d8ccbdb6-0d67-80f5-8007-0f3b52c5e036" />
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b52c5e036"
rx="0"
ry="0"
transform="matrix(0.73349108,0,0,0.73349108,-6.6202387,-66.156305)"
style="stroke-width:1.36334">
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b52c5e037-6"
style="fill:#ff1212;fill-opacity:1;stroke:none;stroke-width:1.27195;stroke-dasharray:7.63172, 7.63172;stroke-dashoffset:0;stroke-opacity:1"
transform="matrix(1.0718495,0,0,1.0718495,-1.7809909,-11.68862)">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b52c5e037-1"
style="fill:#ff1212;fill-opacity:1;stroke:none;stroke-width:1.27195;stroke-dasharray:7.63172, 7.63172;stroke-dashoffset:0;stroke-opacity:1">
<path
d="M 148.16305,149.87917 -48.292658,115.63447 -37.184612,53.382702 225.21708,98.511044 239.86221,139.39643 68.648814,345.48559 20.091434,303.86773 Z"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.27195;stroke-dasharray:7.63172, 7.63172;stroke-dashoffset:0;stroke-opacity:1"
id="path1-0"
sodipodi:nodetypes="cccccccc" />
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b52c5e038-4"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.28096;stroke-dasharray:7.68579, 7.68579;stroke-dashoffset:0;stroke-opacity:1"
transform="matrix(1.0643103,0,0,1.0643103,-12.411192,-19.893022)">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b52c5e038-5"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.28096;stroke-dasharray:7.68579, 7.68579;stroke-dashoffset:0;stroke-opacity:1">
<rect
rx="0"
ry="0"
x="58.878471"
y="278.99475"
transform="matrix(0.636637,-0.771164,-0.76991,-0.638152,308.28052,655.55371)"
width="268.52777"
height="61.363148"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.28096;stroke-dasharray:7.68579, 7.68579;stroke-dashoffset:0;stroke-opacity:1"
id="rect2-0" />
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b52c5e037"
style="stroke-width:1.3633431;fill:#ffffff;fill-opacity:1;stroke-opacity:1;opacity:1;stroke-dasharray:8.18005871,8.18005871;stroke-dashoffset:0">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b52c5e037"
style="stroke-width:1.3633431;fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:8.18005871,8.18005871;stroke-dashoffset:0">
<path
d="M 29.890766,312.68713 168.84407,144.37196 -46.326336,107.76918 -37.184612,53.382702 233.33333,99.400772 234.52187,99.363419 247.70168,135.4767 72.350784,347.88098 29.890766,312.68713"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.3633431;stroke-opacity:1;stroke-dasharray:8.18005871,8.18005871;stroke-dashoffset:0"
id="path1" />
</g>
</g>
<g
id="shape-d8ccbdb6-0d67-80f5-8007-0f3b52c5e038"
style="stroke-width:1.3633431;fill:#ffffff;fill-opacity:1;stroke-opacity:1;opacity:1;stroke-dasharray:8.18005871,8.18005871;stroke-dashoffset:0">
<g
class="fills"
id="fills-d8ccbdb6-0d67-80f5-8007-0f3b52c5e038"
style="stroke-width:1.3633431;fill:#ffffff;fill-opacity:1;stroke-opacity:1;stroke-dasharray:8.18005871,8.18005871;stroke-dashoffset:0">
<rect
rx="0"
ry="0"
x="55.272293"
y="281.75412"
transform="matrix(0.636637,-0.771164,-0.76991,-0.638152,308.28052,655.55371)"
width="275.43353"
height="55.149281"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.36334443;stroke-opacity:1;stroke-dasharray:8.18006669,8.18006669;stroke-dashoffset:0"
id="rect2" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.9 KiB

@@ -7,7 +7,7 @@
viewBox="0 0 21.166666 21.166666"
version="1.1"
id="svg1"
inkscape:version="1.4.2 (ebf0e940d0, 2025-05-08)"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
sodipodi:docname="grid_0.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
@@ -23,11 +23,11 @@
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="px"
inkscape:zoom="4.094343"
inkscape:cx="51.29028"
inkscape:cy="56.175068"
inkscape:zoom="10.502538"
inkscape:cx="49.083373"
inkscape:cy="53.034799"
inkscape:window-width="1920"
inkscape:window-height="1149"
inkscape:window-height="1029"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
@@ -40,11 +40,11 @@
id="layer1">
<path
style="fill:none;fill-rule:evenodd;stroke:#afbeea;stroke-width:0.264584px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 21.034375,1.3229166 V 19.84375"
d="M 20.769791,1.3229166 V 19.84375"
id="path1" />
<path
style="fill:none;fill-rule:evenodd;stroke:#afbeea;stroke-width:0.264584px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 1.3229167,21.034375 H 19.84375"
d="M 1.3229167,20.769791 H 19.84375"
id="path1-3" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg fill="#000000" height="800px" width="800px" version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
viewBox="0 0 512 512" xml:space="preserve">
<g>
<path d="M497.938,430.063l-126.914-126.91C389.287,272.988,400,237.762,400,200C400,89.719,310.281,0,200,0
C89.719,0,0,89.719,0,200c0,110.281,89.719,200,200,200c37.762,0,72.984-10.711,103.148-28.973l126.914,126.91
C439.438,507.313,451.719,512,464,512c12.281,0,24.563-4.688,33.938-14.063C516.688,479.195,516.688,448.805,497.938,430.063z
M64,200c0-74.992,61.016-136,136-136s136,61.008,136,136s-61.016,136-136,136S64,274.992,64,200z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 878 B

+279 -28
View File
@@ -1,8 +1,8 @@
import { createApp } from 'vue'
// import { createApp } from 'vue'
import '../scss/main.scss'
import Content from './vuejs/Content.vue'
// import Content from './vuejs/Content.vue'
import REST from './api/rest-axios'
// import REST from './api/rest-axios'
// import LocomotiveScroll from 'locomotive-scroll';
// const scroll = new LocomotiveScroll();
@@ -35,7 +35,7 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
console.log('drupalSettings', drupalSettings)
// liste forme file names
const formesclasses = [
const _formesclasses = [
'pyramide',
'prct',
'infinite',
@@ -48,8 +48,15 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
'cylindre'
]
let sizes = [];
// let _sizes = [];
let _cardsForms = [];
let smoother = null;
// let fn_modale;
// let mouse_pos = {x:0,y:0};
// ___ _ _
// |_ _|_ _ (_) |_
@@ -59,8 +66,10 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
console.log('MathalloTheme init()')
initBurgerMenu();
initPartieFrontBackCardSwitch();
initHome();
initBgFormes();
initBgAnime();
initFootnotes();
// initVues()
}
@@ -93,17 +102,38 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
}
function onWindowResize() {
_cardsForms.forEach(({card, forme, formepos}) => {
// console.log(`card`, card, 'forme', forme, 'formepos', formepos);
forme.style.top = `${card.offsetTop + formepos.top}px`;
forme.style.left = `${card.offsetLeft + formepos.left}px`;
})
}
function initHome(){
let ps = document.querySelectorAll('article[role="home-presentation"] p');
let used_n = [];
for (const p of ps) {
let n = Math.round(Math.random() * (_formesclasses.length -1));
while (used_n.includes(n)) {
n = Math.round(Math.random() * (_formesclasses.length -1));
}
used_n.push(n);
p.classList.add(`forme-${_formesclasses[n]}`);
}
}
async function initBgFormes(){
const container = document.querySelector('main[role="main"] > .layout-content > .wrapper');
// console.log('container', container);
// listes all available sizes
// listes all available _sizes
// let min = 150;
// let increment = Math.round((350 / (formesclasses.length -1)));
// for (let i = 0; i < formesclasses.length; i++) {
// sizes.push( min + increment * i)
// let increment = Math.round((350 / (_formesclasses.length -1)));
// for (let i = 0; i < _formesclasses.length; i++) {
// _sizes.push( min + increment * i)
// }
// console.log('sizes', sizes);
// console.log('_sizes', _sizes);
let cards = document.querySelectorAll('article[role="home-presentation"], .field-card, .node-type-chapitre, .node-type-partie');
// console.log('cards', cards);
@@ -111,20 +141,47 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
let oddeven=1;
for (const card of cards) {
// console.log('card', card);
let cardFormObject = {
card: card
};
// random forme
// avoid duplicated formes
let n = Math.round(Math.random() * (formesclasses.length -1));
let n = Math.round(Math.random() * (_formesclasses.length -1));
while (used_n.includes(n)) {
n = Math.round(Math.random() * (formesclasses.length -1));
n = Math.round(Math.random() * (_formesclasses.length -1));
}
used_n.push(n);
// console.log('n',n, 'class', formesclasses[n]);
// console.log('n',n, 'class', _formesclasses[n]);
let forme = await createForme(card, n);
container.prepend(forme);
// register forme
cardFormObject.forme = forme;
// register relative position of forme against card
cardFormObject.formepos = {
left: forme.offsetLeft - card.offsetLeft,
top: forme.offsetTop - card.offsetTop
}
// register cards and formes
_cardsForms.push(cardFormObject);
// console.log('_cardsForms', _cardsForms);
// create GSAP animations
createGsapAnims(card, forme, oddeven);
// inverse oddeven
oddeven*=-1;
}
window.addEventListener('resize', onWindowResize);
}
function createGsapAnims(card, forme, oddeven){
// Snap au centre de la fenêtre pour la card en utilisant le plugin Snap de GSAP
// ScrollTrigger.create({
// trigger: document.querySelector('.partie-principes-pratique'),
@@ -208,9 +265,6 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
duration: 0.1
}, 0.7); // Juste après le centre
// inverse oddeven
oddeven*=-1;
}
}
async function createForme(card, n){
@@ -218,10 +272,11 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
forme.classList.add('bg-forme');
// forme.classList.add(formesclasses[n]);
// forme.classList.add(_formesclasses[n]);
// inject svg from file
const response = await fetch(`/themes/custom/mathallo/assets/img/formes/${formesclasses[n]}.svg`)
// const response = await fetch(`/themes/custom/mathallo/assets/img/formes/${_formesclasses[n]}.svg`)
const response = await fetch(`/themes/custom/mathallo/assets/img/formes/bordure/${_formesclasses[n]}.svg`)
const svgText = await response.text();
forme.innerHTML = svgText;
@@ -232,7 +287,7 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
let wh = 200 + Math.random()*300;
// OR
// pic a size
// let wh = sizes.splice(Math.floor(Math.random() * sizes.length), 1)[0];
// let wh = _sizes.splice(Math.floor(Math.random() * _sizes.length), 1)[0];
// record the original scale for stroke width rescalling
const init_wh = svgNode.getAttribute('width');
// set the new size
@@ -264,10 +319,10 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
let randoffset = 20 + Math.random() * 20;
// left right
if (card.classList.contains('field-principes-reflexion')) {
if (card.classList.contains('field-principes-reflexion') || card.classList.contains('field-ressources')) {
// left
forme.style.left = `${card.offsetLeft - wh + randoffset}px`;
} else if(card.classList.contains('field-en-pratique')) {
} else if(card.classList.contains('field-en-pratique') || card.classList.contains('field-plus-loin')) {
// right
forme.style.left = `${card.offsetLeft + card.clientWidth - randoffset}px`;
} else {
@@ -280,24 +335,220 @@ gsap.registerPlugin(ScrollTrigger, ScrollSmoother);
}
function initBgAnime(){
gsap.to('body', {
scrollTrigger: 'main[role="main"]', // start animation when ".box" enters the viewport
backgroundPositionY: 10
});
// gsap.to('body', {
// scrollTrigger: 'main[role="main"]', // start animation when ".box" enters the viewport
// backgroundPositionY: 10
// });
ScrollSmoother.create({
smooth: 1, // how long (in seconds) it takes to "catch up" to the native scroll position
smoother = ScrollSmoother.create({
smooth: 3, // how long (in seconds) it takes to "catch up" to the native scroll position
effects: true, // looks for data-speed and data-lag attributes on elements
smoothTouch: 0.1, // much shorter smoothing time on touch devices (default is NO smoothing on touch devices)
wrapper: 'main[role="main"]',
content: 'main[role="main"]>.layout-content'
content: 'main[role="main"]>.layout-content',
onUpdate: onUpdateSmoother
});
console.log('smoother', smoother);
gsap.to('#parallax-bg', {
y: (i, target) => -(ScrollTrigger.maxScroll(window) * 1.2),
ease: "none",
scrollTrigger: {
trigger: 'main[role="main"] > .layout-content > .wrapper',
start: "top bottom",
end: "bottom top",
scrub: true,
invalidateOnRefresh: true
}
});
}
function onUpdateSmoother(sm){
// console.log('onUpdateSmoother', sm);
// let content = sm.content();
// updateFnModalePos();
}
function initFootnotes(){
let fns = document.querySelectorAll('.footnote__citation');
// console.log('fns', fns);
let used_n = [];
for (const fn of fns) {
console.log('fn', fn);
// set a random class for icone
let n = Math.round(Math.random() * (_formesclasses.length -1));
while (used_n.includes(n)) {
n = Math.round(Math.random() * (_formesclasses.length -1));
}
used_n.push(n);
fn.querySelector('span.footnote-link').classList.add(`forme-${_formesclasses[n]}`);
// events
// fn.addEventListener('mouseenter', onMouseEnterFN);
// fn.addEventListener('mouseleave', onMouseLeaveFN);
// fn.addEventListener('mousemove', onMouseMove);
fn.addEventListener('click', onClickFootnote);
}
// window.addEventListener('mousemove', onMouseMove);
}
// function onMouseEnterFN(event){
// console.log('onMouseEnterFN, event:', event);
// fn_modale.innerHTML = event.target.querySelector('.footnote-content').innerHTML;
// fn_modale.classList.add('visible');
// // fn_modale.style.left = `${event.clientX}px`;
// // fn_modale.style.top = `${event.clientY}px`;
// }
// function onMouseLeaveFN(event){
// console.log('onMouseLeaveFN, event:', event);
// fn_modale.classList.remove('visible');
// setTimeout(function(){
// fn_modale.innerHTML = "";
// }, 1000);
// // fn_modale.style.left = `${event.clientX}px`;
// // fn_modale.style.top = `${event.clientY}px`;
// }
function onClickFootnote(event){
event.preventDefault();
event.stopPropagation();
console.log('onClickFN, event:', event);
let fn = event.currentTarget;
let container = fn.offsetParent;
removeModals();
let fn_modale = document.createElement('div');
fn_modale.classList.add('fn-modale');
container.append(fn_modale);
fn_modale.innerHTML = fn.querySelector('.footnote-content').innerHTML;
// contraintes de taille
let decalage = 20;
let maxW = container.clientWidth * 2 / 3;
let maxH = window.innerHeight * 0.3;
fn_modale.style.maxWidth = `${maxW}px`;
fn_modale.style.maxHeight = `${maxH}px`;
fn_modale.style.overflowY = 'auto';
// mesurer la modale (offsetWidth/Height force le layout)
let modW = fn_modale.offsetWidth;
let modH = fn_modale.offsetHeight;
// position de la footnote dans le container
let fnL = fn.offsetLeft;
let fnT = fn.offsetTop;
let fnW = fn.offsetWidth;
let fnH = fn.offsetHeight;
let contW = container.clientWidth;
let contH = container.clientHeight;
let left, top;
// horizontal : droite si on est a gauche, gauche si on est a droite
if (fnL + fnW / 2 > contW / 2) {
// cote droit → modale a gauche de la footnote
left = fnL - modW - decalage;
if (left < decalage) left = decalage;
} else {
// cote gauche → modale a droite de la footnote
left = fnL + fnW + decalage;
if (left + modW > contW - decalage) left = contW - modW - decalage;
}
// vertical : bas si on est en haut, haut si on est en bas
if (fnT + fnH / 2 > contH / 2) {
// bas → modale au-dessus de la footnote
top = fnT - modH - decalage;
if (top < decalage) top = decalage;
} else {
// haut → modale en-dessous de la footnote
top = fnT + fnH + decalage;
if (top + modH > contH - decalage) top = contH - modH - decalage;
}
fn_modale.style.left = `${left}px`;
fn_modale.style.top = `${top}px`;
fn_modale.classList.add('visible');
container.addEventListener('click', onClickFNParent);
}
function onClickFNParent(event) {
console.log('onClickFNParent, event:', event);
removeModals();
event.target.removeEventListener('click', onClickFNParent);
}
function removeModals(){
let fn_modales = document.querySelectorAll('div.fn-modale');
for (const fnm of fn_modales) {
fnm.remove();
}
}
// function onMouseMove(event){
// // console.log('onMouseMove, event:', event);
// mouse_pos = {
// x:event.clientX,
// y:event.clientY
// }
// // updateFnModalePos();
// }
// function updateFnModalePos(){
// if (smoother) {
// let cont = smoother.content();
// console.log('cont', cont);
// let rect = cont.getBoundingClientRect();
// // console.log(`mouse_pos.x=${mouse_pos.x} | window.innerWidth/2=${window.innerWidth/2}`);
// let compensed_mouse_pos = {
// x: mouse_pos.x - rect.left,
// y: mouse_pos.y - rect.top + cont.offsetTop
// }
// let decalage = 20;
// if (mouse_pos.x < window.innerWidth/2) {
// fn_modale.style.left = `${compensed_mouse_pos.x + decalage}px`;
// }else{
// fn_modale.style.left = `${compensed_mouse_pos.x - fn_modale.clientWidth - decalage}px`;
// }
// // let componsed_mouse_posy = mouse_pos.y - rect.top + 370;
// if (mouse_pos.y < window.innerHeight / 2) {
// // fn_modale.style.top = `${componsed_mouse_posy - fn_modale.clientHeight + 60}px`;
// fn_modale.style.top = `${compensed_mouse_pos.y + decalage}px`
// } else{
// // fn_modale.style.top = `${componsed_mouse_posy - 60}px`;
// fn_modale.style.top = `${compensed_mouse_pos.y - fn_modale.clientHeight - decalage}px`
// }
// console.log('window', window);
// } else{
// console.warn('no smoother');
// }
// }
// function initVues(){
// console.log('initVues');
@@ -1,6 +1,7 @@
@import "partials/colors";
@import "partials/fonts";
@import "partials/mixins";
@import "wysiwyg";
a, a:visited{
text-decoration: none;
@@ -10,9 +11,6 @@ a, a:visited{
body{
margin: 0;
background-image: url('/themes/custom/mathallo/assets/img/grid_0.svg');
background-repeat: repeat;
background-position: center;
}
$header_height: 50px;
@@ -86,6 +84,36 @@ header[role="banner"]{
form{
display: flex;
align-items: baseline;
background-color: #ddd;
padding: 0.2em 0.5em;
border-radius: 1em;
input.form-search{
background-color: #ddd;
border: none;
outline: none;
&:focus{
outline: none;
}
}
input.form-submit{
-webkit-appearance: none;
appearance: none;
background-color: $bleu_typo;
border: none;
width: 1em;
height: 1em;
cursor: pointer;
-webkit-mask-image: url('/themes/custom/mathallo/assets/img/loupe.svg');
mask-image: url('/themes/custom/mathallo/assets/img/loupe.svg');
-webkit-mask-repeat: no-repeat;
mask-repeat: no-repeat;
-webkit-mask-position: center;
mask-position: center;
-webkit-mask-size: contain;
mask-size: contain;
}
}
}
@@ -262,7 +290,40 @@ nav[role="breadcrumb"]{
// \_| |_/\__,_|_|_| |_|
main[role="main"]{
position: relative;
&>div.layout-content{
position: relative;
div#parallax-bg{
position: absolute;
z-index: -1;
top:0;
left: 0;
margin-top: -40vh;
width: 100vw;
height:400%;
background-image: url('/themes/custom/mathallo/assets/img/grid_0.svg');
background-repeat: repeat;
background-position: center;
// mask: linear-gradient(white, white) content-box, linear-gradient(white, white);
}
// div#custom-cursor{
// position: absolute;
// top:40vh; left:50vh;
// display: block;
// $wh:100px;
// width:$wh; height:$wh;
// border-radius: $wh / 2;
// background-color: #000;
// // mix-blend-mode:color;
// mask-composite: exclude;
// }
&>.wrapper{
position:relative;
padding-bottom: 100vh;
@@ -270,9 +331,8 @@ main[role="main"]{
// next chapitre
nav.prev-chapitre,
nav.next-chapitre{
position:absolute;
top:-10em;
position:absolute;
padding: 0.5em 1em;
@include menu-contenus;
@@ -291,6 +351,7 @@ main[role="main"]{
// prev
&.prev-chapitre{
top:-10em;
left:0;
a:after{
transform: rotate(180deg);
@@ -302,6 +363,7 @@ main[role="main"]{
// next
&.next-chapitre{
bottom:500px;
right:0;
li.in-active-trail + li{
display: block;
@@ -377,6 +439,8 @@ main[role="main"]{
color: $rose;
}
}
div.field-chapitre-num,
div.field-partie-num{
background-color: $bleu_site;
@@ -387,12 +451,131 @@ main[role="main"]{
// transform: translateY(-3em);
position: absolute;
top:-1em;
font-size: 1.2em;
&>*{
font-weight: 600;
}
}
// Article Static Home page teaser
&[role="home-presentation"]{
max-width: 65vw;
>h2{
color: $bleu_site;
text-decoration: none;
font-family: 'Fredoka';
text-transform:uppercase;
font-weight: 500;
}
p{
font-size: 1.134em;
vertical-align: top;
position: relative;
box-sizing: border-box;
// z-index: 10;
@media (min-width: 1080px){
display: inline-block;
max-width: 28%;
// min-width: 15em;
margin-top: 2em;
margin-bottom: 7em;
&:not(:first-of-type){
margin-left: 6%;
}
transform-origin: top left;
&, &:before{
transition: all 0.6s ease-in-out;
}
&:hover{
// color: $bleu_site;
transform: scale(1.1) translateY(-5px);
&:before{
transform: scale(0.8) translateY(-20px) rotate(-15deg);
}
}
&:before{
content: "";
display: block;
position: absolute;
$form_wh:8em;
width:$form_wh; height:$form_wh;
bottom:-$form_wh * 1.1; right:$form_wh / 4;
z-index: -1;
transform-origin: center left;
background-size: contain;
// background-color: $bleu_site;
// border: 1px solid red ;
// mask-size: contain;
// mask-mode: luminance;
}
&.forme-pyramide:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/pyramide.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/pyramide.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/pyramide.svg');
}
&.forme-prct:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/prct.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/prct.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/prct.svg');
}
&.forme-pi:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/pi.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/pi.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/pi.svg');
}
&.forme-infinite:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/infinite.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/infinite.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/infinite.svg');
}
&.forme-supeg:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/supeg.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/supeg.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/supeg.svg');
}
&.forme-cone:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/cone.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/cone.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/cone.svg');
}
&.forme-croissant:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/croissant.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/croissant.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/croissant.svg');
}
&.forme-cube:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/cube.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/cube.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/cube.svg');
}
&.forme-diamant:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/diamant.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/diamant.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/diamant.svg');
}
&.forme-cylindre:before{
background-image: url('/themes/custom/mathallo/assets/img/formes/cylindre.svg');
// content: url('/themes/custom/mathallo/assets/img/formes/cylindre.svg');
// mask-image: url('/themes/custom/mathallo/assets/img/formes/cylindre.svg');
}
}
}
h4 a:hover{
color: $rose;
}
}
}
article.node-type-chapitre{
@@ -403,6 +586,11 @@ main[role="main"]{
// display: flex;
// gap: 2em;
padding:1em;
article.node-type-partie{
>h2{
@include titre_h3;
}
}
}
// Page Partie
@@ -413,14 +601,10 @@ main[role="main"]{
@include titre_h3;
}
&.field-en-pratique{
div.field-label{
text-align: right;
}
}
&.field-ressources,
&.field-plus-loin{
&.field-plus-loin,
&.field-ressources{
.field-label{
@include titre_h3;
padding-bottom: 1em;
@@ -433,34 +617,67 @@ main[role="main"]{
}
}
&.field-ressources{
div.paragraph--type--ressource{
.field_titre{
background-color: $bleu_site;
color: #fff;
border-radius: 2em;
display: inline-block;
padding: 0.5em 1em;
&>div{
@include titre_h4;
color:#fff;
}
}
}
}
&.field-plus-loin{
// AKA Bulle conceptuelle
margin-left: 20em;
div.paragraph--type--complement{
.field_titre{
@include titre_h4;
@include titre_h3;
color: $bleu_site;
}
}
div.field_liens{
margin-top: 2em;
div.field-label{
@include titre_h4;
padding: 0;
}
label{
display:block;
margin-top: 1em;
}
a{
font-size: 0.756em;
}
}
}
&.field-ressources{
margin-right: 20em;
div.paragraph--type--ressource{
.field_titre{
// background-color: $bleu_site;
// color: #fff;
// border-radius: 2em;
// display: inline-block;
// padding: 0.5em 1em;
&>div{
@include titre_h4;
// color:#fff;
}
}
.field_description{
margin: 1em 0 0;
}
.field_liens{
margin: 1em 0 0;
a{
text-decoration: underline;
}
}
.field_fichiers{
margin: 1em 0 0;
}
}
}
}
} // div.layout-content
div#partie-principes-pratique{
position: relative;
display: flex;
@@ -469,28 +686,56 @@ main[role="main"]{
@mixin front-card{
z-index: 2;
background-color: #fff;
&>*>*{
div.field>div:not(.field-label){
opacity: 1;
}
.field-label{
color: $rose;
font-weight: 600;
background-color: #fff;
}
}
@mixin back-card{
z-index: 1;
background-color: rgba(247,247,247,1);
&>*>*{
opacity: 0.6;
div.field>div:not(.field-label){
opacity: 0.3;
}
.field-label{
color: inherit;
font-weight: 600;
background-color: rgba(247,247,247,1);
}
}
div.field>div:not(.field-label){
transition: all 0.3s ease-in-out;
}
&.field-principes-reflexion{
@include front-card();
}
&.field-en-pratique{
margin-left: -50%;
transform: translateY(2em);
div.field-label{
text-align: right;
right: 2em;
}
@include back-card();
}
&.field-principes-reflexion,
&.field-en-pratique{
div.field-label{
display: block;
// background-color: #fff;
position: absolute;
top:-1em;
padding: 0.5em 2em;
font-size: 1.2em;
// color: #fff;
box-shadow: 0 0 10px rgba(0,0,0,0.25);
}
transition: background-color 0.25s ease-out;
&.back-card{
@include back-card();
@@ -500,10 +745,25 @@ main[role="main"]{
}
}
}
}
// HOME
}
} // partie-principes-pratique
// _ _ ___ __ __ _____
// | | | |/ _ \| \/ | ____|
// | |_| | | | | |\/| | _|
// | _ | |_| | | | | |___
// |_| |_|\___/|_| |_|_____|
// article.node-type-static[role="home-presentation"]{
// div.body{
// }
// }
div.views-home-chapitres{
// display: flex;
// gap: 2em;
@@ -518,44 +778,24 @@ main[role="main"]{
}
}
}
} // views-home-chapitres
// FORMES
.bg-forme{
position: absolute;
// background-color: red;
width:300px; height:300px;
top:50%;
left:-300px;
z-index: -1;
background-position: center;
background-size: contain;
background-repeat: no-repeat;
// &.pyramide{ background-image: url('/themes/custom/mathallo/assets/img/formes/pyramide.svg'); }
// &.infinite{ background-image: url('/themes/custom/mathallo/assets/img/formes/infinite.svg'); }
// &.prct{ background-image: url('/themes/custom/mathallo/assets/img/formes/prct.svg'); }
// &.pi{ background-image: url('/themes/custom/mathallo/assets/img/formes/pi.svg'); }
// &.supeg{ background-image: url('/themes/custom/mathallo/assets/img/formes/supeg.svg'); }
// &.cone{ background-image: url('/themes/custom/mathallo/assets/img/formes/cone.svg'); }
// &.cube{ background-image: url('/themes/custom/mathallo/assets/img/formes/cube.svg'); }
// &.diamant{ background-image: url('/themes/custom/mathallo/assets/img/formes/diamant.svg'); }
// &.croissant{ background-image: url('/themes/custom/mathallo/assets/img/formes/croissant.svg'); }
// &.cylindre{ background-image: url('/themes/custom/mathallo/assets/img/formes/cylindre.svg'); }
filter: drop-shadow(0 0 15px rgba(0,0,0,0.05));
svg{
// width: 100%;
// height: 100%;
path,line,rect,circle,ellipse,polygon,polyline{
vector-effect: non-scaling-stroke;
stroke-width: 1px!important;
}
}
}
}
}
}
// ______ _
@@ -569,6 +809,15 @@ footer[role="contentinfo"]{
background-color: #fff;
box-shadow: 0 5px 15px #000;
padding: 0.2em 2em;
box-sizing: border-box;
position: relative;
div.wrapper{
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
position: relative;
width: auto;
#block-mathallo-navigationprincipale-2{
ul{
display: flex;
@@ -583,5 +832,101 @@ footer[role="contentinfo"]{
}
}
}
div#block-mathallo-humanum{
// justify-self: end;
}
}
}
// _____ _ _
// | ___|__ ___ | |_ _ __ ___ | |_ ___ ___
// | |_ / _ \ / _ \| __| '_ \ / _ \| __/ _ \/ __|
// | _| (_) | (_) | |_| | | | (_) | || __/\__ \
// |_| \___/ \___/ \__|_| |_|\___/ \__\___||___/
div.footnote__citations-wrapper{
display: inline;
.footnote__citation{
display: inline;
text-decoration: underline;
text-decoration-style: dashed;
cursor: pointer;
span.footnote-link{
pointer-events: none;
display: inline-block;
$icon_wh:1em;
width: $icon_wh; height: $icon_wh;
text-indent: $icon_wh * 2;
overflow: hidden;
vertical-align:baseline;
background-color: $rose;
// border: 1px solid red;
mask-image: url('/themes/custom/mathallo/assets/img/formes/supeg.svg');
mask-size: contain;
mask-position: center;
mask-repeat: no-repeat;
&.forme-pyramide{
mask-image: url('/themes/custom/mathallo/assets/img/formes/pyramide.svg');
}
&.forme-prct{
mask-image: url('/themes/custom/mathallo/assets/img/formes/prct.svg');
}
&.forme-pi{
mask-image: url('/themes/custom/mathallo/assets/img/formes/pi.svg');
}
&.forme-infinite{
mask-image: url('/themes/custom/mathallo/assets/img/formes/infinite.svg');
}
&.forme-supeg{
mask-image: url('/themes/custom/mathallo/assets/img/formes/supeg.svg');
}
&.forme-cone{
mask-image: url('/themes/custom/mathallo/assets/img/formes/cone.svg');
}
&.forme-croissant{
mask-image: url('/themes/custom/mathallo/assets/img/formes/croissant.svg');
}
&.forme-cube{
mask-image: url('/themes/custom/mathallo/assets/img/formes/cube.svg');
}
&.forme-diamant{
mask-image: url('/themes/custom/mathallo/assets/img/formes/diamant.svg');
}
&.forme-cylindre{
mask-image: url('/themes/custom/mathallo/assets/img/formes/cylindre.svg');
}
}
}
// template.footnote-content{
// display:none;
// }
}
.fn-modale{
@include card;
// display: none;
transition: opacity 0.25s ease-in-out;
// transition-delay: ;
position: absolute;
// top:50%; left:50%;
z-index: 200;
max-width: 40em;
padding:1em 1.5em 1em 1em;
border: 1px dashed $bleu_site;
margin: 0;
opacity: 0;
&.visible{
// display: block;
opacity: 1;
transition: opacity 0.25s ease-in-out;
}
img{
max-width: 100%;
height: auto;
}
}
@@ -0,0 +1,21 @@
@import "partials/colors";
@import "partials/fonts";
span.mathallo-site-name{
font-family: 'Fredoka';
text-transform:uppercase;
color: $bleu_site;
font-weight: 500;
}
span.footnotes-preview{
background-color: $rose;
}
p.lien-transversal a{
border: 1px dashed $bleu_site;
padding: 0.6em 0.8em;
border-radius: 7px;
color: $bleu_site;
}
+23
View File
@@ -0,0 +1,23 @@
import { createServer, build } from 'vite'
// Build watcher : écrit les fichiers dist sur disque en continu
const watcher = await build({
build: { watch: {} },
})
// Dev server : HMR sur localhost:5173
const server = await createServer()
await server.listen()
console.log('\n HMR actif + dist générés en watch\n')
const shutdown = async () => {
await Promise.allSettled([
watcher.close(),
server.close(),
])
process.exit(0)
}
process.on('SIGINT', shutdown)
process.on('SIGTERM', shutdown)
@@ -5,6 +5,8 @@ description: mathallo drupal theme based on stark
package: mathallo
core: 0.x
core_version_requirement: ^8 || ^9 || ^10
ckeditor5-stylesheets:
- assets/dist/wysiwyg.css
# libraries:
# - caravane/global
regions:
+1 -1
View File
@@ -4,7 +4,7 @@
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"dev": "node dev.mjs",
"build": "vite build",
"preview": "vite preview"
},
@@ -46,7 +46,7 @@
{% if label_hidden %}
{% if multiple %}
<div{{ attributes }}>
<div{{ attributes.addClass('field') }}>
{% for item in items %}
<div{{ item.attributes }}>{{ item.content }}</div>
{% endfor %}
@@ -57,7 +57,7 @@
{% endfor %}
{% endif %}
{% else %}
<div{{ attributes }}>
<div{{ attributes.addClass('field') }}>
<div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div>
@@ -0,0 +1,7 @@
{% apply footnotes_spaceless %}
{# footnotes/footnote-link.html.twig #}
<div class="footnote__citation js-footnote-citation" id="{{ fn.ref_id }}">
<span class="footnote-link">{{ fn.value|render|trim }}</span>
<template class="footnote-content">{{ fn.text }}</template>
</div>
{% endapply %}
@@ -0,0 +1,12 @@
{% apply footnotes_spaceless %}
{%- if footnote_links -%}
<div class="footnote__citations-wrapper">
{%- for footnote_link in footnote_links -%}
{% if not loop.first %}
<span class="footnote__citation-separator">, </span>
{% endif %}
{{ footnote_link }}
{%- endfor -%}
</div>
{%- endif -%}
{% endapply %}
@@ -0,0 +1,20 @@
{#
/**
* @file
* Default theme implementation of a link with separate title and URL elements.
*
* Available variables:
* - link: The link that has already been formatted by l().
* - title: (optional) A descriptive or alternate title for the link, which may
* be different than the actual link text.
*
* @see template_preprocess()
* @see template_preprocess_link_formatter_link_separate()
*
* @ingroup themeable
*/
#}
{% apply spaceless %}
<label>{{ title }}</label>
{{ link }}
{% endapply %}
@@ -68,7 +68,8 @@
{{ content.field_partie }}
</div>
{{ title_prefix }}
{% if label and not page %}
{# {% if label and not page %} #}
{% if label %}
<h2{{ title_attributes }}>
<a href="{{ url }}" rel="bookmark">{{ label }}</a>
</h2>
@@ -93,10 +94,11 @@
</div>
{% endif %}
{% if content.field_pour_aller_plus_loin %}
<section class="field-card field-plus-loin">{{ content.field_pour_aller_plus_loin }}</section>
{% endif %}
{% if content.field_ressources %}
<section class="field-card field-ressources">{{ content.field_ressources }}</section>
{% endif %}
{% if content.field_pour_aller_plus_loin %}
<section class="field-card field-plus-loin">{{ content.field_pour_aller_plus_loin }}</section>
{% endif %}
@@ -67,7 +67,8 @@
{{ title_prefix }}
{% if label and not page %}
<h2{{ title_attributes }}>
<a href="{{ url }}" rel="bookmark">{{ label }}</a>
{# <a href="{{ url }}" rel="bookmark">{{ label }}</a> #}
{{ label }}
</h2>
{% endif %}
{{ title_suffix }}
@@ -65,9 +65,14 @@
<article{{ attributes }}>
{{ title_prefix }}
{% if label and not page %}
{# {% if label and not page %} #}
{% if label %}
<h2{{ title_attributes }}>
{% if not page %}
<a href="{{ url }}" rel="bookmark">{{ label }}</a>
{% else %}
{{ label }}
{% endif %}
</h2>
{% endif %}
{{ title_suffix }}
@@ -72,6 +72,8 @@
<a id="main-content" tabindex="-1"></a>{# link is in html.html.twig #}
<div class="layout-content">
<div id="parallax-bg"></div>
{# <div id="custom-cursor"></div> #}
{{ page.content }}
</div>{# /.layout-content #}
@@ -0,0 +1,21 @@
{#
/**
* @file
* Default theme implementation to display a region.
*
* Available variables:
* - content: The content for this region, typically blocks.
* - attributes: HTML attributes for the region <div>.
* - region: The name of the region variable as defined in the theme's
* .info.yml file.
*
* @see template_preprocess_region()
*
* @ingroup themeable
*/
#}
{% if content %}
<div{{ attributes }}>
{{ content }}
</div>
{% endif %}
@@ -6,6 +6,7 @@ import { fileURLToPath, URL } from 'node:url'
export default defineConfig({
plugins: [vue()],
server: {
hmr: {
host: 'localhost',
},
@@ -16,10 +17,13 @@ export default defineConfig({
build: {
outDir: 'assets/dist',
rollupOptions: {
input: 'assets/js/main.js',
input: {
main: 'assets/js/main.js',
wysiwyg: 'assets/scss/wysiwyg.scss',
},
output: {
entryFileNames: 'main.js',
assetFileNames: 'main.css'
entryFileNames: '[name].js',
assetFileNames: '[name].css',
}
}
},