@stacksjs/defaults 0.74.41 → 0.74.43

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 (81) hide show
  1. package/ai/skills/stacks-actions/SKILL.md +1 -1
  2. package/ai/skills/stacks-cms/SKILL.md +4 -4
  3. package/ai/skills/stacks-composables/SKILL.md +51 -2
  4. package/ai/skills/stacks-config/SKILL.md +1 -1
  5. package/ai/skills/stacks-dashboard/SKILL.md +1 -1
  6. package/ai/skills/stacks-database/SKILL.md +1 -1
  7. package/ai/skills/stacks-migrations/SKILL.md +2 -2
  8. package/ai/skills/stacks-models/SKILL.md +16 -2
  9. package/ai/skills/stacks-orm/SKILL.md +1 -1
  10. package/ai/skills/stacks-technical-diagrams/LICENSE +1 -1
  11. package/ai/skills/stacks-technical-diagrams/SKILL.md +257 -229
  12. package/ai/skills/stacks-technical-diagrams/THIRD_PARTY_NOTICES.md +69 -0
  13. package/ai/skills/stacks-technical-diagrams/assets/JetBrainsMono-OFL.txt +93 -0
  14. package/ai/skills/stacks-technical-diagrams/assets/template.html +14588 -929
  15. package/ai/skills/stacks-technical-diagrams/bin/diagrams +10 -0
  16. package/ai/skills/stacks-technical-diagrams/bin/open-artifact.mjs +86 -0
  17. package/ai/skills/stacks-technical-diagrams/bin/preview.mjs +654 -0
  18. package/ai/skills/stacks-technical-diagrams/bin/technical-diagrams.mjs +1898 -89
  19. package/ai/skills/stacks-technical-diagrams/bin/visual-check.mjs +829 -0
  20. package/ai/skills/stacks-technical-diagrams/brand-marks/README.md +31 -0
  21. package/ai/skills/stacks-technical-diagrams/brand-marks/catalog.json +131 -0
  22. package/ai/skills/stacks-technical-diagrams/delta/architecture-delta.mjs +1221 -0
  23. package/ai/skills/stacks-technical-diagrams/examples/agent-run.lifecycle.json +18 -22
  24. package/ai/skills/stacks-technical-diagrams/examples/agent-tool-call.workflow.json +58 -52
  25. package/ai/skills/stacks-technical-diagrams/examples/async-job-roundtrip.sequence.json +61 -0
  26. package/ai/skills/stacks-technical-diagrams/examples/brand-aware-delivery.architecture.json +47 -0
  27. package/ai/skills/stacks-technical-diagrams/examples/cache-miss-request.sequence.json +30 -23
  28. package/ai/skills/stacks-technical-diagrams/examples/checkout-platform.base.architecture.json +31 -0
  29. package/ai/skills/stacks-technical-diagrams/examples/checkout-platform.head.architecture.json +31 -0
  30. package/ai/skills/stacks-technical-diagrams/examples/deployment-release.lifecycle.json +49 -0
  31. package/ai/skills/stacks-technical-diagrams/examples/event-stream.dataflow.json +57 -0
  32. package/ai/skills/stacks-technical-diagrams/examples/incident-response.workflow.json +64 -0
  33. package/ai/skills/stacks-technical-diagrams/examples/product-analytics.dataflow.json +22 -16
  34. package/ai/skills/stacks-technical-diagrams/examples/production-deployment.architecture.json +71 -0
  35. package/ai/skills/stacks-technical-diagrams/examples/release-delivery.workflow.json +62 -0
  36. package/ai/skills/stacks-technical-diagrams/examples/web-app.architecture.json +16 -11
  37. package/ai/skills/stacks-technical-diagrams/migrations/workflow-v2.mjs +279 -0
  38. package/ai/skills/stacks-technical-diagrams/recipes/scenarios.mjs +391 -0
  39. package/ai/skills/stacks-technical-diagrams/references/authoring-contract.md +243 -0
  40. package/ai/skills/stacks-technical-diagrams/references/brand-marks.md +65 -0
  41. package/ai/skills/stacks-technical-diagrams/references/delivery-contract.md +120 -0
  42. package/ai/skills/stacks-technical-diagrams/references/viewer-runtime.md +45 -0
  43. package/ai/skills/stacks-technical-diagrams/renderers/architecture/render-architecture.mjs +780 -73
  44. package/ai/skills/stacks-technical-diagrams/renderers/dataflow/README.md +25 -3
  45. package/ai/skills/stacks-technical-diagrams/renderers/dataflow/render-dataflow.mjs +240 -52
  46. package/ai/skills/stacks-technical-diagrams/renderers/lifecycle/README.md +31 -7
  47. package/ai/skills/stacks-technical-diagrams/renderers/lifecycle/render-lifecycle.mjs +227 -50
  48. package/ai/skills/stacks-technical-diagrams/renderers/sequence/README.md +36 -6
  49. package/ai/skills/stacks-technical-diagrams/renderers/sequence/render-sequence.mjs +270 -63
  50. package/ai/skills/stacks-technical-diagrams/renderers/shared/brand-marks.mjs +563 -0
  51. package/ai/skills/stacks-technical-diagrams/renderers/shared/bun-runtime.mjs +20 -0
  52. package/ai/skills/stacks-technical-diagrams/renderers/shared/cli.mjs +186 -10
  53. package/ai/skills/stacks-technical-diagrams/renderers/shared/desktop-readability.mjs +26 -0
  54. package/ai/skills/stacks-technical-diagrams/renderers/shared/diagnostics.mjs +127 -0
  55. package/ai/skills/stacks-technical-diagrams/renderers/shared/engineering-profiles.mjs +157 -0
  56. package/ai/skills/stacks-technical-diagrams/renderers/shared/generated-brand-marks.mjs +2003 -0
  57. package/ai/skills/stacks-technical-diagrams/renderers/shared/generated-validators.mjs +3 -3
  58. package/ai/skills/stacks-technical-diagrams/renderers/shared/geometry.mjs +1195 -2
  59. package/ai/skills/stacks-technical-diagrams/renderers/shared/i18n.mjs +595 -0
  60. package/ai/skills/stacks-technical-diagrams/renderers/shared/legend.mjs +217 -0
  61. package/ai/skills/stacks-technical-diagrams/renderers/shared/output-path.mjs +340 -0
  62. package/ai/skills/stacks-technical-diagrams/renderers/shared/repository-evidence.mjs +238 -0
  63. package/ai/skills/stacks-technical-diagrams/renderers/shared/repository-location.mjs +58 -0
  64. package/ai/skills/stacks-technical-diagrams/renderers/shared/text-fit.mjs +49 -0
  65. package/ai/skills/stacks-technical-diagrams/renderers/shared/utils.mjs +163 -19
  66. package/ai/skills/stacks-technical-diagrams/renderers/shared/validator.mjs +51 -5
  67. package/ai/skills/stacks-technical-diagrams/renderers/workflow/README.md +137 -17
  68. package/ai/skills/stacks-technical-diagrams/renderers/workflow/render-workflow.mjs +24 -470
  69. package/ai/skills/stacks-technical-diagrams/renderers/workflow/workflow-compiler.mjs +4400 -0
  70. package/ai/skills/stacks-technical-diagrams/renderers/workflow/workflow-migration-geometry.mjs +144 -0
  71. package/ai/skills/stacks-technical-diagrams/schemas/README.md +154 -11
  72. package/ai/skills/stacks-technical-diagrams/schemas/architecture.schema.json +61 -4
  73. package/ai/skills/stacks-technical-diagrams/schemas/common.schema.json +72 -0
  74. package/ai/skills/stacks-technical-diagrams/schemas/dataflow.schema.json +40 -18
  75. package/ai/skills/stacks-technical-diagrams/schemas/lifecycle.schema.json +43 -18
  76. package/ai/skills/stacks-technical-diagrams/schemas/sequence.schema.json +41 -4
  77. package/ai/skills/stacks-technical-diagrams/schemas/workflow.schema.json +97 -1
  78. package/ai/skills/stacks-technical-diagrams/scripts/check-render-output.mjs +551 -12
  79. package/ai/skills/stacks-technical-diagrams/scripts/render-examples.mjs +3 -4
  80. package/ide/vscode/package.json +1 -1
  81. package/package.json +2 -2
