m0saic 0.2.2 → 0.3.1
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/LICENSE +22 -7
- package/README.md +23 -5
- package/dist/browseE2e.js +1 -1
- package/dist/connectionsFromEnv.js +1 -1
- package/dist/e2eTemplateVariants.js +1 -1
- package/dist/frontDoor.js +1 -1
- package/dist/index.js +1 -1
- package/dist/inlineDsl.js +1 -1
- package/dist/mcp/bridgeClient.js +1 -0
- package/dist/mcp/server.js +1 -0
- package/dist/mcp/tools.js +1 -0
- package/dist/mosaicxRunner.js +1 -1
- package/dist/outputPattern.js +1 -1
- package/dist/showcaseFeed.js +1 -1
- package/dist/templateDoctor.js +1 -1
- package/dist/utils/checkFeasibility.js +1 -1
- package/dist/utils/collectRenderErrors.js +1 -1
- package/dist/utils/enrichImageAlphaFromDoc.js +1 -1
- package/dist/utils/ensureFfmpeg.js +1 -1
- package/dist/utils/extractLayoutMeta.js +1 -1
- package/dist/utils/failureHints.js +1 -1
- package/dist/utils/ffmpegProbe.js +1 -1
- package/dist/utils/formatM0saicForCli.js +1 -1
- package/dist/utils/hashFile.js +1 -1
- package/dist/utils/helpGroups.js +1 -1
- package/dist/utils/installContext.js +1 -0
- package/dist/utils/invocation.js +1 -1
- package/dist/utils/licenseActivation.js +1 -0
- package/dist/utils/licenseActivationWorker.js +1 -0
- package/dist/utils/mosaicSpinner.js +1 -1
- package/dist/utils/parseDimensions.js +1 -1
- package/dist/utils/pathInfo.js +1 -1
- package/dist/utils/readJsonArg.js +1 -1
- package/dist/utils/renderOutcome.js +1 -1
- package/dist/utils/renderReport.js +1 -1
- package/dist/utils/renderSignals.js +1 -1
- package/dist/utils/renderWorkspace.js +1 -1
- package/dist/utils/reportOutputFormat.js +1 -0
- package/dist/utils/setupFfmpeg.js +1 -1
- package/dist/utils/telemetry.js +1 -1
- package/dist/utils/telemetryFlushWorker.js +1 -1
- package/dist/utils/telemetryUpstream.js +1 -1
- package/dist/utils/telemetryUsage.js +1 -1
- package/dist/utils/toolchainConfig.js +1 -1
- package/dist/utils/tutorialDuration.js +1 -1
- package/dist/utils/updateCheck.js +1 -1
- package/dist/utils/updateCheckWorker.js +1 -1
- package/dist/utils/validateSourceCounts.js +1 -1
- package/dist/utils/versions.js +1 -1
- package/dist/webCustomizeLink.js +1 -1
- package/node_modules/@m0saic/community-m/NOTICE +9 -0
- package/node_modules/@m0saic/community-m/release.json +2 -2
- package/node_modules/@m0saic/core/dist/core/buildChildMosaicSource.js +1 -1
- package/node_modules/@m0saic/core/dist/core/buildChunkCommands.js +1 -1
- package/node_modules/@m0saic/core/dist/core/buildEncodeCommands.js +1 -1
- package/node_modules/@m0saic/core/dist/core/buildLavfiSource.js +1 -1
- package/node_modules/@m0saic/core/dist/core/buildMediaSource.js +1 -1
- package/node_modules/@m0saic/core/dist/core/buildMosaicNode.js +1 -1
- package/node_modules/@m0saic/core/dist/core/buildMosaicPlanFromFile.js +1 -1
- package/node_modules/@m0saic/core/dist/core/buildSvgTextSource.js +1 -1
- package/node_modules/@m0saic/core/dist/core/buildTextRenderCommand.js +1 -1
- package/node_modules/@m0saic/core/dist/core/collectRefTargets.js +1 -1
- package/node_modules/@m0saic/core/dist/core/index.js +1 -1
- package/node_modules/@m0saic/core/dist/core/maskCacheDir.js +1 -1
- package/node_modules/@m0saic/core/dist/core/maskWorkerBridge.js +1 -1
- package/node_modules/@m0saic/core/dist/core/playbackPlaySpeed.js +1 -1
- package/node_modules/@m0saic/core/dist/core/prepareProps.js +1 -1
- package/node_modules/@m0saic/core/dist/core/primaryOutput.js +1 -1
- package/node_modules/@m0saic/core/dist/core/rasterizeMaskPng.js +1 -1
- package/node_modules/@m0saic/core/dist/core/rasterizeSvgMediaPng.js +1 -1
- package/node_modules/@m0saic/core/dist/core/refTargetTap.js +1 -1
- package/node_modules/@m0saic/core/dist/core/resolveMasks.js +1 -1
- package/node_modules/@m0saic/core/dist/core/resolveMasksSync.js +1 -1
- package/node_modules/@m0saic/core/dist/core/resolveStrokeRingsSync.js +1 -1
- package/node_modules/@m0saic/core/dist/core/roundedRectMask.js +1 -1
- package/node_modules/@m0saic/core/dist/core/strokeRing.js +1 -1
- package/node_modules/@m0saic/core/dist/core/svgRaster.js +1 -1
- package/node_modules/@m0saic/core/dist/defaults.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/backgroundImageInput.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/bufferGuard.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/ffmpegCommands.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyBackdropBlur.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyBlur.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyBorderRadius.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyCamera.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyChromaKey.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyFade.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyGrade.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyMask.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyNoise.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyPixelize.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyRotate.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyStroke.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyTileEffects.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/coverCrop.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/index.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/sourceRectCrop.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/gridLowering.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/index.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/splitAvMux.js +1 -1
- package/node_modules/@m0saic/core/dist/ffmpeg/threadGuard.js +1 -1
- package/node_modules/@m0saic/core/dist/flatten/index.js +1 -1
- package/node_modules/@m0saic/core/dist/fs/index.js +1 -1
- package/node_modules/@m0saic/core/dist/fs/tempWorkspace.js +1 -1
- package/node_modules/@m0saic/core/dist/index.js +1 -1
- package/node_modules/@m0saic/core/dist/media/buildAssetManifestFromInputs.js +1 -1
- package/node_modules/@m0saic/core/dist/media/buildMediaRegistryFromInput.js +1 -1
- package/node_modules/@m0saic/core/dist/media/collectMediaInputsFromInvocationProps.js +1 -1
- package/node_modules/@m0saic/core/dist/media/collectMediaInputsFromMosaicRenderableFile.js +1 -1
- package/node_modules/@m0saic/core/dist/media/collectMediaInputsFromProps.js +1 -1
- package/node_modules/@m0saic/core/dist/media/index.js +1 -1
- package/node_modules/@m0saic/core/dist/media/internalMintAsset.js +1 -1
- package/node_modules/@m0saic/core/dist/media/remoteUrl.js +1 -1
- package/node_modules/@m0saic/core/dist/media/stageUnsafeFilenames.js +1 -1
- package/node_modules/@m0saic/core/dist/media/types.js +1 -1
- package/node_modules/@m0saic/core/dist/output/index.js +1 -1
- package/node_modules/@m0saic/core/dist/output/resolveOutputFormat.js +1 -1
- package/node_modules/@m0saic/core/dist/output/types.js +1 -1
- package/node_modules/@m0saic/core/dist/probe/cellLuminanceProbe.js +1 -1
- package/node_modules/@m0saic/core/dist/probe/extractSubtitleCues.js +1 -1
- package/node_modules/@m0saic/core/dist/probe/helpers.js +1 -1
- package/node_modules/@m0saic/core/dist/probe/index.js +1 -1
- package/node_modules/@m0saic/core/dist/probe/luminanceProbe.js +1 -1
- package/node_modules/@m0saic/core/dist/probe/probeMedia.js +1 -1
- package/node_modules/@m0saic/core/dist/probe/runFFprobe.js +1 -1
- package/node_modules/@m0saic/core/dist/probe/types.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/engineRedaction.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/ffmpegFailure.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/filterPreflight.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/hashFile.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/index.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/pathInfo.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/perfHeatmap.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/perfReport.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/pipelineM0p.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/renderCostModel.constants.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/renderCostModel.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/renderReport.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/renderSidecars.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/resolveMosaicx.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/runPlan.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/types.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/upstream.js +1 -1
- package/node_modules/@m0saic/core/dist/runtime/writeSidecars.js +1 -1
- package/node_modules/@m0saic/core/dist/types/chunk.js +1 -1
- package/node_modules/@m0saic/core/dist/types/index.js +1 -1
- package/node_modules/@m0saic/core/dist/types/mosaic-plan.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/assertTiming.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/command.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/createEngineContext.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/createTemplateRenderCache.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/ffmpegColor.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/formatDuration.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/fsSafeId.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/index.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/lowerRenderableToMosaicDocument.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/movSafeCodec.js +1 -1
- package/node_modules/@m0saic/core/dist/utils/resolveBoxFrac.js +1 -1
- package/node_modules/@m0saic/core/dist/validate/index.js +1 -1
- package/node_modules/@m0saic/core/scripts/mask-rasterize-core.js +1 -1
- package/node_modules/@m0saic/core/scripts/mask-rasterize-worker.js +1 -1
- package/node_modules/@m0saic/core/scripts/mask-worker-thread.js +1 -1
- package/node_modules/@m0saic/dictionary/NOTICE +9 -0
- package/node_modules/@m0saic/dictionary/README.md +315 -0
- package/node_modules/@m0saic/dictionary/package.json +1 -1
- package/node_modules/@m0saic/dsl/package.json +1 -1
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/agent.js +6 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0/parseM0File.js +1 -1
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0/serializeM0File.js +2 -2
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0c/m0cFile.js +3 -3
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/types.js +1 -1
- package/node_modules/@m0saic/dsl-file-formats/package.json +1 -1
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/bakeM0cInsets.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/index.js +1 -1
- package/node_modules/@m0saic/dsl-stdlib/package.json +1 -1
- package/node_modules/@m0saic/knowledge/LICENSE +21 -0
- package/node_modules/@m0saic/knowledge/README.md +71 -0
- package/node_modules/@m0saic/knowledge/dist/index.js +1 -0
- package/node_modules/@m0saic/knowledge/docs/README.md +60 -0
- package/node_modules/@m0saic/knowledge/docs/file-formats/m0-iteration-protocol.md +120 -0
- package/node_modules/@m0saic/knowledge/docs/file-formats/m0p-and-custom-field.md +195 -0
- package/node_modules/@m0saic/knowledge/docs/handbook/README.md +27 -0
- package/node_modules/@m0saic/knowledge/docs/handbook/composition-arithmetic.md +278 -0
- package/node_modules/@m0saic/knowledge/docs/handbook/dsl-complexity.md +75 -0
- package/node_modules/@m0saic/knowledge/docs/handbook/dsl-rules.md +367 -0
- package/node_modules/@m0saic/knowledge/docs/handbook/feasibility-precision-quantization.md +591 -0
- package/node_modules/@m0saic/knowledge/docs/handbook/m0-construction-methods.md +201 -0
- package/node_modules/@m0saic/knowledge/docs/handbook/precision-tiers.md +84 -0
- package/node_modules/@m0saic/knowledge/docs/m0saic-thesis.md +95 -0
- package/node_modules/@m0saic/knowledge/docs/runtime/README.md +24 -0
- package/node_modules/@m0saic/knowledge/docs/runtime/agent-at-the-canvas.md +108 -0
- package/node_modules/@m0saic/knowledge/docs/runtime/cli-usage.md +475 -0
- package/node_modules/@m0saic/knowledge/docs/runtime/ffmpeg-expression-limits.md +117 -0
- package/node_modules/@m0saic/knowledge/docs/runtime/reduce-to-one.md +96 -0
- package/node_modules/@m0saic/knowledge/docs/skills/README.md +40 -0
- package/node_modules/@m0saic/knowledge/docs/skills/axis-and-geometry.md +103 -0
- package/node_modules/@m0saic/knowledge/docs/skills/dsl-stdlib-method-catalog.md +7 -0
- package/node_modules/@m0saic/knowledge/docs/skills/identity.md +123 -0
- package/node_modules/@m0saic/knowledge/docs/skills/labels-and-masks.md +170 -0
- package/node_modules/@m0saic/knowledge/docs/skills/m0saic-string-generation.md +251 -0
- package/node_modules/@m0saic/knowledge/docs/skills/more-atoms-not-bigger-atoms.md +77 -0
- package/node_modules/@m0saic/knowledge/docs/skills/overlay-semantics.md +194 -0
- package/node_modules/@m0saic/knowledge/docs/skills/parse-apis.md +79 -0
- package/node_modules/@m0saic/knowledge/docs/skills/passthrough-semantics.md +136 -0
- package/node_modules/@m0saic/knowledge/docs/skills/structural-construction.md +86 -0
- package/node_modules/@m0saic/knowledge/docs/skills/text-in-templates.md +126 -0
- package/node_modules/@m0saic/knowledge/docs/skills/zero-overlay-analysis.md +87 -0
- package/node_modules/@m0saic/knowledge/docs/templates/README.md +65 -0
- package/node_modules/@m0saic/knowledge/docs/templates/capability-templates.md +72 -0
- package/node_modules/@m0saic/knowledge/docs/templates/construction-strategy.md +329 -0
- package/node_modules/@m0saic/knowledge/docs/templates/data-pipeline.md +324 -0
- package/node_modules/@m0saic/knowledge/docs/templates/emission-patterns.md +130 -0
- package/node_modules/@m0saic/knowledge/docs/templates/geometry-recipes.md +248 -0
- package/node_modules/@m0saic/knowledge/docs/templates/layout-contract.md +168 -0
- package/node_modules/@m0saic/knowledge/docs/templates/output-resolution-tree.md +210 -0
- package/node_modules/@m0saic/knowledge/docs/templates/patterns/case-study-lessons.md +69 -0
- package/node_modules/@m0saic/knowledge/docs/templates/patterns/perf-authoring-rules.md +100 -0
- package/node_modules/@m0saic/knowledge/docs/templates/patterns/primitive-extraction-pattern.md +103 -0
- package/node_modules/@m0saic/knowledge/docs/templates/philosophy-and-contract.md +310 -0
- package/node_modules/@m0saic/knowledge/docs/templates/recursion-nested-rendering.md +154 -0
- package/node_modules/@m0saic/knowledge/docs/templates/reference/grid.md +104 -0
- package/node_modules/@m0saic/knowledge/docs/templates/reference/json-prop-type.md +169 -0
- package/node_modules/@m0saic/knowledge/docs/templates/reference/mosaic-color.md +81 -0
- package/node_modules/@m0saic/knowledge/docs/templates/reference/mosaic-placement-props.md +103 -0
- package/node_modules/@m0saic/knowledge/docs/templates/reference/prop-bindings.md +338 -0
- package/node_modules/@m0saic/knowledge/docs/templates/reference/template-flags.md +236 -0
- package/node_modules/@m0saic/knowledge/docs/templates/render-lifecycle.md +117 -0
- package/node_modules/@m0saic/knowledge/docs/templates/rendering-model-contract.md +392 -0
- package/node_modules/@m0saic/knowledge/docs/templates/standalone-pack-authoring.md +309 -0
- package/node_modules/@m0saic/knowledge/docs/templates/theming.md +81 -0
- package/node_modules/@m0saic/knowledge/docs/templates/ui-controls.md +150 -0
- package/node_modules/@m0saic/knowledge/package.json +6 -0
- package/node_modules/@m0saic/momo-types/README.md +109 -0
- package/node_modules/@m0saic/momo-types/dist/agent.js +1 -6
- package/node_modules/@m0saic/momo-types/dist/context.js +1 -1
- package/node_modules/@m0saic/momo-types/package.json +1 -1
- package/node_modules/@m0saic/platform/README.md +3 -0
- package/node_modules/@m0saic/platform/dist/cjs/index.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/outputKind/outputKind.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/propBindings/index.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/propBindings/propBindings.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/validateSources.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/packages/mosaicPackages.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/paths/m0saicRoot.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/lifecycle.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/preview.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/sender.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/usageRecorder.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/usageStore.js +3 -3
- package/node_modules/@m0saic/platform/dist/cjs/template-repos/index.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/template-repos/loadTemplateRepoFromPath.js +4 -4
- package/node_modules/@m0saic/platform/dist/cjs/template-repos/templateCatalogSidecars.js +2 -0
- package/node_modules/@m0saic/platform/dist/cjs/templateCatalog/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/templateCatalog/templateCatalog.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/ffmpeg/baseline.json +25 -97
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/ffmpeg/index.js +1 -1
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/ffmpeg/install.js +2 -2
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/goldenFfmpeg.js +6 -6
- package/node_modules/@m0saic/platform/package.json +1 -1
- package/node_modules/@m0saic/product/dist/communityRelease.js +1 -1
- package/node_modules/@m0saic/product/dist/freeTierLicense.js +1 -1
- package/node_modules/@m0saic/product/dist/index.js +1 -1
- package/node_modules/@m0saic/product/dist/licenseActivationNotice.js +1 -0
- package/node_modules/@m0saic/product/dist/licenseFile.js +1 -0
- package/node_modules/@m0saic/product/dist/licenseToken.js +1 -1
- package/node_modules/@m0saic/product/dist/makeScratchPath.js +1 -0
- package/node_modules/@m0saic/product/dist/postRenderWrapper.js +1 -1
- package/node_modules/@m0saic/product/dist/publicKeys.js +1 -1
- package/node_modules/@m0saic/product/dist/revokedKeys.js +1 -1
- package/node_modules/@m0saic/product/dist/upstreamDefaults.js +1 -1
- package/node_modules/@m0saic/product/dist/workspaceScaffold.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/hello-world/helloWorld.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/frameResolution.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/index.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/layoutConstraint.js +2 -2
- package/node_modules/@m0saic/template-utils/dist/m0saic/loadSession.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/render/createDesignContext.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/sources/makeErrorMosaic.js +2 -2
- package/node_modules/@m0saic/template-utils/dist/sources/svgTextSource.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/template/auditRenderedTemplate.js +5 -5
- package/node_modules/@m0saic/template-utils/dist/template/auditSchemaConventions.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/template/defineMosaicTemplate.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/template/resolveTemplateOutputHints.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/template/templateCatalogStore.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/templateConventions.js +4 -4
- package/node_modules/@m0saic/template-utils/dist/template/templateRegistry.js +3 -3
- package/node_modules/@m0saic/template-utils/dist/template/validateTemplateProps.js +1 -1
- package/node_modules/@m0saic/template-utils/dist/text/fitText.js +6 -6
- package/node_modules/@m0saic/template-utils/package.json +1 -1
- package/node_modules/@m0saic/templates/NOTICE +9 -0
- package/node_modules/@m0saic/templates/dist/catalog.js +1 -0
- package/node_modules/@m0saic/templates/dist/freeze.js +8 -8
- package/node_modules/@m0saic/templates/dist/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/_shared/canvas-handles.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/_shared/stand-in.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/commit-feed/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/agents/commit-feed/v2/commit-feed.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/commit-feed/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/trace-timeline/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/agents/trace-timeline/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/trace-timeline/v2/trace-timeline.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/_shared/alpine-conventions.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/bar-graph/v2/bar-graph.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/bar-graph/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/commit-feed/v3/commit-feed.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/commit-feed/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/contributor-table/v2/contributor-table.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/contributor-table/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/donut/v4/donut.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/donut/v4/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/heatmap/v3/heatmap.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/heatmap/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/kpi-card/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/kpi-card/v3/kpi-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/leaderboard/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/leaderboard/v2/leaderboard.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/line-chart/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/line-chart/v3/line-chart.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/progress-card/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/progress-card/v2/progress-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/stat-card/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/stat-card/v2/stat-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/timeline/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/timeline/v3/timeline.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/treemap/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/treemap/v3/treemap.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/report/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/report/v2/report.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/business-card/v2/business-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/business-card/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/brand/logo/v4/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/logo/v4/logo_runner.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v3/bar-graph.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v5/donut.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v5/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v2/line-chart.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/stat-card/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/stat-card/v2/stat-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/code/snippet-morph/v2/snippet-morph.js +3 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v2/image-collage.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v2/dsl-tutorial.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/year-card/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/github/year-card/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/year-card/v2/year-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/runner/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/runner/v2/runner.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/barcode/v2/barcode.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/barcode/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/blur-regions/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/blur-regions/v1/tutorial.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/blur-regions/v2/blur-regions.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/blur-regions/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/highlights/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/highlights/v2/highlights.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/highlights/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/v2/logo-animate.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/metadata-stamp/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/metadata-stamp/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/metadata-stamp/v2/metadata-stamp.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/code/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/code/v2/qr-code.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/stamp/v2/qr-stamp-custom.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v3/screencap-grid.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid_aspect_safe/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid_aspect_safe/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid_aspect_safe/v2/screencap-grid-aspect-safe.js +3 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/scroll_wall/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/scroll_wall/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/scroll_wall/v2/scroll-wall.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/subtitle-burn/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/subtitle-burn/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/subtitle-burn/v2/subtitle-burn.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/trickplay/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/trickplay/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/trickplay/v2/trickplay.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/video_to_png_sequence/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/video_to_png_sequence/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/video_to_png_sequence/v2/video-to-png-sequence.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/v2/watermark.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/primitives/grid/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/primitives/grid/v3/grid.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/social/quote-card/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/social/quote-card/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/social/quote-card/v2/quote-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v2/narrated-chapters.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v2/props.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v2/scrapbook.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/theming/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/theming/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/theming/v2/theming.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/web/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/m0saic/web/page-skeleton/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/web/page-skeleton/v2/page-skeleton.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/base/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/base/v3/wireframe.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/index.js +1 -1
- package/node_modules/@m0saic/templates/dist/repo.js +1 -1
- package/node_modules/@m0saic/templates/dist/template-catalog.json +5429 -0
- package/node_modules/@m0saic/templates/dist/template-registry.js +1 -1
- package/node_modules/@m0saic/templates/dist/web.js +1 -1
- package/node_modules/@m0saic/templates/package.json +1 -1
- package/node_modules/@m0saic/templates/template-catalog.json +5429 -0
- package/node_modules/@m0saic/templates/template-manifest.json +1030 -286
- package/node_modules/@m0saic/templates/web-template-ids.json +38 -0
- package/node_modules/@m0saic/templates-advanced/NOTICE +9 -0
- package/node_modules/@m0saic/text/package.json +1 -1
- package/node_modules/@m0saic/types/dist/analytics/consent.js +1 -1
- package/node_modules/@m0saic/types/dist/analytics/event.js +1 -1
- package/node_modules/@m0saic/types/dist/analytics/usageMetrics.js +1 -1
- package/node_modules/@m0saic/types/dist/identifiers/identifiers.js +1 -1
- package/node_modules/@m0saic/types/dist/telemetry/ffmpegFailure.js +1 -1
- package/node_modules/@m0saic/types/dist/template/template.js +1 -1
- package/node_modules/@m0saic/types/package.json +1 -1
- package/node_modules/@m0saic/types-internal/dist/analytics/featureKeys.js +1 -1
- package/package.json +13 -11
- package/resources/starter-base/starter-base.json +10 -0
- package/resources/starter-base/starter-base.tgz +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var a=Object.defineProperty;var e=(t,r)=>a(t,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineHeatmapV3=void 0;var heatmap_1=require("./heatmap");Object.defineProperty(exports,"AlpineHeatmapV3",{enumerable:!0,get:e(function(){return heatmap_1.AlpineHeatmapV3},"get")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var p=Object.defineProperty;var u=(t,e)=>p(t,"name",{value:e,configurable:!0});var __createBinding=this&&this.__createBinding||(Object.create?(function(t,e,r,i){i===void 0&&(i=r);var o=Object.getOwnPropertyDescriptor(e,r);(!o||("get"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:u(function(){return e[r]},"get")}),Object.defineProperty(t,i,o)}):(function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]})),__exportStar=this&&this.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(e,t,r)};Object.defineProperty(exports,"__esModule",{value:!0}),__exportStar(require("./bar-graph/v1"),exports),__exportStar(require("./donut/v1"),exports),__exportStar(require("./donut/v2"),exports),__exportStar(require("./donut/v3"),exports),__exportStar(require("./line-chart/v1"),exports),__exportStar(require("./line-chart/v2"),exports),__exportStar(require("./kpi-card/v1"),exports),__exportStar(require("./kpi-card/v2"),exports),__exportStar(require("./stat-card/v1"),exports),__exportStar(require("./contributor-table/v1"),exports),__exportStar(require("./commit-feed/v1"),exports),__exportStar(require("./commit-feed/v2"),exports),__exportStar(require("./progress-card/v1"),exports),__exportStar(require("./leaderboard/v1"),exports),__exportStar(require("./heatmap/v1"),exports),__exportStar(require("./heatmap/v2"),exports),__exportStar(require("./timeline/v1"),exports),__exportStar(require("./timeline/v2"),exports),__exportStar(require("./treemap/v1"),exports),__exportStar(require("./treemap/v2"),exports);
|
|
1
|
+
"use strict";var p=Object.defineProperty;var u=(t,e)=>p(t,"name",{value:e,configurable:!0});var __createBinding=this&&this.__createBinding||(Object.create?(function(t,e,r,i){i===void 0&&(i=r);var o=Object.getOwnPropertyDescriptor(e,r);(!o||("get"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:u(function(){return e[r]},"get")}),Object.defineProperty(t,i,o)}):(function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]})),__exportStar=this&&this.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(e,t,r)};Object.defineProperty(exports,"__esModule",{value:!0}),__exportStar(require("./bar-graph/v1"),exports),__exportStar(require("./bar-graph/v2"),exports),__exportStar(require("./donut/v1"),exports),__exportStar(require("./donut/v2"),exports),__exportStar(require("./donut/v3"),exports),__exportStar(require("./donut/v4"),exports),__exportStar(require("./line-chart/v1"),exports),__exportStar(require("./line-chart/v2"),exports),__exportStar(require("./line-chart/v3"),exports),__exportStar(require("./kpi-card/v1"),exports),__exportStar(require("./kpi-card/v2"),exports),__exportStar(require("./kpi-card/v3"),exports),__exportStar(require("./stat-card/v1"),exports),__exportStar(require("./stat-card/v2"),exports),__exportStar(require("./contributor-table/v1"),exports),__exportStar(require("./contributor-table/v2"),exports),__exportStar(require("./commit-feed/v1"),exports),__exportStar(require("./commit-feed/v2"),exports),__exportStar(require("./commit-feed/v3"),exports),__exportStar(require("./progress-card/v1"),exports),__exportStar(require("./progress-card/v2"),exports),__exportStar(require("./leaderboard/v1"),exports),__exportStar(require("./leaderboard/v2"),exports),__exportStar(require("./heatmap/v1"),exports),__exportStar(require("./heatmap/v2"),exports),__exportStar(require("./heatmap/v3"),exports),__exportStar(require("./timeline/v1"),exports),__exportStar(require("./timeline/v2"),exports),__exportStar(require("./timeline/v3"),exports),__exportStar(require("./treemap/v1"),exports),__exportStar(require("./treemap/v2"),exports),__exportStar(require("./treemap/v3"),exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var t=Object.defineProperty;var e=(r,i)=>t(r,"name",{value:i,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineKpiCardV3=void 0;var kpi_card_1=require("./kpi-card");Object.defineProperty(exports,"AlpineKpiCardV3",{enumerable:!0,get:e(function(){return kpi_card_1.AlpineKpiCardV3},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _e=Object.defineProperty;var l=(e,t)=>_e(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineKpiCardV3=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),geometry_1=require("../../../charts/line-chart/v1/geometry"),alpine_card_1=require("../../_shared/alpine-card"),alpine_theme_1=require("../../_shared/alpine-theme"),alpine_anim_1=require("../../_shared/alpine-anim"),alpine_conventions_1=require("../../_shared/alpine-conventions"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),DEFAULT_PRESET="light",DEFAULT_RENDER_MODE="premium",DEFAULT_DIRECTION="up",DEFAULT_ANIM={renderMode:DEFAULT_RENDER_MODE,introFrac:.7,countUp:!0,easing:"easeOut",reduceMotion:!1},ASC_TREND=[10,14,12,18,16,23,21,28,26,34];function defaultSpark(e){return e==="down"?ASC_TREND.slice().reverse():e==="flat"?[20,22,19,21,20,22,19,21,20,21]:ASC_TREND.slice()}l(defaultSpark,"defaultSpark");const LABEL_W=13,VALUE_W=34,DELTA_W=14,SPARK_W=30,GAP_W=3;function leftText(e,t,n){return{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:e||" "},style:{fontSize:t,fontColor:n},placement:{fit:"contain",hAlign:"left",vAlign:"middle"}}]}}l(leftText,"leftText");function leftExprText(e,t,n){return{type:"text",renderMode:{kind:"video"},visual:{backgroundColor:"black@0"},layers:[{content:{kind:"expr",expr:e,eval:"frame"},style:{fontSize:t,fontColor:n},placement:{hAlign:"left",vAlign:"middle"}}]}}l(leftExprText,"leftExprText");function centerText(e,t,n){return{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:e||" "},style:{fontSize:t,fontColor:n},placement:{fit:"contain",hAlign:"center",vAlign:"middle"}}]}}l(centerText,"centerText");function fadeIn(e,t,n,s){var o;if(!s)return e;const i=(o=e.overlay)!==null&&o!==void 0?o:{};return{...e,overlay:{...i,alpha:(0,template_utils_1.fadeInExpr)(t,n)}}}l(fadeIn,"fadeIn");function triangleSource(e,t,n,s){const o=Math.min(n,s)*.7,i=n/2,f=s/2,u=o/2,m=o*.866,h=f-m/2,c=f+m/2,a=l(g=>Math.round(g*10)/10,"n"),b=e==="up"?`M ${a(i)} ${a(h)} L ${a(i+u)} ${a(c)} L ${a(i-u)} ${a(c)} Z`:`M ${a(i-u)} ${a(h)} L ${a(i+u)} ${a(h)} L ${a(i)} ${a(c)} Z`;return(0,template_utils_1.makeColorTile)(t,{mask:{kind:"inline-mask",localPath:b,bounds:{x:0,y:0,width:n,height:s}}})}l(triangleSource,"triangleSource");function sparklineBand(e){const{bandW:t,bandH:n,color:s}=e,o=e.values.filter(d=>Number.isFinite(d));if(o.length<2||t<=0||n<=0)return alpine_card_1.EMPTY;const i=Math.min(...o),f=Math.max(...o),u=f-i||1,m=Math.max(2,Math.round(n*.06)),h=m+2,c=l(d=>d/(o.length-1)*t,"xAt"),a=l(d=>h+(1-(d-i)/u)*(n-2*h),"yAt"),b=o.map((d,q)=>({x:c(q),y:a(d)})),g=n,{poly:p}=(0,geometry_1.curvePolyline)(b,"smooth"),E=p.map(d=>({x:d.x,y:Math.max(0,Math.min(g,d.y))})),x=e.animate&&!e.light,k=x?`(${(0,template_utils_1.fadeInExpr)(0,Math.max(.12,e.introSec*.5))})*0.16`:"0.16",M=x?(0,template_utils_1.fadeInExpr)(0,Math.max(.12,e.introSec*.5)):void 0,v={x:0,y:0,width:t,height:n},H=(0,template_utils_1.makeColorTile)(s,{mask:{kind:"inline-mask",localPath:(0,geometry_1.areaPolygonPath)(E,g),bounds:v},overlay:{alpha:k}}),C=(0,template_utils_1.makeColorTile)(s,{mask:{kind:"inline-mask",localPath:(0,geometry_1.polylineStrokePath)(E,m),bounds:v},...M?{overlay:{alpha:M}}:{}});return(0,alpine_card_1.overlay)([(0,alpine_card_1.paint)(H),(0,alpine_card_1.paint)(C)])}l(sparklineBand,"sparklineBand");const propsSchema=(0,template_utils_1.definePropsSchema)({label:{type:"string",required:!0},value:{type:"string",required:!0},delta:{type:"string",required:!1},sublabel:{type:"string",required:!1},title:{type:"string",required:!1},subtitle:{type:"string",required:!1},direction:{type:"string",required:!1,meta:{constraints:{oneOf:["up","down","flat"]}}},preset:{type:"string",required:!1,meta:{constraints:{oneOf:["light","dark"]}}},valueColor:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0,defaultColor:"#0F172A"}}},sparkline:{type:"number[]",required:!1,meta:{control:{flavor:"numberList"}}},anim:{type:"group",required:!1,fields:{renderMode:(0,alpine_conventions_1.bEnum)(["premium","light"]),reduceMotion:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.reduceMotion,introFrac:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.introFrac,countUp:(0,alpine_conventions_1.bBool)(),easing:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.easing}},theme:alpine_conventions_1.ALPINE_THEME_GROUP_BARE,debugLayout:{type:"boolean",required:!1}});exports.AlpineKpiCardV3={id:(0,types_1.asTemplateId)("@m0saic/alpine/kpi-card/v3"),version:3,capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},width:1280,height:800,fps:30,durationMs:2e3,posterTimeMs:1900},propsSchema,bindings:{unbound:{...alpine_conventions_1.ALPINE_THEME_UNBOUND,...alpine_conventions_1.ALPINE_ANIM_UNBOUND,sparkline:"series"}},defaultProps:{debugLayout:!1,theme:{forceFetch:!1},label:"MONTHLY REVENUE",value:"$48,250",delta:"+12.5%",direction:"up",sublabel:"vs last month",preset:DEFAULT_PRESET,anim:DEFAULT_ANIM},async render(e,t){var n,s,o,i,f,u,m;const h=Math.max(1,Math.round(t.target.width)),c=Math.max(1,Math.round(t.target.height));if(!e.value||!String(e.value).trim())return(0,template_utils_1.makeIncompleteMosaic)("Type the headline value \u2014 the number this card is about.",{title:"KPI Card",width:h,height:c});const a=await(0,alpine_theme_1.resolveAlpineTheme)((n=e.preset)!==null&&n!==void 0?n:DEFAULT_PRESET,t,e.theme),b={...DEFAULT_ANIM,...(s=e.anim)!==null&&s!==void 0?s:{}},g=((o=b.renderMode)!==null&&o!==void 0?o:DEFAULT_RENDER_MODE)==="light",p=(i=e.direction)!==null&&i!==void 0?i:DEFAULT_DIRECTION,E=(0,alpine_card_1.resolveColor)(e.valueColor,a.title),x=p==="up"?a.positive:p==="down"?a.negative:a.subtitle,k=!!(e.delta&&e.delta.trim()),M=k&&(p==="up"||p==="down"),v=!!(e.sublabel&&e.sublabel.trim()),C=(e.sparkline!==void 0?(f=e.sparkline)!==null&&f!==void 0?f:[]:defaultSpark(p)).filter(r=>Number.isFinite(r)),d=C.length>=2,q=Math.max(.1,((u=t.target.durationMs)!==null&&u!==void 0?u:2e3)/1e3),A=Math.max(.1,Math.min(1,b.introFrac)*q),P=!b.reduceMotion,re=b.countUp&&P&&/\d/.test(e.value),K=(0,alpine_card_1.alpineCard)({theme:a,W:h,H:c,title:e.title,subtitle:e.subtitle}),T=K.contentRect,le=Math.max(11,Math.round(c*.032)),O=Math.max(28,Math.min(Math.round(c*.15),Math.floor(T.w*.94/(Math.max(1,e.value.length)*.62)))),y=Math.max(12,Math.round(c*.034)),S=Math.max(10,Math.round(c*.026)),se=!!(e.title&&e.title.trim())||!!(e.subtitle&&e.subtitle.trim()),de=[...k?[]:[{propKey:"delta"}],...v||k?[]:[{propKey:"sublabel"}]],ce=(0,template_utils_1.bindProps)(re?leftExprText((0,template_utils_1.animateNumbersInText)(e.value,{durationSec:A,ease:b.easing}),O,E):(0,alpine_card_1.tag)(leftText(e.value,O,E),"kpi-value"),[{propKey:"value"},{propKey:"valueColor"},...de]),I=A*.5,V=Math.max(.1,A*.35),L=l(r=>P?g?(0,alpine_anim_1.revealGate)(r,I):fadeIn(r,I,V,!0):r,"ff");let B=alpine_card_1.EMPTY,F=0;if(k){const r=Math.round(y*1.9),j=M?Math.round(r*.8):0,z=M?Math.round(y*.3):0,J=Math.round(y*.62*e.delta.length+y),w=Math.round(y*.6),$=M?2*w+r:0,Q=(M?$:w)+J+w,N=l(_=>Math.max(1,Math.round(_/Q*100)),"wq");let ee=[];if(M){const _=triangleSource(p,x,r,r),ye=w/$;_.placement={inset:{x:ye}},_.editor={label:"delta-arrow"},ee=[{weight:N($),node:(0,alpine_card_1.paint)(L(_))}]}const pe=(0,alpine_card_1.colSplit)([...M?[]:[{weight:N(w),node:alpine_card_1.EMPTY}],...ee,{weight:N(J),node:(0,alpine_card_1.paint)(L((0,template_utils_1.bindProps)((0,alpine_card_1.tag)(centerText(e.delta,y,x),"kpi-delta"),[{propKey:"delta"},...v?[]:[{propKey:"sublabel"}]])))},{weight:N(w),node:alpine_card_1.EMPTY}]),me=P?g?{alpha:"0.14",enable:`gte(t,${I.toFixed(3)})`}:{alpha:`(${(0,template_utils_1.fadeInExpr)(I,V)})*0.14`}:{alpha:"0.14"},te=(0,template_utils_1.makeColorTile)(x,{effects:{rounding:{cornerStyle:"rounded",borderRadius:.5}},overlay:me});te.editor={label:"delta-pill"};const be=(0,alpine_card_1.paint)(te),R=Q;F=R/Math.max(1,h);const ge=LABEL_W+GAP_W+VALUE_W+GAP_W+DELTA_W+(d?GAP_W+SPARK_W:0),ne=Math.max(r,Math.round(DELTA_W/ge*T.h)),U=l(_=>Math.max(1,Math.round(_/2)),"q2"),Y=Math.max(0,Math.round((ne-r)/2)),ae=Math.max(0,ne-r-Y),Me=(0,alpine_card_1.rowSplit)([...Y>2?[{weight:U(Y),node:alpine_card_1.EMPTY}]:[],{weight:U(r),node:(0,alpine_card_1.overlay)([be,pe])},...ae>2?[{weight:U(ae),node:alpine_card_1.EMPTY}]:[]]),oe=Math.round(y*.6),ie=Math.round(S*.62*((m=e.sublabel)!==null&&m!==void 0?m:"").length+S),fe=v?[{weight:oe,node:alpine_card_1.EMPTY},{weight:ie,node:(0,alpine_card_1.paint)(L((0,template_utils_1.bindProp)((0,alpine_card_1.tag)(leftText(e.sublabel,S,a.muted),"kpi-sublabel"),"sublabel")))}]:[],ve=Math.max(1,Math.round(T.w)-R-(v?oe+ie:0));B=(0,alpine_card_1.colSplit)([{weight:R,node:Me},...fe,{weight:ve,node:alpine_card_1.EMPTY}])}else v&&(B=(0,alpine_card_1.colSplit)([{weight:1,node:(0,alpine_card_1.paint)(L((0,template_utils_1.bindProp)((0,alpine_card_1.tag)(leftText(e.sublabel,S,a.muted),"kpi-sublabel"),"sublabel")))}]));let G=alpine_card_1.EMPTY;if(d){const r=LABEL_W+VALUE_W+DELTA_W+SPARK_W+GAP_W*3,j=Math.max(1,Math.round(SPARK_W/r*T.h)),z=p==="up"?a.positive:p==="down"?a.negative:a.primary;G=sparklineBand({bandW:Math.round(T.w),bandH:j,values:C,color:z,introSec:A,animate:P,light:g})}const X=(0,template_utils_1.bindProps)((0,alpine_card_1.tag)(leftText(e.label,le,a.subtitle),"kpi-label"),[{propKey:"label"},...se?[]:[{propKey:"title"},{propKey:"subtitle"}]]),D=[{weight:LABEL_W,node:(0,alpine_card_1.paint)(P&&!g?fadeIn(X,0,Math.max(.1,A*.25),!0):X)},{weight:GAP_W,node:alpine_card_1.EMPTY},{weight:VALUE_W,node:(0,alpine_card_1.paint)(ce)},{weight:GAP_W,node:alpine_card_1.EMPTY},{weight:DELTA_W,node:B}];d&&(D.push({weight:GAP_W,node:alpine_card_1.EMPTY}),D.push({weight:SPARK_W,node:G}));const ue=(0,alpine_card_1.rowSplit)(D),W=K.compose(ue),Z=(0,alpine_conventions_1.findCardHeader)(W.sources);Z&&(0,alpine_conventions_1.withAddHandles)(Z,[...e.title&&e.title.trim()?[]:[{propKey:"title"}],...e.subtitle&&e.subtitle.trim()?[]:[{propKey:"subtitle"}]]);const he={kind:"mosaic_document",version:1,assets:{},m0:W.m0,sources:(0,alpine_conventions_1.bindCardSurface)(W.sources),backgroundColor:K.backgroundColor,fps:t.target.fps,durationMs:t.target.durationMs};return Promise.resolve((0,template_utils_1.withLayoutContract)(he,t,{templateId:"@m0saic/alpine/kpi-card/v3",relations:[],constraints:[...F>0?[{label:"delta-pill",minWidthFrac:Math.max(.005,F*.7),maxWidthFrac:Math.min(1,F*1.3)}]:[]],debug:e.debugLayout===!0}))},async renderCover(e,t){const n=(0,onboarding_cover_1.brandedCoverHeroBox)(t,"band"),s={...t,target:{...t.target,width:n.width,height:n.height},output:{...t.output,width:n.width,height:n.height}},o=await exports.AlpineKpiCardV3.render({...exports.AlpineKpiCardV3.defaultProps,anim:{...DEFAULT_ANIM,renderMode:"light",reduceMotion:!0}},s);return(0,onboarding_cover_1.buildBrandedCover)({ctx:t,variant:"band",copy:{productName:"KPI Card",title:"A KPI card."},hero:l(i=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(o),i.borderStrong),"hero"),heroAssets:o.assets,children:o.children})}},(0,template_utils_1.registerTemplate)(exports.AlpineKpiCardV3);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var t=Object.defineProperty;var e=(r,d)=>t(r,"name",{value:d,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineLeaderboardV2=void 0;var leaderboard_1=require("./leaderboard");Object.defineProperty(exports,"AlpineLeaderboardV2",{enumerable:!0,get:e(function(){return leaderboard_1.AlpineLeaderboardV2},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var Se=Object.defineProperty;var l=(t,a)=>Se(t,"name",{value:a,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineLeaderboardV2=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),alpine_card_1=require("../../_shared/alpine-card"),alpine_theme_1=require("../../_shared/alpine-theme"),alpine_anim_1=require("../../_shared/alpine-anim"),alpine_conventions_1=require("../../_shared/alpine-conventions"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),DEFAULT_PRESET="light",DEFAULT_RENDER_MODE="premium",DEFAULT_ANIM={renderMode:DEFAULT_RENDER_MODE,introFrac:.7,countUp:!0,easing:"easeOut",reduceMotion:!1},MAX_ROWS=8,MEDALS_LIGHT=["#F59E0B","#1E293B","#B45309"],MEDALS_DARK=["#F59E0B","#64748B","#D97706"],REST_LIGHT="#E2E8F0",REST_DARK="#334155";function tcell(t,a,o,s){return{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:t||" "},style:{fontSize:a,fontColor:o},placement:{fit:"contain",hAlign:s,vAlign:"middle"}}]}}l(tcell,"tcell");function exprCell(t,a,o,s){return{type:"text",renderMode:{kind:"video"},visual:{backgroundColor:"black@0"},layers:[{content:{kind:"expr",expr:t,eval:"frame"},style:{fontSize:a,fontColor:o},placement:{hAlign:s,vAlign:"middle"}}]}}l(exprCell,"exprCell");function fadeIn(t,a,o,s){var r;if(!s)return t;const c=(r=t.overlay)!==null&&r!==void 0?r:{};return{...t,overlay:{...c,alpha:(0,template_utils_1.fadeInExpr)(a,o)}}}l(fadeIn,"fadeIn");function onColor(t,a,o){const s=/^#?([0-9a-f]{6})/i.exec(String(t));if(!s)return a;const r=parseInt(s[1],16);return(.2126*(r>>16&255)+.7152*(r>>8&255)+.0722*(r&255))/255>.6?o:a}l(onColor,"onColor");const propsSchema=(0,template_utils_1.definePropsSchema)({items:{type:"array",required:!0,meta:{control:{flavor:"objectRows",columns:[{label:"Name",key:"name",kind:"text",placeholder:"Entry"},{label:"Value",key:"value",kind:"number"},{label:"Display",key:"valueLabel",kind:"text",placeholder:"auto"},{label:"Color",key:"color",kind:"color"}]}}},title:{type:"string",required:!1},subtitle:{type:"string",required:!1},valuePrefix:{type:"string",required:!1},valueSuffix:{type:"string",required:!1},preset:{type:"string",required:!1,meta:{constraints:{oneOf:["light","dark"]}}},showValue:{type:"boolean",required:!1},podiumTint:{type:"boolean",required:!1},preSorted:{type:"boolean",required:!1},anim:{type:"group",required:!1,fields:{renderMode:(0,alpine_conventions_1.bEnum)(["premium","light"]),reduceMotion:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.reduceMotion,introFrac:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.introFrac,countUp:(0,alpine_conventions_1.bBool)(),easing:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.easing}},theme:{type:"group",required:!1,fields:{slug:(0,alpine_conventions_1.bStr)(),preset:(0,alpine_conventions_1.bStr)(),namespace:(0,alpine_conventions_1.bStr)(),forceFetch:(0,alpine_conventions_1.bBool)()}},debugLayout:{type:"boolean",required:!1}});exports.AlpineLeaderboardV2={id:(0,types_1.asTemplateId)("@m0saic/alpine/leaderboard/v2"),version:2,capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},width:1280,height:800,fps:30,durationMs:2e3,posterTimeMs:1900},bindings:{unbound:{...alpine_conventions_1.ALPINE_THEME_UNBOUND,...alpine_conventions_1.ALPINE_ANIM_UNBOUND}},propsSchema,defaultProps:{preSorted:!1,debugLayout:!1,theme:{forceFetch:!1},items:[{name:"Ava Chen",value:2840},{name:"Liam Patel",value:2615},{name:"Noah Kim",value:2390},{name:"Mia Garcia",value:1975},{name:"Ethan Wright",value:1640}],title:"TOP CONTRIBUTORS",subtitle:"This month",preset:DEFAULT_PRESET,podiumTint:!0,showValue:!0,anim:DEFAULT_ANIM},async render(t,a){var o,s,r,c,A,T,L,P;const f=Math.max(1,Math.round(a.target.width)),h=Math.max(1,Math.round(a.target.height)),k=((o=t.items)!==null&&o!==void 0?o:[]).map((e,n)=>({it:e,srcIndex:n})).filter(({it:e})=>e&&typeof e.name=="string"&&Number.isFinite(e.value));if(k.length===0)return(0,template_utils_1.makeIncompleteMosaic)("Add a row \u2014 each one needs a name and a value.",{title:"Leaderboard",width:f,height:h});const g=await(0,alpine_theme_1.resolveAlpineTheme)((s=t.preset)!==null&&s!==void 0?s:DEFAULT_PRESET,a,t.theme),v={...DEFAULT_ANIM,...(r=t.anim)!==null&&r!==void 0?r:{}},U=!v.reduceMotion,Z=((c=v.renderMode)!==null&&c!==void 0?c:DEFAULT_RENDER_MODE)==="light",w=(A=t.showValue)!==null&&A!==void 0?A:!0,H=(T=t.podiumTint)!==null&&T!==void 0?T:!0,V=((L=t.preset)!==null&&L!==void 0?L:DEFAULT_PRESET)==="dark",ee=V?MEDALS_DARK:MEDALS_LIGHT,te=V?REST_DARK:REST_LIGHT,b=(t.preSorted?k.slice():k.slice().sort((e,n)=>n.it.value-e.it.value)).slice(0,MAX_ROWS),u=b.map(e=>e.it),m=u.length,ae=l((e,n,i,d)=>(0,template_utils_1.bindPropPath)(e,"items",[b[n].srcIndex,i],d),"bindItem"),_=l(e=>{var n,i;return e.valueLabel!=null&&e.valueLabel!==""?e.valueLabel:`${(n=t.valuePrefix)!==null&&n!==void 0?n:""}${Math.round(e.value).toLocaleString("en-US")}${(i=t.valueSuffix)!==null&&i!==void 0?i:""}`},"valueText"),ne=l(e=>(0,alpine_card_1.resolveColor)(u[e].color,e<3?ee[e]:te),"badgeColor"),oe=Math.max(.1,((P=a.target.durationMs)!==null&&P!==void 0?P:2e3)/1e3),W=Math.max(.1,Math.min(1,v.introFrac)*oe),O=Math.min(.12,W*.08),Y=.5,F=Math.max(.05,(W-O)/(1+Y*Math.max(0,m-1))),re=Y*F,y=(0,alpine_card_1.alpineCard)({theme:g,W:f,H:h,title:t.title,subtitle:t.subtitle}),C=y.contentRect,I=C.h,ie=Math.max(13,Math.round(h*.03)),le=Math.max(1,...u.map(e=>_(e).length)),se=(f-2*Math.round(Math.min(f,h)*.055))*.2*.92,G=Math.max(11,Math.min(Math.round(h*.032),Math.floor(se/(le*.62)))),de=Math.max(11,Math.round(h*.026)),E=l(e=>Math.max(8,Math.round(e/8)*8),"snap8"),p=E(Math.min(h*.11,(I-E(I*.02)*(m-1))/m)),N=E(Math.max(8,p*.22)),ue=m*(p+N),x=Math.max(0,E((I-ue)/2)),D=l(e=>Math.max(1,Math.round(e/C.w*100)),"wWeight"),q=D(p*.2),K=D(p*.78),$=D(p*.42),j=w?20:0,z=Math.max(10,100-q*2-K-$-j),ce=Math.max(1,...u.map(e=>{var n;return((n=e.name)!==null&&n!==void 0?n:"").length})),he=Math.max(11,Math.min(ie,Math.floor(C.w*z/100*.88/(ce*.62)))),me=l(e=>{const n=O+e*re,i=ne(e),d=e<3?onColor(i,"#FFFFFF",g.title):g.label,M=(0,alpine_card_1.overlay)([(0,alpine_card_1.paint)((0,template_utils_1.bindPropPath)((0,alpine_card_1.tag)((0,template_utils_1.makeColorTile)(i,{effects:{rounding:{cornerStyle:"rounded",borderRadius:.32}}}),"badge"),"items",[b[e].srcIndex,"color"],"color")),(0,alpine_card_1.paint)((0,alpine_card_1.tag)(tcell(String(e+1),de,d,"center"),"rank"))]),fe=(0,alpine_card_1.rowSplit)([{weight:1,node:alpine_card_1.EMPTY},{weight:3,node:M},{weight:1,node:alpine_card_1.EMPTY}]),we=(0,alpine_card_1.paint)(ae((0,alpine_card_1.tag)(tcell(u[e].name,he,g.title,"left"),"row-name"),e,"name","string")),_e=u[e].valueLabel!=null&&u[e].valueLabel!=="",X=l(xe=>(0,template_utils_1.bindProps)(xe,[{propKey:"items",path:[b[e].srcIndex,"value"],kind:"number"},..._e?[{propKey:"items",path:[b[e].srcIndex,"valueLabel"],kind:"string"}]:[{propKey:"valuePrefix"},{propKey:"valueSuffix"}]]),"bindValue"),ye=w?v.countUp&&U&&/\d/.test(_(u[e]))?(0,alpine_card_1.paint)(X((0,alpine_card_1.tag)(exprCell((0,template_utils_1.animateNumbersInText)(_(u[e]),{startSec:n,durationSec:F,ease:v.easing}),G,g.subtitle,"right"),"row-value"))):(0,alpine_card_1.paint)(X((0,alpine_card_1.tag)(tcell(_(u[e]),G,g.subtitle,"right"),"row-value"))):alpine_card_1.EMPTY,J=(0,alpine_card_1.colSplit)([{weight:q,node:alpine_card_1.EMPTY},{weight:K,node:fe},{weight:$,node:alpine_card_1.EMPTY},{weight:z,node:we},...w?[{weight:j,node:ye}]:[],{weight:q,node:alpine_card_1.EMPTY}]),Ee=e<3?.12:.55,Q=(0,template_utils_1.makeColorTile)(i,{effects:{rounding:{cornerStyle:"rounded",borderRadius:.18}},overlay:{alpha:`${Ee}`}});Q.editor={label:"row"};const B=H?(0,alpine_card_1.overlay)([(0,alpine_card_1.paint)(Q),J]):J;return U?Z?Me(B,n):be(B,n,F):B},"row"),pe=Math.max(2,Math.round(2*p/Math.max(1,N))),ge=(0,alpine_card_1.rowSplit)(Array.from({length:m},(e,n)=>({weight:1,node:(0,alpine_card_1.rowSplit)([{weight:1,node:alpine_card_1.EMPTY},{weight:pe,node:me(n)},{weight:1,node:alpine_card_1.EMPTY}])}))),S=[];x>0&&S.push({weight:x,node:alpine_card_1.EMPTY}),S.push({weight:m*(p+N),node:ge}),x>0&&S.push({weight:x,node:alpine_card_1.EMPTY});const R=y.compose((0,alpine_card_1.rowSplit)(S));(0,alpine_conventions_1.bindHeaderAddHandles)(R.sources,t,"row-name");const ve={kind:"mosaic_document",version:1,assets:{},m0:R.m0,sources:(0,alpine_conventions_1.bindCardSurface)(R.sources),backgroundColor:y.backgroundColor,fps:a.target.fps,durationMs:a.target.durationMs};return Promise.resolve((0,template_utils_1.withLayoutContract)(ve,a,{templateId:"@m0saic/alpine/leaderboard/v2",relations:H&&m>=2?[{label:"row",equal:"size",tolerance:.02,tolerancePx:1}]:[],constraints:[...y.constraints,{label:"rank",textFits:{charWidthEm:.62}},{label:"row-name",textFits:{charWidthEm:.62}},...w?[{label:"row-value",textFits:{charWidthEm:.62}}]:[]],debug:t.debugLayout===!0}));function be(e,n,i){return{m0:e.m0,sources:e.sources.map(d=>{var M;return!((M=d.overlay)===null||M===void 0)&&M.alpha?d:fadeIn(d,n,i,!0)})}}function Me(e,n){return{m0:e.m0,sources:e.sources.map(i=>{var d;return!((d=i.overlay)===null||d===void 0)&&d.enable?i:(0,alpine_anim_1.revealGate)(i,n,!0)})}}},async renderCover(t,a){const o=(0,onboarding_cover_1.brandedCoverHeroBox)(a,"band"),s={...a,target:{...a.target,width:o.width,height:o.height},output:{...a.output,width:o.width,height:o.height}},r=await exports.AlpineLeaderboardV2.render({...exports.AlpineLeaderboardV2.defaultProps,anim:{...DEFAULT_ANIM,renderMode:"light",reduceMotion:!0}},s);return(0,onboarding_cover_1.buildBrandedCover)({ctx:a,variant:"band",copy:{productName:"Leaderboard",title:"A leaderboard."},hero:l(c=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(r),c.borderStrong),"hero"),heroAssets:r.assets,children:r.children})}},(0,template_utils_1.registerTemplate)(exports.AlpineLeaderboardV2);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var i=Object.defineProperty;var e=(r,t)=>i(r,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineLineChartV3=void 0;var line_chart_1=require("./line-chart");Object.defineProperty(exports,"AlpineLineChartV3",{enumerable:!0,get:e(function(){return line_chart_1.AlpineLineChartV3},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var Wt=Object.defineProperty;var p=(t,a)=>Wt(t,"name",{value:a,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineLineChartV3=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),geometry_1=require("../../../charts/line-chart/v1/geometry"),alpine_card_1=require("../../_shared/alpine-card"),alpine_theme_1=require("../../_shared/alpine-theme"),alpine_conventions_1=require("../../_shared/alpine-conventions"),canvas_handles_1=require("../../../_shared/canvas-handles"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),DEFAULT_PRESET="light",DEFAULT_CURVE="smooth",DEFAULT_GRID={show:!0,count:4},DEFAULT_AREA={show:!0,opacity:.22},DEFAULT_POINTS={show:!0},DEFAULT_ANIM={introFrac:.7,ease:"easeOut",reduceMotion:!1};function niceAxis(t,a,n){if(a===t){const m=Math.abs(t)>0?Math.abs(t)*.1:1;return{min:t-m,max:a+m,step:m,ticks:[t-m,t,a+m]}}const l=Math.abs(a-t)/Math.max(1,n-1),o=!Number.isFinite(l)||l<=0?1:(0,dsl_stdlib_1.niceNum)(l,[1,2,2.5,5]),x=Math.floor(t/o)*o,F=Math.ceil(a/o)*o,S=[],B=o*1e-6;for(let m=x;m<=F+B;m+=o)S.push(Number(m.toFixed(6)));return{min:x,max:F,step:o,ticks:S}}p(niceAxis,"niceAxis");function formatCompact(t){const a=Math.abs(t),n=t<0?"-":"",r=p(l=>l.replace(/\.0+$/,""),"trim");return a>=1e9?n+r((a/1e9).toFixed(1))+"B":a>=1e6?n+r((a/1e6).toFixed(1))+"M":a>=1e3?n+r((a/1e3).toFixed(1))+"K":a>=100?n+Math.round(a).toString():n+r(a.toFixed(a<10?1:0))}p(formatCompact,"formatCompact");const r2=p(t=>Math.round(t*100)/100,"r2");function rectLocal(t,a,n,r){return`M ${r2(t)} ${r2(a)} L ${r2(t+n)} ${r2(a)} L ${r2(t+n)} ${r2(a+r)} L ${r2(t)} ${r2(a+r)} Z`}p(rectLocal,"rectLocal");function circlePolyLocal(t,a,n,r=28){let l="";for(let o=0;o<r;o++){const x=o/r*Math.PI*2;l+=`${o===0?"M":"L"} ${r2(t+Math.cos(x)*n)} ${r2(a+Math.sin(x)*n)} `}return l+"Z"}p(circlePolyLocal,"circlePolyLocal");const propsSchema=(0,template_utils_1.definePropsSchema)({values:{type:"number[]",required:!0,meta:{constraints:{minItems:1},control:{flavor:"numberList"}}},labels:{type:"string[]",required:!1},title:{type:"string",required:!1},subtitle:{type:"string",required:!1},curve:{type:"string",required:!1,meta:{constraints:{oneOf:["smooth","linear","stepped"]}}},preset:{type:"string",required:!1,meta:{constraints:{oneOf:["light","dark"]}}},lineColor:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0,defaultColor:"#2563EB"}}},grid:{type:"group",required:!1,fields:{show:(0,alpine_conventions_1.bBool)(),count:(0,alpine_conventions_1.bNum)({flavor:"slider",step:1},{min:2,max:8})}},area:{type:"group",required:!1,fields:{show:(0,alpine_conventions_1.bBool)(),opacity:(0,alpine_conventions_1.bFrac)()}},points:{type:"group",required:!1,fields:{show:(0,alpine_conventions_1.bBool)()}},showTicks:{type:"boolean",required:!1},domain:{type:"group",required:!1,fields:{minValue:(0,alpine_conventions_1.bNum)(),maxValue:(0,alpine_conventions_1.bNum)()}},anim:{type:"group",required:!1,fields:{reduceMotion:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.reduceMotion,introFrac:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.introFrac,ease:(0,alpine_conventions_1.bEnum)(["easeOut","smoothstep","easeInOut","linear"])}},theme:{type:"group",required:!1,fields:{slug:(0,alpine_conventions_1.bStr)(),preset:(0,alpine_conventions_1.bStr)(),namespace:(0,alpine_conventions_1.bStr)(),forceFetch:(0,alpine_conventions_1.bBool)()}},debugLayout:{type:"boolean",required:!1}});exports.AlpineLineChartV3={id:(0,types_1.asTemplateId)("@m0saic/alpine/line-chart/v3"),version:3,capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},width:1280,height:800,fps:30,durationMs:2e3,posterTimeMs:1900},bindings:{unbound:{...alpine_conventions_1.ALPINE_THEME_UNBOUND,...alpine_conventions_1.ALPINE_ANIM_UNBOUND}},propsSchema,defaultProps:{showTicks:!0,debugLayout:!1,theme:{forceFetch:!1},values:[12,19,15,25,22,30,28,36],labels:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug"],title:"LINE CHART",subtitle:"Monthly Active Users",curve:DEFAULT_CURVE,preset:DEFAULT_PRESET,grid:DEFAULT_GRID,area:DEFAULT_AREA,points:DEFAULT_POINTS,anim:DEFAULT_ANIM},async render(t,a){var n,r,l,o,x,F,S,B,m,z,Q,tt;const et=Math.max(1,Math.round(a.target.width)),b=Math.max(1,Math.round(a.target.height)),V=((n=t.values)!==null&&n!==void 0?n:[]).filter(e=>Number.isFinite(e));if(V.length===0)return(0,template_utils_1.makeIncompleteMosaic)("Add a value \u2014 one number per point on the line.",{title:"Line Chart",width:et,height:b});const u=await(0,alpine_theme_1.resolveAlpineTheme)((r=t.preset)!==null&&r!==void 0?r:DEFAULT_PRESET,a,t.theme),at=(0,alpine_card_1.resolveColor)(t.lineColor,u.primary),Ct=(l=t.curve)!==null&&l!==void 0?l:DEFAULT_CURVE,K={...DEFAULT_GRID,...(o=t.grid)!==null&&o!==void 0?o:{}},ut={...DEFAULT_AREA,...(x=t.area)!==null&&x!==void 0?x:{}},R={...DEFAULT_POINTS,...(F=t.points)!==null&&F!==void 0?F:{}},nt={...DEFAULT_ANIM,...(S=t.anim)!==null&&S!==void 0?S:{}},N=(B=t.labels)!==null&&B!==void 0?B:[],U=N.length>0,k=V.length,q=(m=t.domain)!==null&&m!==void 0?m:{},Et=Math.min(...V),Pt=Math.max(...V),Tt=q.minValue!=null&&q.maxValue!=null;let f,H,E;if(Tt)f=q.minValue,H=q.maxValue,E=Math.max(1,K.count);else{const e=niceAxis((z=q.minValue)!==null&&z!==void 0?z:Et,(Q=q.maxValue)!==null&&Q!==void 0?Q:Pt,K.count+1);f=e.min,H=e.max,E=Math.max(1,e.ticks.length-1)}const Ft=H-f||1,D=(0,alpine_card_1.alpineCard)({theme:u,W:et,H:b,title:t.title,subtitle:t.subtitle}),M=D.contentRect,ot=Math.max(10,Math.round(b*.019)),y=Math.max(10,Math.round(b*.02)),Y=K.show,P=Y?Math.max(Math.round(M.w*.07),ot*3):Math.round(M.w*.01),W=U?Math.round(y*2):0,I=Math.max(2,Math.round(Math.min(M.w,M.h)*.009)),mt=Math.max(3,Math.round(I*1.5)),O=mt+Math.max(1,Math.round(I*.6)),pt=Math.max(Math.round(b*.03),(R.show?O:I)+3),i=Math.max(1,M.w-P),St=t.showTicks!==!1,v=Math.max(1,M.h-pt-W);if(i<24||v<24)return Promise.resolve((0,template_utils_1.makeErrorMosaic)("plot area too small",{title:`${this.id}`,width:et,height:b}));const it=R.show?O+1:I,j=Math.min((R.show?O:I)+2,i*.45),rt=p(e=>k===1?i/2:j+e/(k-1)*(i-2*j),"xAt"),J=p(e=>it+(1-Math.max(0,Math.min(1,(e-f)/Ft)))*(v-2*it),"yAt"),Z=V.map((e,h)=>({x:rt(h),y:J(e)})),G=J(f),{poly:Nt}=(0,geometry_1.curvePolyline)(Z,Ct),st=Nt.map(e=>({x:e.x,y:Math.max(it,Math.min(G,e.y))})),Mt=st.length>=2,qt=Math.max(.1,((tt=a.target.durationMs)!==null&&tt!==void 0?tt:2e3)/1e3),It=Math.max(.1,Math.min(1,nt.introFrac)*qt),$t=!nt.reduceMotion,Bt={x:0,y:0,width:i,height:v},$=p((e,h,d)=>(0,template_utils_1.makeColorTile)(e,{mask:{kind:"inline-mask",localPath:h,bounds:Bt},...d?{overlay:d}:{}}),"plotMask"),gt=Math.max(1,Math.round(b*.0016)),lt=Math.max(1,Math.round(b*.0022)),Vt=Math.max(0,Math.min(1,ut.opacity)),w=[];if(K.show&&E>=1){const e=Array.from({length:E+1},(h,d)=>J(f+d/E*(H-f)));w.push((0,alpine_card_1.paint)($(u.grid,e.map(h=>rectLocal(0,h-gt/2,i,gt)).join(" "),u.gridAlpha<1?{alpha:`${u.gridAlpha}`}:void 0)))}if(w.push((0,alpine_card_1.paint)($(u.axis,rectLocal(0,G-lt/2,i,lt),u.axisAlpha<1?{alpha:`${u.axisAlpha}`}:void 0))),ut.show&&Mt&&w.push((0,alpine_card_1.paint)((0,template_utils_1.bindProps)($(at,(0,geometry_1.areaPolygonPath)(st,G),{alpha:`${Vt}`}),[{propKey:"lineColor"},{propKey:"area.opacity"}]))),Mt&&w.push((0,alpine_card_1.paint)((0,template_utils_1.bindProp)($(at,(0,geometry_1.polylineStrokePath)(st,I)),"lineColor"))),R.show&&Z.length>0&&(w.push((0,alpine_card_1.paint)($(u.card,Z.map(e=>circlePolyLocal(e.x,e.y,O)).join(" ")))),w.push((0,alpine_card_1.paint)((0,template_utils_1.bindProp)($(at,Z.map(e=>circlePolyLocal(e.x,e.y,mt)).join(" ")),"lineColor")))),$t){const e=(0,template_utils_1.easingExpr)(nt.ease,`min(1,max(0,t/${It}))`);w.push((0,alpine_card_1.paint)((0,template_utils_1.makeColorTile)(u.card,{overlay:{xExpr:`(w)*(${e})`}})))}const X=[];if(U){const e=k>1?(i-2*j)/(k-1):i,d=N.reduce((c,L)=>L?Math.max(c,L.length):c,0)*y*.72+y,A=Math.max(1,Math.ceil((d+y*.5)/Math.max(1,e)));for(let c=0;c<k;c++)c%A===0&&N[c]&&X.push(c)}const g=120,T=[],xt=[];if(St&&X.length>=2){const e=Math.max(6,Math.round(b*.012)),h=Math.max(0,Math.min(g-2,Math.round((G+lt/2)/v*g))),d=Math.max(2,Math.round(e/v*g)),A=i/g,c=Math.max(0,Math.min(.45,(1-3/Math.max(3,A))/2));for(const L of X){const s=Math.max(0,Math.min(g-1,Math.round(rt(L)/i*g-.5)));T.push(s+.5);const _=(0,template_utils_1.makeColorTile)(u.axis,{overlay:{alpha:`${u.axisAlpha}`},...c>0?{placement:{inset:{x:c}}}:{}});_.editor={label:"x-tick"};const C=(0,alpine_card_1.colSplit)([...s>0?[{weight:s,node:alpine_card_1.EMPTY}]:[],{weight:1,node:(0,alpine_card_1.paint)(_)},...g-1-s>0?[{weight:g-1-s,node:alpine_card_1.EMPTY}]:[]]);xt.push((0,alpine_card_1.rowSplit)([...h>0?[{weight:h,node:alpine_card_1.EMPTY}]:[],{weight:d,node:C},...g-h-d>0?[{weight:g-h-d,node:alpine_card_1.EMPTY}]:[]]))}}for(const e of xt)w.push(e);const bt=(0,alpine_card_1.overlay)(w),ct=Math.round(ot*1.8),Ut=Y?(0,alpine_card_1.overlay)(Array.from({length:E+1},(e,h)=>{const d=f+h/E*(H-f),A=J(d),c=Math.max(0,Math.min(v-ct,Math.round(A-ct/2)));return(0,alpine_card_1.insetNode)((0,alpine_card_1.paint)((0,alpine_card_1.tag)((0,alpine_card_1.textCell)(formatCompact(d),ot,u.muted,"right"),"y-tick-label")),c,Math.round(P*.16),v-c-ct,0,P,v)})):alpine_card_1.EMPTY;let ft=alpine_card_1.EMPTY;if(U){const e=k>1?(i-2*j)/(k-1):i,d=N.reduce((s,_)=>_?Math.max(s,_.length):s,0)*y*.72+y,A=Math.max(1,Math.ceil((d+y*.5)/Math.max(1,e))),c=Math.max(y*2,Math.round(e*A)),L=[];for(let s=0;s<k;s++){if(s%A!==0||!N[s])continue;const _=rt(s),C=c,_t=_<C/2,kt=_>i-C/2,At=_t?0:kt?i-C:Math.max(0,Math.min(i-C,Math.round(_-C/2))),Yt=_t?"left":kt?"right":"center",Lt=(0,alpine_card_1.textCell)(N[s],y,u.label,Yt);Lt.editor={label:"x-label"},L.push((0,alpine_card_1.insetNode)((0,alpine_card_1.paint)((0,template_utils_1.bindProps)(Lt,[{propKey:"labels",index:s},{propKey:"values",index:s}])),0,i-At-C,0,At,i,W))}ft=L.length?(0,alpine_card_1.overlay)(L):alpine_card_1.EMPTY}const ht=p(e=>Math.max(1,Math.round(e/M.h*100)),"wH"),Ht=Y?(0,alpine_card_1.colSplit)([{weight:Math.max(1,Math.round(P/M.w*100)),node:Ut},{weight:Math.max(1,100-Math.round(P/M.w*100)),node:bt}]):bt,Kt=U?(0,alpine_card_1.colSplit)([{weight:Math.max(1,Math.round(P/M.w*100)),node:alpine_card_1.EMPTY},{weight:Math.max(1,100-Math.round(P/M.w*100)),node:ft}]):alpine_card_1.EMPTY,yt=[{weight:ht(pt),node:alpine_card_1.EMPTY},{weight:ht(v),node:Ht}];W>0&&yt.push({weight:ht(W),node:Kt});const Rt=(0,alpine_card_1.rowSplit)(yt),dt=D.compose(Rt),vt=dt.sources;(0,canvas_handles_1.addHandlesByLabel)(vt,{"y-tick-label":[{propKey:"grid.count"},{propKey:"domain.minValue"},{propKey:"domain.maxValue"}]}),(0,alpine_conventions_1.bindHeaderAddHandles)(vt,t,["x-label","y-tick-label"]);const Dt={kind:"mosaic_document",version:1,assets:{},m0:dt.m0,sources:(0,alpine_conventions_1.bindCardSurface)(dt.sources),backgroundColor:D.backgroundColor,fps:a.target.fps,durationMs:a.target.durationMs},wt=T.length>=2?T.map(e=>(e-T[0])/Math.max(1e-6,T[T.length-1]-T[0])):[];return Promise.resolve((0,template_utils_1.withLayoutContract)(Dt,a,{templateId:"@m0saic/alpine/line-chart/v3",relations:[],constraints:[...wt.length?[{label:"x-tick",xCentersFrac:wt,centerToleranceFrac:.06}]:[],...D.constraints,...U&&X.length>0?[{label:"x-label",textFits:{}}]:[],...Y?[{label:"y-tick-label",textFits:{charWidthEm:.62}}]:[]],debug:t.debugLayout===!0}))},async renderCover(t,a){const n=(0,onboarding_cover_1.brandedCoverHeroBox)(a,"band"),r={...a,target:{...a.target,width:n.width,height:n.height},output:{...a.output,width:n.width,height:n.height}},l=await exports.AlpineLineChartV3.render({...exports.AlpineLineChartV3.defaultProps,anim:{...DEFAULT_ANIM,reduceMotion:!0}},r);return(0,onboarding_cover_1.buildBrandedCover)({ctx:a,variant:"band",copy:{productName:"Line Chart",title:"A line chart."},hero:p(o=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(l),o.borderStrong),"hero"),heroAssets:l.assets,children:l.children})}},(0,template_utils_1.registerTemplate)(exports.AlpineLineChartV3);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var t=Object.defineProperty;var e=(r,s)=>t(r,"name",{value:s,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineProgressCardV2=void 0;var progress_card_1=require("./progress-card");Object.defineProperty(exports,"AlpineProgressCardV2",{enumerable:!0,get:e(function(){return progress_card_1.AlpineProgressCardV2},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var ye=Object.defineProperty;var n=(t,o)=>ye(t,"name",{value:o,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineProgressCardV2=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),alpine_card_1=require("../../_shared/alpine-card"),alpine_theme_1=require("../../_shared/alpine-theme"),alpine_anim_1=require("../../_shared/alpine-anim"),alpine_conventions_1=require("../../_shared/alpine-conventions"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),DEFAULT_PRESET="light",DEFAULT_RADIUS=.5,DEFAULT_ANIM={introFrac:.7,countUp:!0,easing:"easeOut",reduceMotion:!1},MAX_ITEMS=8;function rightText(t,o,s){return{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:t||" "},style:{fontSize:o,fontColor:s},placement:{fit:"contain",hAlign:"right",vAlign:"middle"}}]}}n(rightText,"rightText");function rightExprText(t,o,s){return{type:"text",renderMode:{kind:"video"},visual:{backgroundColor:"black@0"},layers:[{content:{kind:"expr",expr:t,eval:"frame"},style:{fontSize:o,fontColor:s},placement:{hAlign:"right",vAlign:"middle"}}]}}n(rightExprText,"rightExprText");function leftText(t,o,s){return{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:t||" "},style:{fontSize:o,fontColor:s},placement:{fit:"contain",hAlign:"left",vAlign:"middle"}}]}}n(leftText,"leftText");function clamp01(t){return Math.max(0,Math.min(1,t))}n(clamp01,"clamp01");function deriveValueLabel(t,o){return t.valueLabel!=null&&t.valueLabel!==""?t.valueLabel:`${Math.round(o*100)}%`}n(deriveValueLabel,"deriveValueLabel");const propsSchema=(0,template_utils_1.definePropsSchema)({items:{type:"array",required:!0,meta:{control:{flavor:"objectRows",columns:[{label:"Label",key:"label",kind:"text",placeholder:"Goal"},{label:"Value",key:"value",kind:"number"},{label:"Max",key:"max",kind:"number"},{label:"Display",key:"valueLabel",kind:"text",placeholder:"auto (%)"},{label:"Color",key:"color",kind:"color"}],palette:alpine_theme_1.ALPINE_PALETTE}}},title:{type:"string",required:!1},subtitle:{type:"string",required:!1},preset:{type:"string",required:!1,meta:{constraints:{oneOf:["light","dark"]}}},showValue:{type:"boolean",required:!1},barColor:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0,defaultColor:"#2563EB"}}},trackColor:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0,defaultColor:"#E2E8F0"}}},bars:{type:"group",required:!1,fields:{cornerRadius:(0,alpine_conventions_1.bFrac)()}},anim:{type:"group",required:!1,fields:{...alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE,countUp:(0,alpine_conventions_1.bBool)()}},theme:{type:"group",required:!1,fields:{slug:(0,alpine_conventions_1.bStr)(),preset:(0,alpine_conventions_1.bStr)(),namespace:(0,alpine_conventions_1.bStr)(),forceFetch:(0,alpine_conventions_1.bBool)()}},debugLayout:{type:"boolean",required:!1}});exports.AlpineProgressCardV2={id:(0,types_1.asTemplateId)("@m0saic/alpine/progress-card/v2"),version:2,capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},width:1280,height:800,fps:30,durationMs:2e3,posterTimeMs:1900},propsSchema,bindings:{unbound:{...alpine_conventions_1.ALPINE_THEME_UNBOUND,...alpine_conventions_1.ALPINE_ANIM_UNBOUND}},defaultProps:{debugLayout:!1,theme:{forceFetch:!1},items:[{label:"Q4 Sales",value:68},{label:"New Users",value:84},{label:"Retention",value:92},{label:"NPS Target",value:45}],title:"QUARTERLY GOALS",subtitle:"Progress to target",preset:DEFAULT_PRESET,bars:{cornerRadius:DEFAULT_RADIUS},showValue:!0,anim:DEFAULT_ANIM},async render(t,o){var s,b,d,f,C,A,T;const L=Math.max(1,Math.round(o.target.width)),u=Math.max(1,Math.round(o.target.height)),k=((s=t.items)!==null&&s!==void 0?s:[]).map((e,r)=>({it:e,srcIndex:r})).filter(({it:e})=>e&&typeof e.label=="string").slice(0,MAX_ITEMS),i=k.map(e=>e.it);if(i.length===0)return Promise.resolve((0,template_utils_1.makeIncompleteMosaic)("Add a row \u2014 each one needs a label and a value.",{title:"Progress Card",width:L,height:u}));const v=await(0,alpine_theme_1.resolveAlpineTheme)((b=t.preset)!==null&&b!==void 0?b:DEFAULT_PRESET,o,t.theme),p={...DEFAULT_ANIM,...(d=t.anim)!==null&&d!==void 0?d:{}},H=Math.max(0,Math.min(1,(C=(f=t.bars)===null||f===void 0?void 0:f.cornerRadius)!==null&&C!==void 0?C:DEFAULT_RADIUS)),M=(A=t.showValue)!==null&&A!==void 0?A:!0,le=(0,alpine_card_1.resolveColor)(t.trackColor,v.grid),g=!p.reduceMotion,h=i.length,B=i.map(e=>e.max&&e.max>0?clamp01(e.value/e.max):clamp01(e.value/100)),se=i.map((e,r)=>{var a;return(0,alpine_card_1.resolveColor)((a=e.color)!==null&&a!==void 0?a:t.barColor,alpine_theme_1.ALPINE_PALETTE[r%alpine_theme_1.ALPINE_PALETTE.length])}),x=i.map((e,r)=>deriveValueLabel(e,B[r])),Y=n((e,r,a,l)=>(0,template_utils_1.bindPropPath)(e,"items",[k[r].srcIndex,a],l),"bindItem"),ie=n(e=>e.valueLabel!=null&&e.valueLabel!==""?{field:"valueLabel",kind:"string"}:e.max&&e.max>0?null:{field:"value",kind:"number"},"valueLeaf"),K=n((e,r)=>{const a=ie(i[r]);if(a)return Y(e,r,a.field,a.kind);const l=k[r].srcIndex;return(0,template_utils_1.bindProps)(e,[{propKey:"items",path:[l,"value"],kind:"number"},{propKey:"items",path:[l,"max"],kind:"number"}])},"bindValueText"),ce=Math.max(.1,((T=o.target.durationMs)!==null&&T!==void 0?T:2e3)/1e3),O=Math.max(.1,Math.min(1,p.introFrac)*ce),S=Math.min(.15,O*.08),G=.45,U=Math.max(.05,(O-S)/(1+G*Math.max(0,h-1))),$=G*U,w=(0,alpine_card_1.alpineCard)({theme:v,W:L,H:u,title:t.title,subtitle:t.subtitle}),E=w.contentRect,I=E.h;if(E.w<60||I<40)return Promise.resolve((0,template_utils_1.makeErrorMosaic)("content area too small",{title:`${this.id}`,width:L,height:u}));const de=Math.max(1,...i.map(e=>(0,template_utils_1.textEmUnits)(e.label))),ue=Math.max(1,...x.map(e=>(0,template_utils_1.textEmUnits)(e))),j=E.w*(M?.7:1)*.88,Q=E.w*.3*.88,N=Math.max(11,Math.min(Math.round(u*.026),Math.floor(j/(de*.62)))),q=Math.max(11,Math.min(Math.round(u*.026),Math.floor(Q/(ue*.62)))),W=n((e,r,a)=>{const l=Math.max(2,r/(a*.62));if((0,template_utils_1.textEmUnits)(e)<=l)return e;let c="",m=1;for(const ae of e){const ne=(0,template_utils_1.textEmUnits)(ae);if(m+ne>l)break;c+=ae,m+=ne}return`${c}\u2026`},"fitTo"),he=n(e=>W(e,j,N),"fitLabel"),z=n(e=>W(e,Q,q),"fitValue"),y=n(e=>Math.max(8,Math.round(e/8)*8),"snap8"),X=y(u*.03),J=y(N*1.5),Z=y(u*.012),_=J+Z+X,ee=y(Math.max(_*.4,(I-h*_)/Math.max(1,h+1))),te=h*_+(h-1)*ee,F=Math.max(0,y((I-te)/2)),R=100,me=(0,template_utils_1.easingExpr)(p.easing,(0,template_utils_1.u01)(U)),pe=n((e,r)=>{const a=se[e],l={rounding:{cornerStyle:"rounded",borderRadius:H}},c=g?(0,template_utils_1.makeColorTile)(a,{effects:l,overlay:{startAtSec:r,xExpr:`-(w*(1-(${me})))`}}):(0,template_utils_1.makeColorTile)(a,{effects:l}),m=k[e].srcIndex;return(0,alpine_card_1.paint)((0,template_utils_1.bindProps)(c,[{propKey:"items",path:[m,"value"],kind:"number"},i[e].color!=null?{propKey:"items",path:[m,"color"],kind:"color"}:{propKey:"barColor"}]))},"fillTile"),ge=n(e=>{const r=S+e*$,a=Math.max(0,Math.min(R,Math.round(B[e]*R))),l=R-a,c=(0,alpine_card_1.paint)((0,template_utils_1.bindProps)((0,alpine_card_1.tag)((0,template_utils_1.makeColorTile)(le,{effects:{rounding:{cornerStyle:"rounded",borderRadius:H}}}),"track"),[{propKey:"trackColor"},{propKey:"bars.cornerRadius"}])),m=a>0?(0,alpine_card_1.colSplit)([{weight:a,node:pe(e,r)},...l>0?[{weight:l,node:alpine_card_1.EMPTY}]:[]]):alpine_card_1.EMPTY;return(0,alpine_card_1.overlay)([c,m])},"barRow"),be=n(e=>{const r=S+e*$,a=(0,alpine_card_1.paint)(Y((0,alpine_anim_1.revealGate)((0,alpine_card_1.tag)(leftText(he(i[e].label),N,v.label),"row-label"),r,g),e,"label","string")),l=M?p.countUp&&g&&/\d/.test(x[e])?(0,alpine_card_1.paint)(K((0,alpine_card_1.tag)(rightExprText((0,template_utils_1.animateNumbersInText)(z(x[e]),{startSec:r,durationSec:U,ease:p.easing}),q,v.title),"row-value"),e)):(0,alpine_card_1.paint)(K((0,alpine_anim_1.revealGate)((0,alpine_card_1.tag)(rightText(z(x[e]),q,v.title),"row-value"),r,g),e)):alpine_card_1.EMPTY,c=M?(0,alpine_card_1.colSplit)([{weight:7,node:a},{weight:3,node:l}]):a;return(0,alpine_card_1.rowSplit)([{weight:J,node:c},{weight:Z,node:alpine_card_1.EMPTY},{weight:X,node:ge(e)}])},"rowBlock"),fe=Math.max(2,Math.round(2*_/Math.max(1,ee))),ve=n(e=>(0,alpine_card_1.rowSplit)([{weight:1,node:alpine_card_1.EMPTY},{weight:fe,node:be(e)},{weight:1,node:alpine_card_1.EMPTY}]),"rowBand"),oe=(0,alpine_card_1.rowSplit)(Array.from({length:h},(e,r)=>({weight:1,node:ve(r)}))),P=F>0?(0,alpine_card_1.rowSplit)([{weight:F,node:alpine_card_1.EMPTY},{weight:te,node:oe},{weight:F,node:alpine_card_1.EMPTY}]):oe,V={};let re=P;g&&(V.plot={kind:"mosaic_document",version:1,assets:{},m0:P.m0,sources:P.sources,fps:o.target.fps,durationMs:o.target.durationMs},re={m0:"F",sources:[{type:"mosaic",ref:"plot"}]});const D=w.compose(re);(0,alpine_conventions_1.bindHeaderAddHandles)([...D.sources,...P.sources],t,"row-label");const Me={kind:"mosaic_document",version:1,assets:{},m0:D.m0,sources:(0,alpine_conventions_1.bindCardSurface)(D.sources),...Object.keys(V).length?{children:V}:{},backgroundColor:w.backgroundColor,fps:o.target.fps,durationMs:o.target.durationMs},xe=p.countUp&&g&&M&&x.some(e=>/\d/.test(e));return Promise.resolve((0,template_utils_1.withLayoutContract)(Me,o,{templateId:"@m0saic/alpine/progress-card/v2",relations:h>=2?[{label:"track",equal:"size",tolerance:.02,tolerancePx:1}]:[],constraints:xe?[]:[...w.constraints,{label:"row-label",textFits:{charWidthEm:.62}},...M?[{label:"row-value",textFits:{charWidthEm:.62}}]:[]],debug:t.debugLayout===!0}))},async renderCover(t,o){const s=(0,onboarding_cover_1.brandedCoverHeroBox)(o,"band"),b={...o,target:{...o.target,width:s.width,height:s.height},output:{...o.output,width:s.width,height:s.height}},d=await exports.AlpineProgressCardV2.render({...exports.AlpineProgressCardV2.defaultProps,anim:{...DEFAULT_ANIM,reduceMotion:!0}},b);return(0,onboarding_cover_1.buildBrandedCover)({ctx:o,variant:"band",copy:{productName:"Progress Card",title:"A progress card."},hero:n(f=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(d),f.borderStrong),"hero"),heroAssets:d.assets,children:d.children})}},(0,template_utils_1.registerTemplate)(exports.AlpineProgressCardV2);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var a=Object.defineProperty;var e=(t,r)=>a(t,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineStatCardV2=void 0;var stat_card_1=require("./stat-card");Object.defineProperty(exports,"AlpineStatCardV2",{enumerable:!0,get:e(function(){return stat_card_1.AlpineStatCardV2},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var je=Object.defineProperty;var i=(e,t)=>je(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineStatCardV2=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),alpine_card_1=require("../../_shared/alpine-card"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),alpine_glyphs_1=require("../../_shared/alpine-glyphs"),alpine_theme_1=require("../../_shared/alpine-theme"),alpine_anim_1=require("../../_shared/alpine-anim"),alpine_conventions_1=require("../../_shared/alpine-conventions"),GLYPH_COLOR="#0d1117",STAT_CARD_ID="@m0saic/alpine/stat-card/v2",BANDS={padY:9,header:22,gap1:4,value:42,gap2:4,delta:18,padYb:9},LABEL_FRAC=.11,VALUE_FRAC=.3,DELTA_FRAC=.115,SUB_FRAC=.085,PAD_FRAC=.085;function txt(e,t,n,s="left"){return{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:e||" "},style:{fontSize:t,fontColor:n},placement:{hAlign:s,vAlign:"middle"}}]}}i(txt,"txt");function exprTxt(e,t,n){return{type:"text",renderMode:{kind:"video"},visual:{backgroundColor:"black@0"},layers:[{content:{kind:"expr",expr:e,eval:"frame"},style:{fontSize:t,fontColor:n},placement:{hAlign:"left",vAlign:"middle"}}]}}i(exprTxt,"exprTxt");function triangle(e,t,n,s){const u=Math.min(n,s)*.72,l=n/2,C=s/2,p=u/2,x=u*.866,_=C-x/2,y=C+x/2,o=i(T=>Math.round(T*10)/10,"n"),F=e==="up"?`M ${o(l)} ${o(_)} L ${o(l+p)} ${o(y)} L ${o(l-p)} ${o(y)} Z`:`M ${o(l-p)} ${o(_)} L ${o(l+p)} ${o(_)} L ${o(l)} ${o(y)} Z`;return(0,template_utils_1.makeColorTile)(t,{mask:{kind:"inline-mask",localPath:F,bounds:{x:0,y:0,width:n,height:s}}})}i(triangle,"triangle");const propsSchema=(0,template_utils_1.definePropsSchema)({label:{type:"string",required:!0},value:{type:"string",required:!0},delta:{type:"string",required:!1},sublabel:{type:"string",required:!1},direction:{type:"string",required:!1,meta:{constraints:{oneOf:["up","down","flat"]}}},icon:{type:"string",required:!1,meta:{constraints:{oneOf:alpine_glyphs_1.ALPINE_GLYPH_NAMES},ui:{consumer:"human"},control:{syncsTo:[{prop:"iconPath",map:{kind:"lookup",table:alpine_glyphs_1.ALPINE_GLYPHS}}]}}},renderMode:{type:"string",required:!1,meta:{constraints:{oneOf:["premium","light"]}}},preset:{type:"string",required:!1,meta:{constraints:{oneOf:["light","dark"]}}},accent:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0,defaultColor:"#2563EB"}}},backgroundColor:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0,defaultColor:"#FFFFFF"}}},anim:{type:"group",required:!1,fields:{...alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE,countUp:(0,alpine_conventions_1.bBool)()}},theme:{type:"group",required:!1,fields:{slug:(0,alpine_conventions_1.bStr)(),preset:(0,alpine_conventions_1.bStr)(),namespace:(0,alpine_conventions_1.bStr)(),forceFetch:(0,alpine_conventions_1.bBool)()}},iconPath:{type:"string",required:!1,meta:{ui:{consumer:"agent"}}},debugGeometry:{type:"boolean",required:!1}});exports.AlpineStatCardV2={id:(0,types_1.asTemplateId)(STAT_CARD_ID),version:2,capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},width:1280,height:800,fps:30,durationMs:3e3,posterTimeMs:2850},propsSchema,bindings:{unbound:{...alpine_conventions_1.ALPINE_THEME_UNBOUND,...alpine_conventions_1.ALPINE_ANIM_UNBOUND,iconPath:"agent value"}},defaultProps:{anim:{reduceMotion:!1,introFrac:.7,easing:"easeOut",countUp:!0},debugGeometry:!1,theme:{forceFetch:!1},label:"Commits",value:"1,243",delta:"+12.4%",direction:"up",sublabel:"vs last week",icon:"commits",renderMode:"premium",preset:"light"},async render(e,t){var n,s,u,l,C,p,x,_,y,o,F,T,H,U,$,R;const m=Math.max(1,Math.round(t.target.width)),d=Math.max(1,Math.round(t.target.height)),h=await(0,alpine_theme_1.resolveAlpineTheme)((n=e.preset)!==null&&n!==void 0?n:"light",t,e.theme),ke=(s=e.accent)!==null&&s!==void 0?s:h.primary,Ce=(u=e.backgroundColor)!==null&&u!==void 0?u:h.card,k=(l=e.anim)!==null&&l!==void 0?l:{},Q=!((C=k.reduceMotion)!==null&&C!==void 0?C:!1),xe=((p=t.target.durationMs)!==null&&p!==void 0?p:3e3)/1e3,A=k.introMs!=null?k.introMs/1e3:xe*((x=k.introFrac)!==null&&x!==void 0?x:.7),Y=((_=k.fade)!==null&&_!==void 0?_:!0)&&Q,Ae=((y=k.countUp)!==null&&y!==void 0?y:!0)&&Q&&/\d/.test(e.value),ee=((o=e.renderMode)!==null&&o!==void 0?o:"premium")==="light",te=[0,A*.3],ae=[A*.4,A*.4],Pe=[A*.6,A*.35],c=Math.round(Math.min(m,d)*PAD_FRAC),q=Math.max(1,m-2*c),ne=Math.max(1,d-2*c),oe=Object.values(BANDS).reduce((a,r)=>a+r,0),G=i(a=>Math.round(a/oe*ne),"px"),L=G(BANDS.header),E=G(BANDS.delta),g=Math.min(L,Math.round(Math.min(m,d)*.18)),re=Math.round(g*.42),W=Math.max(1,q-g-re),w=(F=e.direction)!==null&&F!==void 0?F:"flat",ie=!!(e.delta&&e.delta.trim()!==""),le=ie&&(w==="up"||w==="down"),se=Math.round(d*DELTA_FRAC*.85),de=i(a=>{const r=Math.max(2,Math.round(a*.4)),v=le?a+r:0,f=Math.max(2,q-v-r),S=Math.max(1,Math.round(f*.5));return{g:r,arrowSpace:v,deltaW:S,subW:Math.max(1,f-S)}},"cellsFor");let{g:ce,arrowSpace:V,deltaW:P,subW:I}=de(se);const N=i((a,r,v,f,S=.7)=>Math.max(f,Math.min(Math.round(d*a),Math.floor(v/Math.max(1,(0,template_utils_1.textEmUnits)(r||" ")*S)))),"capFont"),B=i((a,r,v,f)=>(0,alpine_card_1.fitEmUnits)(a,Math.max(2,r/(v*f))),"fitTo"),ue=e.label.toUpperCase(),he=N(LABEL_FRAC,ue,W,10,.7),Se=B(ue,W,he,.7),j=N(VALUE_FRAC,e.value,q,16,.66),pe=B(e.value,q,j,.66),Fe=N(DELTA_FRAC,(T=e.delta)!==null&&T!==void 0?T:"",P,10,.88),K=Math.min(se,Math.round(Fe*1.25));({g:ce,arrowSpace:V,deltaW:P,subW:I}=de(K));const me=N(DELTA_FRAC,(H=e.delta)!==null&&H!==void 0?H:"",P,10,.88),Te=ie?B(e.delta,P,me,.88):" ",ge=N(SUB_FRAC,(U=e.sublabel)!==null&&U!==void 0?U:"",I,9,.62),qe=B(($=e.sublabel)!==null&&$!==void 0?$:" ",I,ge,.62),Z=i(a=>c+Math.round(a/oe*ne),"before"),z=Z(BANDS.padY),we=Z(BANDS.padY+BANDS.header+BANDS.gap1),X=Z(BANDS.padY+BANDS.header+BANDS.gap1+BANDS.value+BANDS.gap2),Ne=G(BANDS.value),Le=Math.round(d*.06),O=i(a=>ee?a:(0,alpine_anim_1.revealFadeNode)(a,te[0],te[1],Y),"revealHeader"),J=i((a,r)=>ee?(0,alpine_anim_1.revealSlideNode)(a,r[0],r[1],Le,Y):(0,alpine_anim_1.revealFadeNode)(a,r[0],r[1],Y),"revealDelta"),b={surface:0,chip:1,ink:2},be=[],M=i((a,r,v,f,S,Ge)=>{const _e=Math.max(0,Math.min(m-1,Math.round(r))),ye=Math.max(0,Math.min(d-1,Math.round(v))),We=Math.max(1,Math.min(Math.round(f),m-_e)),Ve=Math.max(1,Math.min(Math.round(S),d-ye));be.push({rect:{x:_e,y:ye,w:We,h:Ve,importance:Ge},source:a.sources[0]})},"addP"),Ee=(0,alpine_card_1.paint)((0,template_utils_1.bindProp)((0,template_utils_1.makeColorTile)(ke,{effects:{rounding:{cornerStyle:"rounded",borderRadius:.28}}}),"accent")),D=Math.round(g*.56),Ie=c+Math.round((g-D)/2),Be=z+Math.round((L-D)/2),Me=(0,alpine_glyphs_1.resolveAlpineGlyph)(e.icon,e.iconPath,STAT_CARD_ID),ve=Me?(0,alpine_card_1.paint)((0,template_utils_1.makeColorTile)(GLYPH_COLOR,{mask:{kind:"inline-mask",localPath:Me,bounds:{x:0,y:0,width:24,height:24}}})):null,Oe=Ae?(0,alpine_card_1.paint)((0,template_utils_1.bindProp)((0,alpine_card_1.tag)(exprTxt((0,template_utils_1.animateNumbersInText)(pe,{durationSec:A,ease:(R=k.easing)!==null&&R!==void 0?R:"easeOut"}),j,h.title),"stat-value"),"value")):(0,alpine_card_1.paint)((0,template_utils_1.bindProp)((0,alpine_card_1.tag)(txt(pe,j,h.title,"left"),"stat-value"),"value")),fe=w==="up"?h.positive:w==="down"?h.negative:h.muted,De=(0,alpine_card_1.paint)((0,template_utils_1.bindProps)((0,template_utils_1.makeColorTile)(Ce,{effects:{rounding:{cornerStyle:"rounded",borderRadius:.08}}}),[{propKey:"backgroundColor"},{propKey:"preset"}]));M(De,0,0,m,d,b.surface);const He=z+Math.round((L-g)/2);M(O(Ee),c,He,g,g,b.chip),ve&&M(O(ve),Ie,Be,D,D,b.ink),M(O((0,alpine_card_1.paint)((0,template_utils_1.bindProp)((0,alpine_card_1.tag)(txt(Se,he,h.label,"left"),"stat-label"),"label"))),c+g+re,z,W,L,b.ink),M(O(Oe),c,we,q,Ne,b.ink),le&&M(J((0,alpine_card_1.paint)(triangle(w,fe,K,E)),ae),c,X,K,E,b.ink),M(J((0,alpine_card_1.paint)((0,template_utils_1.bindProp)((0,alpine_card_1.tag)(txt(Te,me,fe,"left"),"stat-delta"),"delta")),ae),c+V,X,P,E,b.ink),M(J((0,alpine_card_1.paint)((0,template_utils_1.bindProp)((0,alpine_card_1.tag)(txt(qe,ge,h.muted,"left"),"stat-sublabel"),"sublabel")),Pe),c+V+P+ce,X,I,E,b.ink);const{m0:Ue,sources:$e,expectations:Re}=(0,template_utils_1.placeInsetPieces)({rootW:m,rootH:d,pieces:be}),Ye={kind:"mosaic_document",version:1,assets:{},m0:String(Ue),sources:$e,backgroundColor:"black@0",fps:t.target.fps,durationMs:t.target.durationMs,size:{width:m,height:d}};return Promise.resolve((0,template_utils_1.withGeometryContract)(Ye,t,{templateId:STAT_CARD_ID,expectations:Re,debug:e.debugGeometry===!0}))},async renderCover(e,t){const n=(0,onboarding_cover_1.brandedCoverHeroBox)(t,"band"),s={...t,target:{...t.target,width:n.width,height:n.height},output:{...t.output,width:n.width,height:n.height}},u=await exports.AlpineStatCardV2.render({...exports.AlpineStatCardV2.defaultProps,anim:{reduceMotion:!0}},s);return(0,onboarding_cover_1.buildBrandedCover)({ctx:t,variant:"band",copy:{productName:"Stat Card",title:"A KPI tile."},hero:i(l=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(u),l.borderStrong),"hero"),heroAssets:u.assets})}},(0,template_utils_1.registerTemplate)(exports.AlpineStatCardV2);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var t=Object.defineProperty;var e=(i,r)=>t(i,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineTimelineV3=void 0;var timeline_1=require("./timeline");Object.defineProperty(exports,"AlpineTimelineV3",{enumerable:!0,get:e(function(){return timeline_1.AlpineTimelineV3},"get")});
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";var lt=Object.defineProperty;var c=(n,o)=>lt(n,"name",{value:o,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineTimelineV3=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),alpine_card_1=require("../../_shared/alpine-card"),alpine_theme_1=require("../../_shared/alpine-theme"),alpine_anim_1=require("../../_shared/alpine-anim"),alpine_conventions_1=require("../../_shared/alpine-conventions"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),DEFAULT_PRESET="light",DEFAULT_RENDER_MODE="premium",DEFAULT_ANIM={renderMode:DEFAULT_RENDER_MODE,introFrac:.7,easing:"easeOut",reduceMotion:!1},MAX_EVENTS=7,DOT_CIRCLE_PATH="M1,12 A11,11 0 1,0 23,12 A11,11 0 1,0 1,12 Z";function cellText(n,o,f,p="left"){return{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:n||" "},style:{fontSize:o,fontColor:f},placement:{fit:"contain",hAlign:p,vAlign:"middle"}}]}}c(cellText,"cellText");function fadeIn(n,o,f,p){var m;if(!p)return n;const v=(m=n.overlay)!==null&&m!==void 0?m:{};return{...n,overlay:{...v,alpha:(0,template_utils_1.fadeInExpr)(o,f)}}}c(fadeIn,"fadeIn");function wrapToWidth(n,o,f,p){const m=c((b,w)=>{const d=Math.max(2,f/(b*.62)),s=n.trim().split(/\s+/).filter(Boolean),g=[];let M="";for(let y=0;y<s.length;y++){const _=s[y],k=M?`${M} ${_}`:_;if((0,template_utils_1.textEmUnits)(k)<=d){M=k;continue}if(!M){if(!w)return null;M=(0,alpine_card_1.fitEmUnits)(_,d);continue}if(g.push(M),g.length===p){if(!w)return null;const q=[_,...s.slice(y+1)].join(" ");return g[p-1]=(0,alpine_card_1.fitEmUnits)(`${g[p-1]} ${q}`,d),g}if(M=(0,template_utils_1.textEmUnits)(_)<=d?_:w?(0,alpine_card_1.fitEmUnits)(_,d):"",!M&&!w)return null}return M&&g.push(M),g.length<=p||w?g.slice(0,p):null},"attempt"),v=Math.max(9,Math.round(o*.85)),E=m(o,!1);if(E)return{text:E.join(`
|
|
2
|
+
`),font:o,lineCount:E.length};const A=m(v,!1);if(A)return{text:A.join(`
|
|
3
|
+
`),font:v,lineCount:A.length};const T=m(v,!0);return{text:T.join(`
|
|
4
|
+
`),font:v,lineCount:T.length}}c(wrapToWidth,"wrapToWidth");const propsSchema=(0,template_utils_1.definePropsSchema)({events:{type:"array",required:!0,meta:{control:{flavor:"objectRows",columns:[{label:"Date",key:"date",kind:"text",placeholder:"Jan 2024"},{label:"Title",key:"title",kind:"text",placeholder:"Milestone"},{label:"Description",key:"description",kind:"text",placeholder:"What happened"},{label:"Color",key:"color",kind:"color"}]}}},title:{type:"string",required:!1},subtitle:{type:"string",required:!1},orientation:{type:"string",required:!1,meta:{constraints:{oneOf:["auto","vertical","horizontal"]}}},preset:{type:"string",required:!1,meta:{constraints:{oneOf:["light","dark"]}}},showDescription:{type:"boolean",required:!1},color:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0,defaultColor:"#2563EB"}}},anim:{type:"group",required:!1,fields:{renderMode:(0,alpine_conventions_1.bEnum)(["premium","light"]),reduceMotion:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.reduceMotion,introFrac:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.introFrac,easing:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.easing}},theme:{type:"group",required:!1,fields:{slug:(0,alpine_conventions_1.bStr)(),preset:(0,alpine_conventions_1.bStr)(),namespace:(0,alpine_conventions_1.bStr)(),forceFetch:(0,alpine_conventions_1.bBool)()}},debugLayout:{type:"boolean",required:!1}});exports.AlpineTimelineV3={id:(0,types_1.asTemplateId)("@m0saic/alpine/timeline/v3"),version:3,capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},width:1280,height:800,fps:30,durationMs:2e3,posterTimeMs:1900},bindings:{unbound:{...alpine_conventions_1.ALPINE_THEME_UNBOUND,...alpine_conventions_1.ALPINE_ANIM_UNBOUND}},propsSchema,defaultProps:{debugLayout:!1,theme:{forceFetch:!1},events:[{date:"Jan 2024",title:"Kickoff",description:"First commit landed"},{date:"Apr 2024",title:"Beta launch",description:"500 early users"},{date:"Aug 2024",title:"Series A",description:"$12M raised"},{date:"Dec 2024",title:"10k customers",description:"Five figures crossed"}],title:"MILESTONES",subtitle:"Our journey so far",preset:DEFAULT_PRESET,orientation:"auto",showDescription:!0,anim:DEFAULT_ANIM},async render(n,o){var f,p,m,v,E,A;const T=Math.max(1,Math.round(o.target.width)),b=Math.max(1,Math.round(o.target.height)),w=((f=n.events)!==null&&f!==void 0?f:[]).map((t,e)=>({e:t,srcIndex:e})).filter(({e:t})=>t&&typeof t.title=="string"&&t.title.trim()).slice(0,MAX_EVENTS),d=w.map(t=>t.e);if(d.length===0)return(0,template_utils_1.makeIncompleteMosaic)("Add an event \u2014 each one needs a title.",{title:"Timeline",width:T,height:b});const s=d.length,g=await(0,alpine_theme_1.resolveAlpineTheme)((p=n.preset)!==null&&p!==void 0?p:DEFAULT_PRESET,o,n.theme),M={...DEFAULT_ANIM,...(m=n.anim)!==null&&m!==void 0?m:{}},y=!M.reduceMotion,_=((v=M.renderMode)!==null&&v!==void 0?v:DEFAULT_RENDER_MODE)==="light",k=(E=n.showDescription)!==null&&E!==void 0?E:!0,q=(0,alpine_card_1.resolveColor)(n.color,g.primary),X=c(t=>(0,alpine_card_1.resolveColor)(d[t].color,q),"dotColor"),F=(0,alpine_card_1.alpineCard)({theme:g,W:T,H:b,title:n.title,subtitle:n.subtitle}),h=F.contentRect,Z=Math.max(13,Math.round(b*.03)),Q=Math.max(10,Math.round(b*.021)),tt=Math.max(10,Math.round(b*.022)),et=Math.max(.1,((A=o.target.durationMs)!==null&&A!==void 0?A:2e3)/1e3),j=Math.max(.1,Math.min(1,M.introFrac)*et),V=Math.min(.12,j*.06),$=.6,L=Math.max(.05,(j-V)/(1+$*Math.max(0,s-1))),nt=$*L,S=c(t=>y?V+t*nt:0,"startAt"),ot=c((t,e)=>y?_?(0,alpine_anim_1.revealGate)(t,e):fadeIn(t,e,L,!0):t,"revealSrc"),P=c((t,e)=>y?{...t,sources:t.sources.map(r=>ot(r,e))}:t,"revealNode"),N=c((t,e)=>Math.max(0,Math.min(.49,(t-e)/(2*t))),"inFrac"),it=c(t=>{var e;const r=String((e=d[t].color)!==null&&e!==void 0?e:"").trim();return!!r&&r.toLowerCase()!=="none"},"hasOwnColor"),z=c((t,e,r,l)=>{const a=(0,alpine_card_1.tag)((0,template_utils_1.makeColorTile)(X(t),{mask:{kind:"inline-mask",localPath:DOT_CIRCLE_PATH,bounds:{x:0,y:0,width:24,height:24}},placement:{inset:{x:N(e,l),y:N(r,l)}}}),"dot");return it(t)?(0,template_utils_1.bindPropPath)(a,"events",[w[t].srcIndex,"color"],"color"):(0,template_utils_1.bindProps)(a,[{propKey:"color"},{propKey:"events",path:[w[t].srcIndex,"color"],kind:"color"}])},"dotTile"),K=c((t,e,r,l)=>(0,template_utils_1.makeColorTile)(g.grid,{effects:{rounding:{cornerStyle:"rounded",borderRadius:.5}},placement:{inset:{x:N(t,r),y:N(e,l)}}}),"spineTile"),rt=c((t,e)=>{const r=[];if(d[t].date&&d[t].date.trim()){const a=wrapToWidth(d[t].date,Q,e,1);r.push({text:a.text,font:a.font,color:g.muted,kind:"event-date",field:"date",lineCount:a.lineCount})}const l=wrapToWidth(d[t].title,Z,e,2);if(r.push({text:l.text,font:l.font,color:g.title,kind:"event-title",field:"title",lineCount:l.lineCount}),k&&d[t].description&&d[t].description.trim()){const a=wrapToWidth(d[t].description,tt,e,2);r.push({text:a.text,font:a.font,color:g.subtitle,kind:"event-desc",field:"description",lineCount:a.lineCount})}return r},"eventLines");let J=!1,G=!1;const B=c((t,e,r)=>{const l=rt(t,e);for(const i of l)i.kind==="event-date"&&(J=!0),i.kind==="event-desc"&&(G=!0);const a=w[t].srcIndex,D=new Set(l.map(i=>i.field)),I=["date",...k?["description"]:[]].filter(i=>!D.has(i)).map(i=>({propKey:"events",path:[a,i],kind:"string"})),C=l.map(i=>({weight:Math.max(2,Math.round(i.font*1.4*i.lineCount/8)),node:(0,alpine_card_1.paint)((0,alpine_conventions_1.withAddHandles)((0,template_utils_1.bindPropPath)((0,alpine_card_1.tag)(cellText(i.text,i.font,i.color,r),i.kind),"events",[a,i.field],"string"),i.field==="title"?I:[]))}));return P((0,alpine_card_1.rowSplit)(C),S(t)+L*.25)},"textStack"),at=n.orientation==="vertical"||n.orientation==="horizontal"?n.orientation:T/b>=1.25?"horizontal":"vertical";let H;if(at==="vertical"){const t=Math.round(h.w*.06),e=Math.round(h.w*.03),r=Math.max(1,h.w-t-e),l=h.h/s,a=Math.max(6,Math.round(Math.min(t,l)*.5)),D=(0,alpine_card_1.rowSplit)(Array.from({length:s},(x,u)=>({weight:1,node:P((0,alpine_card_1.paint)(z(u,t,l,a)),S(u))}))),I=Math.max(2,Math.round(a*.16)),C=h.h/s,i=c(x=>P((0,alpine_card_1.paint)(K(t,C,I,C)),S(x)),"seg"),U=s>1?(0,alpine_card_1.rowSplit)([{weight:1,node:alpine_card_1.EMPTY},...Array.from({length:s-1},(x,u)=>({weight:2,node:i(u+1)})),{weight:1,node:alpine_card_1.EMPTY}]):alpine_card_1.EMPTY,W=(0,alpine_card_1.overlay)([U,D]),O=Math.max(a*4,Math.round(r*.96)),Y=(0,alpine_card_1.rowSplit)(Array.from({length:s},(x,u)=>({weight:100,node:B(u,O,"left")})));H=(0,alpine_card_1.colSplit)([{weight:Math.round(t/h.w*100),node:W},{weight:Math.round(e/h.w*100),node:alpine_card_1.EMPTY},{weight:Math.max(1,100-Math.round(t/h.w*100)-Math.round(e/h.w*100)),node:Y}])}else{const t=h.w/s,e=Math.round(h.h*.14),r=Math.max(6,Math.round(Math.min(e,t)*.42)),l=Math.round(t*.92),a=Math.round((h.h-e)/2),D=(0,alpine_card_1.colSplit)(Array.from({length:s},(x,u)=>({weight:1,node:P((0,alpine_card_1.paint)(z(u,t,e,r)),S(u))}))),I=Math.max(2,Math.round(r*.16)),C=h.w/s,i=c(x=>P((0,alpine_card_1.paint)(K(C,e,C,I)),S(x)),"seg"),U=s>1?(0,alpine_card_1.colSplit)([{weight:1,node:alpine_card_1.EMPTY},...Array.from({length:s-1},(x,u)=>({weight:2,node:i(u+1)})),{weight:1,node:alpine_card_1.EMPTY}]):alpine_card_1.EMPTY,W=(0,alpine_card_1.overlay)([U,D]),O=(0,alpine_card_1.colSplit)(Array.from({length:s},(x,u)=>({weight:100,node:u%2===0?B(u,l,"center"):alpine_card_1.EMPTY}))),Y=(0,alpine_card_1.colSplit)(Array.from({length:s},(x,u)=>({weight:100,node:u%2===1?B(u,l,"center"):alpine_card_1.EMPTY})));H=(0,alpine_card_1.rowSplit)([{weight:Math.round(a/h.h*100),node:O},{weight:Math.round(e/h.h*100),node:W},{weight:Math.max(1,100-Math.round(a/h.h*100)-Math.round(e/h.h*100)),node:Y}])}const R=F.compose(H);(0,alpine_conventions_1.bindHeaderAddHandles)(R.sources,n,"event-title");const st={kind:"mosaic_document",version:1,assets:{},m0:R.m0,sources:(0,alpine_conventions_1.bindCardSurface)(R.sources),backgroundColor:F.backgroundColor,fps:o.target.fps,durationMs:o.target.durationMs};return Promise.resolve((0,template_utils_1.withLayoutContract)(st,o,{templateId:"@m0saic/alpine/timeline/v3",relations:s>=2?[{label:"dot",equal:"size",tolerance:.02,tolerancePx:1}]:[],constraints:[...F.constraints,{label:"event-title",textFits:{charWidthEm:.62}},...J?[{label:"event-date",textFits:{charWidthEm:.62}}]:[],...G?[{label:"event-desc",textFits:{charWidthEm:.62}}]:[]],debug:n.debugLayout===!0}))},async renderCover(n,o){const f=(0,onboarding_cover_1.brandedCoverHeroBox)(o,"band"),p={...o,target:{...o.target,width:f.width,height:f.height},output:{...o.output,width:f.width,height:f.height}},m=await exports.AlpineTimelineV3.render({...exports.AlpineTimelineV3.defaultProps,anim:{...DEFAULT_ANIM,reduceMotion:!0}},p);return(0,onboarding_cover_1.buildBrandedCover)({ctx:o,variant:"band",copy:{productName:"Timeline",title:"A timeline."},hero:c(v=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(m),v.borderStrong),"hero"),heroAssets:m.assets,children:m.children})}},(0,template_utils_1.registerTemplate)(exports.AlpineTimelineV3);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var p=Object.defineProperty;var e=(r,t)=>p(r,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineTreemapV3=void 0;var treemap_1=require("./treemap");Object.defineProperty(exports,"AlpineTreemapV3",{enumerable:!0,get:e(function(){return treemap_1.AlpineTreemapV3},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var Se=Object.defineProperty;var l=(n,e)=>Se(n,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlpineTreemapV3=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),alpine_card_1=require("../../_shared/alpine-card"),alpine_theme_1=require("../../_shared/alpine-theme"),alpine_anim_1=require("../../_shared/alpine-anim"),alpine_conventions_1=require("../../_shared/alpine-conventions"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),DEFAULT_PRESET="light",DEFAULT_RENDER_MODE="premium",DEFAULT_ANIM={renderMode:DEFAULT_RENDER_MODE,introFrac:.7,easing:"easeOut",reduceMotion:!1},DEFAULT_VALUE_MODE="percent",MAX_ITEMS=12;function luminance(n){const e=/^#?([0-9a-f]{6})/i.exec(String(n));if(!e)return 0;const a=parseInt(e[1],16);return(.2126*(a>>16&255)+.7152*(a>>8&255)+.0722*(a&255))/255}l(luminance,"luminance");function onColor(n,e,a){return luminance(n)>.62?a:e}l(onColor,"onColor");function compactNum(n){const e=Math.round(n),a=Math.abs(e),s=l((i,u)=>`${i.toFixed(1).replace(/\.0$/,"")}${u}`,"fmt");return a<1e3?String(e):a<1e6?s(e/1e3,"K"):a<1e9?s(e/1e6,"M"):s(e/1e9,"B")}l(compactNum,"compactNum");function truncateToWidth(n,e,a){return(0,alpine_card_1.fitEmUnits)(n,Math.max(1,a/(e*.62)))}l(truncateToWidth,"truncateToWidth");function worstRatio(n,e){if(n.length===0)return 1/0;const a=n.reduce((u,c)=>u+c,0),s=Math.max(...n),i=Math.min(...n);return Math.max(e*e*s/(a*a),a*a/(e*e*i))}l(worstRatio,"worstRatio");function squarifyNode(n,e,a){if(n.length===0)return alpine_card_1.EMPTY;if(n.length===1)return a(n[0],{w:e.w,h:e.h});const s=Math.min(e.w,e.h);let i=1;for(;i<n.length&&worstRatio(n.slice(0,i+1).map(r=>r.area),s)<=worstRatio(n.slice(0,i).map(r=>r.area),s);)i++;const u=n.slice(0,i),c=n.slice(i),m=u.reduce((r,g)=>r+g.area,0),w=e.w>=e.h,p=l(r=>Math.max(1,Math.round(r/4)),"q4");if(w){const r=c.length?m/e.h:e.w,g=(0,alpine_card_1.rowSplit)(u.map(d=>({weight:p(d.area/m*e.h),node:a(d,{w:r,h:d.area/m*e.h})})));return c.length?(0,alpine_card_1.colSplit)([{weight:p(r),node:g},{weight:p(e.w-r),node:squarifyNode(c,{w:e.w-r,h:e.h},a)}]):g}else{const r=c.length?m/e.w:e.h,g=(0,alpine_card_1.colSplit)(u.map(d=>({weight:p(d.area/m*e.w),node:a(d,{w:d.area/m*e.w,h:r})})));return c.length?(0,alpine_card_1.rowSplit)([{weight:p(r),node:g},{weight:p(e.h-r),node:squarifyNode(c,{w:e.w,h:e.h-r},a)}]):g}}l(squarifyNode,"squarifyNode");const propsSchema=(0,template_utils_1.definePropsSchema)({items:{type:"array",required:!0,meta:{control:{flavor:"objectRows",columns:[{label:"Label",key:"label",kind:"text",placeholder:"Segment"},{label:"Value",key:"value",kind:"number"},{label:"Color",key:"color",kind:"color"}]}}},title:{type:"string",required:!1},subtitle:{type:"string",required:!1},valueMode:{type:"string",required:!1,meta:{constraints:{oneOf:["percent","value","none"]}}},preset:{type:"string",required:!1,meta:{constraints:{oneOf:["light","dark"]}}},showValue:{type:"boolean",required:!1},tiles:{type:"group",required:!1,fields:{cornerRadius:(0,alpine_conventions_1.bFrac)()}},anim:{type:"group",required:!1,fields:{renderMode:(0,alpine_conventions_1.bEnum)(["premium","light"]),reduceMotion:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.reduceMotion,introFrac:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.introFrac,easing:alpine_conventions_1.ALPINE_ANIM_FIELDS_BARE.easing}},theme:{type:"group",required:!1,fields:{slug:(0,alpine_conventions_1.bStr)(),preset:(0,alpine_conventions_1.bStr)(),namespace:(0,alpine_conventions_1.bStr)(),forceFetch:(0,alpine_conventions_1.bBool)()}},debugLayout:{type:"boolean",required:!1}});exports.AlpineTreemapV3={id:(0,types_1.asTemplateId)("@m0saic/alpine/treemap/v3"),version:3,capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},width:1280,height:800,fps:30,durationMs:2e3,posterTimeMs:1900},bindings:{unbound:{...alpine_conventions_1.ALPINE_THEME_UNBOUND,...alpine_conventions_1.ALPINE_ANIM_UNBOUND}},propsSchema,defaultProps:{debugLayout:!1,theme:{forceFetch:!1},items:[{label:"Engineering",value:42},{label:"Sales",value:26},{label:"Marketing",value:16},{label:"Support",value:9},{label:"Design",value:7}],title:"HEADCOUNT",subtitle:"By department",preset:DEFAULT_PRESET,valueMode:DEFAULT_VALUE_MODE,tiles:{cornerRadius:.06},showValue:!0,anim:DEFAULT_ANIM},async render(n,e){var a,s,i,u,c,m,w,p,r;const g=Math.max(1,Math.round(e.target.width)),d=Math.max(1,Math.round(e.target.height)),I=((a=n.items)!==null&&a!==void 0?a:[]).map((t,o)=>({it:t,srcIndex:o})).filter(({it:t})=>t&&typeof t.label=="string"&&Number.isFinite(t.value)&&t.value>0).slice(0,MAX_ITEMS),h=I.map(t=>t.it);if(h.length===0)return(0,template_utils_1.makeIncompleteMosaic)("Add an item \u2014 a label and a value above zero.",{title:"Treemap",width:g,height:d});const N=await(0,alpine_theme_1.resolveAlpineTheme)((s=n.preset)!==null&&s!==void 0?s:DEFAULT_PRESET,e,n.theme),S={...DEFAULT_ANIM,...(i=n.anim)!==null&&i!==void 0?i:{}},L=!S.reduceMotion,O=((u=S.renderMode)!==null&&u!==void 0?u:DEFAULT_RENDER_MODE)==="light",re=l((t,o)=>O?{startAtSec:t,enable:`gte(t,${t.toFixed(3)})`}:{startAtSec:t,alpha:(0,template_utils_1.fadeInExpr)(t,o)},"revealOv"),ie=l((t,o,x)=>{var b;return L?O?(0,alpine_anim_1.revealGate)(t,o):{...t,overlay:{...(b=t.overlay)!==null&&b!==void 0?b:{},alpha:(0,template_utils_1.fadeInExpr)(o,x)}}:t},"ffText"),le=(c=n.showValue)!==null&&c!==void 0?c:!0,P=(m=n.valueMode)!==null&&m!==void 0?m:DEFAULT_VALUE_MODE,se=Math.max(0,Math.min(.5,(p=(w=n.tiles)===null||w===void 0?void 0:w.cornerRadius)!==null&&p!==void 0?p:.06)),W=h.map((t,o)=>o).sort((t,o)=>h[o].value-h[t].value),Y=h.reduce((t,o)=>t+o.value,0),ue=l(t=>(0,alpine_card_1.resolveColor)(h[t].color,alpine_theme_1.ALPINE_PALETTE[t%alpine_theme_1.ALPINE_PALETTE.length]),"tileColor"),F=(0,alpine_card_1.alpineCard)({theme:N,W:g,H:d,title:n.title,subtitle:n.subtitle}),v=F.contentRect,y=Math.max(2,Math.round(Math.min(v.w,v.h)*.012)),$=Math.max(12,Math.round(d*.028)),de=Math.max(10,Math.round(d*.022)),ce=Math.max(10,Math.round(d*.018)),he=Math.max(.1,((r=e.target.durationMs)!==null&&r!==void 0?r:2e3)/1e3),j=Math.max(.1,Math.min(1,S.introFrac)*he),_=Math.max(.08,j*.45),K=W.length,me=l(t=>L?(j-_)*(K>1?t/(K-1):0):0,"startAt"),pe=l((t,o)=>{const x=ue(t.origIdx),b=me(t.rank),z=l((f,B,H)=>(0,template_utils_1.bindPropPath)(f,"items",[I[t.origIdx].srcIndex,B],H),"bindItem"),X=Math.min(.45,y/2/Math.max(1,o.w)),G=Math.min(.45,y/2/Math.max(1,o.h)),J=(0,alpine_conventions_1.withAddHandles)(z((0,alpine_card_1.tag)((0,template_utils_1.makeColorTile)(x,{effects:{rounding:{cornerStyle:"rounded",borderRadius:se}},placement:{inset:{top:G,right:X,bottom:G,left:X}},...L?{overlay:re(b,_)}:{}}),"tile"),"value","number"),[{propKey:"items",path:[I[t.origIdx].srcIndex,"color"],kind:"color"},{propKey:"tiles.cornerRadius"}]),Q=o.w-y,D=o.h-y,T=Math.max(2,Math.round(Math.min(Q,D)*.1)),R=Q-T*2,we=Math.max(1,(0,template_utils_1.textEmUnits)(h[t.origIdx].label)),M=Math.max(ce,Math.min($,Math.floor(R/(we*.62)))),V=Math.max(8,Math.round(M*(de/$))),_e=onColor(x,"#FFFFFF",N.title),xe=onColor(x,"#FFFFFF",N.subtitle),Ee=le&&P!=="none",Ae=R>=M*2&&D>=M*1.9,Fe=Ee&&D>=T*2+M*1.7+V*1.2;if(!Ae)return(0,alpine_card_1.paint)(J);const ye=truncateToWidth(h[t.origIdx].label,M,R),Te=T/Math.max(1,o.w),Z=l((f,B,H,Ie,Ne,U)=>{const oe=ie((0,alpine_card_1.tag)((0,alpine_card_1.textCell)(f,B,H,"left","middle",{left:Te}),Ne),b+Ie,_);return(0,alpine_card_1.paint)(U?z(oe,U[0],U[1]):oe)},"mkText"),E=l(f=>Math.max(1,Math.round(f/4)),"q4"),ee=T,te=Math.round(M*1.5),ne=Math.round(M*.35),ae=Math.round(V*1.4),A=[{weight:E(ee),node:alpine_card_1.EMPTY}];A.push({weight:E(te),node:Z(ye,M,_e,_*.3,"tile-name",["label","string"])});let k=ee+te;if(Fe){const f=P==="percent"?`${Math.round(h[t.origIdx].value/Y*100)}%`:compactNum(h[t.origIdx].value);A.push({weight:E(ne),node:alpine_card_1.EMPTY}),A.push({weight:E(ae),node:Z(f,V,xe,_*.4,"tile-value",P==="value"?["value","number"]:void 0)}),k+=ne+ae}return k<o.h-4&&A.push({weight:E(o.h-k),node:alpine_card_1.EMPTY}),(0,alpine_card_1.overlay)([(0,alpine_card_1.paint)(J),(0,alpine_card_1.rowSplit)(A)])},"mkTile"),ge=Math.max(1,v.w*v.h),Me=W.map((t,o)=>({origIdx:t,rank:o,area:h[t].value/Y*ge})),fe=squarifyNode(Me,{w:v.w,h:v.h},pe),q=F.compose(fe);(0,alpine_conventions_1.bindHeaderAddHandles)(q.sources,n,["tile-name","tile"]);const C={kind:"mosaic_document",version:1,assets:{},m0:q.m0,sources:(0,alpine_conventions_1.bindCardSurface)(q.sources),backgroundColor:F.backgroundColor,fps:e.target.fps,durationMs:e.target.durationMs},ve=C.sources.some(t=>{var o;return((o=t.editor)===null||o===void 0?void 0:o.label)==="tile-name"}),be=C.sources.some(t=>{var o;return((o=t.editor)===null||o===void 0?void 0:o.label)==="tile-value"});return Promise.resolve((0,template_utils_1.withLayoutContract)(C,e,{templateId:"@m0saic/alpine/treemap/v3",constraints:[...F.constraints,...ve?[{label:"tile-name",textFits:{charWidthEm:.62}}]:[],...be?[{label:"tile-value",textFits:{charWidthEm:.62}}]:[]],debug:n.debugLayout===!0}))},async renderCover(n,e){const a=(0,onboarding_cover_1.brandedCoverHeroBox)(e,"band"),s={...e,target:{...e.target,width:a.width,height:a.height},output:{...e.output,width:a.width,height:a.height}},i=await exports.AlpineTreemapV3.render({...exports.AlpineTreemapV3.defaultProps,anim:{...DEFAULT_ANIM,reduceMotion:!0}},s);return(0,onboarding_cover_1.buildBrandedCover)({ctx:e,variant:"band",copy:{productName:"Treemap",title:"A treemap."},hero:l(u=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(i),u.borderStrong),"hero"),heroAssets:i.assets,children:i.children})}},(0,template_utils_1.registerTemplate)(exports.AlpineTreemapV3);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var u=Object.defineProperty;var o=(t,e)=>u(t,"name",{value:e,configurable:!0});var __createBinding=this&&this.__createBinding||(Object.create?(function(t,e,r,i){i===void 0&&(i=r);var n=Object.getOwnPropertyDescriptor(e,r);(!n||("get"in n?!e.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:o(function(){return e[r]},"get")}),Object.defineProperty(t,i,n)}):(function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]})),__exportStar=this&&this.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(e,t,r)};Object.defineProperty(exports,"__esModule",{value:!0}),__exportStar(require("./run/v1"),exports),__exportStar(require("./report/v1"),exports);
|
|
1
|
+
"use strict";var u=Object.defineProperty;var o=(t,e)=>u(t,"name",{value:e,configurable:!0});var __createBinding=this&&this.__createBinding||(Object.create?(function(t,e,r,i){i===void 0&&(i=r);var n=Object.getOwnPropertyDescriptor(e,r);(!n||("get"in n?!e.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:o(function(){return e[r]},"get")}),Object.defineProperty(t,i,n)}):(function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]})),__exportStar=this&&this.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(e,t,r)};Object.defineProperty(exports,"__esModule",{value:!0}),__exportStar(require("./run/v1"),exports),__exportStar(require("./report/v1"),exports),__exportStar(require("./report/v2"),exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var c=Object.defineProperty;var o=(r,e)=>c(r,"name",{value:e,configurable:!0});var __createBinding=this&&this.__createBinding||(Object.create?(function(r,e,t,i){i===void 0&&(i=t);var n=Object.getOwnPropertyDescriptor(e,t);(!n||("get"in n?!e.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(r,i,n)}):(function(r,e,t,i){i===void 0&&(i=t),r[i]=e[t]})),__exportStar=this&&this.__exportStar||function(r,e){for(var t in r)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&__createBinding(e,r,t)};Object.defineProperty(exports,"__esModule",{value:!0}),__exportStar(require("./report"),exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var R=Object.defineProperty;var i=(t,e)=>R(t,"name",{value:e,configurable:!0});var __createBinding=this&&this.__createBinding||(Object.create?(function(t,e,s,r){r===void 0&&(r=s);var n=Object.getOwnPropertyDescriptor(e,s);(!n||("get"in n?!e.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:i(function(){return e[s]},"get")}),Object.defineProperty(t,r,n)}):(function(t,e,s,r){r===void 0&&(r=s),t[r]=e[s]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),__importStar=this&&this.__importStar||(function(){var t=i(function(e){return t=Object.getOwnPropertyNames||function(s){var r=[];for(var n in s)Object.prototype.hasOwnProperty.call(s,n)&&(r[r.length]=n);return r},t(e)},"ownKeys");return function(e){if(e&&e.__esModule)return e;var s={};if(e!=null)for(var r=t(e),n=0;n<r.length;n++)r[n]!=="default"&&__createBinding(s,e,r[n]);return __setModuleDefault(s,e),s}})();Object.defineProperty(exports,"__esModule",{value:!0}),exports.BenchmarkReportV2=void 0;const fs=__importStar(require("fs")),path=__importStar(require("path")),assetPath_1=require("@m0saic/template-utils/dist/m0saic/assetPath"),types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),propsSchema=(0,template_utils_1.definePropsSchema)({dir:{type:"string",required:!1,meta:{control:{picker:"folder"}}},introFrac:{type:"number",required:!1,meta:{constraints:{min:.1,max:1},control:{flavor:"slider",step:.05}}}}),BG="#000000",CARD_BG="#0a0a0a",ACCENT="#f97316";function resolveBenchmarkJson(t){const e=i(r=>r.toLowerCase().endsWith(".json")?r:path.join(r,"benchmark.json"),"toJson"),s=[];if(path.isAbsolute(t))s.push(e(t));else{let r=process.cwd();for(;;){s.push(e(path.resolve(r,t)));const n=path.dirname(r);if(n===r)break;r=n}}for(const r of s)try{if(fs.existsSync(r)&&fs.statSync(r).isFile())return r}catch{}return null}i(resolveBenchmarkJson,"resolveBenchmarkJson");function formatMs(t){const e=Math.round(t/1e3);return e<60?`${e}s`:`${Math.floor(e/60)}m ${e%60}s`}i(formatMs,"formatMs");function shortFfmpeg(t){var e;const s=t.match(/version\s+(\S+)/i);return s?s[1]:(e=t.split(/\s+/)[0])!==null&&e!==void 0?e:t}i(shortFfmpeg,"shortFfmpeg");const color=i(t=>t,"color");function textCell(t,e){const s=t.length,r=Math.round(Math.max(...t.map(a=>a.size))*1.35);return{type:"text",layers:t.map((a,h)=>{var l;const m=h-(s-1)/2;return{content:{kind:"literal",text:a.text},style:{fontSize:a.size,fontColor:color((l=a.color)!==null&&l!==void 0?l:"#e8eef9"),fontFamily:"Arial"},placement:{hAlign:"center",vAlign:"middle",yExpr:`(h-text_h)/2 + (${m}) * ${r}`}}}),visual:{backgroundColor:color(e)},renderMode:{kind:"image"}}}i(textCell,"textCell");const headerLine=i((t,e,s)=>textCell([{text:t,size:e,color:s}],BG),"headerLine");exports.BenchmarkReportV2={id:(0,types_1.asTemplateId)("@m0saic/benchmark/report/v2"),version:2,capabilities:{tier:"core"},outputHints:{width:1920,height:1080,fps:30,durationMs:6e3,format:{kind:"video",container:"mp4"},posterTimeMs:4500},propsSchema,bindings:{unbound:{introFrac:"timing"}},defaultProps:{dir:".",introFrac:.6},async render(t,e){var s,r,n;const a=e.target.width,h=e.target.height,l=e.target.durationMs,m={width:a,height:h,title:"Benchmark Report"},g=resolveBenchmarkJson((s=t.dir)!==null&&s!==void 0?s:".");if(!g){const o=(0,template_utils_1.makeIncompleteMosaic)("No benchmark.json here yet. Pick a benchmark session folder (the dir written by @m0saic/benchmark/run/v1).",m);for(const c of o.sources)(0,template_utils_1.bindProp)(c,"dir");return o}let p;try{p=JSON.parse(fs.readFileSync(g,"utf8"))}catch(o){return(0,template_utils_1.makeErrorMosaic)(`Failed to read ${g}: ${o instanceof Error?o.message:String(o)}`,m)}const d=(r=p.scenarios)!==null&&r!==void 0?r:[];if(d.length===0)return(0,template_utils_1.makeErrorMosaic)(`No scenarios in ${g}.`,m);const u=p.system,S=u.ffmpeg.hwEncoders.length?u.ffmpeg.hwEncoders.join(", "):"none",y=headerLine(`m0saic benchmark \xB7 ${p.label}`,Math.round(a/26),"#e8eef9"),_=headerLine(`${u.cpu.model} \xB7 ${u.cpu.cores} cores \xB7 ${u.ram.totalGb} GB`,Math.round(a/56),"#aab6d6"),M=headerLine(`${u.os.platform} ${u.os.arch} \xB7 ffmpeg ${shortFfmpeg(u.ffmpeg.version)} \xB7 hw: ${S}`,Math.round(a/72),"#8794b8");for(const o of[y,_,M])(0,template_utils_1.bindProp)(o,"dir");const P=Math.min(1,Math.max(.1,(n=t.introFrac)!==null&&n!==void 0?n:.6)),k=Math.max(500,Math.round(l*P)),$=d.filter(o=>o.ok).length,B={width:Math.round(a*.29),height:Math.round(h*.2),durationMs:l},b=i((o,c,f)=>(0,template_utils_1.renderNestedTemplate)("@m0saic/charts/stat-card/v1",{label:o,value:c,sublabel:f,delta:"",backgroundColor:CARD_BG,anim:{countUp:!0,slideIn:!0,introMs:k}},e,{slot:B}),"statCard"),[C,O,j]=await Promise.all([b("Score",`${p.summary.score}`,"higher is faster"),b("Total render time",formatMs(p.summary.totalElapsedMs),p.label),b("Scenarios ok",`${$}/${d.length}`,`${d.length} workloads`)]),x=d.some(o=>o.templateIds&&o.templateIds.length>0),w=["#f97316","#43c59e","#a78bfa","#60a5fa","#f6c177","#eb6f92"],v=[],A=d.map(o=>{const c=o.templateIds&&o.templateIds[0]||o.set;let f=v.indexOf(c);return f<0&&(f=v.length,v.push(c)),w[f%w.length]}),T=await(0,template_utils_1.renderNestedTemplate)("@m0saic/charts/bar-graph/v1",{values:d.map(o=>{var c;return Math.round(((c=o.elapsedMs)!==null&&c!==void 0?c:0)/1e3*10)/10}),labels:d.map(o=>o.label),orientation:"horizontal",preset:"terminal",barColor:x?A:ACCENT,valueLabels:{show:!0,format:"raw",decimals:1,suffix:"s"},grid:{show:!1},valueAxis:{show:!1},baseline:{show:!1},anim:{intro:{durationSec:k/1e3,delaySec:0,staggerSec:.02,ease:"smoothstep"},reduceMotion:!1}},e,{slot:{width:a,height:Math.round(h*.58),durationMs:l}}),E={type:"media",mediaType:"image",assetId:"mlogo",placement:{fit:"contain"}},F=(0,assetPath_1.fileAsset)(path.resolve(__dirname,"..","v1","assets"),"m-logo.png","image"),q=(0,dsl_stdlib_1.weightedSplit)([38,30,32],"row"),I=(0,dsl_stdlib_1.weightedSplit)([13,29,29,29],"col"),N=(0,dsl_stdlib_1.weightedSplit)([22,20,58],"row",{claimants:[q,I,"1"]});return{kind:"mosaic_document",version:1,assets:{mlogo:F},m0:N,sources:[y,_,M,E,{type:"mosaic",ref:"kpi-score"},{type:"mosaic",ref:"kpi-time"},{type:"mosaic",ref:"kpi-ok"},{type:"mosaic",ref:"bars"}],children:{"kpi-score":(0,template_utils_1.stripPropBindings)(C),"kpi-time":(0,template_utils_1.stripPropBindings)(O),"kpi-ok":(0,template_utils_1.stripPropBindings)(j),bars:(0,template_utils_1.stripPropBindings)(T)},backgroundColor:color(BG),fps:e.target.fps,durationMs:l,size:{width:a,height:h}}}},(0,template_utils_1.registerTemplate)(exports.BenchmarkReportV2);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var I=Object.defineProperty;var u=(t,e)=>I(t,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.BusinessCardV2=void 0,exports.businessCardConstraints=businessCardConstraints,exports.pickQrVersion=pickQrVersion;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),back_catalog_1=require("../v1/back-catalog"),layout_1=require("../v1/layout"),TEMPLATE_ID="@m0saic/brand/business-card/v2",LABEL="Business Card",INK="#FFFFFF",NAME_INK="#F0F0F6",MUTED_INK="#8A89A3",MONO_INK="#E6E6F0",GUIDE_TRIM="#EF7525",GUIDE_SAFE="#5CB85C",DEFAULT_FIELD_OPACITY=.28,QR_MODULE_RADIUS=1,POSTER_FRAME_MIX=.45,STEP_DURATION_MS=1e3,propsSchema=(0,template_utils_1.definePropsSchema)({name:{type:"string",required:!1},role:{type:"string",required:!1},email:{type:"string",required:!1},site:{type:"string",required:!1,meta:{control:{flavor:"url"}}},handle:{type:"string",required:!1},back:{type:"string",required:!1,meta:{constraints:{oneOf:[...back_catalog_1.BACK_KEYS]}}},bleed:{type:"string",required:!1,meta:{constraints:{oneOf:[...layout_1.BLEEDS]}}},dpi:{type:"number",required:!1,meta:{constraints:{min:layout_1.DPI_MIN,max:layout_1.DPI_MAX},control:{flavor:"slider",step:50}}},fieldOpacity:{type:"number",required:!1,meta:{constraints:{min:0,max:.6},control:{flavor:"slider",step:.01}}},accent:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0}}},guides:{type:"boolean",required:!1},debugLayout:{type:"boolean",required:!1}});function pickColor(t,e){const n=typeof t=="string"?t.trim():t;return n||e}u(pickColor,"pickColor");function textSource(t,e,n){return{type:"text",rasterizer:"svg",renderMode:{kind:"image"},layers:[{content:{kind:"literal",text:t.text},style:{fontSize:t.fontSize,fontColor:e,fontFamily:t.family,...t.bold?{fontWeight:"bold"}:{}},placement:{hAlign:"left",vAlign:"middle"}}],editor:{owner:"template",label:n}}}u(textSource,"textSource");function pathTile(t,e){return(0,template_utils_1.makeColorTile)(e,{mask:{kind:"inline-mask",localPath:t.join(" "),bounds:{x:0,y:0,width:template_utils_1.WORDMARK_BOUNDS.width,height:template_utils_1.WORDMARK_BOUNDS.height}}})}u(pathTile,"pathTile");function fieldPieces(t,e){return t.map(n=>({rect:{...n,importance:0},source:(0,template_utils_1.tag)((0,template_utils_1.makeColorTile)(e),"field")}))}u(fieldPieces,"fieldPieces");function guidePieces(t){const e=Math.max(1,Math.round(t.dpi/150));return[...(0,layout_1.outlineRects)(t.trim,e).map(n=>({rect:{...n,importance:9},source:(0,template_utils_1.tag)((0,template_utils_1.makeColorTile)(GUIDE_TRIM),"guide-trim")})),...(0,layout_1.outlineRects)(t.safe,e).map(n=>({rect:{...n,importance:9},source:(0,template_utils_1.tag)((0,template_utils_1.makeColorTile)(GUIDE_SAFE),"guide-safe")}))]}u(guidePieces,"guidePieces");function stillDoc(t,e,n,o,l){return{kind:"mosaic_document",version:1,assets:{},m0:(0,dsl_stdlib_1.toM0String)(String(e.m0),o),sources:e.sources,backgroundColor:template_utils_1.NAVY,fps:n.fps,durationMs:n.durationMs,size:{width:t.W,height:t.H},format:{kind:"image",container:"png"},...l?{children:l}:{},editor:{label:o}}}u(stillDoc,"stillDoc");const MONO_FIT={charWidthEm:.6,padPx:0};function businessCardConstraints(t,e,n){var o;const l=u(d=>n.labels.includes(d),"has"),a={xFrac:[e.safe.x/e.W,(e.safe.x+e.safe.w)/e.W],yFrac:[e.safe.y/e.H,(e.safe.y+e.safe.h)/e.H]},c=[{label:"field"}];if(t==="front"){c.push({label:"mark",aspect:1,aspectTolerance:.05,within:a},{label:"wordmark",aspect:template_utils_1.WORDMARK_BOUNDS.width/template_utils_1.WORDMARK_BOUNDS.height,aspectTolerance:.05,within:a},{label:"name",within:a});for(const d of["role"])l(d)&&c.push({label:d,within:a});for(const d of["email","site","handle"])l(d)&&c.push({label:d,within:a,textFits:MONO_FIT})}else c.push({label:"poster",aspect:(o=n.posterAspect)!==null&&o!==void 0?o:16/9,aspectTolerance:.03,within:a},{label:"qr",aspect:1,aspectTolerance:.03,within:a},{label:"title",within:a},{label:"url",within:a,textFits:MONO_FIT},{label:"command",within:a,textFits:MONO_FIT});return c}u(businessCardConstraints,"businessCardConstraints");function contractCtx(t,e){return{...t,target:{...t.target,width:e.W,height:e.H}}}u(contractCtx,"contractCtx");function buildFront(t,e,n){var o,l,a,c,d;const{c:i}=e,g={name:((o=t.name)!==null&&o!==void 0?o:"").trim()||" ",role:((l=t.role)!==null&&l!==void 0?l:"").trim(),email:((a=t.email)!==null&&a!==void 0?a:"").trim(),site:((c=t.site)!==null&&c!==void 0?c:"").trim(),handle:((d=t.handle)!==null&&d!==void 0?d:"").trim()},r=(0,layout_1.buildFrontLayout)(i,g),m=[...fieldPieces(r.field,e.tile),{rect:{...r.mark,importance:2},source:(0,template_utils_1.bindProp)((0,template_utils_1.tag)((0,template_utils_1.brandGlyphTile)(template_utils_1.HEADER_M_GLYPH,e.accent),"mark"),"accent")},{rect:{...r.wordmark,importance:2},source:(0,template_utils_1.tag)(pathTile(template_utils_1.WORDMARK_LETTER_PATHS,INK),"wordmark")},{rect:{...r.wordmark,importance:3},source:(0,template_utils_1.bindProp)((0,template_utils_1.tag)(pathTile(template_utils_1.WORDMARK_ZERO_PATHS,e.accent),"wordmark-zero"),"accent")},{rect:{...r.name.rect,importance:2},source:(0,template_utils_1.bindProps)(textSource(r.name,NAME_INK,"name"),[{propKey:"name"},...["role","email","site","handle"].filter(s=>!g[s]).map(s=>({propKey:s}))])}];r.role&&m.push({rect:{...r.role.rect,importance:2},source:(0,template_utils_1.bindProp)(textSource(r.role,MUTED_INK,"role"),"role")}),r.email&&m.push({rect:{...r.email.rect,importance:2},source:(0,template_utils_1.bindProp)(textSource(r.email,MONO_INK,"email"),"email")}),r.site&&m.push({rect:{...r.site.rect,importance:2},source:(0,template_utils_1.bindProp)(textSource(r.site,MONO_INK,"site"),"site")}),r.handle&&m.push({rect:{...r.handle.rect,importance:2},source:(0,template_utils_1.bindProp)(textSource(r.handle,MUTED_INK,"handle"),"handle")}),e.guides&&m.push(...guidePieces(i));const p=(0,template_utils_1.placeInsetPieces)({rootW:i.W,rootH:i.H,pieces:m}),b=stillDoc(i,p,e,`${LABEL} \xB7 front`),_=["mark","wordmark","name",...r.role?["role"]:[],...r.email?["email"]:[],...r.site?["site"]:[],...r.handle?["handle"]:[]];return(0,template_utils_1.withLayoutContract)(b,contractCtx(n,i),{templateId:TEMPLATE_ID,constraints:businessCardConstraints("front",i,{labels:_}),relations:[],debug:t.debugLayout===!0})}u(buildFront,"buildFront");function nestedCtx(t,e,n,o){return{...t,target:{width:e,height:n,fps:o,durationMs:STEP_DURATION_MS},output:{...t.output,width:e,height:n}}}u(nestedCtx,"nestedCtx");const QR_CENTER={show:!0,width:272,height:272,paddingPct:8},QR_EYES={outerBorderRadius:.3,innerLightBorderRadius:.3,innerDotBorderRadius:.5};function pickQrVersion(t,e){for(let n=6;n<=14;n++)try{return(0,template_utils_1.qrToRenderable)({text:t,moduleColor:e,errorCorrectionLevel:"H",backgroundColor:INK,eyes:{darkColor:e,...QR_EYES},version:n,safeArea:{width:QR_CENTER.width,height:QR_CENTER.height,paddingPct:QR_CENTER.paddingPct}}),n}catch{}return 14}u(pickQrVersion,"pickQrVersion");function posterDocument(t){if(t.kind==="mosaic_document")return t;if(t.kind==="mosaic_pipeline"){const e=t.steps.filter(o=>{var l;return!o.intermediate&&((l=o.file)===null||l===void 0?void 0:l.kind)==="mosaic_document"}),n=e[e.length-1];return n?n.file:null}return null}u(posterDocument,"posterDocument");async function buildBack(t,e,n){var o,l,a;const{c}=e,d=(0,back_catalog_1.pickBack)(t.back),i=back_catalog_1.BACK_CATALOG[d],g=(0,template_utils_1.getTemplate)(i.templateId);if(!g)return`back "${d}" needs ${i.templateId}, which is not registered in this build`;const r=g.outputHints,m=r?.width&&r?.height&&r.width>0&&r.height>0?{width:r.width,height:r.height}:null,p=i.slot==="cell"?m:(o=i.slot)!==null&&o!==void 0?o:m,b=p?p.width/p.height:16/9,_=(0,back_catalog_1.makeUrl)(i.templateId),s=(0,layout_1.buildBackLayout)(c,{title:i.title,url:(0,back_catalog_1.displayUrl)(i),command:(0,back_catalog_1.commandFor)(i),commandSizedFor:(0,back_catalog_1.longestCommand)(),posterAspect:b}),P=(0,back_catalog_1.frozenProps)(g.defaultProps,i.flavour),M=i.slot==="cell"?s.poster.w:p?Math.round(p.width):s.poster.w,A=i.slot==="cell"?s.poster.h:p?Math.round(p.height):s.poster.h;let w;try{w=await(0,template_utils_1.renderNestedTemplate)(i.templateId,P,nestedCtx(n,M,A,e.fps),{slot:{width:M,height:A,fps:e.fps,durationMs:STEP_DURATION_MS}})}catch(f){return`back "${d}" failed to render: ${f instanceof Error?f.message:String(f)}`}const k=posterDocument(w);if(!k)return`back "${d}" rendered a ${w.kind} with no final document; the back needs one picture`;if(k.sources.length===0)return`back "${d}" rendered an empty document`;const R=pickQrVersion(_,e.accent);let h;try{h=(0,template_utils_1.qrToRenderable)({text:_,moduleColor:e.accent,errorCorrectionLevel:"H",backgroundColor:INK,eyes:{darkColor:e.accent,...QR_EYES},version:R,safeArea:{width:QR_CENTER.width,height:QR_CENTER.height,paddingPct:QR_CENTER.paddingPct}})}catch(f){return`QR for ${_}: ${f instanceof Error?f.message:String(f)}`}const T=((a=(l=h.channelByRole.eyes)===null||l===void 0?void 0:l.frames.length)!==null&&a!==void 0?a:0)*3,v=h.safeAreaStableKey?1:0,D=h.sources.length-T-v,x=h.sources.map((f,E)=>E<D?(0,template_utils_1.makeColorTile)(e.accent,{effects:{rounding:{borderRadius:QR_MODULE_RADIUS,cornerStyle:"rounded"}}}):E>=h.sources.length-v?(0,template_utils_1.bindProp)((0,template_utils_1.tag)((0,template_utils_1.brandGlyphTile)(template_utils_1.HEADER_M_GLYPH,e.accent),"qr-mark"),"accent"):f),O={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(String(h.m0),`${LABEL} \xB7 qr`),sources:x,assets:{},size:{width:h.canvasW,height:h.canvasH},backgroundColor:INK,fps:e.fps,durationMs:e.durationMs,editor:{label:"qr"},engine:{lattice:{mode:"bitmap"}}},y=Math.max(1,Math.round(c.dpi/150)),S={x:s.poster.x-y,y:s.poster.y-y,w:s.poster.w+2*y,h:s.poster.h+2*y},C=[...fieldPieces(s.field,e.tile),{rect:{...S,importance:1},source:(0,template_utils_1.tag)((0,template_utils_1.makeColorTile)((0,template_utils_1.mixHex)(template_utils_1.NAVY,template_utils_1.NAVY_SOFT,POSTER_FRAME_MIX)),"poster-frame")},{rect:{...s.poster,importance:2},source:{type:"mosaic",ref:"poster",placement:{fit:"contain"},editor:{owner:"template",label:"poster"}}},{rect:{...s.qr,importance:2},source:{type:"mosaic",ref:"qr",placement:{fit:"contain"},editor:{owner:"template",label:"qr"}}},{rect:{...s.title.rect,importance:2},source:textSource(s.title,NAME_INK,"title")},{rect:{...s.url.rect,importance:2},source:textSource(s.url,MONO_INK,"url")},{rect:{...s.command.rect,importance:2},source:textSource(s.command,MUTED_INK,"command")}];e.guides&&C.push(...guidePieces(c));const q=(0,template_utils_1.placeInsetPieces)({rootW:c.W,rootH:c.H,pieces:C}),F=stillDoc(c,q,e,`${LABEL} \xB7 back \xB7 ${i.title}`,{poster:k,qr:O});return(0,template_utils_1.withLayoutContract)(F,contractCtx(n,c),{templateId:TEMPLATE_ID,constraints:businessCardConstraints("back",c,{labels:["poster","qr","title","url","command"],posterAspect:b}),relations:[],flatten:!1,debug:t.debugLayout===!0})}u(buildBack,"buildBack");function naturalHints(t){const e=(0,layout_1.cardCanvas)((0,layout_1.pickBleed)(t.bleed),(0,layout_1.clampDpi)(t.dpi));return{width:e.W,height:e.H}}u(naturalHints,"naturalHints");const DEFAULT_PROPS={name:"Quentin S",role:"Founder, m0saic",email:"quentin@m0saic.io",site:"m0saic.io",handle:"@qsbuilds",back:"hello-world",bleed:"moo",dpi:layout_1.DPI_DEFAULT,fieldOpacity:DEFAULT_FIELD_OPACITY,accent:template_utils_1.BRAND_ORANGE,guides:!1,debugLayout:!1},DEFAULT_CANVAS=(0,layout_1.cardCanvas)("moo",layout_1.DPI_DEFAULT);exports.BusinessCardV2={id:(0,types_1.asTemplateId)(TEMPLATE_ID),version:2,capabilities:{tier:"core"},aspectRatio:{ideal:DEFAULT_CANVAS.W/DEFAULT_CANVAS.H,min:1.5,max:1.95,mode:"warn"},lattice:{canvas:"physical"},outputHints:{width:DEFAULT_CANVAS.W,height:DEFAULT_CANVAS.H,fps:30,durationMs:STEP_DURATION_MS,format:{kind:"image",container:"png"},note:"US 3.5 x 2 in on MOO's 3.66 x 2.16 in bleed box at 300 DPI (1098 x 648 px); emits <out>-front.png and <out>-back.png"},resolveOutputHints:naturalHints,propsSchema,bindings:{unbound:{dpi:"print resolution",fieldOpacity:"texture"}},defaultProps:DEFAULT_PROPS,async render(t,e){var n;const o=(0,layout_1.pickBleed)(t.bleed),l=(0,layout_1.effectiveDpi)(o,(0,layout_1.clampDpi)(t.dpi),e.target),a=(0,layout_1.cardCanvas)(o,l),c=u(b=>(0,template_utils_1.makeErrorMosaic)(b,{title:LABEL,width:a.W,height:a.H}),"fail"),d=Math.min(.6,Math.max(0,(n=t.fieldOpacity)!==null&&n!==void 0?n:DEFAULT_FIELD_OPACITY)),i={c:a,tile:(0,template_utils_1.mixHex)(template_utils_1.NAVY,template_utils_1.NAVY_SOFT,d),accent:pickColor(t.accent,template_utils_1.BRAND_ORANGE),guides:t.guides===!0,fps:Math.max(1,Math.round(e.target.fps||30)),durationMs:Math.max(1,Math.round(e.target.durationMs||STEP_DURATION_MS))},g=buildFront(t,i,e),r=await buildBack(t,i,e);return typeof r=="string"?c(r):{kind:"mosaic_pipeline",version:1,emit:"multi",steps:[{name:"front",label:"front",durationMs:STEP_DURATION_MS,file:g},{name:"back",label:"back",durationMs:STEP_DURATION_MS,file:r}]}}},(0,template_utils_1.registerTemplate)(exports.BusinessCardV2),exports.default=exports.BusinessCardV2;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var t=Object.defineProperty;var r=(e,s)=>t(e,"name",{value:s,configurable:!0});var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.businessCardV2Constraints=exports.BusinessCardV2=void 0;var business_card_1=require("./business-card");Object.defineProperty(exports,"BusinessCardV2",{enumerable:!0,get:r(function(){return business_card_1.BusinessCardV2},"get")}),Object.defineProperty(exports,"businessCardV2Constraints",{enumerable:!0,get:r(function(){return business_card_1.businessCardConstraints},"get")});var business_card_2=require("./business-card");Object.defineProperty(exports,"default",{enumerable:!0,get:r(function(){return __importDefault(business_card_2).default},"get")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var o=Object.defineProperty;var e=(r,t)=>o(r,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.BusinessCard=exports.CommunityMV1=exports.QrStampStill=exports.QrStampVideoV2=exports.TheMosaicMV3=exports.TheMosaicMV2=exports.TheMosaicM=void 0;var v1_1=require("./logo/v1");Object.defineProperty(exports,"TheMosaicM",{enumerable:!0,get:e(function(){return v1_1.TheMosaicM},"get")});var v2_1=require("./logo/v2");Object.defineProperty(exports,"TheMosaicMV2",{enumerable:!0,get:e(function(){return v2_1.TheMosaicMV2},"get")});var v3_1=require("./logo/v3");Object.defineProperty(exports,"TheMosaicMV3",{enumerable:!0,get:e(function(){return v3_1.TheMosaicMV3},"get")});var v2_2=require("./qr-stamp/video/v2");Object.defineProperty(exports,"QrStampVideoV2",{enumerable:!0,get:e(function(){return v2_2.QrStampVideoV2},"get")});var v1_2=require("./qr-stamp/still/v1");Object.defineProperty(exports,"QrStampStill",{enumerable:!0,get:e(function(){return v1_2.QrStampStill},"get")});var v1_3=require("./community-m/v1");Object.defineProperty(exports,"CommunityMV1",{enumerable:!0,get:e(function(){return v1_3.CommunityMV1},"get")});var v1_4=require("./business-card/v1");Object.defineProperty(exports,"BusinessCard",{enumerable:!0,get:e(function(){return v1_4.BusinessCard},"get")});
|
|
1
|
+
"use strict";var o=Object.defineProperty;var e=(r,t)=>o(r,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.BusinessCardV2=exports.BusinessCard=exports.CommunityMV1=exports.QrStampStill=exports.QrStampVideoV2=exports.TheMosaicMV4=exports.TheMosaicMV3=exports.TheMosaicMV2=exports.TheMosaicM=void 0;var v1_1=require("./logo/v1");Object.defineProperty(exports,"TheMosaicM",{enumerable:!0,get:e(function(){return v1_1.TheMosaicM},"get")});var v2_1=require("./logo/v2");Object.defineProperty(exports,"TheMosaicMV2",{enumerable:!0,get:e(function(){return v2_1.TheMosaicMV2},"get")});var v3_1=require("./logo/v3");Object.defineProperty(exports,"TheMosaicMV3",{enumerable:!0,get:e(function(){return v3_1.TheMosaicMV3},"get")});var v4_1=require("./logo/v4");Object.defineProperty(exports,"TheMosaicMV4",{enumerable:!0,get:e(function(){return v4_1.TheMosaicMV4},"get")});var v2_2=require("./qr-stamp/video/v2");Object.defineProperty(exports,"QrStampVideoV2",{enumerable:!0,get:e(function(){return v2_2.QrStampVideoV2},"get")});var v1_2=require("./qr-stamp/still/v1");Object.defineProperty(exports,"QrStampStill",{enumerable:!0,get:e(function(){return v1_2.QrStampStill},"get")});var v1_3=require("./community-m/v1");Object.defineProperty(exports,"CommunityMV1",{enumerable:!0,get:e(function(){return v1_3.CommunityMV1},"get")});var v1_4=require("./business-card/v1");Object.defineProperty(exports,"BusinessCard",{enumerable:!0,get:e(function(){return v1_4.BusinessCard},"get")});var v2_3=require("./business-card/v2");Object.defineProperty(exports,"BusinessCardV2",{enumerable:!0,get:e(function(){return v2_3.BusinessCardV2},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var t=Object.defineProperty;var e=(r,o)=>t(r,"name",{value:o,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.TheMosaicMV4=void 0;var logo_runner_1=require("./logo_runner");Object.defineProperty(exports,"TheMosaicMV4",{enumerable:!0,get:e(function(){return logo_runner_1.TheMosaicMV4},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var M=Object.defineProperty;var h=(o,e)=>M(o,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.TheMosaicMV4=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),canvas_handles_1=require("../../../_shared/canvas-handles"),logo_1=require("../v3/logo"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),HERO_ORANGE="#f97316",propsSchema=(0,template_utils_1.definePropsSchema)({color:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0}}},size:{type:"string",required:!1,meta:{constraints:{oneOf:["composite","m-33","m0","m0saic-pattern","m-33_bitmap"]}}},animation:{type:"string",required:!1,meta:{constraints:{oneOf:["loading_ui_v2","logo_loop","progress_fill","loading_shimmer"]}}},blendInSec:{type:"number",required:!1,meta:{constraints:{min:.01,max:10}}},blendDelaySec:{type:"number",required:!1,meta:{constraints:{min:0,max:10}}},blendFeather:{type:"number",required:!1,meta:{constraints:{min:0,max:.1}}},feather:{type:"number",required:!1,meta:{constraints:{min:0,max:.2}}},shimmerSec:{type:"number",required:!1,meta:{constraints:{min:.1,max:60}}},shimmerWidth:{type:"number",required:!1,meta:{constraints:{min:.01,max:1}}},progress:{type:"number",required:!1,meta:{constraints:{min:0,max:1}}},progressSec:{type:"number",required:!1,meta:{constraints:{min:.1,max:60}}},oneShot:{type:"boolean",required:!1},rankSet:{type:"string",required:!1,meta:{constraints:{oneOf:["diag","cascade","radial"]}}},loopSec:{type:"number",required:!1,meta:{constraints:{min:.1,max:60}}},inEnd:{type:"number",required:!1,meta:{constraints:{min:1e-4,max:1}}},outStart:{type:"number",required:!1,meta:{constraints:{min:0,max:.9999}}},startDelay:{type:"number",required:!1,meta:{constraints:{min:0,max:.9}}},endDelay:{type:"number",required:!1,meta:{constraints:{min:0,max:.9}}},easing:{type:"string",required:!1,meta:{constraints:{oneOf:["linear","smoothstep"]}}}}),ANIMATION_HANDLES={loading_ui_v2:["shimmerSec","shimmerWidth","feather"],loading_shimmer:["shimmerSec","shimmerWidth","feather"],progress_fill:["progress","progressSec","feather"],logo_loop:["loopSec","inEnd","outStart","startDelay","endDelay","feather"]},BLEND_HANDLES=["blendInSec","blendDelaySec","blendFeather"];function bindMarkHandles(o,e,a=[]){var t,n,d,c;const i=(t=o.sources)!==null&&t!==void 0?t:[];if(((d=(n=i[0])===null||n===void 0?void 0:n.engine)===null||d===void 0?void 0:d.renderStatus)==="error")return;const r=["color",...(c=ANIMATION_HANDLES[e])!==null&&c!==void 0?c:[],...a].map(s=>({propKey:s}));for(const s of i)s.type==="lavfi"&&(0,canvas_handles_1.withAddHandles)(s,r)}h(bindMarkHandles,"bindMarkHandles");function buildRectFadeAlphaExpr(o){const{fps:e,delaySec:a,inSec:t,feather:n}=o,d=`gte(t,1/${e})`,i=`mod(t,${`(${a}+2*${t})`})`,r=`((${i}-${a})/${t})`,s=`(1-((${i}-(${a}+${t}))/${t}))`,l=`min(max(${`if(lt(${i},${a}),0, if(lt(${i},${a}+${t}), ${r}, ${s}))`},0),1)`,u=`(${l})*(${l})*(3-2*(${l}))`,p=.35,f=`max(min((${`(${p}) + (${.85}-${p})*(${u})`})+${n},1),0)`;return`${d}*(${f})`}h(buildRectFadeAlphaExpr,"buildRectFadeAlphaExpr"),exports.TheMosaicMV4={id:(0,types_1.asTemplateId)("@m0saic/brand/logo/v4"),version:4,lattice:{mode:"bitmap"},capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},fps:30,durationMs:3200,width:1080,height:1080,posterTimeMs:600},propsSchema,bindings:{unbound:{loopSec:"logo_loop animation",inEnd:"logo_loop animation",outStart:"logo_loop animation",startDelay:"logo_loop animation",endDelay:"logo_loop animation",progress:"progress_fill animation",progressSec:"progress_fill animation",blendInSec:"composite entry",blendDelaySec:"composite entry",blendFeather:"composite entry"}},defaultProps:{rankSet:"diag",color:HERO_ORANGE,size:"m-33",animation:"loading_ui_v2",blendDelaySec:.15,blendInSec:1.2,blendFeather:0,feather:.02,shimmerSec:1.2,shimmerWidth:.18,progressSec:2,oneShot:!1,loopSec:3.2,inEnd:.25,outStart:.75,startDelay:.1,endDelay:.2,easing:"smoothstep"},async render(o,e){var a,t,n,d,c,i,r;const s=(a=o.color)!==null&&a!==void 0?a:this.defaultProps.color,m=(t=o.animation)!==null&&t!==void 0?t:this.defaultProps.animation,l=(n=o.size)!==null&&n!==void 0?n:"m-33";if(l==="m-33"||l==="m0"||l==="m0saic-pattern"||l==="m-33_bitmap"){const y=await logo_1.TheMosaicMV3Base.render({...o,color:s,size:l,animation:m},e);return l!=="m-33_bitmap"&&bindMarkHandles(y,m),y}const u=(d=o.blendDelaySec)!==null&&d!==void 0?d:this.defaultProps.blendDelaySec,p=(c=o.blendInSec)!==null&&c!==void 0?c:this.defaultProps.blendInSec,g=(i=o.blendFeather)!==null&&i!==void 0?i:this.defaultProps.blendFeather;if(!(p>0))return(0,template_utils_1.makeErrorMosaic)(`blendInSec must be > 0 (got ${p})`,{title:`${this.id} props`,width:e.output.width,height:e.output.height});const _={...o,color:s,size:"m-33_bitmap",animation:m},f=await logo_1.TheMosaicMV3Base.render(_,e),S={...o,color:s,size:"m-33",animation:m},b=await logo_1.TheMosaicMV3Base.render(S,e);bindMarkHandles(b,m,BLEND_HANDLES);const v=buildRectFadeAlphaExpr({fps:e.output.fps,delaySec:u,inSec:p,feather:g});return{kind:"mosaic_document",version:1,assets:{},m0:(0,dsl_stdlib_1.toM0String)("F{F}","LogoRunner"),children:{bitmap:f,rects:b},sources:[{type:"mosaic",ref:"bitmap"},{type:"mosaic",ref:"rects",overlay:{alpha:v}}],size:(r=f.size)!==null&&r!==void 0?r:b.size,format:{kind:"video",container:"mp4"},audio:{mode:"off"}}},async renderCover(o,e){var a;const t=(0,onboarding_cover_1.brandedCoverHeroBox)(e,"band"),n=Math.max(2,Math.round(Math.min(t.width,t.height)*.86)),d={width:n,height:n,fps:e.target.fps,durationMs:e.target.durationMs},c=await logo_1.TheMosaicMV3Base.render({color:HERO_ORANGE,size:"m-33",__static:!0},{...e,target:d,output:{...e.output,width:n,height:n}}),i={m0:String(c.m0),sources:(a=c.sources)!==null&&a!==void 0?a:[]},r=h(u=>Math.max(1,Math.round(u/4)),"u"),s=Math.max(1,Math.round((t.width-n)/2)),m=Math.max(1,Math.round((t.height-n)/2)),l=(0,onboarding_cover_1.onboardingSplit)("row",[r(m),r(n),r(m)],[null,(0,onboarding_cover_1.onboardingSplit)("col",[r(s),r(n),r(s)],[null,i,null]),null]);return(0,onboarding_cover_1.buildBrandedCover)({ctx:e,variant:"band",copy:{productName:"Brand Marks",title:"The m0saic brand marks."},hero:h(u=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.onboardingOverlay)((0,onboarding_cover_1.onboardingSolid)("#12111F"),l),u.borderStrong),"hero")})}},(0,template_utils_1.registerTemplate)(exports.TheMosaicMV4);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var xe=Object.defineProperty;var r=(t,e)=>xe(t,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.ChartsBarGraphV3=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),canvas_handles_1=require("../../../_shared/canvas-handles"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),DEFAULT_RENDER_MODE="premium",DEFAULT_ORIENTATION="vertical",DEFAULT_PRESET="neutral",DEFAULT_GAP=.18,DEFAULT_PADDING=72,DEFAULT_CORNER_RADIUS=.15,DEFAULT_BAR_COLOR="#f97316",DEFAULT_GRID={show:!0,count:5},DEFAULT_BASELINE={show:!0},DEFAULT_VALUE_AXIS={show:!0},DEFAULT_VALUE_LABELS={show:!0,format:"compact",decimals:0,suffix:""},DEFAULT_ANIM={intro:{durationSec:1.1,delaySec:.1,staggerSec:.06,ease:"smoothstep"},reduceMotion:!1},Q=100,HEIGHT_STEP=4;function tokensFor(t){switch(t){case"dark":return{bg:"#0b0f14",card:"#0f172a",border:"#ffffff",borderAlpha:.1,bar:"#f97316",title:"#f1f5f9",subtitle:"#94a3b8",category:"#cbd5e1",tick:"#94a3b8",grid:"#ffffff",gridOpacity:.12,axis:"#ffffff",axisOpacity:.45};case"terminal":return{bg:"#050505",card:"#0b0b0b",border:"#22c55e",borderAlpha:.18,bar:"#22c55e",title:"#22c55e",subtitle:"#15803d",category:"#22c55e",tick:"#15803d",grid:"#22c55e",gridOpacity:.12,axis:"#22c55e",axisOpacity:.4};case"glass":return{bg:"#0b0f14",card:"#111827",border:"#ffffff",borderAlpha:.12,bar:"#60a5fa",title:"#f1f5f9",subtitle:"#cbd5e1",category:"#cbd5e1",tick:"#94a3b8",grid:"#ffffff",gridOpacity:.12,axis:"#ffffff",axisOpacity:.45};case"paper":return{bg:"#f8fafc",card:"#ffffff",border:"#0f172a",borderAlpha:.1,bar:"#f97316",title:"#0f172a",subtitle:"#475569",category:"#334155",tick:"#64748b",grid:"#0f172a",gridOpacity:.1,axis:"#0f172a",axisOpacity:.4};case"neutral":default:return{bg:"#0b0f14",card:"#0f172a",border:"#ffffff",borderAlpha:.1,bar:"#f97316",title:"#f1f5f9",subtitle:"#94a3b8",category:"#cbd5e1",tick:"#94a3b8",grid:"#ffffff",gridOpacity:.12,axis:"#ffffff",axisOpacity:.45}}}r(tokensFor,"tokensFor");function localThemeFromTokens(t){return{surfaceApp:t.bg,surface:t.card,surfaceRaised:t.card,surfaceInset:t.bg,border:t.border,borderStrong:t.border,textPrimary:t.title,textSecondary:t.subtitle,textMuted:t.category,eyebrow:t.tick,accent:t.bar,accentSoft:t.bar,accentGlow:t.bar,positive:"#16a34a",negative:"#dc2626",grid:t.grid,gridAlpha:t.gridOpacity,axis:t.axis,axisAlpha:t.axisOpacity,radius:DEFAULT_CORNER_RADIUS,dataPalette:[t.bar]}}r(localThemeFromTokens,"localThemeFromTokens");function niceAxis(t,e,a){if(e===t)return{min:t,max:e+1,step:1,ticks:[t,e+1]};const d=Math.abs(e-t)/Math.max(1,a-1),i=!Number.isFinite(d)||d<=0?1:(0,dsl_stdlib_1.niceNum)(d,[1,2,2.5,5]),f=Math.floor(t/i)*i,h=Math.ceil(e/i)*i,p=[],v=i*1e-6;for(let c=f;c<=h+v;c+=i)p.push(Number(c.toFixed(6)));return{min:f,max:h,step:i,ticks:p}}r(niceAxis,"niceAxis");function formatCompact(t,e){const a=Math.abs(t),o=t<0?"-":"";return a>=1e12?o+(a/1e12).toFixed(e)+"T":a>=1e9?o+(a/1e9).toFixed(e)+"B":a>=1e6?o+(a/1e6).toFixed(e)+"M":a>=1e3?o+(a/1e3).toFixed(e)+"K":o+a.toFixed(e)}r(formatCompact,"formatCompact");function formatValue(t,e,a){let o;switch(e.format){case"raw":o=t.toFixed(e.decimals);break;case"percent":o=a===0?0 .toFixed(e.decimals)+"%":(t/a*100).toFixed(e.decimals)+"%";break;case"compact":default:o=formatCompact(t,e.decimals);break}return e.suffix?`${o}${e.suffix}`:o}r(formatValue,"formatValue");const EMPTY={m0:"-",sources:[]},paint=r(t=>({m0:"F",sources:[t]}),"paint"),SPLIT_BASIS_CAP=120;function split(t,e){const a=e.filter(i=>i.weight>0);if(a.length===0)return EMPTY;if(a.length===1)return a[0].node;const o=a.map(i=>Math.max(1,Math.round(i.weight)));return{m0:String((0,dsl_stdlib_1.weightedSplit)((0,template_utils_1.latticeWeights)(o,{cap:SPLIT_BASIS_CAP}),t,{claimants:a.map(i=>i.node.m0)})),sources:a.flatMap(i=>i.node.sources)}}r(split,"split");const rowSplit=r(t=>split("row",t),"rowSplit"),colSplit=r(t=>split("col",t),"colSplit");function overlay(t){const e=t.filter(o=>o.sources.length>0||o.m0!=="-");if(e.length===0)return EMPTY;if(e.length===1)return e[0];let a=e[e.length-1].m0;for(let o=e.length-2;o>=0;o--)a=`${e[o].m0}{${a}}`;return{m0:a,sources:e.flatMap(o=>o.sources)}}r(overlay,"overlay");function insetNode(t,e,a,o,d,i,f){const h=colSplit([{weight:d,node:EMPTY},{weight:i-d-a,node:t},{weight:a,node:EMPTY}]);return rowSplit([{weight:e,node:EMPTY},{weight:f-e-o,node:h},{weight:o,node:EMPTY}])}r(insetNode,"insetNode");function textCell(t,e,a,o="center",d="middle",i,f){const h={fit:"contain",hAlign:o,vAlign:d};i&&(h.padding=i);const p={type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:t||" "},style:{fontSize:e,fontColor:a},placement:h}]};return f&&(p.overlay=f),p}r(textCell,"textCell");function titleSubtitleCell(t){const e=[];t.title&&e.push({content:{kind:"literal",text:t.title},style:{fontSize:t.titleFont,fontColor:t.titleColor},placement:{fit:"contain",hAlign:"center",vAlign:t.subtitle?"top":"middle"}}),t.subtitle&&e.push({content:{kind:"literal",text:t.subtitle},style:{fontSize:t.subFont,fontColor:t.subColor},placement:{fit:"contain",hAlign:"center",vAlign:t.title?"bottom":"middle"}});const a=(0,template_utils_1.tag)({type:"text",visual:{backgroundColor:"black@0"},layers:e},"chart-header");return t.title&&t.subtitle?(0,template_utils_1.bindProps)(a,[{propKey:"titles.title",layer:0},{propKey:"titles.subtitle",layer:1}]):(0,template_utils_1.bindProp)(a,t.title?"titles.title":"titles.subtitle")}r(titleSubtitleCell,"titleSubtitleCell");function easeExpr(t,e){return t==="linear"?e:`(${e})*(${e})*(3-2*(${e}))`}r(easeExpr,"easeExpr");function barNode(t,e,a,o,d,i,f,h="y",p=0){const v=p>0?{placement:{inset:h==="y"?{x:p}:{y:p}}}:{};if(i)return paint((0,template_utils_1.bindProp)((0,template_utils_1.tag)((0,template_utils_1.makeColorTile)(t,{...v}),"bar"),"values",e));const c=easeExpr(d,(0,template_utils_1.u01)(o));let S;return f?S=h==="y"?{startAtSec:a,alpha:c,yExpr:`h*(1-(${c}))`}:{startAtSec:a,alpha:c,xExpr:`-(w*(1-(${c})))`}:S=h==="y"?{startAtSec:a,yExpr:`h*(1-(${c}))`}:{startAtSec:a,xExpr:`-(w*(1-(${c})))`},paint((0,template_utils_1.bindProp)((0,template_utils_1.tag)((0,template_utils_1.makeColorTile)(t,{overlay:S,...v}),"bar"),"values",e))}r(barNode,"barNode");const gapInsetFrac=r(t=>t/(2*(1+t)),"gapInsetFrac");function edgeStrip(t,e,a){return{type:"lavfi",color:t,fitMode:"content",visual:{opacity:e},size:a==="top"||a==="bottom"?{wExpr:"TW",hExpr:"max(1,TH*0.004)"}:{wExpr:"max(1,TW*0.004)",hExpr:"TH"},placement:{fit:"contain",hAlign:a==="left"?"left":a==="right"?"right":"center",vAlign:a==="top"?"top":a==="bottom"?"bottom":"middle"}}}r(edgeStrip,"edgeStrip");const snap=r((t,e)=>Math.max(e,Math.round(t/e)*e),"snap");function tickRailNode(t,e,a,o,d=3){var i;const f=r(c=>paint(o==="row"?(0,template_utils_1.tag)(textCell(c,e,a,"right","middle",{right:.18}),"axis-tick"):(0,template_utils_1.tag)(textCell(c,e,a,"center","top"),"axis-tick")),"mk"),h=t.length;if(h<=1)return f((i=t[0])!==null&&i!==void 0?i:"");const p=20,v=[];for(let c=0;c<h;c++)v.push({weight:d,node:f(t[c])}),c<h-1&&v.push({weight:p,node:EMPTY});return split(o,v)}r(tickRailNode,"tickRailNode");const bBool=r(()=>({type:"boolean",required:!1}),"bBool"),bStr=r(()=>({type:"string",required:!1}),"bStr"),bNum=r((t,e)=>({type:"number",required:!1,...t||e?{meta:{...e?{constraints:e}:{},...t?{control:t}:{}}}:{}}),"bNum"),bFrac=r(()=>bNum({flavor:"slider",step:.01},{min:0,max:1}),"bFrac"),bEnum=r(t=>({type:"string",required:!1,meta:{constraints:{oneOf:t}}}),"bEnum"),propsSchema=(0,template_utils_1.definePropsSchema)({values:{type:"number[]",required:!0,meta:{constraints:{minItems:1},control:{flavor:"numberList"}}},labels:{type:"string[]",required:!1},domain:{type:"group",required:!1,fields:{minValue:bNum(),maxValue:bNum()}},layout:{type:"group",required:!1,fields:{orientation:bEnum(["vertical","horizontal"]),gap:bFrac(),padding:bNum(void 0,{min:0,max:512}),barThickness:bNum(void 0,{min:1,max:4096}),cornerRadius:bFrac()}},appearance:{type:"group",required:!1,fields:{preset:bEnum(["neutral","dark","terminal","glass","paper"]),barColor:{type:"json",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0}}}}},grid:{type:"group",required:!1,fields:{show:bBool(),count:bNum(void 0,{min:1,max:20})}},baseline:{type:"group",required:!1,fields:{show:bBool()}},valueAxis:{type:"group",required:!1,fields:{show:bBool()}},valueLabels:{type:"group",required:!1,fields:{show:bBool(),format:bEnum(["raw","percent","compact"]),decimals:bNum(void 0,{min:0,max:6}),suffix:bStr()}},titles:{type:"group",required:!1,fields:{title:{type:"string",required:!1},subtitle:{type:"string",required:!1}}},anim:{type:"group",required:!1,fields:{renderMode:bEnum(["premium","light"]),reduceMotion:bBool(),intro:{type:"group",required:!1,fields:{durationSec:bNum(),delaySec:bNum(),staggerSec:bNum(),ease:bEnum(["linear","smoothstep","easeInOut"])}}}},theme:{type:"group",required:!1,fields:{slug:bStr(),preset:bStr(),namespace:bStr(),forceFetch:bBool()}},debugLayout:{type:"boolean",required:!1}});exports.ChartsBarGraphV3={id:(0,types_1.asTemplateId)("@m0saic/charts/bar-graph/v3"),version:3,capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},width:1920,height:1080,fps:30,durationMs:2e3,posterTimeMs:1900},propsSchema,bindings:{unbound:{"layout.gap":"geometry","appearance.barColor":"single value (a list binds per bar)","anim.intro.durationSec":"timing","anim.intro.delaySec":"timing","anim.intro.staggerSec":"timing","theme.slug":"theme source","theme.preset":"theme source","theme.namespace":"theme source"}},defaultProps:{domain:{minValue:0},debugLayout:!1,theme:{forceFetch:!1},values:[35,60,85,45,70],labels:["Jan","Feb","Mar","Apr","May"],layout:{orientation:DEFAULT_ORIENTATION,gap:DEFAULT_GAP,padding:DEFAULT_PADDING,barThickness:void 0,cornerRadius:DEFAULT_CORNER_RADIUS},appearance:{preset:DEFAULT_PRESET,barColor:DEFAULT_BAR_COLOR},grid:DEFAULT_GRID,baseline:DEFAULT_BASELINE,valueAxis:DEFAULT_VALUE_AXIS,valueLabels:DEFAULT_VALUE_LABELS,anim:{renderMode:DEFAULT_RENDER_MODE,...DEFAULT_ANIM}},async render(t,e){var a,o,d,i,f,h,p,v,c,S,ht,ft,mt,bt,pt,gt,xt,yt,Mt,vt,wt,_t,At,Et;const P=Math.max(1,Math.round(e.target.width)),x=Math.max(1,Math.round(e.target.height));if(!Array.isArray(t.values)||t.values.length===0)return Promise.resolve((0,template_utils_1.makeIncompleteMosaic)("Add a value \u2014 one number per bar.",{title:"Bar Graph",width:P,height:x}));const k=(a=t.layout)!==null&&a!==void 0?a:{},C=(o=t.appearance)!==null&&o!==void 0?o:{},Z=(d=t.domain)!==null&&d!==void 0?d:{},T=(i=t.titles)!==null&&i!==void 0?i:{},Dt=(f=k.orientation)!==null&&f!==void 0?f:DEFAULT_ORIENTATION,It=tokensFor((h=C.preset)!==null&&h!==void 0?h:DEFAULT_PRESET),s=await(0,template_utils_1.resolveThemeTokens)(localThemeFromTokens(It),e,t.theme),$t=Math.max(0,(p=k.gap)!==null&&p!==void 0?p:DEFAULT_GAP),D=(v=k.padding)!==null&&v!==void 0?v:DEFAULT_PADDING,le=(c=k.cornerRadius)!==null&&c!==void 0?c:DEFAULT_CORNER_RADIUS,Gt={...DEFAULT_BASELINE,...(S=t.baseline)!==null&&S!==void 0?S:{}},Wt={...DEFAULT_VALUE_AXIS,...(ht=t.valueAxis)!==null&&ht!==void 0?ht:{}},L={...DEFAULT_GRID,...(ft=t.grid)!==null&&ft!==void 0?ft:{}},H={...DEFAULT_VALUE_LABELS,...(mt=t.valueLabels)!==null&&mt!==void 0?mt:{}},w={intro:{...DEFAULT_ANIM.intro,...(pt=(bt=t.anim)===null||bt===void 0?void 0:bt.intro)!==null&&pt!==void 0?pt:{}},reduceMotion:(xt=(gt=t.anim)===null||gt===void 0?void 0:gt.reduceMotion)!==null&&xt!==void 0?xt:!1},tt=((Mt=(yt=t.anim)===null||yt===void 0?void 0:yt.renderMode)!==null&&Mt!==void 0?Mt:DEFAULT_RENDER_MODE)==="premium",I=t.values,j=I.length,Kt=Array.isArray(C.barColor)?C.barColor.length?C.barColor:s.dataPalette:[(vt=C.barColor)!==null&&vt!==void 0?vt:s.dataPalette[0]],zt=r(n=>Kt[n%Kt.length],"barColorAt"),jt=(wt=Z.minValue)!==null&&wt!==void 0?wt:0,Xt=(_t=Z.maxValue)!==null&&_t!==void 0?_t:Math.max(...I),ce=Z.minValue!=null&&Z.maxValue!=null;let $=jt,A=Xt,y=Math.max(1,L.count);if(!ce){const n=niceAxis(jt,Xt,L.count+1);$=n.min,A=n.max,y=Math.max(1,n.ticks.length-1)}const Yt=A-$,Jt=I.map(n=>Yt===0?1:Math.max(0,Math.min(1,(n-$)/Yt))),G=P-2*D,kt=x-2*D;if(G<16||kt<16)return Promise.resolve((0,template_utils_1.makeErrorMosaic)("padding consumes the whole canvas",{title:`${this.id}`,width:P,height:x}));const Qt=r((n,g,m)=>Math.max(m,Math.min(n,Math.floor(G*.96/(Math.max(1,(0,template_utils_1.textEmUnits)(g??""))*.72)))),"capHdr"),Ct=Qt(Math.max(12,Math.round(x*.046)),T.title,12),Zt=Qt(Math.max(10,Math.round(x*.022)),T.subtitle,10),W=Math.max(10,Math.round(x*.018)),Tt=Math.max(10,Math.round(x*.02)),et=Math.max(9,Math.round(x*.016)),te=!!(T.title&&T.title.trim()),Ft=!!(T.subtitle&&T.subtitle.trim()),St=te||Ft,at=St?Math.round((Ft?Ct*1.2+Zt*1.5:Ct*1.5)+x*.012):0,E=!!(t.labels&&t.labels.length>0),ee=E?Math.round(W*1.9):0,ae=E?Math.max(1,...t.labels.map(n=>(0,template_utils_1.textEmUnits)(n??""))):1,oe=Math.max(1,...I.map(n=>(0,template_utils_1.textEmUnits)(formatValue(n,H,A))));let Pt=!1;const re=St?paint(titleSubtitleCell({title:te?T.title:void 0,subtitle:Ft?T.subtitle:void 0,titleFont:Ct,subFont:Zt,titleColor:s.textPrimary,subColor:s.textSecondary})):EMPTY;let Lt;const ot={},ie=r((n,g)=>(ot[n]={kind:"mosaic_document",version:1,assets:{},m0:g.m0,sources:g.sources,fps:e.target.fps,durationMs:e.target.durationMs},{m0:"F",sources:[{type:"mosaic",ref:n}]}),"wrapAsChild");if(Dt==="vertical"){const n=kt-at-ee;if(n<8)return Promise.resolve((0,template_utils_1.makeErrorMosaic)("plot area too small after bands",{title:`${this.id}`,width:P,height:x}));const g=L.show&&y>=1,m=g?Math.max(Math.round(G*.06),et*3):0,F=G-m;if(F<4)return Promise.resolve((0,template_utils_1.makeErrorMosaic)("plot area too narrow after the tick rail",{title:`${this.id}`,width:P,height:x}));const _=F/j,K=k.barThickness!=null?Math.max(0,(1-Math.min(1,k.barThickness/_))/2):gapInsetFrac($t),U=_*(1-2*K),X=_-U,qt=E?Math.max(9,Math.min(W,Math.floor((U+X)*.94/(ae*.62)))):W,rt=r(l=>(0,template_utils_1.fitEmUnits)(l,Math.max(2,(U+X)*.94/(qt*.62))),"fitCatV"),it=Math.max(9,Math.min(Tt,Math.floor((U+X)*.9/(oe*.62)))),V=H.show?snap(it*1.4/n*Q,HEIGHT_STEP):0,Y=r(l=>Array.from({length:j},(M,B)=>({weight:1,node:l(B)})),"columnBands"),Nt=colSplit(Y(r(l=>{let M=snap(Jt[l]*Q,HEIGHT_STEP);M=Math.min(Q-HEIGHT_STEP,Math.max(HEIGHT_STEP,M));const B=w.intro.delaySec+l*w.intro.staggerSec,O=w.intro.durationSec,Ot=w.reduceMotion?void 0:tt?{startAtSec:B+O*.5,alpha:(0,template_utils_1.u01)(Math.max(.1,O*.5))}:{enable:`gte(t,${(B+O*.5).toFixed(3)})`},u=Q-M,b=V>0&&u>V?V:0;return b>0&&(Pt=!0),rowSplit([{weight:u-b,node:EMPTY},...b>0?[{weight:b,node:paint((0,template_utils_1.bindProp)((0,template_utils_1.tag)(textCell(formatValue(I[l],H,A),it,s.textPrimary,"center","bottom",void 0,Ot),"value-label"),"values",l))}]:[],{weight:M,node:barNode(zt(l),l,B,O,w.intro.ease,w.reduceMotion,tt,"y",K)}])},"barColumn"))),q=[...(L.show&&y>1?(0,template_utils_1.buildGridlineSources)({direction:"horizontal",count:y,excludeEdges:!1,origin:"bottom",color:s.grid,opacity:s.gridAlpha,thicknessFrac:.0025}).slice(1):[]).map(l=>paint(l)),Nt];Wt.show&&q.push(paint(edgeStrip(s.axis,s.axisAlpha,"left"))),Gt.show&&q.push(paint(edgeStrip(s.axis,s.axisAlpha,"bottom")));const Rt=overlay(q),nt=Array.from({length:y+1},(l,M)=>formatValue(A-M/y*(A-$),H,A)),st=Math.max(1,...nt.map(l=>(0,template_utils_1.textEmUnits)(l))),Bt=Math.max(8,Math.min(et,Math.floor(m*.78/(st*.62)))),lt=g?tickRailNode(nt,Bt,s.eyebrow,"row"):EMPTY,z=ie("plot",Rt),N=m>0?colSplit([{weight:m,node:lt},{weight:F,node:z}]):z,R=E?colSplit(Y(l=>{var M;return paint((0,template_utils_1.bindProp)((0,template_utils_1.tag)(textCell(rt((M=t.labels[l])!==null&&M!==void 0?M:""),qt,s.textMuted,"center","middle"),"cat-label"),"labels",l))})):EMPTY,ct=E&&m>0?colSplit([{weight:m,node:EMPTY},{weight:F,node:R}]):R;Lt=rowSplit([{weight:at,node:re},{weight:n,node:N},{weight:ee,node:ct}])}else{const n=L.show&&y>=1,g=n?Math.round(et*1.8):0,m=E?Math.max(Math.round(G*.1),W*4):0,F=kt-at-g,_=G-m;if(F<8||_<8)return Promise.resolve((0,template_utils_1.makeErrorMosaic)("plot area too small after bands",{title:`${this.id}`,width:P,height:x}));const K=F/j,U=k.barThickness!=null?Math.max(0,(1-Math.min(1,k.barThickness/K))/2):gapInsetFrac($t),X=K*(1-2*U),qt=K-X,rt=E?Math.max(9,Math.min(W,Math.floor(m*.86/(ae*.62)))):W,it=r(u=>(0,template_utils_1.fitEmUnits)(u,Math.max(2,m*.86/(rt*.62))),"fitCatH"),V=H.show?Math.min(40,snap(Tt*(oe*.62+.8)/_*Q,HEIGHT_STEP)):0,Y=r(u=>Array.from({length:j},(b,J)=>({weight:1,node:u(J)})),"rowBands"),Nt=rowSplit(Y(r(u=>{let b=snap(Jt[u]*Q,HEIGHT_STEP);b=Math.min(Q-HEIGHT_STEP,Math.max(HEIGHT_STEP,b));const J=w.intro.delaySec+u*w.intro.staggerSec,dt=w.intro.durationSec,ge=w.reduceMotion?void 0:tt?{startAtSec:J+dt*.5,alpha:(0,template_utils_1.u01)(Math.max(.1,dt*.5))}:{enable:`gte(t,${(J+dt*.5).toFixed(3)})`},se=Q-b,ut=V>0&&se>V?V:0;return ut>0&&(Pt=!0),colSplit([{weight:b,node:barNode(zt(u),u,J,dt,w.intro.ease,w.reduceMotion,tt,"x",U)},...ut>0?[{weight:ut,node:paint((0,template_utils_1.bindProp)((0,template_utils_1.tag)(textCell(formatValue(I[u],H,A),Tt,s.textPrimary,"left","middle",{left:.15},ge),"value-label"),"values",u))}]:[],{weight:se-ut,node:EMPTY}])},"barRow"))),q=[...(L.show&&y>1?(0,template_utils_1.buildGridlineSources)({direction:"vertical",count:y,excludeEdges:!1,origin:"left",color:s.grid,opacity:s.gridAlpha,thicknessFrac:.0025}).slice(1):[]).map(u=>paint(u)),Nt];Wt.show&&q.push(paint(edgeStrip(s.axis,s.axisAlpha,"bottom"))),Gt.show&&q.push(paint(edgeStrip(s.axis,s.axisAlpha,"left")));const Rt=overlay(q),nt=E?rowSplit(Y(u=>{var b;return paint((0,template_utils_1.bindProp)((0,template_utils_1.tag)(textCell(it((b=t.labels[u])!==null&&b!==void 0?b:""),rt,s.textMuted,"right","middle",{right:.12}),"cat-label"),"labels",u))})):EMPTY,st=ie("plot",Rt),Bt=m>0?colSplit([{weight:m,node:nt},{weight:_,node:st}]):st,lt=Array.from({length:y+1},(u,b)=>formatValue($+b/y*(A-$),H,A)),z=Math.max(1,...lt.map(u=>(0,template_utils_1.textEmUnits)(u))),N=y+1;let R=et;const ct=Math.floor(_/N);let l=Math.ceil(z*.62*R)+2;l>ct&&(R=Math.max(8,Math.floor(ct/(z*.62))),l=Math.ceil(z*.62*R)+2);const M=_*3/(N*3+(N-1)*20),B=l<=M?3:Math.min(60,Math.ceil(l*(N-1)*20/Math.max(1,_-l*N))),O=n?tickRailNode(lt,R,s.eyebrow,"col",B):EMPTY,Ot=n&&m>0?colSplit([{weight:m,node:EMPTY},{weight:_,node:O}]):O;Lt=rowSplit([{weight:at,node:re},{weight:F,node:Bt},{weight:g,node:Ot}])}const de=paint((0,template_utils_1.bindProps)((0,template_utils_1.tag)((0,template_utils_1.makeColorTile)(s.surface,{effects:{rounding:{cornerStyle:"rounded",borderRadius:le},stroke:{position:"inner",width:.002,color:s.border,alpha:It.borderAlpha}}}),"card"),[{propKey:"layout.cornerRadius"},{propKey:"layout.padding"}])),Ht=overlay([de,insetNode(Lt,D,D,D,D,P,x)]),Ut=(0,canvas_handles_1.sourcesOfTree)(Ht.sources,ot),ue=r(n=>Array.isArray(C.barColor)&&C.barColor.length?[{propKey:"appearance.barColor",path:[n%C.barColor.length],kind:"color"}]:[],"barColorEntry");(0,canvas_handles_1.addHandlesByLabel)(Ut,{bar:r((n,g)=>[...ue(g),{propKey:"layout.barThickness"}],"bar"),"value-label":[{propKey:"valueLabels.suffix"},{propKey:"valueLabels.decimals"}],"axis-tick":[{propKey:"grid.count"},{propKey:"domain.minValue"},{propKey:"domain.maxValue"}]});const he=!!(!((At=t.titles)===null||At===void 0)&&At.title&&t.titles.title.trim()),fe=!!(!((Et=t.titles)===null||Et===void 0)&&Et.subtitle&&t.titles.subtitle.trim()),ne=[...he?[]:[{propKey:"titles.title"}],...fe?[]:[{propKey:"titles.subtitle"}]],Vt=(0,canvas_handles_1.firstLabelPresent)(Ut,["chart-header","cat-label","bar"]);Vt&&ne.length&&(0,canvas_handles_1.addHandlesByLabel)(Ut,{[Vt]:ne},{first:[Vt]});const me={kind:"mosaic_document",version:1,assets:{},m0:Ht.m0,sources:Ht.sources,...Object.keys(ot).length?{children:ot}:{},backgroundColor:s.surfaceApp,fps:e.target.fps,durationMs:e.target.durationMs};return Promise.resolve((0,template_utils_1.withLayoutContract)(me,e,{templateId:"@m0saic/charts/bar-graph/v3",relations:j>=2?[{label:"bar",equal:Dt==="vertical"?"width":"height",tolerance:.02,tolerancePx:1}]:[],constraints:[...St?[{label:"chart-header",textFits:{charWidthEm:.72}}]:[],...E?[{label:"cat-label",textFits:{charWidthEm:.62}}]:[],...Pt?[{label:"value-label",textFits:{charWidthEm:.62}}]:[],...L.show&&y>=1?[{label:"axis-tick",textFits:{charWidthEm:.62,padPx:0}}]:[]],debug:t.debugLayout===!0}))},async renderCover(t,e){const a=(0,onboarding_cover_1.brandedCoverHeroBox)(e,"band"),o={...e,target:{...e.target,width:a.width,height:a.height},output:{...e.output,width:a.width,height:a.height}},d=await exports.ChartsBarGraphV3.render({...exports.ChartsBarGraphV3.defaultProps,anim:{...exports.ChartsBarGraphV3.defaultProps.anim,reduceMotion:!0}},o);return(0,onboarding_cover_1.buildBrandedCover)({ctx:e,variant:"band",copy:{productName:"Bar Graph",title:"A bar chart."},hero:r(i=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(d),i.borderStrong),"hero"),heroAssets:d.assets,children:d.children})}},(0,template_utils_1.registerTemplate)(exports.ChartsBarGraphV3);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var a=Object.defineProperty;var r=(e,t)=>a(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.ChartsBarGraphV3=void 0;var bar_graph_1=require("./bar-graph");Object.defineProperty(exports,"ChartsBarGraphV3",{enumerable:!0,get:r(function(){return bar_graph_1.ChartsBarGraphV3},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var Ge=Object.defineProperty;var l=(e,t)=>Ge(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.DonutV5=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),geometry_1=require("../v3/geometry"),anim_1=require("../v3/anim"),canvas_handles_1=require("../../../_shared/canvas-handles"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),bBool=l(()=>({type:"boolean",required:!1}),"bBool"),bStr=l(()=>({type:"string",required:!1}),"bStr"),propsSchema=(0,template_utils_1.definePropsSchema)({segments:{type:"array",required:!0,meta:{control:{flavor:"objectRows",columns:[{label:"Label",key:"label",kind:"text",placeholder:"Segment"},{label:"Value",key:"value",kind:"number"},{label:"Color",key:"color",kind:"color"}],palette:["#f97316","#fdba74","#fb923c","#c2410c","#fed7aa","#57534e"]}}},centerValue:{type:"string",required:!1},centerLabel:{type:"string",required:!1},ringThicknessFrac:{type:"number",required:!1,meta:{constraints:{min:.05,max:.9},control:{flavor:"slider",step:.01}}},segmentLabels:{type:"string",required:!1,meta:{constraints:{oneOf:["none","percent"]}}},backgroundColor:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0}}},renderMode:{type:"string",required:!1,meta:{constraints:{oneOf:["premium","light"]}}},debugLayout:{type:"boolean",required:!1},useNestedBackgroundColor:{type:"boolean",required:!1,meta:{ui:{hidden:!0}}},theme:{type:"group",required:!1,fields:{slug:bStr(),preset:bStr(),namespace:bStr(),forceFetch:bBool()}},anim:{type:"group",required:!1,fields:{mode:{type:"string",required:!1,meta:{constraints:{oneOf:["sweep","fade"]}}},countUp:{type:"boolean",required:!1},introFrac:{type:"number",required:!1,meta:{constraints:{min:.1,max:1},control:{flavor:"slider",step:.05}}},introMs:{type:"number",required:!1,meta:{constraints:{min:0,max:2e4}}},easing:{type:"string",required:!1,meta:{constraints:{oneOf:["easeOut","smoothstep","easeInOut","linear"]}}},reduceMotion:{type:"boolean",required:!1}}}}),CARD_BG="#161b22",VALUE_COLOR="#f5f5f4",CAPTION_COLOR="#a8a29e",PALETTE=["#f97316","#fdba74","#fb923c","#c2410c","#fed7aa","#57534e"],LOCAL_THEME={surfaceApp:CARD_BG,surface:CARD_BG,surfaceRaised:CARD_BG,surfaceInset:CARD_BG,border:"#30363d",borderStrong:"#30363d",textPrimary:VALUE_COLOR,textSecondary:CAPTION_COLOR,textMuted:CAPTION_COLOR,eyebrow:CAPTION_COLOR,accent:PALETTE[0],accentSoft:PALETTE[0],accentGlow:PALETTE[0],positive:"#16a34a",negative:"#dc2626",grid:"#30363d",gridAlpha:1,axis:"#30363d",axisAlpha:1,radius:0,dataPalette:PALETTE},RADIUS_SCALE=.92,DEFAULT_THICKNESS_FRAC=.36,GAP_DEG=0,VALUE_FONT_FRAC=.3,CAPTION_FONT_FRAC=.095,SEG_LABEL_FONT_FRAC=.42,SEG_LABEL_MIN_SWEEP_DEG=14,SEG_LABEL_LIGHT="#f0f6f1",SEG_LABEL_DARK="#10141a",EDGE_PAD=1.5,SLIVER_OVERLAP_DEG=2.5,SLIVER_CROSS_DEG=.75,SWEEP_DIVISIONS=96,clampInt=l((e,t,n)=>Math.max(t,Math.min(n,Math.round(e))),"clampInt");function placePiece(e,t,n,s,c){const u=l(k=>Math.floor((k-EDGE_PAD)/n)*n,"snapDown"),p=l(k=>Math.ceil((k+EDGE_PAD)/n)*n,"snapUp"),h=clampInt(u(s.minX),0,e-1),y=clampInt(u(s.minY),0,t-1),I=clampInt(p(s.maxX),h+n,e),q=clampInt(p(s.maxY),y+n,t);return{rect:{x:h,y,w:I-h,h:q-y,claimant:"F"},source:c(I-h,q-y,h,y)}}l(placePiece,"placePiece");function letterbox(e,t,n,s){const c=l(y=>(0,template_utils_1.latticeWeights)(y,{cap:100}),"cap"),u=Math.max(0,(n-t)/2),p=Math.max(0,(s-t)/2);let h=e;return u>=1&&(h=String((0,dsl_stdlib_1.weightedSplit)(c([u,t,u]),"col",{claimants:["-",h,"-"]}))),p>=1&&(h=String((0,dsl_stdlib_1.weightedSplit)(c([p,t,p]),"row",{claimants:["-",h,"-"]}))),h}l(letterbox,"letterbox");function selfFrame(e){const t=e/SWEEP_DIVISIONS;let n=null;for(const c of(0,template_utils_1.divisors)(e)){const u=e/c;if(c<4||u>200||!(0,template_utils_1.isSmooth)(u))continue;const p=Math.abs(Math.log(c/t));(!n||p<n.err)&&(n={P:c,err:p})}if(n&&n.err<=Math.log(1.5))return{P:n.P,S:e};const s=Math.max(4,Math.round(t));return{P:s,S:(0,template_utils_1.ceilToSmooth)(Math.ceil(e/s))*s}}l(selfFrame,"selfFrame");function cellText(e,t,n){return{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:e||" "},style:{fontSize:t,fontColor:n},placement:{hAlign:"center",vAlign:"middle"}}]}}l(cellText,"cellText");function cellExprText(e,t,n){return{type:"text",renderMode:{kind:"video"},visual:{backgroundColor:"black@0"},layers:[{content:{kind:"expr",expr:e,eval:"frame"},style:{fontSize:t,fontColor:n},placement:{hAlign:"center",vAlign:"middle"}}]}}l(cellExprText,"cellExprText");function fadeIn(e,t,n,s){var c;if(!s)return e;const u=(c=e.overlay)!==null&&c!==void 0?c:{};return{...e,overlay:{...u,alpha:(0,template_utils_1.fadeInExpr)(t,n)}}}l(fadeIn,"fadeIn");function textBBox(e,t,n,s){const c=Math.max(s,(0,template_utils_1.textEmUnits)(n)*s*.85+s),u=s*1.6;return{minX:e-c/2,minY:t-u/2,maxX:e+c/2,maxY:t+u/2}}l(textBBox,"textBBox");function holeCappedFont(e,t,n,s,c){return Math.max(t,Math.round(Math.min(e,s*c/(Math.max(1,(0,template_utils_1.textEmUnits)(n))*.62))))}l(holeCappedFont,"holeCappedFont");function fitToHole(e,t,n,s){const c=n*s/(.62*t);return(0,template_utils_1.textEmUnits)(e)<=c+.5?e:(0,template_utils_1.fitEmUnits)(e,Math.max(1,Math.floor(c)))}l(fitToHole,"fitToHole");function labelColorFor(e){const t=/^#?([0-9a-f]{6})/i.exec(String(e));if(!t)return SEG_LABEL_LIGHT;const n=parseInt(t[1],16);return(.2126*(n>>16&255)+.7152*(n>>8&255)+.0722*(n&255))/255>.6?SEG_LABEL_DARK:SEG_LABEL_LIGHT}l(labelColorFor,"labelColorFor"),exports.DonutV5={id:(0,types_1.asTemplateId)("@m0saic/charts/donut/v5"),version:5,capabilities:{tier:"core"},aspectRatio:{ideal:1,min:.6,max:1.8,mode:"warn"},outputHints:{format:{kind:"video",container:"mp4"},width:360,height:360,fps:30,durationMs:2e3,posterTimeMs:1900,note:"Square ring tile; the hero places it inside the panel's donut region"},propsSchema,bindings:{unbound:{backgroundColor:"document background","theme.slug":"theme source","theme.preset":"theme source","theme.namespace":"theme source","anim.introFrac":"timing","anim.introMs":"timing"}},defaultProps:{renderMode:"premium",debugLayout:!1,theme:{forceFetch:!1},segments:[{label:"Cache hits",value:44,color:"#f97316"},{label:"Re-rendered",value:28,color:"#fdba74"},{label:"Failed",value:28,color:"#57534e"}],centerValue:"1284",centerLabel:"m0saic renders",segmentLabels:"percent",ringThicknessFrac:DEFAULT_THICKNESS_FRAC,anim:{mode:"sweep",countUp:!0,introFrac:.7,easing:"easeOut",reduceMotion:!1}},async render(e,t){var n,s,c,u,p,h,y,I,q,k,ee,te,ne,ae,oe,re,se,ce,ie;const S=t.output.width,D=t.output.height;if(!Array.isArray(e.segments)||e.segments.length===0)return(0,template_utils_1.makeIncompleteMosaic)("Add a segment \u2014 a label and a value.",{title:"Donut",width:S,height:D});if(e.segments.length>geometry_1.MAX_SEGMENTS)throw new Error(`@m0saic/charts/donut/v5: at most ${geometry_1.MAX_SEGMENTS} segments`);const O=(n=e.ringThicknessFrac)!==null&&n!==void 0?n:DEFAULT_THICKNESS_FRAC;if(!Number.isFinite(O)||O<.05||O>.9)throw new Error(`@m0saic/charts/donut/v5: ringThicknessFrac must be in [0.05, 0.9], got ${O}`);const _=await(0,template_utils_1.resolveThemeTokens)(LOCAL_THEME,t,e.theme),P=(s=e.anim)!==null&&s!==void 0?s:{},W=(c=P.reduceMotion)!==null&&c!==void 0?c:!1,le=(u=P.mode)!==null&&u!==void 0?u:"sweep",N=(p=P.easing)!==null&&p!==void 0?p:"easeOut",we=t.target.durationMs/1e3,d=P.introMs!=null?P.introMs/1e3:we*((h=P.introFrac)!==null&&h!==void 0?h:.7),w=!W&&d>0,b=(0,geometry_1.segmentsToAngles)(e.segments.map(a=>a.value),{gapDeg:GAP_DEG}),X=l(a=>{var o;return(o=e.segments[a].color)!==null&&o!==void 0?o:_.dataPalette[a%_.dataPalette.length]},"segColor"),be=((y=e.backgroundColor)!==null&&y!==void 0?y:"").trim(),Ae=be.toLowerCase()==="none"?void 0:be||_.surface,$=e.useNestedBackgroundColor===!0?Ae:void 0,ve=((I=e.segmentLabels)!==null&&I!==void 0?I:"none")==="percent"&&b.some(a=>a.endDeg-a.startDeg>=SEG_LABEL_MIN_SWEEP_DEG);if(((q=e.renderMode)!==null&&q!==void 0?q:"premium")==="light"){const a=S/2,o=D/2,r=Math.min(S,D)/2*RADIUS_SCALE,i=r*(1-O),v=2*i,E=w?Math.max(.1,d*.32):0,M=l((m,g)=>w?{alpha:(0,template_utils_1.fadeInExpr)(m,g)}:{},"fadeAt"),C=l((m,g)=>g&&Object.keys(g).length?{...m,overlay:{...m.overlay,...g}}:m,"withOverlay"),L=l((m,g)=>({xExpr:`(W*${m.toFixed(5)})-(W/2)`,yExpr:`(H*${g.toFixed(5)})-(H/2)`}),"centerAt"),x=[];$&&x.push((0,template_utils_1.bindProp)((0,template_utils_1.makeColorTile)($),"backgroundColor"));for(let m=0;m<b.length;m++){const g=b[m];if(g.endDeg-g.startDeg<=1e-4)continue;const F=(0,geometry_1.annularSectorPath)({cx:a,cy:o,rOuter:r,rInner:i,startDeg:g.startDeg,endDeg:g.endDeg}),T=(0,canvas_handles_1.withAddHandles)((0,template_utils_1.bindPropPath)((0,template_utils_1.tag)((0,template_utils_1.makeColorTile)(X(m),{mask:{kind:"inline-mask",localPath:F,bounds:{x:0,y:0,width:S,height:D}}}),"sector"),"segments",[m,"color"],"color"),[{propKey:"ringThicknessFrac"}]),Z=w?Math.max(0,(d-E)*(0,anim_1.sweepInverseEase)(N,g.startDeg/360)):0;x.push(C(T,w?{startAtSec:Z,...M(Z,E)}:void 0))}if(((k=e.segmentLabels)!==null&&k!==void 0?k:"none")==="percent"){const m=r-i,g=Math.max(9,Math.round(m*SEG_LABEL_FONT_FRAC));for(let F=0;F<b.length;F++){const T=b[F];if(T.endDeg-T.startDeg<SEG_LABEL_MIN_SWEEP_DEG)continue;const{x:Z,y:Ve}=(0,geometry_1.sectorCentroid)({cx:a,cy:o,rOuter:r,rInner:i,startDeg:T.startDeg,endDeg:T.endDeg}),Be=`${Math.round(T.frac*100)}%`,Ne={...L(Z/S,Ve/D),...M(d*.6,Math.max(.1,d*.3))};x.push(C((0,template_utils_1.bindPropPath)((0,template_utils_1.tag)(cellText(Be,g,labelColorFor(X(F))),"seg-label"),"segments",[F,"value"],"number"),Ne))}}const Pe=((ee=e.centerValue)!==null&&ee!==void 0?ee:"").trim()||String(Math.round(e.segments.reduce((m,g)=>m+g.value,0))),fe=holeCappedFont(v*VALUE_FONT_FRAC,12,Pe,v,.86),pe=fitToHole(Pe,fe,v,.86),U=!!(e.centerLabel&&e.centerLabel.trim()!==""),Ee=((te=e.centerLabel)!==null&&te!==void 0?te:"").trim(),Ce=holeCappedFont(v*CAPTION_FONT_FRAC,9,Ee,v,.92),qe=fitToHole(Ee,Ce,v,.92),Oe=U?o-i*.12:o,ke=((ne=P.countUp)!==null&&ne!==void 0?ne:!0)&&!W&&/\d/.test(pe)&&e.debugLayout!==!0,Re=(0,template_utils_1.bindProp)(ke?(0,template_utils_1.tag)(cellExprText((0,template_utils_1.animateNumbersInText)(pe,{durationSec:d,ease:N}),fe,_.textPrimary),"center-value"):(0,template_utils_1.tag)(cellText(pe,fe,_.textPrimary),"center-value"),"centerValue");if(x.push(C(Re,U?L(.5,Oe/D):void 0)),U){const m={...L(.5,(o+i*.44)/D),...M(d*.7,Math.max(.1,d*.3))};x.push(C((0,template_utils_1.bindProp)((0,template_utils_1.tag)(cellText(qe,Ce,_.textSecondary),"center-label"),"centerLabel"),m))}const Se={kind:"mosaic_document",version:1,assets:{},m0:String((0,template_utils_1.buildOverlayStack)(Math.max(1,x.length))),sources:x.length?x:[(0,template_utils_1.makeColorTile)("black@0")],backgroundColor:(ae=e.backgroundColor)!==null&&ae!==void 0?ae:_.surface,fps:t.target.fps,durationMs:t.target.durationMs};return(0,canvas_handles_1.addHandlesByLabel)(Se.sources,{"center-value":U?[]:[{propKey:"centerLabel"}]}),Promise.resolve((0,template_utils_1.withLayoutContract)(Se,t,{templateId:"@m0saic/charts/donut/v5",relations:[],constraints:ke?[]:[{label:"center-value",textFits:{charWidthEm:.62,padPx:0}},...U?[{label:"center-label",textFits:{charWidthEm:.62,padPx:0}}]:[],...ve?[{label:"seg-label",textFits:{charWidthEm:.62,padPx:0}}]:[]],debug:e.debugLayout===!0}))}const Fe=Math.min(S,D),{P:K,S:f}=selfFrame(Fe),G=f/2,R=f/2,H=f/2*RADIUS_SCALE,A=H*(1-O),V=2*A,ue=l((a,o,r,i,v=!1)=>placePiece(f,f,K,(0,geometry_1.annularSectorBBox)({cx:G,cy:R,rOuter:H,rInner:A,startDeg:o,endDeg:r}),(E,M,C,L)=>{const x=(0,template_utils_1.makeColorTile)(X(a),{mask:{kind:"inline-mask",localPath:(0,geometry_1.annularSectorPath)({cx:G-C,cy:R-L,rOuter:H,rInner:A,startDeg:o,endDeg:r}),bounds:{x:0,y:0,width:E,height:M}},...i?{overlay:i}:{}});return(0,canvas_handles_1.withAddHandles)((0,template_utils_1.bindPropPath)((0,template_utils_1.tag)(x,"sector"),"segments",[a,"color"],"color"),[{propKey:"ringThicknessFrac"}])}),"sectorPiece"),Y=[];if(w&&le==="sweep"){const a=(0,anim_1.subdivideForSweep)(b),o=Math.max(.05,d/Math.max(1,a.length)*2.5);for(const r of a){const i=b[r.segIndex],v=Math.max(i.startDeg-SLIVER_CROSS_DEG,r.startDeg-SLIVER_OVERLAP_DEG),E=Math.min(i.endDeg+SLIVER_CROSS_DEG,r.endDeg+SLIVER_OVERLAP_DEG),M=d*(0,anim_1.sweepInverseEase)(N,r.frac0);Y.push(ue(r.segIndex,v,E,{startAtSec:M,alpha:(0,template_utils_1.fadeInExpr)(M,o)}))}}else if(w&&le==="fade"){const a=d*.45;for(let o=0;o<b.length;o++){const r=b[o];if(r.endDeg-r.startDeg<=1e-4)continue;const i=d*.5*(r.startDeg/360);Y.push(ue(o,r.startDeg,r.endDeg,{startAtSec:i,alpha:(0,template_utils_1.fadeInExpr)(i,a)},!0))}}else for(let a=0;a<b.length;a++){const o=b[a];o.endDeg-o.startDeg<=1e-4||Y.push(ue(a,o.startDeg,o.endDeg,void 0,!0))}const de=[];if(((oe=e.segmentLabels)!==null&&oe!==void 0?oe:"none")==="percent"){const a=H-A,o=Math.max(9,Math.round(a*SEG_LABEL_FONT_FRAC));for(let r=0;r<b.length;r++){const i=b[r];if(i.endDeg-i.startDeg<SEG_LABEL_MIN_SWEEP_DEG)continue;const{x:v,y:E}=(0,geometry_1.sectorCentroid)({cx:G,cy:R,rOuter:H,rInner:A,startDeg:i.startDeg,endDeg:i.endDeg}),M=`${Math.round(i.frac*100)}%`,C=labelColorFor(X(r)),L=placePiece(f,f,K,textBBox(v,E,M,o),()=>(0,template_utils_1.bindPropPath)((0,template_utils_1.tag)(cellText(M,o,C),"seg-label"),"segments",[r,"value"],"number"));if(w){const x=le==="sweep"?d*(0,anim_1.sweepInverseEase)(N,i.endDeg/360):d*.5*(i.startDeg/360)+d*.45;L.source=fadeIn(L.source,x,d*.15,!0)}de.push(L)}}const xe=((re=e.centerValue)!==null&&re!==void 0?re:"").trim()||String(Math.round(e.segments.reduce((a,o)=>a+o.value,0))),j=holeCappedFont(V*VALUE_FONT_FRAC,12,xe,V,.86),z=fitToHole(xe,j,V,.86),ye=((se=e.centerLabel)!==null&&se!==void 0?se:"").trim(),me=holeCappedFont(V*CAPTION_FONT_FRAC,9,ye,V,.92),_e=fitToHole(ye,me,V,.92),J=!!(e.centerLabel&&e.centerLabel.trim()!==""),Te=J?R-A*.12:R,Ie=R+A*.44,Me=((ce=P.countUp)!==null&&ce!==void 0?ce:!0)&&!W&&/\d/.test(z)&&e.debugLayout!==!0,Q=[];if(Q.push(placePiece(f,f,K,textBBox(G,Te,z,j),()=>(0,template_utils_1.bindProp)(Me?(0,template_utils_1.tag)(cellExprText((0,template_utils_1.animateNumbersInText)(z,{durationSec:d,ease:N}),j,_.textPrimary),"center-value"):(0,template_utils_1.tag)(cellText(z,j,_.textPrimary),"center-value"),"centerValue"))),J){const a=placePiece(f,f,K,textBBox(G,Ie,_e,me),()=>(0,template_utils_1.bindProp)((0,template_utils_1.tag)(cellText(_e,me,_.textSecondary),"center-label"),"centerLabel"));a.source=fadeIn(a.source,d*.8,d*.2,!W),Q.push(a)}for(const a of de)a.rect.importance=1;for(const a of Q)a.rect.importance=1;const B=[...Y,...de,...Q],De=(0,dsl_stdlib_1.placeRects)({rootW:f,rootH:f,rects:B.map(a=>a.rect)}),ge=[];for(const a of De.layers){const o=[...a.rectIndices].sort((r,i)=>B[r].rect.y-B[i].rect.y||B[r].rect.x-B[i].rect.x);for(const r of o)ge.push(B[r].source)}let he=letterbox(String(De.m0),f,S,D);$&&(he=`F{${he}}`,ge.unshift((0,template_utils_1.bindProp)((0,template_utils_1.makeColorTile)($),"backgroundColor")));const Le={kind:"mosaic_document",version:1,assets:{},m0:he,sources:ge,backgroundColor:(ie=e.backgroundColor)!==null&&ie!==void 0?ie:_.surface,fps:t.target.fps,durationMs:t.target.durationMs};return(0,canvas_handles_1.addHandlesByLabel)(Le.sources,{"center-value":J?[]:[{propKey:"centerLabel"}]}),Promise.resolve((0,template_utils_1.withLayoutContract)(Le,t,{templateId:"@m0saic/charts/donut/v5",relations:[],constraints:Me?[]:[{label:"center-value",textFits:{charWidthEm:.62,padPx:0}},...J?[{label:"center-label",textFits:{charWidthEm:.62,padPx:0}}]:[],...ve?[{label:"seg-label",textFits:{charWidthEm:.62,padPx:0}}]:[]],debug:e.debugLayout===!0}))},async renderCover(e,t){const n=(0,onboarding_cover_1.brandedCoverHeroBox)(t,"band"),s={...t,target:{...t.target,width:n.width,height:n.height},output:{...t.output,width:n.width,height:n.height}},c=await exports.DonutV5.render({...exports.DonutV5.defaultProps,anim:{...exports.DonutV5.defaultProps.anim,reduceMotion:!0}},s);return(0,onboarding_cover_1.buildBrandedCover)({ctx:t,variant:"band",copy:{productName:"Donut",title:"A donut chart."},hero:l(u=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(c),u.borderStrong),"hero"),heroAssets:c.assets})}},(0,template_utils_1.registerTemplate)(exports.DonutV5);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var e=(t,r)=>u(t,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.DonutV5=void 0;var donut_1=require("./donut");Object.defineProperty(exports,"DonutV5",{enumerable:!0,get:e(function(){return donut_1.DonutV5},"get")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var n=Object.defineProperty;var u=(t,e)=>n(t,"name",{value:e,configurable:!0});var __createBinding=this&&this.__createBinding||(Object.create?(function(t,e,r,i){i===void 0&&(i=r);var o=Object.getOwnPropertyDescriptor(e,r);(!o||("get"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:u(function(){return e[r]},"get")}),Object.defineProperty(t,i,o)}):(function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]})),__exportStar=this&&this.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(e,t,r)};Object.defineProperty(exports,"__esModule",{value:!0}),__exportStar(require("./bar-graph/v1"),exports),__exportStar(require("./bar-graph/v2"),exports),__exportStar(require("./bar-graph/v3"),exports),__exportStar(require("./stat-card/v1"),exports),__exportStar(require("./stat-card/v2"),exports),__exportStar(require("./donut/v1"),exports),__exportStar(require("./donut/v2"),exports),__exportStar(require("./donut/v3"),exports),__exportStar(require("./donut/v4"),exports),__exportStar(require("./donut/v5"),exports),__exportStar(require("./line-chart/v1"),exports),__exportStar(require("./line-chart/v2"),exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var i=Object.defineProperty;var e=(r,t)=>i(r,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.ChartsLineChartV2=void 0,require("../v1/chrome");var line_chart_1=require("./line-chart");Object.defineProperty(exports,"ChartsLineChartV2",{enumerable:!0,get:e(function(){return line_chart_1.ChartsLineChartV2},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var ze=Object.defineProperty;var d=(e,t)=>ze(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.ChartsLineChartV2=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),format_1=require("../v1/format"),line_1=require("../../_shared/line"),scale_1=require("../../_shared/scale"),axis_1=require("../v1/axis"),chrome_spec_1=require("../v1/chrome-spec"),frame_1=require("../v1/frame"),line_series_1=require("../v1/line-series"),card_1=require("../v1/card"),anim_1=require("../v1/anim"),defaults_1=require("../v1/defaults"),chrome_1=require("../v1/chrome"),canvas_handles_1=require("../../../_shared/canvas-handles"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),bBool=d(()=>({type:"boolean",required:!1}),"bBool"),bStr=d(()=>({type:"string",required:!1}),"bStr"),bColor=d(()=>({type:"string",required:!1,meta:{control:{colorPicker:!0},constraints:{isColor:!0}}}),"bColor"),bEnum=d(e=>({type:"string",required:!1,meta:{constraints:{oneOf:e}}}),"bEnum"),bNum=d((e,t)=>({type:"number",required:!1,...e||t?{meta:{...t?{constraints:t}:{},...e?{control:e}:{}}}:{}}),"bNum"),bFrac=d(()=>bNum({flavor:"slider",step:.05},{min:0,max:1}),"bFrac"),Y_AXIS_FIELDS={show:bBool(),color:bColor(),showLabels:bBool(),labelColor:bColor(),fontSize:bNum(),format:bEnum(["raw","compact","percent"]),decimals:bNum(),prefix:bStr(),suffix:bStr(),tickCount:bNum(),showTicks:bBool(),tickLength:bNum(),tickColor:bColor(),showGrid:bBool(),gridColor:bColor(),gridOpacity:bFrac()},X_AXIS_FIELDS={show:bBool(),color:bColor(),showLabels:bBool(),labelColor:bColor(),fontSize:bNum(),showTicks:bBool(),tickLength:bNum(),tickColor:bColor(),showGrid:bBool(),gridColor:bColor(),gridOpacity:bFrac()},propsSchema=(0,template_utils_1.definePropsSchema)({values:{type:"json",required:!0,meta:{constraints:{minItems:1},control:{flavor:"numberSeries"}}},seriesLabels:{type:"string[]",required:!1},labels:{type:"string[]",required:!1},domain:{type:"group",required:!1,fields:{xValues:{type:"json",required:!1,meta:{control:{flavor:"numberList"}}},minValue:bNum(),maxValue:bNum(),minX:bNum(),maxX:bNum()}},line:{type:"group",required:!1,fields:{lineColor:{type:"json",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0}}},strokeWidth:{type:"json",required:!1},lineStyle:bEnum(["solid","dashed","dotted"]),curve:bEnum(["linear","smooth","stepped"]),lineCap:bEnum(["butt","round","square"]),lineJoin:bEnum(["miter","round","bevel"]),area:{type:"group",required:!1,fields:{show:bBool(),color:bColor(),opacity:bFrac()}}}},points:{type:"group",required:!1,fields:{showPoints:bBool(),pointRadius:bNum(void 0,{min:0,max:64}),pointColor:bColor(),pointShape:bEnum(["circle","square","diamond"]),pointBorder:{type:"group",required:!1,fields:{color:bColor(),width:bNum()}},highlightIndex:bNum(void 0,{min:0}),highlightLast:bBool()}},axes:{type:"group",required:!1,fields:{xAxis:{type:"group",required:!1,fields:X_AXIS_FIELDS},yAxis:{type:"group",required:!1,fields:Y_AXIS_FIELDS}}},appearance:{type:"group",required:!1,fields:{preset:bEnum(["neutral","dark","terminal","glass","paper"]),backgroundColor:{type:"string",required:!1,meta:{constraints:{isColor:!0},control:{colorPicker:!0}}},backgroundImage:bStr(),cornerRadius:bFrac(),padding:{type:"json",required:!1},border:{type:"group",required:!1,fields:{color:bColor(),alpha:bFrac()}}}},titles:{type:"group",required:!1,fields:{title:{type:"string",required:!1},subtitle:bStr(),titleColor:bColor(),titleSize:bNum(),titleAlign:bEnum(["left","center","right"])}},legend:{type:"group",required:!1,fields:{show:bBool(),position:bEnum(["top","bottom"]),color:bColor(),fontSize:bNum()}},valueLabels:{type:"group",required:!1,fields:{show:bBool(),format:bEnum(["raw","compact","percent"]),decimals:bNum(),color:bColor(),fontSize:bNum()}},debugLayout:{type:"boolean",required:!1},useNestedBackgroundColor:{type:"boolean",required:!1,meta:{ui:{hidden:!0}}},anim:{type:"group",required:!1,fields:{reduceMotion:bBool(),intro:{type:"group",required:!1,fields:{durationSec:bNum(),delaySec:bNum(),staggerSec:bNum(),ease:bEnum(["linear","smoothstep","easeInOut"])}}}},theme:{type:"group",required:!1,fields:{slug:bStr(),preset:bStr(),namespace:bStr(),forceFetch:bBool()}}});function flattenLineChartProps(e){var t,s,r,a,l,p,x,_,S,C,A,L,w,q,R,z,B,F,W,O,D,H,N,X,o,b,T,E,k,Y,v,G,u;return{values:e.values,seriesLabels:e.seriesLabels,labels:e.labels,xValues:(t=e.domain)===null||t===void 0?void 0:t.xValues,minValue:(s=e.domain)===null||s===void 0?void 0:s.minValue,maxValue:(r=e.domain)===null||r===void 0?void 0:r.maxValue,minX:(a=e.domain)===null||a===void 0?void 0:a.minX,maxX:(l=e.domain)===null||l===void 0?void 0:l.maxX,preset:(p=e.appearance)===null||p===void 0?void 0:p.preset,backgroundColor:(x=e.appearance)===null||x===void 0?void 0:x.backgroundColor,backgroundImage:(_=e.appearance)===null||_===void 0?void 0:_.backgroundImage,cornerRadius:(S=e.appearance)===null||S===void 0?void 0:S.cornerRadius,border:(C=e.appearance)===null||C===void 0?void 0:C.border,padding:(A=e.appearance)===null||A===void 0?void 0:A.padding,xAxis:(L=e.axes)===null||L===void 0?void 0:L.xAxis,yAxis:(w=e.axes)===null||w===void 0?void 0:w.yAxis,lineColor:(q=e.line)===null||q===void 0?void 0:q.lineColor,strokeWidth:(R=e.line)===null||R===void 0?void 0:R.strokeWidth,lineStyle:(z=e.line)===null||z===void 0?void 0:z.lineStyle,curve:(B=e.line)===null||B===void 0?void 0:B.curve,lineCap:(F=e.line)===null||F===void 0?void 0:F.lineCap,lineJoin:(W=e.line)===null||W===void 0?void 0:W.lineJoin,area:(O=e.line)===null||O===void 0?void 0:O.area,showPoints:(D=e.points)===null||D===void 0?void 0:D.showPoints,pointRadius:(H=e.points)===null||H===void 0?void 0:H.pointRadius,pointColor:(N=e.points)===null||N===void 0?void 0:N.pointColor,pointShape:(X=e.points)===null||X===void 0?void 0:X.pointShape,pointBorder:(o=e.points)===null||o===void 0?void 0:o.pointBorder,highlightIndex:(b=e.points)===null||b===void 0?void 0:b.highlightIndex,highlightLast:(T=e.points)===null||T===void 0?void 0:T.highlightLast,title:(E=e.titles)===null||E===void 0?void 0:E.title,subtitle:(k=e.titles)===null||k===void 0?void 0:k.subtitle,titleColor:(Y=e.titles)===null||Y===void 0?void 0:Y.titleColor,titleSize:(v=e.titles)===null||v===void 0?void 0:v.titleSize,titleAlign:(G=e.titles)===null||G===void 0?void 0:G.titleAlign,legend:e.legend,valueLabels:e.valueLabels,anim:e.anim,reduceMotion:(u=e.anim)===null||u===void 0?void 0:u.reduceMotion,theme:e.theme,debugLayout:e.debugLayout}}d(flattenLineChartProps,"flattenLineChartProps");function normalizeValues(e){return e.length===0?[]:Array.isArray(e[0])?e:[e]}d(normalizeValues,"normalizeValues");function resolveSeriesColors(e,t,s){const r=s.dataPalette,a=[];for(let l=0;l<e;l++)a.push(l===0?s.accent:r[l%r.length]);if(Array.isArray(t))for(let l=0;l<e;l++)a[l]=t[l%t.length];else typeof t=="string"&&(a[0]=t);return a}d(resolveSeriesColors,"resolveSeriesColors");function resolveStrokeWidths(e,t){const s=new Array(e).fill(defaults_1.DEFAULT_STROKE_WIDTH);if(Array.isArray(t))for(let r=0;r<e;r++)s[r]=t[r%t.length];else if(typeof t=="number")for(let r=0;r<e;r++)s[r]=t;return s}d(resolveStrokeWidths,"resolveStrokeWidths");function localThemeFromPreset(e){return{surfaceApp:e.bg,surface:e.card,surfaceRaised:e.card,surfaceInset:e.bg,border:e.border,borderStrong:e.axis,textPrimary:e.title,textSecondary:e.axisText,textMuted:e.axisText,eyebrow:e.axisText,accent:e.line,accentSoft:e.line,accentGlow:e.line,positive:"#16a34a",negative:"#dc2626",grid:e.grid,gridAlpha:1,axis:e.axis,axisAlpha:1,radius:defaults_1.DEFAULT_CORNER_RADIUS,dataPalette:defaults_1.SERIES_PALETTE}}d(localThemeFromPreset,"localThemeFromPreset");function themeAxis(e,t,s){var r,a,l,p;return{...e,color:(r=t?.color)!==null&&r!==void 0?r:s.axis,tickColor:(a=t?.tickColor)!==null&&a!==void 0?a:s.axis,labelColor:(l=t?.labelColor)!==null&&l!==void 0?l:s.textSecondary,gridColor:(p=t?.gridColor)!==null&&p!==void 0?p:s.grid}}d(themeAxis,"themeAxis"),exports.ChartsLineChartV2={id:(0,types_1.asTemplateId)("@m0saic/charts/line-chart/v2"),version:2,capabilities:{tier:"core"},outputHints:{format:{kind:"video",container:"mp4"},width:1280,height:720,fps:30,durationMs:2e3,posterTimeMs:1900},propsSchema,bindings:{unbound:{"line.lineColor":"single value (a list binds per series)","line.strokeWidth":"single value (a list binds per series)","domain.xValues":"derived by default (its elements ride the x labels once set)","appearance.padding":"geometry","axes.xAxis.tickLength":"tick marks are off by default","axes.xAxis.tickColor":"tick marks are off by default","axes.yAxis.tickLength":"tick marks are off by default","axes.yAxis.tickColor":"tick marks are off by default","axes.xAxis.gridColor":"x gridlines are off by default","axes.xAxis.gridOpacity":"x gridlines are off by default","valueLabels.decimals":"value labels are off by default","valueLabels.color":"value labels are off by default","valueLabels.fontSize":"value labels are off by default","anim.intro.durationSec":"timing","anim.intro.delaySec":"timing","anim.intro.staggerSec":"timing","theme.slug":"theme source","theme.preset":"theme source","theme.namespace":"theme source"}},defaultProps:{valueLabels:{show:!1,format:"compact",decimals:0,fontSize:12},anim:{reduceMotion:!1,intro:{durationSec:1.1,delaySec:.1,staggerSec:.12,ease:"smoothstep"}},legend:{show:!0,position:"top",fontSize:13},axes:{xAxis:{show:!0,showLabels:!0,fontSize:13,showTicks:!1,tickLength:4,showGrid:!1,gridOpacity:1},yAxis:{show:!0,showLabels:!0,fontSize:13,showTicks:!1,tickLength:4,showGrid:!0,gridOpacity:1,format:"raw",decimals:0}},debugLayout:!1,theme:{forceFetch:!1},values:[1200,1900,2600,4100,6300,9800],labels:["Jan","Feb","Mar","Apr","May","Jun"],seriesLabels:["Renders"],titles:{titleAlign:"center",titleSize:22,title:"m0saic render growth",subtitle:"Mocked monthly renders generated by m0saic users."},appearance:{cornerRadius:.04,preset:"neutral"},line:{area:{show:!0,opacity:.22},lineJoin:"round",lineCap:"round",lineStyle:"solid",curve:"linear"},points:{highlightLast:!1,pointBorder:{width:0},pointShape:"circle",pointRadius:3,showPoints:!0}},async render(e,t){var s,r,a,l,p,x,_,S,C,A,L,w,q,R,z,B,F,W,O,D,H,N,X;const o=flattenLineChartProps(e),b=normalizeValues((s=o.values)!==null&&s!==void 0?s:[]);if(b.length===0||b.every(i=>i.length===0))return(0,template_utils_1.makeIncompleteMosaic)("Add a value \u2014 one number per point on the line.",{title:`${this.id} props`,width:t.target.width,height:t.target.height});if(b.some(i=>i.some(n=>typeof n!="number"||!Number.isFinite(n))))return(0,template_utils_1.makeErrorMosaic)("values must be finite numbers (no NaN / blank entries)",{title:`${this.id} props`,width:t.target.width,height:t.target.height});const T=t.target.width,E=t.target.height,k=(r=o.preset)!==null&&r!==void 0?r:defaults_1.DEFAULT_PRESET,Y=defaults_1.PRESET_TOKENS[k],v=await(0,template_utils_1.resolveThemeTokens)(localThemeFromPreset(Y),t,o.theme),G=themeAxis((0,defaults_1.resolveAxis)(o.xAxis,"x",k),o.xAxis,v),u=themeAxis((0,defaults_1.resolveAxis)(o.yAxis,"y",k),o.yAxis,v),oe={...(0,defaults_1.resolveLegend)(o.legend,k),color:(l=(a=o.legend)===null||a===void 0?void 0:a.color)!==null&&l!==void 0?l:v.textSecondary},K=(0,defaults_1.resolvePadding)(o.padding),Ae=Math.max(1,E-K.top-K.bottom),ye=Math.max(3,Math.min(11,Math.floor(Ae/48)+1));let Q=K;if(o.padding==null&&u.showLabels){const i={labels:["a"],series:normalizeValues((p=o.values)!==null&&p!==void 0?p:[]).map((m,g)=>({name:String(g),values:m,color:"#000"}))},n=applyExplicitDomain((0,line_1.buildLineChartModel)(i,{width:T,height:E,padding:{left:K.left,right:K.right,top:K.top,bottom:K.bottom},beginAtZero:o.minValue==null,maxTicks:u.tickCount>0?u.tickCount:ye}),o.minValue,o.maxValue),f=n.scale.ticks.map(m=>(0,format_1.formatAxisValue)(m,u.format,u.decimals,n.scale.max,u.prefix,u.suffix)),U=Math.max(1,...f.map(m=>(0,template_utils_1.textEmUnits)(m))),c=u.showTicks?u.tickLength:0,h=Math.ceil(U*.62*u.fontSize/.84)+c+8;Q={...K,left:Math.min(Math.max(K.left,h),Math.round(T*.3))}}const xe=36,_e=oe.show&&oe.position==="bottom"&&b.length>0;_e&&(Q={...Q,bottom:Q.bottom+xe});const ee=(0,frame_1.computeFrame)(T,E,Q),te={left:ee.plot.left,top:ee.plot.top,right:T-ee.plot.right,bottom:E-ee.plot.bottom},Le={...(0,defaults_1.resolveBorder)(o.border,k),color:(_=(x=o.border)===null||x===void 0?void 0:x.color)!==null&&_!==void 0?_:v.border},ae=(0,defaults_1.resolveAnim)(o.anim,o.reduceMotion),ne=(0,axis_1.resolveBackground)({preset:k,backgroundColor:o.backgroundColor,backgroundImage:o.backgroundImage}),M=ne.mode==="preset"?{...ne,cardColor:v.surface,canvasColor:v.surfaceApp}:ne,de=b.length,ce=resolveSeriesColors(de,o.lineColor,v),we=resolveStrokeWidths(de,o.strokeWidth),P=Math.max(1,...b.map(i=>i.length));let I=(S=o.labels)!==null&&S!==void 0?S:o.xValues?o.xValues.map(i=>String(i)):Array.from({length:P},(i,n)=>String(n+1));I.length<P?I=[...I,...Array.from({length:P-I.length},(i,n)=>String(I.length+n+1))]:I.length>P&&(I=I.slice(0,P));const qe=(C=o.seriesLabels)!==null&&C!==void 0?C:ce.map((i,n)=>`Series ${n+1}`),Te={labels:I,series:b.map((i,n)=>{var f;return{name:(f=qe[n])!==null&&f!==void 0?f:`Series ${n+1}`,values:i,color:ce[n]}})};let ie=(0,line_1.buildLineChartModel)(Te,{width:T,height:E,padding:{left:te.left,right:te.right,top:te.top,bottom:te.bottom},beginAtZero:o.minValue==null,maxTicks:u.tickCount>0?u.tickCount:ye});ie=applyExplicitDomain(ie,o.minValue,o.maxValue);const ue=(A=o.area)!==null&&A!==void 0?A:{},Ee=(0,defaults_1.resolvePointBorder)(o.pointBorder),Ke=o.highlightLast?P-1:(L=o.highlightIndex)!==null&&L!==void 0?L:-1,Ce=ce.map((i,n)=>{var f,U,c,h,m,g,$,ve,fe,be;return{color:i,strokeWidth:we[n],lineStyle:(f=o.lineStyle)!==null&&f!==void 0?f:"solid",curve:(U=o.curve)!==null&&U!==void 0?U:"linear",lineCap:(c=o.lineCap)!==null&&c!==void 0?c:"round",lineJoin:(h=o.lineJoin)!==null&&h!==void 0?h:"round",area:{show:(m=ue.show)!==null&&m!==void 0?m:!1,color:ue.color,opacity:(g=ue.opacity)!==null&&g!==void 0?g:.15},showPoints:($=o.showPoints)!==null&&$!==void 0?$:!0,pointRadius:(ve=o.pointRadius)!==null&&ve!==void 0?ve:defaults_1.DEFAULT_POINT_RADIUS,pointColor:(fe=o.pointColor)!==null&&fe!==void 0?fe:i,pointShape:(be=o.pointShape)!==null&&be!==void 0?be:"circle",pointBorder:Ee}}),ke=(0,chrome_spec_1.buildChromeSpec)(ie,ee,{xAxis:G,yAxis:u,series:Ce,title:o.title,subtitle:o.subtitle,titleColor:(w=o.titleColor)!==null&&w!==void 0?w:v.textPrimary,titleSize:(q=o.titleSize)!==null&&q!==void 0?q:22,titleAlign:(R=o.titleAlign)!==null&&R!==void 0?R:"center",subtitleColor:v.textSecondary,legend:oe,..._e?{legendBandPx:xe}:{}}),pe={};pe.chrome=await(0,template_utils_1.renderNestedTemplate)(chrome_1.CHROME_TEMPLATE_ID,{spec:ke},t);const J=(0,card_1.buildCardBase)({mode:M.mode,cardColor:M.cardColor,backgroundImage:M.backgroundImage,cornerRadius:(z=o.cornerRadius)!==null&&z!==void 0?z:defaults_1.DEFAULT_CORNER_RADIUS,border:Le}),he=(0,anim_1.chromeFade)(ae),re={type:"mosaic",ref:"chrome",...ae.reduceMotion?{}:{overlay:{startAtSec:he.startSec,alpha:(0,template_utils_1.fadeInExpr)(he.startSec,he.durSec)}}},Se=(0,defaults_1.resolveValueLabels)(o.valueLabels),V=(0,line_series_1.buildLineSeriesSources)(ie,Ce,ae,{highlightIndex:Ke,valueLabels:Se,plotBg:{mode:M.mode,color:M.cardColor},valuesBinding:{propKey:"values",nested:Array.isArray(((B=o.values)!==null&&B!==void 0?B:[])[0])}}),Z=M.canvasColor&&e.useNestedBackgroundColor===!0?(0,template_utils_1.makeColorTile)(M.canvasColor):null;let me,ge;V?(me=Z?`1{1{1{${V.m0}}}}`:`1{1{${V.m0}}}`,ge=Z?[Z,J.source,re,...V.sources]:[J.source,re,...V.sources]):(me=String((0,template_utils_1.buildOverlayStack)(Z?3:2)),ge=Z?[Z,J.source,re]:[J.source,re]);const Me={kind:"mosaic_document",version:1,assets:J.assets,m0:me,children:pe,sources:ge,backgroundColor:M.canvasColor},y=d(i=>({propKey:`axes.yAxis.${i}`}),"yA"),j=d(i=>({propKey:`axes.xAxis.${i}`}),"xA"),Ie=Array.isArray(((F=e.values)!==null&&F!==void 0?F:[])[0]),Pe=Array.isArray(o.xValues)?o.xValues.length:0,le=d(i=>Array.isArray(i)?i.length:0,"listLen"),Ve=d(i=>[...le(o.lineColor)?[{propKey:"line.lineColor",path:[i%le(o.lineColor)],kind:"color"}]:[],...le(o.strokeWidth)?[{propKey:"line.strokeWidth",path:[i%le(o.strokeWidth)],kind:"number"}]:[]],"seriesLeaves");M.mode!=="none"&&(0,canvas_handles_1.withAddHandles)((0,template_utils_1.tag)(J.source,"card"),[{propKey:"appearance.backgroundColor"},{propKey:"appearance.cornerRadius"},{propKey:"appearance.border.color"},{propKey:"appearance.border.alpha"},{propKey:"appearance.backgroundImage"}]);const Re=[{propKey:"points.pointRadius"},{propKey:"points.pointColor"},{propKey:"points.pointBorder.color"},{propKey:"points.pointBorder.width"},{propKey:"points.highlightIndex"},{propKey:"line.area.color"},{propKey:"line.area.opacity"}];if(V){for(const i of V.sources)i.mask&&(0,template_utils_1.tag)(i,"series");(0,canvas_handles_1.addHandlesByLabel)(V.sources,{"value-label":[{propKey:"valueLabels.decimals"},{propKey:"valueLabels.color"},{propKey:"valueLabels.fontSize"}]})}const se=pe.chrome;if(se&&Array.isArray(se.sources)){const i=se.sources;(0,canvas_handles_1.addHandlesByLabel)(i,{"chart-title":[{propKey:"titles.titleColor"},{propKey:"titles.titleSize"}],"y-tick":[y("labelColor"),y("fontSize"),y("tickCount"),y("decimals"),y("prefix"),y("suffix"),{propKey:"domain.minValue"},{propKey:"domain.maxValue"}],"legend-label":[{propKey:"legend.color"},{propKey:"legend.fontSize"}],"x-label":d(c=>{var h,m;const g=(m=(h=c.editor)===null||h===void 0?void 0:h.binding)===null||m===void 0?void 0:m.index;return[...typeof g=="number"&&g<P?[{propKey:"values",path:Ie?[0,g]:[g],kind:"number"}]:[],...typeof g=="number"&&g<Pe?[{propKey:"domain.xValues",path:[g],kind:"number"}]:[],j("labelColor"),j("fontSize")]},"x-label")});const n=[...o.title&&o.title.trim()?[]:[{propKey:"titles.title"}],...o.subtitle&&o.subtitle.trim()?[]:[{propKey:"titles.subtitle"}]],f=(0,canvas_handles_1.firstLabelPresent)(i,["chart-title","chart-subtitle","x-label","y-tick"]);f&&n.length&&(0,canvas_handles_1.addHandlesByLabel)(i,{[f]:n},{first:[f]});let U=0;for(const c of i){if(c.type!=="lavfi"||c.fitMode!=="content"||!c.size)continue;const h=String((W=c.size.hExpr)!==null&&W!==void 0?W:"");h==="TH"?(0,canvas_handles_1.withAddHandles)((0,template_utils_1.tag)(c,"y-axis-line"),[y("color")]):h.startsWith("max(1,")?(0,canvas_handles_1.withAddHandles)((0,template_utils_1.tag)(c,"x-axis-line"),[j("color"),{propKey:"domain.minX"},{propKey:"domain.maxX"}]):h.startsWith("max(2,")&&(0,canvas_handles_1.withAddHandles)((0,template_utils_1.tag)(c,"legend-swatch"),[...Ve(U++),...Re])}for(const[c,h]of Object.entries((O=se.children)!==null&&O!==void 0?O:{})){const m=/^grid(\d+)$/.exec(c),g=c==="tickGridY"?[y("tickColor"),y("tickLength")]:c==="tickGridX"?[j("tickColor"),j("tickLength")]:m?((D=ke.grids[Number(m[1])])===null||D===void 0?void 0:D.direction)==="horizontal"?[y("gridColor"),y("gridOpacity")]:[j("gridColor"),j("gridOpacity")]:[];if(g.length)for(const $ of(0,canvas_handles_1.sourcesOfTree)((H=h.sources)!==null&&H!==void 0?H:[],h.children))$.type==="lavfi"&&typeof $.color=="string"&&(0,canvas_handles_1.withAddHandles)($,g)}}return(0,template_utils_1.withLayoutContract)(Me,t,{templateId:"@m0saic/charts/line-chart/v2",relations:[],constraints:[...o.title?[{label:"chart-title",textFits:{charWidthEm:.66}}]:[],...o.subtitle?[{label:"chart-subtitle",textFits:{charWidthEm:.62}}]:[],...oe.show&&de>0?[{label:"legend-label",textFits:{charWidthEm:.62}}]:[],...u.showLabels?[{label:"y-tick",textFits:{charWidthEm:.62}}]:[],...G.showLabels&&((X=(N=o.labels)===null||N===void 0?void 0:N.length)!==null&&X!==void 0?X:P)>0?[{label:"x-label",textFits:{charWidthEm:.62}}]:[],...Se.show?[{label:"value-label",textFits:{charWidthEm:.62,padPx:0}}]:[]],debug:o.debugLayout===!0})},async renderCover(e,t){var s;const r=(0,onboarding_cover_1.brandedCoverHeroBox)(t,"band"),a={...t,target:{...t.target,width:r.width,height:r.height},output:{...t.output,width:r.width,height:r.height}},l=await exports.ChartsLineChartV2.render({...exports.ChartsLineChartV2.defaultProps,anim:{...(s=exports.ChartsLineChartV2.defaultProps.anim)!==null&&s!==void 0?s:{},reduceMotion:!0}},a);return(0,onboarding_cover_1.buildBrandedCover)({ctx:t,variant:"band",copy:{productName:"Line Chart",title:"A line chart."},hero:d(p=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(l),p.borderStrong),"hero"),heroAssets:l.assets,children:l.children})}};function applyExplicitDomain(e,t,s){if(t==null&&s==null)return e;const r=t??e.scale.min,a=s??e.scale.max;if(a<=r)return e;const l=(0,scale_1.linearScale)(r,a,{beginAtZero:!1,maxTicks:e.scale.ticks.length||11}),p=l.ticks.length?l.ticks:[r,a],x=Math.min(p[0],r),_=Math.max(p[p.length-1],a),S={...l,min:x,max:_},{plot:C}=e.layout,A=e.series.map(L=>L.values.map((w,q)=>({x:e.xs[q],y:(0,scale_1.project)(w,x,_,C.bottom,C.top)})));return{...e,scale:S,points:A}}d(applyExplicitDomain,"applyExplicitDomain"),(0,template_utils_1.registerTemplate)(exports.ChartsLineChartV2);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var a=Object.defineProperty;var e=(t,r)=>a(t,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.StatCardV2=void 0;var stat_card_1=require("./stat-card");Object.defineProperty(exports,"StatCardV2",{enumerable:!0,get:e(function(){return stat_card_1.StatCardV2},"get")});
|