m0saic 0.0.0 → 0.2.0
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 +126 -0
- package/README.md +162 -2
- package/dist/browseE2e.js +1 -0
- package/dist/connectionsFromEnv.js +1 -0
- package/dist/e2eTemplateVariants.js +1 -0
- package/dist/frontDoor.js +1 -0
- package/dist/index.js +2 -0
- package/dist/inlineDsl.js +1 -0
- package/dist/mosaicxRunner.js +1 -0
- package/dist/outputPattern.js +1 -0
- package/dist/showcaseFeed.js +1 -0
- package/dist/templateDoctor.js +1 -0
- package/dist/utils/checkFeasibility.js +1 -0
- package/dist/utils/collectRenderErrors.js +1 -0
- package/dist/utils/enrichImageAlphaFromDoc.js +1 -0
- package/dist/utils/ensureFfmpeg.js +1 -0
- package/dist/utils/extractLayoutMeta.js +1 -0
- package/dist/utils/failureHints.js +1 -0
- package/dist/utils/ffmpegProbe.js +1 -0
- package/dist/utils/formatM0saicForCli.js +1 -0
- package/dist/utils/hashFile.js +1 -0
- package/dist/utils/helpGroups.js +1 -0
- package/dist/utils/invocation.js +1 -0
- package/dist/utils/mosaicSpinner.js +1 -0
- package/dist/utils/parseDimensions.js +1 -0
- package/dist/utils/pathInfo.js +1 -0
- package/dist/utils/readJsonArg.js +1 -0
- package/dist/utils/renderOutcome.js +1 -0
- package/dist/utils/renderReport.js +1 -0
- package/dist/utils/renderSignals.js +1 -0
- package/dist/utils/renderWorkspace.js +1 -0
- package/dist/utils/setupFfmpeg.js +1 -0
- package/dist/utils/telemetry.js +1 -0
- package/dist/utils/telemetryFlushWorker.js +1 -0
- package/dist/utils/telemetryUpstream.js +1 -0
- package/dist/utils/telemetryUsage.js +1 -0
- package/dist/utils/toolchainConfig.js +1 -0
- package/dist/utils/tutorialDuration.js +1 -0
- package/dist/utils/updateCheck.js +1 -0
- package/dist/utils/updateCheckWorker.js +1 -0
- package/dist/utils/validateSourceCounts.js +1 -0
- package/dist/utils/versions.js +1 -0
- package/dist/webCustomizeLink.js +1 -0
- package/node_modules/@m0saic/community-m/CONTRIBUTING.md +108 -0
- package/node_modules/@m0saic/community-m/LICENSE +28 -0
- package/node_modules/@m0saic/community-m/README.md +102 -0
- package/node_modules/@m0saic/community-m/geometry/m-33-tiles.json +270 -0
- package/node_modules/@m0saic/community-m/geometry/m-33.m0c +265 -0
- package/node_modules/@m0saic/community-m/index.json +148 -0
- package/node_modules/@m0saic/community-m/ms/001/community-m-001.m0p +346 -0
- package/node_modules/@m0saic/community-m/ms/001/m.json +12 -0
- package/node_modules/@m0saic/community-m/ms/001/root/assets/.gitkeep +0 -0
- package/node_modules/@m0saic/community-m/ms/001/root/piece.mosaic +105 -0
- package/node_modules/@m0saic/community-m/ms/001/root/portrait.jpg +0 -0
- package/node_modules/@m0saic/community-m/ms/001/root/slot.json +18 -0
- package/node_modules/@m0saic/community-m/ms/001/root/slot.m0c +296 -0
- package/node_modules/@m0saic/community-m/ms/001/root/tile.png +0 -0
- package/node_modules/@m0saic/community-m/ms/002/community-m-002.m0p +324 -0
- package/node_modules/@m0saic/community-m/ms/002/m.json +7 -0
- package/node_modules/@m0saic/community-m/package.json +5 -0
- package/node_modules/@m0saic/community-m/release.json +4 -0
- package/node_modules/@m0saic/community-m/tools/assemble.mjs +87 -0
- package/node_modules/@m0saic/community-m/tools/claim-order.mjs +42 -0
- package/node_modules/@m0saic/community-m/tools/lib.mjs +208 -0
- package/node_modules/@m0saic/community-m/tools/new-slot.mjs +123 -0
- package/node_modules/@m0saic/community-m/tools/validate.mjs +203 -0
- package/node_modules/@m0saic/core/LICENSE +7 -0
- package/node_modules/@m0saic/core/assets/pill_mask_1024.png +0 -0
- package/node_modules/@m0saic/core/assets/rounded_mask_1024.png +0 -0
- package/node_modules/@m0saic/core/dist/core/buildChildMosaicSource.js +1 -0
- package/node_modules/@m0saic/core/dist/core/buildChunkCommands.js +1 -0
- package/node_modules/@m0saic/core/dist/core/buildEncodeCommands.js +1 -0
- package/node_modules/@m0saic/core/dist/core/buildLavfiSource.js +1 -0
- package/node_modules/@m0saic/core/dist/core/buildMediaSource.js +1 -0
- package/node_modules/@m0saic/core/dist/core/buildMosaicNode.js +1 -0
- package/node_modules/@m0saic/core/dist/core/buildMosaicPlanFromFile.js +1 -0
- package/node_modules/@m0saic/core/dist/core/buildSvgTextSource.js +1 -0
- package/node_modules/@m0saic/core/dist/core/buildTextRenderCommand.js +1 -0
- package/node_modules/@m0saic/core/dist/core/collectRefTargets.js +1 -0
- package/node_modules/@m0saic/core/dist/core/index.js +1 -0
- package/node_modules/@m0saic/core/dist/core/maskCacheDir.js +1 -0
- package/node_modules/@m0saic/core/dist/core/maskWorkerBridge.js +1 -0
- package/node_modules/@m0saic/core/dist/core/playbackPlaySpeed.js +1 -0
- package/node_modules/@m0saic/core/dist/core/prepareProps.js +1 -0
- package/node_modules/@m0saic/core/dist/core/primaryOutput.js +1 -0
- package/node_modules/@m0saic/core/dist/core/rasterizeMaskPng.js +1 -0
- package/node_modules/@m0saic/core/dist/core/rasterizeSvgMediaPng.js +1 -0
- package/node_modules/@m0saic/core/dist/core/refTargetTap.js +1 -0
- package/node_modules/@m0saic/core/dist/core/resolveMasks.js +1 -0
- package/node_modules/@m0saic/core/dist/core/resolveMasksSync.js +1 -0
- package/node_modules/@m0saic/core/dist/core/resolveStrokeRingsSync.js +1 -0
- package/node_modules/@m0saic/core/dist/core/roundedRectMask.js +1 -0
- package/node_modules/@m0saic/core/dist/core/strokeRing.js +1 -0
- package/node_modules/@m0saic/core/dist/core/svgRaster.js +1 -0
- package/node_modules/@m0saic/core/dist/defaults.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/backgroundImageInput.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/bufferGuard.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/ffmpegCommands.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyBackdropBlur.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyBlur.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyBorderRadius.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyCamera.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyChromaKey.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyFade.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyGrade.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyMask.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyNoise.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyPixelize.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyRotate.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyStroke.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/applyTileEffects.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/coverCrop.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/index.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/filters/sourceRectCrop.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/gridLowering.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/index.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/splitAvMux.js +1 -0
- package/node_modules/@m0saic/core/dist/ffmpeg/threadGuard.js +1 -0
- package/node_modules/@m0saic/core/dist/flatten/index.js +1 -0
- package/node_modules/@m0saic/core/dist/fs/index.js +1 -0
- package/node_modules/@m0saic/core/dist/fs/tempWorkspace.js +1 -0
- package/node_modules/@m0saic/core/dist/index.js +1 -0
- package/node_modules/@m0saic/core/dist/media/buildAssetManifestFromInputs.js +1 -0
- package/node_modules/@m0saic/core/dist/media/buildMediaRegistryFromInput.js +1 -0
- package/node_modules/@m0saic/core/dist/media/collectMediaInputsFromInvocationProps.js +1 -0
- package/node_modules/@m0saic/core/dist/media/collectMediaInputsFromMosaicRenderableFile.js +1 -0
- package/node_modules/@m0saic/core/dist/media/collectMediaInputsFromProps.js +1 -0
- package/node_modules/@m0saic/core/dist/media/index.js +1 -0
- package/node_modules/@m0saic/core/dist/media/internalMintAsset.js +1 -0
- package/node_modules/@m0saic/core/dist/media/remoteUrl.js +1 -0
- package/node_modules/@m0saic/core/dist/media/stageUnsafeFilenames.js +1 -0
- package/node_modules/@m0saic/core/dist/media/types.js +1 -0
- package/node_modules/@m0saic/core/dist/output/index.js +1 -0
- package/node_modules/@m0saic/core/dist/output/resolveOutputFormat.js +1 -0
- package/node_modules/@m0saic/core/dist/output/types.js +1 -0
- package/node_modules/@m0saic/core/dist/probe/cellLuminanceProbe.js +1 -0
- package/node_modules/@m0saic/core/dist/probe/extractSubtitleCues.js +1 -0
- package/node_modules/@m0saic/core/dist/probe/helpers.js +1 -0
- package/node_modules/@m0saic/core/dist/probe/index.js +1 -0
- package/node_modules/@m0saic/core/dist/probe/luminanceProbe.js +1 -0
- package/node_modules/@m0saic/core/dist/probe/probeMedia.js +1 -0
- package/node_modules/@m0saic/core/dist/probe/runFFprobe.js +1 -0
- package/node_modules/@m0saic/core/dist/probe/types.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/engineRedaction.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/ffmpegFailure.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/filterPreflight.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/hashFile.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/index.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/pathInfo.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/perfHeatmap.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/perfReport.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/pipelineM0p.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/renderCostModel.constants.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/renderCostModel.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/renderReport.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/renderSidecars.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/resolveMosaicx.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/runPlan.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/types.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/upstream.js +1 -0
- package/node_modules/@m0saic/core/dist/runtime/writeSidecars.js +1 -0
- package/node_modules/@m0saic/core/dist/types/chunk.js +1 -0
- package/node_modules/@m0saic/core/dist/types/index.js +1 -0
- package/node_modules/@m0saic/core/dist/types/mosaic-plan.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/assertTiming.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/command.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/createEngineContext.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/createTemplateRenderCache.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/ffmpegColor.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/formatDuration.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/fsSafeId.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/index.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/lowerRenderableToMosaicDocument.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/movSafeCodec.js +1 -0
- package/node_modules/@m0saic/core/dist/utils/resolveBoxFrac.js +1 -0
- package/node_modules/@m0saic/core/dist/validate/index.js +1 -0
- package/node_modules/@m0saic/core/package.json +6 -0
- package/node_modules/@m0saic/core/scripts/mask-rasterize-core.js +1 -0
- package/node_modules/@m0saic/core/scripts/mask-rasterize-worker.js +1 -0
- package/node_modules/@m0saic/core/scripts/mask-worker-thread.js +1 -0
- package/node_modules/@m0saic/dictionary/LICENSE +13 -0
- package/node_modules/@m0saic/dictionary/dist/browser.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/__generated__.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/m0.json +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/m0saic.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/m0saic.m0c +265 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/m0saic_src.m0 +8 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/m0saic_visual.txt +274 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/m0saic_visual_areas.txt +272 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/m0saic_visual_art.txt +272 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/metadata.json +300 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33/preview.png +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33_bitmap/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33_bitmap/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33_bitmap/m0saic.m0 +9 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m-33_bitmap/metadata.json +54 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0/m0.json +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0/m0saic.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0/m0saic.m0c +205 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0/m0saic_src.m0 +8 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0/metadata.json +247 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0/preview.png +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0saic-pattern/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0saic-pattern/m0.json +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0saic-pattern/m0saic.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0saic-pattern/m0saic.m0c +366 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0saic-pattern/m0saic_src.m0 +8 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0saic-pattern/metadata.json +406 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/m0saic-pattern/preview.png +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/qr/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/qr/m0.json +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/qr/m0saic.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/qr/m0saic.m0c +24 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/qr/m0saic_src.m0 +8 -0
- package/node_modules/@m0saic/dictionary/dist/entries/brand/qr/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x2/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x2/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x2/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x2/m0saic_pretty.txt +10 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x2/m0saic_tree.txt +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x2/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x2/wireframe_1080x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x2/wireframe_1920x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x3/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x3/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x3/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x3/m0saic_pretty.txt +14 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x3/m0saic_tree.txt +10 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/2x3/metadata.json +53 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x2/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x2/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x2/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x2/m0saic_pretty.txt +12 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x2/m0saic_tree.txt +9 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x2/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x3/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x3/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x3/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x3/m0saic_pretty.txt +17 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x3/m0saic_tree.txt +13 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/3x3/metadata.json +48 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/4x4/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/4x4/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/4x4/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/4x4/m0saic_pretty.txt +26 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/4x4/m0saic_tree.txt +21 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/4x4/metadata.json +48 -0
- package/node_modules/@m0saic/dictionary/dist/entries/grids/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/bottom-feature/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/bottom-feature/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/bottom-feature/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/bottom-feature/m0saic_pretty.txt +13 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/bottom-feature/m0saic_tree.txt +10 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/bottom-feature/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/column-grid/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/column-grid/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/column-grid/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/column-grid/m0saic_pretty.txt +16 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/column-grid/m0saic_tree.txt +11 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/column-grid/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/dense-dashboard/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/dense-dashboard/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/dense-dashboard/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/dense-dashboard/m0saic_pretty.txt +20 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/dense-dashboard/m0saic_tree.txt +16 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/dense-dashboard/metadata.json +50 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/feature-sidebar/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/feature-sidebar/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/feature-sidebar/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/feature-sidebar/m0saic_pretty.txt +14 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/feature-sidebar/m0saic_tree.txt +10 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/feature-sidebar/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-bottom-strip/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-bottom-strip/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-bottom-strip/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-bottom-strip/m0saic_pretty.txt +8 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-bottom-strip/m0saic_tree.txt +6 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-bottom-strip/metadata.json +54 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-bottom-strip/wireframe_1080x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-bottom-strip/wireframe_1280x720.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-bottom-strip/wireframe_1920x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-sidebar/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-sidebar/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-sidebar/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-sidebar/m0saic_pretty.txt +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-sidebar/m0saic_tree.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-sidebar/metadata.json +54 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-sidebar/wireframe_1080x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-sidebar/wireframe_1920x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-sidebar/wireframe_2560x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-top-strip/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-top-strip/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-top-strip/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-top-strip/m0saic_pretty.txt +8 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-top-strip/m0saic_tree.txt +6 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/hero-top-strip/metadata.json +52 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/l-shape/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/l-shape/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/l-shape/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/l-shape/m0saic_pretty.txt +10 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/l-shape/m0saic_tree.txt +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/l-shape/metadata.json +48 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/main-two-supporting/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/main-two-supporting/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/main-two-supporting/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/main-two-supporting/m0saic_pretty.txt +8 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/main-two-supporting/m0saic_tree.txt +6 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/main-two-supporting/metadata.json +50 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/sidebar-main/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/sidebar-main/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/sidebar-main/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/sidebar-main/m0saic_pretty.txt +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/sidebar-main/m0saic_tree.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/sidebar-main/metadata.json +48 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/stacked-pairs/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/stacked-pairs/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/stacked-pairs/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/stacked-pairs/m0saic_pretty.txt +15 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/stacked-pairs/m0saic_tree.txt +11 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/stacked-pairs/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/t-shape/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/t-shape/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/t-shape/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/t-shape/m0saic_pretty.txt +12 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/t-shape/m0saic_tree.txt +9 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/t-shape/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/three-up/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/three-up/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/three-up/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/three-up/m0saic_pretty.txt +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/three-up/m0saic_tree.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/three-up/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/wide-feature/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/wide-feature/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/wide-feature/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/wide-feature/m0saic_pretty.txt +14 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/wide-feature/m0saic_tree.txt +11 -0
- package/node_modules/@m0saic/dictionary/dist/entries/layouts/wide-feature/metadata.json +50 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-col/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-col/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-col/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-col/m0saic_pretty.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-col/m0saic_tree.txt +4 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-col/metadata.json +50 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-row/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-row/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-row/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-row/m0saic_pretty.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-row/m0saic_tree.txt +4 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/1-2-row/metadata.json +51 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-col/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-col/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-col/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-col/m0saic_pretty.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-col/m0saic_tree.txt +4 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-col/metadata.json +50 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-row/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-row/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-row/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-row/m0saic_pretty.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-row/m0saic_tree.txt +4 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-1-row/metadata.json +51 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-col/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-col/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-col/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-col/m0saic_pretty.txt +4 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-col/m0saic_tree.txt +3 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-col/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-col/wireframe_1080x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-col/wireframe_1920x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-row/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-row/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-row/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-row/m0saic_pretty.txt +4 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-row/m0saic_tree.txt +3 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/2-row/metadata.json +49 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-col/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-col/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-col/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-col/m0saic_pretty.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-col/m0saic_tree.txt +4 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-col/metadata.json +53 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-col/wireframe_1080x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-col/wireframe_1920x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-col/wireframe_2560x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-row/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-row/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-row/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-row/m0saic_pretty.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-row/m0saic_tree.txt +4 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-row/metadata.json +54 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-row/wireframe_1080x1080.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-row/wireframe_1080x1350.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/3-row/wireframe_1080x1920.mp4 +0 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-col/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-col/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-col/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-col/m0saic_pretty.txt +6 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-col/m0saic_tree.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-col/metadata.json +48 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-row/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-row/m0saic.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-row/m0saic.m0 +7 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-row/m0saic_pretty.txt +6 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-row/m0saic_tree.txt +5 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/4-row/metadata.json +53 -0
- package/node_modules/@m0saic/dictionary/dist/entries/splits/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/aspectFit.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/aspectSafeGrid.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/barcodeGenerator.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/bentoGridGenerator.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/comparisonGenerator.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/goldenLayout.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/goldenSpiralGenerator.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/grid.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/labelTier.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/magazine.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/magazineGenerator.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/placeRect.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/qrCodeGenerator.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/quantizationFix.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/rankedListGenerator.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/safeCanvas.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/snapGrid.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/spotlightGenerator.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/generators/types.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/loadEntryM0.js +2 -0
- package/node_modules/@m0saic/dictionary/dist/operations/descriptors.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/operations/index.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/operations/types.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/registry.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/resolve.js +1 -0
- package/node_modules/@m0saic/dictionary/dist/sourceOrder.js +1 -0
- package/node_modules/@m0saic/dictionary/package.json +6 -0
- package/node_modules/@m0saic/dsl/LICENSE +201 -0
- package/node_modules/@m0saic/dsl/NOTICE +13 -0
- package/node_modules/@m0saic/dsl/README.md +417 -0
- package/node_modules/@m0saic/dsl/dist/cjs/complexity/complexity.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/complexity/index.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/equality/equality.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/equality/index.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/errors/errors.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/errors/index.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/feasibility/computeFeasibility.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/feasibility/index.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/format/index.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/format/m0StringCompact.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/format/m0StringFormat.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/index.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/internal/m0LexUtils.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/parse/index.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/parse/m0StringParser.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/parse/sortDeferredOverlays.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/types.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/validate/index.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/validate/m0StringValidator.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/warnings/index.js +1 -0
- package/node_modules/@m0saic/dsl/dist/cjs/warnings/warnings.js +1 -0
- package/node_modules/@m0saic/dsl/package.json +14 -0
- package/node_modules/@m0saic/dsl-file-formats/LICENSE +201 -0
- package/node_modules/@m0saic/dsl-file-formats/NOTICE +13 -0
- package/node_modules/@m0saic/dsl-file-formats/README.md +241 -0
- package/node_modules/@m0saic/dsl-file-formats/assets/icons/m0.svg +29 -0
- package/node_modules/@m0saic/dsl-file-formats/assets/icons/m0c.svg +29 -0
- package/node_modules/@m0saic/dsl-file-formats/assets/icons/m0p.svg +29 -0
- package/node_modules/@m0saic/dsl-file-formats/assets/icons/m0v.svg +29 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/conversions.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/derive.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/edit/editFileMeta.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/edit/index.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/index.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0/index.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0/parseM0File.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0/serializeM0File.js +3 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0Validation.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0c/index.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0c/m0cFile.js +5 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0p/index.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0p/m0pFile.js +2 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0v/index.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/m0v/m0vFile.js +2 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/types.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/validate/index.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/validate/types.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/validate/validateFill.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/validate/validateInsets.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/validate/validateLabels.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/dist/cjs/validate/validatePack.js +1 -0
- package/node_modules/@m0saic/dsl-file-formats/package.json +14 -0
- package/node_modules/@m0saic/dsl-stdlib/LICENSE +201 -0
- package/node_modules/@m0saic/dsl-stdlib/NOTICE +13 -0
- package/node_modules/@m0saic/dsl-stdlib/README.md +388 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/_internal/barSplit.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/_internal/packLeafRects.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/aspectFit.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/aspectSafeGrid.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/bakeInsets.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/compactDocument.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/compactLossless.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/comparison.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/container.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/equalSplit.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/golden.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/grid.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/placeInsetRects.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/placeOptimizedRects.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/placeRect.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/placeRects.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/rankedList.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/rebuildRects.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/safeCanvas.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/scale.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/snapGrid.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/snapRectPrecision.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/spotlight.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/strip.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/weightedSplit.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/builders/weightedTokens.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/constructors/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/constructors/toM0FileText.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/constructors/toM0String.js +4 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/barcodeChannels.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/barcodeToBars.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/barcodeToM0.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/barcodeToM0c.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/barcodeToRects.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/code128.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/ean13.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/eanShared.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/types.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/barcode/upca.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/bitmap/binaryGridToM0.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/bitmap/classifyPixels.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/bitmap/despeckleGrid.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/bitmap/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/bitmap/labelAreas.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/bitmap/types.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/bitmap/visualSidecars.js +13 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/mask-shapes/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/encoder.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/mask.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/matrix.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/packDarkCells.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/qrPayloads.js +2 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/qrToM0.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/qrToM0c.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/qrToMatrix.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/qrToRects.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/reedSolomon.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/types.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/qr/version.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/ranks/customRankSet.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/ranks/customStableKeyRankSet.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/ranks/generateRankSet.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/ranks/generateStableKeyRankSet.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/ranks/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/ranks/rankFramesFromM0.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/ranks/types.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/enumerateSvgToM0.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/extractGeometry.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/generateMasks.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/generateMasksByStableKey.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/inferGrid.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/parseSvg.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/rectsToM0.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/svgToM0.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/libraries/svg/types.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/mirroredTypes.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/queries/evaluateM0.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/queries/extractNodeByStableId.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/queries/findFrames.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/queries/getLayerCount.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/queries/hasOverlayAtSpan.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/queries/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/queries/quantizationSpread.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/queries/queryFrames.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/queries/withinBounds.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/_internal/constants.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/_internal/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/_internal/lexUtils.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/_internal/output.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/_internal/resolveSpanByStableId.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/_internal/walkByLogicalIndex.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/compose.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/composed/measure/_internal/buildMeasureFragment.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/composed/measure/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/composed/measure/measureSplitByLogicalIndex.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/composed/measure/measureSplitBySpan.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/composed/measure/measureSplitByStableId.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/composed/overlay/addOverlayToAllFrames.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/composed/overlay/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/composed/swap/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/composed/swap/swapFramesByLogicalIndex.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/pipe.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/frame/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/frame/setFrameTypeByLogicalIndex.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/addOverlayByLogicalIndex.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/addOverlayBySpan.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/addOverlayByStableId.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/addOverlayLayer.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/removeOverlayByLogicalIndex.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/removeOverlayBySpan.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/removeOverlayByStableId.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/removePureNullLayers.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/overlay/wrapBelowByLogicalIndex.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/replace/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/replace/replaceNodeByLogicalIndex.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/replace/replaceNodeBySpan.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/replace/replaceNodeByStableId.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/split/_internal/buildSplitFragment.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/split/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/split/reduceSplitCounts.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/split/splitByLogicalIndex.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/split/splitBySpan.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/split/splitByStableId.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/tile/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/tile/setTileTypeBySpan.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/primitives/tile/setTileTypeByStableId.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/rewriteOverlayChains.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/types.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/unified/addOverlay.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/unified/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/unified/measureSplit.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/unified/removeOverlay.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/unified/replace.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/unified/setTileType.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/unified/split.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/unified/swapFrames.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/withHistory.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/transforms/withInverse.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/types.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/vendor/abs-svg-path/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/vendor/is-svg-path/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/vendor/normalize-svg-path/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/vendor/parse-svg-path/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/vendor/svg-arc-to-cubic-bezier/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/dist/cjs/vendor/svg-path-bounds/index.js +1 -0
- package/node_modules/@m0saic/dsl-stdlib/package.json +14 -0
- package/node_modules/@m0saic/momo-types/LICENSE +201 -0
- package/node_modules/@m0saic/momo-types/NOTICE +13 -0
- package/node_modules/@m0saic/momo-types/dist/agent.js +6 -0
- package/node_modules/@m0saic/momo-types/dist/candidate.js +1 -0
- package/node_modules/@m0saic/momo-types/dist/category.js +1 -0
- package/node_modules/@m0saic/momo-types/dist/context.js +1 -0
- package/node_modules/@m0saic/momo-types/dist/index.js +1 -0
- package/node_modules/@m0saic/momo-types/dist/party.js +1 -0
- package/node_modules/@m0saic/momo-types/dist/region.js +1 -0
- package/node_modules/@m0saic/momo-types/dist/scoring.js +1 -0
- package/node_modules/@m0saic/momo-types/dist/session-summary.js +1 -0
- package/node_modules/@m0saic/momo-types/dist/session.js +1 -0
- package/node_modules/@m0saic/momo-types/package.json +16 -0
- package/node_modules/@m0saic/platform/LICENSE +201 -0
- package/node_modules/@m0saic/platform/NOTICE +13 -0
- package/node_modules/@m0saic/platform/dist/cjs/asset/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/asset/resolveAsset.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/asset/slugifyAssetKey.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/bridges/protocol.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/claimOrder.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/mTiles.generated.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/node/hostCommunityDir.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/node/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/node/loadCommunityManifestFromDir.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/node/validateCommunityPiece.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/parseCommunityMManifest.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/placeholderArt.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/communityM/tileState.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/ffexpr/balance.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/ffexpr/compile.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/ffexpr/ffmpeg.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/ffexpr/guards.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/ffexpr/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/ffexpr/macros.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/ffexpr/overlay.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/ffexpr/time.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/ffexpr/window.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/host-connections/fileConnectionResolver.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/host-connections/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/jobs/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/jobs/types.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/language/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/language/language.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/media/expandFolder.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/media/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/absolutizeManifestPathsWeb.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/edit/applyRectEditToMosaicDocument.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/edit/bakeDocumentInsets.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/edit/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/edit/rebuildDocumentGeometry.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/flatten/flattenMosaicDocument.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/flatten/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/layoutFloors/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/layoutFloors/layoutFloors.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/loadMosaicDocument.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/loadMosaicXDocument.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/outputKind/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/outputKind/outputKind.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/propBindings/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/propBindings/propBindings.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/serializeMosaicDocument.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/validateAssetManifest.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/validateLavfiSource.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/validateMosaicDocument.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/validateMosaicOutput.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/validateMosaicXDocument.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/validateSerializedMosaicDocument.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/validateSources.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/mosaic/validate/validateVariableSchema.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/output/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/output/validateOutputConfig.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/paths/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/paths/m0saicRoot.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/paths/tempPrefix.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/secrets/envSecretResolver.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/secrets/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/secrets/keychainSecretResolver.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/secrets/schemeSecretResolver.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/share/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/share/mosaicxLink.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/share/payloadCodec.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/share/portableProps.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/share/shareQuery.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/system/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/system/systemInfo.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/hostFingerprint.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/lifecycle.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/machineFactor.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/outbox.js +2 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/paths.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/preview.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/recordStore.js +3 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/recorder.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/redactor.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/renderRecord.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/rollup.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/scrambler.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/sender.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/settingsStore.js +2 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/status.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/summary.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/upstreamDefaults.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/usageRecorder.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/telemetry/usageStore.js +3 -0
- package/node_modules/@m0saic/platform/dist/cjs/template-repos/depAllowlist.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/template-repos/hostFirstResolution.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/template-repos/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/template-repos/loadTemplateRepoFromPath.js +6 -0
- package/node_modules/@m0saic/platform/dist/cjs/template-repos/resolveTemplatePreview.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/template-repos/validateTemplateRoles.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/templateId/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/templateId/parseTemplateId.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/childEnv.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/defaultBinaries.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/ffmpeg/baseline.json +211 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/ffmpeg/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/ffmpeg/install.js +2 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/ffmpeg/release-dates.json +387 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/goldenFfmpeg.js +7 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/index.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/liveChildren.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/metadata.js +2 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/probe.js +1 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/probeChild.js +3 -0
- package/node_modules/@m0saic/platform/dist/cjs/toolchain/versionCompare.js +1 -0
- package/node_modules/@m0saic/platform/package.json +117 -0
- package/node_modules/@m0saic/product/LICENSE +7 -0
- package/node_modules/@m0saic/product/dist/communityRelease.js +1 -0
- package/node_modules/@m0saic/product/dist/freeTierLicense.js +1 -0
- package/node_modules/@m0saic/product/dist/index.js +1 -0
- package/node_modules/@m0saic/product/dist/licenseToken.js +1 -0
- package/node_modules/@m0saic/product/dist/postRenderWrapper.js +1 -0
- package/node_modules/@m0saic/product/dist/publicKeys.js +1 -0
- package/node_modules/@m0saic/product/dist/revokedKeys.js +1 -0
- package/node_modules/@m0saic/product/dist/upstreamDefaults.js +1 -0
- package/node_modules/@m0saic/product/package.json +6 -0
- package/node_modules/@m0saic/template-utils/LICENSE +201 -0
- package/node_modules/@m0saic/template-utils/NOTICE +13 -0
- package/node_modules/@m0saic/template-utils/README.md +3 -0
- package/node_modules/@m0saic/template-utils/assets/core/m-33_1024x1024.png +0 -0
- package/node_modules/@m0saic/template-utils/assets/core/placeholder-blue.png +0 -0
- package/node_modules/@m0saic/template-utils/assets/core/placeholder-gray.png +0 -0
- package/node_modules/@m0saic/template-utils/assets/core/placeholder-green.png +0 -0
- package/node_modules/@m0saic/template-utils/assets/core/placeholder-red.png +0 -0
- package/node_modules/@m0saic/template-utils/assets/core/placeholder.mp4 +0 -0
- package/node_modules/@m0saic/template-utils/assets/starter/avatar.svg +1 -0
- package/node_modules/@m0saic/template-utils/assets/starter/facecam.svg +1 -0
- package/node_modules/@m0saic/template-utils/assets/starter/landscape.svg +1 -0
- package/node_modules/@m0saic/template-utils/assets/starter/logo.svg +1 -0
- package/node_modules/@m0saic/template-utils/assets/starter/portrait.svg +1 -0
- package/node_modules/@m0saic/template-utils/assets/starter/square.svg +1 -0
- package/node_modules/@m0saic/template-utils/dist/anim/camera.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/anim/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/anim/keyframes.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/anim/motion.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/anim/timing.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/anim/tracks.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/assertTiming.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/brandGlyphs.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/hello-world/field-data.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/hello-world/helloWorld.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/hello-world/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/hello-world/m-rects.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/hello-world/wordmark.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/onboarding-cover/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/onboarding-cover/onboarding-cover.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/onboarding-cover/screencap-grid-cover-assets.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/onboarding-cover/screencap-grid-cover.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/onboarding-cover/screencap-grid-tutorial.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/brand/onboarding-cover/theme-tokens.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/codes/barcodeToRenderable.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/codes/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/codes/makeQrEyeChildDoc.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/codes/qrStampExpressions.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/codes/qrToRenderable.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/codes/stampQr.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/codes/styledQr.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/data/connectionOptionsRegistry.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/data/hostConnectionRegistry.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/data/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/data/upstream.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/deprecated/gridCellInset.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/deprecated/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/deprecation.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/dev/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/dev/layoutFingerprintFs.js +3 -0
- package/node_modules/@m0saic/template-utils/dist/dev/renderTemplatePackToMosaicFiles.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/dev/renderTemplateToMosaicFile.js +2 -0
- package/node_modules/@m0saic/template-utils/dist/ffexpr/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/forensic/alphaPerCell.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/forensic/bch.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/forensic/decoder.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/forensic/encoder.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/forensic/gf.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/forensic/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/forensic/mask.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/forensic/slotPlanner.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/geometry/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/geometry/polyline.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/assertGeometry.js +3 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/checkDocGeometry.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/frameResolution.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/latticeRelations.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/layoutConstraint.js +2 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/types.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/violationWireframe.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/withGeometryContract.js +3 -0
- package/node_modules/@m0saic/template-utils/dist/geometry-contract/withLayoutContract.js +5 -0
- package/node_modules/@m0saic/template-utils/dist/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/lattice/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/lattice/latticeReport.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/lattice/smooth.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/lattice/splitCounts.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/layout/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/layout/latticeCellInset.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/layout/parseMosaicLayout.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/layout/placeInsetPieces.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/layout/placeOptimizedPieces.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/m0saic/assetPath.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/m0saic/build-overlay-stack.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/m0saic/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/m0saic/loadSession.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/m0saic/readLayoutFile.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/m0saic/utils.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/media/buildStepNames.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/media/canvasRegions.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/media/computeFrameCount.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/media/defaultMedia.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/media/determineMediaType.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/media/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/media/timeRanges.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/media/timedCues.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/primitives/girdlines.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/primitives/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/primitives/lavfiStrip.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/primitives/transparentSlot.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/print/compliance.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/print/dieline.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/print/dpiCheck.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/print/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/print/latticeSnap.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/print/units.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/processRegistry.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/render/autoCompactRenderable.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/render/createDesignContext.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/render/finalizeRenderable.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/render/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/render/renderNestedTemplate.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/render/renderTemplateCover.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/render/renderTemplateLite.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/render/renderTemplateToRenderableFile.js +3 -0
- package/node_modules/@m0saic/template-utils/dist/render/renderTemplateTutorial.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/render/stampOutput.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/seededRng.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/sources/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/sources/makeColorTile.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/sources/makeErrorMosaic.js +2 -0
- package/node_modules/@m0saic/template-utils/dist/sources/makeStubMosaic.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/sources/solidBackground.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/sources/svgTextSource.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/stamp/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/stamp/stampLayout.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/stamp/stampOnMedia.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/stamp/stampWindows.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/auditDefaultProps.js +3 -0
- package/node_modules/@m0saic/template-utils/dist/template/auditRenderedTemplate.js +5 -0
- package/node_modules/@m0saic/template-utils/dist/template/auditRepoConventions.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/auditSchemaConventions.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/defineMosaicTemplate.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/definePropsSchema.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/layoutFingerprintFile.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/resolveTemplateOutputHints.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/templateConventions.js +6 -0
- package/node_modules/@m0saic/template-utils/dist/template/templateOriginScope.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/template/templateRegistry.js +3 -0
- package/node_modules/@m0saic/template-utils/dist/template/validateTemplateProps.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/text/fitText.js +10 -0
- package/node_modules/@m0saic/template-utils/dist/text/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/text/textToPath.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/text/wrapText.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/theming/index.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/theming/resolveThemeTokens.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/theming/theming.js +1 -0
- package/node_modules/@m0saic/template-utils/dist/transitions.js +1 -0
- package/node_modules/@m0saic/template-utils/package.json +6 -0
- package/node_modules/@m0saic/templates/LICENSE +13 -0
- package/node_modules/@m0saic/templates/dist/freeze.js +8 -0
- package/node_modules/@m0saic/templates/dist/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/_shared/onboarding-cover.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/_shared/raster.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/_shared/svgRaster.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/commit-feed/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/commit-feed/v1/commit-feed.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/commit-feed/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/trace-timeline/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/trace-timeline/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/agents/trace-timeline/v1/trace-timeline.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/_shared/alpine-anim.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/_shared/alpine-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/_shared/alpine-glyphs.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/_shared/alpine-theme.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/bar-graph/v1/bar-graph.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/bar-graph/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/commit-feed/v1/commit-feed.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/commit-feed/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/commit-feed/v2/commit-feed.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/commit-feed/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/contributor-table/v1/assets/layout-lite.m0 +9 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/contributor-table/v1/assets/layout-standard.m0 +9 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/contributor-table/v1/contributor-table.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/contributor-table/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/donut/v1/donut.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/donut/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/donut/v2/donut.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/donut/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/donut/v3/donut.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/donut/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/heatmap/v1/heatmap.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/heatmap/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/heatmap/v2/heatmap.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/heatmap/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/kpi-card/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/kpi-card/v1/kpi-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/kpi-card/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/kpi-card/v2/kpi-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/leaderboard/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/leaderboard/v1/leaderboard.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/line-chart/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/line-chart/v1/line-chart.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/line-chart/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/line-chart/v2/line-chart.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/progress-card/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/progress-card/v1/progress-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/stat-card/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/stat-card/v1/stat-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/timeline/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/timeline/v1/timeline.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/timeline/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/timeline/v2/timeline.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/treemap/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/treemap/v1/treemap.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/treemap/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/alpine/treemap/v2/treemap.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/battery/manifest.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/report/v1/assets/m-logo.png +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/report/v1/assets/sample-session/benchmark.json +41 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/report/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/report/v1/report.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/run/v1/benchmarkRun.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/run/v1/confirmation.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/run/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/run/v1/renderScenario.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/benchmark/run/v1/runner.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/business-card/v1/back-catalog.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/business-card/v1/business-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/business-card/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/business-card/v1/layout.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/camera.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/caption.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/community-m.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/community-m.web.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/gen-seed-piece.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/geometry.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/imageSize.node.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/loadPiece.node.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/manifest.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/mark.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/paths.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/piece.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/pipeline.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/preview.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/props.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/reveal.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/seedPiece.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/target.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/timing.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/webPiece.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/community-m/v1/wordmark.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/logo/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/logo/v1/logo.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/logo/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/logo/v2/logo.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/logo/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/logo/v3/logo.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/logo/v3/logo_runner.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/assets/brand-qr-with-logo.svg +8 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/assets/qr-animate.dark.mp4 +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/assets/qr-animate.dark.static.png +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/assets/qr-animate.light.mp4 +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/assets/qr-animate.light.static.png +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/still/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/still/v1/qr-stamp-still.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/video/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/video/v2/qr-stamp.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/brand/qr-stamp/video/v2/windows.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/_shared/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/_shared/line.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/_shared/scale.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/anim.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/axis.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/bar-graph.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/defaults.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/format.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/internal/bar-cell.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/internal/bar-fill.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/internal/bars-stack.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/internal/chart-frame.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/internal/labels.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/internal/plot-area.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v1/types.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v2/bar-graph.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/bar-graph/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v1/anim.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v1/donut.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v1/geometry.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v2/donut.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v3/anim.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v3/donut.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v3/geometry.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v3/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v4/donut.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/donut/v4/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/anim.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/axis.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/chrome-spec.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/chrome.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/defaults.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/format.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/frame.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/geometry.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/line-chart.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/line-series.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/line-chart/v1/types.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/stat-card/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/charts/stat-card/v1/stat-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/_shared/code-diff.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/_shared/code-lexer.js +3 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/_shared/code-metrics.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/_shared/code-theme.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/snippet-morph/v1/internal/chrome.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/snippet-morph/v1/internal/plan.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/snippet-morph/v1/internal/steps.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/code/snippet-morph/v1/snippet-morph.js +3 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/demo-fixture.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/emit.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/image-collage.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/packer/candidates.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/packer/classify.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/packer/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/packer/paging.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/packer/score.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/packer/solve.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/packer/tiler.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/packer/types.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/image-collage/v1/tutorial.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/spread-grid-mock/v1/grid-fixture.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/spread-grid-mock/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/collage/spread-grid-mock/v1/spread-grid-mock.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/_shared/brand-glyphs.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/_shared/m0saic-logo.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/_shared/node-kit.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/_shared/text-fit.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/dsl-tutorial.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/panels/canvas/v1/dsl-canvas.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/panels/chrome/v1/dsl-chrome.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/panels/dsl-string/v1/dsl-string.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/panels/inspector/v1/dsl-inspector.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/pipeline/buildSteps.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/pipeline/camera.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/pipeline/cursor.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/pipeline/dslString.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/pipeline/inspector.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/pipeline/timing.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/dsl-tutorial/v1/theme/tokens.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/_shared/cellLuminance.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/verify/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/verify/v1/decode.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/verify/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/verify/v1/report.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/verify/v1/verify.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/video/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/video/v1/forensic-watermark.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/video/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/video/v1/maskAsset.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/forensic/watermark/video/v1/probeHost.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/client.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/connection.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/repo-facts-fetcher/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/repo-facts-fetcher/v1/build-facts.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/repo-facts-fetcher/v1/facts.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/repo-facts-fetcher/v1/repo-facts-fetcher.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/repo-facts-fetcher/v1/sample-facts.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/week-math.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/weekly-pulse/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/weekly-pulse/v1/weekly-pulse.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/weekly-pulse-adapter/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/weekly-pulse-adapter/v1/derive-pulse.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/weekly-pulse-adapter/v1/weekly-pulse-adapter.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/year-card/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/year-card/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/github/year-card/v1/year-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hello-world/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hello-world/v1/hello-world.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hello-world/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/ffmpeg-logo.png +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/ffmpeg_logo_480x480.svg +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/m-hero.png +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/qr-fin.mp4 +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-desktop.mp4 +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-layout.m0p +5146 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-mobile.mp4 +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-square.mp4 +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/title-layout.m0p +130 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-chrome.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-data.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-glyphs.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-theme.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/_shared/scatter.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/activity-trend.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/changes-breakdown.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/contributions.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/fin/v1/fin.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/fin/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/kpi-overview.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/notable-commits.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/runner/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/runner/v1/runner.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/scatter-bake.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/title/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/title/v1/title.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/top-contributors.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/hero/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/barcode/v1/barcode.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/barcode/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/blur-regions/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/blur-regions/v1/blur-regions.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/blur-regions/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/blur-regions/v1/plan.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/blur-regions/v1/tutorial.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/highlights/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/highlights/v1/highlights.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/highlights/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/highlights/v1/pipeline.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/highlights/v1/plan.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/v1/default-logo.js +35 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/v1/expressions.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/v1/layout.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/v1/logo-animate.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/v1/svg-source.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/logo-animate/v1/tutorial.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/metadata-stamp/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/metadata-stamp/v1/format-date.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/metadata-stamp/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/metadata-stamp/v1/metadata-stamp.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/_shared/brandMCenter.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/animate/v1/expressions.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/animate/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/animate/v1/qr-animate.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/animate/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/animate/v2/qr-animate.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/basic/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/basic/v1/qr.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/code/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/code/v1/qr-code.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/rounded/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/rounded/v1/qr-rounded.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/stamp/v1/qr-stamp-custom.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/stamp-video/v1/expressions.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/stamp-video/v1/gleamBand.js +19 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/stamp-video/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/qr/stamp-video/v1/qr-stamp.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/internal/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/internal/info_pane.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v1/screencap-grid.js +3 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v2/assets/tutorial-sheet.jpg +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover-assets.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v2/screencap-grid-tutorial.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid/v2/screencap-grid.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid_aspect_safe/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid_aspect_safe/v1/assets/pair-sheet.jpg +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid_aspect_safe/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-cover.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-tutorial.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe.js +3 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/scroll_wall/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/scroll_wall/v1/geometry.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/scroll_wall/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/scroll_wall/v1/motion.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/scroll_wall/v1/scroll-wall.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/subtitle-burn/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/subtitle-burn/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/subtitle-burn/v1/subtitle-burn-cover.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/subtitle-burn/v1/subtitle-burn.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/trickplay/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/trickplay/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/trickplay/v1/pipeline.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/trickplay/v1/plan.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/trickplay/v1/sidecars.js +7 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/trickplay/v1/trickplay.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/video_to_png_sequence/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/video_to_png_sequence/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/video_to_png_sequence/v1/video-to-png-sequence.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/v1/adaptive.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/v1/content.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/v1/geometry.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/v1/pageGrid.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/v1/pipeline.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/media/watermark/v1/watermark.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/camera-debug/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/camera-debug/v1/camera-debug.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/fixture-fetcher/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/fixture-fetcher/v1/fixture-fetcher.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/hot-reload-smoke/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/hot-reload-smoke/v1/hot-reload-smoke.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/post-mortem/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/post-mortem/v1/assets/human.png +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/post-mortem/v1/assets/robot.png +0 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/post-mortem/v1/post-mortem.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/upstream-echo/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/meta/upstream-echo/v1/upstream-echo.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/primitives/grid/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/primitives/grid/v1/grid.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/primitives/grid/v2/grid.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/primitives/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/social/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/social/quote-card/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/social/quote-card/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/social/quote-card/v1/layout.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/social/quote-card/v1/quote-card.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/captions.js +5 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/demo-fixture.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/kenburns.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/layout.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/narrated-chapters.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/pipeline.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/plan.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/props.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/scenes/body.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/scenes/card.js +4 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/theme.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v1/document.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v1/page.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v1/pages.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v1/pipeline.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v1/placeholder.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v1/props.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/story/scrapbook/v1/scrapbook.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/theming/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/theming/v1/brand-m-glyph.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/theming/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/theming/v1/theme-tokens.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/theming/v1/theming.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/theming/v1/token-sheet.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/web/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/web/page-skeleton/v1/capture/capture-snippet-source.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/web/page-skeleton/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/web/page-skeleton/v1/layout.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/web/page-skeleton/v1/page-skeleton.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/web/page-skeleton/v1/sample-capture.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/web/page-skeleton/v1/schema.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/animated/v1/animated-wireframe.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/animated/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/base/v1/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/base/v1/wireframe.js +2 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/base/v2/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/base/v2/wireframe.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/index.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/utils/paperGrid.js +1 -0
- package/node_modules/@m0saic/templates/dist/m0saic/wireframe/utils/wireframeCell.js +2 -0
- package/node_modules/@m0saic/templates/dist/registry.js +1 -0
- package/node_modules/@m0saic/templates/dist/repo.js +1 -0
- package/node_modules/@m0saic/templates/dist/template-registry.js +1 -0
- package/node_modules/@m0saic/templates/dist/web.js +1 -0
- package/node_modules/@m0saic/templates/dist/webTemplateIds.js +1 -0
- package/node_modules/@m0saic/templates/package.json +6 -0
- package/node_modules/@m0saic/templates/template-manifest.json +2015 -0
- package/node_modules/@m0saic/templates/web-template-ids.json +84 -0
- package/node_modules/@m0saic/templates-advanced/LICENSE +13 -0
- package/node_modules/@m0saic/templates-advanced/README.md +5 -0
- package/node_modules/@m0saic/templates-advanced/dist/index.js +1 -0
- package/node_modules/@m0saic/templates-advanced/package.json +6 -0
- package/node_modules/@m0saic/text/LICENSE +201 -0
- package/node_modules/@m0saic/text/NOTICE +18 -0
- package/node_modules/@m0saic/text/README.md +34 -0
- package/node_modules/@m0saic/text/assets/fonts/JetBrainsMono-Bold.ttf +0 -0
- package/node_modules/@m0saic/text/assets/fonts/JetBrainsMono-BoldItalic.ttf +0 -0
- package/node_modules/@m0saic/text/assets/fonts/JetBrainsMono-Italic.ttf +0 -0
- package/node_modules/@m0saic/text/assets/fonts/JetBrainsMono-OFL-1.1.txt +93 -0
- package/node_modules/@m0saic/text/assets/fonts/JetBrainsMono-Regular.ttf +0 -0
- package/node_modules/@m0saic/text/assets/fonts/Roboto-Bold.ttf +0 -0
- package/node_modules/@m0saic/text/assets/fonts/Roboto-BoldItalic.ttf +0 -0
- package/node_modules/@m0saic/text/assets/fonts/Roboto-Italic.ttf +0 -0
- package/node_modules/@m0saic/text/assets/fonts/Roboto-Regular.LICENSE.txt +18 -0
- package/node_modules/@m0saic/text/assets/fonts/Roboto-Regular.ttf +0 -0
- package/node_modules/@m0saic/text/dist/bundledFonts.js +1 -0
- package/node_modules/@m0saic/text/dist/fontCache.js +1 -0
- package/node_modules/@m0saic/text/dist/fontRegistry.js +1 -0
- package/node_modules/@m0saic/text/dist/index.js +1 -0
- package/node_modules/@m0saic/text/dist/runsToPaths.js +1 -0
- package/node_modules/@m0saic/text/dist/textToPath.js +3 -0
- package/node_modules/@m0saic/text/package.json +6 -0
- package/node_modules/@m0saic/types/LICENSE +201 -0
- package/node_modules/@m0saic/types/NOTICE +13 -0
- package/node_modules/@m0saic/types/README.md +28 -0
- package/node_modules/@m0saic/types/assets/icons/mosaic.svg +36 -0
- package/node_modules/@m0saic/types/assets/icons/mosaicx.svg +32 -0
- package/node_modules/@m0saic/types/dist/analytics/consent.js +1 -0
- package/node_modules/@m0saic/types/dist/analytics/event.js +1 -0
- package/node_modules/@m0saic/types/dist/analytics/index.js +1 -0
- package/node_modules/@m0saic/types/dist/analytics/redaction.js +1 -0
- package/node_modules/@m0saic/types/dist/analytics/redactor.js +1 -0
- package/node_modules/@m0saic/types/dist/analytics/sink.js +1 -0
- package/node_modules/@m0saic/types/dist/analytics/usageMetrics.js +1 -0
- package/node_modules/@m0saic/types/dist/asset/asset.js +1 -0
- package/node_modules/@m0saic/types/dist/asset/index.js +1 -0
- package/node_modules/@m0saic/types/dist/benchmark/index.js +1 -0
- package/node_modules/@m0saic/types/dist/benchmark/session.js +1 -0
- package/node_modules/@m0saic/types/dist/colors/ffmpegNamedColors.js +1 -0
- package/node_modules/@m0saic/types/dist/colors/index.js +1 -0
- package/node_modules/@m0saic/types/dist/colors/mosaicColor.js +1 -0
- package/node_modules/@m0saic/types/dist/colors/parseMosaicColors.js +1 -0
- package/node_modules/@m0saic/types/dist/community-m/community-m.js +1 -0
- package/node_modules/@m0saic/types/dist/community-m/index.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/audio.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/color.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/effects.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/index.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/media.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/output-target.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/pipeline.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/placement.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/text.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/timing.js +1 -0
- package/node_modules/@m0saic/types/dist/defaults/visual.js +1 -0
- package/node_modules/@m0saic/types/dist/diagnostic/diagnostic.js +1 -0
- package/node_modules/@m0saic/types/dist/diagnostic/index.js +1 -0
- package/node_modules/@m0saic/types/dist/dictionary/dictionary.js +1 -0
- package/node_modules/@m0saic/types/dist/dictionary/index.js +1 -0
- package/node_modules/@m0saic/types/dist/document/document-pipeline.js +1 -0
- package/node_modules/@m0saic/types/dist/document/document.js +1 -0
- package/node_modules/@m0saic/types/dist/document/index.js +1 -0
- package/node_modules/@m0saic/types/dist/document/mosaicx-document.js +1 -0
- package/node_modules/@m0saic/types/dist/document/pipeline-helpers.js +1 -0
- package/node_modules/@m0saic/types/dist/document/sidecars.js +1 -0
- package/node_modules/@m0saic/types/dist/document/xfadeModes.js +1 -0
- package/node_modules/@m0saic/types/dist/engine-context/engine-context.js +1 -0
- package/node_modules/@m0saic/types/dist/engine-context/index.js +1 -0
- package/node_modules/@m0saic/types/dist/host-connections/host-connections.js +1 -0
- package/node_modules/@m0saic/types/dist/host-connections/index.js +1 -0
- package/node_modules/@m0saic/types/dist/identifiers/identifiers.js +1 -0
- package/node_modules/@m0saic/types/dist/identifiers/index.js +1 -0
- package/node_modules/@m0saic/types/dist/index.js +1 -0
- package/node_modules/@m0saic/types/dist/language/index.js +1 -0
- package/node_modules/@m0saic/types/dist/language/language.js +1 -0
- package/node_modules/@m0saic/types/dist/luminance/LuminanceBucket.js +1 -0
- package/node_modules/@m0saic/types/dist/luminance/index.js +1 -0
- package/node_modules/@m0saic/types/dist/meta/index.js +1 -0
- package/node_modules/@m0saic/types/dist/meta/meta.js +1 -0
- package/node_modules/@m0saic/types/dist/output/audio-config.js +1 -0
- package/node_modules/@m0saic/types/dist/output/color-config.js +1 -0
- package/node_modules/@m0saic/types/dist/output/container-metadata.js +1 -0
- package/node_modules/@m0saic/types/dist/output/encode.js +1 -0
- package/node_modules/@m0saic/types/dist/output/format.js +1 -0
- package/node_modules/@m0saic/types/dist/output/index.js +1 -0
- package/node_modules/@m0saic/types/dist/output/output.js +1 -0
- package/node_modules/@m0saic/types/dist/output/target.js +1 -0
- package/node_modules/@m0saic/types/dist/primitives/index.js +1 -0
- package/node_modules/@m0saic/types/dist/primitives/primitives.js +1 -0
- package/node_modules/@m0saic/types/dist/secrets/index.js +1 -0
- package/node_modules/@m0saic/types/dist/secrets/secrets.js +1 -0
- package/node_modules/@m0saic/types/dist/source/effectKeys.js +1 -0
- package/node_modules/@m0saic/types/dist/source/index.js +1 -0
- package/node_modules/@m0saic/types/dist/source/source.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry/category.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry/emit.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry/event.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry/ffmpegFailure.js +4 -0
- package/node_modules/@m0saic/types/dist/telemetry/index.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry/level.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry/personas.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry/record.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry/sink.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry/usage.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry-settings/index.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry-settings/mode.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry-settings/settings.js +1 -0
- package/node_modules/@m0saic/types/dist/telemetry-settings/upstream.js +1 -0
- package/node_modules/@m0saic/types/dist/template/forensic-watermark-check.js +1 -0
- package/node_modules/@m0saic/types/dist/template/forensic-watermark.js +1 -0
- package/node_modules/@m0saic/types/dist/template/index.js +1 -0
- package/node_modules/@m0saic/types/dist/template/region.js +1 -0
- package/node_modules/@m0saic/types/dist/template/template.js +1 -0
- package/node_modules/@m0saic/types/dist/template/time-range.js +1 -0
- package/node_modules/@m0saic/types/dist/template/time-window.js +1 -0
- package/node_modules/@m0saic/types/dist/template/timed-cue.js +1 -0
- package/node_modules/@m0saic/types/dist/template-repo/index.js +1 -0
- package/node_modules/@m0saic/types/dist/template-repo/template-repo.js +1 -0
- package/node_modules/@m0saic/types/dist/theme/index.js +1 -0
- package/node_modules/@m0saic/types/dist/theme/theme.js +1 -0
- package/node_modules/@m0saic/types/package.json +6 -0
- package/node_modules/@m0saic/types/schemas/mosaic.schema.json +771 -0
- package/node_modules/@m0saic/types-internal/LICENSE +7 -0
- package/node_modules/@m0saic/types-internal/dist/analytics/featureKeys.js +1 -0
- package/node_modules/@m0saic/types-internal/dist/analytics/webEvent.js +1 -0
- package/node_modules/@m0saic/types-internal/dist/index.js +1 -0
- package/node_modules/@m0saic/types-internal/package.json +6 -0
- package/package.json +49 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var M=Object.defineProperty;var l=(n,i)=>M(n,"name",{value:i,configurable:!0});var __createBinding=this&&this.__createBinding||(Object.create?(function(n,i,t,a){a===void 0&&(a=t);var o=Object.getOwnPropertyDescriptor(i,t);(!o||("get"in o?!i.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:l(function(){return i[t]},"get")}),Object.defineProperty(n,a,o)}):(function(n,i,t,a){a===void 0&&(a=t),n[a]=i[t]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(n,i){Object.defineProperty(n,"default",{enumerable:!0,value:i})}):function(n,i){n.default=i}),__importStar=this&&this.__importStar||(function(){var n=l(function(i){return n=Object.getOwnPropertyNames||function(t){var a=[];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(a[a.length]=o);return a},n(i)},"ownKeys");return function(i){if(i&&i.__esModule)return i;var t={};if(i!=null)for(var a=n(i),o=0;o<a.length;o++)a[o]!=="default"&&__createBinding(t,i,a[o]);return __setModuleDefault(t,i),t}})();Object.defineProperty(exports,"__esModule",{value:!0}),exports.ERROR_STEP_MS=exports.IMAGE_STEP_MS=void 0,exports.buildWatermarkStep=buildWatermarkStep;const path=__importStar(require("node:path")),types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),geometry_1=require("./geometry"),content_1=require("./content"),pageGrid_1=require("./pageGrid"),adaptive_1=require("./adaptive");exports.IMAGE_STEP_MS=40,exports.ERROR_STEP_MS=1e3;const ERROR_TITLE="Watermark";function imageContainer(n,i){if(i!=="match")return i;const t=path.extname(n).toLowerCase();return t===".jpg"||t===".jpeg"?"jpeg":"png"}l(imageContainer,"imageContainer");function errorStep(n,i,t,a){return{name:n,label:i,durationMs:exports.ERROR_STEP_MS,file:(0,template_utils_1.makeErrorMosaic)(t,{title:ERROR_TITLE,width:a.target.width,height:a.target.height})}}l(errorStep,"errorStep");function buildWatermarkStep(n){var i;const{inputPath:t,stepName:a,knobs:o,ctx:r}=n,c=path.parse(t).name,e=r.media[(0,types_1.asAssetId)(t)];if(!e||!(e.width>0)||!(e.height>0))return errorStep(a,c,`No probed dimensions for input: ${t}`,r);if(e.kind!=="video"&&e.kind!=="image")return errorStep(a,c,`Input is not an image or video (kind: ${e.kind}): ${t}`,r);const p=e.kind==="video";if(p&&!(e.durationMs!=null&&e.durationMs>0))return errorStep(a,c,`Video input has no probed duration: ${t}`,r);const u=e.width,m=e.height;let d;try{const s=(0,types_1.asAssetId)((0,template_utils_1.slugifyAssetKeyFromPath)(t)),h={[s]:{kind:"file",path:t,mediaType:e.kind}},f={type:"media",mediaType:e.kind,assetId:s,placement:{fit:"cover"},editor:{owner:"template",label:"wm:base"}};let v=o.mode==="page"?buildPageDoc({baseSource:f,baseAssets:h,canvasW:u,canvasH:m,knobs:o}):buildStampDoc({baseSource:f,baseAssets:h,canvasW:u,canvasH:m,knobs:o,isVideo:p,...p?{videoDurMs:e.durationMs}:{},...!((i=o.lumaByInput)===null||i===void 0)&&i[t]?{lumaEntry:o.lumaByInput[t]}:{}});if(o.debugLayout){const y=debugConstraints(o);if(y.length>0){const _={...r,target:{...r.target,width:u,height:m}};v=(0,template_utils_1.withLayoutContract)(v,_,{templateId:"@m0saic/media/watermark/v1",constraints:y,flatten:!1,debug:!0})}}const g=p?{kind:"video",container:"mp4"}:{kind:"image",container:imageContainer(t,o.imageOutputFormat)};d={name:a,label:c,durationMs:p?Math.max(1,Math.round(e.durationMs)):exports.IMAGE_STEP_MS,file:{...v,format:g}}}catch(s){return errorStep(a,c,`Watermark step failed for ${t}: ${s instanceof Error?s.message:String(s)}`,r)}return d}l(buildWatermarkStep,"buildWatermarkStep");function buildContentChild(n,i,t,a){var o,r;const c=(o=a?.image)!==null&&o!==void 0?o:n.image,e=(r=a?.textColor)!==null&&r!==void 0?r:n.textColor;return n.content==="logo"?(0,content_1.buildLogoChild)({logoPath:c,w:i,h:t}):n.content==="lockup"?(0,content_1.buildLockupChild)({logoPath:c,logoAspect:n.contentInfo.logoAspect,text:n.text,textAspect:n.contentInfo.textAspect,color:e,layout:n.lockupLayout,w:i,h:t}):(0,content_1.buildTextChild)({text:n.text,color:e,w:i,h:t})}l(buildContentChild,"buildContentChild");function bindWordmark(n,i){var t,a;for(const o of(t=n.sources)!==null&&t!==void 0?t:[])((a=o.editor)===null||a===void 0?void 0:a.label)==="wm:text"&&(0,template_utils_1.bindProps)(o,[{propKey:"text"},{propKey:i}]);return n}l(bindWordmark,"bindWordmark");function buildStampDoc(n){var i,t;const{baseSource:a,baseAssets:o,canvasW:r,canvasH:c,knobs:e,isVideo:p,videoDurMs:u,lumaEntry:m}=n,d=(0,geometry_1.resolveWatermarkRect)({position:e.position,sizeRatio:e.sizeRatio,sizeBasis:e.sizeBasis,marginRatio:e.marginRatio,layoutM0:e.layoutM0},r,c,e.contentInfo.aspect);let s;if(e.mode==="adaptive"){const h={...((i=e.imageDark)!==null&&i!==void 0?i:e.image)?{image:(t=e.imageDark)!==null&&t!==void 0?t:e.image}:{},textColor:e.textColor},f={...e.image?{image:e.image}:{},textColor:e.textColorOnLight};s=(0,adaptive_1.buildAdaptiveLayerSpecs)({isVideo:p,...u!==void 0?{videoDurMs:u}:{},...m!==void 0?{entry:m}:{},knobs:{variant:e.variant,windowing:e.windowing,opacity:e.opacity,fadeMs:e.fadeMs,crossfadeMs:e.crossfadeMs,lumaThreshold:e.lumaThreshold,minGapMs:e.minGapMs,...e.coverageOverride!==void 0?{coverageOverride:e.coverageOverride}:{},artworkPrimary:h,artworkOnLight:f}}).map(g=>({child:bindWordmark(buildContentChild(e,d.w,d.h,g.artwork),g.artwork===f?"textColorOnLight":"textColor"),key:g.key,...g.alphaExpr!==void 0?{alphaExpr:g.alphaExpr}:{},...g.opacity!==void 0?{opacity:g.opacity}:{}}))}else s=[{child:bindWordmark(buildContentChild(e,d.w,d.h),"textColor"),opacity:e.opacity,key:"wm"}];return s.length===0&&(s=[{child:bindWordmark(buildContentChild(e,d.w,d.h),"textColor"),opacity:e.opacity,key:"wm"}]),(0,template_utils_1.stampOnMedia)({baseSource:a,baseAssets:o,canvasW:r,canvasH:c,rect:d,layers:s})}l(buildStampDoc,"buildStampDoc");function buildPageDoc(n){const{baseSource:i,baseAssets:t,canvasW:a,canvasH:o,knobs:r}=n,c=r.sizeBasis==="width"?a:r.sizeBasis==="height"?o:Math.min(a,o),e=Math.max(1,Math.round(r.sizeRatio*c)),p=Math.max(1,Math.round(e/r.contentInfo.aspect)),u=(0,pageGrid_1.planPageGrid)({canvasW:a,canvasH:o,contentW:e,contentH:p,angleDeg:r.angleDeg,tileGapRatio:r.tileGapRatio,stagger:r.stagger,maxTiles:r.maxTiles}),m=buildContentChild(r,u.contentW,u.contentH),d=(0,pageGrid_1.buildPaddedInstanceChild)({plan:u,art:m}),s=(0,pageGrid_1.buildPagePatternChild)({canvasW:a,canvasH:o,plan:u,angleDeg:r.angleDeg,instance:d});return(0,template_utils_1.stampOnMedia)({baseSource:i,baseAssets:t,canvasW:a,canvasH:o,rect:{x:0,y:0,w:a,h:o},layers:[{child:s,opacity:r.opacity,key:"pattern"}]})}l(buildPageDoc,"buildPageDoc");function debugConstraints(n){return n.mode==="page"?[{label:"wm:pattern",minWidthFrac:.99,minHeightFrac:.99}]:n.mode==="adaptive"||n.layoutM0?[]:[{label:"wm:wm",aspect:n.contentInfo.aspect,aspectTolerance:.06}]}l(debugConstraints,"debugConstraints");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var K=Object.defineProperty;var F=(e,a)=>K(e,"name",{value:a,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.WatermarkV1=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),geometry_1=require("./geometry"),adaptive_1=require("./adaptive"),pipeline_1=require("./pipeline"),propsSchema=(0,template_utils_1.definePropsSchema)({sourceIds:{type:"media[]",required:!0,description:"Media to watermark \u2014 pick a folder, one or more files, or drag-and-drop. One watermarked output per input.",meta:{ui:{label:"Source(s)",order:1},control:{multiple:!0,picker:"folder",accept:["image","video"]}}},mode:{type:"string",required:!1,description:'Watermark mode. "static" bakes it in; "adaptive" and "page" land in later phases.',meta:{constraints:{oneOf:["static","adaptive","page"]},ui:{label:"Mode",order:1}}},content:{type:"string",required:!1,description:'What the watermark shows: your logo image, a text wordmark, or both ("lockup", later phase).',meta:{constraints:{oneOf:["logo","text","lockup"]},ui:{label:"Content",order:2}}},image:{type:"media",required:!1,description:"Logo image file \u2014 PNG with transparency recommended.",meta:{control:{picker:"file",accept:["image"]},ui:{label:"Logo",order:3,primary:!0}}},text:{type:"string",required:!1,description:"Wordmark text (your brand or URL).",meta:{control:{placeholder:"yourbrand.com"},ui:{label:"Text",order:4}}},textColor:{type:"string",required:!1,description:"Wordmark color.",meta:{constraints:{isColor:!0},control:{colorPicker:!0},ui:{label:"Text Color",order:5}}},imageDark:{type:"media",required:!1,description:"Dark-background logo variant, crossfaded in over dark scenes (adaptive mode; later phase).",meta:{control:{picker:"file",accept:["image"]},ui:{label:"Logo (dark)",order:1,visibleWhen:{prop:"mode",equals:"adaptive"}}}},textColorOnLight:{type:"string",required:!1,description:"Wordmark color over bright regions (adaptive mode; later phase).",meta:{constraints:{isColor:!0},control:{colorPicker:!0},ui:{label:"Text Color (on light)",order:2,visibleWhen:{prop:"mode",equals:"adaptive"}}}},variant:{type:"string",required:!1,description:'"auto" follows scene luminance (bright scenes get the on-light artwork, dark scenes your primary styling); "single" always uses the primary artwork. Auto degrades to single when no luma probe is available.',meta:{constraints:{oneOf:["single","auto"]},ui:{label:"Variant",order:3,visibleWhen:{prop:"mode",equals:"adaptive"}}}},windowing:{type:"string",required:!1,description:'"always" keeps the watermark on (entrance fade); "windows" fades it in and out over timed appearances whose count scales with clip duration.',meta:{constraints:{oneOf:["always","windows"]},ui:{label:"Windowing",order:4,visibleWhen:{prop:"mode",equals:"adaptive"}}}},coverageOverride:{type:"number",required:!1,description:"Windowed mode: fraction of the clip the watermark is on-screen (overrides the duration tier).",meta:{constraints:{min:0,max:1},control:{placeholder:"auto",flavor:"slider",step:.05},ui:{label:"Coverage",order:5,visibleWhen:{prop:"mode",equals:"adaptive"}}}},fadeMs:{type:"number",required:!1,description:"Fade in/out duration at entrance and window boundaries, ms.",meta:{constraints:{min:0,max:5e3},ui:{label:"Fade (ms)",order:6,visibleWhen:{prop:"mode",equals:"adaptive"}}}},crossfadeMs:{type:"number",required:!1,description:"Light\u2194dark crossfade duration at scene brightness changes (always-on auto), ms.",meta:{constraints:{min:0,max:5e3},ui:{label:"Crossfade (ms)",order:7,visibleWhen:{prop:"mode",equals:"adaptive"}}}},lumaThreshold:{type:"number",required:!1,description:"Region luma (0..255) at/above which a scene counts as bright.",meta:{constraints:{min:0,max:255},control:{flavor:"slider",step:1},ui:{label:"Luma Threshold",order:8,visibleWhen:{prop:"mode",equals:"adaptive"}}}},minGapMs:{type:"number",required:!1,description:"Minimum gap between windowed appearances, ms.",meta:{constraints:{min:0,max:6e4},ui:{label:"Min Gap (ms)",order:9,visibleWhen:{prop:"mode",equals:"adaptive"}}}},lumaByInput:{type:"json",required:!1,description:"Override hatch: per-input region-luminance results. Normally the template pulls these itself via ctx.analysis \u2014 set this only to bypass the probe (agents, tests).",meta:{ui:{label:"Luma By Input",hidden:!0,consumer:"agent"}}},lockupLayout:{type:"string",required:!1,description:"Lockup arrangement: wordmark beside the logo or beneath it.",meta:{constraints:{oneOf:["text-right","text-below"]},ui:{label:"Lockup Layout",order:7,visibleWhen:{prop:"content",equals:"lockup"}}}},angleDeg:{type:"number",required:!1,description:"Pattern rotation angle, degrees clockwise (negative = up-slope).",meta:{constraints:{min:-90,max:90},control:{flavor:"slider",step:5},ui:{label:"Angle",order:1,visibleWhen:{prop:"mode",equals:"page"}}}},tileGapRatio:{type:"number",required:!1,description:"Gap between pattern instances, fraction of min(width, height).",meta:{constraints:{min:.01,max:.5},control:{flavor:"slider",step:.01},ui:{label:"Tile Gap",order:2,visibleWhen:{prop:"mode",equals:"page"}}}},stagger:{type:"boolean",required:!1,description:"Offset alternate pattern rows by half the pitch (brick layout).",meta:{ui:{label:"Stagger",order:3,visibleWhen:{prop:"mode",equals:"page"}}}},maxTiles:{type:"number",required:!1,description:"Hard cap on pattern instances (the gap grows to satisfy it).",meta:{constraints:{min:1,max:24},control:{flavor:"slider",step:1},ui:{label:"Max Tiles",order:4,visibleWhen:{prop:"mode",equals:"page"}}}},debugLayout:{type:"boolean",required:!1,description:"Dev: verify the watermark's layout contract and render a violation card instead of a broken layout.",meta:{ui:{label:"Debug Layout",order:1}}},opacity:{type:"number",required:!1,description:"Watermark opacity.",meta:{constraints:{min:.05,max:1},control:{flavor:"slider",step:.05},ui:{label:"Opacity",order:6}}},position:{type:"string",required:!1,description:"Standard placement on the canvas.",meta:{constraints:{oneOf:["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"]},ui:{label:"Position",order:1}}},sizeRatio:{type:"number",required:!1,description:"Watermark width as a fraction of the size basis \u2014 match it to your brand assets.",meta:{constraints:{min:.02,max:.9},control:{flavor:"slider",step:.01},ui:{label:"Size",order:2}}},sizeBasis:{type:"string",required:!1,description:"Which canvas dimension the size ratio measures against.",meta:{constraints:{oneOf:["min","width","height"]},ui:{label:"Size Basis",order:3}}},marginRatio:{type:"number",required:!1,description:"Margin from the canvas edges, as a fraction of min(width, height).",meta:{constraints:{min:0,max:.25},control:{flavor:"slider",step:.002},ui:{label:"Margin",order:4}}},layoutM0:{type:"m0",required:!1,description:"Escape hatch: an m0 layout resolving to exactly ONE frame \u2014 the watermark is placed in that rect (content keeps its aspect, contain-fit). Overrides Position/Size/Margin.",meta:{control:{placeholder:"e.g. 4(-,-,-,2[-,F])"},ui:{label:"Layout (m0)",order:1}}},imageOutputFormat:{type:"string",required:!1,description:"Image outputs: match each input's container (jpg stays jpeg, else png), or force one.",meta:{constraints:{oneOf:["match","png","jpeg"]},ui:{label:"Image Format",order:1}}}}),DEFAULTS={mode:geometry_1.WATERMARK_DEFAULTS.mode,content:geometry_1.WATERMARK_DEFAULTS.content,text:geometry_1.WATERMARK_DEFAULTS.text,textColor:geometry_1.WATERMARK_DEFAULTS.textColor,textColorOnLight:geometry_1.WATERMARK_DEFAULTS.textColorOnLight,lockupLayout:geometry_1.WATERMARK_DEFAULTS.lockupLayout,position:geometry_1.WATERMARK_DEFAULTS.position,sizeRatio:geometry_1.WATERMARK_DEFAULTS.sizeRatio,sizeBasis:geometry_1.WATERMARK_DEFAULTS.sizeBasis,marginRatio:geometry_1.WATERMARK_DEFAULTS.marginRatio,opacity:geometry_1.WATERMARK_DEFAULTS.opacity,variant:geometry_1.WATERMARK_DEFAULTS.variant,windowing:geometry_1.WATERMARK_DEFAULTS.windowing,fadeMs:geometry_1.WATERMARK_DEFAULTS.fadeMs,crossfadeMs:geometry_1.WATERMARK_DEFAULTS.crossfadeMs,lumaThreshold:geometry_1.WATERMARK_DEFAULTS.lumaThreshold,minGapMs:geometry_1.WATERMARK_DEFAULTS.minGapMs,angleDeg:geometry_1.WATERMARK_DEFAULTS.angleDeg,tileGapRatio:geometry_1.WATERMARK_DEFAULTS.tileGapRatio,stagger:geometry_1.WATERMARK_DEFAULTS.stagger,maxTiles:geometry_1.WATERMARK_DEFAULTS.maxTiles,imageOutputFormat:geometry_1.WATERMARK_DEFAULTS.imageOutputFormat,debugLayout:geometry_1.WATERMARK_DEFAULTS.debugLayout},ERROR_TITLE="Watermark";exports.WatermarkV1=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/media/watermark/v1"),label:"Watermark",version:1,description:"Stamp your logo or wordmark onto any image or video \u2014 9 positions or an exact m0 rect, ratio-true sizing, opacity control. Point it at a folder for one watermarked output per input. (Free tier adds the m0saic QR at bottom-right \u2014 pick a different corner to avoid overlap.)",capabilities:{tier:"core"},tags:["media","watermark","brand","batch","creators","marketers","animated","logo","overlay","video"],outputHints:{format:{kind:"video",container:"mp4"},width:1920,height:1080,fps:30,durationMs:1e4},propsSchema,defaultProps:DEFAULTS,async render(e,a){var s,l,d,u,m,c,p,g,h,f,v,b,y,k,A,R,T,w,L,M,_,W,E,x;const o=F(t=>(0,template_utils_1.makeErrorMosaic)(t,{title:ERROR_TITLE,width:a.target.width,height:a.target.height}),"fail"),i=(s=e.mode)!==null&&s!==void 0?s:DEFAULTS.mode;if(i!=="static"&&i!=="adaptive"&&i!=="page")return o(`Watermark mode "${i}" is not recognized \u2014 use "static", "adaptive", or "page".`);const r=(l=e.content)!==null&&l!==void 0?l:DEFAULTS.content;if(r!=="logo"&&r!=="text"&&r!=="lockup")return o(`Watermark content "${r}" is not recognized \u2014 use "logo", "text", or "lockup".`);const n=(d=e.sourceIds)!==null&&d!==void 0?d:[];if(n.length===0)return o('Missing required "Source(s)": pick a folder, one or more files, or drag-and-drop.');const q=(0,geometry_1.normalizeLayoutM0)(e.layoutM0);let S;try{q&&(0,geometry_1.validateLayoutM0)(q),S=(0,geometry_1.resolveContentInfo)(e,a)}catch(t){return o(t instanceof Error?t.message:String(t))}const D={mode:i,content:r,...e.image!==void 0?{image:e.image}:{},...e.imageDark!==void 0?{imageDark:e.imageDark}:{},text:((u=e.text)!==null&&u!==void 0?u:DEFAULTS.text).trim(),textColor:(m=e.textColor)!==null&&m!==void 0?m:DEFAULTS.textColor,textColorOnLight:(c=e.textColorOnLight)!==null&&c!==void 0?c:DEFAULTS.textColorOnLight,lockupLayout:(p=e.lockupLayout)!==null&&p!==void 0?p:DEFAULTS.lockupLayout,position:(g=e.position)!==null&&g!==void 0?g:DEFAULTS.position,sizeRatio:(h=e.sizeRatio)!==null&&h!==void 0?h:DEFAULTS.sizeRatio,sizeBasis:(f=e.sizeBasis)!==null&&f!==void 0?f:DEFAULTS.sizeBasis,marginRatio:(v=e.marginRatio)!==null&&v!==void 0?v:DEFAULTS.marginRatio,opacity:(b=e.opacity)!==null&&b!==void 0?b:DEFAULTS.opacity,layoutM0:q,imageOutputFormat:(y=e.imageOutputFormat)!==null&&y!==void 0?y:DEFAULTS.imageOutputFormat,contentInfo:S,variant:(k=e.variant)!==null&&k!==void 0?k:DEFAULTS.variant,windowing:(A=e.windowing)!==null&&A!==void 0?A:DEFAULTS.windowing,fadeMs:(R=e.fadeMs)!==null&&R!==void 0?R:DEFAULTS.fadeMs,crossfadeMs:(T=e.crossfadeMs)!==null&&T!==void 0?T:DEFAULTS.crossfadeMs,lumaThreshold:(w=e.lumaThreshold)!==null&&w!==void 0?w:DEFAULTS.lumaThreshold,minGapMs:(L=e.minGapMs)!==null&&L!==void 0?L:DEFAULTS.minGapMs,...e.coverageOverride!==void 0?{coverageOverride:e.coverageOverride}:{},angleDeg:(M=e.angleDeg)!==null&&M!==void 0?M:DEFAULTS.angleDeg,tileGapRatio:(_=e.tileGapRatio)!==null&&_!==void 0?_:DEFAULTS.tileGapRatio,stagger:(W=e.stagger)!==null&&W!==void 0?W:DEFAULTS.stagger,maxTiles:(E=e.maxTiles)!==null&&E!==void 0?E:DEFAULTS.maxTiles,debugLayout:(x=e.debugLayout)!==null&&x!==void 0?x:DEFAULTS.debugLayout};if(i==="adaptive"&&(0,geometry_1.watermarkNeedsLumaProbe)(e))if(e.lumaByInput!==void 0)D.lumaByInput=e.lumaByInput;else{const t=await(0,adaptive_1.probeLumaByInput)(e,n,a);t&&(D.lumaByInput=t)}const O=(0,template_utils_1.buildStepNames)(n);return{kind:"mosaic_pipeline",version:1,emit:"multi",steps:n.map((t,U)=>(0,pipeline_1.buildWatermarkStep)({inputPath:t,stepName:O[U],knobs:D,ctx:a}))}}}),(0,template_utils_1.registerTemplate)(exports.WatermarkV1),exports.default=exports.WatermarkV1;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var c=Object.defineProperty;var a=(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:a(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("./v1/camera-debug"),exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var j=Object.defineProperty;var d=(f,S)=>j(f,"name",{value:S,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.CameraDebug=void 0;const types_1=require("@m0saic/types"),dsl_1=require("@m0saic/dsl"),template_utils_1=require("@m0saic/template-utils"),BG_COLOR="#0E1220",TILE_COLOR="#2A3140",TILE_BORDER_COLOR="#4E5B76",VIEWPORT_COLOR="#FF3B30",propsSchema=(0,template_utils_1.definePropsSchema)({M0String:{type:"m0",required:!0,description:"The layout to debug the camera over.",meta:{control:{placeholder:'e.g. "2(2[1,1],2[1,1])"'},ui:{label:"Layout (m0 string)"}}},camera:{type:"json",required:!1,description:'Raw camera to verify ({zoom, focusX, focusY}) \u2014 each field a number, a t-expression, or keyframes [{t, v, ease?}] (eased between the moments you assign; holds outside them). Wins over the walk-recipe knobs. Example: {"zoom":2,"focusX":[{"t":1,"v":0},{"t":2,"v":1}],"focusY":0.5} pans left\u2192right across 1s..2s.',meta:{ui:{label:"Raw camera",collapsedByDefault:!0}}},speedMultiplier:{type:"number",required:!1,description:"Walk speed multiplier (>1 = faster).",meta:{constraints:{min:.1,max:8},control:{flavor:"slider",step:.1},ui:{label:"Speed"}}},zoom:{type:"number",required:!1,description:"Camera zoom. Omit = auto (legibility-driven); 1 = fixed full view.",meta:{constraints:{min:1,max:8},control:{placeholder:"from camera",flavor:"slider",step:.25},ui:{label:"Zoom"}}},mode:{type:"string",required:!1,description:"Viewport visualization: smooth eased pan, or snap-per-settle rings.",meta:{constraints:{oneOf:["smooth","snap"]},control:{options:[{value:"smooth",label:"Smooth pan"},{value:"snap",label:"Snap rings"}]},ui:{label:"Mode"}}}});exports.CameraDebug={id:(0,types_1.asTemplateId)("@m0saic/meta/camera-debug/v1"),label:"Camera Debugger",version:1,description:"Gray-box wireframe of any layout with the camera's crop viewport drawn as a red rectangle \u2014 debug follow-camera motion without rendering real content.",capabilities:{tier:"core"},internal:!0,tags:["developer","meta","camera","debug"],outputHints:{width:1280,height:720,fps:30,durationMs:5e3,note:"Camera viewport visualized over a gray-box layout walk."},propsSchema,defaultProps:{mode:"smooth",speedMultiplier:1,M0String:"2(2[1,1],2[1,1])",camera:{zoom:2,focusX:[{t:.5,v:0},{t:1.5,v:1},{t:2.5,v:0},{t:3.5,v:1}],focusY:[{t:.5,v:0},{t:1.5,v:1},{t:2.5,v:1},{t:3.5,v:0}]}},render(f,S){var k,A,C,O;const c=S.target.width,l=S.target.height,Z=String(f.M0String),B=(0,dsl_1.parseM0StringComplete)(Z,c,l);if(!B.ok)throw new Error(`camera-debug: m0 parse failed \u2014 ${(A=(k=B.error)===null||k===void 0?void 0:k.message)!==null&&A!==void 0?A:"unknown"}`);const w=B.ir.renderFrames.slice().sort((t,o)=>t.logicalIndex-o.logicalIndex),x=(0,template_utils_1.computeTimeline)({stepCount:w.length,speedMultiplier:(C=f.speedMultiplier)!==null&&C!==void 0?C:1,targetDurationMs:(0,template_utils_1.resolvePinnedDurationMs)(S)}),b=x.durationMs/1e3,F=d(t=>x.stepStartSec(t)+x.stepDurSec/2,"settle"),M=f.zoom!=null?f.zoom:(0,template_utils_1.autoZoomForLegibility)(w.map(t=>({width:t.width,height:t.height})),c,l,c,l),h=Math.max(2,Math.round(Math.min(c,l)*.005)),m=[],T=w.length,P=T>0&&2*T<=template_utils_1.MASK_SUBPATH_BUDGET,I=T>0&&T<=template_utils_1.MASK_SUBPATH_BUDGET,H=d((t,o)=>Math.max(0,Math.floor(Math.min(t,o)*.04)),"tileRadius");if(I){if(P){const o=w.map(s=>{const e=Math.round(s.width),r=Math.round(s.height);return e<=0||r<=0?"":(0,template_utils_1.roundedRectPathD)(Math.round(s.x),Math.round(s.y),e,r,H(e,r))});m.push((0,template_utils_1.maskAtlasSource)(o,TILE_BORDER_COLOR,{width:c,height:l}))}const t=w.map(o=>{const s=Math.round(o.width),e=Math.round(o.height);if(s<=0||e<=0)return"";const r=H(s,e),n=P?Math.max(1,Math.floor(.004*Math.min(s,e))):0,a=s-2*n,i=e-2*n;if(a<=0||i<=0)return"";const u=P?Math.max(r-n,0):r;return(0,template_utils_1.roundedRectPathD)(Math.round(o.x)+n,Math.round(o.y)+n,a,i,u)});m.push((0,template_utils_1.maskAtlasSource)(t,TILE_COLOR,{width:c,height:l}))}else T>0&&m.push((0,template_utils_1.makeColorTile)(TILE_COLOR));const z=d((t,o)=>Array.isArray(t)?t.length>0?(0,template_utils_1.keyframeExpr)(t):o:t==null?o:typeof t=="number"?t.toFixed(5):String(t),"fieldExpr"),Y=d(t=>Array.isArray(t)?t.length===0?void 0:t.every(o=>o.v===t[0].v)?t[0].v:(0,template_utils_1.keyframeExpr)(t):t,"zoomOf"),K=d((t,o,s,e)=>{const r=Math.max(2*h,Math.round(c/t)),n=Math.max(2*h,Math.round(l/t)),a=c-c/t,i=l-l/t,u=`M0 0 H${r} V${n} H0 Z`,p=`M${h} ${h} V${n-h} H${r-h} V${h} Z`;m.push((0,template_utils_1.makeColorTile)(VIEWPORT_COLOR,{mask:{kind:"inline-mask",localPath:`${u} ${p}`,bounds:{x:0,y:0,width:c,height:l}},overlay:{xExpr:(0,template_utils_1.rebalanceAdditiveChains)(`(${a.toFixed(4)})*(${o})`),yExpr:(0,template_utils_1.rebalanceAdditiveChains)(`(${i.toFixed(4)})*(${s})`),...e?{enable:e}:{}}}))},"pushViewportRing"),V=d(()=>{m.push((0,template_utils_1.gatedBoxTrackSource)([{x:0,y:0,w:c,h:l,thicknessPx:h}],{color:VIEWPORT_COLOR}))},"pushStaticRing"),W=d((t,o)=>t==="linear"?o:t==="easeOut"?1-(1-o)*(1-o):o*o*(3-2*o),"easeU"),_=d((t,o)=>{if(o<t[0].t||t.length===1)return t[0].v;for(let s=0;s<t.length-1;s++){const e=t[s],r=t[s+1];if(o>=e.t&&o<r.t){const n=Math.max(1e-4,r.t-e.t),a=Math.min(1,Math.max(0,(o-e.t)/n));return e.v+(r.v-e.v)*W(e.ease,a)}}return t[t.length-1].v},"sampleKeys"),D=d((t,o)=>t==null?()=>o:typeof t=="number"?()=>t:Array.isArray(t)?t.length>0?s=>_(t,s):()=>o:null,"samplerOf"),L=d((t,o,s,e)=>{const r=S.target.fps>0?S.target.fps:30,n=Math.ceil(e*r)>template_utils_1.GATED_BOX_BUDGET?template_utils_1.GATED_BOX_BUDGET/e:r,a=Math.max(1,Math.ceil(e*n)),i=[];for(let u=0;u<a;u++){const p=u/a*e,v=(u+1)/a*e,y=(p+v)/2,R=Math.max(1,t(y)),g=(0,template_utils_1.cameraViewportRect)(o(y),s(y),R,c,l),q=Math.round(g.x),G=Math.round(g.y),X=Math.max(2*h,Math.round(g.width)),U=Math.max(2*h,Math.round(g.height)),E=i[i.length-1];E&&E.x===q&&E.y===G&&E.w===X&&E.h===U?E.toSec=v:i.push({x:q,y:G,w:X,h:U,fromSec:p,toSec:v,thicknessPx:h})}i.length>0&&delete i[i.length-1].toSec,m.push((0,template_utils_1.gatedBoxTrackSource)(i,{color:VIEWPORT_COLOR}))},"pushFilmstrip"),$=f.camera;if($){const t=D($.zoom,1),o=D($.focusX,.5),s=D($.focusY,.5);if(t&&o&&s)L(t,o,s,b);else{const e=z($.focusX,"0.5"),r=z($.focusY,"0.5"),n=Y($.zoom);if(typeof n=="string"){const a=`(${n})`,i=`(${e})*(${c}-${c}/${a})`,u=`(${r})*(${l}-${l}/${a})`,p=`M0 0 H${h} V${l} H0 Z`,v=`M0 0 H${c} V${h} H0 Z`,y=d((R,g)=>(0,template_utils_1.makeColorTile)(VIEWPORT_COLOR,{mask:{kind:"inline-mask",localPath:R,bounds:{x:0,y:0,width:c,height:l}},overlay:{...g.xExpr?{xExpr:(0,template_utils_1.rebalanceAdditiveChains)(g.xExpr)}:{},...g.yExpr?{yExpr:(0,template_utils_1.rebalanceAdditiveChains)(g.yExpr)}:{}}}),"guide");m.push(y(p,{xExpr:i})),m.push(y(p,{xExpr:`${i}+${c}/${a}-${h}`})),m.push(y(v,{yExpr:u})),m.push(y(v,{yExpr:`${u}+${l}/${a}-${h}`}))}else n!=null&&n>1?K(n,e,r):V()}}else if(M>1&&w.length>0){const t=w.map((e,r)=>({rect:{x:e.x,y:e.y,width:e.width,height:e.height},atSec:F(r+1)})),o={endSec:b,earliestStartSec:x.stepStartSec(t.length),settleOutSec:Math.min(F(t.length)+x.stepDurSec/2,b)},s=(0,template_utils_1.resolvePullBackEnvelope)(o);if(((O=f.mode)!==null&&O!==void 0?O:"smooth")==="snap"){const e=[];for(let r=0;r<t.length;r++){const n=t[r],a=(0,template_utils_1.centerFocus)((n.rect.x+n.rect.width/2)/c,M),i=(0,template_utils_1.centerFocus)((n.rect.y+n.rect.height/2)/l,M),u=(0,template_utils_1.cameraViewportRect)(a,i,M,c,l),p=x.stepStartSec(r+1),v=r+1<t.length?x.stepStartSec(r+2):s.active?s.outStartSec:b;e.push({x:Math.round(u.x),y:Math.round(u.y),w:Math.max(2*h,Math.round(u.width)),h:Math.max(2*h,Math.round(u.height)),fromSec:p,toSec:v,thicknessPx:h})}s.active&&e.push({x:0,y:0,w:c,h:l,fromSec:s.zoomEndSec,thicknessPx:h}),e.length>0&&m.push((0,template_utils_1.gatedBoxTrackSource)(e,{color:VIEWPORT_COLOR}))}else{const e=t.map(a=>({t:a.atSec,v:(0,template_utils_1.centerFocus)((a.rect.x+a.rect.width/2)/c,M)})),r=t.map(a=>({t:a.atSec,v:(0,template_utils_1.centerFocus)((a.rect.y+a.rect.height/2)/l,M)}));let n=[{t:0,v:M}];if(s.active){const a=Math.min(b,Math.max(s.outStartSec,e[e.length-1].t)),i=Math.min(b,Math.max(s.zoomEndSec,a+.3));i>a&&(e.push({t:a,v:e[e.length-1].v},{t:i,v:.5}),r.push({t:a,v:r[r.length-1].v},{t:i,v:.5}),n=[{t:a,v:M},{t:i,v:1}])}L(a=>_(n,a),a=>_(e,a),a=>_(r,a),b)}}else V();return Promise.resolve({kind:"mosaic_document",version:1,assets:{},m0:(0,template_utils_1.buildOverlayStack)(m.length),sources:m,backgroundColor:BG_COLOR,durationMs:x.durationMs})}},(0,template_utils_1.registerTemplate)(exports.CameraDebug);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var o=Object.defineProperty;var c=(r,e)=>o(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:c(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("./v1/fixture-fetcher"),exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.FixtureFetcher=exports.FIXTURE_FETCHER_DEFAULT_PAYLOAD=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils");exports.FIXTURE_FETCHER_DEFAULT_PAYLOAD={dataset:"m0saic-fixture",version:1,series:[3,5,8,13],label:"deterministic fixture payload"};const propsSchema=(0,template_utils_1.definePropsSchema)({alias:{type:"string",required:!1,description:'Alias the published data block appears under in ctx.upstreamData. Default "fixtureData".'},payload:{type:"json",required:!1,description:"Plain JSON object to publish instead of the built-in deterministic fixture payload."},secretRef:{meta:{control:{placeholder:"none"}},type:"string",required:!1,description:"Optional SecretRef (e.g. env:M0SAIC_FIXTURE_SECRET). Resolved via ctx.secrets; publishes { secretResolved, secretLength } \u2014 never cleartext."}});exports.FixtureFetcher=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/meta/fixture-fetcher/v1"),label:"Fixture Fetcher (internal)",version:1,description:"Deterministic capability-layer proof fixture: publishes a fixed payload as an aliased data source (pipeline-step-0 shape) and, when secretRef is set, a derived non-secret marker resolved via ctx.secrets. No network, no fs.",role:"data-fetcher",capabilities:{tier:"capability",caps:{}},tags:["developer","meta","fixture","data-fetcher","internal"],internal:!0,outputHints:{width:64,height:64,fps:1,durationMs:1e3,note:"Publishes upstream variables; renders only a degenerate black carrier tile. Always wrap in a pipeline step with intermediate:true so the carrier never reaches the deliverable."},outputsSchema:{dataset:{type:"string",required:!1},version:{type:"number",required:!1},series:{type:"number[]",required:!1},label:{type:"string",required:!1},secret:{type:"object",required:!1}},propsSchema,defaultProps:{alias:"fixtureData"},async render(e,t){var r,a;const s=(r=e.alias)!==null&&r!==void 0?r:"fixtureData";if(!(0,types_1.isAliasId)(s))throw new Error(`meta/fixture-fetcher: alias ${JSON.stringify(s)} is not a valid AliasId (letter/_ start, alphanumeric, max 64 chars).`);if(e.payload!==void 0&&(e.payload===null||typeof e.payload!="object"||Array.isArray(e.payload)))throw new Error("meta/fixture-fetcher: payload must be a plain JSON object (MosaicDataSource.variables shape).");const i={...(a=e.payload)!==null&&a!==void 0?a:exports.FIXTURE_FETCHER_DEFAULT_PAYLOAD};if(e.secretRef!==void 0&&e.secretRef!==""){if(!t.secrets)throw new Error('meta/fixture-fetcher: secretRef was set but ctx.secrets is absent. Either the host threads no secret resolver, or this template lost its tier:"capability" declaration (the Level 1 gate strips secrets from core-tier templates).');if(!await t.secrets.has(e.secretRef))throw new Error(`meta/fixture-fetcher: secretRef ${JSON.stringify(e.secretRef)} did not resolve (resolver.has() === false).`);const l=await t.secrets.get(e.secretRef);if(typeof l!="string"||l.length===0)throw new Error(`meta/fixture-fetcher: secretRef ${JSON.stringify(e.secretRef)} resolved to an empty value.`);i.secret={secretResolved:!0,secretLength:l.length}}return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("1","fixtureFetcher"),assets:{},sources:[{type:"lavfi",color:"#000000"},{type:"data",alias:(0,types_1.asAliasId)(s),variables:i,editor:{owner:"template"}}],sidecars:{fixtureData:i}}}}),(0,template_utils_1.registerTemplate)(exports.FixtureFetcher),exports.default=exports.FixtureFetcher;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var a=Object.defineProperty;var o=(r,e)=>a(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("./v1/hot-reload-smoke"),exports);
|
package/node_modules/@m0saic/templates/dist/m0saic/meta/hot-reload-smoke/v1/hot-reload-smoke.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var d=Object.defineProperty;var a=(e,s)=>d(e,"name",{value:s,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.HotReloadSmoke=exports.HOT_RELOAD_SMOKE_COLOR=exports.SMOKE_BLUE=exports.SMOKE_RED=void 0,exports.smokeColorLabel=smokeColorLabel;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils");exports.SMOKE_RED="#d02020",exports.SMOKE_BLUE="#2050d0",exports.HOT_RELOAD_SMOKE_COLOR=exports.SMOKE_RED;function smokeColorLabel(e){return e===exports.SMOKE_RED?"RED":e===exports.SMOKE_BLUE?"BLUE":e.toUpperCase()}a(smokeColorLabel,"smokeColorLabel");const propsSchema=(0,template_utils_1.definePropsSchema)({color:{meta:{constraints:{isColor:!0},control:{placeholder:"module constant HOT_RELOAD_SMOKE_COLOR",colorPicker:!0}},type:"string",required:!1,description:"Optional fill override (#rrggbb). Unset: the HOT_RELOAD_SMOKE_COLOR constant baked into the template source."},showLabel:{type:"boolean",required:!1,description:"Print the color name and template id on the square."}});exports.HotReloadSmoke=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/meta/hot-reload-smoke/v1"),label:"Hot Reload Smoke (internal)",version:1,description:"Dev canary for the desktop app's template hot reload: a solid color square whose fill comes from a constant in the template SOURCE (not a prop default), so a rebuilt dist can only show through if the running process re-executed the file. Flip HOT_RELOAD_SMOKE_COLOR red \u2192 blue, rebuild, and the app must follow without a restart.",capabilities:{tier:"core"},tags:["developer","meta","fixture","internal"],internal:!0,outputHints:{width:720,height:720,fps:30,durationMs:1e3,note:"Square canvas \u2014 the canary is a solid fill, so the aspect only has to be unmistakable."},propsSchema,defaultProps:{showLabel:!0},async render(e,s){var t,o;if(e.color!==void 0&&!/^#[0-9a-fA-F]{6}$/.test(e.color))throw new Error(`meta/hot-reload-smoke: color ${JSON.stringify(e.color)} must be a #rrggbb hex color.`);const r=(t=e.color)!==null&&t!==void 0?t:exports.HOT_RELOAD_SMOKE_COLOR,l=(o=e.showLabel)!==null&&o!==void 0?o:!0,i=[{content:{kind:"literal",text:smokeColorLabel(r)},style:{fontSize:96,fontColor:"#ffffff"},placement:{xExpr:"(w-text_w)/2",yExpr:"h*0.44-text_h/2"}},{content:{kind:"literal",text:"hot-reload-smoke/v1"},style:{fontSize:26,fontColor:"#ffffff"},placement:{xExpr:"(w-text_w)/2",yExpr:"h*0.62-text_h/2"}}],n=l?{type:"text",visual:{backgroundColor:(0,template_utils_1.solidBackground)(r)},layers:i}:(0,template_utils_1.makeColorTile)((0,template_utils_1.solidBackground)(r));return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("F","hotReloadSmoke"),assets:{},sources:[n]}}}),(0,template_utils_1.registerTemplate)(exports.HotReloadSmoke),exports.default=exports.HotReloadSmoke;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var n=(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 o=Object.getOwnPropertyDescriptor(e,r);(!o||("get"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:n(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("./post-mortem"),exports),__exportStar(require("./fixture-fetcher"),exports),__exportStar(require("./upstream-echo"),exports),__exportStar(require("./camera-debug"),exports),__exportStar(require("./hot-reload-smoke"),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("./v1/post-mortem"),exports);
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var O=Object.defineProperty;var f=(t,e)=>O(t,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.PostMortem=void 0;const node_fs_1=require("node:fs"),node_path_1=require("node:path"),assetPath_1=require("@m0saic/template-utils/dist/m0saic/assetPath"),types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),loadSession_1=require("@m0saic/template-utils/dist/m0saic/loadSession"),DEFAULT_MS_PER_CANDIDATE=4e3,DEFAULT_MS_TITLE_CARD=2500,DEFAULT_MS_END_CARD=2500,DEFAULT_FPS=30;function resolveSessionPath(t){if((0,node_path_1.isAbsolute)(t))return t;let e=process.cwd();for(;;){const a=(0,node_path_1.resolve)(e,t);if((0,node_fs_1.existsSync)(a))return a;const r=(0,node_path_1.dirname)(e);if(r===e)return(0,node_path_1.resolve)(t);e=r}}f(resolveSessionPath,"resolveSessionPath");const ASSET_AGENT_PNG=(0,assetPath_1.bundledAssetPath)((0,node_path_1.resolve)(__dirname,"assets"),"robot.png"),ASSET_HUMAN_PNG=(0,assetPath_1.bundledAssetPath)((0,node_path_1.resolve)(__dirname,"assets"),"human.png"),HAS_AGENT_AVATAR=(0,node_fs_1.existsSync)(ASSET_AGENT_PNG),HAS_HUMAN_AVATAR=(0,node_fs_1.existsSync)(ASSET_HUMAN_PNG),DEFAULT_CHAT_WEIGHT_SLOTS=2,DEFAULT_CANVAS_WEIGHT_SLOTS=3,propsSchema=(0,template_utils_1.definePropsSchema)({sessionPath:{type:"string",required:!0,description:"Path to a sandbox session directory (absolute or repo-root-relative).",meta:{control:{placeholder:"packages/sandbox/sessions/2026-06-09-bar-graph"},ui:{label:"Session path"}}},maxCandidates:{type:"number",required:!1,description:"Hard cap on candidates rendered. Default: all.",meta:{control:{placeholder:"all"},ui:{label:"Max candidates"}}},msPerCandidate:{type:"number",required:!1,description:"Per-candidate dwell time in milliseconds.",meta:{ui:{label:"ms per candidate"}}},msTitleCard:{type:"number",required:!1,description:"Title card dwell time in milliseconds.",meta:{ui:{label:"ms title card"}}},msEndCard:{type:"number",required:!1,description:"End card dwell time in milliseconds.",meta:{ui:{label:"ms end card"}}},chatWeightSlots:{type:"number",required:!1,description:"Chat-column weight in integer slots (default 1, paired with canvasWeightSlots=3 for a 25/75 split).",meta:{ui:{label:"Chat weight (slots)"}}},canvasWeightSlots:{type:"number",required:!1,description:"Canvas-column weight in integer slots (default 3, paired with chatWeightSlots=1 for a 25/75 split).",meta:{ui:{label:"Canvas weight (slots)"}}}});exports.PostMortem={id:(0,types_1.asTemplateId)("@m0saic/meta/post-mortem/v1"),label:"Post-Mortem (Session Replay)",version:1,description:"Renders a sandbox session as a watchable video \u2014 chat thread on the left, wireframe on the right.",capabilities:{tier:"core"},internal:!0,tags:["developer","meta","session","post-mortem","sandbox"],outputHints:{width:1920,height:1080,fps:DEFAULT_FPS,durationMs:1e4,note:"Variable duration \u2014 sums per-candidate steps plus title + end cards."},propsSchema,defaultProps:{canvasWeightSlots:3,chatWeightSlots:2,msEndCard:2500,msTitleCard:2500,msPerCandidate:4e3,sessionPath:"packages/sandbox/sessions"},async render(t,e){var a,r,l,c,m,u,A;let h=(a=t.msPerCandidate)!==null&&a!==void 0?a:DEFAULT_MS_PER_CANDIDATE,_=(r=t.msTitleCard)!==null&&r!==void 0?r:DEFAULT_MS_TITLE_CARD,d=(l=t.msEndCard)!==null&&l!==void 0?l:DEFAULT_MS_END_CARD;const g=(c=t.chatWeightSlots)!==null&&c!==void 0?c:DEFAULT_CHAT_WEIGHT_SLOTS,p=(m=t.canvasWeightSlots)!==null&&m!==void 0?m:DEFAULT_CANVAS_WEIGHT_SLOTS,y=resolveSessionPath(t.sessionPath),S=(0,loadSession_1.loadSession)(y),b=t.maxCandidates!=null?S.candidates.slice(0,t.maxCandidates):S.candidates,x=_+b.length*h+d,k=(u=e.target.durationMs)!==null&&u!==void 0?u:x;if(x>0&&Math.abs(k-x)>1){const i=k/x;_=Math.max(100,Math.round(_*i)),h=Math.max(100,Math.round(h*i)),d=Math.max(100,Math.round(d*i))}const s=[];s.push({durationMs:_,file:buildTitleCard(S,b.length)});const o=[];for(let i=0;i<b.length;i++){const T=b[i];pushCandidateMoments(o,T),s.push({durationMs:h,file:await buildCandidateStep(S,b,i,o,e,g,p)})}s.push({durationMs:d,file:buildEndCard(S,b.length)});const M=s.reduce((i,T)=>i+T.durationMs,0),E=k-M;if(E!==0&&s.length>0){const i=s[s.length-1];s[s.length-1]={...i,durationMs:Math.max(100,i.durationMs+E)}}const P=s.reduce((i,T)=>i+T.durationMs,0);return{kind:"mosaic_pipeline",version:1,fps:(A=e.target.fps)!==null&&A!==void 0?A:DEFAULT_FPS,durationMs:P,defaultTransition:{type:"cut"},backgroundColor:"#0f1116",steps:s}}},(0,template_utils_1.registerTemplate)(exports.PostMortem);function pushCandidateMoments(t,e){var a,r,l,c,m,u,A,h,_,d;const g=e.ref.number;if(t.push({speaker:"system",text:`\u2500\u2500 candidate-${g} \u2500\u2500`}),!((a=e.agent)===null||a===void 0)&&a.note&&t.push({speaker:"agent",text:`note: ${e.agent.note}`}),!((r=e.agent)===null||r===void 0)&&r.question&&t.push({speaker:"agent",text:`Q: ${e.agent.question}`}),!((c=(l=e.agent)===null||l===void 0?void 0:l.response)===null||c===void 0)&&c.body){const y=(m=e.agent.response.from)!==null&&m!==void 0?m:"human";t.push({speaker:"human",text:`${y}: ${e.agent.response.body}`})}const p=(A=(u=e.context)===null||u===void 0?void 0:u.evaluation)===null||A===void 0?void 0:A.grade;if(p){const y=(d=(_=(h=e.context)===null||h===void 0?void 0:h.evaluation)===null||_===void 0?void 0:_.source)!==null&&d!==void 0?d:"human";t.push({speaker:"system",text:`\u25B6 grade: ${p} (${y})`})}}f(pushCandidateMoments,"pushCandidateMoments");function buildTitleCard(t,e){return{kind:"mosaic_document",version:1,assets:{},m0:(0,dsl_stdlib_1.toM0String)("F","PostMortem/card"),sources:[{type:"text",placement:{hAlign:"center",vAlign:"middle"},style:{fontSize:48,fontColor:"#ffffff"},visual:{backgroundColor:"#0f1116"},layers:[{content:{kind:"literal",text:t.session.slug},placement:{hAlign:"center",vAlign:"middle",yExpr:"(h-text_h)/2 - text_h*0.8"},style:{fontSize:64,fontColor:"#ffffff"}},{content:{kind:"literal",text:`${e} candidate${e===1?"":"s"}`},placement:{hAlign:"center",vAlign:"middle",yExpr:"(h-text_h)/2 + text_h*0.8"},style:{fontSize:32,fontColor:"#9aa0a6"}}]}]}}f(buildTitleCard,"buildTitleCard");function buildEndCard(t,e){return{kind:"mosaic_document",version:1,assets:{},m0:(0,dsl_stdlib_1.toM0String)("F","PostMortem/card"),sources:[{type:"text",placement:{hAlign:"center",vAlign:"middle"},style:{fontSize:40,fontColor:"#ffffff"},visual:{backgroundColor:"#0f1116"},layers:[{content:{kind:"literal",text:"End of session"},placement:{hAlign:"center",vAlign:"middle",yExpr:"(h-text_h)/2 - text_h*0.8"},style:{fontSize:56,fontColor:"#ffffff"}},{content:{kind:"literal",text:`${t.session.slug} \xB7 ${e} candidate${e===1?"":"s"}`},placement:{hAlign:"center",vAlign:"middle",yExpr:"(h-text_h)/2 + text_h*0.8"},style:{fontSize:28,fontColor:"#9aa0a6"}}]}]}}f(buildEndCard,"buildEndCard");async function buildCandidateStep(t,e,a,r,l,c,m){const u=e[a],A=(0,dsl_stdlib_1.weightedSplit)([c,m],"col"),h=c+m,_=Math.max(1,Math.floor(l.target.width*c/h)),d=Math.max(1,l.target.height),g=await(0,template_utils_1.renderNestedTemplate)("@m0saic/wireframe/base/v2",{M0String:u.file.m0,preset:"debug-contrast",...u.labels?{labelsByStableKey:u.labels}:{}},l),p=await buildChatStream(r,_,d,l);return{kind:"mosaic_document",version:1,assets:{},m0:A,sources:[{type:"mosaic",ref:"chat-stream"},{type:"mosaic",ref:"canvas"}],backgroundColor:"#0f1116",children:{canvas:g,"chat-stream":p}}}f(buildCandidateStep,"buildCandidateStep");async function buildChatStream(t,e,a,r){const d=Math.floor(30),g=80,p=Math.max(40,snapDown(e-20-40-20-g,20)),y=snapDown(e-20-40,20),S=e-40,b=f(n=>(n.speaker==="system"?24:100)+20,"stride"),x=[];let k=0;for(let n=t.length-1;n>=0;n--){const v=b(t[n]);if(k+v+40>a)break;x.unshift(t[n]),k+=v}if(x.length===0)return blankChatColumn(e,a,r);let s=a-40-k+20;const o=[];for(const n of x){if(n.speaker==="system"){o.push({kind:"system",rect:{x:20,y:s,w:S,h:24},text:n.text}),s+=44;continue}if(n.speaker==="agent"){o.push({kind:"agent-avatar",rect:{x:20,y:s+d,w:40,h:40},text:"\u{1F916}"}),o.push({kind:"agent-body",rect:{x:g,y:s,w:p,h:100},text:n.text}),s+=120;continue}o.push({kind:"human-body",rect:{x:g,y:s,w:p,h:100},text:n.text}),o.push({kind:"human-avatar",rect:{x:y,y:s+d,w:40,h:40},text:"\u{1F464}"}),s+=120}let M=(0,dsl_stdlib_1.placeRect)({rootW:e,rootH:a,rectW:o[0].rect.w,rectH:o[0].rect.h,x:o[0].rect.x,y:o[0].rect.y}).m0;for(let n=1;n<o.length;n++){const v=o[n].rect;M=(0,dsl_stdlib_1.addOverlayLayer)(M,(0,dsl_stdlib_1.placeRect)({rootW:e,rootH:a,rectW:v.w,rectH:v.h,x:v.x,y:v.y}).m0)}const E=(0,dsl_stdlib_1.toM0String)(M,"PostMortem/chat-stream"),P={"agent-avatar":"#a8bdcb","agent-body":"#23262f","human-avatar":"#b3531b","human-body":"#d96b22",system:"#3a414a"},i={"agent-avatar":"#1a1a1a","agent-body":"#e5e7eb","human-avatar":"#ffffff","human-body":"#1a1a1a",system:"#9aa0a6"},T=18,I=Math.max(8,Math.floor((p-24)/10)),w=(0,types_1.asAssetId)("post_mortem_avatar_agent"),H=(0,types_1.asAssetId)("post_mortem_avatar_human"),C={};HAS_AGENT_AVATAR&&(C[w]={kind:"file",path:ASSET_AGENT_PNG,mediaType:"image"}),HAS_HUMAN_AVATAR&&(C[H]={kind:"file",path:ASSET_HUMAN_PNG,mediaType:"image"});const B=o.map(n=>{const v=n.kind==="system";if(n.kind==="agent-avatar"||n.kind==="human-avatar"){const R=n.kind==="agent-avatar"?HAS_AGENT_AVATAR:HAS_HUMAN_AVATAR,L=n.kind==="agent-avatar"?w:H,D={kind:"inline-mask",...(0,dsl_stdlib_1.circleMask)(40)};return R?{type:"media",mediaType:"image",assetId:L,placement:{fit:"cover"},mask:D}:{type:"text",style:{fontSize:22,fontColor:i[n.kind]},placement:{hAlign:"center",vAlign:"middle"},visual:{backgroundColor:P[n.kind]},layers:[{content:{kind:"literal",text:n.kind==="agent-avatar"?"A":"H"},placement:{hAlign:"center",vAlign:"middle"}}],mask:D}}if(n.kind==="agent-body"||n.kind==="human-body"){const R=(0,template_utils_1.multilineTextLayers)({text:n.text,maxCharsPerLine:I,fontSize:T,hAlign:"center"});return{type:"text",style:{fontSize:T,fontColor:i[n.kind]},placement:{hAlign:"center",vAlign:"middle"},visual:{backgroundColor:P[n.kind]},layers:R}}return{type:"text",style:{fontSize:13,fontColor:i[n.kind]},placement:{hAlign:"center",vAlign:"middle"},...v?{}:{visual:{backgroundColor:P[n.kind]}},layers:[{content:{kind:"literal",text:n.text.slice(0,120)},placement:{hAlign:"center",vAlign:"middle"}}]}});return{kind:"mosaic_document",version:1,assets:C,m0:E,sources:B,backgroundColor:"#14151b"}}f(buildChatStream,"buildChatStream");function snapDown(t,e){return Math.floor(t/e)*e}f(snapDown,"snapDown");async function blankChatColumn(t,e,a){return await(0,template_utils_1.renderNestedTemplate)("@m0saic/wireframe/base/v2",{M0String:"F",preset:"thumb-dark"},a)}f(blankChatColumn,"blankChatColumn");function chatColor(t){switch(t){case"agent":return"#7ec5ff";case"human":return"#c8e6c9";case"system":return"#9aa0a6"}}f(chatColor,"chatColor");
|
|
@@ -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("./v1/upstream-echo"),exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.UpstreamEcho=exports.UPSTREAM_ECHO_MISSING_BG=exports.UPSTREAM_ECHO_OK_BG=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils");exports.UPSTREAM_ECHO_OK_BG="#d9efd9",exports.UPSTREAM_ECHO_MISSING_BG="#a03030";const propsSchema=(0,template_utils_1.definePropsSchema)({alias:{type:"string",required:!1,description:'Which ctx.upstreamData block to echo into the sidecar. Default "fixtureData".'},color:{meta:{constraints:{isColor:!0},control:{placeholder:"green when found, red when missing",colorPicker:!0}},type:"string",required:!1,description:"Optional background override (#rrggbb). Unset: pale green when the aliased upstream block arrived, red when it didn't."}});exports.UpstreamEcho=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/meta/upstream-echo/v1"),label:"Upstream Echo (internal)",version:1,description:"Consumer proof fixture: reads ctx.upstreamData[alias] + ctx.upstreamVariables, renders a self-evidencing status card (pale green 'UPSTREAM OK' + block summary, or red 'UPSTREAM MISSING'), and mirrors the received upstream into sidecars.upstreamEcho for byte-assertable verification. Declares upstream schemas to exercise the resolver's schema guard.",capabilities:{tier:"core"},tags:["developer","meta","fixture","upstream","internal"],internal:!0,outputHints:{width:640,height:360,fps:30,durationMs:1e3,note:"Status-card echo tile (green=upstream OK, red=missing); the byte-assertable payload is the sidecar mirror."},upstreamVariablesSchema:{dataset:{type:"string",required:!1},series:{type:"number[]",required:!1}},upstreamDataSchema:{fixtureData:{description:"Data block published by @m0saic/meta/fixture-fetcher/v1 under its default alias.",variables:{dataset:{type:"string",required:!1},version:{type:"number",required:!1},series:{type:"number[]",required:!1}}}},propsSchema,defaultProps:{alias:"fixtureData"},async render(e,a){var i,o,l,n;const t=(i=e.alias)!==null&&i!==void 0?i:"fixtureData";if(e.color!==void 0&&!/^#[0-9a-fA-F]{6}$/.test(e.color))throw new Error(`meta/upstream-echo: color ${JSON.stringify(e.color)} must be a #rrggbb hex color.`);const c=(o=(0,template_utils_1.getUpstreamBlock)(a,t))!==null&&o!==void 0?o:null,r=(l=(0,template_utils_1.getUpstreamVariables)(a))!==null&&l!==void 0?l:null,s=c!==null,p=(n=e.color)!==null&&n!==void 0?n:s?exports.UPSTREAM_ECHO_OK_BG:exports.UPSTREAM_ECHO_MISSING_BG,u=s&&e.color===void 0?"#1e3a26":"#fff5f5",d=Object.keys(r??{}).length,m=s?[`alias: ${t}`,`block keys: ${Object.keys(c).sort().join(", ")||"(none)"}`,`flat union keys: ${d}`]:[`alias: ${t}`,`available blocks: ${(0,template_utils_1.listUpstreamAliases)(a).join(", ")||"(none)"}`,`flat union keys: ${d}`],f=34,h=20,b=[{content:{kind:"literal",text:s?"UPSTREAM OK":"UPSTREAM MISSING"},style:{fontSize:f,fontColor:u},placement:{hAlign:"left",vAlign:"top",xExpr:"w*0.06",yExpr:"h*0.08"}},...m.map((y,g)=>({content:{kind:"literal",text:y},style:{fontSize:h,fontColor:u},placement:{hAlign:"left",vAlign:"top",xExpr:"w*0.06",yExpr:`h*${(.32+g*.14).toFixed(2)}`}}))];return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("F","upstreamEcho"),assets:{},sources:[(0,template_utils_1.bindProps)({type:"text",visual:{backgroundColor:p},layers:b},[{propKey:"alias",layer:1}])],sidecars:{upstreamEcho:{alias:t,upstreamData:c,upstreamVariables:r}}}}}),(0,template_utils_1.registerTemplate)(exports.UpstreamEcho),exports.default=exports.UpstreamEcho;
|
|
@@ -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.PrimitiveGridV2=exports.PrimitiveGrid=void 0;var grid_1=require("./v1/grid");Object.defineProperty(exports,"PrimitiveGrid",{enumerable:!0,get:e(function(){return grid_1.PrimitiveGrid},"get")});var grid_2=require("./v2/grid");Object.defineProperty(exports,"PrimitiveGridV2",{enumerable:!0,get:e(function(){return grid_2.PrimitiveGridV2},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var M=Object.defineProperty;var y=(t,s)=>M(t,"name",{value:s,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.PrimitiveGrid=exports.PRIMITIVE_GRID_TEMPLATE_ID=void 0;const 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)({show:{type:"boolean",required:!1,description:"Whether the grid renders. Default true."},count:{type:"number",required:!1,description:"Number of equal intervals across the axis. Default 5."},direction:{type:"string",required:!1,description:'Which axes to draw: "horizontal" | "vertical" | "both". Default "horizontal".'},origin:{type:"string",required:!1,description:'Origin for fractions: "top" | "bottom" | "left" | "right". Default depends on direction.'},excludeEdges:{type:"boolean",required:!1,description:"If true, do not render the outer boundary lines. Default true."},color:{type:"string",required:!1,description:"Line color (FFmpeg-compatible). Default #ffffff.",meta:{constraints:{isColor:!0},control:{colorPicker:!0}}},opacity:{type:"number",required:!1,description:"Line opacity multiplier (0..1). Default 0.12."},thicknessFrac:{type:"number",required:!1,description:"Line thickness fraction. Default 0.002."}});exports.PRIMITIVE_GRID_TEMPLATE_ID=(0,types_1.asTemplateId)("@m0saic/primitives/grid/v1");const DEFAULT_COLOR="#ffffff",DEFAULT_OPACITY=.12,DEFAULT_THICKNESS_FRAC=.002,DEFAULT_COUNT=5;exports.PrimitiveGrid={id:exports.PRIMITIVE_GRID_TEMPLATE_ID,label:"Primitive \u2014 Grid",version:1,internal:!1,primitive:!0,description:"Reusable gridline overlay primitive (horizontal/vertical/both) for composition into templates.",capabilities:{tier:"core"},deprecated:{reason:"The 'absolute \u2192 fine ratio' anti-pattern: the single-axis path computes each line's ABSOLUTE pixel position from ctx.target, then re-encodes them as a placeRects split whose basis \u2248 the plot dimension in px. Renders exactly STANDALONE but the per-pixel basis does NOT nest \u2014 the engine re-divides it below 1px at certain canvases (e.g. 1024\xB2, 1000\xB2) and the grid is SILENTLY DROPPED. Kept registered as a 'what not to do' reference. Use v2 \u2014 thin fixed-px strips at proportional overlay offsets (ratio positioning) that compose at any canvas.",replacement:(0,types_1.asTemplateId)("@m0saic/primitives/grid/v2"),since:"2026-07-07"},tags:["primitive","grid"],propsSchema,defaultProps:{show:!0,count:DEFAULT_COUNT,direction:"horizontal",origin:"bottom",excludeEdges:!0,color:DEFAULT_COLOR,opacity:DEFAULT_OPACITY,thicknessFrac:DEFAULT_THICKNESS_FRAC},async render(t,s){var n,c,m,l,f,i;const d=t.show!==!1,e=Math.max(0,Math.floor((n=t.count)!==null&&n!==void 0?n:DEFAULT_COUNT));if(!d||e<=1)return{kind:"mosaic_document",version:1,assets:{},m0:(0,template_utils_1.buildOverlayStack)(1),sources:[(0,template_utils_1.transparentSlot)()],durationMs:s.target.durationMs};const a=(c=t.direction)!==null&&c!==void 0?c:"horizontal",u=(m=t.color)!==null&&m!==void 0?m:DEFAULT_COLOR,p=(l=t.opacity)!==null&&l!==void 0?l:DEFAULT_OPACITY,o=(f=t.thicknessFrac)!==null&&f!==void 0?f:DEFAULT_THICKNESS_FRAC,g=t.excludeEdges!==!1;if(a==="horizontal"||a==="vertical")return buildAxisSplitGrid({direction:a,count:e,excludeEdges:g,color:u,opacity:p,thicknessFrac:o,ctx:s});const v=(i=t.origin)!==null&&i!==void 0?i:"bottom",r=[],b=v==="top"?"top":"bottom";r.push(...(0,template_utils_1.buildGridlineSources)({direction:"horizontal",count:e,excludeEdges:g,origin:b,color:u,opacity:p,thicknessFrac:o}));const x=v==="right"?"right":"left";r.push(...(0,template_utils_1.buildGridlineSources)({direction:"vertical",count:e,excludeEdges:g,origin:x,color:u,opacity:p,thicknessFrac:o}));const h=[(0,template_utils_1.transparentSlot)(),...r];return{kind:"mosaic_document",version:1,sources:h,assets:{},m0:(0,template_utils_1.buildOverlayStack)(h.length),durationMs:s.target.durationMs}}};function buildAxisSplitGrid(t){const{direction:s,count:n,excludeEdges:c,color:m,opacity:l,thicknessFrac:f,ctx:i}=t,d=Math.max(1,Math.round(i.target.width)),e=Math.max(1,Math.round(i.target.height)),a=s==="horizontal",u=a?e:d,p=a?d:e,o=Math.max(1,Math.round(f*Math.min(d,e))),g=c?1:0,v=c?n-1:n,r=[];for(let h=g;h<=v;h++){const _=Math.max(0,Math.min(u-o,Math.round(h/n*u)-Math.floor(o/2)));r.push(a?{x:0,y:_,w:p,h:o,claimant:"1"}:{x:_,y:0,w:o,h:p,claimant:"1"})}if(r.length===0)return{kind:"mosaic_document",version:1,assets:{},m0:(0,template_utils_1.buildOverlayStack)(1),sources:[(0,template_utils_1.transparentSlot)()],durationMs:i.target.durationMs};const b=(0,dsl_stdlib_1.placeRects)({rootW:d,rootH:e,rects:r}),x=r.map(()=>({type:"lavfi",color:m,fitMode:"tile",visual:l==null?void 0:{opacity:l}}));return{kind:"mosaic_document",version:1,assets:{},m0:String(b.m0),sources:x,durationMs:i.target.durationMs}}y(buildAxisSplitGrid,"buildAxisSplitGrid"),(0,template_utils_1.registerTemplate)(exports.PrimitiveGrid);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var y=Object.defineProperty;var g=(e,t)=>y(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.PrimitiveGridV2=exports.PRIMITIVE_GRID_V2_TEMPLATE_ID=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),propsSchema=(0,template_utils_1.definePropsSchema)({show:{type:"boolean",required:!1,description:"Whether the grid renders. Default true.",meta:{ui:{label:"Show grid"}}},count:{type:"number",required:!1,description:"Number of equal intervals across the axis. Default 5.",meta:{ui:{label:"Intervals"}}},direction:{type:"string",required:!1,description:'Which axes to draw: "horizontal" | "vertical" | "both". Default "horizontal".',meta:{ui:{label:"Direction"}}},origin:{type:"string",required:!1,description:'Origin for fractions: "top" | "bottom" | "left" | "right". Default depends on direction.',meta:{ui:{label:"Origin"}}},excludeEdges:{type:"boolean",required:!1,description:"If true, do not render the outer boundary lines. Default true.",meta:{ui:{label:"Hide outer lines"}}},color:{type:"string",required:!1,description:"Line color (FFmpeg-compatible). Default #ffffff.",meta:{ui:{label:"Line color"},constraints:{isColor:!0},control:{colorPicker:!0}}},opacity:{type:"number",required:!1,description:"Line opacity multiplier (0..1). Default 0.12.",meta:{ui:{label:"Opacity"}}},thicknessFrac:{type:"number",required:!1,description:"Line thickness fraction. Default 0.002.",meta:{ui:{label:"Thickness"}}}});exports.PRIMITIVE_GRID_V2_TEMPLATE_ID=(0,types_1.asTemplateId)("@m0saic/primitives/grid/v2");const DEFAULT_COLOR="#ffffff",DEFAULT_OPACITY=.12,DEFAULT_THICKNESS_FRAC=.002,DEFAULT_COUNT=5;function emptyGrid(e){return{kind:"mosaic_document",version:1,assets:{},m0:(0,template_utils_1.buildOverlayStack)(1),sources:[(0,template_utils_1.transparentSlot)()],durationMs:e.target.durationMs}}g(emptyGrid,"emptyGrid"),exports.PrimitiveGridV2={id:exports.PRIMITIVE_GRID_V2_TEMPLATE_ID,label:"Primitive \u2014 Grid",version:2,internal:!1,primitive:!0,description:"Composable gridline overlay primitive (horizontal/vertical/both) \u2014 thin fixed-px strips at proportional offsets; nests cleanly at any canvas.",capabilities:{tier:"core"},tags:["primitive","grid","developers","layout"],outputHints:{format:{kind:"image",container:"png",pixelFormat:"rgba"}},propsSchema,defaultProps:{show:!0,count:DEFAULT_COUNT,direction:"horizontal",origin:"bottom",excludeEdges:!0,color:DEFAULT_COLOR,opacity:DEFAULT_OPACITY,thicknessFrac:DEFAULT_THICKNESS_FRAC},async render(e,t){var o,n,s,a,l;const b=e.show!==!1,c=Math.max(0,Math.floor((o=e.count)!==null&&o!==void 0?o:DEFAULT_COUNT));if(!b||c<=1)return emptyGrid(t);const i=(n=e.direction)!==null&&n!==void 0?n:"horizontal",u=(s=e.color)!==null&&s!==void 0?s:DEFAULT_COLOR,d=(a=e.opacity)!==null&&a!==void 0?a:DEFAULT_OPACITY,p=(l=e.thicknessFrac)!==null&&l!==void 0?l:DEFAULT_THICKNESS_FRAC,f=e.excludeEdges!==!1,m=e.origin,v=m==="top"?"top":"bottom",_=m==="right"?"right":"left",r=[];if((i==="horizontal"||i==="both")&&r.push(...(0,template_utils_1.buildGridlineSources)({direction:"horizontal",count:c,excludeEdges:f,origin:v,color:u,opacity:d,thicknessFrac:p})),(i==="vertical"||i==="both")&&r.push(...(0,template_utils_1.buildGridlineSources)({direction:"vertical",count:c,excludeEdges:f,origin:_,color:u,opacity:d,thicknessFrac:p})),r.length===0)return emptyGrid(t);const h=[(0,template_utils_1.transparentSlot)(),...r];return{kind:"mosaic_document",version:1,sources:h,assets:{},m0:(0,template_utils_1.buildOverlayStack)(h.length),durationMs:t.target.durationMs}}},(0,template_utils_1.registerTemplate)(exports.PrimitiveGridV2);
|
|
@@ -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("./grid"),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("./quote-card"),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("./v1"),exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var e=(r,t)=>u(r,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.QuoteCard=void 0;var quote_card_1=require("./quote-card");Object.defineProperty(exports,"QuoteCard",{enumerable:!0,get:e(function(){return quote_card_1.QuoteCard},"get")});
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";var nt=Object.defineProperty;var d=(t,u)=>nt(t,"name",{value:u,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.QuoteLayoutError=void 0,exports.wrapQuoteLines=wrapQuoteLines,exports.fitQuoteBlock=fitQuoteBlock,exports.buildQuoteCardLayout=buildQuoteCardLayout;const template_utils_1=require("@m0saic/template-utils");class QuoteLayoutError extends Error{static{d(this,"QuoteLayoutError")}}exports.QuoteLayoutError=QuoteLayoutError;const MIN_FONT_PX=8,MIN_QUOTE_BOX_PX=24,LINE_HEIGHT=1.25,MARK_GLYPH="\u201C",INSET_BASIS=120;function stubSource(){return{type:"lavfi",color:"#808080"}}d(stubSource,"stubSource");function boldFontPath(){var t;return(t=(0,template_utils_1.resolveFontFile)({weight:"bold"}))===null||t===void 0?void 0:t.path}d(boldFontPath,"boldFontPath");function widthAt(t,u,n){return(0,template_utils_1.measureText)(t,{fontSize:u,fontPath:n.fontPath}).width}d(widthAt,"widthAt");function fitFontToWidth(t,u,n,c){const e=widthAt(t,100,c);return e>0?Math.max(MIN_FONT_PX,Math.min(n,Math.floor(100*u/e))):n}d(fitFontToWidth,"fitFontToWidth");function fitSingleLine(t,u,n,c){const e=Math.floor(u*.98),o=fitFontToWidth(t,e,n,c);if(widthAt(t,o,c)<=e)return{text:t,fontSize:o};let i=1,a=t.length-1;for(;i<a;){const s=Math.ceil((i+a)/2),l=`${t.slice(0,s).trimEnd()}\u2026`;widthAt(l,MIN_FONT_PX,c)<=e?i=s:a=s-1}return{text:`${t.slice(0,i).trimEnd()}\u2026`,fontSize:MIN_FONT_PX}}d(fitSingleLine,"fitSingleLine");function wrapQuoteLines(t,u,n){const c=d(a=>(0,template_utils_1.measureText)(a,{fontSize:u}).width,"width"),e=[];let o="";const i=d(()=>{o.length>0&&e.push(o),o=""},"flush");for(const a of t.split(/\s+/).filter(s=>s.length>0)){const s=o.length>0?`${o} ${a}`:a;if(c(s)<=n){o=s;continue}if(i(),c(a)<=n){o=a;continue}let l=a;for(;c(l)>n;){let M=1;const $=l.length-1;if($<1||c(l.slice(0,1))>n)return null;let v=$;for(;M<v;){const f=Math.ceil((M+v)/2);c(l.slice(0,f))<=n?M=f:v=f-1}e.push(l.slice(0,M)),l=l.slice(M)}o=l}return i(),e.length>0?e:null}d(wrapQuoteLines,"wrapQuoteLines");function fitQuoteBlock(t,u,n,c){const e=Math.floor(u*.98),o=d(r=>{const x=wrapQuoteLines(t,r,e);if(!x)return null;const A=x.join(`
|
|
2
|
+
`),y=(0,template_utils_1.measureText)(A,{fontSize:r,lineHeight:LINE_HEIGHT});return y.height<=n&&y.width<=e?A:null},"tryAt");let i=null,a=MIN_FONT_PX,s=Math.max(MIN_FONT_PX,c);for(;a<=s;){const r=Math.floor((a+s)/2),x=o(r);x!=null?(i={fontSize:r,joined:x},a=r+1):s=r-1}if(i)return{text:i.joined,fontSize:i.fontSize,lines:i.joined.split(`
|
|
3
|
+
`).length};const l=wrapQuoteLines(t,MIN_FONT_PX,e);if(!l)throw new QuoteLayoutError(`the quote box (${u}\xD7${n}px) is too narrow to fit any text \u2014 enlarge the canvas`);const M=(0,template_utils_1.measureText)("Ag",{fontSize:MIN_FONT_PX}),$=MIN_FONT_PX*LINE_HEIGHT,v=Math.max(1,Math.floor((n-(M.ascent+M.descent))/$)+1),f=l.slice(0,Math.min(v,l.length)),_=f[f.length-1],h=fitSingleLine(`${_}\u2026`,e,MIN_FONT_PX,{});return f[f.length-1]=h.text.endsWith("\u2026")?h.text:`${h.text}\u2026`,{text:f.join(`
|
|
4
|
+
`),fontSize:MIN_FONT_PX,lines:f.length}}d(fitQuoteBlock,"fitQuoteBlock");function buildQuoteCardLayout(t,u=stubSource){var n,c;const{W:e,H:o,align:i,quoteMark:a,hasAvatar:s}=t,l=t.quote.trim();if(l.length===0)throw new QuoteLayoutError("the quote must not be empty");const M=((n=t.attribution)!==null&&n!==void 0?n:"").trim(),$=((c=t.role)!==null&&c!==void 0?c:"").trim(),v=M.length>0,f=$.length>0,_=s||v||f,h=Math.min(e,o),z=Math.max(0,Math.round(t.marginFrac*h)),r=e-2*z;if(r<MIN_QUOTE_BOX_PX)throw new QuoteLayoutError(`canvas ${e}\xD7${o} is too narrow at this margin \u2014 the card interior collapses`);const x={fontPath:boldFontPath()},A={},y=a?Math.round(h*.11):0,B=a?Math.round(h*.01):0,j=Math.max(3,Math.round(h*.007)),O=Math.round(h*.045),X=_?Math.round(h*.04):0,T=s?Math.round(h*.115):0,C=s?Math.round(h*.025):0,P=r-T-C;if(_&&(v||f)&&P<MIN_QUOTE_BOX_PX)throw new QuoteLayoutError(`canvas ${e}\xD7${o} leaves no room for the attribution next to the avatar`);const g=v?fitSingleLine(M,P,Math.max(MIN_FONT_PX,Math.round(h*.032)),x):null,p=f?fitSingleLine($,P,Math.max(MIN_FONT_PX,Math.round(h*.025)),A):null,G=d((m,L,b)=>{const k=(0,template_utils_1.measureText)(m,{fontSize:L,fontPath:b.fontPath});return Math.ceil(k.ascent+k.descent)+2},"blockH"),F=g?G(g.text,g.fontSize,x):0,R=p?G(p.text,p.fontSize,A):0,K=g&&p?Math.round(h*.008):0,U=F+K+R,q=_?Math.max(T,U):0,H=o-2*z-y-B-O-j-X-q;if(H<MIN_QUOTE_BOX_PX)throw new QuoteLayoutError(`canvas ${e}\xD7${o} is too small for a quote card at these settings \u2014 the quote box collapses to ${H}px`);const Z=Math.max(MIN_FONT_PX,Math.floor(h*.088)),W=fitQuoteBlock(l,r,H,Z),w=[];let S=z;if(a){const m=(0,template_utils_1.measureText)(MARK_GLYPH,{fontSize:100,fontPath:x.fontPath}),L=(m.ascent+m.descent)/100,b=Math.max(MIN_FONT_PX,Math.floor(y*.98/L)),k=Math.min(r,Math.max(1,Math.ceil(widthAt(MARK_GLYPH,b,x)*1.15))),I=i==="center"?Math.floor((r-k)/2):0;w.push({kind:"mark",text:MARK_GLYPH,fontSize:b,hAlign:i,rect:{x:z+I,y:S,w:k,h:y}}),S+=y+B}w.push({kind:"quote",text:W.text,fontSize:W.fontSize,lines:W.lines,hAlign:i,rect:{x:z,y:S,w:r,h:H}}),S+=H+O;const Y=Math.min(r,Math.max(8,Math.round(r*.14))),tt=i==="center"?Math.floor((r-Y)/2):0;if(w.push({kind:"accent-bar",rect:{x:z+tt,y:S,w:Y,h:j}}),S+=j,_){S+=X;const m=g?Math.min(P,Math.ceil(widthAt(g.text,g.fontSize,x)*1.06)+2):0,L=p?Math.min(P,Math.ceil(widthAt(p.text,p.fontSize,A)*1.06)+2):0,b=Math.max(m,L),k=s&&b>0?C:0,I=T+k+b,D=i==="center"?Math.floor((r-I)/2):0;if(s){const N=Math.floor((q-T)/2);w.push({kind:"avatar",rect:{x:z+D,y:S+N,w:T,h:T}})}if(b>0){const N=Math.floor((q-U)/2),J=z+D+T+k,V=s?"left":i;let Q=S+N;g&&(w.push({kind:"name",text:g.text,fontSize:g.fontSize,hAlign:V,rect:{x:J,y:Q,w:b,h:F}}),Q+=F),g&&p&&(Q+=K),p&&w.push({kind:"role",text:p.text,fontSize:p.fontSize,hAlign:V,rect:{x:J,y:Q,w:b,h:R}})}S+=q}const et=w.map(m=>({rect:{x:m.rect.x,y:m.rect.y,w:m.rect.w,h:m.rect.h,importance:m.kind==="avatar"?0:1},source:u(m)})),E=(0,template_utils_1.placeInsetPieces)({rootW:e,rootH:o,pieces:et,basis:INSET_BASIS});if(E.sources.length!==w.length)throw new QuoteLayoutError(`placed ${E.sources.length} sources for ${w.length} cells (internal ordering bug)`);return{m0:E.m0,sources:E.sources,cells:w}}d(buildQuoteCardLayout,"buildQuoteCardLayout");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var E=Object.defineProperty;var n=(t,r)=>E(t,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.QuoteCard=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),layout_1=require("./layout"),TEMPLATE_ID="@m0saic/social/quote-card/v1",PRESETS={light:{bg:"#faf9f7",ink:"#17181c",subtle:"#6b6f76"},dark:{bg:"#101014",ink:"#e8e8ee",subtle:"#a3a7b0"}},DEFAULT_ACCENT="#f97316",DEFAULT_MARGIN=.09,DEFAULT_QUOTE="Everything is rectangles on a canvas.",DEFAULT_ATTRIBUTION="The m0saic Thesis";function pickColor(t,r){const o=typeof t=="string"?t.trim():t;return o||r}n(pickColor,"pickColor");const propsSchema=(0,template_utils_1.definePropsSchema)({quote:{type:"string",required:!0,description:"The quote body. Wrapped and sized to fit automatically \u2014 long quotes shrink, short quotes render large.",meta:{ui:{label:"Quote",order:1,primary:!0}}},attribution:{type:"string",required:!1,description:"Who said it \u2014 rendered bold under the accent bar. Empty removes the attribution.",meta:{ui:{label:"Attribution",order:2}}},role:{type:"string",required:!1,description:"Second attribution line \u2014 a title, handle, book or episode. Empty removes it.",meta:{control:{placeholder:"none"},ui:{label:"Role / source",order:3}}},avatar:{type:"media",required:!1,description:"Avatar image, clipped to a circle beside the attribution.",meta:{ui:{label:"Avatar",order:4},control:{picker:"file",accept:["image"]}}},align:{type:"string",required:!1,description:'Card composition: "center" (classic quote card) or "left" (editorial).',meta:{constraints:{oneOf:["center","left"]},ui:{label:"Alignment",order:1}}},quoteMark:{type:"boolean",required:!1,description:"Show the decorative opening-quote glyph above the quote.",meta:{ui:{label:"Quote mark",order:2}}},accent:{type:"string",required:!1,description:"Accent color for the quote mark and the divider bar.",meta:{constraints:{isColor:!0},control:{colorPicker:!0},ui:{label:"Accent",order:3}}},preset:{type:"string",required:!1,description:'Hand-tuned card duo: "light" (default) or "dark".',meta:{constraints:{oneOf:["light","dark"]},ui:{label:"Preset",order:4}}},background:{type:"string",required:!1,description:"Card background override.",meta:{constraints:{isColor:!0},control:{placeholder:"preset background",colorPicker:!0},ui:{label:"Background",order:5}}},ink:{type:"string",required:!1,description:"Ink override (quote body and attribution name).",meta:{constraints:{isColor:!0},control:{placeholder:"preset ink",colorPicker:!0},ui:{label:"Ink",order:6}}},margin:{type:"number",required:!1,description:"Outer margin, as a fraction of the canvas short edge.",meta:{constraints:{min:.02,max:.2},control:{flavor:"slider",step:.005},ui:{label:"Margin",order:1}}}});function textCell(t){return{type:"text",rasterizer:"svg",renderMode:{kind:"image"},layers:[{content:{kind:"literal",text:t.text},style:{fontSize:t.fontSize,fontColor:t.color,...t.bold?{fontWeight:"bold"}:{}},placement:{hAlign:t.hAlign,vAlign:"middle"}}],editor:{owner:"template",label:t.label}}}n(textCell,"textCell"),exports.QuoteCard={id:(0,types_1.asTemplateId)(TEMPLATE_ID),label:"Quote Card",version:1,description:"Pull-quote social card \u2014 auto-wrapped quote, accent bar, attribution with an optional circular avatar; hand-tuned light/dark presets; lossless PNG still, aspect-safe from square to stories.",capabilities:{tier:"core"},tags:["social","quote","card","pull-quote","promo","creators","marketers","testimonial"],outputHints:{width:1080,height:1080,format:{kind:"image",container:"png"}},propsSchema,defaultProps:{quote:DEFAULT_QUOTE,attribution:DEFAULT_ATTRIBUTION,align:"center",quoteMark:!0,accent:DEFAULT_ACCENT,preset:"light",margin:DEFAULT_MARGIN},async render(t,r){var o,u,d,c,m,g;const p=Math.max(1,Math.round(r.target.width)),b=Math.max(1,Math.round(r.target.height)),l=n(e=>(0,template_utils_1.makeErrorMosaic)(e,{title:"Quote Card",width:p,height:b}),"fail"),k=t.preset==="dark"?"dark":"light",h=PRESETS[k],T=pickColor(t.background,h.bg),y=pickColor(t.ink,h.ink),q=pickColor(t.accent,DEFAULT_ACCENT),x=t.align==="left"?"left":"center",M=t.quoteMark!==!1,S=Math.min(.2,Math.max(.02,(o=t.margin)!==null&&o!==void 0?o:DEFAULT_MARGIN)),v=((u=t.quote)!==null&&u!==void 0?u:"").trim();if(v.length===0)return l("quote must not be empty");const s=((d=t.attribution)!==null&&d!==void 0?d:"").trim(),A=((c=t.role)!==null&&c!==void 0?c:"").trim(),a=((m=t.avatar)!==null&&m!==void 0?m:"").trim();let i=null;if(a.length>0){const e=r.media[(0,types_1.asAssetId)(a)];if(!e||!(e.width>0)||!(e.height>0))return l(`no probed dimensions for avatar "${a}"`);if(e.kind!=="image")return l(`avatar "${a}" is ${(g=e.kind)!==null&&g!==void 0?g:"unknown"} \u2014 the avatar must be an image`);i=String((0,template_utils_1.slugifyAssetKeyFromPath)(a))}const _=n(e=>{switch(e.kind){case"mark":return(0,template_utils_1.bindProp)(textCell({text:e.text,fontSize:e.fontSize,color:q,bold:!0,hAlign:e.hAlign,label:"mark"}),"accent");case"quote":return(0,template_utils_1.bindProps)(textCell({text:e.text,fontSize:e.fontSize,color:y,hAlign:e.hAlign,label:"quote"}),[{propKey:"quote"},{propKey:"ink"}]);case"accent-bar":return(0,template_utils_1.bindProp)({type:"lavfi",color:q,editor:{owner:"template",label:"accent"}},"accent");case"avatar":return{type:"media",mediaType:"image",assetId:i,placement:{fit:"cover"},effects:{rounding:{cornerStyle:"pill"}},editor:{owner:"template",label:"avatar"}};case"name":return(0,template_utils_1.bindProps)(textCell({text:e.text,fontSize:e.fontSize,color:y,bold:!0,hAlign:e.hAlign,label:"name"}),[{propKey:"attribution"},{propKey:"ink"}]);case"role":return(0,template_utils_1.bindProp)(textCell({text:e.text,fontSize:e.fontSize,color:h.subtle,hAlign:e.hAlign,label:"role"}),"role")}},"sourceForCell");let f;try{f=(0,layout_1.buildQuoteCardLayout)({W:p,H:b,quote:v,attribution:s.length>0?s:null,role:A.length>0?A:null,hasAvatar:i!=null,align:x,quoteMark:M,marginFrac:S},_)}catch(e){if(e instanceof layout_1.QuoteLayoutError)return l(e.message);throw e}const P=f.sources,C={};return i!=null&&(C[i]={kind:"file",path:a,mediaType:"image"}),{kind:"mosaic_document",version:1,assets:C,m0:f.m0,sources:P,fps:r.target.fps,durationMs:r.target.durationMs,size:{width:p,height:b},backgroundColor:T,editor:{label:`Quote Card \xB7 ${s.length>0?s:"unattributed"} \xB7 ${k}`}}}},(0,template_utils_1.registerTemplate)(exports.QuoteCard),exports.default=exports.QuoteCard;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var a=Object.defineProperty;var o=(t,e)=>a(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("./narrated-chapters"),exports),__exportStar(require("./scrapbook/v1"),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("./v1"),exports);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";var M=Object.defineProperty;var u=(s,e)=>M(s,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.DEFAULT_CAPTIONS=exports.MAX_CUES_PER_SECTION=void 0,exports.resolveSectionCues=resolveSectionCues,exports.clampCues=clampCues,exports.synthesizeCues=synthesizeCues,exports.splitSentences=splitSentences,exports.splitClauses=splitClauses,exports.hamilton=hamilton,exports.serializeSrt=serializeSrt,exports.MAX_CUES_PER_SECTION=96,exports.DEFAULT_CAPTIONS={enabled:!0,minCueMs:900,cueGapMs:80,plate:"always"};const ABBREV=new Set(["mr.","mrs.","ms.","dr.","prof.","st.","jr.","sr.","vs.","etc.","e.g.","i.e.","no.","inc.","ltd.","co.","a.m.","p.m.","u.s.","u.k."]),LONG_SENTENCE_CHARS=110;function resolveSectionCues(s,e,i){var r;if(!i.enabled||e===void 0||e<=0)return[];if(Array.isArray(s.cues)&&s.cues.length>0)return clampCues(s.cues,e);const t=(r=s.overrides)===null||r===void 0?void 0:r.caption;return typeof t=="string"&&t.trim().length>0?[{startMs:0,endMs:e,text:t.trim()}]:typeof s.narrationText=="string"&&s.narrationText.trim().length>0?synthesizeCues(s.narrationText,e,i):[]}u(resolveSectionCues,"resolveSectionCues");function clampCues(s,e){const i=[];for(const r of s){const t=Math.max(0,Math.round(r.startMs)),l=Math.min(e,Math.round(r.endMs));if(l<=t)continue;const a=r.text.trim();if(a.length!==0&&(i.push({startMs:t,endMs:l,text:a}),i.length>=exports.MAX_CUES_PER_SECTION))break}return i}u(clampCues,"clampCues");function synthesizeCues(s,e,i){const r=splitSentences(s).flatMap(n=>n.length>LONG_SENTENCE_CHARS?splitClauses(n):[n]).slice(0,exports.MAX_CUES_PER_SECTION);if(r.length===0)return[];let t=r,l=hamilton(e,t.map(n=>Math.max(12,n.length)));for(let n=0;n<exports.MAX_CUES_PER_SECTION&&!(t.length<=1);n++){const c=l.findIndex(m=>m<i.minCueMs);if(c===-1)break;const p=c>0?l[c-1]:1/0,f=c<l.length-1?l[c+1]:1/0,h=p<=f?c-1:c+1,[d,x]=h<c?[h,c]:[c,h];t=[...t.slice(0,d),`${t[d]} ${t[x]}`,...t.slice(x+1)],l=hamilton(e,t.map(m=>Math.max(12,m.length)))}const a=[];let o=0;for(let n=0;n<t.length;n++){const c=o,p=o+l[n];o=p;const f=Math.min(i.cueGapMs,Math.floor((l[n]-1)/2)),h=c+(n>0?f:0),d=p-(n<t.length-1?f:0);d>h&&a.push({startMs:h,endMs:d,text:t[n]})}return a}u(synthesizeCues,"synthesizeCues");function splitSentences(s){var e,i;const r=s.trim().replace(/\s+/g," ");if(r.length===0)return[];const t=[];let l=0;const a=/[.!?…]+["'”’]?(?=\s+["'“‘]?[A-Z0-9])/g;let o;for(;(o=a.exec(r))!==null;){const c=o.index+o[0].length,p=r.slice(l,c).trim(),f=(i=(e=p.split(" ").pop())===null||e===void 0?void 0:e.toLowerCase())!==null&&i!==void 0?i:"";ABBREV.has(f)||(p.length>0&&t.push(p),l=c)}const n=r.slice(l).trim();return n.length>0&&t.push(n),t}u(splitSentences,"splitSentences");function splitClauses(s){const e=s.split(/(?<=[,;:—])\s+/).map(t=>t.trim()).filter(t=>t.length>0);if(e.length<=1)return[s];const i=[];let r="";for(const t of e){const l=r.length>0?`${r} ${t}`:t;l.length<=LONG_SENTENCE_CHARS?r=l:(r.length>0&&i.push(r),r=t)}return r.length>0&&i.push(r),i}u(splitClauses,"splitClauses");function hamilton(s,e){const i=e.reduce((o,n)=>o+n,0),r=e.map(o=>s*o/i),t=r.map(Math.floor);let l=s-t.reduce((o,n)=>o+n,0);const a=r.map((o,n)=>({frac:o-Math.floor(o),i:n})).sort((o,n)=>n.frac-o.frac||o.i-n.i);for(let o=0;o<a.length&&l>0;o++,l--)t[a[o].i]+=1;return t}u(hamilton,"hamilton");function serializeSrt(s){return s.map((e,i)=>`${i+1}
|
|
2
|
+
${srtTime(e.startMs)} --> ${srtTime(e.endMs)}
|
|
3
|
+
${e.text}
|
|
4
|
+
`).join(`
|
|
5
|
+
`)}u(serializeSrt,"serializeSrt");function srtTime(s){const e=Math.max(0,Math.round(s)),i=Math.floor(e/36e5),r=Math.floor(e%36e5/6e4),t=Math.floor(e%6e4/1e3),l=e%1e3,a=u((o,n)=>String(o).padStart(n,"0"),"pad");return`${a(i,2)}:${a(r,2)}:${a(t,2)},${a(l,3)}`}u(srtTime,"srtTime");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.DEMO_STORY=void 0,exports.DEMO_STORY={schemaVersion:1,title:"Every Level of a City Block",subtitle:"From the sidewalk to the skyline",brand:{accentColor:"#2f6df6",backgroundColor:"#0d0f12",textColor:"#f4f6f8"},sections:[{id:"sidewalk",title:"Street Level",narrationText:"Start at the pavement. Everything a block does for a person happens in the first three metres.",overrides:{durationMs:2640}},{id:"storefront",title:"The Storefront",narrationText:"One step up, the block starts selling. Glass, signage, and a doorway that decides who comes in.",overrides:{durationMs:4120}},{id:"upper-floors",title:"The Upper Floors",narrationText:"Above the shopfront the block goes quiet: offices, apartments, and the windows nobody looks up at.",overrides:{durationMs:3360}},{id:"skyline",title:"The Skyline",narrationText:"At the top the block stops being architecture and becomes silhouette \u2014 the shape the city remembers.",overrides:{durationMs:5080}}]};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var a=Object.defineProperty;var e=(r,t)=>a(r,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.NarratedChapters=void 0;var narrated_chapters_1=require("./narrated-chapters");Object.defineProperty(exports,"NarratedChapters",{enumerable:!0,get:e(function(){return narrated_chapters_1.NarratedChapters},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var m=Object.defineProperty;var i=(e,t)=>m(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.MOVES=exports.ZOOMS=void 0,exports.hash32=hash32,exports.kenBurnsCamera=kenBurnsCamera;const template_utils_1=require("@m0saic/template-utils");exports.ZOOMS=[1.08,1.1,1.12,1.15,1.18],exports.MOVES=[[1,0],[-1,0],[0,1],[0,-1],[1,1],[-1,-1],[1,-1],[-1,1]];const BASE_AMPLITUDE=.35;function hash32(...e){let t=2166136261;const n=e.join("\0");for(let r=0;r<n.length;r++)t^=n.charCodeAt(r),t=Math.imul(t,16777619);return t>>>0}i(hash32,"hash32");function kenBurnsCamera(e){var t,n,r;const{seed:c,sectionIndex:u,imageIndex:s}=e;if(hash32("still",c,u,s)%5===0)return;const o=exports.ZOOMS[hash32("z",c,u,s)%exports.ZOOMS.length],[a,d]=exports.MOVES[hash32("mv",c,u,s)%exports.MOVES.length],l=clamp(BASE_AMPLITUDE*e.intensity*e.ampScale,0,.5),x=(t=e.ease)!==null&&t!==void 0?t:"linear";return{zoom:o,focusX:driftExpr((n=e.subjectX)!==null&&n!==void 0?n:.5,o,a*l,e.startSec,e.endSec,x),focusY:driftExpr((r=e.subjectY)!==null&&r!==void 0?r:.5,o,d*l,e.startSec,e.endSec,x)}}i(kenBurnsCamera,"kenBurnsCamera");function driftExpr(e,t,n,r,c,u){const s=(0,template_utils_1.centerFocus)(e,t);if(n===0||c<=r)return s;const o=clamp(s-n/2,0,1),a=clamp(s+n/2,0,1);return o===a?s:(0,template_utils_1.keyframeExpr)([{t:r,v:o},{t:c,v:a}],{ease:u,emptyValue:"0.5"})}i(driftExpr,"driftExpr");function clamp(e,t,n){return Math.max(t,Math.min(n,e))}i(clamp,"clamp");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var l=Object.defineProperty;var r=(e,t)=>l(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.CARD_BANDS=exports.ASPECT_TABLE=void 0,exports.classifyAspect=classifyAspect,exports.buildCardM0=buildCardM0,exports.buildBodyM0=buildBodyM0,exports.buildImageStackM0=buildImageStackM0,exports.buildPanelBodyM0=buildPanelBodyM0;const dsl_1=require("@m0saic/dsl"),dsl_stdlib_1=require("@m0saic/dsl-stdlib");function classifyAspect(e,t){const i=e/t;return i>=1.2?"landscape":i<=.85?"portrait":"square"}r(classifyAspect,"classifyAspect"),exports.ASPECT_TABLE={landscape:{cameraAmpScale:1,coverFocusY:.5,headingScale:.085,subScale:.036,cardSafeW:.72,captionScale:.042,captionLines:2,captionBandFrac:.22},portrait:{cameraAmpScale:.75,coverFocusY:.42,headingScale:.08,subScale:.036,cardSafeW:.84,captionScale:.044,captionLines:3,captionBandFrac:.32},square:{cameraAmpScale:.85,coverFocusY:.46,headingScale:.08,subScale:.036,cardSafeW:.8,captionScale:.042,captionLines:2,captionBandFrac:.24}},exports.CARD_BANDS={title:[{kind:"spacer",weight:30},{kind:"heading",weight:14},{kind:"spacer",weight:3},{kind:"bar",weight:2},{kind:"spacer",weight:5},{kind:"sub",weight:8},{kind:"spacer",weight:38}],"section-card":[{kind:"spacer",weight:32},{kind:"kicker",weight:6},{kind:"spacer",weight:2},{kind:"heading",weight:12},{kind:"spacer",weight:4},{kind:"bar",weight:2},{kind:"spacer",weight:42}],outro:[{kind:"spacer",weight:36},{kind:"heading",weight:11},{kind:"spacer",weight:3},{kind:"bar",weight:2},{kind:"spacer",weight:6},{kind:"sub",weight:7},{kind:"spacer",weight:35}]};function buildCardM0(e,t=0){const i=(0,dsl_stdlib_1.weightedSplit)(e.map(n=>n.weight),"row",{claimants:e.map(()=>"1")}),a=audioLeaf(t);return a===""?i:assertValid(`${i}{${a}}`)}r(buildCardM0,"buildCardM0");function audioLeaf(e){if(e<=0)return"";let t="F";for(let i=1;i<e;i++)t=`F{${t}}`;return t}r(audioLeaf,"audioLeaf");function buildBodyM0(e){const{aspect:t,stackFrames:i,captions:a,audioCount:n}=e;if(!Number.isInteger(i)||i<1)throw new Error(`buildBodyM0: stackFrames must be a positive integer, got ${i}`);const c=audioLeaf(n),s=Math.round(exports.ASPECT_TABLE[t].captionBandFrac*100);if(a&&t==="portrait"){const o=nest("1",i),d=(0,dsl_stdlib_1.weightedSplit)([12,88-s,s],"row",{claimants:["0",o,"1{1}"]});return assertValid(c===""?String(d):`${d}{${c}}`)}if(a){const o=(0,dsl_stdlib_1.weightedSplit)([100-s,s],"row",{claimants:["1","1{1}"]}),d=c===""?String(o):`${o}{${c}}`;return assertValid(nest("F",i,d))}return assertValid(nest("F",i,c))}r(buildBodyM0,"buildBodyM0");function nest(e,t,i=""){let a=i===""?e:`${e}{${i}}`;for(let n=1;n<t;n++)a=`${e}{${a}}`;return a}r(nest,"nest");function buildImageStackM0(e){if(!Number.isInteger(e)||e<1)throw new Error(`buildImageStackM0: count must be a positive integer, got ${e}`);let t="F";for(let i=1;i<e;i++)t=`F{${t}}`;return assertValid(t)}r(buildImageStackM0,"buildImageStackM0");function buildPanelBodyM0(){return assertValid("F{F}")}r(buildPanelBodyM0,"buildPanelBodyM0");function assertValid(e){if(!(0,dsl_1.isValidM0String)(e))throw new Error(`layout: generated invalid m0 "${e}"`);return e}r(assertValid,"assertValid");
|
package/node_modules/@m0saic/templates/dist/m0saic/story/narrated-chapters/v1/narrated-chapters.js
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";var g=Object.defineProperty;var f=(n,s)=>g(n,"name",{value:s,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.NarratedChapters=void 0;const template_utils_1=require("@m0saic/template-utils"),types_1=require("@m0saic/types"),captions_1=require("./captions"),demo_fixture_1=require("./demo-fixture"),plan_1=require("./plan"),props_1=require("./props"),pipeline_1=require("./pipeline"),body_1=require("./scenes/body"),theme_1=require("./theme"),TEMPLATE_ID="@m0saic/story/narrated-chapters/v1",TEMPLATE_TITLE="Narrated Chapters",DEMO_DURATION_MS=32500;exports.NarratedChapters={id:(0,types_1.asTemplateId)(TEMPLATE_ID),label:TEMPLATE_TITLE,version:1,description:"Chaptered, narration-timed story video from a story.json manifest \u2014 title/section cards, per-chapter scenes, and one deliverable per aspect (landscape/portrait) from a single invocation. Omit props for the built-in demo story.",capabilities:{tier:"core"},tags:["media","story","chapters","narrated","pipeline","agentic","animated","creators","educators","social","voice-over","explainer"],outputHints:{format:{kind:"video",container:"mp4"},width:1920,height:1080,fps:30,durationMs:DEMO_DURATION_MS,note:"Duration derives from the story manifest (narration lengths), not from -t/--duration."},propsSchema:props_1.narratedChaptersPropsSchema,defaultProps:{},async render(n,s){var c,i;const u=Math.max(1,Math.round(s.target.width)),t=Math.max(1,Math.round(s.target.height)),r=f(h=>(0,template_utils_1.makeErrorMosaic)(h,{width:u,height:t,title:TEMPLATE_TITLE}),"fail"),a=(0,props_1.coerceStoryProp)(n?.story);if(a.errors.length>0)return r(a.errors.join(`
|
|
2
|
+
`));const d=(i=(c=a.story)!==null&&c!==void 0?c:(0,props_1.sniffBareStory)(n))!==null&&i!==void 0?i:demo_fixture_1.DEMO_STORY,l=(0,props_1.validateStoryShape)(d);if(l.length>0)return r(l.join(`
|
|
3
|
+
`));const e=(0,plan_1.resolveTiming)(d,{fps:s.target.fps,target:{width:u,height:t},narrationDurationMs:f(h=>{var v;return(v=s.media[(0,types_1.asAssetId)(h)])===null||v===void 0?void 0:v.durationMs},"narrationDurationMs")});if("error"in e)return r(e.error);const o=resolveSectionMedia(d,s);if(typeof o=="string")return r(o);const p=e.plan.audio.musicPath!==void 0?{path:e.plan.audio.musicPath,assetKey:"music_bed"}:void 0,m=(0,pipeline_1.buildOuterPipeline)(e.plan,{width:u,height:t,fps:s.target.fps},(0,theme_1.themeFromStory)(d),o,p);return attachCaptionsSidecar(m,e.plan),m},sidecarsSchema:{captions:{type:"object",required:!1,description:"Combined SubRip captions on the story timeline, written as {output-basename}.captions.srt next to the deliverable (cues are aspect-invariant, so one file serves every variant)."}}};function attachCaptionsSidecar(n,s){var c,i,u,t,r,a;const d=[];for(const o of s.scenes)for(const p of(c=o.cues)!==null&&c!==void 0?c:[])d.push({startMs:o.startMs+p.startMs,endMs:o.startMs+p.endMs,text:p.text});if(d.length===0)return;const e=(a=(r=(t=(u=(i=n.steps)===null||i===void 0?void 0:i[0])===null||u===void 0?void 0:u.file)===null||t===void 0?void 0:t.steps)===null||r===void 0?void 0:r[0])===null||a===void 0?void 0:a.file;e!==void 0&&(e.sidecars={captions:{kind:"text",ext:"srt",content:(0,captions_1.serializeSrt)(d)}})}f(attachCaptionsSidecar,"attachCaptionsSidecar");function resolveSectionMedia(n,s){const c=Array.isArray(n.sections)?n.sections:[],i=[],u=c.map((t,r)=>{const a=Array.isArray(t.images)?t.images.filter(e=>typeof e=="string"&&e.trim().length>0):[],d=a.map((e,o)=>{var p;const m=s.media[(0,types_1.asAssetId)(e.trim())];return m===void 0?i.push(`sections[${r}].images[${o}] ("${e}") is not in ctx.media \u2014 this engine probes only top-level string/string[] props; run \`story-studio build\` so mediaPaths mirrors it.`):m.kind!=="image"&&i.push(`sections[${r}].images[${o}] ("${e}") probed as ${(p=m.kind)!==null&&p!==void 0?p:"unknown"} \u2014 images must be stills in v1.`),{path:e.trim(),assetKey:`img_${r}_${o}`}}),l=typeof t.narrationAudio=="string"&&t.narrationAudio.trim().length>0?t.narrationAudio.trim():void 0;return{images:d,focus:(0,body_1.focusFromOverrides)(t.overrides,a.length),...l!==void 0?{narration:{path:l,assetKey:`nar_${r}`}}:{}}});return i.length>0?i.join(`
|
|
4
|
+
`):u}f(resolveSectionMedia,"resolveSectionMedia"),(0,template_utils_1.registerTemplate)(exports.NarratedChapters);
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var r=Object.defineProperty;var u=(i,e)=>r(i,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildSceneDoc=buildSceneDoc,exports.buildStoryPipeline=buildStoryPipeline,exports.buildOuterPipeline=buildOuterPipeline;const body_1=require("./scenes/body"),card_1=require("./scenes/card");function buildSceneDoc(i,e,s,d,n,o){if(i.kind==="body"){const t=i.sectionIndex!==void 0?n[i.sectionIndex]:void 0;return(0,body_1.buildBodyDoc)(i,t,e,s,d,o)}return(0,card_1.buildCardDoc)(i,e,s,d,o)}u(buildSceneDoc,"buildSceneDoc");function buildStoryPipeline(i,e,s,d,n){const o=i.scenes.map(t=>({name:t.name,label:t.name,durationMs:t.visibleMs+t.xfadeOutMs,file:buildSceneDoc(t,e,i,s,d,n),...t.xfadeOutMs>0?{transitionToNext:{type:"fade",durationMs:t.xfadeOutMs}}:{}}));return{kind:"mosaic_pipeline",version:1,emit:"single",size:{width:e.width,height:e.height},fps:i.fps,durationMs:i.storyMs,durationFit:"cut",defaultTransition:{type:"cut"},backgroundColor:s.canvas,steps:o}}u(buildStoryPipeline,"buildStoryPipeline");function buildOuterPipeline(i,e,s,d,n){return{kind:"mosaic_pipeline",version:1,emit:"multi",fps:e.fps,size:{width:e.width,height:e.height},durationMs:i.storyMs,durationFit:"cut",...i.diagnostics.length>0?{meta:{note:i.diagnostics.join(`
|
|
2
|
+
`)}}:{},steps:i.variants.map(o=>({name:o.name,label:o.name,durationMs:i.storyMs,file:buildStoryPipeline(i,o,s,d,n)}))}}u(buildOuterPipeline,"buildOuterPipeline");
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var D=Object.defineProperty;var d=(t,e)=>D(t,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.MOTION_EASES=exports.hamilton=void 0,exports.resolveTiming=resolveTiming,exports.scheduleImages=scheduleImages,exports.resolveVariants=resolveVariants;const captions_1=require("./captions");Object.defineProperty(exports,"hamilton",{enumerable:!0,get:d(function(){return captions_1.hamilton},"get")});const props_1=require("./props");exports.MOTION_EASES=["linear","smoothstep","easeOut","easeInOut"];function resolveTiming(t,e){var n,s,a;const l=Array.isArray(t.sections)?t.sections:[];if(l.length===0||l.length>props_1.MAX_SECTIONS)return{error:`story.sections must contain 1\u2013${props_1.MAX_SECTIONS} sections, got ${l.length}.`};const c={...props_1.DEFAULT_STORY_DEFAULTS,...pickTimingDefaults(t.defaults)},o=[],f=[],m=[],p=[],g=[];for(let i=0;i<l.length;i++){const r=(n=l[i])!==null&&n!==void 0?n:{},b={...c,...pickTimingDefaults(r.overrides)};m.push(Math.round(b.sectionCardMs)),noteDocumentLevelOverrides(r,i,o);const h=(s=r.overrides)===null||s===void 0?void 0:s.durationMs;let M;if(typeof h=="number"&&Number.isFinite(h)&&h>0){if(M=h,typeof r.narrationAudio=="string"&&r.narrationAudio.trim().length>0){const S=e.narrationDurationMs(r.narrationAudio.trim());S!==void 0&&Math.abs(S-h)>250&&o.push(`STORY_DURATION_OVERRIDE_DISAGREES: ${sectionLabel(r,i)} overrides.durationMs (${h} ms) disagrees with the probed narration (${Math.round(S)} ms) by more than 250 ms \u2014 the override wins.`)}}else if(typeof r.narrationAudio=="string"&&r.narrationAudio.trim().length>0&&(M=e.narrationDurationMs(r.narrationAudio.trim()),M===void 0))return{error:missingNarrationError(r,i)};g.push(M===void 0?void 0:Math.round(M)),M===void 0?(o.push(`STORY_SECTION_NO_NARRATION: ${sectionLabel(r,i)} has neither narrationAudio nor overrides.durationMs \u2014 holding for minSectionMs (${b.minSectionMs} ms).`),f.push(Math.round(b.minSectionMs)),p.push(!0)):(f.push(Math.max(Math.round(b.minSectionMs),Math.round(M+b.narrationTailPadMs))),p.push(!1))}const v=Math.round(c.titleCardMs),y=Math.round(c.outroMs);if(v<1)return{error:badDurationError("defaults.titleCardMs",v)};if(y<1)return{error:badDurationError("defaults.outroMs",y)};for(let i=0;i<l.length;i++){if(m[i]<1)return{error:badDurationError(`sections[${i}]'s effective sectionCardMs`,m[i])};if(f[i]<1)return{error:`${sectionLabel((a=l[i])!==null&&a!==void 0?a:{},i)}: resolves to a ${f[i]} ms scene (no narration and minSectionMs too small). Every scene needs at least 1 ms.`}}const _=[v,y,...m,...f],u=Math.max(0,Math.min(Math.floor(c.xfadeMs),Math.floor(c.narrationTailPadMs),Math.floor(Math.min(..._)/2))),T=[];let N=0;const E=d(i=>{T.push({...i,startMs:N}),N+=i.visibleMs},"push"),$=resolveCaptions(t);noteUnknownPlate(t,o);const O=resolveAudio(t);O.musicPath!==void 0&&O.narrationVolume+O.musicVolume>1&&o.push(`STORY_AUDIO_SUM: narrationVolume (${O.narrationVolume}) + musicVolume (${O.musicVolume}) exceeds 1.0 \u2014 the mixer sums with no limiter; simultaneous peaks may clip.`);const I=typeof t.title=="string"?t.title:"Untitled story",A=typeof t.subtitle=="string"&&t.subtitle.trim().length>0?t.subtitle:void 0;E({kind:"title",name:"title",heading:I,...A!==void 0?{subheading:A}:{},visibleMs:v,xfadeOutMs:u}),l.forEach((i,r)=>{var b;const h=typeof i.id=="string"&&i.id.trim().length>0?i.id:`section-${r+1}`,M=typeof i.title=="string"&&i.title.trim().length>0?i.title:(b=firstWords(i.narrationText,6))!==null&&b!==void 0?b:h,S={...c,...pickTimingDefaults(i.overrides)};E({kind:"section-card",name:`s${r}-card`,sectionIndex:r,sectionId:h,heading:M,visibleMs:m[r],xfadeOutMs:0}),typeof i.srt=="string"&&i.srt.trim().length>0&&!Array.isArray(i.cues)&&o.push(`STORY_SRT_NOT_INLINED: ${sectionLabel(i,r)} declares "srt" but no inlined "cues" \u2014 templates never read files; run \`story-studio build\` to inline the cues.`),E({kind:"body",name:`s${r}-body`,sectionIndex:r,sectionId:h,heading:M,visibleMs:f[r],xfadeOutMs:u,...p[r]?{noNarration:!0}:{},images:scheduleImages(i,r,f[r]+u,S,o),imageFadeMs:Math.round(S.imageFadeMs),...g[r]!==void 0?{narrationMs:g[r]}:{},cues:(0,captions_1.resolveSectionCues)(i,g[r],$)})}),E({kind:"outro",name:"outro",heading:I,...A!==void 0?{subheading:A}:{},visibleMs:y,xfadeOutMs:0});const x=T.reduce((i,r)=>i+r.visibleMs,0);return{plan:{fps:e.fps,storyMs:x,scenes:T,variants:resolveVariants(t.outputs,e.target),motion:resolveMotion(t,o),captions:$,audio:O,diagnostics:o}}}d(resolveTiming,"resolveTiming");function resolveCaptions(t){const e=t.captions;return{enabled:typeof e?.enabled=="boolean"?e.enabled:captions_1.DEFAULT_CAPTIONS.enabled,minCueMs:typeof e?.minCueMs=="number"&&Number.isFinite(e.minCueMs)&&e.minCueMs>=0?Math.round(e.minCueMs):captions_1.DEFAULT_CAPTIONS.minCueMs,cueGapMs:typeof e?.cueGapMs=="number"&&Number.isFinite(e.cueGapMs)&&e.cueGapMs>=0?Math.round(e.cueGapMs):captions_1.DEFAULT_CAPTIONS.cueGapMs,plate:e?.plate==="never"?"never":"always"}}d(resolveCaptions,"resolveCaptions");function noteUnknownPlate(t,e){var n;const s=(n=t.captions)===null||n===void 0?void 0:n.plate;s!==void 0&&s!=="always"&&s!=="never"&&e.push(`STORY_CAPTIONS_PLATE_UNKNOWN: captions.plate ${JSON.stringify(s)} is not "always" or "never" \u2014 using "always".`)}d(noteUnknownPlate,"noteUnknownPlate");function resolveAudio(t){const e=t.audio,n=d((s,a)=>typeof s=="number"&&Number.isFinite(s)&&s>=0&&s<=1?s:a,"vol");return{narrationVolume:n(e?.narrationVolume,1),musicVolume:n(e?.musicVolume,.1),...typeof e?.music=="string"&&e.music.trim().length>0?{musicPath:e.music.trim()}:{},musicStartMs:typeof e?.musicStartMs=="number"&&Number.isFinite(e.musicStartMs)&&e.musicStartMs>=0?Math.round(e.musicStartMs):0}}d(resolveAudio,"resolveAudio");function resolveMotion(t,e){const n=t.motion,s=typeof n?.seed=="number"&&Number.isFinite(n.seed)?Math.trunc(n.seed):7,a=typeof n?.intensity=="number"&&Number.isFinite(n.intensity)&&n.intensity>=0?Math.min(n.intensity,2):1;let l="linear";return n?.ease!==void 0&&(exports.MOTION_EASES.includes(n.ease)?l=n.ease:e.push(`STORY_MOTION_EASE_UNKNOWN: motion.ease ${JSON.stringify(n.ease)} is not one of ${exports.MOTION_EASES.join(", ")} \u2014 using "linear".`)),{seed:s,intensity:a,ease:l}}d(resolveMotion,"resolveMotion");function scheduleImages(t,e,n,s,a){var l;const o=(Array.isArray(t.images)?t.images.filter(u=>typeof u=="string"&&u.trim().length>0):[]).length;if(o===0)return[];const f=Math.max(1,Math.round(s.minImageDwellMs)),m=Math.min(o,Math.max(1,Math.floor(n/f)));m<o&&a.push(`STORY_IMAGES_DROPPED: sections[${e}] declares ${o} images but the scene (${n} ms) fits only ${m} at minImageDwellMs ${f} \u2014 the last ${o-m} are not shown.`);const p=(l=t.overrides)===null||l===void 0?void 0:l.imageWeights;let g;Array.isArray(p)&&p.length>0?p.length!==m||!p.every(u=>typeof u=="number"&&Number.isFinite(u)&&u>0)?(a.push(`STORY_IMAGE_WEIGHTS_IGNORED: sections[${e}].overrides.imageWeights must be ${m} positive numbers (one per shown image); using equal weights.`),g=new Array(m).fill(1)):g=p:g=new Array(m).fill(1);let v=(0,captions_1.hamilton)(n,g);v.some(u=>u<1)&&(a.push(`STORY_IMAGE_WEIGHTS_IGNORED: sections[${e}].overrides.imageWeights are so extreme an image gets 0 ms; using equal weights.`),v=(0,captions_1.hamilton)(n,new Array(m).fill(1)));const y=[];let _=0;for(let u=0;u<m;u++)y.push({imageIndex:u,startMs:_,durationMs:v[u]}),_+=v[u];return y}d(scheduleImages,"scheduleImages");function resolveVariants(t,e){const n=Math.max(e.width,e.height),s=Math.min(e.width,e.height),a={landscape:{width:n,height:s},portrait:{width:s,height:n}},l=e.height>e.width?"portrait":"landscape",c=[];for(const o of Array.isArray(t)&&t.length>0?t:[l])c.includes(o)||c.push(o);return c.map(o=>({name:o,...a[o]}))}d(resolveVariants,"resolveVariants");function pickTimingDefaults(t){if(t==null||typeof t!="object")return{};const e={};for(const n of Object.keys(props_1.DEFAULT_STORY_DEFAULTS)){const s=t[n];typeof s=="number"&&Number.isFinite(s)&&s>=0&&(e[n]=s)}return e}d(pickTimingDefaults,"pickTimingDefaults");const DOCUMENT_LEVEL_OVERRIDE_KEYS=["titleCardMs","outroMs","xfadeMs"];function noteDocumentLevelOverrides(t,e,n){const s=t.overrides;if(!(s===null||typeof s!="object"))for(const a of DOCUMENT_LEVEL_OVERRIDE_KEYS)s[a]!==void 0&&n.push(`STORY_OVERRIDE_DOCUMENT_LEVEL: sections[${e}].overrides.${a} is ignored \u2014 "${a}" is document-level in v1; set story.defaults.${a} instead.`)}d(noteDocumentLevelOverrides,"noteDocumentLevelOverrides");function badDurationError(t,e){return`${t} resolves to ${e} ms \u2014 every scene needs at least 1 ms (zero-length scenes are not supported in v1).`}d(badDurationError,"badDurationError");function missingNarrationError(t,e){return[`${sectionLabel(t,e)}: can't determine its length.`,` narrationAudio = ${JSON.stringify(t.narrationAudio)}`," \xB7 not in ctx.media \u2014 this engine probes only TOP-LEVEL string/string[] props,"," so a path nested inside sections[] is never probed",` \xB7 and sections[${e}].overrides.durationMs is not set`,"Fix any one of:"," (a) run `story-studio build <project>` to regenerate props.json (emits mediaPaths)",` (b) set sections[${e}].overrides.durationMs to the clip length in ms`," (c) add the path to the top-level `mediaPaths` array"].join(`
|
|
2
|
+
`)}d(missingNarrationError,"missingNarrationError");function sectionLabel(t,e){const n=typeof t.title=="string"&&t.title.trim().length>0?t.title:t.id;return typeof n=="string"&&n.length>0?`Section ${e} ("${n}")`:`Section ${e}`}d(sectionLabel,"sectionLabel");function firstWords(t,e){if(!(typeof t!="string"||t.trim().length===0))return t.trim().split(/\s+/).slice(0,e).join(" ")}d(firstWords,"firstWords");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var a=(e,t)=>u(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.narratedChaptersPropsSchema=exports.DEFAULT_STORY_DEFAULTS=exports.STORY_OUTPUT_NAMES=exports.MAX_SECTIONS=exports.STORY_SCHEMA_VERSION=void 0,exports.coerceStoryProp=coerceStoryProp,exports.validateStoryShape=validateStoryShape,exports.sniffBareStory=sniffBareStory;const template_utils_1=require("@m0saic/template-utils");exports.STORY_SCHEMA_VERSION=1,exports.MAX_SECTIONS=30,exports.STORY_OUTPUT_NAMES=["landscape","portrait"],exports.DEFAULT_STORY_DEFAULTS={titleCardMs:3500,sectionCardMs:2e3,outroMs:3e3,xfadeMs:600,narrationTailPadMs:700,minSectionMs:1500,minImageDwellMs:2200,imageFadeMs:500},exports.narratedChaptersPropsSchema=(0,template_utils_1.definePropsSchema)({story:{type:"json",required:!1,description:"story.json manifest \u2014 { title, sections: [{ narrationText, narrationAudio?, images?, overrides? }], defaults?, brand?, outputs? }. Omit for the built-in demo story.",meta:{ui:{label:"Story manifest",order:1}}},mediaPaths:{type:"media[]",required:!1,description:"Machine-generated flat mirror of every asset path in the story (run `story-studio build`); needed so narration durations are probed before render.",meta:{ui:{label:"Media paths",order:2}}},projectDir:{type:"string",required:!1,description:"Story project folder (informational; used to shorten paths in diagnostics).",meta:{control:{placeholder:"none (full paths in diagnostics)"},ui:{label:"Project folder",order:3}}}});function coerceStoryProp(e){if(e==null)return{story:null,errors:[]};let t=e;if(typeof e=="string"){if(e.trim().length===0)return{story:null,errors:[]};try{t=JSON.parse(e)}catch(i){return{story:null,errors:[`props.story is a string but not valid JSON \u2014 ${i.message}`]}}}return typeof t!="object"||t===null||Array.isArray(t)?{story:null,errors:[`props.story must be a story object, got ${describe(t)}`]}:{story:t,errors:[]}}a(coerceStoryProp,"coerceStoryProp");function validateStoryShape(e){const t=[];e.schemaVersion!==void 0&&e.schemaVersion!==exports.STORY_SCHEMA_VERSION&&t.push(`story.schemaVersion ${String(e.schemaVersion)} is unsupported (this template understands ${exports.STORY_SCHEMA_VERSION}).`);const i=e.sections;return!Array.isArray(i)||i.length===0?t.push("story.sections must be a non-empty array of section objects."):(i.length>exports.MAX_SECTIONS&&t.push(`story.sections has ${i.length} entries; the maximum is ${exports.MAX_SECTIONS} (the pipeline concat wall sits at 80 steps).`),i.forEach((r,o)=>{if(typeof r!="object"||r===null||Array.isArray(r)){t.push(`story.sections[${o}] must be an object, got ${describe(r)}.`);return}r.images!==void 0&&(Array.isArray(r.images)?r.images.forEach((n,s)=>{(typeof n!="string"||n.trim().length===0)&&t.push(`story.sections[${o}].images[${s}] must be a non-empty path string, got ${describe(n)}.`)}):t.push(`story.sections[${o}].images must be an array of path strings.`)),validateCueShape(r.cues,o,t)})),e.audio!==void 0&&e.audio!==null&&typeof e.audio=="object"&&(e.audio.music!==void 0&&(typeof e.audio.music!="string"||e.audio.music.trim().length===0)&&t.push("story.audio.music must be a non-empty path string."),e.audio.musicStartMs!==void 0&&!(typeof e.audio.musicStartMs=="number"&&Number.isFinite(e.audio.musicStartMs)&&e.audio.musicStartMs>=0)&&t.push("story.audio.musicStartMs must be a number of milliseconds \u2265 0.")),e.outputs!==void 0&&(Array.isArray(e.outputs)?e.outputs.forEach((r,o)=>{exports.STORY_OUTPUT_NAMES.includes(r)||t.push(`story.outputs[${o}] is ${JSON.stringify(r)}; valid values: ${exports.STORY_OUTPUT_NAMES.map(n=>`"${n}"`).join(", ")}.`)}):t.push(`story.outputs must be an array; valid values: ${exports.STORY_OUTPUT_NAMES.join(", ")}.`)),t}a(validateStoryShape,"validateStoryShape");function sniffBareStory(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;const t=e;return t.story!==void 0||!Array.isArray(t.sections)?null:t}a(sniffBareStory,"sniffBareStory");function validateCueShape(e,t,i){if(e===void 0)return;if(!Array.isArray(e)){i.push(`story.sections[${t}].cues must be an array of { startMs, endMs, text }.`);return}let r=-1;e.forEach((o,n)=>{const s=o;if(!(typeof o=="object"&&o!==null&&typeof s.startMs=="number"&&Number.isFinite(s.startMs)&&s.startMs>=0&&typeof s.endMs=="number"&&Number.isFinite(s.endMs)&&s.endMs>s.startMs&&typeof s.text=="string"&&s.text.trim().length>0)){i.push(`story.sections[${t}].cues[${n}] must be { startMs \u2265 0, endMs > startMs, text } (narration-relative ms).`);return}s.startMs<r&&i.push(`story.sections[${t}].cues[${n}] starts before the previous cue ends \u2014 cues must be ordered and non-overlapping.`),r=s.endMs})}a(validateCueShape,"validateCueShape");function describe(e){return e===null?"null":Array.isArray(e)?"an array":`a ${typeof e}`}a(describe,"describe");
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var B=Object.defineProperty;var p=(e,n)=>B(e,"name",{value:n,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildBodyDoc=buildBodyDoc,exports.musicSource=musicSource,exports.focusFromOverrides=focusFromOverrides;const template_utils_1=require("@m0saic/template-utils"),layout_1=require("../layout"),kenburns_1=require("../kenburns"),card_1=require("./card"),WINDOW_SLACK_SEC=.25,CAPTION_SAFE_W=.9,CAPTION_MIN_FONT=14;function buildBodyDoc(e,n,o,a,i,t){var s,l,b;if(e.kind!=="body")throw new Error(`buildBodyDoc: got a ${e.kind} scene ("${e.name}")`);const $=e.visibleMs+e.xfadeOutMs,f=(0,layout_1.classifyAspect)(o.width,o.height),c=layout_1.ASPECT_TABLE[f],d=(s=e.images)!==null&&s!==void 0?s:[],y=n!==void 0&&n.images.length>0&&d.length>0,x=(l=e.cues)!==null&&l!==void 0?l:[],r=x.length>0,h=n?.narration,M={},g=[];if(y){const w=Math.max(.05,((b=e.imageFadeMs)!==null&&b!==void 0?b:500)/1e3);d.forEach((m,_)=>{var k,v,C;const S=n.images[m.imageIndex];if(S===void 0)throw new Error(`buildBodyDoc: ${e.name} schedules images[${m.imageIndex}] but only ${n.images.length} resolved`);M[S.assetKey]={kind:"file",path:S.path,mediaType:"image"};const u=n.focus[m.imageIndex],I=m.startMs/1e3,T=d[_+1],A=(0,kenburns_1.kenBurnsCamera)({seed:a.motion.seed,sectionIndex:(k=e.sectionIndex)!==null&&k!==void 0?k:0,imageIndex:m.imageIndex,startSec:I,endSec:(m.startMs+m.durationMs)/1e3,intensity:a.motion.intensity,ease:a.motion.ease,ampScale:c.cameraAmpScale,...u!==void 0?{subjectX:u.x,subjectY:u.y}:{}}),F={..._>0?{startSec:I}:{},...T!==void 0?{endSec:T.startMs/1e3+w+WINDOW_SLACK_SEC}:{}};g.push({type:"media",mediaType:"image",assetId:S.assetKey,placement:{fit:"cover",focusX:(v=u?.x)!==null&&v!==void 0?v:.5,focusY:(C=u?.y)!==null&&C!==void 0?C:c.coverFocusY},...A!==void 0?{effects:{camera:A}}:{},overlay:{..._>0?{alpha:(0,template_utils_1.fadeInExpr)(I,w,"linear")}:{},...Object.keys(F).length>0?{window:F}:{}},editor:{owner:"template",label:`${e.name}/img${m.imageIndex}`}})})}else{const w=Math.min(o.width,o.height);g.push((0,template_utils_1.makeColorTile)(i.card),(0,card_1.textCell)(e.heading,{maxFont:Math.round(w*c.headingScale*.7),maxW:Math.floor(o.width*c.cardSafeW),bandH:Math.floor(o.height*.3),color:i.muted,label:`${e.name}/panel-heading`}))}r&&g.push(...buildCaptionSources(e,x,o,f,c,a,i)),h!==void 0&&(M[h.assetKey]={kind:"file",path:h.path,mediaType:"audio"},g.push({type:"media",mediaType:"audio",assetId:h.assetKey,audio:{enabled:!0,volume:a.audio.narrationVolume},editor:{owner:"template",label:`${e.name}/narration`}})),t!==void 0&&(M[t.assetKey]={kind:"file",path:t.path,mediaType:"audio"},g.push(musicSource(t,e,a,`${e.name}/music`)));const O=y?d.length:2,j=(h!==void 0?1:0)+(t!==void 0?1:0);return{kind:"mosaic_document",version:1,m0:(0,layout_1.buildBodyM0)({aspect:f,stackFrames:O,captions:r,audioCount:j}),assets:M,sources:g,size:{width:o.width,height:o.height},fps:a.fps,durationMs:$,backgroundColor:i.canvas,editor:{label:`${o.name}/${e.name}`}}}p(buildBodyDoc,"buildBodyDoc");function musicSource(e,n,o,a){return{type:"media",mediaType:"audio",assetId:e.assetKey,audio:{enabled:!0,volume:o.audio.musicVolume},playback:{clipStartMs:o.audio.musicStartMs+n.startMs},editor:{owner:"template",label:a}}}p(musicSource,"musicSource");function buildCaptionSources(e,n,o,a,i,t,s){const l=Math.min(o.width,o.height),b=a==="portrait",f=t.captions.plate==="never"?(0,template_utils_1.makeColorTile)("black@0"):(0,template_utils_1.makeColorTile)("#000000@0.55",{placement:{inset:{top:.05,left:.05,right:.05,bottom:.12}}}),c=Math.floor(o.width*.85*CAPTION_SAFE_W);let d=Math.max(CAPTION_MIN_FONT,Math.round(l*i.captionScale)),y=n.map(r=>wrapCue(r.text,d,c));for(;!y.every(r=>r.length<=i.captionLines)&&d>CAPTION_MIN_FONT;)d=Math.max(CAPTION_MIN_FONT,Math.floor(d*.9)),y=n.map(r=>wrapCue(r.text,d,c));const x={type:"text",renderMode:{kind:"video"},layers:n.map((r,h)=>({content:{kind:"literal",text:y[h].join(`
|
|
2
|
+
`)},style:{fontSize:d,fontColor:s.ink},placement:{hAlign:"center",vAlign:"middle",padding:{x:.07,y:.1}},overlay:{enable:`between(t,${(r.startMs/1e3).toFixed(3)},${(r.endMs/1e3).toFixed(3)})`}})),editor:{owner:"template",label:`${e.name}/captions`}};return b?[f,x]:[(0,template_utils_1.makeColorTile)("black@0"),f,x]}p(buildCaptionSources,"buildCaptionSources");function wrapCue(e,n,o){const a=p(s=>(0,template_utils_1.measureText)(s,{fontSize:n}).width,"width"),i=[];let t="";for(const s of e.replace(/\n/g," ").split(/\s+/).filter(l=>l.length>0)){const l=t.length>0?`${t} ${s}`:s;a(l)<=o||t.length===0?t=l:(i.push(t),t=s)}return t.length>0&&i.push(t),i.length>0?i:[e]}p(wrapCue,"wrapCue");function focusFromOverrides(e,n){const o=e?.imageFocus,a=new Array(n).fill(void 0);if(!Array.isArray(o))return a;for(let i=0;i<n&&i<o.length;i++){const t=o[i];typeof t=="object"&&t!==null&&typeof t.x=="number"&&t.x>=0&&t.x<=1&&typeof t.y=="number"&&t.y>=0&&t.y<=1&&(a[i]={x:t.x,y:t.y})}return a}p(focusFromOverrides,"focusFromOverrides");
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";var x=Object.defineProperty;var u=(t,e)=>x(t,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildCardDoc=buildCardDoc,exports.textCell=textCell,exports.fitHeadingBlock=fitHeadingBlock,exports.greedyWrap=greedyWrap;const template_utils_1=require("@m0saic/template-utils"),layout_1=require("../layout"),body_1=require("./body"),MIN_FONT_PX=16,USABLE_W=.98,LINE_HEIGHT=1.25;function buildCardDoc(t,e,l,n,o){if(t.kind==="body")throw new Error(`buildCardDoc: got a body scene ("${t.name}")`);const i=layout_1.CARD_BANDS[t.kind],a=layout_1.ASPECT_TABLE[(0,layout_1.classifyAspect)(e.width,e.height)],d=Math.min(e.width,e.height),g=Math.floor(e.width*a.cardSafeW),h=i.reduce((f,c)=>f+c.weight,0),s=i.map(f=>{var c;const m=Math.floor(e.height*f.weight/h);switch(f.kind){case"spacer":return(0,template_utils_1.makeColorTile)(n.canvas);case"bar":return(0,template_utils_1.makeColorTile)(n.accent,{placement:{inset:{left:.44,right:.44}}});case"kicker":return textCell(kickerText(t),{maxFont:Math.round(d*a.subScale),maxW:g,bandH:m,color:n.accent,bold:!0,label:`${t.name}/kicker`});case"heading":return textCell(t.heading,{maxFont:Math.round(d*a.headingScale),maxW:g,bandH:m,color:n.ink,bold:!0,label:`${t.name}/heading`});case"sub":return textCell((c=t.subheading)!==null&&c!==void 0?c:"",{maxFont:Math.round(d*a.subScale),maxW:g,bandH:m,color:n.muted,label:`${t.name}/sub`})}}),p={};return o!==void 0&&(p[o.assetKey]={kind:"file",path:o.path,mediaType:"audio"},s.push((0,body_1.musicSource)(o,t,l,`${t.name}/music`))),{kind:"mosaic_document",version:1,m0:(0,layout_1.buildCardM0)(i,o!==void 0?1:0),assets:p,sources:s,size:{width:e.width,height:e.height},fps:l.fps,durationMs:t.visibleMs+t.xfadeOutMs,backgroundColor:n.canvas,editor:{label:`${e.name}/${t.name}`}}}u(buildCardDoc,"buildCardDoc");function kickerText(t){var e;return`PART ${String(((e=t.sectionIndex)!==null&&e!==void 0?e:0)+1).padStart(2,"0")}`}u(kickerText,"kickerText");function textCell(t,e){const l=t.trim();if(l.length===0)return(0,template_utils_1.makeColorTile)("black@0");const n=fitHeadingBlock(l,e.maxW,Math.max(1,e.bandH),e.maxFont,e.bold===!0);return{type:"text",rasterizer:"svg",renderMode:{kind:"image"},layers:[{content:{kind:"literal",text:n.text},style:{fontSize:n.fontSize,fontColor:e.color,...e.bold?{fontWeight:"bold"}:{}},placement:{hAlign:"center",vAlign:"middle"}}],editor:{owner:"template",label:e.label}}}u(textCell,"textCell");function fitHeadingBlock(t,e,l,n,o){var i,a;const d=Math.max(8,Math.min(MIN_FONT_PX,n)),g=o?(i=(0,template_utils_1.resolveFontFile)({weight:"bold"}))===null||i===void 0?void 0:i.path:void 0,h=Math.floor(e*USABLE_W),s=u((r,b)=>(0,template_utils_1.measureText)(r,{fontSize:b,...g?{fontPath:g}:{}}).width,"width"),p=u(r=>Math.max(d,Math.min(n,r)),"clampFont"),f=u(r=>p(Math.floor(l/(r*LINE_HEIGHT))),"fitToHeight"),c=p(Math.floor(n*h/Math.max(1,s(t,n))));if(s(t,c)<=h&&c>=Math.round(n*.62))return{text:t,fontSize:Math.min(c,f(1))};for(let r=n;r>=d;r=Math.max(d,Math.floor(r*.9))){const b=greedyWrap(t,k=>s(k,r),h);if(b!==null&&b.length<=2&&r<=f(b.length))return{text:b.join(`
|
|
2
|
+
`),fontSize:r};if(r===d)break}const m=Math.max(1,Math.floor(l/(d*LINE_HEIGHT))),M=(a=greedyWrap(t,r=>s(r,d),h))!==null&&a!==void 0?a:hardSlice(t,r=>s(r,d),h);if(M.length>m){const r=M.slice(0,m);return r[r.length-1]=`${r[r.length-1].replace(/…$/,"")}\u2026`,{text:r.join(`
|
|
3
|
+
`),fontSize:d}}return{text:M.join(`
|
|
4
|
+
`),fontSize:d}}u(fitHeadingBlock,"fitHeadingBlock");function hardSlice(t,e,l){const n=[];let o="";for(const i of t)e(o+i)>l&&o.length>0?(n.push(o),o=i):o+=i;return o.length>0&&n.push(o),n.length>0?n:[t]}u(hardSlice,"hardSlice");function greedyWrap(t,e,l){const n=[];let o="";for(const i of t.split(/\s+/).filter(a=>a.length>0)){const a=o.length>0?`${o} ${i}`:i;if(e(a)<=l){o=a;continue}if(o.length===0||(n.push(o),o=i,e(o)>l))return null}return o.length>0&&n.push(o),n.length>0?n:null}u(greedyWrap,"greedyWrap");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var n=Object.defineProperty;var e=(o,t)=>n(o,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.STORY_PRESETS=void 0,exports.storyTheme=storyTheme,exports.themeFromStory=themeFromStory;const types_1=require("@m0saic/types");exports.STORY_PRESETS={dark:{canvas:"#0d0f12",card:"#14171c",ink:"#f4f6f8",muted:"#8b94a1",accent:"#2f6df6"}};function storyTheme(o){return exports.STORY_PRESETS[o??"dark"]}e(storyTheme,"storyTheme");function themeFromStory(o){const t=storyTheme(),r=o.brand;return{...t,canvas:asColor(r?.backgroundColor,t.canvas),ink:asColor(r?.textColor,t.ink),accent:asColor(r?.accentColor,t.accent)}}e(themeFromStory,"themeFromStory");function asColor(o,t){return(0,types_1.isMosaicColor)(o)?o:t}e(asColor,"asColor");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var P=Object.defineProperty;var d=(o,r)=>P(o,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.DOCUMENT_MAX_PAGES=void 0,exports.buildScrapbookDocument=buildScrapbookDocument,exports.nestedOverlays=nestedOverlays;const template_utils_1=require("@m0saic/template-utils"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),page_1=require("./page"),pipeline_1=require("./pipeline");exports.DOCUMENT_MAX_PAGES=12;function buildScrapbookDocument(o){const{width:r,height:c,fps:a,props:s,pages:b}=o,x=Math.round(s.xfadeMs),l=Math.round(s.introMs),u=Math.round(s.perPageMs),h=Math.round(s.outroMs),p=l+u*b.length+h,i=d(e=>e/1e3,"sec"),n=[];let t=0;l>0&&(n.push({doc:(0,pipeline_1.cardDoc)({width:r,height:c,fps:a,durationMs:p,props:s,headline:s.title,sub:s.subtitle,headlineProp:"title",originSec:i(t),entrances:!1}),startMs:t,visibleMs:l}),t+=l);for(const e of b)n.push({doc:(0,page_1.buildPageDoc)({page:e,width:r,height:c,fps:a,durationMs:p,props:s,originSec:i(t),entrances:!1}),startMs:t,visibleMs:u}),t+=u;h>0&&n.push({doc:(0,pipeline_1.cardDoc)({width:r,height:c,fps:a,durationMs:p,props:s,headline:s.closing,sub:"",headlineProp:"closing",originSec:i(t),entrances:!1}),startMs:t,visibleMs:h});const v={},M=[{type:"lavfi",color:s.paperColor}];return n.forEach((e,g)=>{const m=`layer${g}`;v[m]=e.doc;const _=i(e.startMs),f=i(e.startMs+e.visibleMs),S=i(x),k=g===0,y=g===n.length-1,D=[...k?[]:[{t:_,v:0},{t:_+S,v:1}],...y?[{t:f,v:1}]:[{t:f,v:1},{t:f+S,v:0}]];M.push({type:"mosaic",ref:m,overlay:{alpha:(0,template_utils_1.keyframeExpr)(D)}})}),{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(nestedOverlays(M.length),"Scrapbook-document"),size:{width:r,height:c},fps:a,durationMs:p,backgroundColor:s.paperColor,audio:{mode:"off"},assets:{},children:v,sources:M}}d(buildScrapbookDocument,"buildScrapbookDocument");function nestedOverlays(o){return o<=1?"1":`1{${nestedOverlays(o-1)}}`}d(nestedOverlays,"nestedOverlays");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var o=Object.defineProperty;var r=(e,t)=>o(e,"name",{value:t,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.ScrapbookV1=void 0;var scrapbook_1=require("./scrapbook");Object.defineProperty(exports,"ScrapbookV1",{enumerable:!0,get:r(function(){return scrapbook_1.ScrapbookV1},"get")}),Object.defineProperty(exports,"default",{enumerable:!0,get:r(function(){return __importDefault(scrapbook_1).default},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var y=Object.defineProperty;var u=(t,o)=>y(t,"name",{value:o,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.tiltFor=tiltFor,exports.buildPageDoc=buildPageDoc;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),PICTURE_ROWS=7,NOTE_ROWS=2,PRINT_SHARE=.9,MOUNT=.055;function tiltFor(t,o){if(o<=0)return 0;const e=t%2===0?1:-1,n=t*37%7/7-.5;return Number((e*o*(.75+n*.5)).toFixed(3))}u(tiltFor,"tiltFor");function buildPageDoc(t){var o;const{page:e,width:n,height:r,fps:a,durationMs:s,props:i}=t,c=(o=t.originSec)!==null&&o!==void 0?o:0,p=PICTURE_ROWS+NOTE_ROWS,d=Math.round(r*PICTURE_ROWS/p),m=r-d,k=s/1e3,l=(0,types_1.asAssetId)(`photo_${e.index}`),f=Math.max(2,Math.round(d*PRINT_SHARE/2)*2),_={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("1",`Scrapbook-print-${e.index}`),size:{width:f,height:f},fps:a,durationMs:s,backgroundColor:"#FBF8F1",audio:{mode:"off"},assets:{[l]:e.image.kind==="file"?{kind:"file",path:e.image.path,mediaType:"image"}:{kind:"data-uri",uri:e.image.uri,mediaType:"image"}},sources:[{type:"media",mediaType:"image",assetId:l,placement:{fit:"contain",inset:MOUNT}}]},x={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("1",`Scrapbook-band-${e.index}`),size:{width:n,height:d},fps:a,durationMs:s,backgroundColor:i.paperColor,audio:{mode:"off"},assets:{},children:{print:_},sources:[{type:"mosaic",ref:"print",placement:{fit:"contain"}}]},h=i.drift>0?{zoom:(0,template_utils_1.keyframeExpr)([{t:c,v:1+i.drift*.1},{t:c+k,v:1}]),focusX:.5,focusY:.45}:void 0,g=tiltFor(e.index,i.tilt),b={...g!==0?{rotate:g}:{},...h?{camera:h}:{}};return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.weightedSplit)([PICTURE_ROWS,NOTE_ROWS],"row",{precision:p}),size:{width:n,height:r},fps:a,durationMs:s,backgroundColor:i.paperColor,audio:{mode:"off"},assets:{},children:{band:x},sources:[{type:"mosaic",ref:"band",...Object.keys(b).length?{effects:b}:{}},(0,template_utils_1.bindProp)({...(0,template_utils_1.svgLabel)(e.note,n,m,{color:i.inkColor,maxPx:Math.round(m*.3),maxLines:2}),...t.entrances===!1?{}:{overlay:(0,template_utils_1.entrance)({kind:"rise",durationMs:620,atSec:c+.35,ease:"easeOut"})}},"notes",e.index)]}}u(buildPageDoc,"buildPageDoc");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var l=Object.defineProperty;var s=(e,t)=>l(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.STAND_IN_PAGES=void 0,exports.resolvePages=resolvePages;const placeholder_1=require("./placeholder");exports.STAND_IN_PAGES=4;function standInNote(e,t){return t?"":["the summer everything changed","she never let me carry anything","we drove until the map ran out","and then there were four of us"][e%4]}s(standInNote,"standInNote");function resolvePages(e){const t=e.photos.filter(n=>typeof n=="string"&&n.trim()!==""),a=t.length>0?t.length:exports.STAND_IN_PAGES;return Array.from({length:a},(n,r)=>{const o=t[r];return{index:r,image:o?{kind:"file",path:o}:{kind:"data-uri",uri:(0,placeholder_1.standInPhotoUrl)(r,e.paperColor)},note:typeof e.notes[r]=="string"?e.notes[r]:standInNote(r,t.length>0),standIn:!o}})}s(resolvePages,"resolvePages");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var k=Object.defineProperty;var g=(t,s)=>k(t,"name",{value:s,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.cardDoc=cardDoc,exports.buildScrapbookPipeline=buildScrapbookPipeline,exports.naturalDurationMs=naturalDurationMs;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),page_1=require("./page");function cardDoc(t){var s;const{width:o,height:i,fps:e,durationMs:m,props:n}=t,d=(s=t.originSec)!==null&&s!==void 0?s:0,p=t.sub.trim()!=="",a=p?[10,11,4]:[12,13],c=a.reduce((l,b)=>l+b,0),r=Math.round(i*a[1]/c),h=p?Math.round(i*a[2]/c):0,M=[{type:"lavfi",color:n.paperColor},(0,template_utils_1.bindProp)({...(0,template_utils_1.svgLabel)(t.headline,o,r,{color:n.inkColor,maxPx:Math.round(r*.46),maxLines:2}),...t.entrances===!1?{}:{overlay:(0,template_utils_1.entrance)({kind:"rise",durationMs:700,atSec:d+.15,ease:"easeOut"})}},t.headlineProp)];return p&&M.push((0,template_utils_1.bindProp)({...(0,template_utils_1.svgLabel)(t.sub,o,h,{color:n.accentColor,maxPx:Math.round(h*.5),maxLines:1}),...t.entrances===!1?{}:{overlay:(0,template_utils_1.entrance)({kind:"fade",durationMs:700,atSec:d+.55,ease:"easeOut"})}},"subtitle")),{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.weightedSplit)(a,"row",{precision:c}),size:{width:o,height:i},fps:e,durationMs:m,backgroundColor:n.paperColor,audio:{mode:"off"},assets:{},sources:M}}g(cardDoc,"cardDoc");function withMusic(t,s,o,i){var e;return s?{...t,m0:(0,dsl_stdlib_1.toM0String)(`${String(t.m0)}{F}`,"Scrapbook-audio"),audio:{mode:"auto"},assets:{...(e=t.assets)!==null&&e!==void 0?e:{},[o]:{kind:"file",path:s,mediaType:"audio"}},sources:[...t.sources,{type:"media",mediaType:"audio",assetId:o,playback:{clipStartMs:Math.max(0,Math.round(i))}}]}:t}g(withMusic,"withMusic");function buildScrapbookPipeline(t){const{width:s,height:o,fps:i,props:e,pages:m}=t,n=Math.round(e.xfadeMs),d=[],p=n>0?{transitionToNext:{type:"fade",durationMs:n}}:{},a=Math.round(e.introMs),c=Math.round(e.perPageMs),r=Math.round(e.outroMs),h=e.music.trim(),M=(0,types_1.asAssetId)("music_bed");let l=0;if(a>0){const u=a+n,f=cardDoc({width:s,height:o,fps:i,durationMs:u,props:e,headline:e.title,sub:e.subtitle,headlineProp:"title"});d.push({name:"open",label:"Opening",durationMs:u,file:withMusic(f,h,M,l),...p}),l+=a}if(m.forEach((u,f)=>{const x=f===m.length-1&&r<=0,P=c+(x?0:n),_=(0,page_1.buildPageDoc)({page:u,width:s,height:o,fps:i,durationMs:P,props:e});d.push({name:`page-${u.index+1}`,label:`Page ${u.index+1}`,durationMs:P,file:withMusic(_,h,M,l),...x?{}:p}),l+=c}),r>0){const u=cardDoc({width:s,height:o,fps:i,durationMs:r,props:e,headline:e.closing,sub:"",headlineProp:"closing"});d.push({name:"close",label:"Closing",durationMs:r,file:withMusic(u,h,M,l)})}const b=a+c*m.length+r;return{kind:"mosaic_pipeline",version:1,emit:"single",size:{width:s,height:o},fps:i,durationMs:b,durationFit:"cut",defaultTransition:{type:"cut"},backgroundColor:e.paperColor,steps:d}}g(buildScrapbookPipeline,"buildScrapbookPipeline");function naturalDurationMs(t,s){return Math.round(t.introMs)+Math.round(t.perPageMs)*s+Math.round(t.outroMs)}g(naturalDurationMs,"naturalDurationMs");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var x=Object.defineProperty;var r=(t,n)=>x(t,"name",{value:n,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.standInPhotoSvg=standInPhotoSvg,exports.standInPhotoUrl=standInPhotoUrl;const PALETTES=[["#D8C7A8","#B49B78","#6E5842"],["#C9CFC0","#9FAE94","#4F5C4A"],["#E2C7B4","#C39A85","#7A5545"],["#C6CDD8","#98A5B6","#4C5769"],["#E0D2B6","#BFA97F","#6B5636"]];function hash(t,n){let e=t*2654435761^n*2246822507;return e=Math.imul(e^e>>>16,2146121005),e=Math.imul(e^e>>>15,2221713035),(e^e>>>16)>>>0}r(hash,"hash");function standInPhotoSvg(t,n){const[e,i,s]=PALETTES[hash(t,1)%PALETTES.length],o=96+hash(t,2)%40,u=40+hash(t,3)%120,g=1+hash(t,4)%3,a=Array.from({length:g},($,h)=>{const l=40+hash(t,10+h)%120,c=26+hash(t,20+h)%18;return`<circle cx="${l}" cy="${o+14-c}" r="7" fill="${s}"/><rect x="${l-7}" y="${o+22-c}" width="14" height="${c}" rx="6" fill="${s}"/>`}).join("");return`<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" viewBox="0 0 200 200"><rect width="200" height="200" fill="${e}"/><circle cx="${u}" cy="${o-54}" r="18" fill="${n}" opacity="0.55"/><rect y="${o}" width="200" height="${200-o}" fill="${i}"/>`+a+"</svg>"}r(standInPhotoSvg,"standInPhotoSvg");function standInPhotoUrl(t,n){return`data:image/svg+xml,${encodeURIComponent(standInPhotoSvg(t,n))}`}r(standInPhotoUrl,"standInPhotoUrl");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var n=(o,a)=>u(o,"name",{value:a,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.propsSchema=exports.DEFAULT_PROPS=void 0,exports.resolveProps=resolveProps;const template_utils_1=require("@m0saic/template-utils");exports.DEFAULT_PROPS={title:"A few good years",subtitle:"the people who were there",photos:[],notes:[],closing:"more soon",music:"",perPageMs:3600,introMs:2200,outroMs:2600,xfadeMs:700,drift:.18,tilt:2.2,paperColor:"#EFE7D8",inkColor:"#221E19",accentColor:"#C2410C"},exports.propsSchema=(0,template_utils_1.definePropsSchema)({title:{type:"string",required:!1,description:"Opening line \u2014 a name, usually.",meta:{ui:{label:"Title",order:1,primary:!0}}},subtitle:{type:"string",required:!1,description:"Under the title: a date range, a place, a dedication.",meta:{ui:{label:"Subtitle",order:2}}},photos:{type:"media[]",required:!1,description:"The pictures, in order. Leave empty to lay the film out with generated stand-in pages and drop real ones in later.",meta:{control:{accept:["image"],picker:"folder",multiple:!0},ui:{label:"Photos",order:3,primary:!0}}},notes:{type:"string[]",required:!1,description:"One line per picture, in the same order. A blank entry leaves that page wordless.",meta:{ui:{label:"Notes",order:4,primary:!0}}},closing:{type:"string",required:!1,description:"The last thing on screen.",meta:{ui:{label:"Closing line",order:5}}},music:{type:"media",required:!1,description:"Optional music bed under the whole film.",meta:{control:{accept:["audio"],placeholder:"no music"},ui:{label:"Music",order:6}}},perPageMs:{type:"number",required:!1,description:"How long each page holds (ms).",meta:{constraints:{min:800,max:2e4},ui:{label:"Per page"}}},introMs:{type:"number",required:!1,description:"The opening card (ms).",meta:{constraints:{min:0,max:15e3},ui:{label:"Opening"}}},outroMs:{type:"number",required:!1,description:"The closing card (ms).",meta:{constraints:{min:0,max:15e3},ui:{label:"Closing"}}},xfadeMs:{type:"number",required:!1,description:"Cross-fade between pages (ms) \u2014 the page turn.",meta:{constraints:{min:0,max:3e3},ui:{label:"Page turn"}}},drift:{type:"number",required:!1,description:"How far each picture drifts while it holds. 0 = perfectly still.",meta:{constraints:{min:0,max:1},ui:{label:"Drift"}}},tilt:{type:"number",required:!1,description:"How far off square a picture is pinned, in degrees.",meta:{constraints:{min:0,max:8},ui:{label:"Tilt"}}},paperColor:{type:"string",required:!1,description:"The paper the scrapbook is made of.",meta:{ui:{label:"Paper"},constraints:{isColor:!0},control:{colorPicker:!0}}},inkColor:{type:"string",required:!1,description:"The pen.",meta:{ui:{label:"Ink"},constraints:{isColor:!0},control:{colorPicker:!0}}},accentColor:{type:"string",required:!1,description:"The one colour that is not paper or ink.",meta:{ui:{label:"Accent"},constraints:{isColor:!0},control:{colorPicker:!0}}}});function resolveProps(o){const a=Object.fromEntries(Object.entries(o??{}).filter(([,e])=>e!==void 0)),r={...exports.DEFAULT_PROPS,...a},t=[],i=n((e,l,p)=>{const s=r[e];(!Number.isFinite(s)||s<l||s>p)&&t.push(`${String(e)} must be ${l}..${p} (got ${String(s)})`)},"num");i("perPageMs",800,2e4),i("introMs",0,15e3),i("outroMs",0,15e3),i("xfadeMs",0,3e3),i("drift",0,1),i("tilt",0,8),Array.isArray(r.photos)||t.push("photos must be a list"),Array.isArray(r.notes)||t.push("notes must be a list");for(const e of["paperColor","inkColor","accentColor"])/^#[0-9a-fA-F]{6}$/.test(r[e])||t.push(`${e} must be #rrggbb (got "${r[e]}")`);return t.length?{ok:!1,errors:t}:{ok:!0,value:r}}n(resolveProps,"resolveProps");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var g=Object.defineProperty;var d=(p,e)=>g(p,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.ScrapbookV1=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),pages_1=require("./pages"),pipeline_1=require("./pipeline"),props_1=require("./props");exports.ScrapbookV1=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/story/scrapbook/v1"),label:"Scrapbook",version:1,description:"A short personal film: a few pictures, a line each, pinned askew on paper and drifting past to music. Lays itself out with stand-in pages until your own photos arrive.",capabilities:{tier:"core"},tags:["story","personal","photos","animated","creators","social","memories","photo-album"],outputHints:{width:1920,height:1080,fps:30,durationMs:(0,pipeline_1.naturalDurationMs)(props_1.DEFAULT_PROPS,pages_1.STAND_IN_PAGES),note:"Length follows the page count: opening + per-page \xD7 pictures + closing.",format:{kind:"video",container:"mp4"}},propsSchema:props_1.propsSchema,defaultProps:props_1.DEFAULT_PROPS,render(p,e){const r=e.output.width,a=e.output.height,h=e.target.fps,i=d((c,s)=>Promise.resolve((0,template_utils_1.makeErrorMosaic)(s,{title:`${this.id} ${c}`,width:r,height:a})),"fail"),u=(0,props_1.resolveProps)(p);if(!u.ok)return i("props",u.errors.join(" | "));const o=u.value;if(Math.min(r,a)<320)return i("canvas",`canvas too small: the short side must be at least 320 px (got ${r}\xD7${a})`);const t=(0,pages_1.resolvePages)(o);if(t.length===0)return i("pages","no pages to show");const n=(0,template_utils_1.resolvePinnedDurationMs)(e),l={...o};if(n!==void 0){const c=Math.round(n)-Math.round(o.introMs)-Math.round(o.outroMs),s=Math.floor(c/t.length);if(s<400)return i("duration",`pinned duration ${Math.round(n)} ms leaves under 400 ms a page for ${t.length} pages`);l.perPageMs=s,l.outroMs=Math.round(n)-Math.round(o.introMs)-s*t.length}return Promise.resolve((0,pipeline_1.buildScrapbookPipeline)({width:r,height:a,fps:h,props:l,pages:t}))}}),(0,template_utils_1.registerTemplate)(exports.ScrapbookV1),exports.default=exports.ScrapbookV1;
|
|
@@ -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("./v1"),exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.BRAND_M_GLYPH=void 0,exports.BRAND_M_GLYPH={bounds:{x:0,y:0,width:272,height:272},path:"M19.7296 0.010376H0.0599976V48.117H19.7296V0.010376Z M34.9327 55.9604H0V104.067H34.9327V55.9604Z M62.2438 111.931H34.9327V160.038H62.2438V111.931Z M27.3212 111.931H0V160.038H27.3212V111.931Z M34.9327 167.912H0V216.019H34.9327V167.912Z M62.1336 223.893H27.3712V272H62.1336V223.893Z M19.7197 223.893H0.0100098V272H19.7197V223.893Z M131.799 111.931H103.496V160.038H131.799V111.931Z M174.503 56.0122L163.737 55.9915L139.49 89.6651V104.088L174.503 104.119V56.0122Z M118.248 104.067H131.799V89.52L107.582 55.9604H69.675V104.067H115.614H118.248Z M91.3477 33.9223L69.675 3.38805V48.1067H101.924L91.3477 33.9223Z M180.422 32.8758L169.886 48.1067H180.051H181.574H201.754V3.34662L180.422 32.9172V32.8758Z M139.49 160.069H165.81L200.512 111.962H139.49V160.069Z M95.8845 148.278L95.8946 111.931H69.675L95.8845 148.278Z M135.054 202.612L160.151 167.912L110.036 167.902L135.054 202.612Z M62.1738 55.9604H42.5742V75.6776H62.1738V55.9604Z M62.1738 83.5313H42.5742V104.057H62.1738V83.5313Z M182.185 104.088L201.714 104.067V55.9604L182.185 55.9915V104.088Z M62.1837 0.010376H27.3312V48.117H62.1837V0.010376Z M62.0736 167.912H42.5141V187.629H62.0736V167.912Z M62.0736 195.494H42.5141V216.019H62.0736V195.494Z M271.95 223.883H252.28V271.99H271.95V223.883Z M272 167.933H237.067V216.04H272V167.933Z M237.067 111.952H209.756V160.059H237.067V111.952Z M272 111.952H244.679V160.059H272V111.952Z M272 55.9707H237.067V104.077H272V55.9707Z M244.629 0H209.866V48.1067H244.629V0Z M271.99 0H252.28V48.1067H271.99V0Z M229.426 196.322H209.826V216.04H229.426V196.322Z M229.426 167.933H209.826V188.458H229.426V167.933Z M244.679 223.883H209.826V271.99H244.679V223.883Z M229.486 84.3602H209.926V104.077H229.486V84.3602Z M229.486 55.9707H209.926V76.4961H229.486V55.9707Z"};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var n=Object.defineProperty;var e=(t,r)=>n(t,"name",{value:r,configurable:!0});var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.resolveTheme=exports.DEFAULT_THEME_PRESET=exports.DEFAULT_THEME_MODE=exports.THEME_MODES=exports.THEME_PRESETS=exports.M0SAIC_BRAND=exports.default=exports.Theming=void 0;var theming_1=require("./theming");Object.defineProperty(exports,"Theming",{enumerable:!0,get:e(function(){return theming_1.Theming},"get")}),Object.defineProperty(exports,"default",{enumerable:!0,get:e(function(){return __importDefault(theming_1).default},"get")});var theme_tokens_1=require("./theme-tokens");Object.defineProperty(exports,"M0SAIC_BRAND",{enumerable:!0,get:e(function(){return theme_tokens_1.M0SAIC_BRAND},"get")}),Object.defineProperty(exports,"THEME_PRESETS",{enumerable:!0,get:e(function(){return theme_tokens_1.THEME_PRESETS},"get")}),Object.defineProperty(exports,"THEME_MODES",{enumerable:!0,get:e(function(){return theme_tokens_1.THEME_MODES},"get")}),Object.defineProperty(exports,"DEFAULT_THEME_MODE",{enumerable:!0,get:e(function(){return theme_tokens_1.DEFAULT_THEME_MODE},"get")}),Object.defineProperty(exports,"DEFAULT_THEME_PRESET",{enumerable:!0,get:e(function(){return theme_tokens_1.DEFAULT_THEME_PRESET},"get")}),Object.defineProperty(exports,"resolveTheme",{enumerable:!0,get:e(function(){return theme_tokens_1.resolveTheme},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var a=Object.defineProperty;var r=(t,e)=>a(t,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.DEFAULT_THEME_PRESET=exports.DEFAULT_THEME_MODE=exports.THEME_MODES=exports.THEME_PRESETS=exports.M0SAIC_BRAND=void 0,exports.resolveTheme=resolveTheme,exports.M0SAIC_BRAND={orange:"#EF7525",orangeSoft:"#F99666",orangePale:"#FFC6A9",orangeGlow:"#EF752540",navy:"#050314",navyDeep:"#03020C",surface:"#12111F",surfaceRaised:"#1E1D2D",surfaceHover:"#2A293D",surfaceInset:"#161525",navySoft:"#3A394F",navyMuted:"#6D6D84",textHi:"#F5F5F7",textMid:"#A0A0B0",green:"#4ADE80",red:"#F87171",dataRamp:["#EF7525","#3FB6C9","#F5C451","#E0607F","#8B7FE8","#5AD1A0"]},exports.THEME_PRESETS={dark:{surfaceApp:exports.M0SAIC_BRAND.navy,surface:exports.M0SAIC_BRAND.surface,surfaceRaised:exports.M0SAIC_BRAND.surfaceRaised,surfaceInset:exports.M0SAIC_BRAND.surfaceInset,border:exports.M0SAIC_BRAND.surfaceHover,borderStrong:exports.M0SAIC_BRAND.navySoft,textPrimary:exports.M0SAIC_BRAND.textHi,textSecondary:exports.M0SAIC_BRAND.textMid,textMuted:exports.M0SAIC_BRAND.navyMuted,eyebrow:exports.M0SAIC_BRAND.orange,accent:exports.M0SAIC_BRAND.orange,accentSoft:exports.M0SAIC_BRAND.orangeSoft,accentGlow:exports.M0SAIC_BRAND.orangeGlow,positive:exports.M0SAIC_BRAND.green,negative:exports.M0SAIC_BRAND.red,grid:exports.M0SAIC_BRAND.surfaceRaised,gridAlpha:1,axis:exports.M0SAIC_BRAND.navySoft,axisAlpha:1,radius:.06,dataPalette:exports.M0SAIC_BRAND.dataRamp},light:{surfaceApp:"#F7F6FB",surface:"#FFFFFF",surfaceRaised:"#FBFAFE",surfaceInset:"#F1F0F7",border:"#E4E2ED",borderStrong:"#CFCCDD",textPrimary:"#12111F",textSecondary:"#56546A",textMuted:"#8A88A0",eyebrow:"#D65E14",accent:"#EF7525",accentSoft:"#F99666",accentGlow:"#EF752520",positive:"#16A34A",negative:"#DC2626",grid:"#EDEBF3",gridAlpha:1,axis:"#D8D5E4",axisAlpha:1,radius:.06,dataPalette:["#E4670F","#0E9AAE","#D9A521","#C8395C","#6D5FD1","#12A574"]},"high-contrast":{surfaceApp:"#000000",surface:"#0A0A12",surfaceRaised:"#12121C",surfaceInset:"#08080F",border:"#FFFFFF",borderStrong:"#FFFFFF",textPrimary:"#FFFFFF",textSecondary:"#E6E6EE",textMuted:"#C8C8D4",eyebrow:"#FF8A3D",accent:"#FF8A3D",accentSoft:"#FFB07A",accentGlow:"#FF8A3D40",positive:"#37E88B",negative:"#FF6B6B",grid:"#FFFFFF",gridAlpha:.35,axis:"#FFFFFF",axisAlpha:.6,radius:.03,dataPalette:["#FF8A3D","#33D6E8","#FFD740","#FF6B8A","#B39DFF","#5AF2B0"]}},exports.THEME_MODES=["dark","light","high-contrast"],exports.DEFAULT_THEME_MODE="dark",exports.DEFAULT_THEME_PRESET=exports.DEFAULT_THEME_MODE;function resolveTheme(t=exports.DEFAULT_THEME_MODE){var e;return(e=exports.THEME_PRESETS[t])!==null&&e!==void 0?e:exports.THEME_PRESETS[exports.DEFAULT_THEME_MODE]}r(resolveTheme,"resolveTheme");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var m=(e,s)=>u(e,"name",{value:s,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.Theming=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),theme_tokens_1=require("./theme-tokens"),token_sheet_1=require("./token-sheet"),propsSchema=(0,template_utils_1.definePropsSchema)({preset:{type:"string",required:!1,description:"Design-token preset to publish (dark | light | high-contrast).",meta:{constraints:{oneOf:["dark","light","high-contrast"]},ui:{label:"Preset",order:1}}},alias:{type:"string",required:!1,description:'Upstream alias the token block appears under in ctx.upstreamData. Default "theme".',meta:{ui:{label:"Alias",order:2,consumer:"agent"}}},preview:{type:"boolean",required:!1,description:"Render the swatch preview (true, standalone) vs. emit a data-only token block (false, for an intermediate pipeline step \u2014 zero render cost).",meta:{ui:{label:"Preview swatches",order:3}}}});exports.Theming=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/theming/v1"),label:"Theming \u2014 Token Producer",version:1,description:"Design-token producer: publishes one ThemeTokens set (dark | light | high-contrast) onto ctx.upstreamVariables for downstream templates to read. Rendered standalone (preview:true) it draws an aspect-adaptive Theme-Tokens sheet \u2014 mosaic-M header, the labelled data palette, and the semantic swatches; as an intermediate pipeline step (preview:false) it emits pure data at zero cost and re-skins a chain by swapping one prop.",capabilities:{tier:"core"},tags:["utility","theming","tokens","producer","design-system","designers","developers","palette"],outputHints:{width:1920,height:1080,note:"A single-frame Theme-Tokens sheet (image); the real payload is the published token block on ctx.upstreamVariables.",format:{kind:"image",frameCount:1}},propsSchema,defaultProps:{preset:theme_tokens_1.DEFAULT_THEME_MODE,alias:"theme",preview:!0},render:m(async(e,s)=>{var r,i,a;const o=(r=e.preset)!==null&&r!==void 0?r:theme_tokens_1.DEFAULT_THEME_MODE,n=(i=e.alias)!==null&&i!==void 0?i:"theme",c=(a=e.preview)!==null&&a!==void 0?a:!0;if(!(0,types_1.isAliasId)(n))throw new Error(`@m0saic/theming: alias ${JSON.stringify(n)} is not a valid AliasId (letter/_ start, alphanumeric, max 64 chars).`);const t=(0,theme_tokens_1.resolveTheme)(o),l=(0,template_utils_1.publishTheme)(t,{alias:n});if(!c)return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("1","theme"),assets:{},sources:[l],sidecars:{theme:{...t}}};const p=s.target.width,h=s.target.height,d=(0,token_sheet_1.buildTokenSheet)(t,p,h,o);return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(d.m0,"themeTokenSheet"),backgroundColor:t.surfaceApp,assets:{},sources:[...d.sources,l],format:{kind:"image",frameCount:1},sidecars:{theme:{...t}}}},"render")}),(0,template_utils_1.registerTemplate)(exports.Theming),exports.default=exports.Theming;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var y=Object.defineProperty;var d=(t,n)=>y(t,"name",{value:n,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildTokenSheet=buildTokenSheet;const dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),brand_m_glyph_1=require("./brand-m-glyph"),EMPTY={m0:"-",sources:[]},paint=d(t=>({m0:"F",sources:[t]}),"paint"),tile=d(t=>paint((0,template_utils_1.makeColorTile)(t)),"tile"),SPLIT_CAP=240;function split(t,n){const e=n.filter(r=>r.weight>0);if(e.length===0)return EMPTY;if(e.length===1)return e[0].node;const o=e.map(r=>Math.max(1,Math.round(r.weight)));return{m0:String((0,dsl_stdlib_1.weightedSplit)((0,template_utils_1.latticeWeights)(o,{cap:SPLIT_CAP}),t,{claimants:e.map(r=>r.node.m0)})),sources:e.flatMap(r=>r.node.sources)}}d(split,"split");const rowSplit=d(t=>split("row",t),"rowSplit"),colSplit=d(t=>split("col",t),"colSplit");function overlay(t){const n=t.filter(o=>o.sources.length>0||o.m0!=="-");if(n.length===0)return EMPTY;if(n.length===1)return n[0];let e=n[n.length-1].m0;for(let o=n.length-2;o>=0;o--)e=`${n[o].m0}{${e}}`;return{m0:e,sources:n.flatMap(o=>o.sources)}}d(overlay,"overlay");function textSrc(t,n,e,o="left",a="middle"){return{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:t||" "},style:{fontSize:n,fontColor:e},placement:{fit:"contain",hAlign:o,vAlign:a}}]}}d(textSrc,"textSrc");const text=d((t,n,e,o="left",a="middle")=>paint(textSrc(t,n,e,o,a)),"text");function block(t,n,e){return e?paint((0,template_utils_1.makeColorTile)(t,{effects:{stroke:{width:.012,color:n.textMuted}}})):tile(t)}d(block,"block");function labelPair(t,n,e,o,a,r,h){return rowSplit([{weight:4,node:text(t,o,e.textPrimary,r,"bottom")},{weight:2,node:EMPTY},{weight:3,node:text(String(n).toUpperCase(),a,e.textSecondary,r,"top")}])}d(labelPair,"labelPair");function collect(t){const n=t.dataPalette.slice(0,6).map((o,a)=>({name:`Data 0${a+1}`,hex:o,bordered:!1})),e=[{name:"Accent",hex:t.accent,bordered:!1},{name:"Positive",hex:t.positive,bordered:!1},{name:"Negative",hex:t.negative,bordered:!1},{name:"Surface App",hex:t.surfaceApp,bordered:!0},{name:"Surface",hex:t.surface,bordered:!0},{name:"Surface Raised",hex:t.surfaceRaised,bordered:!0},{name:"Surface Inset",hex:t.surfaceInset,bordered:!0}];return{data:n,sem:e}}d(collect,"collect");function headerOverlay(t,n,e,o,a,r,h,M){const m=Math.round(r*.4),g=Math.round(h*3.4),f=r+m+g,w=M==="center"?Math.max(o,Math.round((n-f)/2)):o,s=(0,template_utils_1.makeColorTile)(t.accent,{mask:{kind:"inline-mask",localPath:brand_m_glyph_1.BRAND_M_GLYPH.path,bounds:brand_m_glyph_1.BRAND_M_GLYPH.bounds}}),u={m0:String((0,dsl_stdlib_1.placeRect)({rootW:n,rootH:e,rectW:r,rectH:r,x:w,y:a}).m0),sources:[s]},l={m0:String((0,dsl_stdlib_1.placeRect)({rootW:n,rootH:e,rectW:g,rectH:r,x:w+r+m,y:a}).m0),sources:[textSrc("m0saic",h,t.textPrimary,"left","middle")]};return overlay([u,l])}d(headerOverlay,"headerOverlay");function presetLabel(t){return t==="high-contrast"?"High Contrast":t==="light"?"Light":"Dark"}d(presetLabel,"presetLabel");function wide(t,n,e,o){const a=Math.round(n*.045),r=Math.round(e*.055),h=Math.round(Math.min(n,e)*.09),M=Math.max(11,Math.round(e*.019)),m=Math.max(10,Math.round(e*.015)),g=Math.round(n*.012),{data:f,sem:w}=collect(t),s=d((i,c)=>rowSplit([{weight:3,node:labelPair(i.name,i.hex,t,M,m,"left","top")},{weight:1,node:EMPTY},{weight:c,node:block(i.hex,t,i.bordered)}]),"swatchCol"),u=d(i=>{const c=[];return i.forEach((b,k)=>{k>0&&c.push({weight:g,node:EMPTY}),c.push({weight:100,node:b})}),colSplit(c)},"rowOf"),l=Math.round(e*.028),p=rowSplit([{weight:h,node:EMPTY},{weight:Math.round(e*.03),node:EMPTY},{weight:Math.round(e*.028),node:text(presetLabel(o).toUpperCase(),Math.round(e*.022),t.eyebrow,"left","bottom")},{weight:Math.round(e*.11),node:text("Theme Tokens",Math.round(e*.075),t.textPrimary,"left","middle")},{weight:Math.round(e*.045),node:EMPTY},{weight:Math.round(e*.035),node:text("Data \xB7 categorical",l,t.textPrimary,"left","middle")},{weight:Math.round(e*.28),node:u(f.map(i=>s(i,5)))},{weight:Math.round(e*.05),node:EMPTY},{weight:Math.round(e*.035),node:text("Semantic",l,t.textPrimary,"left","middle")},{weight:Math.round(e*.2),node:u(w.map(i=>s(i,3)))}]),x=rowSplit([{weight:r,node:EMPTY},{weight:e-2*r,node:colSplit([{weight:a,node:EMPTY},{weight:n-2*a,node:p},{weight:a,node:EMPTY}])},{weight:r,node:EMPTY}]);return overlay([x,headerOverlay(t,n,e,a,r,h,Math.round(e*.03),"left")])}d(wide,"wide");function tall(t,n,e,o){const a=Math.round(n*.06),r=Math.round(e*.04),h=Math.round(Math.min(n,e)*.11),M=Math.max(12,Math.round(n*.032)),m=Math.max(10,Math.round(n*.026)),g=Math.round(e*.008),{data:f,sem:w}=collect(t),s=d(i=>colSplit([{weight:3,node:block(i.hex,t,i.bordered)},{weight:1,node:EMPTY},{weight:7,node:labelPair(i.name,i.hex,t,M,m,"left","middle")}]),"swatchRow"),u=d(i=>{const c=[];return i.forEach((b,k)=>{k>0&&c.push({weight:g,node:EMPTY}),c.push({weight:100,node:b})}),rowSplit(c)},"listOf"),l=Math.round(n*.04),p=rowSplit([{weight:h,node:EMPTY},{weight:Math.round(e*.018),node:EMPTY},{weight:Math.round(e*.024),node:text(presetLabel(o).toUpperCase(),Math.round(n*.03),t.eyebrow,"center","bottom")},{weight:Math.round(e*.07),node:text("Theme Tokens",Math.round(n*.09),t.textPrimary,"center","middle")},{weight:Math.round(e*.03),node:EMPTY},{weight:Math.round(e*.03),node:text("Data \xB7 categorical",l,t.textPrimary,"left","middle")},{weight:Math.round(e*.32),node:u(f.map(s))},{weight:Math.round(e*.03),node:EMPTY},{weight:Math.round(e*.03),node:text("Semantic",l,t.textPrimary,"left","middle")},{weight:Math.round(e*.37),node:u(w.map(s))}]),x=rowSplit([{weight:r,node:EMPTY},{weight:e-2*r,node:colSplit([{weight:a,node:EMPTY},{weight:n-2*a,node:p},{weight:a,node:EMPTY}])},{weight:r,node:EMPTY}]);return overlay([x,headerOverlay(t,n,e,a,r,h,Math.round(n*.05),"center")])}d(tall,"tall");function buildTokenSheet(t,n,e,o){return e>n*1.1?tall(t,n,e,o):wide(t,n,e,o)}d(buildTokenSheet,"buildTokenSheet");
|