symbols-app-connect 3.2.8

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/README.md ADDED
@@ -0,0 +1,106 @@
1
+ # Symbols.app Connect
2
+
3
+ VSCode extension for [Symbols.app](https://symbols.app) and [DOMQL](https://domql.com) — smart completions, hover docs, go-to-definition, and design system token awareness.
4
+
5
+ ## Features
6
+
7
+ ### Completions
8
+
9
+ **Element keys** — all DOMQL properties with snippets:
10
+ - `extends`, `tag`, `text`, `attr`, `state`, `if`, `define`, `style`, `props`, `childProps`, `childrenAs`, `children`, `childExtends`, `content`, `data`, `scope`, `key`, `query`
11
+
12
+ **Events** — lifecycle and DOM:
13
+ - Lifecycle: `onRender`, `onInit`, `onUpdate`, `onStateUpdate`, `onCreate`, `onDestroy`
14
+ - DOM: `onClick`, `onChange`, `onKeydown`, `onSubmit`, `onFocus`, `onScroll`, etc.
15
+
16
+ **CSS-in-props** — all CSS properties promoted to element root:
17
+ - `color`, `padding`, `fontSize`, `display`, `flow`, `align`, `round`, `boxSize`, `widthRange`, etc.
18
+
19
+ **Pseudo-selectors and media queries:**
20
+ - `:hover`, `:active`, `:focus`, `:focus-visible`, `:before`, `:after`, `:first-child`, `:last-child`
21
+ - `@dark`, `@light`, `@mobile`, `@tablet`, `@desktop`
22
+
23
+ **Components** — built-in atoms and your workspace components:
24
+ - Built-in: `Box`, `Flex`, `Grid`, `Text`, `Button`, `Icon`, `Field`, `Modal`, `Dropdown`, etc.
25
+ - Auto-detected PascalCase exports from your project files
26
+
27
+ ### Smart Value Completions
28
+
29
+ Values adapt based on the property type:
30
+
31
+ | Property | Suggested values |
32
+ |----------|-----------------|
33
+ | `extends`, `childExtends` | All built-in + project components |
34
+ | `color`, `background`, `fill` | Color tokens with hex previews (`blue → #213eb0`) |
35
+ | `theme` | Theme tokens with modifiers (`primary .child`) |
36
+ | `padding`, `margin`, `gap`, `width` | Spacing tokens with px values (`B → ~25.9px`) |
37
+ | `fontSize`, `lineHeight` | Typography tokens with px values (`B → ~20px`) |
38
+ | `transition`, `transitionDuration` | Timing tokens with ms values (`A → ~150ms`) |
39
+ | `icon`, `name` | Icon names (`chevronRight`, `search`, `plus`) |
40
+ | `tag` | HTML tags (`div`, `button`, `a`, `section`) |
41
+ | `display`, `position`, `flow`, `cursor` | CSS enum values |
42
+ | `attr.type`, `attr.role`, `attr.target` | Attribute-specific values |
43
+
44
+ **Design system scales** use different configs per type:
45
+
46
+ | Type | Base | Ratio | Example |
47
+ |------|------|-------|---------|
48
+ | Spacing | 16px | 1.618 (golden ratio) | `A` = 16px, `B` ≈ 25.9px |
49
+ | Typography | 16px | 1.25 (major third) | `A` = 16px, `B` ≈ 20px |
50
+ | Timing | 150ms | 1.333 (perfect fourth) | `A` ≈ 150ms, `B` ≈ 200ms |
51
+
52
+ **Color tokens** show real hex values:
53
+ - `blue → #213eb0`, `green → #389d34`, `red → #e15c55`, `yellow → #EDCB38`, `orange → #e97c16`, `gray → #4e4e50`
54
+ - Modifiers: `blue.5` (opacity), `gray+16` (lighten), `gray-26` (darken), `gray=50` (set lightness)
55
+
56
+ **In-string completions** — works inside quotes:
57
+ ```js
58
+ extends: '|' // suggests components
59
+ color: '|' // suggests color tokens
60
+ theme: '|' // suggests theme tokens
61
+ ```
62
+
63
+ ### Go to Definition
64
+
65
+ `Cmd+Click` (or `F12`) on component names to jump to their source file:
66
+ - Object keys: `CategoryTabs: { ... }` → navigates to `components/CategoryTabs.js`
67
+ - String refs: `extends: 'Button'` → navigates to the component file
68
+ - Searches `symbols.json` → `dir` → `components/` directory, then workspace-wide
69
+
70
+ ### Method Completions
71
+
72
+ - `el.` → `lookup`, `update`, `set`, `call`, `setProps`, `remove`, `append`, etc.
73
+ - `state.` → `update`, `toggle`, `set`, `reset`, `apply`, `setByPath`, etc.
74
+ - `el.call("` → context function suggestions
75
+
76
+ ### Hover Documentation
77
+
78
+ Hover any DOMQL key, event, component, CSS property, or design token value for inline docs with examples.
79
+
80
+ ## Settings
81
+
82
+ | Setting | Default | Description |
83
+ |---------|---------|-------------|
84
+ | `symbolsApp.enable` | `true` | Enable/disable the extension |
85
+ | `symbolsApp.detectByImports` | `true` | Only activate in files with DOMQL/smbls imports or patterns |
86
+ | `symbolsApp.completeCssProps` | `true` | Suggest CSS properties as element keys |
87
+
88
+ ## Commands
89
+
90
+ - **Symbols.app: Toggle Connect** — enable/disable
91
+ - **Symbols.app: Diagnose Connect** — output debug info
92
+
93
+ ## Development
94
+
95
+ ```bash
96
+ npm run compile # build once
97
+ npm run watch # auto-rebuild on save
98
+ npm run package # create .vsix file
99
+ ```
100
+
101
+ Install the `.vsix` locally:
102
+ ```bash
103
+ code --install-extension symbols-app-connect-3.2.4.vsix
104
+ ```
105
+
106
+ Or reload after rebuilding: `Cmd+Shift+P` → "Developer: Reload Window"
@@ -0,0 +1,6 @@
1
+ // Disable ESLint for this folder — TypeScript compiler handles type checking
2
+ export default [
3
+ {
4
+ ignores: ['**/*']
5
+ }
6
+ ]
package/icon.png ADDED
Binary file