@muloka/figma-console-mcp 0.5.1 → 0.5.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.
Files changed (107) hide show
  1. package/README.md +5 -4
  2. package/dist/apps/design-system-dashboard/mcp-app.html +521 -0
  3. package/dist/apps/token-browser/mcp-app.html +410 -0
  4. package/dist/cloudflare/apps/design-system-dashboard/scoring/accessibility.js +277 -0
  5. package/dist/cloudflare/apps/design-system-dashboard/scoring/component-metadata.js +357 -0
  6. package/dist/cloudflare/apps/design-system-dashboard/scoring/consistency.js +341 -0
  7. package/dist/cloudflare/apps/design-system-dashboard/scoring/coverage.js +230 -0
  8. package/dist/cloudflare/apps/design-system-dashboard/scoring/engine.js +92 -0
  9. package/dist/cloudflare/apps/design-system-dashboard/scoring/naming-semantics.js +308 -0
  10. package/dist/cloudflare/apps/design-system-dashboard/scoring/token-architecture.js +349 -0
  11. package/dist/cloudflare/apps/design-system-dashboard/scoring/types.js +40 -0
  12. package/dist/cloudflare/apps/design-system-dashboard/server.js +159 -0
  13. package/dist/cloudflare/apps/token-browser/server.js +136 -0
  14. package/dist/cloudflare/browser-manager.js +157 -0
  15. package/dist/cloudflare/core/accessibility-tools.js +361 -0
  16. package/dist/cloudflare/core/annotation-tools.js +230 -0
  17. package/dist/cloudflare/core/cloud-websocket-connector.js +419 -0
  18. package/dist/cloudflare/core/cloud-websocket-relay.js +198 -0
  19. package/dist/cloudflare/core/comment-tools.js +292 -0
  20. package/dist/cloudflare/core/config.js +153 -0
  21. package/dist/cloudflare/core/console-monitor.js +427 -0
  22. package/dist/cloudflare/core/deep-component-tools.js +128 -0
  23. package/dist/cloudflare/core/design-code-tools.js +2793 -0
  24. package/dist/cloudflare/core/design-system-manifest.js +265 -0
  25. package/dist/cloudflare/core/design-system-tools.js +882 -0
  26. package/dist/cloudflare/core/diagnose-tool.js +100 -0
  27. package/dist/cloudflare/core/diff/changelog-formatter.js +275 -0
  28. package/dist/cloudflare/core/diff/diff-engine.js +334 -0
  29. package/dist/cloudflare/core/diff/property-compare.js +36 -0
  30. package/dist/cloudflare/core/diff/version-cache.js +74 -0
  31. package/dist/cloudflare/core/enrichment/enrichment-service.js +374 -0
  32. package/dist/cloudflare/core/enrichment/index.js +7 -0
  33. package/dist/cloudflare/core/enrichment/relationship-mapper.js +351 -0
  34. package/dist/cloudflare/core/enrichment/style-resolver.js +346 -0
  35. package/dist/cloudflare/core/figjam-tools.js +547 -0
  36. package/dist/cloudflare/core/figma-api.js +509 -0
  37. package/dist/cloudflare/core/figma-connector.js +7 -0
  38. package/dist/cloudflare/core/figma-reconstruction-spec.js +402 -0
  39. package/dist/cloudflare/core/figma-style-extractor.js +311 -0
  40. package/dist/cloudflare/core/figma-tools.js +3353 -0
  41. package/dist/cloudflare/core/identity.js +96 -0
  42. package/dist/cloudflare/core/library-tools.js +580 -0
  43. package/dist/cloudflare/core/logger.js +53 -0
  44. package/dist/cloudflare/core/port-discovery.js +935 -0
  45. package/dist/cloudflare/core/resolve-package-root.js +11 -0
  46. package/dist/cloudflare/core/slides-tools.js +714 -0
  47. package/dist/cloudflare/core/slot-tools.js +334 -0
  48. package/dist/cloudflare/core/snippet-injector.js +96 -0
  49. package/dist/cloudflare/core/tokens/alias-resolver.js +205 -0
  50. package/dist/cloudflare/core/tokens/config.js +294 -0
  51. package/dist/cloudflare/core/tokens/dialect.js +232 -0
  52. package/dist/cloudflare/core/tokens/figma-converter.js +323 -0
  53. package/dist/cloudflare/core/tokens/formatters/css-vars.js +338 -0
  54. package/dist/cloudflare/core/tokens/formatters/dtcg.js +376 -0
  55. package/dist/cloudflare/core/tokens/formatters/index.js +45 -0
  56. package/dist/cloudflare/core/tokens/formatters/json.js +205 -0
  57. package/dist/cloudflare/core/tokens/formatters/less.js +4 -0
  58. package/dist/cloudflare/core/tokens/formatters/scss.js +258 -0
  59. package/dist/cloudflare/core/tokens/formatters/stubs.js +13 -0
  60. package/dist/cloudflare/core/tokens/formatters/style-dictionary-v3.js +213 -0
  61. package/dist/cloudflare/core/tokens/formatters/tailwind-v3.js +237 -0
  62. package/dist/cloudflare/core/tokens/formatters/tailwind-v4.js +335 -0
  63. package/dist/cloudflare/core/tokens/formatters/tokens-studio.js +256 -0
  64. package/dist/cloudflare/core/tokens/formatters/ts-module.js +198 -0
  65. package/dist/cloudflare/core/tokens/index.js +16 -0
  66. package/dist/cloudflare/core/tokens/parsers/css-vars.js +4 -0
  67. package/dist/cloudflare/core/tokens/parsers/dtcg.js +280 -0
  68. package/dist/cloudflare/core/tokens/parsers/index.js +138 -0
  69. package/dist/cloudflare/core/tokens/parsers/json.js +7 -0
  70. package/dist/cloudflare/core/tokens/parsers/scss.js +4 -0
  71. package/dist/cloudflare/core/tokens/parsers/stubs.js +20 -0
  72. package/dist/cloudflare/core/tokens/parsers/style-dictionary-v3.js +4 -0
  73. package/dist/cloudflare/core/tokens/parsers/tailwind-v3.js +4 -0
  74. package/dist/cloudflare/core/tokens/parsers/tailwind-v4.js +4 -0
  75. package/dist/cloudflare/core/tokens/parsers/tokens-studio.js +4 -0
  76. package/dist/cloudflare/core/tokens/schemas.js +152 -0
  77. package/dist/cloudflare/core/tokens/transforms/color.js +12 -0
  78. package/dist/cloudflare/core/tokens/transforms/index.js +29 -0
  79. package/dist/cloudflare/core/tokens/transforms/size.js +7 -0
  80. package/dist/cloudflare/core/tokens/types.js +18 -0
  81. package/dist/cloudflare/core/tokens-tools.js +1788 -0
  82. package/dist/cloudflare/core/types/design-code.js +4 -0
  83. package/dist/cloudflare/core/types/enriched.js +5 -0
  84. package/dist/cloudflare/core/types/index.js +4 -0
  85. package/dist/cloudflare/core/variable-resolver.js +85 -0
  86. package/dist/cloudflare/core/version-tools.js +1199 -0
  87. package/dist/cloudflare/core/websocket-connector.js +436 -0
  88. package/dist/cloudflare/core/websocket-server.js +1009 -0
  89. package/dist/cloudflare/core/write-tools.js +2506 -0
  90. package/dist/cloudflare/index.js +3010 -0
  91. package/dist/core/accessibility-tools.d.ts.map +1 -1
  92. package/dist/core/accessibility-tools.js +7 -6
  93. package/dist/core/accessibility-tools.js.map +1 -1
  94. package/dist/core/http-request-guard.d.ts +20 -0
  95. package/dist/core/http-request-guard.d.ts.map +1 -0
  96. package/dist/core/http-request-guard.js +61 -0
  97. package/dist/core/http-request-guard.js.map +1 -0
  98. package/dist/core/port-discovery.d.ts +9 -0
  99. package/dist/core/port-discovery.d.ts.map +1 -1
  100. package/dist/core/port-discovery.js +40 -14
  101. package/dist/core/port-discovery.js.map +1 -1
  102. package/dist/core/tokens/schemas.d.ts +6 -6
  103. package/dist/local.d.ts.map +1 -1
  104. package/dist/local.js +9 -10
  105. package/dist/local.js.map +1 -1
  106. package/figma-desktop-bridge/ui.html +7 -0
  107. package/package.json +2 -2
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Logging infrastructure using pino
3
+ */
4
+ import pino from 'pino';
5
+ /**
6
+ * Create logger instance
7
+ * Note: In Cloudflare Workers, console methods are automatically captured
8
+ */
9
+ export function createLogger(level = 'info') {
10
+ // Check if running in Cloudflare Workers environment
11
+ const isWorkers = typeof globalThis.caches !== 'undefined';
12
+ if (isWorkers) {
13
+ // Cloudflare Workers: use simple console-based logging
14
+ return pino({
15
+ level: process.env.LOG_LEVEL || level,
16
+ browser: {
17
+ asObject: true,
18
+ },
19
+ });
20
+ }
21
+ // Node.js environment: detect MCP stdio mode
22
+ // When stdout is not a TTY, we're likely in MCP stdio mode
23
+ const isMCPStdio = !process.stdout.isTTY;
24
+ // MCP stdio mode: NO pretty printing, stderr only
25
+ if (isMCPStdio) {
26
+ return pino({ level: process.env.LOG_LEVEL || level }, pino.destination({ dest: 2, sync: false }));
27
+ }
28
+ // Development/terminal mode: use pretty printing
29
+ return pino({
30
+ level: process.env.LOG_LEVEL || level,
31
+ transport: process.env.NODE_ENV !== 'production'
32
+ ? {
33
+ target: 'pino-pretty',
34
+ options: {
35
+ colorize: true,
36
+ translateTime: 'HH:MM:ss',
37
+ ignore: 'pid,hostname',
38
+ destination: 2, // Explicit stderr for transport
39
+ },
40
+ }
41
+ : undefined,
42
+ });
43
+ }
44
+ /**
45
+ * Default logger instance
46
+ */
47
+ export const logger = createLogger();
48
+ /**
49
+ * Create child logger with additional context
50
+ */
51
+ export function createChildLogger(bindings) {
52
+ return logger.child(bindings);
53
+ }