You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implement custom style editor support for NaverMapView (#161)
* docs: standardize claude pattern keywords and update documentation
- Standardize keywords in all claude pattern files for consistency
- Update CLAUDE.md pattern list table with new keyword format
- Update claude commands and settings configuration
- Update package dependencies
* docs: complete pattern keyword standardization
- Finalize keyword updates for remaining pattern files
- Ensure consistent hyphenated keyword format across all patterns
- Update CLAUDE.md with final pattern list table
* feat: add expo example as submodule
- Add mym0404/naver-map-expo-example as git submodule
- Located at expoexample/ directory for easy access
- Provides Expo SDK 54 integration example with full map features
* feat: implement custom style editor support for NaverMapView
## Features
- Add customStyleId prop to apply Naver Style Editor styles
- Add onCustomStyleLoaded callback for successful style loading
- Add onCustomStyleLoadFailed callback with error message
- Support both iOS and Android platforms with native implementations
## Implementation Details
- TypeScript: Added new props to NaverMapViewProps interface
- Native Spec: Updated codegen specification with new props and events
- iOS: Implemented setCustomStyleId with load/fail handlers using NMFMapView
- Android: Implemented setCustomStyleId with OnCustomStyleLoadCallback
- Example: Added toggle button and test with style ID bf462d9f-fa82-413d-ab7c-df9c5e3c9f7f
- Docs: Added custom style guide in English and Korean
## Testing
- Android build: ✅ Successful (gradlew assembleDebug)
- Example app: Added "Custom Style" toggle for testing
- Error handling: Proper error message parsing for both platforms
## Breaking Changes
None - all new props are optional
## References
- Style Editor: https://style-editor.map.naver.com
* docs: add custom-style to Korean meta.json
* fix: improve custom style API for iOS implementation
- Remove unused _isRecycled flag
- Fix setCustomStyleId method handler parameter names (LoadHandler/FailHandler)
- Use local mapView variable for cleaner code
- Simplify style clearing when customStyleId is nil
* chore: update example iOS dependencies
- Update library version from 2.5.6 to 2.6.1
- Update ReactCodegen checksums
* docs: remove completed custom map styling milestone
Remove custom map styling section from milestone documentation as the feature has been implemented
* docs: remove redundant pattern detection section from CLAUDE.md
Clean up duplicate keyword detection and command intent recognition instructions
-`pattern-name`: Name of the code pattern, Don't include `pattern` in the name
23
-
-`keywords`: Comma-separated **specific** keywords for pattern search and CLAUDE.md listing (required). Use only unique, pattern-specific terms. Avoid generic language names (javascript, nodejs, python) or broad categories. Focus on the distinctive aspects of the pattern (e.g., "commander", "subcommands", "cli-options" rather than "javascript, nodejs, cli")
23
+
-`keywords`: Comma-separated keywords for pattern search (3-5 keywords recommended)
24
+
-**DO**: Use conceptual terms that describe the pattern's purpose and functionality
25
+
-**DO**: Include technology-specific terms when they're central to the pattern (e.g., "fabric", "turbo-module", "codegen")
26
+
-**DO**: Focus on what the pattern DOES, not implementation details
27
+
-**DON'T**: Use generic language names alone (javascript, typescript, python)
28
+
-**DON'T**: Use specific class/method names unless they're widely recognized APIs
29
+
-**DON'T**: Over-specify with implementation details
-`language`: Programming language (e.g., javascript, typescript, python, go, rust)
25
40
-`explanation`: Brief explanation (1-2 sentences) of what this pattern does and when to use it
26
41
-`pattern-content`: Complete code snippet or pattern content
@@ -143,7 +158,7 @@ Claude will:
143
158
2. Generate <formattedcontent> with the above rules.
144
159
3. Execute:
145
160
```bash
146
-
npx -y cc-self-refer pattern create "api-error-handler""error,handler,api,utilities""typescript""Utility pattern for handling API errors in TypeScript applications with proper error typing."<<'EOF'
161
+
npx cc-self-refer pattern create "api-error-handler""error,handler,api,utilities""typescript""Utility pattern for handling API errors in TypeScript applications with proper error typing."<<'EOF'
**CRITICAL: After every user response, analyze what implementation details are still missing and ask deeper questions. NEVER stop asking until you know exactly how to implement everything.**
46
77
47
78
**Self-Assessment Questions - Ask yourself after each user response:**
79
+
- "Can any existing patterns solve this?" → Check patterns first
48
80
- "What files exactly need to be created or modified?"
49
81
- "What specific code changes are required?"
50
82
- "What dependencies need to be installed?"
51
83
- "What configuration changes are needed?"
52
84
- "How will this integrate with existing code?"
53
85
- "What testing approach should be used?"
86
+
- "Which patterns should be referenced in the plan?"
54
87
55
-
**Continuous Implementation Deep-Dive Pattern:**
56
-
- If user says "add authentication" → Ask: Which files handle auth? What database changes? JWT or sessions? Middleware needed? Registration flow? Password reset?
57
-
- If user says "improve performance" → Ask: What specific bottlenecks? Which components are slow? Database queries? Frontend rendering? API endpoints? Caching strategy?
58
-
- If user says "refactor components" → Ask: Which exact components? What's the new structure? How to maintain backwards compatibility? Migration steps?
88
+
**Continuous Implementation Deep-Dive Pattern (Skip if covered by patterns):**
89
+
- If user says "add authentication" → First check: Any auth patterns exist? If not, ask: Which files handle auth? What database changes? JWT or sessions? Middleware needed? Registration flow? Password reset?
90
+
- If user says "improve performance" → First check: Any performance patterns exist? If not, ask: What specific bottlenecks? Which components are slow? Database queries? Frontend rendering? API endpoints? Caching strategy?
91
+
- If user says "refactor components" → First check: Any refactoring patterns exist? If not, ask: Which exact components? What's the new structure? How to maintain backwards compatibility? Migration steps?
59
92
60
-
**Keep Digging Until You Know:**
61
-
- Exact file paths that need changes
62
-
- Specific functions/components to create/modify
93
+
**Keep Digging Until You Know (Unless Pattern Already Provides):**
94
+
- Exact file paths that need changes (or pattern references)
95
+
- Specific functions/components to create/modify (or pattern usage)
63
96
- Complete dependency list with versions
64
97
- Step-by-step implementation sequence
65
98
- All configuration changes required
66
99
- Comprehensive testing strategy
67
100
- Success criteria with measurable outcomes
101
+
- Which patterns to apply and where
68
102
69
103
**Signs You Need More Implementation Details:**
70
104
- You don't know exact file paths → ASK MORE
@@ -79,7 +113,7 @@ Please describe:
79
113
After complete implementation understanding, create the plan using:
80
114
81
115
```bash
82
-
npx -y cc-self-refer plan create "<plan-title>"<<'EOF'
116
+
npx cc-self-refer plan create "<plan-title>"<<'EOF'
0 commit comments