@brillout/docpress 0.16.2 → 0.16.4

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.
package/AGENTS.md ADDED
@@ -0,0 +1,30 @@
1
+ 🚨 STOP: Before responding to ANY message, you MUST complete STEP 1 below. No exceptions - even for simple questions like "1+1".
2
+
3
+ @AI: Read and always respect all instructions in all AGENTS.md files. Treat this context as always up-to-date — it's never out of scope, no matter how much other context you have.
4
+
5
+ List of `AGENTS.md` files:
6
+ 1. This file (project preferences)
7
+ 2. `~/.config/AGENTS.md` (user preferences)
8
+
9
+ # CRITICAL AGENT INSTRUCTIONS - MUST FOLLOW
10
+
11
+ ## What is "ANY agentic session"?
12
+ - User asks a question (even "1+1" or simple queries)
13
+ - User requests a code change
14
+ - User asks for information
15
+ - Session resumes after idle time
16
+ - First interaction in a conversation
17
+ - EVERYTHING counts - no exceptions
18
+
19
+ ## STEP 1: ALWAYS START HERE (BEFORE ANY TASK)
20
+ **MANDATORY:** When starting ANY agentic session, you MUST:
21
+ 1. Read both AGENTS.md files (this file + ~/.config/AGENTS.md)
22
+ 2. Say "I've successfully read [list-of-AGENTS.md-files]"
23
+ 3. List ALL instructions from both files
24
+ 4. Confirm: "✅ AGENTS.md check complete, proceeding with: [brief task description]"
25
+ 5. Then proceed with the task
26
+
27
+ ## STEP 2: AFTER MAKING CHANGES
28
+ **MANDATORY:** After completing a task and if you made changes:
29
+ 1. Run `$ pnpm run -w format`
30
+ 2. Follow user preferences from ~/.config/AGENTS.md for commits and notifications
package/Layout.tsx CHANGED
@@ -7,6 +7,7 @@ export { navLeftWidthMax }
7
7
  export { bodyMaxWidth }
8
8
  export { unexpandNav }
9
9
  export { blockMargin }
10
+ export { scrollFadeMask }
10
11
 
11
12
  // - @media VS @container
12
13
  // - Using `@container container-viewport` instead of @media would be interesting because @media doesn't consider the scrollbar width.
@@ -48,6 +49,12 @@ const viewDesktop = (mainViewWidthMax + navLeftWidthMin + blockMargin) as 1144 /
48
49
  const viewDesktopLarge = (mainViewWidthMax + navLeftWidthMax + blockMargin) as 1214 // 1214 = 840 + 370 + 4
49
50
  const bodyMaxWidth = 1300
50
51
 
52
+ // Scroll fade effect at top/bottom edges
53
+ const scrollFadeMask: React.CSSProperties = {
54
+ maskImage:
55
+ 'linear-gradient(to bottom, rgba(0,0,0,0.3) 0px, black 20px, black calc(100% - 20px), rgba(0,0,0,0.3) 100%)',
56
+ }
57
+
51
58
  // Avoid whitespace at the bottom of pages with almost no content
52
59
  const whitespaceBuster1: React.CSSProperties = {
53
60
  minHeight: '100vh',
@@ -230,6 +237,7 @@ function NavLeft() {
230
237
  paddingBottom: 40,
231
238
  minWidth: navLeftWidthMin,
232
239
  width: '100%',
240
+ ...scrollFadeMask,
233
241
  }}
234
242
  >
235
243
  {navItemsDetached ? (
@@ -282,6 +290,7 @@ function isNavLeftAlwaysHidden() {
282
290
  const menuLinkStyle: React.CSSProperties = {
283
291
  height: '100%',
284
292
  padding: '0 var(--padding-side)',
293
+ paddingTop: 2,
285
294
  justifyContent: 'center',
286
295
  }
287
296
 
@@ -743,15 +752,25 @@ function DocsIcon() {
743
752
  }
744
753
  function MenuIcon() {
745
754
  return (
746
- <svg
747
- style={{ marginRight: 'calc(var(--icon-text-padding) + 2px)', verticalAlign: 'top', width: '1.3em' }}
748
- className="decolorize-6"
749
- viewBox="0 0 448 512"
750
- >
751
- <path
752
- fill="currentColor"
753
- d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"
754
- ></path>
755
- </svg>
755
+ <div style={{ display: 'inline-block', position: 'relative', top: 2, marginRight: 3, direction: 'rtl' }}>
756
+ {Array(3)
757
+ .fill(0)
758
+ .map((_, i) => (
759
+ <div
760
+ key={i}
761
+ style={{
762
+ background: 'currentColor',
763
+ width: (() => {
764
+ if (i === 0) return 18
765
+ if (i === 1) return 11
766
+ return 14
767
+ })(),
768
+ height: 2,
769
+ opacity: '0.8',
770
+ marginTop: i === 0 ? 0 : 4,
771
+ }}
772
+ />
773
+ ))}
774
+ </div>
756
775
  )
757
776
  }
package/MenuModal.tsx CHANGED
@@ -3,7 +3,7 @@ export { MenuModal }
3
3
  import React from 'react'
4
4
  import { usePageContext } from './renderer/usePageContext'
5
5
  import { css } from './utils/css'
6
- import { bodyMaxWidth, viewDesktop, viewTablet } from './Layout'
6
+ import { bodyMaxWidth, viewDesktop, viewTablet, scrollFadeMask } from './Layout'
7
7
  import { ExternalLinks } from './ExternalLinks'
8
8
  import { Style } from './utils/Style'
9
9
  import { NavigationWithColumnLayout } from './MenuModal/NavigationWithColumnLayout'
@@ -41,6 +41,7 @@ function MenuModal({ isTopNav, isNavLeftAlwaysHidden_ }: { isTopNav: boolean; is
41
41
  overflowY: 'scroll',
42
42
  // We don't set `container` to the parent #menu-modal-wrapper beacuse of a Chrome bug (showing a blank <MenuModal>). Edit: IIRC because #menu-modal-wrapper has `position: fixed`.
43
43
  container: 'container-viewport / inline-size',
44
+ ...scrollFadeMask,
44
45
  }}
45
46
  >
46
47
  <Nav />
@@ -39,5 +39,4 @@ const config = {
39
39
  // ▲ [WARNING] Transforming this CSS nesting syntax is not supported in the configured target environment ("chrome87", "edge88", "es2020", "firefox78", "safari14") [unsupported-css-nesting]
40
40
  // ```
41
41
  build: { target: 'es2022' },
42
- clearScreen: false,
43
42
  };
@@ -35,8 +35,6 @@ function SearchIcon() {
35
35
  width={18}
36
36
  style={{
37
37
  marginRight: 'var(--icon-text-padding)',
38
- position: 'relative',
39
- top: 1,
40
38
  }}
41
39
  className="decolorize-7"
42
40
  />
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brillout/docpress",
3
- "version": "0.16.2",
3
+ "version": "0.16.4",
4
4
  "type": "module",
5
5
  "dependencies": {
6
6
  "@brillout/picocolors": "^1.0.10",
package/vite.config.ts CHANGED
@@ -43,5 +43,4 @@ const config: UserConfig = {
43
43
  // ▲ [WARNING] Transforming this CSS nesting syntax is not supported in the configured target environment ("chrome87", "edge88", "es2020", "firefox78", "safari14") [unsupported-css-nesting]
44
44
  // ```
45
45
  build: { target: 'es2022' },
46
- clearScreen: false,
47
46
  }