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 h=Object.defineProperty;var i=(e,o)=>h(e,"name",{value:o,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.renderBlurRegionsTutorial=renderBlurRegionsTutorial;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),screencap_grid_cover_1=require("../../screencap_grid/v2/screencap-grid-cover"),TUTORIAL_FPS=30,SR="/Users/qusimone/src/m0saic/packages/sandbox/production/media-blur-regions-v1/fixtures/screen_recordings",TUTORIAL_CLIPS={draw:{path:`${SR}/invoice_sr.mp4`,durationMs:10483},brush:{path:`${SR}/signed-letter_sr.mp4`,durationMs:7967},inbox:{path:`${SR}/inbox_sr.mp4`,durationMs:17533},chat:{path:`${SR}/chat_sr.mp4`,durationMs:13133}},P={bg:"#0a0c12",surface:"#141926",raised:"#1d2433",inset:"#10141f",border:"#2a3347",accent:"#f97316",accentSoft:"#fdba74",textHi:"#f5f7fa",textLo:"#9aa5b5",textMute:"#5f6b7d",frost:"#c8ccd2@0.55",target:"#e5484d"};function cardTile(e,o={}){var n;return(0,screencap_grid_cover_1.onboardingLeaf)((0,template_utils_1.makeColorTile)(e,{effects:{rounding:{cornerStyle:"rounded",borderRadius:(n=o.radius)!==null&&n!==void 0?n:.08},...o.stroke?{stroke:{position:"inner",width:.004,color:o.stroke,alpha:.9}}:{}},...o.atSec!=null?{overlay:{alpha:(0,template_utils_1.fadeInExpr)(o.atSec,.3)}}:{}}))}i(cardTile,"cardTile");function padded(e,o=5){const n=(0,screencap_grid_cover_1.onboardingSplit)("col",[o,100-2*o,o],[null,e,null]);return(0,screencap_grid_cover_1.onboardingSplit)("row",[o,100-2*o,o],[null,n,null])}i(padded,"padded");function windowCard(e,o={}){const n=i(l=>(0,screencap_grid_cover_1.onboardingSplit)("row",[1,2,1],[null,cardTile(l,{radius:.5}),null]),"dot"),r=(0,screencap_grid_cover_1.onboardingSplit)("col",[10,9,5,9,5,9,440],[null,n(P.textMute),null,n(P.textMute),null,n(P.accent),null]),t=o.chrome===!1?e:(0,screencap_grid_cover_1.onboardingSplit)("row",[8,1,89],[r,null,e]);return(0,screencap_grid_cover_1.onboardingOverlay)(cardTile(P.surface,{radius:.05,stroke:P.border}),padded(t,o.chrome===!1?2:3))}i(windowCard,"windowCard");function pill(e,o,n={}){const r=cardTile(n.active?P.accent:P.raised,{radius:.5,atSec:n.atSec}),t=(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:e,fontSize:o.micro,color:n.active?P.bg:P.textLo,...n.atSec!=null?{fadeDelaySec:n.atSec}:{},label:`chip ${e.toLowerCase()}`}));return(0,screencap_grid_cover_1.onboardingOverlay)(r,t)}i(pill,"pill");function fadeTile(e,o,n=.25){return(0,screencap_grid_cover_1.onboardingLeaf)((0,template_utils_1.makeColorTile)(e,{overlay:{alpha:(0,template_utils_1.fadeInExpr)(o,n)}}))}i(fadeTile,"fadeTile");function dashedEdge(e,o){const n=[],r=[];for(let t=0;t<9;t++)n.push(t%2===0?fadeTile(P.accent,o,.15):null),r.push(1);return(0,screencap_grid_cover_1.onboardingSplit)(e,r,n)}i(dashedEdge,"dashedEdge");function footageMock(e){return(0,screencap_grid_cover_1.onboardingSplit)("col",[7,6,7],[(0,screencap_grid_cover_1.onboardingGuttered)("row",[cardTile("#243049",{radius:.12}),cardTile("#1a2336",{radius:.12})],12,1),(0,screencap_grid_cover_1.onboardingSplit)("row",[4,6,6],[cardTile("#1a2336",{radius:.12}),e?cardTile(P.target,{radius:.12}):cardTile("#2c3a57",{radius:.12}),cardTile("#22304b",{radius:.12})]),(0,screencap_grid_cover_1.onboardingGuttered)("row",[cardTile("#202b42",{radius:.12}),cardTile("#243049",{radius:.12})],12,1)])}i(footageMock,"footageMock");function buildHeroVisual(e){const o=windowCard(padded(footageMock(!0),4)),n=(0,screencap_grid_cover_1.onboardingSplit)("row",[8,6,7],[null,(0,screencap_grid_cover_1.onboardingSplit)("col",[5,7,9],[null,fadeTile(P.frost,.9,.45),null]),null]),r=windowCard(padded((0,screencap_grid_cover_1.onboardingOverlay)(footageMock(!0),n),4)),t=i(l=>(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:l,fontSize:e.micro,color:P.textMute,label:l.toLowerCase()})),"caption");return(0,screencap_grid_cover_1.onboardingSplit)("row",[2,12,1,2,4],[null,(0,screencap_grid_cover_1.onboardingGuttered)("col",[o,r],12,1),null,(0,screencap_grid_cover_1.onboardingGuttered)("col",[t("YOUR FILE"),t("SAME FILE \xB7 CENSORED")],12,1),null])}i(buildHeroVisual,"buildHeroVisual");function buildFlowVisual(e){const o=i((r,t,l,a)=>{const d=(0,screencap_grid_cover_1.onboardingOverlay)(cardTile(P.accent,{radius:.5,atSec:a}),(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:r,fontSize:e.callout,color:P.bg,fadeDelaySec:a,label:`step ${r}`}))),s=(0,screencap_grid_cover_1.onboardingSplit)("row",[2,4,2,3,3,4],[null,(0,screencap_grid_cover_1.onboardingSplit)("col",[10,10,10],[null,d,null]),null,(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:t,fontSize:e.callout,color:P.textHi,fadeDelaySec:a,label:t.toLowerCase()})),(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:l,fontSize:e.micro,color:P.textLo,fadeDelaySec:a+.05,label:l.toLowerCase()})),null]);return(0,screencap_grid_cover_1.onboardingOverlay)(cardTile(P.surface,{radius:.1,stroke:P.border,atSec:a}),padded(s,6))},"step"),n=(0,screencap_grid_cover_1.onboardingGuttered)("col",[o("1","Pick","video or image",.2),o("2","Draw","boxes over anything",.7),o("3","Render","same file, censored",1.2)],12,1);return(0,screencap_grid_cover_1.onboardingSplit)("row",[3,10,4],[null,n,null])}i(buildFlowVisual,"buildFlowVisual");function buildDrawVisual(e){const o=(0,screencap_grid_cover_1.onboardingSplit)("row",[1,8,1],[dashedEdge("col",.6),(0,screencap_grid_cover_1.onboardingSplit)("col",[1,8,1],[dashedEdge("row",1.5),fadeTile(P.frost,2,.5),dashedEdge("row",.9)]),dashedEdge("col",1.2)]),n=(0,screencap_grid_cover_1.onboardingSplit)("row",[21,46,33],[null,(0,screencap_grid_cover_1.onboardingSplit)("col",[31,38,31],[null,o,null]),null]),r=(0,screencap_grid_cover_1.onboardingOverlay)(footageMock(!0),n),t=(0,screencap_grid_cover_1.onboardingSplit)("col",[12,4,1],[(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:"drag on the preview",fontSize:e.micro,color:P.textMute,hAlign:"left",label:"drag hint"})),(0,screencap_grid_cover_1.onboardingSplit)("row",[1,3,1],[null,pill("Blur regions",e,{active:!0}),null]),null]);return windowCard((0,screencap_grid_cover_1.onboardingSplit)("row",[16,1,2],[padded(r,3),null,t]))}i(buildDrawVisual,"buildDrawVisual");function buildBrushVisual(e){const o=(0,screencap_grid_cover_1.onboardingGuttered)("col",[pill("Rect",e),pill("Ellipse",e),pill("Polygon",e),pill("Lasso",e),pill("Brush",e,{active:!0})],10,1),n=18,r=i((l,a)=>{const d=[],s=[];for(let u=0;u<n;u++)d.push(u>=l&&u<=a?fadeTile(P.frost,.6+u*.12,.18):null),s.push(1);return(0,screencap_grid_cover_1.onboardingSplit)("col",s,d)},"strokeRow"),t=(0,screencap_grid_cover_1.onboardingOverlay)(footageMock(!1),(0,screencap_grid_cover_1.onboardingSplit)("row",[4,2,2,2,2,2,5],[null,r(2,5),r(3,8),r(6,12),r(10,15),r(13,16),null]));return windowCard((0,screencap_grid_cover_1.onboardingSplit)("row",[3,1,15],[o,null,padded(t,2)]))}i(buildBrushVisual,"buildBrushVisual");function buildUseCasesVisual(e){const o=i((t,l,a)=>{const d=(0,screencap_grid_cover_1.onboardingSplit)("row",[4,3],[(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:t,fontSize:e.callout,color:P.textHi,fadeDelaySec:a,label:t.toLowerCase()})),(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:l,fontSize:e.micro,color:P.textLo,fadeDelaySec:a+.05,label:l.toLowerCase()}))]);return(0,screencap_grid_cover_1.onboardingOverlay)(cardTile(P.surface,{radius:.1,stroke:P.border,atSec:a}),padded(d,8))},"useCase"),n=(0,screencap_grid_cover_1.onboardingGuttered)("col",[o("Interview faces","blur bystanders before publishing",.2),o("Dashcam plates","pixelate every plate in one pass",.5)],12,1),r=(0,screencap_grid_cover_1.onboardingGuttered)("col",[o("Screen recordings","hide emails, names, tokens",.8),o("Documents & photos","PNG in, censored PNG out",1.1)],12,1);return(0,screencap_grid_cover_1.onboardingGuttered)("row",[n,r],12,1)}i(buildUseCasesVisual,"buildUseCasesVisual");function buildFinishVisual(e){const o=i((r,t)=>(0,screencap_grid_cover_1.onboardingSplit)("col",[2,1,17],[cardTile(P.accent,{radius:.5,atSec:t}),null,(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:r,fontSize:e.body,color:P.textLo,hAlign:"left",fadeDelaySec:t,label:r.slice(0,24).toLowerCase()}))]),"row"),n=(0,screencap_grid_cover_1.onboardingGuttered)("row",[o("Audio passes through untouched",.2),o("A bad region fails loudly \u2014 never silently dropped",.55),o("mp4 \xB7 webm \xB7 png \u2014 the container follows your output",.9),o("Up to 50 regions per file",1.25)],10,2);return(0,screencap_grid_cover_1.onboardingOverlay)(cardTile(P.surface,{radius:.08,stroke:P.border}),padded(n,7))}i(buildFinishVisual,"buildFinishVisual");const BEATS=[{name:"hero",durationMs:3800,eyebrow:"EASY BLUR",title:"Hide anything. Keep everything else.",body:"Draw a box over what must go \u2014 a face, a plate, a name \u2014 and render the same file back with that area unreadable.",detail:"Same container \xB7 same audio \xB7 censored pixels",buildVisual:buildHeroVisual},{name:"flow",durationMs:3600,eyebrow:"THE WHOLE JOB",title:"Three steps, no timeline.",body:"Pick a video or image. Draw regions on the preview. Render. That's the entire workflow \u2014 no editing skills required.",detail:"No regions yet? The file passes through untouched.",buildVisual:buildFlowVisual},{name:"draw",durationMs:5200,eyebrow:"WATCH \xB7 BLOCK OUT",title:"One drag covers the block.",body:"Open Blur regions and drag on the preview \u2014 here it's an invoice's name, address, and account number in a single box.",detail:"The box you draw is exactly what renders censored",buildVisual:buildDrawVisual},{name:"brush",durationMs:4600,eyebrow:"WATCH \xB7 KEEP IT SIMPLE",title:"The fastest shape wins.",body:"A signature isn't a rectangle \u2014 but one quick box covers it anyway. When you want precision, ellipse, polygon, lasso, and brush are right there.",detail:"Rect \xB7 ellipse \xB7 polygon \xB7 lasso \xB7 brush \u2014 mix freely",buildVisual:buildBrushVisual},{name:"inbox",durationMs:4200,eyebrow:"REAL WORLD \xB7 SCREENS",title:"Every address in one pass.",body:"Quick strips over each sender's email and the screenshot is safe to share \u2014 the list stays readable.",detail:"Works the same on any screen capture",buildVisual:buildUseCasesVisual},{name:"chat",durationMs:4200,eyebrow:"REAL WORLD \xB7 MESSAGES",title:"The code and the number.",body:"Anything you'd rather not forward: door codes, phone numbers, names. Draw, render, share the rest.",detail:"Blur reads softer \xB7 pixelate reads redacted",buildVisual:buildUseCasesVisual},{name:"usecases",durationMs:3400,eyebrow:"AND MORE",title:"Wherever pixels leak.",body:"Faces in interviews, plates in dashcam footage, whole documents. If it renders, it can be hidden.",detail:"Video or image \xB7 up to 50 regions",buildVisual:buildUseCasesVisual},{name:"finish",durationMs:3600,eyebrow:"GOOD TO KNOW",title:"Built for shipping.",body:"Close this and draw your first region \u2014 the preview is already your canvas.",detail:"Privacy is all-or-nothing by design",buildVisual:buildFinishVisual}];function beatProgress(e,o){const n=(0,screencap_grid_cover_1.onboardingGuttered)("col",BEATS.map((t,l)=>cardTile(l===e?P.accent:l<e?"#7c4a12":P.border,{radius:.5,...l===e?{atSec:.04}:{}})),3,2),r=(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:`${e+1} / ${BEATS.length}`,fontSize:o.micro,color:P.textMute,hAlign:"left",label:"tutorial progress"}));return(0,screencap_grid_cover_1.onboardingSplit)("col",[30,12,16,30,12],[null,r,null,n,null])}i(beatProgress,"beatProgress");function beatVisual(e,o){const n=TUTORIAL_CLIPS[e.name];if(!n)return{comp:e.buildVisual(o),assets:{}};const r=(0,types_1.asAssetId)(`tut-clip-${e.name}`),t={type:"media",mediaType:"video",assetId:r,placement:{fit:"contain"},playback:{clipStartMs:0,clipDurationMs:n.durationMs},editor:{owner:"template",label:`recording ${e.name}`}};return{comp:windowCard((0,screencap_grid_cover_1.onboardingLeaf)(t),{chrome:!1}),assets:{[r]:{kind:"file",path:n.path,mediaType:"video"}},clipMs:n.durationMs}}i(beatVisual,"beatVisual");function buildHeroClipBeat(e,o,n,r,t,l){const a=(0,screencap_grid_cover_1.onboardingTypeRamp)(n,r),d=r>n*.9,s=d?n*.8:n*.56,u=(0,screencap_grid_cover_1.onboardingSplit)("row",[2,4,1,10,1,9,2],[null,(0,screencap_grid_cover_1.onboardingTextBlock)({text:e.eyebrow,fontSize:a.label,color:P.accent,cellWidthPx:s,hAlign:"left",fadeDelaySec:.1,label:"beat eyebrow"}),null,(0,screencap_grid_cover_1.onboardingTextBlock)({text:e.title,fontSize:a.headline,color:P.textHi,cellWidthPx:s,hAlign:"left",widthFrac:.96,fadeDelaySec:.16,label:"beat title"}),null,(0,screencap_grid_cover_1.onboardingTextBlock)({text:e.body,fontSize:a.body,color:P.textLo,cellWidthPx:s,hAlign:"left",widthFrac:.95,fadeDelaySec:.22,label:"beat body"}),null]),c=(0,screencap_grid_cover_1.onboardingOverlay)(cardTile(P.surface,{radius:.08,stroke:P.border,atSec:.06}),padded(u,4)),b=(0,screencap_grid_cover_1.onboardingGuttered)("col",BEATS.map((S,p)=>cardTile(p===o?P.accent:p<o?"#7c4a12":P.border,{radius:.5})),3,2),g=(0,screencap_grid_cover_1.onboardingSplit)("row",[44,12,44],[null,b,null]),f=d?(0,screencap_grid_cover_1.onboardingSplit)("row",[4,36,3,22,3,4,28],[null,(0,screencap_grid_cover_1.onboardingSplit)("col",[4,92,4],[null,t,null]),null,(0,screencap_grid_cover_1.onboardingSplit)("col",[4,92,4],[null,c,null]),null,(0,screencap_grid_cover_1.onboardingSplit)("col",[30,40,30],[null,b,null]),null]):(0,screencap_grid_cover_1.onboardingSplit)("row",[2,69,2,23,4],[null,(0,screencap_grid_cover_1.onboardingSplit)("col",[19,62,19],[null,t,null]),null,(0,screencap_grid_cover_1.onboardingSplit)("col",[19,62,2,12,5],[null,c,null,g,null]),null]);return{kind:"mosaic_document",version:1,assets:l,size:{width:n,height:r},backgroundColor:P.bg,m0:f.m0,sources:f.sources}}i(buildHeroClipBeat,"buildHeroClipBeat");function buildBeat(e,o,n,r){const t=(0,screencap_grid_cover_1.onboardingTypeRamp)(n,r),l=r>n*.9,a=l?n*.84:n*.4,{comp:d,assets:s,clipMs:u}=beatVisual(e,t);if(u!=null)return{doc:buildHeroClipBeat(e,o,n,r,d,s),durationMs:u};const c=(0,screencap_grid_cover_1.onboardingSplit)("row",[3,4,15,20,3,6,5],[null,(0,screencap_grid_cover_1.onboardingTextBlock)({text:e.eyebrow,fontSize:t.label,color:P.accent,cellWidthPx:a,hAlign:"left",fadeDelaySec:.04,label:"beat eyebrow"}),(0,screencap_grid_cover_1.onboardingTextBlock)({text:e.title,fontSize:t.headline,color:P.textHi,cellWidthPx:a,hAlign:"left",widthFrac:.9,fadeDelaySec:.08,label:"beat title"}),(0,screencap_grid_cover_1.onboardingTextBlock)({text:e.body,fontSize:t.body,color:P.textLo,cellWidthPx:a,hAlign:"left",widthFrac:.91,fadeDelaySec:.12,label:"beat body"}),null,(0,screencap_grid_cover_1.onboardingTextBlock)({text:e.detail,fontSize:t.micro,color:P.accentSoft,cellWidthPx:a,hAlign:"left",fadeDelaySec:.16,label:"beat detail"}),null]),b=beatProgress(o,t),g=l?(0,screencap_grid_cover_1.onboardingSplit)("row",[5,33,3,47,3,4,5],[null,(0,screencap_grid_cover_1.onboardingSplit)("col",[7,86,7],[null,c,null]),null,(0,screencap_grid_cover_1.onboardingSplit)("col",[6,88,6],[null,d,null]),null,b,null]):(0,screencap_grid_cover_1.onboardingSplit)("row",[7,83,2,5,3],[null,(0,screencap_grid_cover_1.onboardingSplit)("col",[5,34,4,51,6],[null,c,null,d,null]),null,b,null]);return{doc:{kind:"mosaic_document",version:1,assets:s,size:{width:n,height:r},backgroundColor:P.bg,m0:g.m0,sources:g.sources},durationMs:u??e.durationMs}}i(buildBeat,"buildBeat");function renderBlurRegionsTutorial(e){var o;const n=e.target.width,r=e.target.height,t=BEATS.map((l,a)=>{const{doc:d,durationMs:s}=buildBeat(l,a,n,r);return{name:l.name,durationMs:s,file:d}});return{kind:"mosaic_pipeline",version:1,fps:(o=e.target.fps)!==null&&o!==void 0?o:TUTORIAL_FPS,durationMs:t.reduce((l,a)=>l+a.durationMs,0),defaultTransition:{type:"cut"},backgroundColor:P.bg,steps:t}}i(renderBlurRegionsTutorial,"renderBlurRegionsTutorial");
|
|
@@ -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 m=Object.defineProperty;var n=(e,r)=>m(e,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.Highlights=exports.MAX_RANGES=void 0,exports.resolveHighlightsKnobs=resolveHighlightsKnobs;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),pipeline_1=require("./pipeline"),onboarding_cover_1=require("../../../_shared/onboarding-cover");exports.MAX_RANGES=100;const propsSchema=(0,template_utils_1.definePropsSchema)({sourceId:{type:"media",required:!0,description:"The video to pull highlight clips from.",meta:{ui:{label:"Source",order:1},control:{picker:"file",accept:["video"]}}},ranges:{type:"json",required:!0,description:"Highlight ranges within the source video, milliseconds. Each { startMs, endMs, label? } entry becomes its own output clip; label (optional) feeds the output filename.",meta:{constraints:{jsonSchema:{type:"array",minItems:1,maxItems:exports.MAX_RANGES,items:{type:"object",required:["startMs","endMs"],properties:{startMs:{type:"integer",minimum:0},endMs:{type:"integer",minimum:1},label:{type:"string"}}}}},control:{picker:"time-ranges",videoFromProp:"sourceId"},ui:{label:"Highlight ranges",order:2}}},outputFormat:{type:"string",required:!1,description:'Container for every emitted clip: "mp4" (default) or "webm".',meta:{constraints:{oneOf:["mp4","webm"]},ui:{label:"Format",order:3}}},maxWidth:{type:"number",required:!1,description:"Optional output width cap in pixels \u2014 clips wider than this downscale (aspect-preserved, even-rounded). Never upscales.",meta:{control:{placeholder:"source width"},constraints:{min:128,max:3840},ui:{label:"Max width (px)",order:4}}},muteAudio:{type:"boolean",required:!1,description:"Strip the audio track from the clips. Off by default \u2014 audio passes through.",meta:{ui:{label:"Mute audio",order:5}}}}),DEFAULTS={outputFormat:"mp4",muteAudio:!1},clamp=n((e,r,i)=>Math.min(i,Math.max(r,e)),"clamp");function resolveHighlightsKnobs(e){return{outputFormat:e.outputFormat==="webm"?"webm":"mp4",...e.maxWidth!=null&&Number.isFinite(e.maxWidth)?{maxWidth:clamp(Math.round(e.maxWidth),128,3840)}:{},muteAudio:e.muteAudio===!0}}n(resolveHighlightsKnobs,"resolveHighlightsKnobs");const ERROR_TITLE="Highlights";exports.Highlights={id:(0,types_1.asTemplateId)("@m0saic/media/highlights/v1"),label:"Highlight Clips",description:"Pick a video, mark one or more time ranges, and get each range as its own clip \u2014 mp4 or webm, audio intact, one render for the whole batch.",version:1,capabilities:{tier:"core"},tags:["media","clips","highlights","promo","multi-output","creators","marketers","animated","trailer","teaser","video"],outputHints:{format:{kind:"video",container:"mp4"},width:1920,height:1080,fps:30,durationMs:5e3},propsSchema,defaultProps:{...DEFAULTS},async render(e,r){const i=n(l=>(0,template_utils_1.makeErrorMosaic)(l,{title:ERROR_TITLE,width:r.target.width,height:r.target.height}),"fail"),s=e.sourceId;if(!s)return i('Missing required "Source": pick the video to pull highlight clips from.');if(e.outputFormat!==void 0&&e.outputFormat!=="mp4"&&e.outputFormat!=="webm")return i(`Unsupported outputFormat "${String(e.outputFormat)}" \u2014 use "mp4" or "webm".`);const o=(0,template_utils_1.parseTimeRangesValue)(e.ranges);if(!o.ok)return i(o.error);if(o.ranges.length===0)return i("Ranges are empty \u2014 mark at least one { startMs, endMs } highlight range.");if(o.ranges.length>exports.MAX_RANGES)return i(`Too many ranges (${o.ranges.length}) \u2014 the cap is ${exports.MAX_RANGES}.`);const t=r.media[(0,types_1.asAssetId)(s)];if(!t||!(t.width>0)||!(t.height>0))return i(`No probed dimensions for input: ${s}`);if(t.kind!=="video")return i(`Highlights needs a video input (kind: ${t.kind}): ${s}`);if(!(t.durationMs!=null&&t.durationMs>0))return i(`Video input has no probed duration: ${s}`);const d=resolveHighlightsKnobs(e),a=(0,template_utils_1.buildStepNames)([s])[0],p=(0,pipeline_1.buildHighlightSteps)({inputPath:s,stepBaseName:a,ranges:o.ranges,sourceDurationMs:t.durationMs,sourceWidth:t.width,sourceHeight:t.height,knobs:d,ctx:r}),u=t.fps!=null&&t.fps>0?Math.max(1,Math.round(t.fps)):void 0;return{kind:"mosaic_pipeline",version:1,emit:"multi",...u!==void 0?{fps:u}:{},steps:p}},async renderCover(e,r){var i;const t=typeof process<"u"&&!!(!((i=process.versions)===null||i===void 0)&&i.node)?{kind:"file",path:n(a=>a.includes("/app.asar/")?a.split("/app.asar/").join("/app.asar.unpacked/"):a.split("\\app.asar\\").join("\\app.asar.unpacked\\"),"unpackedAsar")(`${__dirname}/assets/cover-ranges.jpg`),mediaType:"image"}:null,d=t?{type:"media",mediaType:"image",assetId:(0,types_1.asAssetId)("cover-ranges"),placement:{fit:"contain"},editor:{owner:"template",label:"highlights:cover-screenshot"}}:(0,template_utils_1.makeColorTile)("#1c2530");return(0,onboarding_cover_1.buildBrandedCover)({ctx:r,variant:"band",copy:{productName:"Highlight Clips",title:"Mark ranges; each renders as its own clip."},hero:n(a=>(0,onboarding_cover_1.onboardingFrame)({m0:"1",sources:[d]},a.borderStrong),"hero"),heroAssets:t?{"cover-ranges":t}:{}})}},(0,template_utils_1.registerTemplate)(exports.Highlights);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var n=Object.defineProperty;var e=(t,r)=>n(t,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.ERROR_STEP_MS=exports.buildHighlightSteps=exports.scaleToMaxWidth=exports.sanitizeLabel=exports.rangeStepName=exports.inputLabel=exports.fmtRangeSeconds=exports.defaultRangeLabel=exports.MAX_RANGES=exports.resolveHighlightsKnobs=exports.Highlights=void 0;var highlights_1=require("./highlights");Object.defineProperty(exports,"Highlights",{enumerable:!0,get:e(function(){return highlights_1.Highlights},"get")}),Object.defineProperty(exports,"resolveHighlightsKnobs",{enumerable:!0,get:e(function(){return highlights_1.resolveHighlightsKnobs},"get")}),Object.defineProperty(exports,"MAX_RANGES",{enumerable:!0,get:e(function(){return highlights_1.MAX_RANGES},"get")});var plan_1=require("./plan");Object.defineProperty(exports,"defaultRangeLabel",{enumerable:!0,get:e(function(){return plan_1.defaultRangeLabel},"get")}),Object.defineProperty(exports,"fmtRangeSeconds",{enumerable:!0,get:e(function(){return plan_1.fmtRangeSeconds},"get")}),Object.defineProperty(exports,"inputLabel",{enumerable:!0,get:e(function(){return plan_1.inputLabel},"get")}),Object.defineProperty(exports,"rangeStepName",{enumerable:!0,get:e(function(){return plan_1.rangeStepName},"get")}),Object.defineProperty(exports,"sanitizeLabel",{enumerable:!0,get:e(function(){return plan_1.sanitizeLabel},"get")}),Object.defineProperty(exports,"scaleToMaxWidth",{enumerable:!0,get:e(function(){return plan_1.scaleToMaxWidth},"get")});var pipeline_1=require("./pipeline");Object.defineProperty(exports,"buildHighlightSteps",{enumerable:!0,get:e(function(){return pipeline_1.buildHighlightSteps},"get")}),Object.defineProperty(exports,"ERROR_STEP_MS",{enumerable:!0,get:e(function(){return pipeline_1.ERROR_STEP_MS},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var S=Object.defineProperty;var r=(t,s)=>S(t,"name",{value:s,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.ERROR_STEP_MS=void 0,exports.buildHighlightSteps=buildHighlightSteps;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),plan_1=require("./plan");exports.ERROR_STEP_MS=1e3;const ERROR_TITLE="Highlights";function errorStep(t,s,i,a){return{name:t,label:s,durationMs:exports.ERROR_STEP_MS,file:(0,template_utils_1.makeErrorMosaic)(i,{title:ERROR_TITLE,width:a.target.width,height:a.target.height})}}r(errorStep,"errorStep");function buildHighlightSteps(t){const{inputPath:s,stepBaseName:i,ranges:a,knobs:o,ctx:m}=t,u=(0,plan_1.inputLabel)(s),b=(0,template_utils_1.normalizeTimeRanges)(a,t.sourceDurationMs),d=(0,types_1.asAssetId)((0,template_utils_1.slugifyAssetKeyFromPath)(s)),g={[d]:{kind:"file",path:s,mediaType:"video"}},h=(0,plan_1.scaleToMaxWidth)(t.sourceWidth,t.sourceHeight,o.maxWidth);return b.map((e,c)=>{const p=(0,plan_1.rangeStepName)(i,c);if(!e.ok){const _=(e.range.label!==void 0?(0,plan_1.sanitizeLabel)(e.range.label):"")||(0,plan_1.defaultRangeLabel)(u,e.range.startMs,e.range.endMs);return errorStep(p,_,`Range ${c+1} invalid: ${e.reason}`,m)}const{startMs:n,endMs:l}=e,f=(e.label!==void 0?(0,plan_1.sanitizeLabel)(e.label):"")||(0,plan_1.defaultRangeLabel)(u,n,l),M={type:"media",mediaType:"video",assetId:d,placement:{fit:"cover"},playback:{clipStartMs:n,clipDurationMs:l-n,loopMode:"cut"},...o.muteAudio?{audio:{enabled:!1}}:{},editor:{owner:"template"}},R={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("1",ERROR_TITLE),assets:g,sources:[M],size:h,backgroundColor:"#000000",format:{kind:"video",container:o.outputFormat},...o.muteAudio?{audio:{mode:"off"}}:{}};return{name:p,label:f,durationMs:l-n,file:R}})}r(buildHighlightSteps,"buildHighlightSteps");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var o=Object.defineProperty;var r=(e,t)=>o(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.rangeStepName=rangeStepName,exports.inputLabel=inputLabel,exports.fmtRangeSeconds=fmtRangeSeconds,exports.sanitizeLabel=sanitizeLabel,exports.defaultRangeLabel=defaultRangeLabel,exports.evenRound=evenRound,exports.scaleToMaxWidth=scaleToMaxWidth;function rangeStepName(e,t){return`${e}__range_${String(t+1).padStart(2,"0")}`}r(rangeStepName,"rangeStepName");function inputLabel(e){var t;const n=(t=e.split(/[\\/]/).pop())!==null&&t!==void 0?t:e,a=n.lastIndexOf(".");return a>0?n.slice(0,a):n}r(inputLabel,"inputLabel");function fmtRangeSeconds(e){return`${(e/1e3).toFixed(1)}s`}r(fmtRangeSeconds,"fmtRangeSeconds");function sanitizeLabel(e){return e.replace(/[^A-Za-z0-9._-]+/g,"_").replace(/^_+|_+$/g,"").slice(0,64)}r(sanitizeLabel,"sanitizeLabel");function defaultRangeLabel(e,t,n){return sanitizeLabel(`${e}_${fmtRangeSeconds(t)}-${fmtRangeSeconds(n)}`)}r(defaultRangeLabel,"defaultRangeLabel");function evenRound(e){return Math.max(2,Math.round(e/2)*2)}r(evenRound,"evenRound");function scaleToMaxWidth(e,t,n){if(n!=null&&n>0&&e>n){const a=n/e;return{width:evenRound(n),height:evenRound(t*a)}}return{width:evenRound(e),height:evenRound(t)}}r(scaleToMaxWidth,"scaleToMaxWidth");
|
|
@@ -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}),exports.Barcode=void 0;var v1_1=require("./barcode/v1");Object.defineProperty(exports,"Barcode",{enumerable:!0,get:n(function(){return v1_1.Barcode},"get")}),__exportStar(require("./blur-regions"),exports),__exportStar(require("./highlights"),exports),__exportStar(require("./logo-animate"),exports),__exportStar(require("./metadata-stamp"),exports),__exportStar(require("./qr"),exports),__exportStar(require("./screencap_grid"),exports),__exportStar(require("./screencap_grid_aspect_safe"),exports),__exportStar(require("./scroll_wall"),exports),__exportStar(require("./subtitle-burn"),exports),__exportStar(require("./trickplay"),exports),__exportStar(require("./video_to_png_sequence"),exports),__exportStar(require("./watermark"),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,35 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.DEFAULT_LOGO_SVG=void 0,exports.DEFAULT_LOGO_SVG=`<svg width="272" height="272" viewBox="0 0 272 272" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path d="M19.7296 0.010376H0.0599976V48.117H19.7296V0.010376Z" fill="#EF7525"/>
|
|
3
|
+
<path d="M34.9327 55.9604H0V104.067H34.9327V55.9604Z" fill="#EF7525"/>
|
|
4
|
+
<path d="M62.2438 111.931H34.9327V160.038H62.2438V111.931Z" fill="#EF7525"/>
|
|
5
|
+
<path d="M27.3212 111.931H0V160.038H27.3212V111.931Z" fill="#EF7525"/>
|
|
6
|
+
<path d="M34.9327 167.912H0V216.019H34.9327V167.912Z" fill="#EF7525"/>
|
|
7
|
+
<path d="M62.1336 223.893H27.3712V272H62.1336V223.893Z" fill="#EF7525"/>
|
|
8
|
+
<path d="M19.7197 223.893H0.0100098V272H19.7197V223.893Z" fill="#EF7525"/>
|
|
9
|
+
<path d="M131.799 111.931H103.496V160.038H131.799V111.931Z" fill="#EF7525"/>
|
|
10
|
+
<path d="M174.503 56.0122L163.737 55.9915L139.49 89.6651V104.088L174.503 104.119V56.0122Z" fill="#EF7525"/>
|
|
11
|
+
<path d="M118.248 104.067H131.799V89.52L107.582 55.9604H69.675V104.067H115.614H118.248Z" fill="#EF7525"/>
|
|
12
|
+
<path d="M91.3477 33.9223L69.675 3.38805V48.1067H101.924L91.3477 33.9223Z" fill="#EF7525"/>
|
|
13
|
+
<path d="M180.422 32.8758L169.886 48.1067H180.051H181.574H201.754V3.34662L180.422 32.9172V32.8758Z" fill="#EF7525"/>
|
|
14
|
+
<path d="M139.49 160.069H165.81L200.512 111.962H139.49V160.069Z" fill="#EF7525"/>
|
|
15
|
+
<path d="M95.8845 148.278L95.8946 111.931H69.675L95.8845 148.278Z" fill="#EF7525"/>
|
|
16
|
+
<path d="M135.054 202.612L160.151 167.912L110.036 167.902L135.054 202.612Z" fill="#EF7525"/>
|
|
17
|
+
<path d="M62.1738 55.9604H42.5742V75.6776H62.1738V55.9604Z" fill="#EF7525"/>
|
|
18
|
+
<path d="M62.1738 83.5313H42.5742V104.057H62.1738V83.5313Z" fill="#EF7525"/>
|
|
19
|
+
<path d="M182.185 104.088L201.714 104.067V55.9604L182.185 55.9915V104.088Z" fill="#EF7525"/>
|
|
20
|
+
<path d="M62.1837 0.010376H27.3312V48.117H62.1837V0.010376Z" fill="#EF7525"/>
|
|
21
|
+
<path d="M62.0736 167.912H42.5141V187.629H62.0736V167.912Z" fill="#EF7525"/>
|
|
22
|
+
<path d="M62.0736 195.494H42.5141V216.019H62.0736V195.494Z" fill="#EF7525"/>
|
|
23
|
+
<path d="M271.95 223.883H252.28V271.99H271.95V223.883Z" fill="#EF7525"/>
|
|
24
|
+
<path d="M272 167.933H237.067V216.04H272V167.933Z" fill="#EF7525"/>
|
|
25
|
+
<path d="M237.067 111.952H209.756V160.059H237.067V111.952Z" fill="#EF7525"/>
|
|
26
|
+
<path d="M272 111.952H244.679V160.059H272V111.952Z" fill="#EF7525"/>
|
|
27
|
+
<path d="M272 55.9707H237.067V104.077H272V55.9707Z" fill="#EF7525"/>
|
|
28
|
+
<path d="M244.629 0H209.866V48.1067H244.629V0Z" fill="#EF7525"/>
|
|
29
|
+
<path d="M271.99 0H252.28V48.1067H271.99V0Z" fill="#EF7525"/>
|
|
30
|
+
<path d="M229.426 196.322H209.826V216.04H229.426V196.322Z" fill="#EF7525"/>
|
|
31
|
+
<path d="M229.426 167.933H209.826V188.458H229.426V167.933Z" fill="#EF7525"/>
|
|
32
|
+
<path d="M244.679 223.883H209.826V271.99H244.679V223.883Z" fill="#EF7525"/>
|
|
33
|
+
<path d="M229.486 84.3602H209.926V104.077H229.486V84.3602Z" fill="#EF7525"/>
|
|
34
|
+
<path d="M229.486 55.9707H209.926V76.4961H229.486V55.9707Z" fill="#EF7525"/>
|
|
35
|
+
</svg>`;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var v=Object.defineProperty;var c=(t,s)=>v(t,"name",{value:s,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildTileOffsetExpr=exports.buildPseudoRanks=exports.buildModuleAlphaExpr=void 0,exports.buildLoopEnableExpr=buildLoopEnableExpr,exports.buildProgressFillEnableExpr=buildProgressFillEnableExpr,exports.buildBreathingAlphaExpr=buildBreathingAlphaExpr,exports.buildShimmerEnableExpr=buildShimmerEnableExpr;var expressions_1=require("../../qr/animate/v1/expressions");Object.defineProperty(exports,"buildModuleAlphaExpr",{enumerable:!0,get:c(function(){return expressions_1.buildModuleAlphaExpr},"get")}),Object.defineProperty(exports,"buildPseudoRanks",{enumerable:!0,get:c(function(){return expressions_1.buildPseudoRanks},"get")}),Object.defineProperty(exports,"buildTileOffsetExpr",{enumerable:!0,get:c(function(){return expressions_1.buildTileOffsetExpr},"get")});function buildLoopEnableExpr(t,s){const{loopSec:e,inEnd:o,outStart:i,feather:r,fps:u,startDelay:a,endDelay:p}=s,n=`mod(t,${e})/${e}`,l=`(1/${u})/${e}`,b=`gte(${n},${l})`,$=`${a}`,x=`(1-${p})`,f=`(${x}-${$})`,h=`gte(${n},${$})*lt(${n},${x})`,d=`(((${n})-${$})/${f})`,E=s.easing==="smoothstep"?`(${d})*(${d})*(3-2*(${d}))`:`${d}`,m=`(1-${i})`,g=`min((${E})/${o},1)`,P=`min(max(((${E})-${i})/${m},0),1)`;return`${b}*${h}*gte((${g})+${r},${t})*gte((1-(${P}))+${r},${t})`}c(buildLoopEnableExpr,"buildLoopEnableExpr");function buildProgressFillEnableExpr(t,s){const{progress:e,progressSec:o,oneShot:i,feather:r,fps:u}=s,p=e!==void 0?"1":`gte(t,1/${u})`,n=e!==void 0?String(Math.max(0,Math.min(1,e))):i?`min(max(t/${o},0),1)`:`mod(t,${o})/${o}`;return`${p}*gte((${n})+${r},${t})`}c(buildProgressFillEnableExpr,"buildProgressFillEnableExpr");function buildBreathingAlphaExpr(t,s){const{baseMin:e,baseMax:o,basePulseSec:i,shimmerSec:r,shimmerWidth:u,shimmerAmp:a,feather:p,fps:n}=s,l=`gte(t,1/${n})`,b=`(${e})+(${o}-${e})*0.5*(1-cos(2*PI*t/${i}))`,$=`mod(t,${r})/${r}`,x=`(${u}/2)`,f=`abs(${t}-(${$}))`,h=`abs(${t}-((${$})-1))`,d=`abs(${t}-((${$})+1))`,m=`max(min(1-(${`min(min(${f},${h}),${d})`})/(${x}),1),0)`,g=`(${m})*(${m})*(3-2*(${m}))`,P=`(${a})*${g}`,S=`max(min((${b})+(${P})+${p},1),0)`;return`${l}*(${S})`}c(buildBreathingAlphaExpr,"buildBreathingAlphaExpr");function buildShimmerEnableExpr(t,s){const{shimmerSec:e,shimmerWidth:o,feather:i,fps:r}=s,u=`gte(t,1/${r})`,a=`mod(t,${e})/${e}`,p=`(${o}/2)`,n=`abs(${t}-(${a}))`,l=`abs(${t}-((${a})-1))`,b=`abs(${t}-((${a})+1))`,$=`min(min(${n},${l}),${b})`;return`${u}*lte(${$},(${p})+${i})`}c(buildShimmerEnableExpr,"buildShimmerEnableExpr");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var r=Object.defineProperty;var e=(t,o)=>r(t,"name",{value:o,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.LogoAnimateV1=void 0;var logo_animate_1=require("./logo-animate");Object.defineProperty(exports,"LogoAnimateV1",{enumerable:!0,get:e(function(){return logo_animate_1.LogoAnimateV1},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var i=Object.defineProperty;var r=(t,e)=>i(t,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.computeContainRect=computeContainRect,exports.buildContainLayout=buildContainLayout;const dsl_stdlib_1=require("@m0saic/dsl-stdlib");function computeContainRect(t,e,a,c){const n=a>0?a:1,o=c>0?c:1,s=Math.min(t/n,e/o);return{w:Math.min(t,Math.max(1,Math.round(n*s))),h:Math.min(e,Math.max(1,Math.round(o*s)))}}r(computeContainRect,"computeContainRect");function buildContainLayout(t,e,a,c){const n=computeContainRect(t,e,a,c),o=(0,dsl_stdlib_1.placeRect)({rootW:t,rootH:e,rectW:n.w,rectH:n.h});return{m0:String(o.m0),rect:n,exactFit:n.w===t&&n.h===e}}r(buildContainLayout,"buildContainLayout");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var Se=Object.defineProperty;var u=(e,r)=>Se(e,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.LogoAnimateV1=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),expressions_1=require("./expressions"),layout_1=require("./layout"),svg_source_1=require("./svg-source"),default_logo_1=require("./default-logo"),tutorial_1=require("./tutorial"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),PRESETS={light:{ink:"#f97316",bg:"#ffffff"},dark:{ink:"#fb923c",bg:"#0b0b0f"}},DEFAULT_PRESET="light",DEFAULT_FIT="contain",DEFAULT_ANIMATION="assemble",DEFAULT_RANK_SET="diag",DEFAULT_DRIFT_PERCENT=0,DEFAULT_PACKING="multi",BITMAP_PRECISION_RES={draft:32,balanced:64,crisp:128,fine:256,ultra:512},DEFAULT_BITMAP_PRECISION="balanced",DEFAULT_SPAWN_DUR_MS=1e3,DEFAULT_TILE_FADE_MS=220,DEFAULT_HOLD_DUR_MS=600,DEFAULT_FADE_OUT_DUR_MS=700,DEFAULT_TILE_OFFSET_PX=1,DEFAULT_LOOP_SEC=3.2,DEFAULT_PROGRESS_SEC=2,DEFAULT_SHIMMER_SEC=1.2,DEFAULT_SHIMMER_WIDTH=.18,DEFAULT_FEATHER=.02,LOOP_IN_END=.25,LOOP_OUT_START=.75,LOOP_START_DELAY=.1,LOOP_END_DELAY=.2,BREATHING_BASE_MIN=.18,BREATHING_BASE_MAX=.32,BREATHING_PULSE_SEC=1.6,BREATHING_SHIMMER_AMP=.75;function pickColor(e,r){return typeof e=="string"&&e.trim()===""?r:e??r}u(pickColor,"pickColor");const propsSchema=(0,template_utils_1.definePropsSchema)({svgPath:{type:"media",required:!1,description:"Your logo as an SVG file. Only <path>/<rect> shapes are parsed \u2014 flatten with Inkscape's Object to Path first if needed.",meta:{control:{picker:"file",accept:["image"]},ui:{label:"Logo SVG",order:1,primary:!0}}},svg:{type:"string",required:!1,description:"Inline SVG content. Bypasses the file picker \u2014 useful for CLI/programmatic callers. Leave both empty to see the placeholder mark.",meta:{control:{placeholder:"built-in M"},ui:{label:"SVG string",order:2}}},driftPercent:{type:"number",required:!1,description:"Drift tolerance for grid inference (% of min canvas dim).",meta:{constraints:{min:0,max:5},ui:{label:"Drift %"}}},packing:{type:"string",required:!1,description:'Layer-packing strategy: "one" or "multi".',meta:{constraints:{oneOf:["one","multi"]},ui:{label:"Packing",hidden:!0}}},bitmap:{type:"boolean",required:!1,description:"Rasterize the SVG to a pixel grid and animate pixel-by-pixel. Opt-in \u2014 a high-resolution grid is a heavy render. Use when a logo converts to a single shape and won't otherwise animate.",meta:{ui:{label:"Bitmap mode",order:3}}},bitmapPrecision:{type:"string",required:!1,description:"Bitmap-mode fidelity (raster resolution). Higher = crisper but far more frames / slower renders. ultra (512\xB2) is maximum fidelity \u2014 it renders but is too heavy to preview live.",meta:{constraints:{oneOf:["draft","balanced","crisp","fine","ultra"]},control:{options:[{value:"draft",label:"Draft (32\xB2) \u2014 fast"},{value:"balanced",label:"Balanced (64\xB2)"},{value:"crisp",label:"Crisp (128\xB2)"},{value:"fine",label:"Fine (256\xB2) \u2014 heavy"},{value:"ultra",label:"Ultra (512\xB2) \u2014 very long, no live preview"}]},ui:{label:"Bitmap precision"}}},animation:{type:"string",required:!1,description:"assemble: tiles spawn in, hold, fade out \xB7 logo_loop: seamless reveal loop \xB7 progress_fill: fills like a loading bar \xB7 breathing: pulsing glow with a travelling shine \xB7 shimmer: travelling highlight band.",meta:{constraints:{oneOf:["assemble","logo_loop","progress_fill","breathing","shimmer"]},ui:{label:"Animation",order:1}}},rankSet:{type:"string",required:!1,description:"Tile ordering: scatter (pixelate-in), diag (corner sweep), cascade, radial (center-out).",meta:{constraints:{oneOf:["scatter","diag","cascade","radial"]},ui:{label:"Order",order:2}}},spawnDurMs:{type:"number",required:!1,description:"Stagger from first to last tile starting its fade-in.",meta:{constraints:{min:100,max:6e4},ui:{label:"Spawn (ms)",visibleWhen:{prop:"animation",equals:"assemble"}}}},tileFadeMs:{type:"number",required:!1,description:"Per-tile fade-in duration.",meta:{constraints:{min:0,max:1e4},ui:{label:"Fade (ms)",visibleWhen:{prop:"animation",equals:"assemble"}}}},holdDurMs:{type:"number",required:!1,description:"Hold duration at full alpha before fade-out begins.",meta:{constraints:{min:0,max:6e4},ui:{label:"Hold (ms)",visibleWhen:{prop:"animation",equals:"assemble"}}}},fadeOutDurMs:{type:"number",required:!1,description:"Global fade-out duration.",meta:{constraints:{min:0,max:1e4},ui:{label:"Fade out (ms)",visibleWhen:{prop:"animation",equals:"assemble"}}}},tileOffsetPx:{type:"number",required:!1,description:"Pixel offset (down/right) each tile settles from.",meta:{constraints:{min:0,max:100},ui:{label:"Settle (px)",visibleWhen:{prop:"animation",equals:"assemble"}}}},loopSec:{type:"number",required:!1,description:"Seamless loop period.",meta:{constraints:{min:.5,max:120},ui:{label:"Loop (s)",visibleWhen:{prop:"animation",equals:"logo_loop"}}}},progress:{type:"number",required:!1,description:"Static fill level (0..1). Leave empty to animate the fill.",meta:{control:{placeholder:"auto (animated)"},constraints:{min:0,max:1},ui:{label:"Progress",visibleWhen:{prop:"animation",equals:"progress_fill"}}}},progressSec:{type:"number",required:!1,description:"Fill ramp duration.",meta:{constraints:{min:.2,max:120},ui:{label:"Fill (s)",visibleWhen:{prop:"animation",equals:"progress_fill"}}}},oneShot:{type:"boolean",required:!1,description:"Fill once and hold instead of repeating.",meta:{ui:{label:"One-shot",visibleWhen:{prop:"animation",equals:"progress_fill"}}}},shimmerSec:{type:"number",required:!1,description:"Band sweep period (shimmer + breathing modes).",meta:{constraints:{min:.2,max:120},ui:{label:"Shimmer (s)"}}},shimmerWidth:{type:"number",required:!1,description:"Band width as a fraction of rank space (shimmer + breathing).",meta:{constraints:{min:.02,max:1},ui:{label:"Band width"}}},feather:{type:"number",required:!1,description:"Rank-space tolerance softening mode boundaries.",meta:{constraints:{min:0,max:.5},ui:{label:"Feather",hidden:!0}}},fit:{type:"string",required:!1,description:'"contain" letterboxes the logo at its own aspect; "fill" stretches it across the canvas.',meta:{constraints:{oneOf:["contain","fill"]},ui:{label:"Fit",order:4}}},preset:{type:"string",required:!1,description:"Hand-tuned ink/background duo.",meta:{constraints:{oneOf:["light","dark"]},ui:{label:"Preset",order:1}}},color:{type:"string",required:!1,description:"Ink override \u2014 every logo shape fills with this color.",meta:{constraints:{isColor:!0},control:{placeholder:"preset ink",colorPicker:!0},ui:{label:"Ink",order:2}}},backgroundColor:{type:"string",required:!1,description:"Canvas background override.",meta:{constraints:{isColor:!0},control:{placeholder:"preset background",colorPicker:!0},ui:{label:"Background",order:3}}}});exports.LogoAnimateV1={id:(0,types_1.asTemplateId)("@m0saic/media/logo-animate/v1"),label:"Logo Animate",version:1,description:"Drop in an SVG logo \u2014 get an animated logo video. The SVG becomes real m0 geometry (one cell per shape, silhouette masks), animated per-tile: assemble-in, seamless loop, progress fill, breathing glow, or shimmer.",capabilities:{tier:"capability",caps:{fs:{read:!0}}},tags:["media","logo","animated","svg-to-mosaic","brand","designers","marketers","svg","intro"],outputHints:{fps:30,durationMs:DEFAULT_SPAWN_DUR_MS+DEFAULT_TILE_FADE_MS+DEFAULT_HOLD_DUR_MS+DEFAULT_FADE_OUT_DUR_MS,width:1080,height:1080,note:"The logo fills the canvas \u2014 render at the logo's own aspect ratio for an undistorted mark (square default suits square marks).",posterTimeMs:DEFAULT_SPAWN_DUR_MS+DEFAULT_TILE_FADE_MS+Math.round(DEFAULT_HOLD_DUR_MS/2),format:{kind:"video",container:"mp4"}},propsSchema,defaultProps:{driftPercent:DEFAULT_DRIFT_PERCENT,packing:DEFAULT_PACKING,bitmap:!1,bitmapPrecision:DEFAULT_BITMAP_PRECISION,animation:DEFAULT_ANIMATION,rankSet:DEFAULT_RANK_SET,spawnDurMs:DEFAULT_SPAWN_DUR_MS,tileFadeMs:DEFAULT_TILE_FADE_MS,holdDurMs:DEFAULT_HOLD_DUR_MS,fadeOutDurMs:DEFAULT_FADE_OUT_DUR_MS,tileOffsetPx:DEFAULT_TILE_OFFSET_PX,loopSec:DEFAULT_LOOP_SEC,progressSec:DEFAULT_PROGRESS_SEC,oneShot:!1,shimmerSec:DEFAULT_SHIMMER_SEC,shimmerWidth:DEFAULT_SHIMMER_WIDTH,feather:DEFAULT_FEATHER,fit:DEFAULT_FIT,preset:DEFAULT_PRESET},async render(e,r){var A,h,T,O,f,b,_,a,P,l,R,L,c,S,v,D,d,m,x;const o=this.defaultProps,C=(A=e.driftPercent)!==null&&A!==void 0?A:o.driftPercent,G=(h=e.packing)!==null&&h!==void 0?h:o.packing,ne=(T=e.bitmap)!==null&&T!==void 0?T:o.bitmap,X=(O=e.bitmapPrecision)!==null&&O!==void 0?O:o.bitmapPrecision,J=(f=BITMAP_PRECISION_RES[X])!==null&&f!==void 0?f:BITMAP_PRECISION_RES[DEFAULT_BITMAP_PRECISION],Q=(b=e.animation)!==null&&b!==void 0?b:o.animation,N=(_=e.rankSet)!==null&&_!==void 0?_:o.rankSet,B=(a=e.spawnDurMs)!==null&&a!==void 0?a:o.spawnDurMs,U=(P=e.tileFadeMs)!==null&&P!==void 0?P:o.tileFadeMs,$=(l=e.holdDurMs)!==null&&l!==void 0?l:o.holdDurMs,V=(R=e.fadeOutDurMs)!==null&&R!==void 0?R:o.fadeOutDurMs,W=(L=e.tileOffsetPx)!==null&&L!==void 0?L:o.tileOffsetPx,H=(c=e.loopSec)!==null&&c!==void 0?c:o.loopSec,K=(S=e.progressSec)!==null&&S!==void 0?S:o.progressSec,ue=(v=e.oneShot)!==null&&v!==void 0?v:o.oneShot,F=(D=e.shimmerSec)!==null&&D!==void 0?D:o.shimmerSec,w=(d=e.shimmerWidth)!==null&&d!==void 0?d:o.shimmerWidth,g=(m=e.feather)!==null&&m!==void 0?m:o.feather,j=(x=e.fit)!==null&&x!==void 0?x:o.fit,me=e.preset==="dark"?"dark":"light",se=PRESETS[me],ge=pickColor(e.color,se.ink),Z=pickColor(e.backgroundColor,se.bg),y=r.output.width,E=r.output.height,p=r.output.fps,M=u((t,s)=>(0,template_utils_1.makeErrorMosaic)(t,{title:"Logo Animate",width:y,height:E,errorCode:s}),"fail"),i=[];e.svgPath&&e.svg&&i.push("specify exactly one of `svgPath` or `svg` (not both)"),C>=0&&C<=5||i.push(`driftPercent must be in [0, 5] (got ${C})`),G!=="one"&&G!=="multi"&&i.push(`packing must be "one" or "multi" (got "${G}")`);const ae=["draft","balanced","crisp","fine","ultra"];ae.includes(X)||i.push(`bitmapPrecision must be one of ${ae.join("/")} (got "${X}")`);const le=["assemble","logo_loop","progress_fill","breathing","shimmer"];le.includes(Q)||i.push(`animation must be one of ${le.join("/")} (got "${Q}")`);const ce=["scatter","diag","cascade","radial"];if(ce.includes(N)||i.push(`rankSet must be one of ${ce.join("/")} (got "${N}")`),B>=100&&B<=6e4||i.push(`spawnDurMs must be in [100, 60000] (got ${B})`),U>=0&&U<=1e4||i.push(`tileFadeMs must be in [0, 10000] (got ${U})`),$>=0&&$<=6e4||i.push(`holdDurMs must be in [0, 60000] (got ${$})`),V>=0&&V<=1e4||i.push(`fadeOutDurMs must be in [0, 10000] (got ${V})`),W>=0&&W<=100||i.push(`tileOffsetPx must be in [0, 100] (got ${W})`),H>=.5&&H<=120||i.push(`loopSec must be in [0.5, 120] (got ${H})`),e.progress!==void 0&&!(e.progress>=0&&e.progress<=1)&&i.push(`progress must be in [0, 1] (got ${e.progress})`),K>=.2&&K<=120||i.push(`progressSec must be in [0.2, 120] (got ${K})`),F>=.2&&F<=120||i.push(`shimmerSec must be in [0.2, 120] (got ${F})`),w>=.02&&w<=1||i.push(`shimmerWidth must be in [0.02, 1] (got ${w})`),g>=0&&g<=.5||i.push(`feather must be in [0, 0.5] (got ${g})`),j!=="contain"&&j!=="fill"&&i.push(`fit must be "contain" or "fill" (got "${j}")`),i.length)return M(i.join(" | "),"LOGO_ANIMATE_PROPS");let ee;try{ee=(0,svg_source_1.loadSvgText)(e,default_logo_1.DEFAULT_LOGO_SVG)}catch(t){return M(`Failed to read svgPath "${e.svgPath}": ${t instanceof Error?t.message:String(t)}`,"LOGO_ANIMATE_READ")}let k,te,z;if(ne){try{const t=await(0,svg_source_1.rasterizeSvgToBinaryGrid)(ee,J);k=String((0,dsl_stdlib_1.binaryGridToM0)(t))}catch(t){return M(`Bitmap rasterization failed: ${t instanceof Error?t.message:String(t)}`,"LOGO_ANIMATE_CONVERT")}te={},z={w:J,h:J}}else{let t;try{t=(0,svg_source_1.buildLogoGrid)(ee,{driftPercent:C,packing:G})}catch(s){return M(`SVG conversion failed: ${s instanceof Error?s.message:String(s)}`,"LOGO_ANIMATE_CONVERT")}k=t.m0,te=(0,svg_source_1.buildMasksByStableKey)(t.grid,t.m0),z=t.intrinsic}const Y=(0,dsl_stdlib_1.queryFrames)(k,{width:y,height:E}).logical();if(Y.length===0)return M("Converted m0 contains no visible tiles to animate","LOGO_ANIMATE_EMPTY");if(!ne&&Y.length===1)return M("This SVG converts to a single shape \u2014 there are no separate cells to stagger, so it won't animate. Enable Bitmap mode to rasterize the logo and animate it pixel-by-pixel (higher render cost).","LOGO_ANIMATE_SINGLE_FRAME");let ie;if(N==="scatter"){const t=Y.map(n=>({x:n.x,y:n.y,logicalIndex:n.logicalIndex})),s=(0,expressions_1.buildPseudoRanks)(t);ie=u((n,I)=>s[I],"rankOf")}else{const t=(0,dsl_stdlib_1.generateStableKeyRankSet)((0,dsl_stdlib_1.rankFramesFromM0)(k,{canvasW:y,canvasH:E}),N);ie=u(s=>{var n;return(n=t.ranks[s])!==null&&n!==void 0?n:0},"rankOf")}const oe=B/1e3,re=U/1e3,pe=oe+re+$/1e3,he=V/1e3,fe=u(t=>{switch(Q){case"logo_loop":return{enable:(0,expressions_1.buildLoopEnableExpr)(t,{loopSec:H,inEnd:LOOP_IN_END,outStart:LOOP_OUT_START,feather:g,fps:p,startDelay:LOOP_START_DELAY,endDelay:LOOP_END_DELAY,easing:"smoothstep"})};case"progress_fill":return{enable:(0,expressions_1.buildProgressFillEnableExpr)(t,{progress:e.progress,progressSec:K,oneShot:ue,feather:g,fps:p})};case"breathing":return{alpha:(0,expressions_1.buildBreathingAlphaExpr)(t,{baseMin:BREATHING_BASE_MIN,baseMax:BREATHING_BASE_MAX,basePulseSec:BREATHING_PULSE_SEC,shimmerSec:F,shimmerWidth:w,shimmerAmp:BREATHING_SHIMMER_AMP,feather:g,fps:p})};case"shimmer":return{enable:(0,expressions_1.buildShimmerEnableExpr)(t,{shimmerSec:F,shimmerWidth:w,feather:g,fps:p})};case"assemble":default:{const s=(0,expressions_1.buildModuleAlphaExpr)(t,{spawnDurSec:oe,tileFadeSec:re,exitStartSec:pe,fadeOutSec:he}),n=(0,expressions_1.buildTileOffsetExpr)(t,{spawnDurSec:oe,tileFadeSec:re,offsetPx:W});return n==="0"?{alpha:s}:{alpha:s,xExpr:n,yExpr:n}}}},"overlayFor"),de=Y.map((t,s)=>{const n=String(t.meta.stableKey),I=te[n],_e=I?{kind:"inline-mask",localPath:I.localPath,bounds:I.bounds}:void 0;return(0,template_utils_1.makeColorTile)(ge,{overlay:fe(ie(n,s)),mask:_e})}),q=j==="contain"?(0,layout_1.buildContainLayout)(y,E,z.w,z.h):null;if(!q||q.exactFit)return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(k,"LogoAnimateV1"),sources:de,assets:{},backgroundColor:Z,size:{width:y,height:E},fps:p,durationMs:r.output.durationMs};const be={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(k,"LogoAnimateV1-logo"),sources:de,assets:{},backgroundColor:Z,size:{width:q.rect.w,height:q.rect.h},fps:p,durationMs:r.output.durationMs};return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(q.m0,"LogoAnimateV1-contain"),children:{logo:be},sources:[{type:"mosaic",ref:"logo"}],assets:{},backgroundColor:Z,size:{width:y,height:E},fps:p,durationMs:r.output.durationMs}},async renderCover(e,r){const A=e.preset==="dark"?"dark":"light",h=PRESETS[A],T=pickColor(e.color,h.ink),O=pickColor(e.backgroundColor,h.bg),f=(0,onboarding_cover_1.brandedCoverHeroBox)(r,"band"),b=f.width,_=f.height,a=(0,svg_source_1.buildLogoGrid)(default_logo_1.DEFAULT_LOGO_SVG,{driftPercent:0,packing:"multi"}),P=(0,svg_source_1.buildMasksByStableKey)(a.grid,a.m0),l=(0,layout_1.buildContainLayout)(Math.max(2,Math.round(b*.97)),Math.max(2,Math.round(_*.95)),a.intrinsic.w,a.intrinsic.h),L=(0,dsl_stdlib_1.queryFrames)(a.m0,{width:l.rect.w,height:l.rect.h}).logical().map(d=>{const m=P[String(d.meta.stableKey)],x=m?{kind:"inline-mask",localPath:m.localPath,bounds:m.bounds}:void 0;return(0,template_utils_1.makeColorTile)(T,{mask:x})}),c=u(d=>Math.max(1,Math.round(d/4)),"u"),S=Math.max(2,(b-l.rect.w)/2),v=Math.max(2,(_-l.rect.h)/2),D=String((0,dsl_stdlib_1.weightedSplit)([c(v),c(l.rect.h),c(v)],"row",{claimants:["-",String((0,dsl_stdlib_1.weightedSplit)([c(S),c(l.rect.w),c(S)],"col",{claimants:["-",a.m0,"-"]})),"-"]}));return(0,onboarding_cover_1.buildBrandedCover)({ctx:r,variant:"band",copy:{productName:"Logo Animate",title:"Drop in an SVG; get an animated logo video."},hero:u(d=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.onboardingOverlay)((0,onboarding_cover_1.onboardingSolid)(O),{m0:D,sources:L}),d.borderStrong),"hero")})},renderTutorial(e,r){return(0,tutorial_1.renderLogoAnimateTutorial)(r)}},(0,template_utils_1.registerTemplate)(exports.LogoAnimateV1),exports.default=exports.LogoAnimateV1;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var l=Object.defineProperty;var o=(e,t)=>l(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.SVG_SHAPE_GUIDANCE=void 0,exports.loadSvgText=loadSvgText,exports.buildLogoGrid=buildLogoGrid,exports.buildMasksByStableKey=buildMasksByStableKey,exports.rasterizeSvgToBinaryGrid=rasterizeSvgToBinaryGrid;const node_fs_1=require("node:fs"),svgRaster_1=require("../../../_shared/svgRaster"),dsl_stdlib_1=require("@m0saic/dsl-stdlib");exports.SVG_SHAPE_GUIDANCE="SVG contains no usable <path> or <rect> shapes. Groups, transforms, circles/ellipses/polygons and CSS classes are not parsed \u2014 in Inkscape: select all, Path \u2192 Object to Path, ungroup, then save as Plain SVG.";function loadSvgText(e,t){return e.svgPath?(0,node_fs_1.readFileSync)(e.svgPath,"utf8"):e.svg?e.svg:t}o(loadSvgText,"loadSvgText");function buildLogoGrid(e,t){const n=(0,dsl_stdlib_1.parseSvg)(e),s=(0,dsl_stdlib_1.extractGeometry)(n.paths);if(s.length===0)throw new Error(exports.SVG_SHAPE_GUIDANCE);const r=(0,dsl_stdlib_1.inferGrid)(s,n.viewBox,{driftPercent:t.driftPercent,driftMode:"gcd-snap"}),a=(0,dsl_stdlib_1.rectsToM0)(r,{packing:t.packing}),{w:i,h:c}=gridCanvasDims(r);return{m0:String(a.m0),grid:r,viewBox:n.viewBox,rectCount:a.rectCount,layerCount:a.layerCount,intrinsic:{w:i,h:c}}}o(buildLogoGrid,"buildLogoGrid");function gridCanvasDims(e){var t,n,s,r;if(e.viewBox&&e.viewBox.width>0&&e.viewBox.height>0)return{w:Math.round(e.viewBox.width),h:Math.round(e.viewBox.height)};const a=e.xLines,i=e.yLines;return{w:Math.max(1,Math.round(((t=a[a.length-1])!==null&&t!==void 0?t:1)-((n=a[0])!==null&&n!==void 0?n:0))),h:Math.max(1,Math.round(((s=i[i.length-1])!==null&&s!==void 0?s:1)-((r=i[0])!==null&&r!==void 0?r:0)))}}o(gridCanvasDims,"gridCanvasDims");function buildMasksByStableKey(e,t){try{const{w:n,h:s}=gridCanvasDims(e),r=(0,dsl_stdlib_1.generateMasks)(e,t,{canvasW:n,canvasH:s,clipToBounds:!0});return(0,dsl_stdlib_1.generateMasksByStableKey)(e,t,r,n,s)}catch{return{}}}o(buildMasksByStableKey,"buildMasksByStableKey");async function rasterizeSvgToBinaryGrid(e,t){const{data:n,width:s,height:r}=await(0,svgRaster_1.renderSvgContainRgba)(e,t),a={width:s,height:r};return(0,dsl_stdlib_1.classifyPixels)(n,a.width,a.height,{onMode:"light",threshold:0,alphaThreshold:128})}o(rasterizeSvgToBinaryGrid,"rasterizeSvgToBinaryGrid");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _=Object.defineProperty;var s=(e,t)=>_(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.renderLogoAnimateTutorial=renderLogoAnimateTutorial;const dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),screencap_grid_cover_1=require("../../screencap_grid/v2/screencap-grid-cover"),expressions_1=require("./expressions"),svg_source_1=require("./svg-source"),layout_1=require("./layout"),default_logo_1=require("./default-logo"),DEMO_SVG='<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="9" width="4" height="7"/><rect x="6" y="5" width="4" height="11"/><rect x="12" y="0" width="4" height="16"/><rect x="0" y="4" width="4" height="3"/><path d="M6 3L10 3L8 0Z"/></svg>',TUTORIAL_FPS=30,P={bg:"#0a0c12",surface:"#141926",raised:"#1d2433",border:"#2a3347",accent:"#f97316",accentSoft:"#fdba74",textHi:"#f4f6fa",textLo:"#aab3c2",textMute:"#5d667a"};function inlineLogo(e,t,n,r){const o=(0,svg_source_1.buildLogoGrid)(e,{driftPercent:2,packing:"multi"}),l=(0,svg_source_1.buildMasksByStableKey)(o.grid,o.m0),a=(0,layout_1.buildContainLayout)(Math.max(2,Math.round(n*.94)),Math.max(2,Math.round(r*.94)),o.intrinsic.w,o.intrinsic.h),c=(0,dsl_stdlib_1.queryFrames)(o.m0,{width:o.intrinsic.w*4,height:o.intrinsic.h*4}).logical().length,u=(0,dsl_stdlib_1.queryFrames)(o.m0,{width:a.rect.w,height:a.rect.h}).logical();if(u.length===0||u.length<c)return null;const b=(0,dsl_stdlib_1.generateStableKeyRankSet)((0,dsl_stdlib_1.rankFramesFromM0)(o.m0,{canvasW:a.rect.w,canvasH:a.rect.h}),"diag"),p=s(i=>{switch(t){case"assemble":return{alpha:(0,expressions_1.buildModuleAlphaExpr)(i,{spawnDurSec:1.2,tileFadeSec:.25,exitStartSec:9999,fadeOutSec:.1})};case"logo_loop":return{enable:(0,expressions_1.buildLoopEnableExpr)(i,{loopSec:2.4,inEnd:.25,outStart:.75,feather:.02,fps:TUTORIAL_FPS,startDelay:.1,endDelay:.2,easing:"smoothstep"})};case"progress_fill":return{enable:(0,expressions_1.buildProgressFillEnableExpr)(i,{progressSec:2,oneShot:!1,feather:.02,fps:TUTORIAL_FPS})};case"shimmer":return{enable:(0,expressions_1.buildShimmerEnableExpr)(i,{shimmerSec:1.4,shimmerWidth:.2,feather:.02,fps:TUTORIAL_FPS})};case"static":default:return}},"overlayFor"),w=u.map(i=>{var h;const S=l[String(i.meta.stableKey)],x=S?{kind:"inline-mask",localPath:S.localPath,bounds:S.bounds}:void 0,M=p((h=b.ranks[String(i.meta.stableKey)])!==null&&h!==void 0?h:0);return(0,template_utils_1.makeColorTile)(P.accent,{...M?{overlay:M}:{},mask:x})}),d=s(i=>Math.max(1,Math.round(i/4)),"u"),m=Math.max(2,(n-a.rect.w)/2),f=Math.max(2,(r-a.rect.h)/2),g={m0:o.m0,sources:w},y=(0,screencap_grid_cover_1.onboardingSplit)("col",[d(m),d(a.rect.w),d(m)],[null,g,null]);return(0,screencap_grid_cover_1.onboardingSplit)("row",[d(f),d(a.rect.h),d(f)],[null,y,null])}s(inlineLogo,"inlineLogo");function cardTile(e,t={}){return(0,screencap_grid_cover_1.onboardingLeaf)((0,template_utils_1.makeColorTile)(e,{effects:{...t.radius!=null?{cornerRadius:t.radius}:{},...t.stroke?{stroke:{color:t.stroke,widthPx:1}}:{}}}))}s(cardTile,"cardTile");function padded(e,t=5){const n=(0,screencap_grid_cover_1.onboardingSplit)("col",[t,100-2*t,t],[null,e,null]);return(0,screencap_grid_cover_1.onboardingSplit)("row",[t,100-2*t,t],[null,n,null])}s(padded,"padded");function logoIn(e,t,n,r,o){return e((l,a)=>{var c;return(c=inlineLogo(t,n,l,a))!==null&&c!==void 0?c:(0,screencap_grid_cover_1.onboardingSplit)("row",[2,1,2],[null,(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:r,fontSize:o.body,color:P.accentSoft,label:`mark ${r.toLowerCase()}`})),null])})}s(logoIn,"logoIn");function chip(e,t,n=!1){return(0,screencap_grid_cover_1.onboardingOverlay)(cardTile(n?P.accent:P.raised,{radius:.5}),(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:e,fontSize:t.micro,color:n?P.bg:P.textLo,label:`chip ${e.toLowerCase()}`})))}s(chip,"chip");function fittedTextBlock(e){const{bandPx:t,...n}=e;let r=e.fontSize;for(let o=0;o<12;o++){const l=(0,screencap_grid_cover_1.onboardingTextBlock)({...n,fontSize:r}),a=l.sources.length;if(t*3/(3*a+2)>=r*1.32||r<=11)return l;r=Math.max(11,Math.floor(r*.92))}return(0,screencap_grid_cover_1.onboardingTextBlock)({...n,fontSize:r})}s(fittedTextBlock,"fittedTextBlock");const BEATS=[{name:"hero",durationMs:4200,eyebrow:"LOGO ANIMATE",title:"Your logo, assembled.",body:"Drop in an SVG and every shape becomes a tile on the canvas \u2014 then the tiles animate. What you see here is the template rendering itself.",detail:"Real geometry, not baked pixels \u2014 the DSL view shows every shape",buildVisual:s((e,t)=>logoIn(t,default_logo_1.DEFAULT_LOGO_SVG,"assemble","Mosaic M",e),"buildVisual")},{name:"yoursvg",durationMs:5200,eyebrow:"BRING YOUR OWN",title:"Any flattened SVG works.",body:"Pick your .svg with the Logo SVG file picker. Only <path> and <rect> shapes parse \u2014 in Inkscape: select all, Object to Path, ungroup, save as Plain SVG.",detail:"Rectilinear marks convert exactly \xB7 curvy shapes get silhouette masks",buildVisual:s((e,t)=>{const n=(0,screencap_grid_cover_1.onboardingGuttered)("row",[chip("1 \xB7 Flatten to paths",e),chip("2 \xB7 Drop the .svg in",e),chip("3 \xB7 Pick an animation",e,!0)],10,2);return(0,screencap_grid_cover_1.onboardingSplit)("row",[13,1,6],[logoIn(t,DEMO_SVG,"assemble","your logo",e),null,n])},"buildVisual")},{name:"modes",durationMs:5200,eyebrow:"FIVE WAYS TO MOVE",title:"One logo, five animations.",body:"Assemble spawns the tiles in. Loop reveals seamlessly, forever. Progress fills like a loading bar, breathing pulses, shimmer sweeps a highlight.",detail:"Left: loop \xB7 right: progress fill \u2014 both rendering live",buildVisual:s((e,t)=>{const n=s((r,o)=>(0,screencap_grid_cover_1.onboardingSplit)("col",[13,1,4],[logoIn(t,default_logo_1.DEFAULT_LOGO_SVG,r,o,e),null,(0,screencap_grid_cover_1.onboardingSplit)("row",[8,3,8],[null,chip(o,e,!0),null])]),"labeled");return(0,screencap_grid_cover_1.onboardingGuttered)("row",[n("logo_loop","logo_loop"),n("progress_fill","progress_fill")],12,1)},"buildVisual")},{name:"bitmap",durationMs:4600,eyebrow:"CURVY LOGO?",title:"Bitmap mode animates pixels.",body:"A single-shape SVG has nothing to stagger \u2014 the template tells you so instead of rendering a static frame. Flip on Bitmap mode to rasterize the mark and animate it pixel-by-pixel.",detail:"Precision: draft 32\xB2 to ultra 512\xB2 \xB7 higher = crisper, slower",buildVisual:s((e,t)=>t((n,r)=>{const l=[];for(let d=0;d<11;d++){const m=[],f=[];for(let g=0;g<11;g++){const y=g-5,i=d-10/2,h=Math.sqrt(y*y+i*i)<=11/2-.4;m.push(h?(0,screencap_grid_cover_1.onboardingLeaf)((0,template_utils_1.makeColorTile)(P.accent,{effects:{cornerRadius:.14},overlay:{alpha:(0,template_utils_1.fadeInExpr)(.2+(d+g)*.09,.22)}})):null),f.push(1)}l.push((0,screencap_grid_cover_1.onboardingSplit)("col",f,m))}const a=(0,screencap_grid_cover_1.onboardingSplit)("row",Array(11).fill(1),l),c=Math.max(2,Math.round(Math.min(n,r)*.9)),u=s(d=>Math.max(1,Math.round(d/4)),"u"),b=Math.max(2,(n-c)/2),p=Math.max(2,(r-c)/2),w=(0,screencap_grid_cover_1.onboardingSplit)("col",[u(b),u(c),u(b)],[null,a,null]);return(0,screencap_grid_cover_1.onboardingSplit)("row",[u(p),u(c),u(p)],[null,w,null])}),"buildVisual")},{name:"finish",durationMs:3800,eyebrow:"MAKE IT YOURS",title:"Order, color, aspect.",body:"Order picks the sweep: diag, scatter, cascade, radial. Presets pair ink and background \u2014 or override both. Render at your logo's own aspect for an undistorted mark.",detail:"MAKE renders exactly what the preview shows",buildVisual:s((e,t,n)=>{const r=n*.86*.85,o=s(a=>{const c=Math.max(11,Math.min(e.body,Math.floor(r*.94/(a.length*.62))));return(0,screencap_grid_cover_1.onboardingSplit)("col",[2,1,17],[cardTile(P.accent,{radius:.5}),null,(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:a,fontSize:c,color:P.textLo,hAlign:"left",label:a.slice(0,22).toLowerCase()}))])},"row"),l=(0,screencap_grid_cover_1.onboardingGuttered)("row",[o("Order: diag \xB7 scatter \xB7 cascade \xB7 radial"),o("Light / dark presets, or your own ink + background"),o("fit: contain letterboxes \xB7 fill stretches"),o("Match the canvas to your logo's aspect")],10,2);return(0,screencap_grid_cover_1.onboardingOverlay)(cardTile(P.surface,{radius:.08,stroke:P.border}),padded(l,7))},"buildVisual")}];function beatProgress(e,t){const n=(0,screencap_grid_cover_1.onboardingGuttered)("col",BEATS.map((o,l)=>cardTile(l===e?P.accent:l<e?"#7c4a12":P.border,{radius:.5})),3,2),r=(0,screencap_grid_cover_1.onboardingLeaf)((0,screencap_grid_cover_1.onboardingTextSource)({text:`${e+1} / ${BEATS.length}`,fontSize:t.micro,color:P.textLo,hAlign:"left",label:"tutorial progress"}));return(0,screencap_grid_cover_1.onboardingSplit)("col",[30,12,16,30,12],[null,r,null,n,null])}s(beatProgress,"beatProgress");function buildBeat(e,t,n,r){const o=(0,screencap_grid_cover_1.onboardingTypeRamp)(n,r),l=r>n*.9,a=l?n*.86:n*.34,c=Math.round(n*(l?.88:.51)),u=Math.round(r*(l?.47:.83)),b=s(i=>{const h=e.buildVisual(o,i,c,u),S=Math.round(r*(l?.33:.83)),x=s(v=>S*v/56,"bandPx"),M=(0,screencap_grid_cover_1.onboardingSplit)("row",[3,4,15,20,3,6,5],[null,fittedTextBlock({text:e.eyebrow,fontSize:o.label,color:P.accent,cellWidthPx:a,bandPx:x(4),hAlign:"left",fadeDelaySec:.04,label:"beat eyebrow"}),fittedTextBlock({text:e.title,fontSize:o.headline,color:P.textHi,cellWidthPx:a,bandPx:x(15),hAlign:"left",widthFrac:.9,fadeDelaySec:.08,label:"beat title"}),fittedTextBlock({text:e.body,fontSize:o.body,color:P.textLo,cellWidthPx:a,bandPx:x(20),hAlign:"left",widthFrac:.91,fadeDelaySec:.12,label:"beat body"}),null,fittedTextBlock({text:e.detail,fontSize:o.micro,color:P.accentSoft,cellWidthPx:a,bandPx:x(6),hAlign:"left",fadeDelaySec:.16,label:"beat detail"}),null]),k=beatProgress(t,o);return l?(0,screencap_grid_cover_1.onboardingSplit)("row",[5,33,3,47,3,4,5],[null,(0,screencap_grid_cover_1.onboardingSplit)("col",[7,86,7],[null,M,null]),null,(0,screencap_grid_cover_1.onboardingSplit)("col",[6,88,6],[null,h,null]),null,k,null]):(0,screencap_grid_cover_1.onboardingSplit)("row",[7,83,2,5,3],[null,(0,screencap_grid_cover_1.onboardingSplit)("col",[5,34,4,51,6],[null,M,null,h,null]),null,k,null])},"assemblePage"),p=s(i=>(0,screencap_grid_cover_1.onboardingOverlay)(cardTile(P.surface,{radius:.06,stroke:P.border}),padded(i,6)),"cardShell"),w=[],d=b(()=>{const i=(0,template_utils_1.makeColorTile)(P.raised);return w.push(i),p((0,screencap_grid_cover_1.onboardingLeaf)(i))}),m=(0,template_utils_1.resolveDocFrames)({kind:"mosaic_document",version:1,m0:d.m0,sources:d.sources,assets:{}},n,r),f=w.map(i=>m.framesByLogical[d.sources.indexOf(i)]);let g=0;const y=b(i=>{const h=f[g++],S=h?i(Math.round(h.width),Math.round(h.height)):i(320,240);return p(S)});return{doc:{kind:"mosaic_document",version:1,assets:{},size:{width:n,height:r},backgroundColor:P.bg,m0:y.m0,sources:y.sources},durationMs:e.durationMs}}s(buildBeat,"buildBeat");function renderLogoAnimateTutorial(e){var t;const n=Math.max(1,Math.round(e.target.width)),r=Math.max(1,Math.round(e.target.height)),o=BEATS.map((l,a)=>{const{doc:c,durationMs:u}=buildBeat(l,a,n,r);return{name:l.name,label:l.title,durationMs:u,file:c}});return{kind:"mosaic_pipeline",version:1,fps:(t=e.target.fps)!==null&&t!==void 0?t:TUTORIAL_FPS,durationMs:o.reduce((l,a)=>l+a.durationMs,0),defaultTransition:{type:"cut"},backgroundColor:P.bg,steps:o}}s(renderLogoAnimateTutorial,"renderLogoAnimateTutorial");
|
|
@@ -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 m=Object.defineProperty;var Y=(o,t)=>m(o,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.STAMP_DATE_FORMATS=exports.CREATION_TIME_TAG=exports.APPLE_CREATION_TAG=void 0,exports.extractCreationTimestampRaw=extractCreationTimestampRaw,exports.parseVideoTimestamp=parseVideoTimestamp,exports.formatVideoTimestamp=formatVideoTimestamp,exports.APPLE_CREATION_TAG="com.apple.quicktime.creationdate",exports.CREATION_TIME_TAG="creation_time",exports.STAMP_DATE_FORMATS=["YYYY-MM-DD","YYYY-MM-DD HH:mm","MMM D, YYYY","D MMM YYYY","MM/DD/YYYY","DD.MM.YYYY"];const MONTHS_EN=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function extractCreationTimestampRaw(o){var t,c,u,a,i,r,s,n;if(!o)return null;const e=(u=(c=(t=o.format)===null||t===void 0?void 0:t.tags)===null||c===void 0?void 0:c[exports.APPLE_CREATION_TAG])!==null&&u!==void 0?u:(a=o.tags)===null||a===void 0?void 0:a[exports.APPLE_CREATION_TAG];if(e&&e.trim().length>0)return e.trim();const l=(r=(i=o.tags)===null||i===void 0?void 0:i[exports.CREATION_TIME_TAG])!==null&&r!==void 0?r:(n=(s=o.format)===null||s===void 0?void 0:s.tags)===null||n===void 0?void 0:n[exports.CREATION_TIME_TAG];return l&&l.trim().length>0?l.trim():null}Y(extractCreationTimestampRaw,"extractCreationTimestampRaw");const TS_RE=/^(\d{4})-(\d{2})-(\d{2})(?:[T ](\d{2}):(\d{2})(?::(\d{2})(?:\.\d+)?)?)?\s*(Z|z|[+-]\d{2}:?\d{2})?$/;function parseVideoTimestamp(o){if(!o)return null;const t=TS_RE.exec(o.trim());if(!t)return null;const c=Number(t[1]),u=Number(t[2]),a=Number(t[3]),i=t[4]!==void 0?Number(t[4]):0,r=t[5]!==void 0?Number(t[5]):0,s=t[6]!==void 0?Number(t[6]):0;if(u<1||u>12||a<1||a>31||i>23||r>59||s>60)return null;let n=null;const e=t[7];if(e!==void 0)if(e==="Z"||e==="z")n=0;else{const T=e.startsWith("-")?-1:1,d=Number(e.slice(1,3)),M=Number(e.slice(-2));if(d>23||M>59)return null;n=T*(d*60+M)}const l=Date.UTC(c,u-1,a,i,r,s);return{epochMs:n===null?l:l-n*6e4,offsetMinutes:n}}Y(parseVideoTimestamp,"parseVideoTimestamp");function formatVideoTimestamp(o,t,c){var u;const a=(u=c??o.offsetMinutes)!==null&&u!==void 0?u:0,i=new Date(o.epochMs+a*6e4),r=i.getUTCFullYear(),s=i.getUTCMonth()+1,n=i.getUTCDate(),e=Y(l=>String(l).padStart(2,"0"),"p2");switch(t){case"YYYY-MM-DD":return`${r}-${e(s)}-${e(n)}`;case"YYYY-MM-DD HH:mm":return`${r}-${e(s)}-${e(n)} ${e(i.getUTCHours())}:${e(i.getUTCMinutes())}`;case"MMM D, YYYY":return`${MONTHS_EN[s-1]} ${n}, ${r}`;case"D MMM YYYY":return`${n} ${MONTHS_EN[s-1]} ${r}`;case"MM/DD/YYYY":return`${e(s)}/${e(n)}/${r}`;case"DD.MM.YYYY":return`${e(n)}.${e(s)}.${r}`;default:{const l=t;throw new Error(`formatVideoTimestamp: unknown format ${String(l)}`)}}}Y(formatVideoTimestamp,"formatVideoTimestamp");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var a=Object.defineProperty;var e=(t,r)=>a(t,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.parseVideoTimestamp=exports.formatVideoTimestamp=exports.extractCreationTimestampRaw=exports.STAMP_DATE_FORMATS=exports.MetadataStampV1=void 0;var metadata_stamp_1=require("./metadata-stamp");Object.defineProperty(exports,"MetadataStampV1",{enumerable:!0,get:e(function(){return metadata_stamp_1.MetadataStampV1},"get")});var format_date_1=require("./format-date");Object.defineProperty(exports,"STAMP_DATE_FORMATS",{enumerable:!0,get:e(function(){return format_date_1.STAMP_DATE_FORMATS},"get")}),Object.defineProperty(exports,"extractCreationTimestampRaw",{enumerable:!0,get:e(function(){return format_date_1.extractCreationTimestampRaw},"get")}),Object.defineProperty(exports,"formatVideoTimestamp",{enumerable:!0,get:e(function(){return format_date_1.formatVideoTimestamp},"get")}),Object.defineProperty(exports,"parseVideoTimestamp",{enumerable:!0,get:e(function(){return format_date_1.parseVideoTimestamp},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var C=Object.defineProperty;var p=(t,e)=>C(t,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.MetadataStampV1=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),format_date_1=require("./format-date"),onboarding_cover_1=require("../../../_shared/onboarding-cover"),propsSchema=(0,template_utils_1.definePropsSchema)({sourceIds:{type:"media[]",required:!0,description:"Videos to stamp \u2014 pick a folder, one or more files, or drag-and-drop. One stamped output per input.",meta:{ui:{label:"Source(s)",order:1},control:{multiple:!0,picker:"folder",accept:["video"]}}},stampField:{type:"string",required:!1,description:`What to stamp: the video's creation date from its metadata ("creation-date"), its filename, or fixed custom text.`,meta:{constraints:{oneOf:["creation-date","filename","custom"]},ui:{label:"Stamp",order:2}}},dateFormat:{type:"string",required:!1,description:"How the creation date is written on the video.",meta:{constraints:{oneOf:[...format_date_1.STAMP_DATE_FORMATS]},ui:{label:"Date Format",order:3,visibleWhen:{prop:"stampField",equals:"creation-date"}}}},fallbackText:{type:"string",required:!1,description:"Stamped when a file carries no creation tag. Leave EMPTY to render such files clean, with no stamp at all.",meta:{control:{placeholder:"(empty = no stamp when metadata is missing)"},ui:{label:"Fallback Text",order:4,visibleWhen:{prop:"stampField",equals:"creation-date"}}}},utcOffsetMinutes:{type:"number",required:!1,description:"Show the date at this UTC offset (minutes). Unset uses the tag's own offset when it has one, else UTC \u2014 set this when cameras wrote plain UTC but you filmed in local time.",meta:{control:{placeholder:"tag offset, else UTC"},constraints:{min:-720,max:840},ui:{label:"UTC Offset (min)",order:5,visibleWhen:{prop:"stampField",equals:"creation-date"}}}},customText:{type:"string",required:!1,description:"Fixed text to stamp on every input.",meta:{control:{placeholder:"e.g. Summer 2024"},ui:{label:"Custom Text",order:6,visibleWhen:{prop:"stampField",equals:"custom"}}}},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:7}}},sizeRatio:{type:"number",required:!1,description:"Stamp chip height as a fraction of min(width, height).",meta:{constraints:{min:.02,max:.2},control:{flavor:"slider",step:.005},ui:{label:"Size",order:8}}},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:9}}},fontColor:{type:"string",required:!1,description:"Stamp text color.",meta:{constraints:{isColor:!0},control:{colorPicker:!0},ui:{label:"Text Color",order:10}}},chipColor:{type:"string",required:!1,description:"Color of the rounded chip behind the text.",meta:{constraints:{isColor:!0},control:{colorPicker:!0},ui:{label:"Chip Color",order:11}}},chipOpacity:{type:"number",required:!1,description:"Chip opacity \u2014 0 removes the chip and leaves bare text.",meta:{constraints:{min:0,max:1},control:{flavor:"slider",step:.05},ui:{label:"Chip Opacity",order:12}}}}),DEFAULTS={stampField:"creation-date",customText:"",fallbackText:"",dateFormat:"YYYY-MM-DD",position:"bottom-left",sizeRatio:.045,marginRatio:.022,fontColor:"#ffffff",chipColor:"#000000",chipOpacity:.35},REF_FONT_PX=100,TEXT_WIDTH_PAD=1.04,CHIP_PAD_X=.55,CHIP_PAD_Y=.3,CHIP_RADIUS_FRAC=.22,ERROR_STEP_MS=1e3,ERROR_TITLE="Metadata Stamp";function basenameNoExt(t){var e;const o=(e=t.split(/[\\/]/).pop())!==null&&e!==void 0?e:t,a=o.lastIndexOf(".");return a>0?o.slice(0,a):o}p(basenameNoExt,"basenameNoExt");function resolveStampText(t,e,o){var a;if(t.stampField==="custom")return t.customText;if(t.stampField==="filename")return basenameNoExt((a=e.originalFileName)!==null&&a!==void 0?a:o);const r=(0,format_date_1.parseVideoTimestamp)((0,format_date_1.extractCreationTimestampRaw)(e));return r?(0,format_date_1.formatVideoTimestamp)(r,t.dateFormat,t.utcOffsetMinutes):t.fallbackText.length>0?t.fallbackText:null}p(resolveStampText,"resolveStampText");function buildChipChild(t,e,o,a){const r=(0,dsl_stdlib_1.roundedRectMask)(e,o,Math.max(1,Math.round(o*CHIP_RADIUS_FRAC))),i={...(0,template_utils_1.makeColorTile)(t,{mask:{kind:"inline-mask",localPath:r.localPath,bounds:r.bounds}}),editor:{owner:"template",label:"mstamp:chip"}};return{kind:"mosaic_document",version:1,m0:"F",sources:[a?(0,template_utils_1.bindProp)(i,a):i],assets:{},size:{width:e,height:o}}}p(buildChipChild,"buildChipChild");function buildTextChild(t,e,o,a,r,s){const i={type:"text",rasterizer:"svg",renderMode:{kind:"image"},layers:[{content:{kind:"literal",text:t},style:{fontSize:o,fontColor:e}}],editor:{owner:"template",label:"mstamp:text"}};return{kind:"mosaic_document",version:1,m0:"F",sources:[s?(0,template_utils_1.bindProps)(i,[{propKey:s.text},{propKey:s.color}]):i],assets:{},size:{width:a,height:r}}}p(buildTextChild,"buildTextChild");function buildStampedDoc(t){const{baseSource:e,baseAssets:o,canvasW:a,canvasH:r,text:s,knobs:i}=t,n=(0,template_utils_1.measureText)(s,{fontSize:REF_FONT_PX});if(!(n.width>0)||!(n.height>0))throw new Error("Stamp text measures to an empty box \u2014 provide non-empty text.");const c=n.width*TEXT_WIDTH_PAD/n.height,d=(c+2*CHIP_PAD_X)/(1+2*CHIP_PAD_Y),l=(0,template_utils_1.resolveStampRect)({canvasW:a,canvasH:r,position:i.position,sizeRatio:i.sizeRatio*d,sizeBasis:"min",marginRatio:i.marginRatio,contentAspect:d}),m=l.w*(c/(c+2*CHIP_PAD_X)),h=l.h/(1+2*CHIP_PAD_Y),f=Math.min(m/(n.width*TEXT_WIDTH_PAD),h/n.height),u=Math.max(4,Math.floor(REF_FONT_PX*f)),b=[];return i.chipOpacity>0&&b.push({child:buildChipChild(i.chipColor,l.w,l.h,t.bindToProps?"chipColor":void 0),opacity:i.chipOpacity,key:"chip"}),b.push({child:buildTextChild(s,i.fontColor,u,l.w,l.h,t.bindToProps?{text:"customText",color:"fontColor"}:void 0),key:"text"}),(0,template_utils_1.stampOnMedia)({baseSource:e,baseAssets:o,canvasW:a,canvasH:r,rect:l,layers:b})}p(buildStampedDoc,"buildStampedDoc");function buildPassthroughDoc(t,e,o,a){return{kind:"mosaic_document",version:1,m0:"F",sources:[t],assets:{...e},size:{width:o,height:a}}}p(buildPassthroughDoc,"buildPassthroughDoc");function coverBandChild(t,e){const o="METADATA STAMP - date chips read from each video's own tags",a="Point at a folder: one stamped output per input. Files without tags use your fallback or pass through clean.",r=p((n,c,d)=>Math.max(d,Math.min(n,Math.floor(t*.96/(c.length*.62)))),"capW"),s=r(Math.max(11,Math.round(e*.3)),o,11),i=r(Math.max(10,Math.round(e*.21)),a,10);return{kind:"mosaic_document",version:1,m0:"F{F}",sources:[{...(0,template_utils_1.makeColorTile)("#161b22"),editor:{owner:"template",label:"mstamp:cover-band-bg"}},{type:"text",visual:{backgroundColor:"black@0"},layers:[{content:{kind:"literal",text:o},style:{fontSize:s,fontColor:"#eaeef2"},placement:{hAlign:"left",vAlign:"top",padding:{left:.02,top:.14}}},{content:{kind:"literal",text:a},style:{fontSize:i,fontColor:"#8b949e"},placement:{hAlign:"left",vAlign:"bottom",padding:{left:.02,bottom:.14}}}],editor:{owner:"template",label:"mstamp:cover-band"}}],assets:{},size:{width:t,height:e}}}p(coverBandChild,"coverBandChild");function errorStep(t,e,o,a){return{name:t,label:e,durationMs:ERROR_STEP_MS,file:(0,template_utils_1.makeErrorMosaic)(o,{title:ERROR_TITLE,width:a.target.width,height:a.target.height})}}p(errorStep,"errorStep");function buildMetadataStampStep(t){const{inputPath:e,stepName:o,knobs:a,ctx:r}=t,s=basenameNoExt(e),i=r.media[(0,types_1.asAssetId)(e)];if(!i||!(i.width>0)||!(i.height>0))return errorStep(o,s,`No probed dimensions for input: ${e}`,r);if(i.kind!=="video")return errorStep(o,s,`Input is not a video (kind: ${i.kind}): ${e}`,r);if(!(i.durationMs!=null&&i.durationMs>0))return errorStep(o,s,`Video input has no probed duration: ${e}`,r);const n=i.width,c=i.height;try{const d=(0,types_1.asAssetId)((0,template_utils_1.slugifyAssetKeyFromPath)(e)),l={[d]:{kind:"file",path:e,mediaType:"video"}},m={type:"media",mediaType:"video",assetId:d,placement:{fit:"cover"},editor:{owner:"template",label:"mstamp:base"}},h=resolveStampText(a,i,e),f=h===null||h.trim().length===0?buildPassthroughDoc(m,l,n,c):buildStampedDoc({baseSource:m,baseAssets:l,canvasW:n,canvasH:c,text:h.trim(),knobs:a,bindToProps:!0}),u={kind:"video",container:"mp4"};return{name:o,label:s,durationMs:Math.max(1,Math.round(i.durationMs)),file:{...f,format:u}}}catch(d){return errorStep(o,s,`Metadata stamp failed for ${e}: ${d instanceof Error?d.message:String(d)}`,r)}}p(buildMetadataStampStep,"buildMetadataStampStep"),exports.MetadataStampV1=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/media/metadata-stamp/v1"),label:"Metadata Stamp",version:1,description:"Stamp each video's creation date (read from its metadata) onto the video as a small chip \u2014 9 positions, deterministic date formats. Point it at a folder for one stamped output per input; files without metadata use your fallback text or pass through clean. (Defaults to bottom-left: the free tier's m0saic QR occupies bottom-right.)",capabilities:{tier:"core"},tags:["media","stamp","date","metadata","batch","utility","creators","animated","timestamp","overlay","video"],outputHints:{format:{kind:"video",container:"mp4"},width:1920,height:1080,fps:30,durationMs:1e4},propsSchema,defaultProps:DEFAULTS,async render(t,e){var o,a,r,s,i,n,c,d,l,m,h;const f=p(v=>(0,template_utils_1.makeErrorMosaic)(v,{title:ERROR_TITLE,width:e.target.width,height:e.target.height}),"fail"),u=(o=t.stampField)!==null&&o!==void 0?o:DEFAULTS.stampField;if(u!=="creation-date"&&u!=="filename"&&u!=="custom")return f(`Stamp field "${u}" is not recognized \u2014 use "creation-date", "filename", or "custom".`);const b=(a=t.dateFormat)!==null&&a!==void 0?a:DEFAULTS.dateFormat;if(!format_date_1.STAMP_DATE_FORMATS.includes(b))return f(`Date format "${b}" is not recognized.`);const x=((r=t.customText)!==null&&r!==void 0?r:DEFAULTS.customText).trim();if(u==="custom"&&x.length===0)return f('Stamp field is "custom" but Custom Text is empty \u2014 provide the text to stamp.');const g=(s=t.sourceIds)!==null&&s!==void 0?s:[];if(g.length===0)return f('Missing required "Source(s)": pick a folder, one or more files, or drag-and-drop.');const T={stampField:u,customText:x,fallbackText:((i=t.fallbackText)!==null&&i!==void 0?i:DEFAULTS.fallbackText).trim(),dateFormat:b,...t.utcOffsetMinutes!==void 0?{utcOffsetMinutes:t.utcOffsetMinutes}:{},position:(n=t.position)!==null&&n!==void 0?n:DEFAULTS.position,sizeRatio:(c=t.sizeRatio)!==null&&c!==void 0?c:DEFAULTS.sizeRatio,marginRatio:(d=t.marginRatio)!==null&&d!==void 0?d:DEFAULTS.marginRatio,fontColor:(l=t.fontColor)!==null&&l!==void 0?l:DEFAULTS.fontColor,chipColor:(m=t.chipColor)!==null&&m!==void 0?m:DEFAULTS.chipColor,chipOpacity:(h=t.chipOpacity)!==null&&h!==void 0?h:DEFAULTS.chipOpacity},y=(0,template_utils_1.buildStepNames)(g);return{kind:"mosaic_pipeline",version:1,emit:"multi",steps:g.map((v,M)=>buildMetadataStampStep({inputPath:v,stepName:y[M],knobs:T,ctx:e}))}},async renderCover(t,e){var o,a;const r=(0,onboarding_cover_1.brandedCoverHeroBox)(e,"band"),s=typeof process<"u"&&!!(!((o=process.versions)===null||o===void 0)&&o.node),n=s?{"mstamp-cover-frame":{kind:"file",path:p(m=>m.includes("/app.asar/")?m.split("/app.asar/").join("/app.asar.unpacked/"):m.split("\\app.asar\\").join("\\app.asar.unpacked\\"),"unpackedAsar")(`${__dirname}/assets/cover-frame.jpg`),mediaType:"image"}}:{},c=s?{type:"media",mediaType:"image",assetId:"mstamp-cover-frame",placement:{fit:"cover"},editor:{owner:"template",label:"mstamp:cover-frame"}}:{...(0,template_utils_1.makeColorTile)("#21262d"),editor:{owner:"template",label:"mstamp:cover-frame"}},d={stampField:"creation-date",customText:"",fallbackText:"",dateFormat:"YYYY-MM-DD",position:DEFAULTS.position,sizeRatio:.06,marginRatio:DEFAULTS.marginRatio,fontColor:DEFAULTS.fontColor,chipColor:DEFAULTS.chipColor,chipOpacity:.5},l=buildStampedDoc({baseSource:c,baseAssets:n,canvasW:r.width,canvasH:r.height,text:"2024-07-15",knobs:d});return(0,onboarding_cover_1.buildBrandedCover)({ctx:e,variant:"band",copy:{productName:"Metadata Stamp",title:"Date chips read from each video's own tags."},hero:p(m=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(l),m.borderStrong),"hero"),heroAssets:{...n,...(a=l.assets)!==null&&a!==void 0?a:{}},children:l.children})}}),(0,template_utils_1.registerTemplate)(exports.MetadataStampV1),exports.default=exports.MetadataStampV1;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _=Object.defineProperty;var d=(e,r)=>_(e,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.BRAND_M_DICT_ID=void 0,exports.buildBrandMCenterDoc=buildBrandMCenterDoc;const dictionary_1=require("@m0saic/dictionary"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils");exports.BRAND_M_DICT_ID="brand/m-33";function buildBrandMCenterDoc(e){var r,t,n;const o=dictionary_1.registry.byId[exports.BRAND_M_DICT_ID];if(!o)throw new Error(`${(r=e.label)!==null&&r!==void 0?r:"QrCode"}: dictionary entry "${exports.BRAND_M_DICT_ID}" not found; required for the default centre M.`);const l=(0,dictionary_1.getSourceOrderStableKeys)(o),c=(t=o.masks)!==null&&t!==void 0?t:{},a=Array.from({length:o.sourceCount},(m,u)=>{const i=c[l[u]],s=i?{kind:"inline-mask",localPath:i.localPath,bounds:i.bounds}:void 0;return(0,template_utils_1.makeColorTile)(e.mColor,s?{mask:s}:{})});return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(o.m0,`${(n=e.label)!==null&&n!==void 0?n:"QrCode"}-centerM`),sources:a,assets:{},size:{width:e.width,height:e.height},...e.bgColor!==void 0?{backgroundColor:(0,template_utils_1.solidBackground)(e.bgColor)}:{}}}d(buildBrandMCenterDoc,"buildBrandMCenterDoc");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _=Object.defineProperty;var i=(o,e)=>_(o,"name",{value:e,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildDiagonalRanks=buildDiagonalRanks,exports.buildTileAlphaExpr=buildTileAlphaExpr,exports.buildPseudoRanks=buildPseudoRanks,exports.buildModuleAlphaExpr=buildModuleAlphaExpr,exports.buildModuleGleamFactor=buildModuleGleamFactor,exports.buildMTileAlphaExpr=buildMTileAlphaExpr,exports.buildTileOffsetExpr=buildTileOffsetExpr;function fixed(o){return o.toFixed(3)}i(fixed,"fixed");function buildDiagonalRanks(o){const e=o.length;if(e===0)return[];if(e===1)return[0];const c=o.map((t,n)=>({i:n,t}));c.sort((t,n)=>{const a=t.t.x+t.t.y,r=n.t.x+n.t.y;return a!==r?a-r:t.t.x!==n.t.x?t.t.x-n.t.x:t.t.logicalIndex-n.t.logicalIndex});const s=new Array(e);for(let t=0;t<e;t+=1)s[c[t].i]=t/(e-1);return s}i(buildDiagonalRanks,"buildDiagonalRanks");function buildTileAlphaExpr(o,e){const c=o*e.spawnDurSec,s=Math.max(.001,e.tileFadeSec),t=`min(1,max(0,(t-${fixed(c)})/${fixed(s)}))`;return`(${t}*${t}*(3-2*${t}))`}i(buildTileAlphaExpr,"buildTileAlphaExpr");function buildPseudoRanks(o){const e=o.length;if(e===0)return[];if(e===1)return[0];const c=2654435761,s=o.map((n,a)=>({i:a,score:(n.logicalIndex*c>>>0)/4294967296,logicalIndex:n.logicalIndex}));s.sort((n,a)=>n.score!==a.score?n.score-a.score:n.logicalIndex-a.logicalIndex);const t=new Array(e);for(let n=0;n<e;n+=1)t[s[n].i]=n/(e-1);return t}i(buildPseudoRanks,"buildPseudoRanks");function buildModuleAlphaExpr(o,e){const{spawnDurSec:c,tileFadeSec:s,exitStartSec:t,fadeOutSec:n}=e,a=o*c,r=Math.max(.001,s),$=Math.max(.001,n),l=`min(1,max(0,(t-${fixed(a)})/${fixed(r)}))`,u=`(${l}*${l}*(3-2*${l}))`,d=`min(1,max(0,(t-${fixed(t)})/${fixed($)}))`,x=`(1-(${d}*${d}*(3-2*${d})))`;return`(${u})*(${x})`}i(buildModuleAlphaExpr,"buildModuleAlphaExpr");const GLEAM_DEFAULTS={sweepSec:2.4,minAlpha:.82,width:.22};function buildModuleGleamFactor(o,e={}){var c,s,t;const n=Math.max(.1,(c=e.sweepSec)!==null&&c!==void 0?c:GLEAM_DEFAULTS.sweepSec),a=Math.max(0,Math.min(1,(s=e.minAlpha)!==null&&s!==void 0?s:GLEAM_DEFAULTS.minAlpha)),r=Math.max(.01,(t=e.width)!==null&&t!==void 0?t:GLEAM_DEFAULTS.width),$=`mod(t,${fixed(n)})/${fixed(n)}`,l=`(${fixed(r)}/2)`,u=`abs(${fixed(o)}-(${$}))`,d=`abs(${fixed(o)}-((${$})-1))`,x=`abs(${fixed(o)}-((${$})+1))`,m=`max(min(1-(${`min(min(${u},${d}),${x})`})/(${l}),1),0)`,p=`(${m})*(${m})*(3-2*(${m}))`;return`(${fixed(a)}+(1-${fixed(a)})*${p})`}i(buildModuleGleamFactor,"buildModuleGleamFactor");function buildMTileAlphaExpr(o,e){const{mStartSec:c,mInDurSec:s,mTileFadeSec:t,baseMin:n,baseMax:a,basePulseSec:r,shimmerSec:$,shimmerWidth:l,shimmerAmp:u,exitStartSec:d,fadeOutSec:x}=e,h=Math.max(.001,t),m=Math.max(0,s-h),p=c+o*m,f=`min(1,max(0,(t-${fixed(p)})/${fixed(h)}))`,A=`(${f}*${f}*(3-2*${f}))`,g=`(${fixed(n)})+(${fixed(a)}-${fixed(n)})*0.5*(1-cos(2*PI*t/${fixed(Math.max(.01,r))}))`,S=`mod(t,${fixed(Math.max(.01,$))})/${fixed(Math.max(.01,$))}`,w=`(${fixed(Math.max(.001,l))}/2)`,F=`abs(${fixed(o)}-(${S}))`,E=`abs(${fixed(o)}-((${S})-1))`,I=`abs(${fixed(o)}-((${S})+1))`,M=`max(min(1-(${`min(min(${F},${E}),${I})`})/(${w}),1),0)`,T=`(${M})*(${M})*(3-2*(${M}))`,v=`(${fixed(u)})*${T}`,D=`max(min((${g})+(${v}),1),0)`,b=`min(1,max(0,(t-${fixed(d)})/${fixed(Math.max(.001,x))}))`,P=`(1-(${b}*${b}*(3-2*${b})))`;return`(${A})*(${D})*${P}`}i(buildMTileAlphaExpr,"buildMTileAlphaExpr");function buildTileOffsetExpr(o,e){if(e.offsetPx===0)return"0";const c=o*e.spawnDurSec,s=Math.max(.001,e.tileFadeSec),t=`min(1,max(0,(t-${fixed(c)})/${fixed(s)}))`,n=`(${t}*${t}*(3-2*${t}))`;return`(${fixed(e.offsetPx)}*(1-${n}))`}i(buildTileOffsetExpr,"buildTileOffsetExpr");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var t=(e,r)=>u(e,"name",{value:r,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.QrAnimate=void 0;var qr_animate_1=require("./qr-animate");Object.defineProperty(exports,"QrAnimate",{enumerable:!0,get:t(function(){return qr_animate_1.QrAnimate},"get")}),Object.defineProperty(exports,"default",{enumerable:!0,get:t(function(){return __importDefault(qr_animate_1).default},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var Oe=Object.defineProperty;var A=(e,r)=>Oe(e,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.QrAnimate=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),dictionary_1=require("@m0saic/dictionary"),expressions_1=require("./expressions"),BRAND_ORANGE="#f97316",BG_LIGHT="#ffffff",BG_DARK="#000000",DEFAULT_TILE_COLOR=BRAND_ORANGE,DEFAULT_M_COLOR=BRAND_ORANGE,DEFAULT_VARIANT="light",DEFAULT_SPAWN_DUR_MS=1e3,DEFAULT_TILE_FADE_MS=220,DEFAULT_TILE_OFFSET_PX=1,DEFAULT_CENTRE_LABEL="safe-area",DEFAULT_M_DELAY_MS=200,DEFAULT_M_IN_DUR_MS=700,DEFAULT_M_TILE_FADE_MS=220,DEFAULT_IDLE_DUR_MS=4e3,DEFAULT_FADE_OUT_DUR_MS=700,M_LOADING_BASE_MIN=.55,M_LOADING_BASE_MAX=.85,M_LOADING_BASE_PULSE_SEC=1.6,M_LOADING_SHIMMER_SEC=1.2,M_LOADING_SHIMMER_WIDTH=.22,M_LOADING_SHIMMER_AMP=.75,M_DICT_ID="brand/m-33",M_REF="m_logo",DEFAULT_EYE_OUTER_RADIUS=.35,DEFAULT_EYE_DOT_RADIUS=1,DEFAULT_MATRIX_SIZE=41,DEFAULT_QUIET_ZONE=4,FINDER_SPAN=7,EYE_FADE_RANK=.15,QR_INNER_REF="qr_inner",DEFAULT_URL_LABEL="https://m0saic.io",URL_TEXT_COLOR_LIGHT_VARIANT="#111111",URL_TEXT_COLOR_DARK_VARIANT="#f5f5f5",propsSchema=(0,template_utils_1.definePropsSchema)({qrM0:{type:"m0c",required:!0,description:"m0 (or m0c) string describing the QR layout. The 'm0c' prop type lets the editor surface a Layout picker that supports per-cell labels \u2014 step 2 reads a centre safe-area label to drive the M region phase."},spawnDurMs:{type:"number",required:!1,description:"Stagger duration: time from first tile to last tile starting their fade-in.",meta:{constraints:{min:100,max:6e4},ui:{label:"Spawn (ms)"}}},tileFadeMs:{type:"number",required:!1,description:"Per-tile fade-in duration.",meta:{constraints:{min:0,max:1e4},ui:{label:"Fade (ms)"}}},tileOffsetPx:{type:"number",required:!1,description:"Pixel offset (down/right) each tile starts from.",meta:{constraints:{min:0,max:100},ui:{label:"Settle (px)"}}},variant:{type:"string",required:!1,description:"Brand variant: 'light' (white bg) or 'dark' (black bg). Modules stay brand orange.",meta:{constraints:{oneOf:["light","dark"]},ui:{label:"Variant"}}},bgColor:{type:"string",required:!1,description:"Background colour override. Defaults from variant.",meta:{constraints:{isColor:!0},ui:{label:"Background"},control:{colorPicker:!0,placeholder:BG_LIGHT}}},tileColor:{type:"string",required:!1,description:"Module fill colour.",meta:{constraints:{isColor:!0},ui:{label:"Tile color"},control:{colorPicker:!0,placeholder:DEFAULT_TILE_COLOR}}},qrLabels:{type:"json",required:!1,description:"m0c labels map (stableKey \u2192 { text, color? }). Optional; required for the M phase.",meta:{ui:{label:"Labels"}}},mColor:{type:"string",required:!1,description:"M region fill colour.",meta:{constraints:{isColor:!0},ui:{label:"M color"},control:{colorPicker:!0,placeholder:DEFAULT_M_COLOR}}},mDelayMs:{type:"number",required:!1,description:"Pause between modules done and M entrance starting.",meta:{constraints:{min:0,max:6e4},ui:{label:"M delay (ms)"}}},mInDurMs:{type:"number",required:!1,description:"M entrance window (all 33 rects converge by this).",meta:{constraints:{min:0,max:1e4},ui:{label:"M in (ms)"}}},mTileFadeMs:{type:"number",required:!1,description:"Per-rect smoothstep duration during M entrance.",meta:{constraints:{min:0,max:1e4},ui:{label:"M rect fade (ms)"}}},idleDurMs:{type:"number",required:!1,description:"Idle hold duration after M entrance, before fade-out.",meta:{constraints:{min:0,max:6e4},ui:{label:"Idle (ms)"}}},fadeOutDurMs:{type:"number",required:!1,description:"Global fade-out duration (every tile drops to 0 by render end).",meta:{constraints:{min:0,max:1e4},ui:{label:"Fade out (ms)"}}},centreLabel:{type:"string",required:!1,description:"Label text identifying the centre safe-area cell in qrLabels.",meta:{ui:{label:"Centre label"}}},gleam:{type:"boolean",required:!1,description:"Add a travelling per-cell shine over the QR modules (stacks under the M gleam).",meta:{ui:{label:"Module gleam"}}},moduleBorderRadius:{type:"number",required:!1,description:"Per-module corner radius (0..1). 0 = square (default). 1.0 = circular dots \u2014 gives the QR a dot-matrix look. Doesn't touch the centre M or URL strip.",meta:{constraints:{min:0,max:1},ui:{label:"Module border radius"}}},eyes:{type:"json",required:!1,description:"Render the 3 finder patterns as single rounded 'Instagram' eyes (true, or an object with outerBorderRadius / innerLightBorderRadius / innerDotBorderRadius). Underlying finder cells are suppressed.",meta:{ui:{label:"Rounded eyes"}}},matrixSize:{type:"number",required:!1,description:"QR matrix side length in modules (no quiet zone). Only used with `eyes`. Default 41 (brand QR / version 6).",meta:{constraints:{min:21,max:177},ui:{label:"Matrix size"}}},quietZone:{type:"number",required:!1,description:"Quiet-zone modules per side. Only used with `eyes`. Default 4.",meta:{constraints:{min:0,max:16},ui:{label:"Quiet zone"}}},urlLabel:{type:"string",required:!1,description:"Human-readable URL rendered in a strip below the QR (active when canvas is taller than wide). Empty string disables.",meta:{ui:{label:"URL label"}}}});exports.QrAnimate={id:(0,types_1.asTemplateId)("@m0saic/media/qr/animate/v1"),label:"QR \u2014 Animated Tile Spawn",version:1,lattice:{mode:"bitmap"},description:"Deterministic per-tile spawn-in animation for a pre-baked QR m0 string. Engine-internal: feeds `tools/build-qr-rendered.cjs` which produces the committed mp4 loops consumed by `qr-stamp/video/v2`. User-facing callers should pick `Brand QR \u2014 Spawn` (`qr-animate/v2`) instead, which accepts a URL directly.",capabilities:{tier:"core"},internal:!0,tags:["brand","qr","animated","internal"],outputHints:{fps:30,durationMs:DEFAULT_SPAWN_DUR_MS+DEFAULT_TILE_FADE_MS+DEFAULT_M_DELAY_MS+DEFAULT_M_IN_DUR_MS+DEFAULT_IDLE_DUR_MS+DEFAULT_FADE_OUT_DUR_MS,width:1222,height:1222,note:"Square QR; pixelate-in \u2192 M assembles \u2192 idle breathe \u2192 fade out."},propsSchema,defaultProps:{quietZone:4,matrixSize:41,moduleBorderRadius:0,variant:DEFAULT_VARIANT,spawnDurMs:DEFAULT_SPAWN_DUR_MS,tileFadeMs:DEFAULT_TILE_FADE_MS,idleDurMs:DEFAULT_IDLE_DUR_MS,fadeOutDurMs:DEFAULT_FADE_OUT_DUR_MS,tileOffsetPx:DEFAULT_TILE_OFFSET_PX,tileColor:DEFAULT_TILE_COLOR,mColor:DEFAULT_M_COLOR,mDelayMs:DEFAULT_M_DELAY_MS,mInDurMs:DEFAULT_M_IN_DUR_MS,mTileFadeMs:DEFAULT_M_TILE_FADE_MS,centreLabel:DEFAULT_CENTRE_LABEL,gleam:!1,urlLabel:DEFAULT_URL_LABEL},async render(e,r){var a,i,l,d,h,g,D,p,o,_,x,S,U,B,N,Q,$,G,H,j,z,K,Z,W,X;const V=e.qrM0,oe=e.qrLabels,xe=(i=(a=e.gleam)!==null&&a!==void 0?a:this.defaultProps.gleam)!==null&&i!==void 0?i:!1,se=(l=e.variant)!==null&&l!==void 0?l:this.defaultProps.variant,y=(d=e.bgColor)!==null&&d!==void 0?d:se==="dark"?BG_DARK:BG_LIGHT,v=(h=e.spawnDurMs)!==null&&h!==void 0?h:this.defaultProps.spawnDurMs,R=(g=e.tileFadeMs)!==null&&g!==void 0?g:this.defaultProps.tileFadeMs,L=(D=e.tileOffsetPx)!==null&&D!==void 0?D:this.defaultProps.tileOffsetPx,E=(p=e.tileColor)!==null&&p!==void 0?p:this.defaultProps.tileColor,Se=(o=e.mColor)!==null&&o!==void 0?o:this.defaultProps.mColor,Ee=(_=e.mDelayMs)!==null&&_!==void 0?_:this.defaultProps.mDelayMs,ae=(x=e.mInDurMs)!==null&&x!==void 0?x:this.defaultProps.mInDurMs,Ae=(S=e.mTileFadeMs)!==null&&S!==void 0?S:this.defaultProps.mTileFadeMs,T=(U=e.idleDurMs)!==null&&U!==void 0?U:this.defaultProps.idleDurMs,q=(B=e.fadeOutDurMs)!==null&&B!==void 0?B:this.defaultProps.fadeOutDurMs,ve=(N=e.centreLabel)!==null&&N!==void 0?N:this.defaultProps.centreLabel,le=(($=(Q=e.urlLabel)!==null&&Q!==void 0?Q:this.defaultProps.urlLabel)!==null&&$!==void 0?$:"").trim(),de=(H=(G=e.moduleBorderRadius)!==null&&G!==void 0?G:this.defaultProps.moduleBorderRadius)!==null&&H!==void 0?H:0,M=(j=e.eyes)!==null&&j!==void 0?j:this.defaultProps.eyes,Y=M===!0||typeof M=="object"&&M!==null,J=typeof M=="object"&&M!==null?M:{},ee=(z=J.outerBorderRadius)!==null&&z!==void 0?z:DEFAULT_EYE_OUTER_RADIUS,ue=(K=J.innerLightBorderRadius)!==null&&K!==void 0?K:ee,ce=(Z=J.innerDotBorderRadius)!==null&&Z!==void 0?Z:DEFAULT_EYE_DOT_RADIUS,Re=(W=e.matrixSize)!==null&&W!==void 0?W:DEFAULT_MATRIX_SIZE,b=(X=e.quietZone)!==null&&X!==void 0?X:DEFAULT_QUIET_ZONE,te=Math.max(0,r.output.height-r.output.width),me=le.length>0&&te>0,fe=r.output.width,he=me?r.output.width:r.output.height,m=[];if((!V||V.trim().length===0)&&m.push("qrM0 is required (non-empty m0 string)"),v>=100&&v<=6e4||m.push(`spawnDurMs must be in [100, 60000] (got ${v})`),R>=0&&R<=1e4||m.push(`tileFadeMs must be in [0, 10000] (got ${R})`),L>=0&&L<=100||m.push(`tileOffsetPx must be in [0, 100] (got ${L})`),T>=0&&T<=6e4||m.push(`idleDurMs must be in [0, 60000] (got ${T})`),q>=0&&q<=1e4||m.push(`fadeOutDurMs must be in [0, 10000] (got ${q})`),m.length)return(0,template_utils_1.makeErrorMosaic)(m.join(" | "),{title:`${this.id} props`,width:r.output.width,height:r.output.height});let I=V,pe=[],f=0;if(Y){const t=Re+2*b,n=[{x:b,y:b},{x:t-b-FINDER_SPAN,y:b},{x:b,y:t-b-FINDER_SPAN}],s=String((0,template_utils_1.makeQrEyeChildDoc)({darkColor:E,backgroundColor:y,outerBorderRadius:ee,innerLightBorderRadius:ue,innerDotBorderRadius:ce}).m0),u=String((0,dsl_stdlib_1.placeRects)({rootW:t,rootH:t,rects:n.map(c=>({x:c.x,y:c.y,w:FINDER_SPAN,h:FINDER_SPAN,claimant:s}))}).m0);I=String((0,dsl_stdlib_1.addOverlayLayer)(I,u)),f=fe/t,pe=n.map(c=>({x0:c.x*f,y0:c.y*f,x1:(c.x+FINDER_SPAN)*f,y1:(c.y+FINDER_SPAN)*f}))}const _e=A(t=>{if(!Y)return!1;const n=t.x+t.width/2,s=t.y+t.height/2;return pe.some(u=>n>=u.x0&&n<u.x1&&s>=u.y0&&s<u.y1)},"frameInFinder"),F=(0,dsl_stdlib_1.queryFrames)(I,{width:fe,height:he}).logical();if(F.length===0)return(0,template_utils_1.makeErrorMosaic)("qrM0 contains no visible tiles to animate",{title:`${this.id} parse`,width:r.output.width,height:r.output.height});let k=-1;if(oe){let t=null;for(const[n,s]of Object.entries(oe))if(s.text===ve){t=n;break}if(t){const n=F.findIndex(s=>s.meta.stableKey===t);n>=0&&(k=n)}}const re=[];for(const t of F)t.logicalIndex!==k&&(_e(t)||re.push({x:t.x,y:t.y,logicalIndex:t.logicalIndex}));const Le=(0,expressions_1.buildPseudoRanks)(re),be=new Map;re.forEach((t,n)=>be.set(t.logicalIndex,Le[n]));const C=v/1e3,P=R/1e3,ye=C+P,Me=ye+Ee/1e3,w=Me+ae/1e3+T/1e3,O=q/1e3,ie=k>=0?buildMSubDoc({mColor:Se,bgColor:y,mStartSec:Me,mInDurSec:ae/1e3,mTileFadeSec:Ae/1e3,exitStartSec:w,fadeOutSec:O}):null,Te=F.map((t,n)=>{if(n===k&&ie)return{type:"mosaic",ref:M_REF};if(Y&&_e(t)){const Ce=(0,expressions_1.buildModuleAlphaExpr)(EYE_FADE_RANK,{spawnDurSec:C,tileFadeSec:P,exitStartSec:w,fadeOutSec:O}),ne=A((Pe,we)=>(0,template_utils_1.makeColorTile)(Pe,{overlay:{alpha:Ce},effects:{rounding:{borderRadius:we,cornerStyle:"rounded"}}}),"eyeTile");return t.width>=6*f?ne(E,ee):t.width>=4*f?ne(y,ue):t.width>=2*f?ne(E,ce):(0,template_utils_1.makeColorTile)(E,{overlay:{alpha:"0"}})}const s=be.get(n),u=(0,expressions_1.buildModuleAlphaExpr)(s,{spawnDurSec:C,tileFadeSec:P,exitStartSec:w,fadeOutSec:O}),c=xe?`(${u})*(${(0,expressions_1.buildModuleGleamFactor)(s)})`:u,De=(0,expressions_1.buildTileOffsetExpr)(s,{spawnDurSec:C,tileFadeSec:P,offsetPx:L});return(0,template_utils_1.makeColorTile)(E,{overlay:{alpha:c,xExpr:De,yExpr:De},...de>0?{effects:{rounding:{borderRadius:de,cornerStyle:"rounded"}}}:{}})}),ge={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(I,"QrAnimate"),sources:Te,assets:{},backgroundColor:y,...ie?{children:{[M_REF]:ie}}:{}};if(!me)return ge;const qe=se==="dark"?URL_TEXT_COLOR_DARK_VARIANT:URL_TEXT_COLOR_LIGHT_VARIANT,Ie=buildUrlAlphaExpr({modulesEndSec:ye,exitStartSec:w,fadeOutSec:O}),Fe=Math.max(16,Math.round(te*.85)),ke={type:"text",visual:{backgroundColor:y},layers:[{content:{kind:"literal",text:le},style:{fontSize:Fe,fontColor:qe},placement:{hAlign:"center",vAlign:"middle",xExpr:"(w-tw)/2",yExpr:"(h-th)/2"},overlay:{alpha:Ie}}]};return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.weightedSplit)([he,te],"row",{precision:100,mode:"literal"}),sources:[{type:"mosaic",ref:QR_INNER_REF},ke],assets:{},backgroundColor:y,children:{[QR_INNER_REF]:ge}}}};function buildUrlAlphaExpr(e){const{modulesEndSec:r,exitStartSec:a,fadeOutSec:i}=e,l=r.toFixed(3),d=a.toFixed(3),h=i.toFixed(3);return`if(lt(t,${l}),max(0,t/${l}),if(lt(t,${d}),1,max(0,1-(t-${d})/${h})))`}A(buildUrlAlphaExpr,"buildUrlAlphaExpr");function buildMSubDoc(e){var r,a;const i=dictionary_1.registry.byId[M_DICT_ID];if(!i)throw new Error(`qr-animate: dictionary entry "${M_DICT_ID}" not found; required for the M phase.`);const l=(0,dictionary_1.getSourceOrderStableKeys)(i),d=(r=i.rankSets)===null||r===void 0?void 0:r.diag,h=d?l.map(p=>{var o;return(o=d.ranks[p])!==null&&o!==void 0?o:0}):Array.from({length:i.sourceCount},(p,o)=>i.sourceCount<=1?0:o/(i.sourceCount-1)),g=(a=i.masks)!==null&&a!==void 0?a:{},D=Array.from({length:i.sourceCount},(p,o)=>{const _=g[l[o]],x=_?{kind:"inline-mask",localPath:_.localPath,bounds:_.bounds}:void 0,S=(0,expressions_1.buildMTileAlphaExpr)(h[o],{mStartSec:e.mStartSec,mInDurSec:e.mInDurSec,mTileFadeSec:e.mTileFadeSec,baseMin:M_LOADING_BASE_MIN,baseMax:M_LOADING_BASE_MAX,basePulseSec:M_LOADING_BASE_PULSE_SEC,shimmerSec:M_LOADING_SHIMMER_SEC,shimmerWidth:M_LOADING_SHIMMER_WIDTH,shimmerAmp:M_LOADING_SHIMMER_AMP,exitStartSec:e.exitStartSec,fadeOutSec:e.fadeOutSec});return(0,template_utils_1.makeColorTile)(e.mColor,{mask:x,overlay:{alpha:S}})});return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(i.m0,"QrAnimate.M"),sources:D,assets:{},backgroundColor:e.bgColor}}A(buildMSubDoc,"buildMSubDoc"),(0,template_utils_1.registerTemplate)(exports.QrAnimate),exports.default=exports.QrAnimate;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var t=(e,r)=>u(e,"name",{value:r,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.QrAnimateV2=void 0;var qr_animate_1=require("./qr-animate");Object.defineProperty(exports,"QrAnimateV2",{enumerable:!0,get:t(function(){return qr_animate_1.QrAnimateV2},"get")}),Object.defineProperty(exports,"default",{enumerable:!0,get:t(function(){return __importDefault(qr_animate_1).default},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.QrAnimateV2=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),expressions_1=require("../v1/expressions"),BRAND_ORANGE="#f97316",BG_LIGHT="#ffffff",BG_DARK="#000000",DEFAULT_VARIANT="light",DEFAULT_TILE_COLOR=BRAND_ORANGE,DEFAULT_SPAWN_DUR_MS=1e3,DEFAULT_TILE_FADE_MS=220,DEFAULT_HOLD_DUR_MS=600,DEFAULT_FADE_OUT_DUR_MS=700,DEFAULT_TILE_OFFSET_PX=1,DEFAULT_PACKING="multi",DEFAULT_DRIFT_PERCENT=0,propsSchema=(0,template_utils_1.definePropsSchema)({text:{type:"string",required:!1,description:"Text to encode as a QR at render time (URL, plain string, or structured payload). Required unless `svg` is provided.",meta:{control:{flavor:"url",placeholder:"https://www.m0saic.io"},ui:{label:"Text"}}},svg:{type:"string",required:!1,description:"Caller-supplied SVG. Bypasses QR generation. Required unless `text` is provided.",meta:{control:{placeholder:"from Text (QR)"},ui:{label:"SVG string"}}},driftPercent:{type:"number",required:!1,description:"Drift tolerance for grid inference (% of min canvas dim).",meta:{constraints:{min:0,max:5},ui:{label:"Drift %"}}},packing:{type:"string",required:!1,description:'Layer-packing strategy: "one" or "multi".',meta:{constraints:{oneOf:["one","multi"]},ui:{label:"Packing",hidden:!0}}},spawnDurMs:{type:"number",required:!1,description:"Stagger duration: time from first tile to last tile starting their fade-in.",meta:{constraints:{min:100,max:6e4},ui:{label:"Spawn (ms)"}}},tileFadeMs:{type:"number",required:!1,description:"Per-tile fade-in duration.",meta:{constraints:{min:0,max:1e4},ui:{label:"Fade (ms)"}}},holdDurMs:{type:"number",required:!1,description:"Hold duration at full alpha before fade-out begins.",meta:{constraints:{min:0,max:6e4},ui:{label:"Hold (ms)"}}},fadeOutDurMs:{type:"number",required:!1,description:"Global fade-out duration.",meta:{constraints:{min:0,max:1e4},ui:{label:"Fade out (ms)"}}},tileOffsetPx:{type:"number",required:!1,description:"Pixel offset (down/right) each tile starts from.",meta:{constraints:{min:0,max:100},ui:{label:"Settle (px)"}}},variant:{type:"string",required:!1,description:"Brand variant: 'light' (white bg) or 'dark' (black bg). Modules stay brand orange.",meta:{constraints:{oneOf:["light","dark"]},ui:{label:"Variant"}}},bgColor:{type:"string",required:!1,description:"Background colour override. Defaults from variant.",meta:{constraints:{isColor:!0},ui:{label:"Background"},control:{colorPicker:!0,placeholder:BG_LIGHT}}},tileColor:{type:"string",required:!1,description:"Module fill colour.",meta:{constraints:{isColor:!0},ui:{label:"Tile color"},control:{colorPicker:!0,placeholder:DEFAULT_TILE_COLOR}}},gleam:{type:"boolean",required:!1,description:"Add a travelling per-cell shine over the QR modules.",meta:{ui:{label:"Gleam"}}}});exports.QrAnimateV2={id:(0,types_1.asTemplateId)("@m0saic/media/qr/animate/v2"),label:"QR Spawn (v2, deprecated)",version:2,lattice:{mode:"bitmap"},description:"Animated QR \u2014 modules pixelate in with a staggered fade, hold, then fade out. Accepts any URL (or a caller-supplied SVG).",deprecated:{reason:"Merged into QR Code (media/qr/code/v1): the spawn is its Output mp4 mode (envelope under Animation; fade-out opt-in via fadeOutDurMs; text path expression-identical) and the caller-SVG hatch is advanced.svg. The unified card adds module styles, the carved centre, and static output from the same surface. Render-time gleam retired by design. Kept as the spawn reference.",replacement:(0,types_1.asTemplateId)("@m0saic/media/qr/code/v1"),since:"2026-07-22"},capabilities:{tier:"core"},tags:["brand","qr","animated","svg-to-mosaic"],outputHints:{fps:30,durationMs:DEFAULT_SPAWN_DUR_MS+DEFAULT_TILE_FADE_MS+DEFAULT_HOLD_DUR_MS+DEFAULT_FADE_OUT_DUR_MS,width:1222,height:1222,note:"Square QR; modules spawn-in \u2192 hold \u2192 fade out.",posterTimeMs:DEFAULT_SPAWN_DUR_MS+DEFAULT_TILE_FADE_MS+Math.round(DEFAULT_HOLD_DUR_MS/2),format:{kind:"video",container:"mp4"}},propsSchema,defaultProps:{variant:DEFAULT_VARIANT,driftPercent:DEFAULT_DRIFT_PERCENT,packing:DEFAULT_PACKING,spawnDurMs:DEFAULT_SPAWN_DUR_MS,tileFadeMs:DEFAULT_TILE_FADE_MS,holdDurMs:DEFAULT_HOLD_DUR_MS,fadeOutDurMs:DEFAULT_FADE_OUT_DUR_MS,tileOffsetPx:DEFAULT_TILE_OFFSET_PX,tileColor:DEFAULT_TILE_COLOR,gleam:!1},async render(e,r){var m,f,p,h,g,v,b,_,M,x,D,P;const w=(m=e.variant)!==null&&m!==void 0?m:this.defaultProps.variant,F=(f=e.bgColor)!==null&&f!==void 0?f:w==="dark"?BG_DARK:BG_LIGHT,s=(p=e.driftPercent)!==null&&p!==void 0?p:this.defaultProps.driftPercent,a=(h=e.packing)!==null&&h!==void 0?h:this.defaultProps.packing,o=(g=e.spawnDurMs)!==null&&g!==void 0?g:this.defaultProps.spawnDurMs,n=(v=e.tileFadeMs)!==null&&v!==void 0?v:this.defaultProps.tileFadeMs,l=(b=e.holdDurMs)!==null&&b!==void 0?b:this.defaultProps.holdDurMs,d=(_=e.fadeOutDurMs)!==null&&_!==void 0?_:this.defaultProps.fadeOutDurMs,u=(M=e.tileOffsetPx)!==null&&M!==void 0?M:this.defaultProps.tileOffsetPx,E=(x=e.tileColor)!==null&&x!==void 0?x:this.defaultProps.tileColor,R=(P=(D=e.gleam)!==null&&D!==void 0?D:this.defaultProps.gleam)!==null&&P!==void 0?P:!1,t=[];if(!e.text&&!e.svg&&t.push("either `text` or `svg` is required"),e.text&&e.svg&&t.push("specify exactly one of `text` or `svg` (not both)"),s>=0&&s<=5||t.push(`driftPercent must be in [0, 5] (got ${s})`),a!=="one"&&a!=="multi"&&t.push(`packing must be "one" or "multi" (got "${a}")`),o>=100&&o<=6e4||t.push(`spawnDurMs must be in [100, 60000] (got ${o})`),n>=0&&n<=1e4||t.push(`tileFadeMs must be in [0, 10000] (got ${n})`),l>=0&&l<=6e4||t.push(`holdDurMs must be in [0, 60000] (got ${l})`),d>=0&&d<=1e4||t.push(`fadeOutDurMs must be in [0, 10000] (got ${d})`),u>=0&&u<=100||t.push(`tileOffsetPx must be in [0, 100] (got ${u})`),t.length)return(0,template_utils_1.makeErrorMosaic)(t.join(" | "),{title:`${this.id} props`,width:r.output.width,height:r.output.height});let c;try{if(e.svg)c=String((0,dsl_stdlib_1.svgToM0)(e.svg,{driftPercent:s,packing:a}));else{const i=(0,template_utils_1.qrToRenderable)({text:e.text,moduleColor:E,errorCorrectionLevel:"H"});c=String(i.m0)}}catch(i){return(0,template_utils_1.makeErrorMosaic)(`QR generation failed: ${i instanceof Error?i.message:String(i)}`,{title:`${this.id} qr-gen`,width:r.output.width,height:r.output.height})}const y=(0,dsl_stdlib_1.queryFrames)(c,{width:r.output.width,height:r.output.height}).logical();if(y.length===0)return(0,template_utils_1.makeErrorMosaic)("Converted m0 contains no visible tiles to animate",{title:`${this.id} parse`,width:r.output.width,height:r.output.height});const O=y.map(i=>({x:i.x,y:i.y,logicalIndex:i.logicalIndex})),C=(0,expressions_1.buildPseudoRanks)(O),T=o/1e3,q=n/1e3,L=T+q+l/1e3,U=d/1e3,Q=y.map((i,$)=>{const A=C[$],S=(0,expressions_1.buildModuleAlphaExpr)(A,{spawnDurSec:T,tileFadeSec:q,exitStartSec:L,fadeOutSec:U}),G=R?`(${S})*(${(0,expressions_1.buildModuleGleamFactor)(A)})`:S,k=(0,expressions_1.buildTileOffsetExpr)(A,{spawnDurSec:T,tileFadeSec:q,offsetPx:u});return(0,template_utils_1.makeColorTile)(E,{overlay:{alpha:G,xExpr:k,yExpr:k}})});return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(c,"QrAnimateV2"),sources:Q,assets:{},backgroundColor:F}}},(0,template_utils_1.registerTemplate)(exports.QrAnimateV2),exports.default=exports.QrAnimateV2;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var r=(e,t)=>u(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.QRCode=exports.BrandQr=void 0;var qr_1=require("./qr");Object.defineProperty(exports,"BrandQr",{enumerable:!0,get:r(function(){return qr_1.BrandQr},"get")}),Object.defineProperty(exports,"QRCode",{enumerable:!0,get:r(function(){return qr_1.QRCode},"get")}),Object.defineProperty(exports,"default",{enumerable:!0,get:r(function(){return __importDefault(qr_1).default},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.QRCode=exports.BrandQr=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),BRAND_ORANGE="#f97316",BG_LIGHT="#ffffff",BG_DARK="#000000",propsSchema=(0,template_utils_1.definePropsSchema)({text:{type:"string",required:!1,description:"Text to encode (URL, plain string, or structured payload). Defaults to https://www.m0saic.io.",meta:{control:{flavor:"url",placeholder:"https://www.m0saic.io"}}},mode:{type:"string",required:!1,description:"Color mode of the QR code",meta:{constraints:{oneOf:["light","dark"]}}},transparentBackground:{type:"boolean",required:!1,description:"When true, light areas are transparent (alpha). When false, light/dark use solid background."}});exports.BrandQr=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/media/qr/basic/v1"),label:"Brand QR (v1, deprecated)",version:1,lattice:{mode:"bitmap"},description:"Scannable QR encoding any text (URL, plain string, or structured payload). Orange modules on light, dark, or transparent backgrounds. The atomic QR.",deprecated:{reason:'Merged into QR Code (media/qr/code/v1) \u2014 its moduleStyle:"square" path is byte-identical to this template, and the unified card adds rounded/circle styles plus the carved centre asset. Kept as the plain-path reference.',replacement:(0,types_1.asTemplateId)("@m0saic/media/qr/code/v1"),since:"2026-07-21"},capabilities:{tier:"core"},tags:["brand","qr"],outputHints:{width:1080,height:1080,fps:30,durationMs:2e3,note:"Square QR rendered as in-house m0 (no PNG raster).",format:{kind:"image",container:"png",pixelFormat:"rgba"}},propsSchema,defaultProps:{text:"https://www.m0saic.io",mode:"dark",transparentBackground:!1},async render(t,e){var r,a,o;const d=(r=t.text)!==null&&r!==void 0?r:this.defaultProps.text,i=(a=t.mode)!==null&&a!==void 0?a:this.defaultProps.mode,c=(o=t.transparentBackground)!==null&&o!==void 0?o:!1;let s;try{s=(0,template_utils_1.qrToRenderable)({text:d,moduleColor:BRAND_ORANGE,errorCorrectionLevel:"H"})}catch(n){return(0,template_utils_1.makeErrorMosaic)(`BrandQr: ${n instanceof Error?n.message:String(n)}`,{title:"Brand QR (v1)",width:e.output.width,height:e.output.height})}return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(String(s.m0),"BrandQr"),sources:s.sources,assets:{},fps:e.target.fps,durationMs:e.target.durationMs,...c?{}:{backgroundColor:(0,template_utils_1.solidBackground)(i==="dark"?BG_DARK:BG_LIGHT)}}}}),(0,template_utils_1.registerTemplate)(exports.BrandQr),exports.default=exports.BrandQr,exports.QRCode=exports.BrandQr;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var r=(e,t)=>u(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.QrCode=void 0;var qr_code_1=require("./qr-code");Object.defineProperty(exports,"QrCode",{enumerable:!0,get:r(function(){return qr_code_1.QrCode},"get")}),Object.defineProperty(exports,"default",{enumerable:!0,get:r(function(){return __importDefault(qr_code_1).default},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var ee=Object.defineProperty;var f=(e,t)=>ee(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.QrCode=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),brandMCenter_1=require("../../_shared/brandMCenter"),template_utils_1=require("@m0saic/template-utils"),expressions_1=require("../../animate/v1/expressions"),BRAND_ORANGE="#f97316",BG_LIGHT="#ffffff",BG_DARK="#000000",CUTOUT_MIN_VERSION=6,CENTER_CHILD_KEY="center";function resolveCenter(e){var t;if(e.show===!1)return{kind:"none"};const a=(t=e.assetPath)===null||t===void 0?void 0:t.trim();return a?{kind:"asset",path:a}:{kind:"brandM"}}f(resolveCenter,"resolveCenter");const DEFAULTS={text:"https://www.m0saic.io",mode:"light",moduleColor:BRAND_ORANGE,moduleStyle:"circle",eyeOuterBorderRadius:.3,eyeInnerDotBorderRadius:.5,centerWidth:272,centerHeight:272,centerPaddingPct:8};function defaultModuleBorderRadius(e){return e==="circle"?1:e==="roundedSquare"?.3:0}f(defaultModuleBorderRadius,"defaultModuleBorderRadius");const propsSchema=(0,template_utils_1.definePropsSchema)({text:{type:"string",required:!1,description:"Text to encode (URL, plain string, or structured payload). Defaults to https://www.m0saic.io.",meta:{control:{flavor:"url",placeholder:"https://www.m0saic.io"},ui:{label:"Text",order:1}}},outputFormat:{type:"string",required:!1,description:'Deliverable format. "png" renders the static QR image; "mp4" renders the spawn animation (modules pixelate in \u2014 tune it under Animation).',meta:{constraints:{oneOf:["png","mp4"]},ui:{label:"Output",order:2}}},mode:{type:"string",required:!1,description:"Background mode. transparent = alpha PNG for compositing.",meta:{constraints:{oneOf:["light","dark","transparent"]},ui:{label:"Mode",order:3}}},moduleStyle:{type:"string",required:!1,description:"Module shape: circle dots (the branded default), roundedSquare, or square (the classic matrix look).",meta:{constraints:{oneOf:["square","roundedSquare","circle"]},ui:{label:"Module Style",order:4}}},moduleColor:{type:"string",required:!1,description:"Fill colour for data modules and eye dark layers.",meta:{constraints:{isColor:!0},control:{colorPicker:!0,defaultColor:"#f97316"},ui:{label:"Module Color",order:5}}},backgroundColor:{type:"string",required:!1,description:"Override the mode-derived background colour.",meta:{constraints:{isColor:!0},control:{placeholder:"by mode",colorPicker:!0},ui:{label:"Background",order:6}}},style:{type:"group",required:!1,description:"Module/eye corner-radius fine-tuning (styled paths only).",meta:{ui:{label:"Style",order:7,collapsedByDefault:!0}},fields:{moduleBorderRadius:{type:"number",required:!1,description:"Override module corner radius (0..1). Default derives from Module Style.",meta:{control:{placeholder:"by module style"},constraints:{min:0,max:1},ui:{label:"Module radius"}}},eyeOuterBorderRadius:{type:"number",required:!1,description:"Outer eye corner radius (0..1).",meta:{control:{placeholder:"by module style"},constraints:{min:0,max:1},ui:{label:"Eye outer radius"}}},eyeInnerDotBorderRadius:{type:"number",required:!1,description:"Inner eye dot corner radius (0..1). 1.0 = circular dot.",meta:{control:{placeholder:"by module style"},constraints:{min:0,max:1},ui:{label:"Eye dot radius"}}}}},center:{type:"group",required:!1,description:"Carved centre asset: your image or video in the middle; modules carve a safe area around it (ECC H + version floor keep it scannable).",meta:{ui:{label:"Center Asset",order:8,collapsedByDefault:!0}},fields:{show:{type:"boolean",required:!1,description:"Carve a centre into the QR. Off = plain QR, no cutout. Default on.",meta:{ui:{label:"Show Center"}}},assetPath:{type:"media",required:!1,description:"Image or video that fills the centre safe area. Empty = the m0saic M (rendered in-house \u2014 no file involved); swap in your own logo path (and update the Text URL).",meta:{control:{picker:"file",accept:["image","video"]},ui:{label:"Asset"}}},width:{type:"number",required:!1,description:"Safe-area width in canvas pixels.",meta:{constraints:{min:32,max:4096},ui:{label:"Width (px)"}}},height:{type:"number",required:!1,description:"Safe-area height in canvas pixels.",meta:{constraints:{min:32,max:4096},ui:{label:"Height (px)"}}},paddingPct:{type:"number",required:!1,description:"Padding between modules and the centre frame, % of max dim.",meta:{constraints:{min:0,max:49},ui:{label:"Padding (%)"}}}}},animation:{type:"group",required:!1,description:'Spawn-animation envelope (active when Output is "mp4"): modules pixelate in with a staggered fade. Size the render duration to at least spawn + fade + hold (+ fade out).',meta:{ui:{label:"Animation",order:9,collapsedByDefault:!0}},fields:{spawnDurMs:{type:"number",required:!1,description:"Stagger: time from first to last tile starting its fade-in.",meta:{constraints:{min:100,max:6e4},ui:{label:"Spawn (ms)"}}},tileFadeMs:{type:"number",required:!1,description:"Per-tile fade-in duration.",meta:{constraints:{min:0,max:1e4},ui:{label:"Fade (ms)"}}},holdDurMs:{type:"number",required:!1,description:"Hold at full alpha before fade-out (used when Fade out > 0).",meta:{constraints:{min:0,max:6e4},ui:{label:"Hold (ms)"}}},fadeOutDurMs:{type:"number",required:!1,description:"Global fade-out. 0 = spawn in and hold to the end of the render.",meta:{constraints:{min:0,max:1e4},ui:{label:"Fade out (ms)"}}},tileOffsetPx:{type:"number",required:!1,description:"Per-tile pixel offset that decays to 0 during fade-in.",meta:{constraints:{min:0,max:100},ui:{label:"Settle (px)"}}},gleam:{type:"boolean",required:!1,description:"Travelling per-cell shine over the data modules during the hold. Cells dip to a high alpha floor, so the code stays scannable. Eyes and the centre are untouched. Requires Output mp4.",meta:{ui:{label:"Module Gleam"}}}}},advanced:{type:"group",required:!1,description:"Escape hatches.",meta:{ui:{label:"Advanced",order:10,collapsedByDefault:!0}},fields:{svg:{type:"string",required:!1,description:"Caller-supplied SVG string \u2014 bypasses QR generation (testing, non-QR vector content, pre-generated QRs). Styling/center are ignored; animation still applies.",meta:{control:{placeholder:"from Text"},ui:{label:"SVG string"}}},driftPercent:{type:"number",required:!1,description:"Drift tolerance for SVG grid inference (% of min canvas dim).",meta:{constraints:{min:0,max:5},ui:{label:"Drift %"}}}}},version:{type:"number",required:!1,description:"Force QR version (1\u201340). Default auto; a centre cutout forces \u22656. Bump higher if a printed code fails to scan.",meta:{control:{placeholder:"auto (smallest that fits)"},constraints:{min:1,max:40},ui:{label:"QR Version",order:11}}}}),ANIM_DEFAULTS={spawnDurMs:1e3,tileFadeMs:220,holdDurMs:1200,fadeOutDurMs:0,tileOffsetPx:1,gleam:!1};function resolveAnimation(e,t){var a,l,d,s,h,g;const w=(a=e?.spawnDurMs)!==null&&a!==void 0?a:ANIM_DEFAULTS.spawnDurMs,M=(l=e?.tileFadeMs)!==null&&l!==void 0?l:ANIM_DEFAULTS.tileFadeMs,k=(d=e?.holdDurMs)!==null&&d!==void 0?d:ANIM_DEFAULTS.holdDurMs,y=(s=e?.fadeOutDurMs)!==null&&s!==void 0?s:ANIM_DEFAULTS.fadeOutDurMs,v=w/1e3,b=M/1e3,S=y<=0;return{on:t,spawnDurSec:v,tileFadeSec:b,exitStartSec:S?1e9:v+b+k/1e3,fadeOutSec:S?.001:y/1e3,tileOffsetPx:(h=e?.tileOffsetPx)!==null&&h!==void 0?h:ANIM_DEFAULTS.tileOffsetPx,gleam:(g=e?.gleam)!==null&&g!==void 0?g:ANIM_DEFAULTS.gleam}}f(resolveAnimation,"resolveAnimation");function spawnOverlay(e,t){const a=(0,expressions_1.buildModuleAlphaExpr)(t,{spawnDurSec:e.spawnDurSec,tileFadeSec:e.tileFadeSec,exitStartSec:e.exitStartSec,fadeOutSec:e.fadeOutSec}),l=e.gleam?`(${a})*(${(0,expressions_1.buildModuleGleamFactor)(t)})`:a,d=(0,expressions_1.buildTileOffsetExpr)(t,{spawnDurSec:e.spawnDurSec,tileFadeSec:e.tileFadeSec,offsetPx:e.tileOffsetPx});return{alpha:l,xExpr:d,yExpr:d}}f(spawnOverlay,"spawnOverlay");function ranksForM0(e,t,a){const d=(0,dsl_stdlib_1.queryFrames)(e,{width:t,height:a}).logical().map(s=>({x:s.x,y:s.y,logicalIndex:s.logicalIndex}));return(0,expressions_1.buildPseudoRanks)(d)}f(ranksForM0,"ranksForM0");function backgroundFor(e,t){if(t)return t;if(e!=="transparent")return e==="dark"?BG_DARK:BG_LIGHT}f(backgroundFor,"backgroundFor"),exports.QrCode=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/media/qr/code/v1"),label:"QR Code",version:1,lattice:{mode:"bitmap"},description:"Scannable QR from any text (URL, plain string, or structured payload). Defaults to the branded look \u2014 circle modules on a light card with the m0saic M carved in the centre; swap the centre asset and URL to make it yours. Square/rounded/circle module styles, light/dark/transparent card, optional spawn animation (Output mp4). The one standalone QR template.",capabilities:{tier:"capability",caps:{fs:{read:!0,write:!0,temp:!0}}},tags:["brand","qr","marketers","designers","link"],outputHints:{format:{kind:"image",container:"png"},width:1080,height:1080,fps:30,durationMs:2e3,note:"Square QR rendered as in-house m0 (no PNG raster). Spawn animation renders an mp4. Render at a SQUARE canvas \u2014 a non-square canvas stretches the code uniformly (accepted v1 behavior, founder ruling 08-27; no contain letterboxing here). Transparent mode: the card is truly transparent, but a centre child sits on an opaque box until the child-carrier engine candidate lands \u2014 use center.show:false for fully transparent output."},propsSchema,defaultProps:{advanced:{driftPercent:0},animation:{spawnDurMs:1e3,tileFadeMs:220,holdDurMs:1200,fadeOutDurMs:0,tileOffsetPx:1,gleam:!1},moduleColor:"#EF7525",text:DEFAULTS.text,outputFormat:"png",mode:DEFAULTS.mode,moduleStyle:DEFAULTS.moduleStyle,center:{paddingPct:8,height:272,width:272,show:!0}},async render(e,t){var a,l,d,s,h,g,w,M,k,y,v,b,S,O,B,P,F;const L=(a=e.text)!==null&&a!==void 0?a:DEFAULTS.text,T=(l=e.mode)!==null&&l!==void 0?l:DEFAULTS.mode,m=(d=e.moduleColor)!==null&&d!==void 0?d:DEFAULTS.moduleColor,q=(s=e.moduleStyle)!==null&&s!==void 0?s:DEFAULTS.moduleStyle,x=(h=e.style)!==null&&h!==void 0?h:{},R=(g=e.center)!==null&&g!==void 0?g:{},C=resolveCenter(R),_=C.kind!=="none",u=backgroundFor(T,e.backgroundColor),n=resolveAnimation(e.animation,((w=e.outputFormat)!==null&&w!==void 0?w:"png")==="mp4"),Q=n.on?{kind:"video",container:"mp4"}:T==="transparent"?{kind:"image",container:"png",pixelFormat:"rgba"}:{kind:"image",container:"png"},E="QR Code",A=f(r=>(0,template_utils_1.makeErrorMosaic)(`QrCode: ${r instanceof Error?r.message:String(r)}`,{title:E,width:t.target.width,height:t.target.height}),"fail");if(!((M=e.advanced)===null||M===void 0)&&M.svg){let r;try{r=String((0,dsl_stdlib_1.svgToM0)(e.advanced.svg,{driftPercent:(k=e.advanced.driftPercent)!==null&&k!==void 0?k:0,packing:"multi"}))}catch(p){return A(p)}const o=(0,dsl_stdlib_1.queryFrames)(r,{width:t.output.width,height:t.output.height}).logical();if(o.length===0)return(0,template_utils_1.makeErrorMosaic)("QrCode: SVG produced no visible tiles.",{title:E,width:t.target.width,height:t.target.height});const c=n.on?(0,expressions_1.buildPseudoRanks)(o.map(p=>({x:p.x,y:p.y,logicalIndex:p.logicalIndex}))):[],D=o.map((p,Z)=>n.on?(0,template_utils_1.makeColorTile)(m,{overlay:spawnOverlay(n,c[Z])}):(0,template_utils_1.makeColorTile)(m));return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(r,"QrCode"),sources:D,assets:{},format:Q,...u!==void 0?{backgroundColor:(0,template_utils_1.solidBackground)(u)}:{}}}if(q==="square"&&!_&&x.moduleBorderRadius===void 0&&x.eyeOuterBorderRadius===void 0&&x.eyeInnerDotBorderRadius===void 0&&!e.version){let r;try{r=(0,template_utils_1.qrToRenderable)({text:L,moduleColor:m,errorCorrectionLevel:"H"})}catch(c){return A(c)}let o=r.sources;if(n.on){const c=ranksForM0(String(r.m0),r.canvasW,r.canvasH);o=o.map((D,p)=>(0,template_utils_1.makeColorTile)(m,{overlay:spawnOverlay(n,c[p])}))}return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(String(r.m0),"QrCode"),sources:o,assets:{},...n.on?{}:{fps:30,durationMs:2e3},format:Q,...u!==void 0?{backgroundColor:(0,template_utils_1.solidBackground)(u)}:{}}}const W=(y=x.moduleBorderRadius)!==null&&y!==void 0?y:defaultModuleBorderRadius(q),U=(v=x.eyeOuterBorderRadius)!==null&&v!==void 0?v:q==="square"?0:DEFAULTS.eyeOuterBorderRadius,z=(b=x.eyeInnerDotBorderRadius)!==null&&b!==void 0?b:q==="square"?0:DEFAULTS.eyeInnerDotBorderRadius,I=(S=R.width)!==null&&S!==void 0?S:DEFAULTS.centerWidth,H=(O=R.height)!==null&&O!==void 0?O:DEFAULTS.centerHeight,K=(B=R.paddingPct)!==null&&B!==void 0?B:DEFAULTS.centerPaddingPct,N=e.version&&e.version>0?e.version:_?CUTOUT_MIN_VERSION:void 0,$=u??(T==="dark"?BG_DARK:BG_LIGHT);let i;try{i=(0,template_utils_1.qrToRenderable)({text:L,moduleColor:m,errorCorrectionLevel:"H",backgroundColor:$,eyes:{darkColor:m,outerBorderRadius:U,innerLightBorderRadius:U,innerDotBorderRadius:z},...N?{version:N}:{},..._?{safeArea:{width:I,height:H,paddingPct:K}}:{}})}catch(r){return A(r)}if(i.sources.length===0)return(0,template_utils_1.makeErrorMosaic)("QrCode: composed QR has no renderable frames.",{title:E,width:t.target.width,height:t.target.height});const j=((F=(P=i.channelByRole.eyes)===null||P===void 0?void 0:P.frames.length)!==null&&F!==void 0?F:0)*3,V=_&&i.safeAreaStableKey?1:0,Y=i.sources.length-j-V,J=n.on?ranksForM0(String(i.m0),i.canvasW,i.canvasH):[],X=i.sources.map((r,o)=>{var c;if(o<Y)return(0,template_utils_1.makeColorTile)(m,{effects:{rounding:{borderRadius:W,cornerStyle:"rounded"}},...n.on?{overlay:spawnOverlay(n,J[o])}:{}});if(o>=i.sources.length-V)return{type:"mosaic",ref:CENTER_CHILD_KEY,placement:{fit:"contain"}};if(n.on){const D=(0,expressions_1.buildModuleAlphaExpr)(0,{spawnDurSec:n.spawnDurSec,tileFadeSec:n.tileFadeSec,exitStartSec:n.exitStartSec,fadeOutSec:n.fadeOutSec});return{...r,overlay:{...(c=r.overlay)!==null&&c!==void 0?c:{},alpha:D}}}return r}),G={};if(C.kind==="asset"){const r=(0,types_1.asAssetId)("qr_code_center"),o=(0,template_utils_1.determineMediaType)(C.path,t);G[CENTER_CHILD_KEY]={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("F","QrCode-center"),assets:{[r]:{kind:"file",path:C.path,mediaType:o}},sources:[{type:"media",mediaType:o,assetId:r,placement:{fit:"contain"}}],size:{width:I,height:H}}}else C.kind==="brandM"&&(G[CENTER_CHILD_KEY]=(0,brandMCenter_1.buildBrandMCenterDoc)({mColor:m,bgColor:u,width:I,height:H}));return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(String(i.m0),"QrCode"),sources:X,assets:{},children:G,size:{width:i.canvasW,height:i.canvasH},format:Q,...u!==void 0?{backgroundColor:(0,template_utils_1.solidBackground)(u)}:{}}}}),(0,template_utils_1.registerTemplate)(exports.QrCode),exports.default=exports.QrCode;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var n=Object.defineProperty;var e=(r,t)=>n(r,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.QrStampVideo=exports.QrStampCustom=exports.QrRounded=exports.QrAnimateV2=exports.QrAnimate=exports.BrandQr=exports.QrCode=void 0;var v1_1=require("./code/v1");Object.defineProperty(exports,"QrCode",{enumerable:!0,get:e(function(){return v1_1.QrCode},"get")});var v1_2=require("./basic/v1");Object.defineProperty(exports,"BrandQr",{enumerable:!0,get:e(function(){return v1_2.BrandQr},"get")});var v1_3=require("./animate/v1");Object.defineProperty(exports,"QrAnimate",{enumerable:!0,get:e(function(){return v1_3.QrAnimate},"get")});var v2_1=require("./animate/v2");Object.defineProperty(exports,"QrAnimateV2",{enumerable:!0,get:e(function(){return v2_1.QrAnimateV2},"get")});var v1_4=require("./rounded/v1");Object.defineProperty(exports,"QrRounded",{enumerable:!0,get:e(function(){return v1_4.QrRounded},"get")});var qr_stamp_custom_1=require("./stamp/v1/qr-stamp-custom");Object.defineProperty(exports,"QrStampCustom",{enumerable:!0,get:e(function(){return qr_stamp_custom_1.QrStampCustom},"get")});var v1_5=require("./stamp-video/v1");Object.defineProperty(exports,"QrStampVideo",{enumerable:!0,get:e(function(){return v1_5.QrStampVideo},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var r=(e,t)=>u(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.QrRounded=void 0;var qr_rounded_1=require("./qr-rounded");Object.defineProperty(exports,"QrRounded",{enumerable:!0,get:r(function(){return qr_rounded_1.QrRounded},"get")}),Object.defineProperty(exports,"default",{enumerable:!0,get:r(function(){return __importDefault(qr_rounded_1).default},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var M=Object.defineProperty;var b=(e,t)=>M(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.QrRounded=void 0;const types_1=require("@m0saic/types"),types_2=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),BRAND_ORANGE="#f97316",BG_LIGHT="#ffffff",BG_DARK="#000000",DEFAULTS={text:"https://www.m0saic.io",mode:"light",moduleColor:BRAND_ORANGE,moduleStyle:"circle",eyeOuterBorderRadius:.3,eyeInnerDotBorderRadius:.5,safeAreaWidth:272,safeAreaHeight:272,paddingPct:8},CUTOUT_MIN_VERSION=6,EYE_CHILD_KEY="qr-eye",CENTER_CHILD_KEY="center",propsSchema=(0,template_utils_1.definePropsSchema)({text:{type:"string",required:!1,description:"Text to encode (URL, plain string, or structured payload). Defaults to https://www.m0saic.io.",meta:{control:{placeholder:"https://www.m0saic.io"}}},mode:{type:"string",required:!1,description:"Background mode.",meta:{constraints:{oneOf:["light","dark","transparent"]}}},moduleColor:{type:"string",required:!1,description:"Fill colour for data modules and eye dark layers (#rrggbb).",meta:{constraints:{isColor:!0},control:{colorPicker:!0}}},backgroundColor:{meta:{constraints:{isColor:!0},control:{placeholder:"none (transparent)",colorPicker:!0}},type:"string",required:!1,description:"Override mode-derived background colour (#rrggbb)."},moduleStyle:{type:"string",required:!1,description:"Data module shape.",meta:{constraints:{oneOf:["circle","roundedSquare"]}}},moduleBorderRadius:{type:"number",required:!1,description:"Override module corner radius (0..1).",meta:{control:{placeholder:"by module style"},constraints:{min:0,max:1}}},eyeOuterBorderRadius:{type:"number",required:!1,description:"Outer eye corner radius (0..1).",meta:{constraints:{min:0,max:1}}},eyeInnerDotBorderRadius:{type:"number",required:!1,description:"Inner eye dot corner radius (0..1). Set 1.0 for a circular dot.",meta:{constraints:{min:0,max:1}}},centerAssetPath:{type:"media",required:!1,description:"Optional image or video to place in the centre safe area.",meta:{control:{picker:"file",accept:["image","video"]}}},safeAreaWidth:{type:"number",required:!1,description:"Safe-area width in pixels (only used when centerAssetPath is set).",meta:{constraints:{min:32,max:4096}}},safeAreaHeight:{type:"number",required:!1,description:"Safe-area height in pixels (only used when centerAssetPath is set).",meta:{constraints:{min:32,max:4096}}},paddingPct:{type:"number",required:!1,description:"Padding between modules and centre frame, as % of max dim.",meta:{constraints:{min:0,max:49}}},version:{type:"number",required:!1,description:"Force QR version (1-40). Defaults to auto; centre cutout forces \u22656 for scannability. Bump higher if a printed code fails to scan.",meta:{control:{placeholder:"auto (smallest that fits)"},constraints:{min:1,max:40}}}});function backgroundFor(e,t){if(t)return t;if(e!=="transparent")return e==="dark"?BG_DARK:BG_LIGHT}b(backgroundFor,"backgroundFor");function defaultModuleBorderRadius(e){return e==="circle"?1:.3}b(defaultModuleBorderRadius,"defaultModuleBorderRadius"),exports.QrRounded=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/media/qr/rounded/v1"),label:"Brand QR \u2014 Rounded (v1, deprecated)",version:1,lattice:{mode:"bitmap"},description:"Tasteful rounded-modules QR. Circular data dots, single-unit rounded-square eyes, optional centre logo cutout.",deprecated:{reason:"Merged into QR Code (media/qr/code/v1) \u2014 same channels engine; the unified card carries the module/eye radii as a Style group and the centre cutout as a Center Asset group, and is byte-identical at this template's defaults. Kept as the styled-path reference.",replacement:(0,types_1.asTemplateId)("@m0saic/media/qr/code/v1"),since:"2026-07-21"},capabilities:{tier:"capability",caps:{fs:{read:!0,write:!0,temp:!0}}},tags:["brand","qr","rounded"],outputHints:{width:1080,height:1080,fps:30,durationMs:2e3,note:"Square QR with rounded modules + single-unit rounded eyes.",format:{kind:"image",container:"png",pixelFormat:"rgba"}},propsSchema,defaultProps:DEFAULTS,async render(e,t){var d,s,u,c,l,m,f,h,g,p,y,R;const S=(d=e.text)!==null&&d!==void 0?d:DEFAULTS.text,_=(s=e.mode)!==null&&s!==void 0?s:DEFAULTS.mode,v=(u=e.moduleColor)!==null&&u!==void 0?u:DEFAULTS.moduleColor,x=(c=e.moduleStyle)!==null&&c!==void 0?c:DEFAULTS.moduleStyle,P=(l=e.moduleBorderRadius)!==null&&l!==void 0?l:defaultModuleBorderRadius(x),B=(m=e.eyeOuterBorderRadius)!==null&&m!==void 0?m:DEFAULTS.eyeOuterBorderRadius,T=(f=e.eyeInnerDotBorderRadius)!==null&&f!==void 0?f:DEFAULTS.eyeInnerDotBorderRadius,i=!!e.centerAssetPath,q=(h=e.safeAreaWidth)!==null&&h!==void 0?h:DEFAULTS.safeAreaWidth,k=(g=e.safeAreaHeight)!==null&&g!==void 0?g:DEFAULTS.safeAreaHeight,I=(p=e.paddingPct)!==null&&p!==void 0?p:DEFAULTS.paddingPct,o=backgroundFor(_,e.backgroundColor),A=e.version&&e.version>0?e.version:i?CUTOUT_MIN_VERSION:void 0,Q=o??(_==="dark"?BG_DARK:BG_LIGHT);let r;try{r=(0,template_utils_1.qrToRenderable)({text:S,moduleColor:v,errorCorrectionLevel:"H",backgroundColor:Q,eyes:{darkColor:v,outerBorderRadius:B,innerLightBorderRadius:B,innerDotBorderRadius:T},...A?{version:A}:{},...i?{safeArea:{width:q,height:k,paddingPct:I}}:{}})}catch(n){return(0,template_utils_1.makeErrorMosaic)(`QrRounded: ${n instanceof Error?n.message:String(n)}`,{title:"Brand QR \u2014 Rounded",width:t.target.width,height:t.target.height})}if(r.sources.length===0)return(0,template_utils_1.makeErrorMosaic)("QrRounded: composed QR has no renderable frames.",{title:"Brand QR \u2014 Rounded",width:t.target.width,height:t.target.height});const O=((R=(y=r.channelByRole.eyes)===null||y===void 0?void 0:y.frames.length)!==null&&R!==void 0?R:0)*3,C=i&&r.safeAreaStableKey?1:0,D=r.sources.length-O-C,E=r.sources.map((n,a)=>a<D?(0,template_utils_1.makeColorTile)(v,{effects:{rounding:{borderRadius:P,cornerStyle:"rounded"}}}):a>=r.sources.length-C?{type:"mosaic",ref:CENTER_CHILD_KEY,placement:{fit:"contain"}}:n),w={};if(i){const n=(0,types_2.asAssetId)("qr_rounded_center"),a=(0,template_utils_1.determineMediaType)(e.centerAssetPath,t);w[CENTER_CHILD_KEY]={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("F","QrRounded-center"),assets:{[n]:{kind:"file",path:e.centerAssetPath,mediaType:a}},sources:[{type:"media",mediaType:a,assetId:n,placement:{fit:"contain"}}],size:{width:q,height:k}}}return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(String(r.m0),"QrRounded"),sources:E,assets:{},children:w,size:{width:r.canvasW,height:r.canvasH},...o!==void 0?{backgroundColor:(0,template_utils_1.solidBackground)(o)}:{}}}}),(0,template_utils_1.registerTemplate)(exports.QrRounded),exports.default=exports.QrRounded;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var R=Object.defineProperty;var h=(e,t)=>R(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.QrStampCustom=void 0;const types_1=require("@m0saic/types"),template_utils_1=require("@m0saic/template-utils"),brandMCenter_1=require("../../_shared/brandMCenter"),onboarding_cover_1=require("../../../../_shared/onboarding-cover"),DEFAULTS={text:"https://www.m0saic.io",position:"br",sizePct:26,marginPct:2.2,mode:"auto",animation:"fade-in",moduleStyle:"circle",center:"m"},propsSchema=(0,template_utils_1.definePropsSchema)({mediaPath:{type:"media",required:!0,description:"Image or video to brand with a QR stamp.",meta:{ui:{label:"Media"},control:{picker:"file",accept:["image","video"]}}},text:{type:"string",required:!1,description:"Text encoded into the QR \u2014 URL, plain string, or structured payload (default: https://www.m0saic.io).",meta:{ui:{label:"QR payload"},control:{flavor:"url",placeholder:"https://www.m0saic.io"}}},position:{type:"string",required:!1,description:"Corner placement for the stamp.",meta:{ui:{label:"Corner"},constraints:{oneOf:["br","bl","tr","tl"]}}},sizePct:{type:"number",required:!1,description:"Stamp size as a percent of min(W, H).",meta:{ui:{label:"Size (%)"},constraints:{min:1,max:50}}},marginPct:{type:"number",required:!1,description:"Margin between stamp and corner edges, % of min(W, H).",meta:{ui:{label:"Margin (%)"},constraints:{min:0,max:25}}},mode:{type:"string",required:!1,description:"QR card mode. 'auto' uses scene luminance to pick light vs dark.",meta:{ui:{label:"Card mode"},constraints:{oneOf:["light","dark","transparent","auto"]}}},luminanceBuckets:{type:"json",required:!1,description:"Luminance-bucket override for auto mode. Omit to let the template probe the stamp corner itself (real renders only \u2014 design previews skip analysis and fall back to the light card).",meta:{ui:{label:"Luminance override"}}},animation:{type:"string",required:!1,description:"Entrance animation for the stamp.",meta:{ui:{label:"Entrance"},constraints:{oneOf:["none","fade-in"]}}},moduleStyle:{type:"string",required:!1,description:"Module shape: circle dots (the branded default), roundedSquare, or square (the classic matrix look).",meta:{ui:{label:"Module Style"},constraints:{oneOf:["square","roundedSquare","circle"]}}},center:{type:"string",required:!1,description:"What the carved centre holds: the m0saic M (the branded default), your own asset (pick it below), or off for a plain code.",meta:{ui:{label:"Centre"},constraints:{oneOf:["m","asset","off"]}}},centerAsset:{type:"media",required:!1,description:"Image or video that fills the centre safe area when Centre is 'asset' \u2014 contain-fit, over the card colour.",meta:{ui:{label:"Centre asset",visibleWhen:{prop:"center",equals:"asset"}},control:{picker:"file",accept:["image","video"]}}}});function assetCenterDoc(e,t,n){const r=(0,types_1.asAssetId)("qr_stamp_center"),a=(0,template_utils_1.determineMediaType)(e,t);return{kind:"mosaic_document",version:1,m0:"F",assets:{[r]:{kind:"file",path:e,mediaType:a}},sources:[{type:"media",mediaType:a,assetId:r,placement:{fit:"contain"}}],size:{width:template_utils_1.STYLED_QR_DEFAULTS.centerWidth,height:template_utils_1.STYLED_QR_DEFAULTS.centerHeight},...n!==void 0?{backgroundColor:(0,template_utils_1.solidBackground)(n)}:{}}}h(assetCenterDoc,"assetCenterDoc");function stampLook(e,t,n,r){const a=e==="square",s=t==="m"?i=>(0,brandMCenter_1.buildBrandMCenterDoc)({mColor:"#f97316",bgColor:i,width:template_utils_1.STYLED_QR_DEFAULTS.centerWidth,height:template_utils_1.STYLED_QR_DEFAULTS.centerHeight,label:"QrStampCustom"}):t==="asset"&&n?i=>assetCenterDoc(n,r,i):null;return{moduleBorderRadius:(0,template_utils_1.styledQrModuleRadius)(e),eyeOuterBorderRadius:a?0:template_utils_1.STYLED_QR_DEFAULTS.eyeOuterBorderRadius,eyeInnerDotBorderRadius:a?0:template_utils_1.STYLED_QR_DEFAULTS.eyeInnerDotBorderRadius,...s?{center:{width:template_utils_1.STYLED_QR_DEFAULTS.centerWidth,height:template_utils_1.STYLED_QR_DEFAULTS.centerHeight,paddingPct:template_utils_1.STYLED_QR_DEFAULTS.centerPaddingPct,docFor:s}}:{}}}h(stampLook,"stampLook");async function probeStampLuma(e,t,n,r,a){const s=a.analysis;if(!s)return;const i=a.media[(0,types_1.asAssetId)(e)];if(!i||!(i.width>0)||!(i.height>0)||i.kind!=="video"&&i.kind!=="image")return;const m=a.output.width,d=a.output.height,u=Math.min(m,d),l=n/100*u,o=r/100*u,c=t==="br"||t==="tr"?m-o-l:o,P=t==="br"||t==="bl"?d-o-l:o,p=Math.max(m/i.width,d/i.height),_=(i.width-m/p)/2,S=(i.height-d/p)/2,w=_+c/p,Q=S+P/p,g=l/p,b=Math.max(0,(w-.05*g)/i.width),v=Math.max(0,(Q-.05*g)/i.height),k={xPct:b,yPct:v,wPct:Math.min(1-b,1.1*g/i.width),hPct:Math.min(1-v,1.1*g/i.height)};try{const y=await s.regionLuminance(e,k,{bucketMs:500,smoothingMs:i.kind==="video"?1500:500});return y.buckets.length>0?y.buckets:void 0}catch{return}}h(probeStampLuma,"probeStampLuma"),exports.QrStampCustom=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/media/qr/stamp/v1"),label:"QR Stamp",version:1,lattice:{mode:"bitmap"},description:"Drop a QR onto any image or video. Same engine as the auto post-render watermark, exposed for direct use.",capabilities:{tier:"capability",caps:{fs:{read:!0,write:!0,temp:!0}}},tags:["brand","qr","stamp","custom","marketers","creators","animated","link","video"],outputHints:{width:1920,height:1080,fps:30,durationMs:5e3,format:{kind:"video",container:"mp4"}},propsSchema,defaultProps:DEFAULTS,async render(e,t){var n,r,a,s,i,m,d,u,l,o,c;if(!e.mediaPath)return(0,template_utils_1.makeErrorMosaic)("QrStampCustom: mediaPath prop is required (the media to brand).",{title:"QR Stamp",width:t.target.width,height:t.target.height});const P=(n=e.text)!==null&&n!==void 0?n:DEFAULTS.text,p=(r=e.position)!==null&&r!==void 0?r:DEFAULTS.position,_=(a=e.sizePct)!==null&&a!==void 0?a:DEFAULTS.sizePct,S=(s=e.marginPct)!==null&&s!==void 0?s:DEFAULTS.marginPct,w=(i=e.mode)!==null&&i!==void 0?i:DEFAULTS.mode,Q=(m=e.animation)!==null&&m!==void 0?m:DEFAULTS.animation,g=(d=e.moduleStyle)!==null&&d!==void 0?d:DEFAULTS.moduleStyle,b=(u=e.center)!==null&&u!==void 0?u:DEFAULTS.center,v=((l=e.centerAsset)===null||l===void 0?void 0:l.trim())||void 0;if(b==="asset"&&!v)return(0,template_utils_1.makeErrorMosaic)("QrStampCustom: Centre is 'asset' but no centre asset was given \u2014 pick an image or video, or switch Centre to 'm' / 'off'.",{title:"QR Stamp",width:t.target.width,height:t.target.height});const k=(0,template_utils_1.determineMediaType)(e.mediaPath,t),y=(0,types_1.asAssetId)("qr_stamp_custom_base"),D={[y]:{kind:"file",path:e.mediaPath,mediaType:k}},M={kind:"mosaic_document",version:1,m0:"F",sources:[{type:"media",mediaType:k,assetId:y,placement:{fit:"cover"}}],assets:D,size:{width:t.output.width,height:t.output.height}},T=(o=e.luminanceBuckets)!==null&&o!==void 0?o:w==="auto"?await probeStampLuma(e.mediaPath,p,_,S,t):void 0;let q;try{q=(0,template_utils_1.stampQrOnMedia)({baseDoc:M,text:P,position:p,sizePct:_/100,marginPct:S/100,mode:w,...T?{luminanceBuckets:T}:{},animation:Q,qr:stampLook(g,b,v,t),canvasW:t.output.width,canvasH:t.output.height})}catch(f){return(0,template_utils_1.makeErrorMosaic)(`QrStampCustom: ${f instanceof Error?f.message:String(f)}`,{title:"QR Stamp",width:t.target.width,height:t.target.height})}for(const f of(c=q.sources)!==null&&c!==void 0?c:[])f.type==="mosaic"&&(0,template_utils_1.bindProp)(f,"text");return q}}),exports.QrStampCustom.renderCover=h(async function(t,n){var r,a;const s=(0,onboarding_cover_1.brandedCoverHeroBox)(n,"band"),i=typeof process<"u"&&!!(!((r=process.versions)===null||r===void 0)&&r.node),m=h(c=>c.includes("/app.asar/")?c.split("/app.asar/").join("/app.asar.unpacked/"):c.split("\\app.asar\\").join("\\app.asar.unpacked\\"),"unpackedAsar"),d=(0,types_1.asAssetId)("qr-stamp-cover-frame"),u=i?{[d]:{kind:"file",path:m(`${__dirname}/assets/cover-frame.jpg`),mediaType:"image"}}:{},l={kind:"mosaic_document",version:1,m0:"F",sources:[i?{type:"media",mediaType:"image",assetId:d,placement:{fit:"cover"}}:{type:"lavfi",color:"#21262d"}],assets:u,size:{width:s.width,height:s.height}},o=(0,template_utils_1.stampQrOnMedia)({baseDoc:l,text:DEFAULTS.text,position:DEFAULTS.position,sizePct:DEFAULTS.sizePct/100,marginPct:DEFAULTS.marginPct/100,mode:"light",animation:"none",canvasW:s.width,canvasH:s.height});return(0,onboarding_cover_1.buildBrandedCover)({ctx:n,variant:"band",copy:{productName:"QR Stamp",title:"A scannable corner stamp on your media."},hero:h(c=>(0,onboarding_cover_1.onboardingFrame)((0,onboarding_cover_1.inlineHeroDoc)(o),c.borderStrong),"hero"),heroAssets:{...u,...(a=o.assets)!==null&&a!==void 0?a:{}},children:o.children})},"renderCover"),(0,template_utils_1.registerTemplate)(exports.QrStampCustom),exports.default=exports.QrStampCustom;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var p=Object.defineProperty;var e=(t,r)=>p(t,"name",{value:r,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildCornerStampM0=exports.composeAlpha=exports.buildEntranceExpr=exports.buildAdaptiveAlphaExpr=exports.bucketLightAlpha=void 0;var template_utils_1=require("@m0saic/template-utils");Object.defineProperty(exports,"bucketLightAlpha",{enumerable:!0,get:e(function(){return template_utils_1.bucketLightAlpha},"get")}),Object.defineProperty(exports,"buildAdaptiveAlphaExpr",{enumerable:!0,get:e(function(){return template_utils_1.buildAdaptiveAlphaExpr},"get")}),Object.defineProperty(exports,"buildEntranceExpr",{enumerable:!0,get:e(function(){return template_utils_1.buildEntranceExpr},"get")}),Object.defineProperty(exports,"composeAlpha",{enumerable:!0,get:e(function(){return template_utils_1.composeAlpha},"get")}),Object.defineProperty(exports,"buildCornerStampM0",{enumerable:!0,get:e(function(){return template_utils_1.buildCornerStampM0},"get")});
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";var v=Object.defineProperty;var c=(e,t)=>v(e,"name",{value:t,configurable:!0});var __createBinding=this&&this.__createBinding||(Object.create?(function(e,t,n,o){o===void 0&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);(!r||("get"in r?!t.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:c(function(){return t[n]},"get")}),Object.defineProperty(e,o,r)}):(function(e,t,n,o){o===void 0&&(o=n),e[o]=t[n]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),__importStar=this&&this.__importStar||(function(){var e=c(function(t){return e=Object.getOwnPropertyNames||function(n){var o=[];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(o[o.length]=r);return o},e(t)},"ownKeys");return function(t){if(t&&t.__esModule)return t;var n={};if(t!=null)for(var o=e(t),r=0;r<o.length;r++)o[r]!=="default"&&__createBinding(n,t,o[r]);return __setModuleDefault(n,t),n}})();Object.defineProperty(exports,"__esModule",{value:!0}),exports.generateGleamBandPng=generateGleamBandPng,exports.buildGleamSweepXExpr=buildGleamSweepXExpr;const fs=__importStar(require("fs")),path=__importStar(require("path")),svgRaster_1=require("../../../../_shared/svgRaster"),DEFAULTS={outputName:"qr-stamp-gleam.png",angleDeg:20,bandWidthFrac:.018,peakAlpha:.4};function buildGleamSvg(e){const{sizePx:t,angleDeg:n,bandWidthFrac:o,peakAlpha:r}=e,i=o,s=.5,u=(s-i)*100,p=(s-i*.6)*100,a=(s-i*.3)*100,f=s*100,l=(s+i*.3)*100,d=(s+i*.6)*100,x=(s+i)*100,h=r*.18,g=r*.5;return`
|
|
2
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${t} ${t}">
|
|
3
|
+
<defs>
|
|
4
|
+
<linearGradient id="gleam" x1="0%" y1="0%" x2="100%" y2="0%">
|
|
5
|
+
<stop offset="0%" stop-color="white" stop-opacity="0"/>
|
|
6
|
+
<stop offset="${u.toFixed(3)}%" stop-color="white" stop-opacity="0"/>
|
|
7
|
+
<stop offset="${p.toFixed(3)}%" stop-color="white" stop-opacity="${h.toFixed(3)}"/>
|
|
8
|
+
<stop offset="${a.toFixed(3)}%" stop-color="white" stop-opacity="${g.toFixed(3)}"/>
|
|
9
|
+
<stop offset="${f.toFixed(3)}%" stop-color="white" stop-opacity="${r.toFixed(3)}"/>
|
|
10
|
+
<stop offset="${l.toFixed(3)}%" stop-color="white" stop-opacity="${g.toFixed(3)}"/>
|
|
11
|
+
<stop offset="${d.toFixed(3)}%" stop-color="white" stop-opacity="${h.toFixed(3)}"/>
|
|
12
|
+
<stop offset="${x.toFixed(3)}%" stop-color="white" stop-opacity="0"/>
|
|
13
|
+
<stop offset="100%" stop-color="white" stop-opacity="0"/>
|
|
14
|
+
</linearGradient>
|
|
15
|
+
</defs>
|
|
16
|
+
<g transform="rotate(${n.toFixed(2)} ${t/2} ${t/2})">
|
|
17
|
+
<rect x="${-t}" y="${-t}" width="${t*3}" height="${t*3}" fill="url(#gleam)"/>
|
|
18
|
+
</g>
|
|
19
|
+
</svg>`.trim()}c(buildGleamSvg,"buildGleamSvg");async function generateGleamBandPng(e){var t,n,o,r;const i=(t=e.outputName)!==null&&t!==void 0?t:DEFAULTS.outputName,s=(n=e.angleDeg)!==null&&n!==void 0?n:DEFAULTS.angleDeg,u=(o=e.bandWidthFrac)!==null&&o!==void 0?o:DEFAULTS.bandWidthFrac,p=(r=e.peakAlpha)!==null&&r!==void 0?r:DEFAULTS.peakAlpha,a=Math.max(16,Math.round(e.sizePx)),f=buildGleamSvg({sizePx:a,angleDeg:s,bandWidthFrac:u,peakAlpha:p});fs.mkdirSync(e.workspaceDir,{recursive:!0});const l=path.join(e.workspaceDir,i),d=Math.max(72,Math.round(72*a*2/a));return await(0,svgRaster_1.renderSvgToPngFile)(f,l,a),{pngPath:l}}c(generateGleamBandPng,"generateGleamBandPng");function buildGleamSweepXExpr(e,t){const n=e>0?e:6,o=t>0?t:.9;return`(-0.7*w)+(0.7*w)*(1-cos(PI*${`min(1,mod(t,${n.toFixed(3)})/${o.toFixed(3)})`}))`}c(buildGleamSweepXExpr,"buildGleamSweepXExpr");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var t=(e,r)=>u(e,"name",{value:r,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.QrStampVideo=void 0;var qr_stamp_1=require("./qr-stamp");Object.defineProperty(exports,"QrStampVideo",{enumerable:!0,get:t(function(){return qr_stamp_1.QrStampVideo},"get")}),Object.defineProperty(exports,"default",{enumerable:!0,get:t(function(){return __importDefault(qr_stamp_1).default},"get")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var ee=Object.defineProperty;var M=(e,t)=>ee(e,"name",{value:t,configurable:!0});Object.defineProperty(exports,"__esModule",{value:!0}),exports.QrStampVideo=void 0;const types_1=require("@m0saic/types"),dsl_stdlib_1=require("@m0saic/dsl-stdlib"),template_utils_1=require("@m0saic/template-utils"),expressions_1=require("./expressions"),gleamBand_1=require("./gleamBand"),BRAND_ORANGE="#f97316";function variantBackgroundColor(e,t){if(e==="transparent")return;const r=e==="dark"?"#000000":"#ffffff",s=Math.max(0,Math.min(1,t));return s>=1?r:`${r}@${s}`}M(variantBackgroundColor,"variantBackgroundColor");const DEFAULTS={text:"https://www.m0saic.io",cornerInsetPx:24,stampSizePct:18,entrance:!1,entranceDurMs:400,gleam:!0,gleamPeriodSec:6,gleamSweepSec:.9,gleamAngleDeg:20,gleamPeakAlpha:.4,mode:"auto",adaptiveLowLuma:100,adaptiveHighLuma:156,crossfadeDurMs:400,bgOpacity:.92},propsSchema=(0,template_utils_1.definePropsSchema)({videoPath:{type:"media",required:!0,description:"Path to the base video file to stamp.",meta:{control:{picker:"file",accept:["video"]}}},text:{type:"string",required:!1,description:"Text encoded into the QR \u2014 URL, plain string, or structured payload (default: https://www.m0saic.io).",meta:{control:{flavor:"url",placeholder:"https://www.m0saic.io"}}},cornerInsetPx:{type:"number",required:!1,description:"Padding from the bottom-right edge, in pixels.",meta:{constraints:{min:0,max:500}}},stampSizePct:{type:"number",required:!1,description:"Stamp size as a percent of min(W, H).",meta:{constraints:{min:1,max:50}}},entrance:{type:"boolean",required:!1,description:"Play the entrance fade-in animation."},entranceDurMs:{type:"number",required:!1,description:"Entrance duration, ms.",meta:{constraints:{min:0,max:5e3}}},gleam:{type:"boolean",required:!1,description:"Periodic diagonal shine sweep on the QR (screen-blend overlay) \u2014 premium polish, on by default."},gleamPeriodSec:{type:"number",required:!1,description:"Time between gleam sweeps, in seconds.",meta:{constraints:{min:1,max:60}}},gleamSweepSec:{type:"number",required:!1,description:"How long each sweep takes (seconds). Short = quick flash, long = lazier shine.",meta:{constraints:{min:.2,max:10}}},gleamAngleDeg:{type:"number",required:!1,description:"Band angle in degrees (0 = vertical band, 20 = mild diagonal).",meta:{constraints:{min:0,max:60}}},gleamPeakAlpha:{type:"number",required:!1,description:"Peak alpha of the shine band (0..1).",meta:{constraints:{min:0,max:1}}},mode:{type:"string",required:!1,description:"QR adaptation mode.",meta:{constraints:{oneOf:["auto","light","dark","transparent"]}}},luminanceBuckets:{type:"json",required:!1,description:"Pre-computed luminance buckets for mode=auto. The CLI free-tier hook fills this from a probe over the bottom-right region."},adaptiveLowLuma:{type:"number",required:!1,description:"Auto-mode adaptive band low end. Decision threshold is the midpoint of [low, high].",meta:{constraints:{min:0,max:255}}},adaptiveHighLuma:{type:"number",required:!1,description:"Auto-mode adaptive band high end. Decision threshold is the midpoint of [low, high].",meta:{constraints:{min:0,max:255}}},crossfadeDurMs:{type:"number",required:!1,description:"Smoothstep crossfade duration in ms between auto-mode variants at scene boundaries.",meta:{constraints:{min:0,max:2e3}}},bgOpacity:{type:"number",required:!1,description:"Opacity of the QR's solid background, 0..1 (default 0.92). Lower = softer sticker.",meta:{constraints:{min:0,max:1}}}});function variantsForMode(e){return e==="auto"?["light","dark"]:e==="light"?["light"]:e==="dark"?["dark"]:["transparent"]}M(variantsForMode,"variantsForMode"),exports.QrStampVideo=(0,template_utils_1.defineMosaicTemplate)({id:(0,types_1.asTemplateId)("@m0saic/media/qr/stamp-video/v1"),label:"QR Stamp \u2014 Video (v1, deprecated)",version:1,lattice:{mode:"bitmap"},description:"Brands a video with an adaptive QR. The card crossfades light\u2194dark with the scene's brightness so the QR tones with the underlying frame. Optional gleam shine + entrance fade.",deprecated:{reason:"Fully absorbed by QR Stamp (media/qr/stamp/v1), which shares the same stampQrOnMedia adaptive-crossfade engine and additionally handles images. The one exclusive here \u2014 the render-time gleam sweep \u2014 is retired by design: decoration belongs baked into the input media (seed it with another template), not computed in the stamp. Kept as the reference adaptive video stamp.",replacement:(0,types_1.asTemplateId)("@m0saic/media/qr/stamp/v1"),since:"2026-07-21"},capabilities:{tier:"capability",caps:{fs:{read:!0,write:!0,temp:!0}}},tags:["brand","qr","watermark","free-tier","adaptive"],outputHints:{width:1920,height:1080,fps:30,durationMs:1e4,format:{kind:"video",container:"mp4"}},propsSchema,defaultProps:DEFAULTS,async render(e,t){var r,s,p,u,h,g,f,v,b,y,w,S,x,k,P,_;if(!e.videoPath)return(0,template_utils_1.makeErrorMosaic)("QrStampVideo: videoPath prop is required (the base video to stamp).",{title:"QR Stamp (Video)",width:t.target.width,height:t.target.height});const F=(r=e.text)!==null&&r!==void 0?r:DEFAULTS.text,C=(s=e.cornerInsetPx)!==null&&s!==void 0?s:DEFAULTS.cornerInsetPx,$=(p=e.stampSizePct)!==null&&p!==void 0?p:DEFAULTS.stampSizePct,D=(u=e.entrance)!==null&&u!==void 0?u:DEFAULTS.entrance,L=(h=e.entranceDurMs)!==null&&h!==void 0?h:DEFAULTS.entranceDurMs,Q=(g=e.gleam)!==null&&g!==void 0?g:DEFAULTS.gleam,I=(f=e.gleamPeriodSec)!==null&&f!==void 0?f:DEFAULTS.gleamPeriodSec,R=(v=e.gleamSweepSec)!==null&&v!==void 0?v:DEFAULTS.gleamSweepSec,G=(b=e.gleamAngleDeg)!==null&&b!==void 0?b:DEFAULTS.gleamAngleDeg,j=(y=e.gleamPeakAlpha)!==null&&y!==void 0?y:DEFAULTS.gleamPeakAlpha,T=(w=e.mode)!==null&&w!==void 0?w:DEFAULTS.mode,N=(S=e.luminanceBuckets)!==null&&S!==void 0?S:[],W=(x=e.adaptiveLowLuma)!==null&&x!==void 0?x:DEFAULTS.adaptiveLowLuma,K=(k=e.adaptiveHighLuma)!==null&&k!==void 0?k:DEFAULTS.adaptiveHighLuma,U=(P=e.crossfadeDurMs)!==null&&P!==void 0?P:DEFAULTS.crossfadeDurMs,X=(_=e.bgOpacity)!==null&&_!==void 0?_:DEFAULTS.bgOpacity,E=t.output.width,B=t.output.height,O=Math.max(64,Math.round(Math.min(E,B)*($/100))),H=variantsForMode(T),J=H.length+(Q?1:0),d=(0,expressions_1.buildCornerStampM0)({canvasW:E,canvasH:B,stampPx:O,gutterPx:C,overlayCount:J}),V=(0,types_1.asAssetId)("qr_stamp_base"),Y={[V]:{kind:"file",path:e.videoPath,mediaType:"video"}},q=[{type:"media",mediaType:"video",assetId:V,placement:{fit:"cover"}}],z={};for(const a of H){let i;try{i=(0,template_utils_1.qrToRenderable)({text:F,moduleColor:BRAND_ORANGE,errorCorrectionLevel:"H"})}catch(o){return(0,template_utils_1.makeErrorMosaic)(`QrStampVideo: ${o instanceof Error?o.message:String(o)}`,{title:"QR Stamp (Video)",width:t.target.width,height:t.target.height})}const l=variantBackgroundColor(a,X),c=`qr_stamp_${a}`;z[c]={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(String(i.m0),`QrStampVideo-qr-${a}`),sources:i.sources,assets:{},size:{width:i.canvasW,height:i.canvasH},...l!==void 0?{backgroundColor:l}:{}};const n=[];T==="auto"&&(a==="light"||a==="dark")&&n.push((0,expressions_1.buildAdaptiveAlphaExpr)(N,a,W,K,U/1e3)),D&&n.push((0,expressions_1.buildEntranceExpr)(0,L/1e3));const m=n.length>0?(0,expressions_1.composeAlpha)(...n):void 0;q.push({type:"mosaic",ref:c,placement:{fit:"contain",hAlign:"left",vAlign:"top",inset:{right:d.insetRight,bottom:d.insetBottom}},...m?{overlay:{alpha:m}}:{}})}const A={...z};if(Q){const{pngPath:a}=await(0,gleamBand_1.generateGleamBandPng)({sizePx:O,workspaceDir:t.output.workspaceDir,angleDeg:G,peakAlpha:j,outputName:"qr-stamp-gleam.png"}),i=(0,gleamBand_1.buildGleamSweepXExpr)(I,R),l=I.toFixed(3),c=R.toFixed(3),n=`lt(mod(t,${l}),${c})`,m=D?`gte(t,${(L/1e3).toFixed(3)})*${n}`:n,o=(0,types_1.asAssetId)("qr_stamp_gleam_inner"),Z={kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)("F{F}","QrStampGleamInner"),assets:{[o]:{kind:"file",path:a,mediaType:"image"}},sources:[{type:"lavfi",color:"black@0"},{type:"media",mediaType:"image",assetId:o,placement:{fit:"contain"},overlay:{xExpr:i,enable:m}}]};A.qr_stamp_gleam=Z,q.push({type:"mosaic",ref:"qr_stamp_gleam",placement:{fit:"contain",hAlign:"left",vAlign:"top",inset:{right:d.insetRight,bottom:d.insetBottom}},overlay:{blendMode:"screen",enable:m}})}return{kind:"mosaic_document",version:1,m0:(0,dsl_stdlib_1.toM0String)(d.m0,"QrStampVideo"),assets:Y,sources:q,...Object.keys(A).length>0?{children:A}:{}}}}),(0,template_utils_1.registerTemplate)(exports.QrStampVideo),exports.default=exports.QrStampVideo;
|