@owlmeans/viable-common 0.0.44 → 0.0.46
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 +4 -3
- package/agent-meta/manifest.json +2 -2
- package/agent-meta/skills/agent-presentation/SKILL.md +4 -4
- package/agent-meta/skills/viable-common/SKILL.md +59 -30
- package/build/agent/index.d.ts +1 -0
- package/build/agent/index.d.ts.map +1 -1
- package/build/agent/index.js.map +1 -1
- package/build/agent/presentation/types.d.ts +21 -0
- package/build/agent/presentation/types.d.ts.map +1 -0
- package/build/agent/presentation/types.js +2 -0
- package/build/agent/presentation/types.js.map +1 -0
- package/build/agent/presentation.d.ts +10 -8
- package/build/agent/presentation.d.ts.map +1 -1
- package/build/agent/presentation.js +216 -195
- package/build/agent/presentation.js.map +1 -1
- package/build/agent/types.local.d.ts +3 -1
- package/build/agent/types.local.d.ts.map +1 -1
- package/build/areas/index.d.ts +1 -0
- package/build/areas/index.d.ts.map +1 -1
- package/build/areas/index.js.map +1 -1
- package/build/areas/tenancy/types.d.ts +23 -0
- package/build/areas/tenancy/types.d.ts.map +1 -0
- package/build/areas/tenancy/types.js +2 -0
- package/build/areas/tenancy/types.js.map +1 -0
- package/build/areas/tenancy.d.ts +5 -14
- package/build/areas/tenancy.d.ts.map +1 -1
- package/build/areas/tenancy.js +20 -26
- package/build/areas/tenancy.js.map +1 -1
- package/build/ba/connecting/types.d.ts +45 -0
- package/build/ba/connecting/types.d.ts.map +1 -0
- package/build/ba/connecting/types.js +2 -0
- package/build/ba/connecting/types.js.map +1 -0
- package/build/ba/connecting.d.ts +4 -0
- package/build/ba/connecting.d.ts.map +1 -0
- package/build/ba/connecting.js +47 -0
- package/build/ba/connecting.js.map +1 -0
- package/build/ba/helpers.d.ts +4 -39
- package/build/ba/helpers.d.ts.map +1 -1
- package/build/ba/helpers.js +5 -79
- package/build/ba/helpers.js.map +1 -1
- package/build/ba/index.d.ts +2 -0
- package/build/ba/index.d.ts.map +1 -1
- package/build/ba/index.js +1 -0
- package/build/ba/index.js.map +1 -1
- package/build/blueprint/types.d.ts +1 -2
- package/build/blueprint/types.d.ts.map +1 -1
- package/build/connect/branding/types.d.ts +28 -0
- package/build/connect/branding/types.d.ts.map +1 -0
- package/build/connect/branding/types.js +2 -0
- package/build/connect/branding/types.js.map +1 -0
- package/build/connect/consts.d.ts +2 -0
- package/build/connect/consts.d.ts.map +1 -1
- package/build/connect/consts.js +2 -0
- package/build/connect/consts.js.map +1 -1
- package/build/connect/conversion/types.d.ts +93 -0
- package/build/connect/conversion/types.d.ts.map +1 -0
- package/build/connect/conversion/types.js +2 -0
- package/build/connect/conversion/types.js.map +1 -0
- package/build/connect/entrypoints/types.d.ts +30 -0
- package/build/connect/entrypoints/types.d.ts.map +1 -0
- package/build/connect/entrypoints/types.js +2 -0
- package/build/connect/entrypoints/types.js.map +1 -0
- package/build/connect/entrypoints.d.ts +17 -11
- package/build/connect/entrypoints.d.ts.map +1 -1
- package/build/connect/entrypoints.js.map +1 -1
- package/build/connect/errors/types.d.ts +20 -0
- package/build/connect/errors/types.d.ts.map +1 -0
- package/build/connect/errors/types.js +2 -0
- package/build/connect/errors/types.js.map +1 -0
- package/build/connect/errors.d.ts +1 -1
- package/build/connect/errors.d.ts.map +1 -1
- package/build/connect/index.d.ts +13 -3
- package/build/connect/index.d.ts.map +1 -1
- package/build/connect/index.js +1 -1
- package/build/connect/index.js.map +1 -1
- package/build/connect/kit/types.d.ts +52 -0
- package/build/connect/kit/types.d.ts.map +1 -0
- package/build/connect/kit/types.js +2 -0
- package/build/connect/kit/types.js.map +1 -0
- package/build/connect/model-tier/types.d.ts +16 -0
- package/build/connect/model-tier/types.d.ts.map +1 -0
- package/build/connect/model-tier/types.js +2 -0
- package/build/connect/model-tier/types.js.map +1 -0
- package/build/connect/model-tier.d.ts +4 -0
- package/build/connect/model-tier.d.ts.map +1 -0
- package/build/connect/model-tier.js +21 -0
- package/build/connect/model-tier.js.map +1 -0
- package/build/connect/ops/types.d.ts +198 -0
- package/build/connect/ops/types.d.ts.map +1 -0
- package/build/connect/ops/types.js +2 -0
- package/build/connect/ops/types.js.map +1 -0
- package/build/connect/pipeline/types.d.ts +39 -0
- package/build/connect/pipeline/types.d.ts.map +1 -0
- package/build/connect/pipeline/types.js +2 -0
- package/build/connect/pipeline/types.js.map +1 -0
- package/build/connect/project/types.d.ts +127 -0
- package/build/connect/project/types.d.ts.map +1 -0
- package/build/connect/project/types.js +2 -0
- package/build/connect/project/types.js.map +1 -0
- package/build/connect/references/types.d.ts +157 -0
- package/build/connect/references/types.d.ts.map +1 -0
- package/build/connect/references/types.js +2 -0
- package/build/connect/references/types.js.map +1 -0
- package/build/connect/references/types.local.d.ts +5 -0
- package/build/connect/references/types.local.d.ts.map +1 -0
- package/build/connect/references/types.local.js.map +1 -0
- package/build/connect/references.d.ts +1 -1
- package/build/connect/references.d.ts.map +1 -1
- package/build/connect/references.js.map +1 -1
- package/build/connect/schemas.d.ts +8 -5
- package/build/connect/schemas.d.ts.map +1 -1
- package/build/connect/schemas.js +1 -3
- package/build/connect/schemas.js.map +1 -1
- package/build/connect/session/types.d.ts +73 -0
- package/build/connect/session/types.d.ts.map +1 -0
- package/build/connect/session/types.js +2 -0
- package/build/connect/session/types.js.map +1 -0
- package/build/connect/settings/types.d.ts +48 -0
- package/build/connect/settings/types.d.ts.map +1 -0
- package/build/connect/settings/types.js +2 -0
- package/build/connect/settings/types.js.map +1 -0
- package/build/connect/types.d.ts +1 -198
- package/build/connect/types.d.ts.map +1 -1
- package/build/convert/analysis/types.d.ts +93 -0
- package/build/convert/analysis/types.d.ts.map +1 -0
- package/build/convert/analysis/types.js +2 -0
- package/build/convert/analysis/types.js.map +1 -0
- package/build/convert/{consts.local.d.ts → census/consts.local.d.ts} +1 -1
- package/build/convert/census/consts.local.d.ts.map +1 -0
- package/build/convert/{consts.local.js → census/consts.local.js} +1 -1
- package/build/convert/census/consts.local.js.map +1 -0
- package/build/convert/census/types.d.ts +176 -0
- package/build/convert/census/types.d.ts.map +1 -0
- package/build/convert/census/types.js +2 -0
- package/build/convert/census/types.js.map +1 -0
- package/build/convert/census.d.ts +4 -0
- package/build/convert/census.d.ts.map +1 -0
- package/build/convert/census.js +83 -0
- package/build/convert/census.js.map +1 -0
- package/build/convert/consts.d.ts +4 -0
- package/build/convert/consts.d.ts.map +1 -1
- package/build/convert/consts.js +4 -0
- package/build/convert/consts.js.map +1 -1
- package/build/convert/detection/types.d.ts +67 -0
- package/build/convert/detection/types.d.ts.map +1 -0
- package/build/convert/detection/types.js +2 -0
- package/build/convert/detection/types.js.map +1 -0
- package/build/convert/docs/types.d.ts +129 -0
- package/build/convert/docs/types.d.ts.map +1 -0
- package/build/convert/docs/types.js +2 -0
- package/build/convert/docs/types.js.map +1 -0
- package/build/convert/docs.d.ts +4 -0
- package/build/convert/docs.d.ts.map +1 -0
- package/build/convert/docs.js +9 -0
- package/build/convert/docs.js.map +1 -0
- package/build/convert/estimate/types.d.ts +77 -0
- package/build/convert/estimate/types.d.ts.map +1 -0
- package/build/convert/estimate/types.js +2 -0
- package/build/convert/estimate/types.js.map +1 -0
- package/build/convert/estimate.d.ts +11 -0
- package/build/convert/estimate.d.ts.map +1 -0
- package/build/convert/estimate.js +18 -0
- package/build/convert/estimate.js.map +1 -0
- package/build/convert/helpers.d.ts +14 -78
- package/build/convert/helpers.d.ts.map +1 -1
- package/build/convert/helpers.js +27 -199
- package/build/convert/helpers.js.map +1 -1
- package/build/convert/index.d.ts +14 -0
- package/build/convert/index.d.ts.map +1 -1
- package/build/convert/index.js +5 -0
- package/build/convert/index.js.map +1 -1
- package/build/convert/origin/types.d.ts +41 -0
- package/build/convert/origin/types.d.ts.map +1 -0
- package/build/convert/origin/types.js +2 -0
- package/build/convert/origin/types.js.map +1 -0
- package/build/convert/origin.d.ts +4 -0
- package/build/convert/origin.d.ts.map +1 -0
- package/build/convert/origin.js +25 -0
- package/build/convert/origin.js.map +1 -0
- package/build/convert/record/types.d.ts +98 -0
- package/build/convert/record/types.d.ts.map +1 -0
- package/build/convert/record/types.js +2 -0
- package/build/convert/record/types.js.map +1 -0
- package/build/convert/schemas.d.ts +7 -6
- package/build/convert/schemas.d.ts.map +1 -1
- package/build/convert/schemas.js +1 -5
- package/build/convert/schemas.js.map +1 -1
- package/build/convert/stage/types.d.ts +27 -0
- package/build/convert/stage/types.d.ts.map +1 -0
- package/build/convert/stage/types.js +2 -0
- package/build/convert/stage/types.js.map +1 -0
- package/build/convert/stage.d.ts +4 -0
- package/build/convert/stage.d.ts.map +1 -0
- package/build/convert/stage.js +25 -0
- package/build/convert/stage.js.map +1 -0
- package/build/convert/taxonomy/types.d.ts +71 -0
- package/build/convert/taxonomy/types.d.ts.map +1 -0
- package/build/convert/taxonomy/types.js +2 -0
- package/build/convert/taxonomy/types.js.map +1 -0
- package/build/convert/types.d.ts +1 -657
- package/build/convert/types.d.ts.map +1 -1
- package/build/convert/utils.d.ts +2 -1
- package/build/convert/utils.d.ts.map +1 -1
- package/build/convert/utils.js +5 -4
- package/build/convert/utils.js.map +1 -1
- package/build/design/helpers.d.ts +9 -49
- package/build/design/helpers.d.ts.map +1 -1
- package/build/design/helpers.js +17 -224
- package/build/design/helpers.js.map +1 -1
- package/build/design/index.d.ts +3 -0
- package/build/design/index.d.ts.map +1 -1
- package/build/design/index.js +1 -0
- package/build/design/index.js.map +1 -1
- package/build/design/runtime/types.d.ts +16 -0
- package/build/design/runtime/types.d.ts.map +1 -0
- package/build/design/runtime/types.js +2 -0
- package/build/design/runtime/types.js.map +1 -0
- package/build/design/runtime.d.ts +6 -2
- package/build/design/runtime.d.ts.map +1 -1
- package/build/design/runtime.js +13 -5
- package/build/design/runtime.js.map +1 -1
- package/build/design/story/types.d.ts +67 -0
- package/build/design/story/types.d.ts.map +1 -0
- package/build/design/story/types.js +2 -0
- package/build/design/story/types.js.map +1 -0
- package/build/design/story.d.ts +4 -0
- package/build/design/story.d.ts.map +1 -0
- package/build/design/story.js +184 -0
- package/build/design/story.js.map +1 -0
- package/build/dev/types.local.d.ts +2 -1
- package/build/dev/types.local.d.ts.map +1 -1
- package/build/index.d.ts +1 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +1 -0
- package/build/index.js.map +1 -1
- package/build/integrity/index.d.ts +4 -0
- package/build/integrity/index.d.ts.map +1 -1
- package/build/integrity/index.js +2 -0
- package/build/integrity/index.js.map +1 -1
- package/build/integrity/layout/consts.d.ts +59 -0
- package/build/integrity/layout/consts.d.ts.map +1 -0
- package/build/integrity/layout/consts.js +66 -0
- package/build/integrity/layout/consts.js.map +1 -0
- package/build/integrity/layout/consts.local.d.ts +18 -0
- package/build/integrity/layout/consts.local.d.ts.map +1 -0
- package/build/integrity/layout/consts.local.js +176 -0
- package/build/integrity/layout/consts.local.js.map +1 -0
- package/build/integrity/layout/types.d.ts +35 -0
- package/build/integrity/layout/types.d.ts.map +1 -0
- package/build/integrity/layout/types.js +2 -0
- package/build/integrity/layout/types.js.map +1 -0
- package/build/integrity/layout.d.ts +4 -0
- package/build/integrity/layout.d.ts.map +1 -0
- package/build/integrity/layout.js +25 -0
- package/build/integrity/layout.js.map +1 -0
- package/build/integrity/types.d.ts +3 -1
- package/build/integrity/types.d.ts.map +1 -1
- package/build/integrity/utils.d.ts +6 -81
- package/build/integrity/utils.d.ts.map +1 -1
- package/build/integrity/utils.js +11 -279
- package/build/integrity/utils.js.map +1 -1
- package/build/integrity/verify/types.d.ts +26 -0
- package/build/integrity/verify/types.d.ts.map +1 -0
- package/build/integrity/verify/types.js +2 -0
- package/build/integrity/verify/types.js.map +1 -0
- package/build/integrity/verify.d.ts +5 -19
- package/build/integrity/verify.d.ts.map +1 -1
- package/build/integrity/verify.js +164 -175
- package/build/integrity/verify.js.map +1 -1
- package/build/intent/consts.d.ts +16 -0
- package/build/intent/consts.d.ts.map +1 -1
- package/build/intent/consts.js +63 -0
- package/build/intent/consts.js.map +1 -1
- package/build/intent/entrypoints.d.ts +2 -11
- package/build/intent/entrypoints.d.ts.map +1 -1
- package/build/intent/entrypoints.js.map +1 -1
- package/build/intent/flow.d.ts.map +1 -1
- package/build/intent/flow.js +2 -2
- package/build/intent/flow.js.map +1 -1
- package/build/intent/index.d.ts +0 -1
- package/build/intent/index.d.ts.map +1 -1
- package/build/intent/index.js +0 -1
- package/build/intent/index.js.map +1 -1
- package/build/intent/types.d.ts +13 -2
- package/build/intent/types.d.ts.map +1 -1
- package/build/legal/consts.d.ts +36 -0
- package/build/legal/consts.d.ts.map +1 -0
- package/build/legal/consts.js +16 -0
- package/build/legal/consts.js.map +1 -0
- package/build/legal/index.d.ts +3 -0
- package/build/legal/index.d.ts.map +1 -0
- package/build/legal/index.js +2 -0
- package/build/legal/index.js.map +1 -0
- package/build/legal/types.d.ts +10 -0
- package/build/legal/types.d.ts.map +1 -0
- package/build/legal/types.js +2 -0
- package/build/legal/types.js.map +1 -0
- package/build/moderation/index.d.ts +2 -0
- package/build/moderation/index.d.ts.map +1 -1
- package/build/moderation/index.js +1 -0
- package/build/moderation/index.js.map +1 -1
- package/build/moderation/utils.d.ts +3 -15
- package/build/moderation/utils.d.ts.map +1 -1
- package/build/moderation/utils.js +5 -30
- package/build/moderation/utils.js.map +1 -1
- package/build/moderation/verdict/types.d.ts +24 -0
- package/build/moderation/verdict/types.d.ts.map +1 -0
- package/build/moderation/verdict/types.js +2 -0
- package/build/moderation/verdict/types.js.map +1 -0
- package/build/moderation/verdict.d.ts +4 -0
- package/build/moderation/verdict.d.ts.map +1 -0
- package/build/moderation/verdict.js +21 -0
- package/build/moderation/verdict.js.map +1 -0
- package/build/planning/card/types.d.ts +42 -0
- package/build/planning/card/types.d.ts.map +1 -0
- package/build/planning/card/types.js +2 -0
- package/build/planning/card/types.js.map +1 -0
- package/build/planning/card.d.ts +4 -0
- package/build/planning/card.d.ts.map +1 -0
- package/build/planning/card.js +51 -0
- package/build/planning/card.js.map +1 -0
- package/build/planning/flows.d.ts +34 -0
- package/build/planning/flows.d.ts.map +1 -0
- package/build/planning/flows.js +174 -0
- package/build/planning/flows.js.map +1 -0
- package/build/planning/helpers.d.ts +11 -37
- package/build/planning/helpers.d.ts.map +1 -1
- package/build/planning/helpers.js +24 -103
- package/build/planning/helpers.js.map +1 -1
- package/build/planning/index.d.ts +5 -0
- package/build/planning/index.d.ts.map +1 -1
- package/build/planning/index.js +2 -0
- package/build/planning/index.js.map +1 -1
- package/build/planning/landing/types.d.ts +16 -0
- package/build/planning/landing/types.d.ts.map +1 -0
- package/build/planning/landing/types.js +2 -0
- package/build/planning/landing/types.js.map +1 -0
- package/build/planning/landing.d.ts +5 -10
- package/build/planning/landing.d.ts.map +1 -1
- package/build/planning/landing.js +20 -22
- package/build/planning/landing.js.map +1 -1
- package/build/planning/schemas.d.ts +1 -5
- package/build/planning/schemas.d.ts.map +1 -1
- package/build/planning/schemas.js +3 -3
- package/build/planning/schemas.js.map +1 -1
- package/build/planning/spec/types.d.ts +22 -0
- package/build/planning/spec/types.d.ts.map +1 -0
- package/build/planning/spec/types.js +2 -0
- package/build/planning/spec/types.js.map +1 -0
- package/build/planning/spec.d.ts +4 -0
- package/build/planning/spec.d.ts.map +1 -0
- package/build/planning/spec.js +30 -0
- package/build/planning/spec.js.map +1 -0
- package/build/planning/types.d.ts +4 -3
- package/build/planning/types.d.ts.map +1 -1
- package/build/scaffold/consts.d.ts +40 -1
- package/build/scaffold/consts.d.ts.map +1 -1
- package/build/scaffold/consts.js +52 -0
- package/build/scaffold/consts.js.map +1 -1
- package/build/scaffold/helpers.d.ts +4 -16
- package/build/scaffold/helpers.d.ts.map +1 -1
- package/build/scaffold/helpers.js +9 -64
- package/build/scaffold/helpers.js.map +1 -1
- package/build/scaffold/index.d.ts +4 -0
- package/build/scaffold/index.d.ts.map +1 -1
- package/build/scaffold/index.js +2 -0
- package/build/scaffold/index.js.map +1 -1
- package/build/scaffold/landing/types.d.ts +48 -0
- package/build/scaffold/landing/types.d.ts.map +1 -0
- package/build/scaffold/landing/types.js +2 -0
- package/build/scaffold/landing/types.js.map +1 -0
- package/build/scaffold/landing.d.ts +4 -0
- package/build/scaffold/landing.d.ts.map +1 -0
- package/build/scaffold/landing.js +95 -0
- package/build/scaffold/landing.js.map +1 -0
- package/build/scaffold/schemas.d.ts +3 -2
- package/build/scaffold/schemas.d.ts.map +1 -1
- package/build/scaffold/schemas.js +177 -7
- package/build/scaffold/schemas.js.map +1 -1
- package/build/scaffold/share/types.d.ts +35 -0
- package/build/scaffold/share/types.d.ts.map +1 -0
- package/build/scaffold/share/types.js +2 -0
- package/build/scaffold/share/types.js.map +1 -0
- package/build/scaffold/share.d.ts +4 -0
- package/build/scaffold/share.d.ts.map +1 -0
- package/build/scaffold/share.js +42 -0
- package/build/scaffold/share.js.map +1 -0
- package/build/scaffold/types.d.ts +112 -2
- package/build/scaffold/types.d.ts.map +1 -1
- package/build/skills/consts.d.ts +42 -0
- package/build/skills/consts.d.ts.map +1 -1
- package/build/skills/consts.js +43 -0
- package/build/skills/consts.js.map +1 -1
- package/build/skills/index.d.ts +0 -1
- package/build/skills/index.d.ts.map +1 -1
- package/build/skills/index.js +0 -1
- package/build/skills/index.js.map +1 -1
- package/build/slot/command/types.d.ts +21 -0
- package/build/slot/command/types.d.ts.map +1 -0
- package/build/slot/command/types.js +2 -0
- package/build/slot/command/types.js.map +1 -0
- package/build/slot/command.d.ts +4 -0
- package/build/slot/command.d.ts.map +1 -0
- package/build/slot/command.js +31 -0
- package/build/slot/command.js.map +1 -0
- package/build/slot/helpers.d.ts +2 -16
- package/build/slot/helpers.d.ts.map +1 -1
- package/build/slot/helpers.js +5 -26
- package/build/slot/helpers.js.map +1 -1
- package/build/slot/index.d.ts +5 -0
- package/build/slot/index.d.ts.map +1 -1
- package/build/slot/index.js +2 -0
- package/build/slot/index.js.map +1 -1
- package/build/slot/layout/types.d.ts +17 -0
- package/build/slot/layout/types.d.ts.map +1 -0
- package/build/slot/layout/types.js +2 -0
- package/build/slot/layout/types.js.map +1 -0
- package/build/slot/layout.d.ts +4 -9
- package/build/slot/layout.d.ts.map +1 -1
- package/build/slot/layout.js +13 -15
- package/build/slot/layout.js.map +1 -1
- package/build/slot/origin/types.d.ts +23 -0
- package/build/slot/origin/types.d.ts.map +1 -0
- package/build/slot/origin/types.js +2 -0
- package/build/slot/origin/types.js.map +1 -0
- package/build/slot/origin.d.ts +4 -0
- package/build/slot/origin.d.ts.map +1 -0
- package/build/slot/origin.js +15 -0
- package/build/slot/origin.js.map +1 -0
- package/build/slot/types.d.ts.map +1 -1
- package/build/slot/utils.d.ts +3 -15
- package/build/slot/utils.d.ts.map +1 -1
- package/build/slot/utils.js +5 -40
- package/build/slot/utils.js.map +1 -1
- package/build/topology/card/types.d.ts +21 -0
- package/build/topology/card/types.d.ts.map +1 -0
- package/build/topology/card/types.js +2 -0
- package/build/topology/card/types.js.map +1 -0
- package/build/topology/card.d.ts +6 -13
- package/build/topology/card.d.ts.map +1 -1
- package/build/topology/card.js +83 -86
- package/build/topology/card.js.map +1 -1
- package/build/topology/helpers.d.ts +7 -33
- package/build/topology/helpers.d.ts.map +1 -1
- package/build/topology/helpers.js +15 -111
- package/build/topology/helpers.js.map +1 -1
- package/build/topology/index.d.ts +3 -0
- package/build/topology/index.d.ts.map +1 -1
- package/build/topology/index.js +1 -0
- package/build/topology/index.js.map +1 -1
- package/build/topology/resolve/types.d.ts +47 -0
- package/build/topology/resolve/types.d.ts.map +1 -0
- package/build/topology/resolve/types.js +2 -0
- package/build/topology/resolve/types.js.map +1 -0
- package/build/topology/resolve.d.ts +4 -0
- package/build/topology/resolve.d.ts.map +1 -0
- package/build/topology/resolve.js +89 -0
- package/build/topology/resolve.js.map +1 -0
- package/package.json +18 -11
- package/src/agent/index.ts +1 -0
- package/src/agent/presentation/types.ts +21 -0
- package/src/agent/presentation.ts +199 -165
- package/src/agent/types.local.ts +3 -1
- package/src/areas/index.ts +1 -0
- package/src/areas/tenancy/types.ts +23 -0
- package/src/areas/tenancy.ts +26 -25
- package/src/ba/connecting/types.ts +45 -0
- package/src/ba/connecting.ts +64 -0
- package/src/ba/helpers.ts +8 -92
- package/src/ba/index.ts +2 -0
- package/src/blueprint/types.ts +2 -2
- package/src/connect/branding/types.ts +29 -0
- package/src/connect/consts.ts +3 -0
- package/src/connect/conversion/types.ts +96 -0
- package/src/connect/entrypoints/types.ts +25 -0
- package/src/connect/entrypoints.ts +13 -2
- package/src/connect/errors/types.ts +22 -0
- package/src/connect/errors.ts +1 -1
- package/src/connect/index.ts +13 -3
- package/src/connect/kit/types.ts +56 -0
- package/src/connect/model-tier/types.ts +16 -0
- package/src/connect/model-tier.ts +22 -0
- package/src/connect/{ops.ts → ops/types.ts} +13 -3
- package/src/connect/pipeline/types.ts +41 -0
- package/src/connect/project/types.ts +127 -0
- package/src/connect/references/types.local.ts +5 -0
- package/src/connect/references/types.ts +73 -0
- package/src/connect/references.ts +13 -2
- package/src/connect/schemas.ts +9 -13
- package/src/connect/session/types.ts +81 -0
- package/src/connect/settings/types.ts +52 -0
- package/src/convert/analysis/types.ts +89 -0
- package/src/convert/{consts.local.ts → census/consts.local.ts} +1 -1
- package/src/convert/census/types.ts +181 -0
- package/src/convert/census.ts +95 -0
- package/src/convert/consts.ts +5 -0
- package/src/convert/detection/types.ts +74 -0
- package/src/convert/docs/types.ts +151 -0
- package/src/convert/docs.ts +15 -0
- package/src/convert/estimate/types.ts +75 -0
- package/src/convert/estimate.ts +19 -0
- package/src/convert/helpers.ts +29 -210
- package/src/convert/index.ts +14 -0
- package/src/convert/origin/types.ts +43 -0
- package/src/convert/origin.ts +33 -0
- package/src/convert/record/types.ts +105 -0
- package/src/convert/schemas.ts +13 -12
- package/src/convert/stage/types.ts +27 -0
- package/src/convert/stage.ts +31 -0
- package/src/convert/taxonomy/types.ts +74 -0
- package/src/convert/types.ts +5 -709
- package/src/convert/utils.ts +5 -6
- package/src/design/helpers.ts +20 -245
- package/src/design/index.ts +3 -0
- package/src/design/runtime/types.ts +14 -0
- package/src/design/runtime.ts +22 -7
- package/src/design/story/types.ts +67 -0
- package/src/design/story.ts +221 -0
- package/src/dev/types.local.ts +1 -1
- package/src/index.ts +1 -0
- package/src/integrity/index.ts +4 -0
- package/src/integrity/layout/consts.local.ts +188 -0
- package/src/integrity/layout/consts.ts +79 -0
- package/src/integrity/layout/types.ts +35 -0
- package/src/integrity/layout.ts +39 -0
- package/src/integrity/types.ts +3 -1
- package/src/integrity/utils.ts +14 -313
- package/src/integrity/verify/types.ts +26 -0
- package/src/integrity/verify.ts +177 -181
- package/src/intent/consts.ts +67 -0
- package/src/intent/entrypoints.ts +2 -2
- package/src/intent/index.ts +0 -1
- package/src/intent/types.ts +9 -2
- package/src/legal/consts.ts +17 -0
- package/src/legal/index.ts +2 -0
- package/src/legal/types.ts +11 -0
- package/src/moderation/index.ts +2 -0
- package/src/moderation/utils.ts +7 -30
- package/src/moderation/verdict/types.ts +22 -0
- package/src/moderation/verdict.ts +28 -0
- package/src/planning/card/types.ts +44 -0
- package/src/planning/card.ts +77 -0
- package/src/planning/helpers.ts +28 -116
- package/src/planning/index.ts +5 -0
- package/src/planning/landing/types.ts +15 -0
- package/src/planning/landing.ts +27 -24
- package/src/planning/schemas.ts +3 -3
- package/src/planning/spec/types.ts +22 -0
- package/src/planning/spec.ts +41 -0
- package/src/planning/types.ts +4 -4
- package/src/scaffold/consts.ts +65 -1
- package/src/scaffold/helpers.ts +14 -77
- package/src/scaffold/index.ts +4 -0
- package/src/scaffold/landing/types.ts +48 -0
- package/src/scaffold/landing.ts +120 -0
- package/src/scaffold/schemas.ts +183 -7
- package/src/scaffold/share/types.ts +35 -0
- package/src/scaffold/share.ts +60 -0
- package/src/scaffold/types.ts +120 -1
- package/src/skills/consts.ts +46 -0
- package/src/skills/index.ts +0 -1
- package/src/slot/command/types.ts +21 -0
- package/src/slot/command.ts +38 -0
- package/src/slot/helpers.ts +5 -25
- package/src/slot/index.ts +5 -0
- package/src/slot/layout/types.ts +17 -0
- package/src/slot/layout.ts +19 -16
- package/src/slot/origin/types.ts +23 -0
- package/src/slot/origin.ts +20 -0
- package/src/slot/types.ts +1 -0
- package/src/slot/utils.ts +8 -43
- package/src/topology/card/types.ts +21 -0
- package/src/topology/card.ts +84 -82
- package/src/topology/helpers.ts +20 -125
- package/src/topology/index.ts +3 -0
- package/src/topology/resolve/types.ts +47 -0
- package/src/topology/resolve.ts +118 -0
- package/tests/blueprint.spec.ts +1 -2
- package/tests/connect-errors.spec.ts +1 -1
- package/tests/convert.spec.ts +50 -50
- package/tests/design.spec.ts +13 -16
- package/tests/planning.spec.ts +57 -59
- package/tests/presentation.spec.ts +20 -20
- package/tests/scaffold.spec.ts +286 -6
- package/tests/tenancy.spec.ts +21 -21
- package/build/connect/types.local.d.ts +0 -4
- package/build/connect/types.local.d.ts.map +0 -1
- package/build/connect/types.local.js.map +0 -1
- package/build/connect/utils.d.ts +0 -12
- package/build/connect/utils.d.ts.map +0 -1
- package/build/connect/utils.js +0 -25
- package/build/connect/utils.js.map +0 -1
- package/build/convert/consts.local.d.ts.map +0 -1
- package/build/convert/consts.local.js.map +0 -1
- package/build/intent/consts.local.d.ts +0 -4
- package/build/intent/consts.local.d.ts.map +0 -1
- package/build/intent/consts.local.js +0 -3
- package/build/intent/consts.local.js.map +0 -1
- package/src/connect/types.local.ts +0 -5
- package/src/connect/types.ts +0 -589
- package/src/connect/utils.ts +0 -23
- package/src/intent/consts.local.ts +0 -3
- package/src/intent/flow.ts +0 -66
- package/src/skills/roles.ts +0 -46
- /package/build/connect/{types.local.js → references/types.local.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/planning/schemas.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/planning/schemas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAA+G,MAAM,oBAAoB,CAAA;AAC/N,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAEtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE1f;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,aAAa,EAAE;YACb,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI;SAC5F;QACD,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;QACzE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC1E,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC9E,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;QACzE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;QACtF,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE;QACtF,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;QACzF,MAAM,EAAE,EAAE,GAAG,mBAAmB,EAAE,QAAQ,EAAE,IAAI,EAAE;QAClD,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC9F,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;QAChG,8FAA8F;QAC9F,0FAA0F;QAC1F,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC5E,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;aACpD;YACD,QAAQ,EAAE,CAAC,IAAI,CAAC;YAChB,oBAAoB,EAAE,KAAK;SAC5B;QACD,yFAAyF;QACzF,uDAAuD;QACvD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gBAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gBAC1B,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,UAAU,EAAE;wBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE;wBACzF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE;qBACtF;oBACD,QAAQ,EAAE,EAAE;oBACZ,oBAAoB,EAAE,KAAK;iBAC5B;gBACD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;gBAChD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;aACpD;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC;YAC5C,oBAAoB,EAAE,KAAK;SAC5B;KACF;IACD,QAAQ,EAAE,EAAE;IACZ,oBAAoB,EAAE,KAAK;CACsB,CAAA;AAEnD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;QAC1D,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;QACrF,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;QACnF,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC7C;IACD,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAC7B,oBAAoB,EAAE,KAAK;CACoB,CAAA;AAEjD,qFAAqF;AACrF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,EAAE;IACd,QAAQ,EAAE,EAAE;IACZ,oBAAoB,EAAE,IAAI;CAC2B,CAAA;AAEvD,wFAAwF;AACxF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,EAAE;IACd,QAAQ,EAAE,EAAE;IACZ,oBAAoB,EAAE,KAAK;CACwB,CAAA;AAErD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAqB;IACxD,EAAE,EAAE,iBAAiB;IACrB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE;QACR,EAAE,GAAG,EAAE,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE;QAC5G,EAAE,GAAG,EAAE,iBAAiB,CAAC,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC,UAAU,EAAE,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE;QACrG,EAAE,GAAG,EAAE,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE;QAC/F,EAAE,GAAG,EAAE,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE;KAC5F;IACD,WAAW,EAAE;QACX;YACE,IAAI,EAAE,qBAAqB,CAAC,KAAK;YACjC,IAAI,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC;YAC3D,EAAE,EAAE,iBAAiB,CAAC,UAAU;YAChC,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,qBAAqB,CAAC,QAAQ;YACpC,IAAI,EAAE,CAAC,iBAAiB,CAAC,UAAU,CAAC;YACpC,EAAE,EAAE,iBAAiB,CAAC,SAAS;YAC/B,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,qBAAqB,CAAC,IAAI;YAChC,IAAI,EAAE,CAAC,iBAAiB,CAAC,UAAU,CAAC;YACpC,EAAE,EAAE,iBAAiB,CAAC,MAAM;SAC7B;QACD,EAAE,IAAI,EAAE,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE;KAChG;CACF,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqB;IAC1D,EAAE,EAAE,mBAAmB;IACvB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE;QACR,EAAE,GAAG,EAAE,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE;QAC5G,EAAE,GAAG,EAAE,mBAAmB,CAAC,SAAS,EAAE,SAAS,EAAE,eAAe,CAAC,UAAU,EAAE,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE;QACtG,EAAE,GAAG,EAAE,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,UAAU,EAAE,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE;QAClG,EAAE,GAAG,EAAE,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE;KACnG;IACD,WAAW,EAAE;QACX;YACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;YACrC,IAAI,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC;YACjC,EAAE,EAAE,mBAAmB,CAAC,SAAS;YACjC,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,uBAAuB,CAAC,QAAQ;YACtC,IAAI,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC;YACrC,EAAE,EAAE,mBAAmB,CAAC,MAAM;SAC/B;QACD,EAAE,IAAI,EAAE,uBAAuB,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QACtG;YACE,IAAI,EAAE,uBAAuB,CAAC,MAAM;YACpC,IAAI,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC;YACpC,EAAE,EAAE,mBAAmB,CAAC,MAAM;YAC9B,QAAQ,EAAE,IAAI;SACf;KACF;CACF,CAAA;AAED,6EAA6E;AAC7E,MAAM,CAAC,MAAM,uBAAuB,GAAqB;IACvD,EAAE,EAAE,gBAAgB;IACpB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE;QACR,EAAE,GAAG,EAAE,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE;KAC9G;IACD,WAAW,EAAE,EAAE;CAChB,CAAA;AAED,MAAM,IAAI,GAAG,CACX,QAA4B,EAAE,MAA2B,EAAE,KAAK,GAA+B,EAAE,EAC9E,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;AAEhF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,oBAAoB,GAAwB;IACvD,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,mBAAmB,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACxF,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC;IAC7D,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,mBAAmB,CAAC,QAAQ,CAAC;IACnE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,IAAI,EAAE;QAC1D,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,4BAA4B,EAAE,MAAM,EAAE,kBAAkB;KAC1F,CAAC;CACH,CAAA;AAED,wEAAwE;AACxE,MAAM,CAAC,MAAM,kBAAkB,GAAwB;IACrD,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,CAAC,IAAI,EAAE;QACxD,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE,4BAA4B;QAC3C,MAAM,EAAE,iBAAiB;QACzB,OAAO,EAAE,oBAAoB;KAC9B,CAAC;CACH,CAAA;AAED,MAAM,SAAS,GAAG,CAAC,IAAwB,EAAoB,EAAE,CAC/D,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;AAE9E,MAAM,CAAC,MAAM,0BAA0B,GAAuB;IAC5D,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC;IACrC,SAAS,CAAC,kBAAkB,CAAC,YAAY,CAAC;IAC1C,SAAS,CAAC,kBAAkB,CAAC,YAAY,CAAC;CAC3C,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAsB;IAC3D,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,YAAY,CAAC,OAAO;IAC1B,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,yBAAyB;IACjC,KAAK,EAAE,CAAC,mBAAmB,CAAC;IAC5B,SAAS,EAAE,eAAe,CAAC,OAAO;IAClC,cAAc,EAAE,oBAAoB;IACpC,IAAI,EAAE,mBAAmB;IACzB,SAAS,EAAE,CAAC,iBAAiB,CAAC;CAC/B,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAuB;IAC1D,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE,YAAY,CAAC,IAAI;IACvB,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,uBAAuB;IAC/B,KAAK,EAAE,CAAC,iBAAiB,CAAC;IAC1B,SAAS,EAAE,eAAe,CAAC,OAAO;IAClC,cAAc,EAAE,kBAAkB;IAClC,aAAa,EAAE,0BAA0B;IACzC,IAAI,EAAE,iBAAiB;CACxB,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAuB;IACzD,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,YAAY,CAAC,aAAa;IAChC,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,sBAAsB;IAC9B,KAAK,EAAE,CAAC,gBAAgB,CAAC;IACzB,cAAc,EAAE,EAAE;CACnB,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,IAAgC,EAAsB,EAAE,CAAC,CAAC;IACxF,IAAI;IACJ,IAAI,EAAE,YAAY,CAAC,IAAI;IACvB,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,sBAAsB;IAC9B,KAAK,EAAE,CAAC,iBAAiB,CAAC;IAC1B,SAAS,EAAE,eAAe,CAAC,OAAO;IAClC,cAAc,EAAE,EAAE;IAClB,IAAI;CACL,CAAC,CAAA;AAEF,iGAAiG;AACjG,MAAM,CAAC,MAAM,4BAA4B,GAAyB;IAChE,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAC1D,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;CAC3D,CAAA;AAED,4DAA4D;AAC5D,MAAM,CAAC,MAAM,mBAAmB,GAAoB;IAClD,0BAA0B;IAC1B,wBAAwB;IACxB,uBAAuB;IACvB,GAAG,4BAA4B;CAChC,CAAA;AAED,uDAAuD;AACvD,MAAM,CAAC,MAAM,mBAAmB,GAAuB;IACrD,0BAA0B;IAC1B,wBAAwB;IACxB,uBAAuB;CACxB,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { Specification, Workcard } from '@owlmeans/planning';
|
|
2
|
+
import type { AgentProject } from '../../ba/types.js';
|
|
3
|
+
/** Reading a card's specifications: the current document per category, and the project brief. */
|
|
4
|
+
export interface ViableSpecHelper {
|
|
5
|
+
/**
|
|
6
|
+
* The current document of one category among a card's specifications.
|
|
7
|
+
*
|
|
8
|
+
* The highest revision wins, then the most recently updated; a category nobody wrote answers
|
|
9
|
+
* `null`.
|
|
10
|
+
*/
|
|
11
|
+
currentSpecOf: (specs: readonly Specification[], category: string) => Specification | null;
|
|
12
|
+
/** The body of a category's current document, `''` when there is none. */
|
|
13
|
+
currentSpecBody: (specs: readonly Specification[], category: string) => string;
|
|
14
|
+
/**
|
|
15
|
+
* The brief a generator reads, assembled from the project card and its specifications.
|
|
16
|
+
*
|
|
17
|
+
* `name` is the card's title and `alias` its code; a brief part nobody wrote is `''`, which is
|
|
18
|
+
* what every prompt already treats as "not stated".
|
|
19
|
+
*/
|
|
20
|
+
projectBriefOf: (project: Workcard, specs: readonly Specification[]) => AgentProject;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/planning/spec/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,iGAAiG;AACjG,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,aAAa,EAAE,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,EAAE,QAAQ,EAAE,MAAM,KAAK,aAAa,GAAG,IAAI,CAAA;IAC1F,0EAA0E;IAC1E,eAAe,EAAE,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;IAC9E;;;;;OAKG;IACH,cAAc,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,aAAa,EAAE,KAAK,YAAY,CAAA;CACrF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/planning/spec/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spec.d.ts","sourceRoot":"","sources":["../../src/planning/spec.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAEvD,eAAO,MAAM,sBAAsB,QAAO,gBAgCzC,CAAA;AAED,eAAO,MAAM,gBAAgB,kBAA2B,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { viableCardHelper } from './card.js';
|
|
2
|
+
import { ViableSpecCategory } from './consts.js';
|
|
3
|
+
export const createViableSpecHelper = () => {
|
|
4
|
+
const currentSpecOf = (specs, category) => specs
|
|
5
|
+
.filter(spec => spec.category === category)
|
|
6
|
+
.reduce((best, spec) => {
|
|
7
|
+
if (best == null)
|
|
8
|
+
return spec;
|
|
9
|
+
const byRevision = (spec.revision ?? 0) - (best.revision ?? 0);
|
|
10
|
+
if (byRevision !== 0)
|
|
11
|
+
return byRevision > 0 ? spec : best;
|
|
12
|
+
return (spec.updatedAt ?? spec.createdAt) > (best.updatedAt ?? best.createdAt) ? spec : best;
|
|
13
|
+
}, null);
|
|
14
|
+
const currentSpecBody = (specs, category) => currentSpecOf(specs, category)?.body ?? '';
|
|
15
|
+
const projectBriefOf = (project, specs) => {
|
|
16
|
+
const { language } = viableCardHelper.projectFieldsOf(project);
|
|
17
|
+
return {
|
|
18
|
+
name: project.title,
|
|
19
|
+
...(project.code != null ? { alias: project.code } : {}),
|
|
20
|
+
description: project.description ?? '',
|
|
21
|
+
specification: currentSpecBody(specs, ViableSpecCategory.Specification),
|
|
22
|
+
designSystem: currentSpecBody(specs, ViableSpecCategory.DesignSystem),
|
|
23
|
+
vision: currentSpecBody(specs, ViableSpecCategory.Vision),
|
|
24
|
+
...(language != null ? { language } : {}),
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
return { currentSpecOf, currentSpecBody, projectBriefOf };
|
|
28
|
+
};
|
|
29
|
+
export const viableSpecHelper = createViableSpecHelper();
|
|
30
|
+
//# sourceMappingURL=spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../src/planning/spec.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAGhD,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAqB,EAAE;IAC3D,MAAM,aAAa,GAAG,CACpB,KAA+B,EAAE,QAAgB,EAC3B,EAAE,CACxB,KAAK;SACF,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC;SAC1C,MAAM,CAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;QAC3C,IAAI,IAAI,IAAI,IAAI;YAAE,OAAO,IAAI,CAAA;QAC7B,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;QAC9D,IAAI,UAAU,KAAK,CAAC;YAAE,OAAO,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;QAEzD,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IAC9F,CAAC,EAAE,IAAI,CAAC,CAAA;IAEZ,MAAM,eAAe,GAAG,CAAC,KAA+B,EAAE,QAAgB,EAAU,EAAE,CACpF,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,CAAA;IAE5C,MAAM,cAAc,GAAG,CAAC,OAAiB,EAAE,KAA+B,EAAgB,EAAE;QAC1F,MAAM,EAAE,QAAQ,EAAE,GAAG,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAE9D,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,KAAK;YACnB,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;YACtC,aAAa,EAAE,eAAe,CAAC,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC;YACvE,YAAY,EAAE,eAAe,CAAC,KAAK,EAAE,kBAAkB,CAAC,YAAY,CAAC;YACrE,MAAM,EAAE,eAAe,CAAC,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC;YACzD,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1C,CAAA;IACH,CAAC,CAAA;IAED,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,CAAA;AAC3D,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAA"}
|
|
@@ -96,14 +96,15 @@ export interface ViableStoryCard extends Card {
|
|
|
96
96
|
fields: ViableStoryFields;
|
|
97
97
|
}
|
|
98
98
|
/** A document under a Viable card — the brief parts, the scaffold plan, a story design. */
|
|
99
|
-
export
|
|
99
|
+
export interface ViableSpecification extends Specification {
|
|
100
|
+
}
|
|
100
101
|
/**
|
|
101
102
|
* What a develop run hands the metadata store beside the card.
|
|
102
103
|
*
|
|
103
104
|
* The code, the narrative, the primary flag and the landing flag are the CARD's and are never
|
|
104
105
|
* passed separately — a second copy is a second answer. `status` defaults to the card's own.
|
|
105
106
|
*/
|
|
106
|
-
export
|
|
107
|
+
export interface StoryWriteContent extends Omit<StoryWriteInput, 'code' | 'narrative' | 'primary' | 'landing' | 'status'> {
|
|
107
108
|
status?: string;
|
|
108
|
-
}
|
|
109
|
+
}
|
|
109
110
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/planning/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/planning/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAG3D;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,yFAAyF;IACzF,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,+DAA+D;IAC/D,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,iEAAiE;IACjE,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,gGAAgG;IAChG,cAAc,CAAC,EAAE,UAAU,CAAA;IAC3B,gFAAgF;IAChF,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,qBAAqB,CAAA;IAC/B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,qBAAqB,CAAA;CAChC,CAAA;AAED,oFAAoF;AACpF,MAAM,WAAW,qBAAqB;IACpC,gEAAgE;IAChE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,EAAE,EAAE,MAAM,CAAA;CACX;AAGD;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,0EAA0E;IAC1E,IAAI,EAAE,WAAW,CAAA;IACjB,mFAAmF;IACnF,OAAO,EAAE,OAAO,CAAA;IAChB,oCAAoC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,sDAAsD;IACtD,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,MAAM,WAAW,iBAAkB,SAAQ,OAAO;IAChD,MAAM,EAAE,mBAAmB,CAAA;CAC5B;AAED,MAAM,WAAW,eAAgB,SAAQ,IAAI;IAC3C,MAAM,EAAE,iBAAiB,CAAA;CAC1B;AAED,2FAA2F;AAC3F,MAAM,WAAW,mBAAoB,SAAQ,aAAa;CAAG;AAE7D;;;;;GAKG;AACH,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;IAAG,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BentoFragmentKind, LandingGateFieldKind } from './types.js';
|
|
1
|
+
import type { BentoFragmentKind, LandingAnchor, LandingBand, LandingGateFieldKind, LandingSlot } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* The shapes a drawn widget can take.
|
|
4
4
|
*
|
|
@@ -43,4 +43,43 @@ export declare const LANDING_GATE_OPTIONS: {
|
|
|
43
43
|
readonly min: 2;
|
|
44
44
|
readonly max: 6;
|
|
45
45
|
};
|
|
46
|
+
/**
|
|
47
|
+
* The bands of a landing page in the HOUSE ORDER — the order every page draws them in, whichever
|
|
48
|
+
* of them it carries. `problem` is the problem-and-solution band.
|
|
49
|
+
*/
|
|
50
|
+
export declare const LANDING_BAND_ORDER: LandingBand[];
|
|
51
|
+
/** The bands the guest header menu can jump to, in page order. */
|
|
52
|
+
export declare const LANDING_ANCHORS: LandingAnchor[];
|
|
53
|
+
/** Which band each menu anchor jumps to. */
|
|
54
|
+
export declare const LANDING_ANCHOR_BAND: Record<LandingAnchor, LandingBand>;
|
|
55
|
+
/**
|
|
56
|
+
* The English menu labels an entry falls back to when neither the menu nor the page's own section
|
|
57
|
+
* label names it. A fallback, never the intended copy: the plan writes labels in the product's
|
|
58
|
+
* language.
|
|
59
|
+
*/
|
|
60
|
+
export declare const LANDING_ANCHOR_LABELS: Record<LandingAnchor, string>;
|
|
61
|
+
/** Entries of the guest header menu: fewer is not a menu, more crowds a phone's header. */
|
|
62
|
+
export declare const LANDING_MENU: {
|
|
63
|
+
readonly min: 2;
|
|
64
|
+
readonly max: 4;
|
|
65
|
+
};
|
|
66
|
+
/** Cases of the use-cases band; fewer than `min` and the band is not drawn. */
|
|
67
|
+
export declare const LANDING_USE_CASES: {
|
|
68
|
+
readonly min: 2;
|
|
69
|
+
readonly max: 4;
|
|
70
|
+
};
|
|
71
|
+
/** Rows of the differentiator's usual-vs-ours contrast; fewer than `min` and no table is drawn. */
|
|
72
|
+
export declare const LANDING_CONTRAST: {
|
|
73
|
+
readonly min: 2;
|
|
74
|
+
readonly max: 3;
|
|
75
|
+
};
|
|
76
|
+
/** Principles of the approach band; fewer than `min` and the band is not drawn. */
|
|
77
|
+
export declare const LANDING_PRINCIPLES: {
|
|
78
|
+
readonly min: 3;
|
|
79
|
+
readonly max: 4;
|
|
80
|
+
};
|
|
81
|
+
/** Every button or link of a landing page that can open a user story, in page order. */
|
|
82
|
+
export declare const LANDING_SLOTS: LandingSlot[];
|
|
83
|
+
/** The slots a landing gate replaces: with a usable gate the page draws none of them. */
|
|
84
|
+
export declare const LANDING_GATE_SLOTS: LandingSlot[];
|
|
46
85
|
//# sourceMappingURL=consts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/scaffold/consts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/scaffold/consts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,WAAW,EACjF,MAAM,YAAY,CAAA;AAEnB;;;;;;;GAOG;AACH,oBAAY,UAAU;IACpB,6DAA6D;IAC7D,IAAI,SAAS;IACb,gEAAgE;IAChE,KAAK,UAAU;IACf,mCAAmC;IACnC,IAAI,SAAS;IACb,yCAAyC;IACzC,KAAK,UAAU;IACf,+DAA+D;IAC/D,IAAI,SAAS;CACd;AAED,yEAAyE;AACzE,eAAO,MAAM,oBAAoB,IAAI,CAAA;AAErC,uEAAuE;AACvE,eAAO,MAAM,gBAAgB,IAAI,CAAA;AAEjC;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,EAAE,iBAAiB,EAAwC,CAAA;AAE5F;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,oBAAoB,EAAyC,CAAA;AAEpG,iGAAiG;AACjG,eAAO,MAAM,uBAAuB,IAAI,CAAA;AAExC,0FAA0F;AAC1F,eAAO,MAAM,oBAAoB;aAAK,GAAG,EAAE,CAAC;aAAE,GAAG,EAAE,CAAC;CAAW,CAAA;AAE/D;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,EAG3C,CAAA;AAED,kEAAkE;AAClE,eAAO,MAAM,eAAe,EAAE,aAAa,EAE1C,CAAA;AAED,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,aAAa,EAAE,WAAW,CAQlE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAQ/D,CAAA;AAED,2FAA2F;AAC3F,eAAO,MAAM,YAAY;aAAK,GAAG,EAAE,CAAC;aAAE,GAAG,EAAE,CAAC;CAAW,CAAA;AAEvD,+EAA+E;AAC/E,eAAO,MAAM,iBAAiB;aAAK,GAAG,EAAE,CAAC;aAAE,GAAG,EAAE,CAAC;CAAW,CAAA;AAE5D,mGAAmG;AACnG,eAAO,MAAM,gBAAgB;aAAK,GAAG,EAAE,CAAC;aAAE,GAAG,EAAE,CAAC;CAAW,CAAA;AAE3D,mFAAmF;AACnF,eAAO,MAAM,kBAAkB;aAAK,GAAG,EAAE,CAAC;aAAE,GAAG,EAAE,CAAC;CAAW,CAAA;AAE7D,wFAAwF;AACxF,eAAO,MAAM,aAAa,EAAE,WAAW,EAItC,CAAA;AAED,yFAAyF;AACzF,eAAO,MAAM,kBAAkB,EAAE,WAAW,EAAsD,CAAA"}
|
package/build/scaffold/consts.js
CHANGED
|
@@ -40,4 +40,56 @@ export const LANDING_GATE_FIELD_KINDS = ['text', 'select', 'number', 'date'];
|
|
|
40
40
|
export const LANDING_GATE_MAX_FIELDS = 3;
|
|
41
41
|
/** The options a `select` field carries: fewer is no choice, more is a list to browse. */
|
|
42
42
|
export const LANDING_GATE_OPTIONS = { min: 2, max: 6 };
|
|
43
|
+
/**
|
|
44
|
+
* The bands of a landing page in the HOUSE ORDER — the order every page draws them in, whichever
|
|
45
|
+
* of them it carries. `problem` is the problem-and-solution band.
|
|
46
|
+
*/
|
|
47
|
+
export const LANDING_BAND_ORDER = [
|
|
48
|
+
'hero', 'steps', 'features', 'use-cases', 'problem', 'differentiator', 'approach',
|
|
49
|
+
'testimonials', 'about', 'closing',
|
|
50
|
+
];
|
|
51
|
+
/** The bands the guest header menu can jump to, in page order. */
|
|
52
|
+
export const LANDING_ANCHORS = [
|
|
53
|
+
'how', 'features', 'use-cases', 'why', 'approach', 'community', 'about',
|
|
54
|
+
];
|
|
55
|
+
/** Which band each menu anchor jumps to. */
|
|
56
|
+
export const LANDING_ANCHOR_BAND = {
|
|
57
|
+
how: 'steps',
|
|
58
|
+
features: 'features',
|
|
59
|
+
'use-cases': 'use-cases',
|
|
60
|
+
why: 'differentiator',
|
|
61
|
+
approach: 'approach',
|
|
62
|
+
community: 'testimonials',
|
|
63
|
+
about: 'about',
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* The English menu labels an entry falls back to when neither the menu nor the page's own section
|
|
67
|
+
* label names it. A fallback, never the intended copy: the plan writes labels in the product's
|
|
68
|
+
* language.
|
|
69
|
+
*/
|
|
70
|
+
export const LANDING_ANCHOR_LABELS = {
|
|
71
|
+
how: 'How it works',
|
|
72
|
+
features: 'Features',
|
|
73
|
+
'use-cases': 'Use cases',
|
|
74
|
+
why: 'Why us',
|
|
75
|
+
approach: 'How we work',
|
|
76
|
+
community: 'Reviews',
|
|
77
|
+
about: 'About',
|
|
78
|
+
};
|
|
79
|
+
/** Entries of the guest header menu: fewer is not a menu, more crowds a phone's header. */
|
|
80
|
+
export const LANDING_MENU = { min: 2, max: 4 };
|
|
81
|
+
/** Cases of the use-cases band; fewer than `min` and the band is not drawn. */
|
|
82
|
+
export const LANDING_USE_CASES = { min: 2, max: 4 };
|
|
83
|
+
/** Rows of the differentiator's usual-vs-ours contrast; fewer than `min` and no table is drawn. */
|
|
84
|
+
export const LANDING_CONTRAST = { min: 2, max: 3 };
|
|
85
|
+
/** Principles of the approach band; fewer than `min` and the band is not drawn. */
|
|
86
|
+
export const LANDING_PRINCIPLES = { min: 3, max: 4 };
|
|
87
|
+
/** Every button or link of a landing page that can open a user story, in page order. */
|
|
88
|
+
export const LANDING_SLOTS = [
|
|
89
|
+
'hero.cta', 'hero.secondary', 'hero.browse',
|
|
90
|
+
'useCase.1', 'useCase.2', 'useCase.3', 'useCase.4',
|
|
91
|
+
'closing.primary', 'closing.secondary', 'closing.link.1', 'closing.link.2',
|
|
92
|
+
];
|
|
93
|
+
/** The slots a landing gate replaces: with a usable gate the page draws none of them. */
|
|
94
|
+
export const LANDING_GATE_SLOTS = ['hero.cta', 'hero.secondary', 'closing.primary'];
|
|
43
95
|
//# sourceMappingURL=consts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/scaffold/consts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/scaffold/consts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +1,10 @@
|
|
|
1
1
|
import type { ScaffoldPlan, ShareKind } from './types.js';
|
|
2
|
-
/**
|
|
3
|
-
* The code whose artifact this story renders — itself when it owns one.
|
|
4
|
-
*
|
|
5
|
-
* Backward-only and bounded: an arrow is followed only to a story EARLIER in plan order, which
|
|
6
|
-
* makes a cycle unrepresentable rather than merely unlikely, and makes the owner the earliest
|
|
7
|
-
* member of its group. That is what keeps `widgetDefinition(owner)` stable — the name is a
|
|
8
|
-
* function of one code, never of the group, so adding a member renames nothing.
|
|
9
|
-
*/
|
|
2
|
+
/** @deprecated compat:factory-refactor — use `scaffoldShareHelper.shareOwner(…)` */
|
|
10
3
|
export declare const shareOwner: (plan: Pick<ScaffoldPlan, 'stories'>, code: string, kind?: ShareKind) => string;
|
|
11
|
-
/**
|
|
12
|
-
* Owner code → every member, owner first, in plan order.
|
|
13
|
-
*
|
|
14
|
-
* The shape the stampers need: one artifact per entry, and the full member list for the notice
|
|
15
|
-
* that names them.
|
|
16
|
-
*/
|
|
4
|
+
/** @deprecated compat:factory-refactor — use `scaffoldShareHelper.shareGroups(…)` */
|
|
17
5
|
export declare const shareGroups: (plan: Pick<ScaffoldPlan, 'stories'>, kind?: ShareKind) => Map<string, string[]>;
|
|
18
|
-
/**
|
|
6
|
+
/** @deprecated compat:factory-refactor — use `scaffoldShareHelper.shareMembers(…)` */
|
|
19
7
|
export declare const shareMembers: (plan: Pick<ScaffoldPlan, 'stories'>, owner: string, kind?: ShareKind) => string[];
|
|
20
|
-
/**
|
|
8
|
+
/** @deprecated compat:factory-refactor — use `scaffoldShareHelper.ownsShare(…)` */
|
|
21
9
|
export declare const ownsShare: (plan: Pick<ScaffoldPlan, 'stories'>, code: string, kind?: ShareKind) => boolean;
|
|
22
10
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/scaffold/helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/scaffold/helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEzD,oFAAoF;AACpF,eAAO,MAAM,UAAU,SAAU,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,QAAQ,MAAM,SAAQ,SAAS,KAAc,MACzD,CAAA;AAElD,qFAAqF;AACrF,eAAO,MAAM,WAAW,SAAU,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,SAAQ,SAAS,KAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CACrE,CAAA;AAE7C,sFAAsF;AACtF,eAAO,MAAM,YAAY,SAAU,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,SAAS,MAAM,SAAQ,SAAS,KAAc,MAAM,EAC/D,CAAA;AAErD,mFAAmF;AACnF,eAAO,MAAM,SAAS,SAAU,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,QAAQ,MAAM,SAAQ,SAAS,KAAc,OACzD,CAAA"}
|
|
@@ -1,65 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
* so the stampers and the scaffold loop can read a plan that is already sane.
|
|
11
|
-
*/
|
|
12
|
-
const pointerOf = (story, kind) => kind === 'widget' ? story.sharesWidgetWith : story.sharesScreenWith;
|
|
13
|
-
/**
|
|
14
|
-
* The code whose artifact this story renders — itself when it owns one.
|
|
15
|
-
*
|
|
16
|
-
* Backward-only and bounded: an arrow is followed only to a story EARLIER in plan order, which
|
|
17
|
-
* makes a cycle unrepresentable rather than merely unlikely, and makes the owner the earliest
|
|
18
|
-
* member of its group. That is what keeps `widgetDefinition(owner)` stable — the name is a
|
|
19
|
-
* function of one code, never of the group, so adding a member renames nothing.
|
|
20
|
-
*/
|
|
21
|
-
export const shareOwner = (plan, code, kind = 'widget') => {
|
|
22
|
-
const order = new Map(plan.stories.map((story, index) => [story.code, index]));
|
|
23
|
-
const byCode = new Map(plan.stories.map(story => [story.code, story]));
|
|
24
|
-
let current = code;
|
|
25
|
-
// Bounded by the list length: every hop strictly decreases the plan index, so it terminates.
|
|
26
|
-
for (let hop = 0; hop <= plan.stories.length; hop++) {
|
|
27
|
-
const story = byCode.get(current);
|
|
28
|
-
const target = story != null ? pointerOf(story, kind) : undefined;
|
|
29
|
-
if (story == null || target == null || target === '' || target === current) {
|
|
30
|
-
return current;
|
|
31
|
-
}
|
|
32
|
-
const here = order.get(current);
|
|
33
|
-
const there = order.get(target);
|
|
34
|
-
// Unknown, forward or self-referential — none of them is a group, so the story owns its own.
|
|
35
|
-
if (here == null || there == null || there >= here) {
|
|
36
|
-
return current;
|
|
37
|
-
}
|
|
38
|
-
current = target;
|
|
39
|
-
}
|
|
40
|
-
return current;
|
|
41
|
-
};
|
|
42
|
-
/**
|
|
43
|
-
* Owner code → every member, owner first, in plan order.
|
|
44
|
-
*
|
|
45
|
-
* The shape the stampers need: one artifact per entry, and the full member list for the notice
|
|
46
|
-
* that names them.
|
|
47
|
-
*/
|
|
48
|
-
export const shareGroups = (plan, kind = 'widget') => {
|
|
49
|
-
const groups = new Map();
|
|
50
|
-
for (const story of plan.stories) {
|
|
51
|
-
const owner = shareOwner(plan, story.code, kind);
|
|
52
|
-
const members = groups.get(owner) ?? [];
|
|
53
|
-
if (!members.includes(owner))
|
|
54
|
-
members.push(owner);
|
|
55
|
-
if (!members.includes(story.code))
|
|
56
|
-
members.push(story.code);
|
|
57
|
-
groups.set(owner, members);
|
|
58
|
-
}
|
|
59
|
-
return groups;
|
|
60
|
-
};
|
|
61
|
-
/** Every story that renders this owner's artifact, owner first. Total: an owner alone answers `[code]`. */
|
|
62
|
-
export const shareMembers = (plan, owner, kind = 'widget') => shareGroups(plan, kind).get(owner) ?? [owner];
|
|
63
|
-
/** Whether this story draws the artifact, as opposed to rendering somebody else's. */
|
|
64
|
-
export const ownsShare = (plan, code, kind = 'widget') => shareOwner(plan, code, kind) === code;
|
|
1
|
+
import { scaffoldShareHelper } from './share.js';
|
|
2
|
+
/** @deprecated compat:factory-refactor — use `scaffoldShareHelper.shareOwner(…)` */
|
|
3
|
+
export const shareOwner = (plan, code, kind = 'widget') => scaffoldShareHelper.shareOwner(plan, code, kind);
|
|
4
|
+
/** @deprecated compat:factory-refactor — use `scaffoldShareHelper.shareGroups(…)` */
|
|
5
|
+
export const shareGroups = (plan, kind = 'widget') => scaffoldShareHelper.shareGroups(plan, kind);
|
|
6
|
+
/** @deprecated compat:factory-refactor — use `scaffoldShareHelper.shareMembers(…)` */
|
|
7
|
+
export const shareMembers = (plan, owner, kind = 'widget') => scaffoldShareHelper.shareMembers(plan, owner, kind);
|
|
8
|
+
/** @deprecated compat:factory-refactor — use `scaffoldShareHelper.ownsShare(…)` */
|
|
9
|
+
export const ownsShare = (plan, code, kind = 'widget') => scaffoldShareHelper.ownsShare(plan, code, kind);
|
|
65
10
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/scaffold/helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/scaffold/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGhD,oFAAoF;AACpF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAmC,EAAE,IAAY,EAAE,IAAI,GAAc,QAAQ,EAAU,EAAE,CAClH,mBAAmB,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAElD,qFAAqF;AACrF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAmC,EAAE,IAAI,GAAc,QAAQ,EAAyB,EAAE,CACpH,mBAAmB,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;AAE7C,sFAAsF;AACtF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAmC,EAAE,KAAa,EAAE,IAAI,GAAc,QAAQ,EAAY,EAAE,CACvH,mBAAmB,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;AAErD,mFAAmF;AACnF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAmC,EAAE,IAAY,EAAE,IAAI,GAAc,QAAQ,EAAW,EAAE,CAClH,mBAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
export * from './consts.js';
|
|
2
2
|
export * from './schemas.js';
|
|
3
3
|
export type * from './types.js';
|
|
4
|
+
export type * from './share/types.js';
|
|
5
|
+
export type * from './landing/types.js';
|
|
6
|
+
export * from './share.js';
|
|
7
|
+
export * from './landing.js';
|
|
4
8
|
export * from './helpers.js';
|
|
5
9
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scaffold/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,mBAAmB,YAAY,CAAA;AAC/B,cAAc,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scaffold/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,mBAAmB,YAAY,CAAA;AAC/B,mBAAmB,kBAAkB,CAAA;AACrC,mBAAmB,oBAAoB,CAAA;AACvC,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|
package/build/scaffold/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scaffold/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scaffold/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAI5B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { GuestHomePlan, LandingBand, LandingMenuEntry, LandingSlot } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* ONE reading of what a landing page draws, so the stamper, the menu and the link planner agree.
|
|
4
|
+
*
|
|
5
|
+
* Pure, IO-free and total over a stored plan of any age: every optional band may be absent or
|
|
6
|
+
* `null`, and blank model text counts as absent.
|
|
7
|
+
*/
|
|
8
|
+
export interface LandingPlanHelper {
|
|
9
|
+
/**
|
|
10
|
+
* The bands a landing page draws, in the house order `LANDING_BAND_ORDER`.
|
|
11
|
+
*
|
|
12
|
+
* One presence rule per band:
|
|
13
|
+
*
|
|
14
|
+
* - `hero`, `features`, `problem` (problem and solution) — always;
|
|
15
|
+
* - `steps` — at least one step with a title;
|
|
16
|
+
* - `use-cases` — at least `LANDING_USE_CASES.min` titled cases;
|
|
17
|
+
* - `differentiator` — at least `LANDING_CONTRAST.min` contrast rows filled on both sides,
|
|
18
|
+
* OR a title and a text: the band is a heading and a paragraph, and the table under them is
|
|
19
|
+
* drawn only when it has enough rows;
|
|
20
|
+
* - `approach` — at least `LANDING_PRINCIPLES.min` titled principles;
|
|
21
|
+
* - `testimonials` — at least two quotes;
|
|
22
|
+
* - `about` — a title and a text;
|
|
23
|
+
* - `closing` — whenever the plan carries one.
|
|
24
|
+
*/
|
|
25
|
+
landingBandsOf: (home: GuestHomePlan) => LandingBand[];
|
|
26
|
+
/**
|
|
27
|
+
* The guest header menu a page draws.
|
|
28
|
+
*
|
|
29
|
+
* Keeps only entries whose band the page draws (and whose anchor exists), the first of each
|
|
30
|
+
* anchor, in page order; caps the list at `max` (never below `LANDING_MENU.min`); then pads
|
|
31
|
+
* to `LANDING_MENU.min` with `how`, `features` and the first other band the page draws. A
|
|
32
|
+
* label falls back to the page's own section label, then to `LANDING_ANCHOR_LABELS`.
|
|
33
|
+
*/
|
|
34
|
+
landingMenuOf: (home: GuestHomePlan, max?: number) => LandingMenuEntry[];
|
|
35
|
+
/**
|
|
36
|
+
* The buttons and links of a landing page that exist — the places a home link can attach to,
|
|
37
|
+
* in page order.
|
|
38
|
+
*
|
|
39
|
+
* - `hero.cta` and `closing.primary` (with a closing) — only without a usable gate, which takes
|
|
40
|
+
* their place (`LANDING_GATE_SLOTS`);
|
|
41
|
+
* - `hero.secondary` — only without a usable gate, and only when the plan labels it;
|
|
42
|
+
* - `hero.browse`, `closing.secondary` — when the plan labels them;
|
|
43
|
+
* - `closing.link.N` — one per titled closing card, at most two;
|
|
44
|
+
* - `useCase.N` — one per drawn case, when the use-cases band is drawn.
|
|
45
|
+
*/
|
|
46
|
+
homeSlotsOf: (home: GuestHomePlan) => LandingSlot[];
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/scaffold/landing/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE5F;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;;;;;;;;;OAeG;IACH,cAAc,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,WAAW,EAAE,CAAA;IACtD;;;;;;;OAOG;IACH,aAAa,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,gBAAgB,EAAE,CAAA;IACxE;;;;;;;;;;OAUG;IACH,WAAW,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,WAAW,EAAE,CAAA;CACpD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/scaffold/landing/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"landing.d.ts","sourceRoot":"","sources":["../../src/scaffold/landing.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAI3D,eAAO,MAAM,uBAAuB,QAAO,iBA4G1C,CAAA;AAED,eAAO,MAAM,iBAAiB,mBAA4B,CAAA"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { LANDING_ANCHOR_BAND, LANDING_ANCHOR_LABELS, LANDING_ANCHORS, LANDING_BAND_ORDER, LANDING_CONTRAST, LANDING_MENU, LANDING_PRINCIPLES, LANDING_USE_CASES, } from './consts.js';
|
|
2
|
+
const filled = (value) => (value?.trim() ?? '') !== '';
|
|
3
|
+
export const createLandingPlanHelper = () => {
|
|
4
|
+
/** The use cases a page draws: titled ones, at most {@link LANDING_USE_CASES}.max. */
|
|
5
|
+
const drawnUseCases = (home) => (home.useCases?.cases ?? []).filter(entry => filled(entry.title)).slice(0, LANDING_USE_CASES.max);
|
|
6
|
+
/** The closing link cards a page draws: titled ones, at most two. */
|
|
7
|
+
const drawnClosingLinks = (home) => (home.closing?.links ?? []).filter(entry => filled(entry.title)).slice(0, 2);
|
|
8
|
+
/** Whether the gate is drawn: a gate is a form, and one without fields is no gate at all. */
|
|
9
|
+
const usableGate = (home) => home.gate != null && (home.gate.fields ?? []).length > 0;
|
|
10
|
+
/** One presence rule per band — see {@link LandingPlanHelper.landingBandsOf}. */
|
|
11
|
+
const bandPresent = {
|
|
12
|
+
hero: () => true,
|
|
13
|
+
steps: home => (home.steps ?? []).some(step => filled(step.title)),
|
|
14
|
+
features: () => true,
|
|
15
|
+
'use-cases': home => drawnUseCases(home).length >= LANDING_USE_CASES.min,
|
|
16
|
+
problem: () => true,
|
|
17
|
+
differentiator: home => {
|
|
18
|
+
const band = home.differentiator;
|
|
19
|
+
if (band == null)
|
|
20
|
+
return false;
|
|
21
|
+
const rows = (band.contrast ?? []).filter(row => filled(row.usual) && filled(row.ours));
|
|
22
|
+
return rows.length >= LANDING_CONTRAST.min || (filled(band.title) && filled(band.text));
|
|
23
|
+
},
|
|
24
|
+
approach: home => (home.approach?.principles ?? []).filter(entry => filled(entry.title)).length >= LANDING_PRINCIPLES.min,
|
|
25
|
+
testimonials: home => (home.testimonials ?? []).filter(entry => filled(entry.quote)).length >= 2,
|
|
26
|
+
about: home => home.about != null && filled(home.about.title) && filled(home.about.text),
|
|
27
|
+
closing: home => home.closing != null,
|
|
28
|
+
};
|
|
29
|
+
const landingBandsOf = home => LANDING_BAND_ORDER.filter(band => bandPresent[band](home));
|
|
30
|
+
/** The page's own section label for an anchor's band, when the plan wrote one. */
|
|
31
|
+
const sectionLabel = (home, anchor) => {
|
|
32
|
+
const labels = home.labels ?? {};
|
|
33
|
+
switch (anchor) {
|
|
34
|
+
case 'how': return labels.steps;
|
|
35
|
+
case 'features': return labels.features;
|
|
36
|
+
case 'use-cases': return labels.useCases;
|
|
37
|
+
case 'why': return labels.differentiator;
|
|
38
|
+
case 'approach': return labels.approach;
|
|
39
|
+
case 'community': return labels.testimonials;
|
|
40
|
+
case 'about': return labels.about;
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
const landingMenuOf = (home, max = LANDING_MENU.max) => {
|
|
44
|
+
const bands = landingBandsOf(home);
|
|
45
|
+
const drawn = (anchor) => LANDING_ANCHORS.includes(anchor) && bands.includes(LANDING_ANCHOR_BAND[anchor]);
|
|
46
|
+
const order = (anchor) => LANDING_ANCHORS.indexOf(anchor);
|
|
47
|
+
const label = (anchor, own) => {
|
|
48
|
+
const candidates = [own, sectionLabel(home, anchor)];
|
|
49
|
+
const chosen = candidates.find(filled);
|
|
50
|
+
return chosen?.trim() ?? LANDING_ANCHOR_LABELS[anchor];
|
|
51
|
+
};
|
|
52
|
+
const chosen = [];
|
|
53
|
+
for (const entry of home.menu ?? []) {
|
|
54
|
+
if (entry == null || !drawn(entry.anchor) || chosen.some(kept => kept.anchor === entry.anchor)) {
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
chosen.push({ anchor: entry.anchor, label: label(entry.anchor, entry.label) });
|
|
58
|
+
}
|
|
59
|
+
chosen.sort((a, b) => order(a.anchor) - order(b.anchor));
|
|
60
|
+
chosen.splice(Math.max(LANDING_MENU.min, max));
|
|
61
|
+
const padding = ['how', 'features', ...LANDING_ANCHORS.filter(anchor => anchor !== 'how' && anchor !== 'features')];
|
|
62
|
+
for (const anchor of padding) {
|
|
63
|
+
if (chosen.length >= LANDING_MENU.min)
|
|
64
|
+
break;
|
|
65
|
+
if (drawn(anchor) && !chosen.some(kept => kept.anchor === anchor)) {
|
|
66
|
+
chosen.push({ anchor, label: label(anchor) });
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return chosen.sort((a, b) => order(a.anchor) - order(b.anchor));
|
|
70
|
+
};
|
|
71
|
+
const homeSlotsOf = home => {
|
|
72
|
+
const gate = usableGate(home);
|
|
73
|
+
const slots = [];
|
|
74
|
+
if (!gate)
|
|
75
|
+
slots.push('hero.cta');
|
|
76
|
+
if (!gate && filled(home.hero.secondary?.label))
|
|
77
|
+
slots.push('hero.secondary');
|
|
78
|
+
if (filled(home.hero.browse?.label))
|
|
79
|
+
slots.push('hero.browse');
|
|
80
|
+
if (bandPresent['use-cases'](home)) {
|
|
81
|
+
drawnUseCases(home).forEach((_, index) => slots.push(`useCase.${index + 1}`));
|
|
82
|
+
}
|
|
83
|
+
if (home.closing != null) {
|
|
84
|
+
if (!gate)
|
|
85
|
+
slots.push('closing.primary');
|
|
86
|
+
if (filled(home.closing.secondary?.label))
|
|
87
|
+
slots.push('closing.secondary');
|
|
88
|
+
drawnClosingLinks(home).forEach((_, index) => slots.push(`closing.link.${index + 1}`));
|
|
89
|
+
}
|
|
90
|
+
return slots;
|
|
91
|
+
};
|
|
92
|
+
return { landingBandsOf, landingMenuOf, homeSlotsOf };
|
|
93
|
+
};
|
|
94
|
+
export const landingPlanHelper = createLandingPlanHelper();
|
|
95
|
+
//# sourceMappingURL=landing.js.map
|