picata 0.0.3__py3-none-any.whl → 0.0.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
entrypoint.tsx CHANGED
@@ -167,12 +167,13 @@ function renderPageContents(): void {
167
167
  const listStack: HTMLUListElement[] = [tocList];
168
168
  let currentLevel = 1;
169
169
 
170
- // Find all anchor-linked headings
170
+ // Find all anchor-linked headings inside articles
171
171
  const headings = document.querySelectorAll<HTMLElement>(
172
- "h1[id], h2[id], h3[id], h4[id], h5[id], h6[id]",
172
+ "article h1[id], article h2[id], article h3[id], article h4[id], article h5[id], article h6[id]",
173
173
  );
174
+
174
175
  headings.forEach((heading) => {
175
- const headingLevel = parseInt(heading.tagName.substring(1)); // Extract the heading level (e.g., "1" for "H1")
176
+ const headingLevel = parseInt(heading.tagName.substring(1));
176
177
 
177
178
  // Adjust the stack to match the heading level
178
179
  while (headingLevel > currentLevel) {
picata/apps.py CHANGED
@@ -28,6 +28,6 @@ class Config(AppConfig):
28
28
 
29
29
  ## Add anchored pillcrows to headings in designated pages
30
30
  anchor_inserter = AnchorInserter(
31
- root="//main/article", targets=".//h1 | .//h2 | .//h3 | .//h4 | .//h5 | .//h6"
31
+ root=".//article", targets=".//h1 | .//h2 | .//h3 | .//h4 | .//h5 | .//h6"
32
32
  )
33
33
  HTMLProcessingMiddleware.add_transformer(anchor_inserter)
@@ -1,4 +1,4 @@
1
- {% extends "base.html" %}
1
+ {% extends "picata/base.html" %}
2
2
  {% comment %}
3
3
  Three-column layout, at `lg`-up, with a 25% aside, 50% article, and 25% nav.
4
4
 
@@ -1,4 +1,4 @@
1
- {% extends "base.html" %}
1
+ {% extends "picata/base.html" %}
2
2
 
3
3
  {% block title %}Page not found{% endblock %}
4
4
 
@@ -1,4 +1,4 @@
1
- {% extends "3_column.html" %}
1
+ {% extends "picata/3_column.html" %}
2
2
  {% load wagtailcore_tags %}
3
3
 
4
4
  {% block main_classes %}{{ block.super }} article{% endblock %}
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, viewport-fit=cover" />
6
- <title>{% block document_title %}{% if title %}{{ title }} · {% endif %}[Example Site]{% endblock %}</title>
6
+ <title>{% block document_title %}{% if title %}{{ title }} · {% endif %}hpk.io{% endblock %}</title>
7
7
 
8
8
  <style>
9
9
  @font-face { font-family: 'Sacramento'; src: url("{% static 'fonts/Sacramento-Regular.ttf' %}") format("truetype"); font-weight: 400; font-style: normal; }
@@ -14,6 +14,8 @@
14
14
  @font-face { font-family: 'Zilla Slab Highlight'; src: url("{% static 'fonts/ZillaSlabHighlight-Bold.ttf' %}") format("truetype"); font-weight: 700; font-style: normal; }
15
15
  @font-face { font-family: 'Bitter'; src: url("{% static 'fonts/Bitter-Light.ttf' %}") format("truetype"); font-weight: 300; font-style: normal; }
16
16
  @font-face { font-family: 'Bitter'; src: url("{% static 'fonts/Bitter-LightItalic.ttf' %}") format("truetype"); font-weight: 300; font-style: italic; }
17
+ @font-face { font-family: 'Bitter'; src: url("{% static 'fonts/Bitter-Bold.ttf' %}") format("truetype"); font-weight: 700; font-style: normal; }
18
+ @font-face { font-family: 'Bitter'; src: url("{% static 'fonts/Bitter-BoldItalic.ttf' %}") format("truetype"); font-weight: 700; font-style: italic; }}
17
19
  @font-face { font-family: 'Fira Code'; src: url("{% static 'fonts/FiraCode-Light.ttf' %}") format("truetype"); font-weight: 300; font-style: normal; }
18
20
  @font-face { font-family: 'Fira Code'; src: url("{% static 'fonts/FiraCode-SemiBold.ttf' %}") format("truetype"); font-weight: 600; font-style: normal; }
19
21
  </style>
@@ -25,7 +27,7 @@
25
27
 
26
28
  <meta property="og:title" content="{% block og_title %}Hpk.io{% endblock %}">
27
29
  <meta property="og:description" content="{% block og_description %}Ada Wrights's website - Hpk.io{% endblock %}">
28
- <meta property="og:image" content="{% block og_image %}{% if settings.picata.SocialSettings.default_social_image %}{{ request.scheme }}://{{ request.get_host }}/{% image_url settings.hpk.SocialSettings.default_social_image 'fill-1200x630' %}{% else %}{% absolute_static 'ada-social-bear.jpg' %}{% endif %}{% endblock %}">
30
+ <meta property="og:image" content="{% block og_image %}{% if settings.picata.SocialSettings.default_social_image %}{{ request.scheme }}://{{ request.get_host }}/{% image_url settings.picata.SocialSettings.default_social_image 'fill-1200x630' %}{% else %}{% absolute_static 'ada-social-bear.jpg' %}{% endif %}{% endblock %}">
29
31
  <meta property="og:url" content="{{ request.build_absolute_uri }}">
30
32
  <meta property="og:type" content="{% block og_type %}website{% endblock %}">
31
33
 
@@ -121,7 +123,7 @@
121
123
  {% block content %}{% endblock %}
122
124
  </main>
123
125
 
124
- <footer>
126
+ <footer class="footer">
125
127
  <div>
126
128
  <p>&copy; 2024 Ada Wright</p>
127
129
  </div>
@@ -1,4 +1,4 @@
1
- {% extends "base.html" %}
1
+ {% extends "picata/base.html" %}
2
2
  {% load wagtailcore_tags %}
3
3
 
4
4
  {% block content %}
@@ -1,4 +1,4 @@
1
- {% extends "base.html" %}
1
+ {% extends "picata/base.html" %}
2
2
  {% comment %}
3
3
  Two-column layout (25%/75%), with a 2px line between the columns.
4
4
 
@@ -1,4 +1,4 @@
1
- {% extends "split_view.html" %}
1
+ {% extends "picata/split_view.html" %}
2
2
  {% load wagtailcore_tags %}
3
3
  {% comment %}
4
4
  Template for the HomePage class, utilising a split-view page layout.
@@ -1,4 +1,4 @@
1
- {% extends "dl_view.html" %}
1
+ {% extends "picata/dl_view.html" %}
2
2
  {% load wagtailcore_tags %}
3
3
 
4
4
  {% block main_classes %}{{ block.super }} post-list{% endblock %}
@@ -10,7 +10,7 @@
10
10
  </dd>
11
11
 
12
12
  {% for year, posts in posts_by_year.items %}
13
- {% include "_post_list.html" with posts=posts year=year %}
13
+ {% include "picata/_post_list.html" with posts=posts year=year %}
14
14
  {% endfor %}
15
15
 
16
16
  </dl>
@@ -1,4 +1,4 @@
1
- {% extends "3_column.html" %}
1
+ {% extends "picata/3_column.html" %}
2
2
 
3
3
  {% block title %}Home{% endblock %}
4
4
 
@@ -1,4 +1,4 @@
1
- {% extends "dl_view.html" %}
1
+ {% extends "picata/dl_view.html" %}
2
2
 
3
3
  {% block definitions %}
4
4
  <dt><p><a href="#what-is-lorem-ipsum">What is Lorem Ipsum?</a></p></dt>
@@ -1,4 +1,4 @@
1
- {% extends "split_view.html" %}
1
+ {% extends "picata/split_view.html" %}
2
2
 
3
3
  {% block content %}
4
4
  <div><p><a href="#what-is-lorem-ipsum">What is Lorem Ipsum?</a></p></div>
@@ -1,4 +1,4 @@
1
- {% extends "article.html" %}
1
+ {% extends "picata/article.html" %}
2
2
  {% load wagtailimages_tags %}
3
3
 
4
4
 
@@ -1,4 +1,4 @@
1
- {% extends "dl_view.html" %}
1
+ {% extends "picata/dl_view.html" %}
2
2
  {% load wagtailcore_tags stringify %}
3
3
 
4
4
  {% block main_classes %}{{ block.super }} post-list search-results{% endblock %}
@@ -22,7 +22,7 @@
22
22
  {% endif %}
23
23
  </dd>
24
24
 
25
- {% include "_post_list.html" with posts=pages %}
25
+ {% include "picata/_post_list.html" with posts=pages %}
26
26
 
27
27
  </dl>
28
28
  {% endblock %}
@@ -1,4 +1,4 @@
1
- {% extends "base.html" %}
1
+ {% extends "picata/base.html" %}
2
2
  {% comment %}
3
3
  Two-column layout (50%/50%), with a 2px line between the columns.
4
4
 
@@ -1,8 +1,5 @@
1
- <nav>
2
- <a href="{{ root_page.url }}">{{ root_page.title }}</a>
3
- {% for page in menu_pages %}
4
- <a href="{{ page.url }}">
5
- {{ page.title }}{% if not page.live %} (not live){% endif %}
6
- </a>
7
- {% endfor %}
8
- </nav>
1
+ {% for page in menu_pages %}
2
+ <a {% if page == current_section %}class="current" {% endif %}href="{{ page.url }}">
3
+ {{ page.title }}{% if not page.live %} (not live){% endif %}
4
+ </a>
5
+ {% endfor %}
@@ -0,0 +1,62 @@
1
+ """Filter to wrap the last two words of text in a span which prevents word-wrapping."""
2
+
3
+ from html.parser import HTMLParser
4
+
5
+ from django import template
6
+ from django.utils.html import escape
7
+ from django.utils.safestring import mark_safe
8
+
9
+ register = template.Library()
10
+
11
+
12
+ class KillOrphansParser(HTMLParser):
13
+ """Parser that wraps the last two words of visible text in a span tag."""
14
+
15
+ result: list[str]
16
+ text_chunks: list[str]
17
+
18
+ def __init__(self) -> None:
19
+ """Initialize the parser and result containers."""
20
+ super().__init__()
21
+ self.result = []
22
+ self.text_chunks = []
23
+
24
+ def handle_starttag(self, tag: str, attrs: list[tuple[str, str | None]]) -> None:
25
+ """Handle start tags and store them."""
26
+ start_tag_text = self.get_starttag_text()
27
+ if start_tag_text is not None:
28
+ self.result.append(start_tag_text)
29
+
30
+ def handle_endtag(self, tag: str) -> None:
31
+ """Handle end tags and store them."""
32
+ self.result.append(f"</{tag}>")
33
+
34
+ def handle_data(self, data: str) -> None:
35
+ """Handle text data and store it."""
36
+ self.text_chunks.append(data)
37
+ self.result.append(data)
38
+
39
+ def get_wrapped_html(self) -> str:
40
+ """Return HTML with the last two words wrapped in a span."""
41
+ full_text = "".join(self.text_chunks)
42
+ words = full_text.split()
43
+
44
+ if len(words) < 2: # noqa: PLR2004
45
+ return "".join(self.result)
46
+
47
+ wrapped_words = (
48
+ " ".join(words[:-2])
49
+ + f' <span class="whitespace-nowrap">{escape(" ".join(words[-2:]))}</span>'
50
+ )
51
+
52
+ return mark_safe( # noqa: S308
53
+ "".join(wrapped_words if chunk in full_text else chunk for chunk in self.result)
54
+ )
55
+
56
+
57
+ @register.filter
58
+ def killorphans(value: str) -> str:
59
+ """Wrap the last two words of visible text in a span tag."""
60
+ parser = KillOrphansParser()
61
+ parser.feed(value)
62
+ return parser.get_wrapped_html()
@@ -1,4 +1,4 @@
1
- """Template tags to transform Python types into human-readable strings."""
1
+ """Filter to transform Python types into human-readable strings."""
2
2
 
3
3
  from django import template
4
4
 
@@ -8,7 +8,10 @@ register = template.Library()
8
8
  @register.filter
9
9
  def stringify(value: list, quote_style: str | None = None) -> str:
10
10
  """Convert a list of strings into a human-readable string with optional quoting."""
11
- if not isinstance(value, list):
11
+ if not value:
12
+ return ""
13
+
14
+ if not (isinstance(value, list | set | tuple)):
12
15
  raise TypeError("The 'stringify' filter currently only supports lists.")
13
16
 
14
17
  quote = "'" if quote_style == "single" else '"' if quote_style == "double" else ""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: picata
3
- Version: 0.0.3
3
+ Version: 0.0.5
4
4
  Summary: Ada's Wagtail-based CMS & blog
5
5
  Project-URL: Documentation, https://github.com/hipikat/picata#readme
6
6
  Project-URL: Issues, https://github.com/hipikat/picata/issues
@@ -39,7 +39,6 @@ Classifier: Programming Language :: Python
39
39
  Classifier: Programming Language :: Python :: 3.13
40
40
  Classifier: Programming Language :: Python :: Implementation :: CPython
41
41
  Requires-Python: >=3.13
42
- Requires-Dist: gunicorn~=23.0.0
43
42
  Requires-Dist: lxml~=5.3.0
44
43
  Requires-Dist: psutil~=6.1.0
45
44
  Requires-Dist: psycopg~=3.2.3
@@ -1,12 +1,12 @@
1
1
  LICENSE.md,sha256=Bv8sMyZI5NI6DMrfiAvCwIFRLSfJkimLF2KVcUMteKU,1103
2
2
  README.md,sha256=7IWS68r8WrNkr78JVuw4qKzTbZjv_g4rXw36mn-QfTI,2846
3
- entrypoint.tsx,sha256=Tk6L2rCk0KrE5kaSL0GFuL3S19yG-BsUgvNAGe32uy8,8820
3
+ entrypoint.tsx,sha256=rXpHc3syUVomgTkY-xRwzmhjVD-ZHeymOXPBeSQloh8,8835
4
4
  manage.py,sha256=BkGWS_zb8HTvlrOxDiBaQoahUEJGCoV5ePhX-P6jIaw,426
5
5
  pygments.sass,sha256=zbDYpWda3EoGmjoC3JshZy-_CECNf6WU9abYPF8EHms,6369
6
- styles.sass,sha256=4Jb-Gxn9AP09pZzwLlCGGfeacCyrncpJAOCYcy-dyB4,8486
6
+ styles.sass,sha256=SCG5WCr0jIGzdM_Vp_j_gKxFfcTsTwLWOmaEc6uMpvU,8501
7
7
  components/HelloWorld.tsx,sha256=Kp7gvhGehfrX1mw0jgr2_D6AueFgqgfMYGkyQgvWekg,180
8
8
  picata/__init__.py,sha256=ZCIoFQ_z3ias_sP4C77EU2IUJnyv4qR0xUdJ3PIdLLM,48
9
- picata/apps.py,sha256=r5UQNm2CDP5tq22vQ_j6KuD6AGU3ODkvEQUeRvzJW0k,1259
9
+ picata/apps.py,sha256=kr6OBcYbBw9HCGG-PkoMTHR4QeyzJO8_KIWTljCTHRo,1255
10
10
  picata/blocks.py,sha256=iVNxJM_uWlQIqZA-9Nao4svkG26oK5DQEogK0q_F2Po,5286
11
11
  picata/log_utils.py,sha256=BRdB3PqpFx1XAhIyAzIOyQKiqrjbT3PBmkhH6-wAWJg,1555
12
12
  picata/middleware.py,sha256=BbAifo--C4VYg1VhU8_qbdDcJUD9zYdbxU_9nqGpMa8,2067
@@ -41,33 +41,34 @@ picata/static/picata/fonts/ZillaSlab-BoldItalic.ttf,sha256=xra8p0e0zYZ5gyu5w6BeR
41
41
  picata/static/picata/fonts/ZillaSlab-Light.ttf,sha256=x9c6KiQ-iPpyqCDb2yYgDqi0GW-DNM8YIyTXqehumJ8,239836
42
42
  picata/static/picata/fonts/ZillaSlab-LightItalic.ttf,sha256=8pgf5nlQb5DBqfaNKDj2P7iDMRwaW80YjaC3hXb72PA,245200
43
43
  picata/static/picata/fonts/ZillaSlabHighlight-Bold.ttf,sha256=MbNNCVxe1Kt-j8rJpognUmTZrh9R9je-35MgwoeL7eU,245180
44
- picata/templates/picata/3_column.html,sha256=4SYfqTbmAtYICEulpx1RWocBCQUUn32EnZJrcxfVWwA,790
45
- picata/templates/picata/404.html,sha256=4q8kKGGHWDk9Z8ThW2rP70T3SQrGNGRf153pvYcV7VE,230
44
+ picata/templates/picata/3_column.html,sha256=LdoL-Ei3zPOvzwLDve6F3iGle8fu7Dj79o7GB-SllOQ,797
45
+ picata/templates/picata/404.html,sha256=sN5q0-wM7UqU8zv_vdo8upRR1cnahiCFT92gHuytNKc,237
46
46
  picata/templates/picata/500.html,sha256=1xvvK2uoiZKkc2EuVVnbfg69KmrCJUdplR0vvFtWvKo,369
47
47
  picata/templates/picata/_post_list.html,sha256=JpvNAOGmupLQIC6lTyjoyNOyRGMUQwOqEvEaZgSPrsM,915
48
- picata/templates/picata/article.html,sha256=NBwXpicb_oL2xy3FN8_6KJNbrrQD2rTrNIu1ngOietk,794
49
- picata/templates/picata/base.html,sha256=HUzVThUqYeyeY9GGIapcWAwiBJxJ32mDFQb7Jn5yf94,8157
50
- picata/templates/picata/basic_page.html,sha256=1FS_xdL6erskk9T-_TP3JWARczVstOLzs2ttvkbPbdk,173
51
- picata/templates/picata/dl_view.html,sha256=epAV72HR2f0I3GWBEngUtYOQnHSsXs_SsNlhH7u-JbU,494
52
- picata/templates/picata/home_page.html,sha256=nVDZwlsXfKtdSwQR80e0cHtiX7hf91ws5tYhu_ug_gU,635
53
- picata/templates/picata/post_listing.html,sha256=3aSWYdPfwvYblE4s7b2P_dOLiiCWcrT1uvXRuDBak5Y,428
54
- picata/templates/picata/search_results.html,sha256=P5HwdkLX2iQjZFEtD4YOp4Mun17btshjKBw__z6q8Hs,957
55
- picata/templates/picata/split_view.html,sha256=DqRUKT5wc_-ByibQRZoyDU91omK6TgK7wC3Rp72bbgM,402
48
+ picata/templates/picata/article.html,sha256=dlrqrJLbQNMpaG6rgkN9oUZNXUFMnj8al8dG-LL8V5Y,801
49
+ picata/templates/picata/base.html,sha256=4QlQ7rS9ZDd_1-8_2awBs_6guKaKVjo731OfWd_zkVE,8476
50
+ picata/templates/picata/basic_page.html,sha256=-oVigKCOqNt-dnBKCW_pXpvs7aBu8LZCJW0i-XuyI-4,180
51
+ picata/templates/picata/dl_view.html,sha256=VMZqmA_Wy3BCT0pHP4mHtiZnnkNC--TmjBNHYuKyuTQ,501
52
+ picata/templates/picata/home_page.html,sha256=UmOONJuVC_YsscNHW-q9QnQX-VCS88_kl-pgLLgsHIo,642
53
+ picata/templates/picata/post_listing.html,sha256=nmJZEFCjtWS56BmlK0SwwdiufZM8quEaqxs_QEYYz_M,442
54
+ picata/templates/picata/search_results.html,sha256=kYckF1a9X9xkTzc04Ax7-GqafUxKR2pGvjOFNyGQIzg,971
55
+ picata/templates/picata/split_view.html,sha256=TaJT72DuWXhrpCDdCVgqmmfppHL_RO25OJZkNm_EQsM,409
56
56
  picata/templates/picata/blocks/icon_link_item.html,sha256=t-9LoA00Nv-H031yIL8es89zevbn315jlr5LTiAyM_o,301
57
57
  picata/templates/picata/blocks/icon_link_list.html,sha256=7KU-hLOhAdKnoecLcugqWNzO5SgPnN9XfTDs1y60f0c,261
58
58
  picata/templates/picata/blocks/icon_link_list_stream.html,sha256=B7yz5Ss_dT_5NIMsVwggnGFGmRgawNQrvnowaJUSUnw,69
59
- picata/templates/picata/previews/3col.html,sha256=CwnWJpK5dvmVxqhBuu0QSFHWKhZlnc3xEowMQk3ltBo,4473
60
- picata/templates/picata/previews/dl.html,sha256=ANOqlD3nlj5NF-4sPmya3eo0CNwmxgmUXswmz22Bh30,2095
61
- picata/templates/picata/previews/split.html,sha256=hqv27u4wKTX8jJiNMazXioyRU9Uajpys_7LVQeI3NtE,2106
62
- picata/templates/picata/previews/theme_gallery.html,sha256=A3HRSP5mc5FbpN9VXcZxgof-4sGR8Ylv6hXHY6Y_Ydo,8013
63
- picata/templates/picata/tags/site_menu.html,sha256=Tb_BjV88ZH-nRb76alzSXPVUokPC9O2mVByKmeAgQWA,223
59
+ picata/templates/picata/previews/3col.html,sha256=geY0cLqkq72mVcHOcYrpLBJfOYs0KYbcUgKP2jswl8E,4480
60
+ picata/templates/picata/previews/dl.html,sha256=iO-Aqa7UxhTlJlgbHr8nN_YTtFxy8ge_cqQdyFmaWvs,2102
61
+ picata/templates/picata/previews/split.html,sha256=FtkVTs8f3G9uqMciioUyGtbJ_9jtNo5Iwek7Vb-Vziw,2113
62
+ picata/templates/picata/previews/theme_gallery.html,sha256=FzeaOpS9mcZpg5AwqBFbmqIN5kz2a7QwJjJMXUu7BBI,8020
63
+ picata/templates/picata/tags/site_menu.html,sha256=5V7uo71FFsAPMoXo6NUMsOeu5eHpVor60iNgSt_QoR4,201
64
64
  picata/templatetags/__init__.py,sha256=YNGfxmI00gewcJkkUlH219BHimHD_4p5Lz-zXPvgO-U,47
65
65
  picata/templatetags/absolute_static.py,sha256=YpkPQhquvk2dRcnGy4g2yeLEBzRirOaQNs8AlGyM8tc,457
66
+ picata/templatetags/kill_orphans.py,sha256=d549iZdeaicslDm4atf5bC1QsRkHTgkp9xuMkMX14lQ,1965
66
67
  picata/templatetags/menu_tags.py,sha256=QBv2HNA-phOedijP2YErBkO067oHZUD8Bh80SaGwjdY,1844
67
- picata/templatetags/stringify.py,sha256=QxStfcCgn29IGinH_bdsZoaiTLL7pz30ObDitlagecs,850
68
+ picata/templatetags/stringify.py,sha256=XwSRNgaDlDm38TWOXcb8nl8NEttXXZ7C5_06znhv1ms,896
68
69
  picata/typing/__init__.py,sha256=7qXco9cqvbveKX0Xprrc8DmgXa3MpkIQXtFsHDe77os,405
69
70
  picata/typing/wagtail.py,sha256=V0n9GYYb_CM5ic54lcRtpN6lhN37-QdRzz2mGKm3Cwc,664
70
- picata-0.0.3.dist-info/METADATA,sha256=zs5razB4JggccKL9khkUsHAqauD_YaFh-a7t0IkY6Fw,5124
71
- picata-0.0.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
72
- picata-0.0.3.dist-info/licenses/LICENSE.md,sha256=Bv8sMyZI5NI6DMrfiAvCwIFRLSfJkimLF2KVcUMteKU,1103
73
- picata-0.0.3.dist-info/RECORD,,
71
+ picata-0.0.5.dist-info/METADATA,sha256=m1fHFygjHAS6VJjttS73BVVosW3brx87N-XPpNR_16o,5092
72
+ picata-0.0.5.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
73
+ picata-0.0.5.dist-info/licenses/LICENSE.md,sha256=Bv8sMyZI5NI6DMrfiAvCwIFRLSfJkimLF2KVcUMteKU,1103
74
+ picata-0.0.5.dist-info/RECORD,,
styles.sass CHANGED
@@ -9,6 +9,7 @@
9
9
  @layer base
10
10
  body
11
11
  @apply text-base font-serif font-light
12
+
12
13
  h1, h2, h3, h4, h5, h6
13
14
  @apply font-heading font-normal
14
15
  &:not(:first-child)
@@ -26,7 +27,9 @@
26
27
  h6
27
28
  @apply text-sm leading-relaxed
28
29
  strong, b
29
- @apply font-serif font-bold
30
+ @apply font-bold
31
+ em, i
32
+ @apply italic
30
33
  code, pre
31
34
  @apply font-mono font-light
32
35
  &.strong
@@ -34,7 +37,6 @@
34
37
  .highlight
35
38
  @apply font-highlight font-bold
36
39
 
37
-
38
40
  // Main page layout
39
41
  html
40
42
  scroll-behavior: smooth
File without changes