@@ -0,0 +1,10 @@
1
+ #!/bin/sh
2
+ # Thin launcher for the technical-diagrams CLI.
3
+ #
4
+ # It exists so every documented command is one copy-pasteable line. Bun runs the
5
+ # CLI against the skill's own empty bunfig, so a diagram render never inherits
6
+ # the host application's `preload` list or its .env file.
7
+ set -e
8
+ skill_root=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
9
+ exec bun --config="$skill_root/bunfig.toml" --no-env-file \
10
+ "$skill_root/bin/technical-diagrams.mjs" "$@"
@@ -0,0 +1,86 @@
1
+ import { spawnSync } from 'node:child_process';
2
+ import path from 'node:path';
3
+
4
+ const OPENERS = {
5
+ darwin: {
6
+ command: 'open',
7
+ method: 'open',
8
+ args: (target) => [target],
9
+ },
10
+ linux: {
11
+ command: 'xdg-open',
12
+ method: 'xdg-open',
13
+ args: (target) => [target],
14
+ },
15
+ win32: {
16
+ command: 'powershell.exe',
17
+ method: 'powershell',
18
+ // Keep the command constant and pass the target through PowerShell's
19
+ // argument array. Paths are never interpolated into executable source.
20
+ args: (target) => [
21
+ '-NoProfile',
22
+ '-NonInteractive',
23
+ '-Command',
24
+ 'Start-Process -FilePath $args[0]',
25
+ target,
26
+ ],
27
+ },
28
+ };
29
+
30
+ function launchTarget(target, options = {}) {
31
+ const platform = options.platform || process.platform;
32
+ const opener = OPENERS[platform];
33
+ if (!opener) {
34
+ return {
35
+ requested: true,
36
+ status: 'unsupported',
37
+ target,
38
+ method: null,
39
+ };
40
+ }
41
+
42
+ const spawn = options.spawn || spawnSync;
43
+ let result;
44
+ try {
45
+ result = spawn(opener.command, opener.args(target), {
46
+ encoding: 'utf8',
47
+ shell: false,
48
+ stdio: 'ignore',
49
+ timeout: options.timeoutMs || 5000,
50
+ windowsHide: true,
51
+ });
52
+ } catch {
53
+ result = { error: new Error('opener threw') };
54
+ }
55
+
56
+ let status = 'opened';
57
+ if (result?.error?.code === 'ENOENT') status = 'unsupported';
58
+ else if (result?.error || result?.signal || result?.status !== 0) status = 'failed';
59
+
60
+ return {
61
+ requested: true,
62
+ status,
63
+ target,
64
+ method: opener.method,
65
+ };
66
+ }
67
+
68
+ export function openArtifact(target, options = {}) {
69
+ return launchTarget(path.resolve(target), options);
70
+ }
71
+
72
+ export function openLoopbackUrl(target, options = {}) {
73
+ let url;
74
+ try {
75
+ url = new URL(target);
76
+ } catch {
77
+ throw new TypeError('Preview URL must be a valid loopback HTTP URL.');
78
+ }
79
+ if (url.protocol !== 'http:' || url.hostname !== '127.0.0.1' || !url.port) {
80
+ throw new TypeError('Preview URL must be a loopback URL using http://127.0.0.1:<port>.');
81
+ }
82
+ if (url.username || url.password || url.pathname !== '/' || url.search || url.hash) {
83
+ throw new TypeError('Preview URL must target the loopback preview root.');
84
+ }
85
+ return launchTarget(url.href, options);
86
+ }