@popcraft/kit 0.25.0 → 0.26.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/dist/chunks/{agent-45ZGYKTC.js → agent-NTEAEZBN.js} +1 -1
- package/dist/chunks/{build-K6QBTLT7.js → build-W5O2ZVN7.js} +2 -2
- package/dist/chunks/{builtin-ZS3HJHZL.js → builtin-KX2SGDND.js} +3 -3
- package/dist/chunks/{check-template-RZ7IO333.js → check-template-B2KKE6BW.js} +2 -2
- package/dist/chunks/{chunk-ZKHYC3QO.js → chunk-37WES5PM.js} +2 -2
- package/dist/chunks/chunk-45JABNLR.js +161 -0
- package/dist/chunks/chunk-4OGILN7Y.js +141 -0
- package/dist/chunks/{chunk-63X37RCC.js → chunk-5NWVUAWR.js} +4 -4
- package/dist/chunks/{chunk-QREG6HEK.js → chunk-67SLLJJB.js} +40 -40
- package/dist/chunks/chunk-6DV5JZ5M.js +121 -0
- package/dist/chunks/chunk-7Q67MXXL.js +140 -0
- package/dist/chunks/{chunk-R5CW4CNP.js → chunk-A6GPFR5O.js} +11 -11
- package/dist/chunks/chunk-AISWLDDO.js +895 -0
- package/dist/chunks/{chunk-ADZXK6SM.js → chunk-AQGECTRJ.js} +1 -1
- package/dist/chunks/chunk-ASWWZNTY.js +130 -0
- package/dist/chunks/chunk-BNEFANT2.js +134 -0
- package/dist/chunks/{chunk-REJO7GXO.js → chunk-CFEKYNGQ.js} +2 -2
- package/dist/chunks/{chunk-5HG4LWF5.js → chunk-D4HEDPVN.js} +161 -0
- package/dist/chunks/chunk-DRESZDOP.js +130 -0
- package/dist/chunks/{chunk-3W2MSVJA.js → chunk-EBLHS2EG.js} +5 -5
- package/dist/chunks/chunk-EHTLT6XJ.js +131 -0
- package/dist/chunks/{chunk-2AQK4IIV.js → chunk-EVFG2K4L.js} +1 -1
- package/dist/chunks/{chunk-6TJIEERG.js → chunk-F4NTIOTT.js} +26 -26
- package/dist/chunks/chunk-FC7B22QS.js +150 -0
- package/dist/chunks/{chunk-V6COW3DB.js → chunk-G6MIC23V.js} +1 -1
- package/dist/chunks/{chunk-4QBQ4RAA.js → chunk-GODXMHO3.js} +4 -4
- package/dist/chunks/chunk-GT22XGDH.js +152 -0
- package/dist/chunks/chunk-HL4M53ZR.js +143 -0
- package/dist/chunks/{chunk-MPI6SCA7.js → chunk-IDL5KKIC.js} +5 -5
- package/dist/chunks/{chunk-HR7HCFPX.js → chunk-IM6HORNC.js} +5 -5
- package/dist/chunks/{chunk-UVMU6CXR.js → chunk-IWCZDFXL.js} +17 -17
- package/dist/chunks/{chunk-OCSLBM6W.js → chunk-JXAJ6OST.js} +1 -1
- package/dist/chunks/{chunk-5WGMPGKY.js → chunk-KS7DVWDB.js} +1 -1
- package/dist/chunks/chunk-NHDBQ4G7.js +137 -0
- package/dist/chunks/chunk-NKPU5TF2.js +103 -0
- package/dist/chunks/chunk-NO734F3F.js +146 -0
- package/dist/chunks/{chunk-ASWAIYNC.js → chunk-NR2SFSJU.js} +3 -3
- package/dist/chunks/{chunk-CJY4TNOS.js → chunk-O3BEBIDN.js} +3 -1
- package/dist/chunks/{chunk-UDO3ZU5T.js → chunk-OR6HMJRM.js} +1 -1
- package/dist/chunks/chunk-OTICJQ4T.js +267 -0
- package/dist/chunks/chunk-PWZZRGWI.js +141 -0
- package/dist/chunks/{chunk-AE6S2M2B.js → chunk-QX4U3VTU.js} +25 -25
- package/dist/chunks/{chunk-TRUFIU5W.js → chunk-R3YD6VL6.js} +3 -3
- package/dist/chunks/{chunk-YSYZW4VZ.js → chunk-SFPM3UJA.js} +7 -7
- package/dist/chunks/chunk-SNXQM4UO.js +115 -0
- package/dist/chunks/chunk-T3LV66CQ.js +139 -0
- package/dist/chunks/chunk-TDGIO2S7.js +145 -0
- package/dist/chunks/chunk-TFNV2UP4.js +87 -0
- package/dist/chunks/chunk-UJZXKOTP.js +136 -0
- package/dist/chunks/{chunk-QAVWMRRM.js → chunk-V5HI55XO.js} +2 -2
- package/dist/chunks/chunk-VVNPBBPL.js +174 -0
- package/dist/chunks/{chunk-22RNC42G.js → chunk-YHA45NK5.js} +1 -1
- package/dist/chunks/{chunk-27EVM272.js → chunk-YPMT4Y4N.js} +2 -2
- package/dist/chunks/chunk-YRSDFRCX.js +122 -0
- package/dist/chunks/chunk-ZNARVSMD.js +140 -0
- package/dist/chunks/{chunk-3DWOQ4LW.js → chunk-ZTBKAGBN.js} +2 -2
- package/dist/chunks/{client-6DUSRTZG.js → client-25NJXQWL.js} +1 -1
- package/dist/chunks/{client-XYPBNSQ7.js → client-7AQTKZHV.js} +2 -2
- package/dist/chunks/{client-TRFNJJHQ.js → client-LWBTUXQK.js} +2 -2
- package/dist/chunks/{client-actions-SSUZUEG7.js → client-actions-3HIRRSOL.js} +4 -4
- package/dist/chunks/{dangerous-UX4DHJ7U.js → dangerous-XJOHEWL6.js} +3 -3
- package/dist/chunks/{editor-seams-V7ZP7XH3.js → editor-seams-4DREZRTT.js} +9 -9
- package/dist/chunks/{editor-store-OIHZT244.js → editor-store-C4VWC23J.js} +1 -1
- package/dist/chunks/{export-watermark-4NAP5RVM.js → export-watermark-OKGRZNOU.js} +5 -5
- package/dist/chunks/{eyedropper-QXEY7LVL.js → eyedropper-WZYSTUTM.js} +1 -1
- package/dist/chunks/{generate-media-JAEHWNF6.js → generate-media-DFSHOPOI.js} +2 -2
- package/dist/chunks/{host-IKFYVZS7.js → host-4ZE7SIWR.js} +6 -6
- package/dist/chunks/{integrations-U5X2BHVK.js → integrations-LPC35FKX.js} +1 -1
- package/dist/chunks/{kit-modules-BAUMECYQ.js → kit-modules-BAKTDLOZ.js} +1 -1
- package/dist/chunks/{libraries-Q5TCHWGI.js → libraries-ACERXG2O.js} +5 -5
- package/dist/chunks/{live-4XQEGNLA.js → live-ZIVBFX3G.js} +3 -3
- package/dist/chunks/{media-tool-OSQR45HY.js → media-tool-2ZPIQKJD.js} +1 -1
- package/dist/chunks/{new-file-VVLWHEJ4.js → new-file-XS3KCMGM.js} +3 -3
- package/dist/chunks/{plugin-44ZW5UEP.js → plugin-6RNMUP5I.js} +2 -2
- package/dist/chunks/{plugin-import-3ISLDX7T.js → plugin-import-UC5BHZFE.js} +13 -13
- package/dist/chunks/{presence-WVU4OIUA.js → presence-TLDOMBPD.js} +2 -2
- package/dist/chunks/{project-EG7XFEJU.js → project-NMPK4R5M.js} +1 -1
- package/dist/chunks/{publish-site-WFIX42D3.js → publish-site-R46ZILSS.js} +6 -6
- package/dist/chunks/{publish-store-6BS7OIP4.js → publish-store-MIPHEDLV.js} +4 -4
- package/dist/chunks/{raster-actions-37XUQSVZ.js → raster-actions-7EI5THLB.js} +1 -1
- package/dist/chunks/{runner-HZ7MU6ER.js → runner-I66TTKKZ.js} +16 -16
- package/dist/chunks/{store-PHWBXKNY.js → store-7WMR3JKP.js} +5 -5
- package/dist/chunks/{sync-IJNKHQRF.js → sync-OFINS45Q.js} +5 -5
- package/dist/chunks/{tabs-G6OTEGA5.js → tabs-PEH6VX3X.js} +8 -8
- package/dist/chunks/{team-M2EN4JT5.js → team-GGW3O32G.js} +1 -1
- package/dist/chunks/{tools-WDFCY4BH.js → tools-TKCA46ZS.js} +2 -2
- package/dist/chunks/{ui-commands-QHFGR33P.js → ui-commands-6K4PYKU5.js} +11 -11
- package/dist/chunks/{versions-S7COCZSQ.js → versions-KHRNQFGF.js} +5 -5
- package/dist/index.js +4 -4
- package/dist/seed/files.json +1 -1
- package/dist/templates/count.js +1 -1
- package/dist/templates/index.js +125 -101
- package/dist/templates/index.json +756 -0
- package/dist/templates/motion/landing-hero/index.js +4 -4
- package/dist/templates/motion/launch-trailer/document.js +125 -101
- package/dist/templates/motion/launch-trailer/index.js +4 -4
- package/dist/templates/motion/launch-trailer/scenes.js +3 -3
- package/dist/templates/motion/template-wall.js +2 -2
- package/dist/templates/print/holidays-christmas-church-newsletter.js +94 -0
- package/dist/templates/print/holidays-christmas-eve-invitation.js +94 -0
- package/dist/templates/print/holidays-christmas-gift-tags.js +94 -0
- package/dist/templates/print/holidays-diwali-party-invitation.js +95 -0
- package/dist/templates/print/holidays-easter-activity-sheet.js +94 -0
- package/dist/templates/print/holidays-easter-egg-hunt-flyer.js +94 -0
- package/dist/templates/print/holidays-eid-dinner-invitation.js +95 -0
- package/dist/templates/print/holidays-eid-gift-tags.js +94 -0
- package/dist/templates/print/holidays-halloween-party-invitation.js +95 -0
- package/dist/templates/print/holidays-halloween-treat-labels.js +94 -0
- package/dist/templates/print/holidays-halloween-trunk-or-treat-poster.js +94 -0
- package/dist/templates/print/holidays-hanukkah-activity-sheet.js +94 -0
- package/dist/templates/print/holidays-hanukkah-party-invitation.js +94 -0
- package/dist/templates/print/holidays-lunar-new-year-banquet-menu.js +95 -0
- package/dist/templates/print/holidays-new-years-eve-poster.js +94 -0
- package/dist/templates/print/holidays-thanksgiving-dinner-menu.js +94 -0
- package/dist/templates/print/holidays-thanksgiving-place-cards.js +94 -0
- package/dist/templates/print/holidays-valentines-dinner-menu.js +94 -0
- package/dist/templates/saas/email-decks.js +2 -2
- package/dist/templates/saas/index.js +37 -37
- package/dist/templates/saas/launch-kit.js +2 -2
- package/dist/templates/saas/launch-video.js +2 -2
- package/dist/templates/saas/stores.js +2 -2
- package/dist/templates/saas/style-bento.js +2 -2
- package/dist/templates/saas/style-dark.js +2 -2
- package/dist/templates/saas/style-editorial.js +2 -2
- package/dist/templates/saas/style-gradient.js +2 -2
- package/dist/templates/saas/style-pastel.js +2 -2
- package/dist/templates/saas/style-swiss.js +2 -2
- package/dist/templates/slideshow/index.js +3 -3
- package/dist/templates/social/holidays-diwali-sweet-shop-post.js +96 -0
- package/dist/templates/social/holidays-lunar-new-year-bakery-post.js +96 -0
- package/dist/templates/social/holidays-new-years-eve-shop-hours.js +96 -0
- package/dist/templates/social/holidays-thanksgiving-pie-orders-post.js +96 -0
- package/dist/templates/social/holidays-valentines-florist-post.js +96 -0
- package/dist/templates/themes/black-friday-coupons.js +2 -2
- package/dist/templates/themes/black-friday-neon.js +2 -2
- package/dist/templates/themes/blueprint.js +2 -2
- package/dist/templates/themes/broadsheet.js +2 -2
- package/dist/templates/themes/cyberpunk.js +2 -2
- package/dist/templates/themes/departure-board.js +2 -2
- package/dist/templates/themes/festival-presale-family-a.js +2 -2
- package/dist/templates/themes/festival-presale-family-b.js +2 -2
- package/dist/templates/themes/holidays-shared.js +172 -0
- package/dist/templates/themes/holidays.js +107 -1
- package/dist/templates/themes/index.js +72 -48
- package/dist/templates/themes/lunar-new-year.js +2 -2
- package/dist/templates/themes/noir.js +2 -2
- package/dist/templates/themes/psychedelic.js +2 -2
- package/dist/templates/themes/space-opera.js +2 -2
- package/dist/templates/themes/studio.js +3 -3
- package/dist/templates/themes/tour-tickets.js +2 -2
- package/dist/templates/themes/vaporwave.js +2 -2
- package/package.json +1 -1
- package/src/templates/print/holidays-christmas-church-newsletter.ts +246 -0
- package/src/templates/print/holidays-christmas-eve-invitation.ts +121 -0
- package/src/templates/print/holidays-christmas-gift-tags.ts +117 -0
- package/src/templates/print/holidays-diwali-party-invitation.ts +98 -0
- package/src/templates/print/holidays-easter-activity-sheet.ts +108 -0
- package/src/templates/print/holidays-easter-egg-hunt-flyer.ts +118 -0
- package/src/templates/print/holidays-eid-dinner-invitation.ts +104 -0
- package/src/templates/print/holidays-eid-gift-tags.ts +94 -0
- package/src/templates/print/holidays-halloween-party-invitation.ts +101 -0
- package/src/templates/print/holidays-halloween-treat-labels.ts +86 -0
- package/src/templates/print/holidays-halloween-trunk-or-treat-poster.ts +148 -0
- package/src/templates/print/holidays-hanukkah-activity-sheet.ts +112 -0
- package/src/templates/print/holidays-hanukkah-party-invitation.ts +112 -0
- package/src/templates/print/holidays-lunar-new-year-banquet-menu.ts +110 -0
- package/src/templates/print/holidays-new-years-eve-poster.ts +117 -0
- package/src/templates/print/holidays-thanksgiving-dinner-menu.ts +110 -0
- package/src/templates/print/holidays-thanksgiving-place-cards.ts +80 -0
- package/src/templates/print/holidays-valentines-dinner-menu.ts +95 -0
- package/src/templates/social/holidays-diwali-sweet-shop-post.ts +121 -0
- package/src/templates/social/holidays-lunar-new-year-bakery-post.ts +110 -0
- package/src/templates/social/holidays-new-years-eve-shop-hours.ts +118 -0
- package/src/templates/social/holidays-thanksgiving-pie-orders-post.ts +115 -0
- package/src/templates/social/holidays-valentines-florist-post.ts +102 -0
- package/src/templates/themes/holidays-shared.ts +903 -0
- package/src/templates/themes/holidays.ts +24 -1
- package/types/templates/src/print/holidays-christmas-church-newsletter.d.ts +2 -0
- package/types/templates/src/print/holidays-christmas-eve-invitation.d.ts +2 -0
- package/types/templates/src/print/holidays-christmas-gift-tags.d.ts +2 -0
- package/types/templates/src/print/holidays-diwali-party-invitation.d.ts +2 -0
- package/types/templates/src/print/holidays-easter-activity-sheet.d.ts +2 -0
- package/types/templates/src/print/holidays-easter-egg-hunt-flyer.d.ts +2 -0
- package/types/templates/src/print/holidays-eid-dinner-invitation.d.ts +2 -0
- package/types/templates/src/print/holidays-eid-gift-tags.d.ts +2 -0
- package/types/templates/src/print/holidays-halloween-party-invitation.d.ts +2 -0
- package/types/templates/src/print/holidays-halloween-treat-labels.d.ts +2 -0
- package/types/templates/src/print/holidays-halloween-trunk-or-treat-poster.d.ts +2 -0
- package/types/templates/src/print/holidays-hanukkah-activity-sheet.d.ts +2 -0
- package/types/templates/src/print/holidays-hanukkah-party-invitation.d.ts +2 -0
- package/types/templates/src/print/holidays-lunar-new-year-banquet-menu.d.ts +2 -0
- package/types/templates/src/print/holidays-new-years-eve-poster.d.ts +2 -0
- package/types/templates/src/print/holidays-thanksgiving-dinner-menu.d.ts +2 -0
- package/types/templates/src/print/holidays-thanksgiving-place-cards.d.ts +2 -0
- package/types/templates/src/print/holidays-valentines-dinner-menu.d.ts +2 -0
- package/types/templates/src/social/holidays-diwali-sweet-shop-post.d.ts +2 -0
- package/types/templates/src/social/holidays-lunar-new-year-bakery-post.d.ts +2 -0
- package/types/templates/src/social/holidays-new-years-eve-shop-hours.d.ts +2 -0
- package/types/templates/src/social/holidays-thanksgiving-pie-orders-post.d.ts +2 -0
- package/types/templates/src/social/holidays-valentines-florist-post.d.ts +2 -0
- package/types/templates/src/themes/holidays-shared.d.ts +374 -0
- package/dist/chunks/chunk-OWZLREWX.js +0 -18
- package/dist/chunks/{chunk-IFJTWD4O.js → chunk-2R3MZKA2.js} +3 -3
- package/dist/chunks/{chunk-P67L32AF.js → chunk-3DBNMCGN.js} +3 -3
- package/dist/chunks/{chunk-DZDTVMUO.js → chunk-3VHOXVMF.js} +3 -3
- package/dist/chunks/{chunk-2PQI2R5L.js → chunk-64RMGOTG.js} +0 -0
- package/dist/chunks/{chunk-7BDCMMSD.js → chunk-6Y46SDFE.js} +3 -3
- package/dist/chunks/{chunk-6VCQ4ZEG.js → chunk-AFARXTNQ.js} +3 -3
- package/dist/chunks/{chunk-ITSYENCT.js → chunk-BI3M4RUH.js} +3 -3
- package/dist/chunks/{chunk-25FM5JIR.js → chunk-BP7CHO7K.js} +3 -3
- package/dist/chunks/{chunk-D22534DX.js → chunk-DPTFZDOS.js} +3 -3
- package/dist/chunks/{chunk-JWLR6K62.js → chunk-FNUM5W3W.js} +3 -3
- package/dist/chunks/{chunk-JPH6HOYU.js → chunk-HJQU5POV.js} +3 -3
- package/dist/chunks/{chunk-HQYZ4URA.js → chunk-IJ65QZLL.js} +3 -3
- package/dist/chunks/{chunk-47VVF5TM.js → chunk-INT2OPPY.js} +8 -8
- package/dist/chunks/{chunk-AYVAHMWQ.js → chunk-JPMLUHZX.js} +3 -3
- package/dist/chunks/{chunk-LFYNAAAQ.js → chunk-LMRTRVPC.js} +3 -3
- package/dist/chunks/{chunk-HJIMF4NA.js → chunk-NGMCQZA6.js} +3 -3
- package/dist/chunks/{chunk-B3ASV6KS.js → chunk-PQBYL7AI.js} +3 -3
- package/dist/chunks/{chunk-NHXNUDC5.js → chunk-QD4QORNR.js} +3 -3
- package/dist/chunks/{chunk-P6TPDLAF.js → chunk-S3C6L5KF.js} +3 -3
- package/dist/chunks/{chunk-TIRPXUK2.js → chunk-S7L2D7NH.js} +3 -3
- package/dist/chunks/{chunk-QFGFR5FQ.js → chunk-TYOOL27R.js} +3 -3
- package/dist/chunks/{chunk-32V4D45K.js → chunk-TYW7EXV6.js} +3 -3
- package/dist/chunks/{chunk-3QIDCP4M.js → chunk-VOEAQIQT.js} +3 -3
- package/dist/chunks/{chunk-ASVDOX62.js → chunk-VVUQG4ME.js} +3 -3
- package/dist/chunks/{chunk-ZXZ22FKF.js → chunk-XTWKSMJC.js} +3 -3
- package/dist/chunks/{chunk-6NG5K7WN.js → chunk-YHEMML5Q.js} +3 -3
- package/dist/chunks/{chunk-MVFPEBMY.js → chunk-ZKRSVNY4.js} +3 -3
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { createRequire as __popcraftRequire } from 'node:module';
|
|
2
|
+
import { fileURLToPath as __popcraftPath } from 'node:url';
|
|
3
|
+
import { dirname as __popcraftDirname } from 'node:path';
|
|
4
|
+
const require = __popcraftRequire(import.meta.url);
|
|
5
|
+
const __filename = __popcraftPath(import.meta.url);
|
|
6
|
+
const __dirname = __popcraftDirname(__filename);
|
|
7
|
+
import {
|
|
8
|
+
holidays_diwali_sweet_shop_post_default
|
|
9
|
+
} from "./chunk-45JABNLR.js";
|
|
10
|
+
import {
|
|
11
|
+
holidays_lunar_new_year_bakery_post_default
|
|
12
|
+
} from "./chunk-7Q67MXXL.js";
|
|
13
|
+
import {
|
|
14
|
+
holidays_new_years_eve_shop_hours_default
|
|
15
|
+
} from "./chunk-GT22XGDH.js";
|
|
16
|
+
import {
|
|
17
|
+
holidays_thanksgiving_pie_orders_post_default
|
|
18
|
+
} from "./chunk-HL4M53ZR.js";
|
|
19
|
+
import {
|
|
20
|
+
holidays_valentines_florist_post_default
|
|
21
|
+
} from "./chunk-ASWWZNTY.js";
|
|
22
|
+
import {
|
|
23
|
+
holidays_hanukkah_activity_sheet_default
|
|
24
|
+
} from "./chunk-NHDBQ4G7.js";
|
|
25
|
+
import {
|
|
26
|
+
holidays_hanukkah_party_invitation_default
|
|
27
|
+
} from "./chunk-4OGILN7Y.js";
|
|
28
|
+
import {
|
|
29
|
+
holidays_lunar_new_year_banquet_menu_default
|
|
30
|
+
} from "./chunk-UJZXKOTP.js";
|
|
31
|
+
import {
|
|
32
|
+
holidays_new_years_eve_poster_default
|
|
33
|
+
} from "./chunk-PWZZRGWI.js";
|
|
34
|
+
import {
|
|
35
|
+
holidays_thanksgiving_dinner_menu_default
|
|
36
|
+
} from "./chunk-TDGIO2S7.js";
|
|
37
|
+
import {
|
|
38
|
+
holidays_thanksgiving_place_cards_default
|
|
39
|
+
} from "./chunk-NKPU5TF2.js";
|
|
40
|
+
import {
|
|
41
|
+
holidays_valentines_dinner_menu_default
|
|
42
|
+
} from "./chunk-YRSDFRCX.js";
|
|
43
|
+
import {
|
|
44
|
+
holidays_diwali_party_invitation_default
|
|
45
|
+
} from "./chunk-DRESZDOP.js";
|
|
46
|
+
import {
|
|
47
|
+
holidays_easter_activity_sheet_default
|
|
48
|
+
} from "./chunk-EHTLT6XJ.js";
|
|
49
|
+
import {
|
|
50
|
+
holidays_easter_egg_hunt_flyer_default
|
|
51
|
+
} from "./chunk-NO734F3F.js";
|
|
52
|
+
import {
|
|
53
|
+
holidays_eid_dinner_invitation_default
|
|
54
|
+
} from "./chunk-ZNARVSMD.js";
|
|
55
|
+
import {
|
|
56
|
+
holidays_eid_gift_tags_default
|
|
57
|
+
} from "./chunk-6DV5JZ5M.js";
|
|
58
|
+
import {
|
|
59
|
+
holidays_halloween_party_invitation_default
|
|
60
|
+
} from "./chunk-T3LV66CQ.js";
|
|
61
|
+
import {
|
|
62
|
+
holidays_halloween_treat_labels_default
|
|
63
|
+
} from "./chunk-SNXQM4UO.js";
|
|
64
|
+
import {
|
|
65
|
+
holidays_halloween_trunk_or_treat_poster_default
|
|
66
|
+
} from "./chunk-VVNPBBPL.js";
|
|
67
|
+
import {
|
|
68
|
+
holidays_christmas_church_newsletter_default
|
|
69
|
+
} from "./chunk-OTICJQ4T.js";
|
|
70
|
+
import {
|
|
71
|
+
holidays_christmas_eve_invitation_default
|
|
72
|
+
} from "./chunk-FC7B22QS.js";
|
|
73
|
+
import {
|
|
74
|
+
holidays_christmas_gift_tags_default
|
|
75
|
+
} from "./chunk-BNEFANT2.js";
|
|
76
|
+
import {
|
|
77
|
+
init_define_POPCRAFT_COMPONENT_IDS
|
|
78
|
+
} from "./chunk-6VMOKHMF.js";
|
|
79
|
+
|
|
80
|
+
// templates/src/themes/holidays.ts
|
|
81
|
+
init_define_POPCRAFT_COMPONENT_IDS();
|
|
82
|
+
var pack = [holidays_christmas_eve_invitation_default, holidays_christmas_gift_tags_default, holidays_christmas_church_newsletter_default, holidays_hanukkah_party_invitation_default, holidays_hanukkah_activity_sheet_default, holidays_new_years_eve_poster_default, holidays_new_years_eve_shop_hours_default, holidays_valentines_dinner_menu_default, holidays_valentines_florist_post_default, holidays_easter_egg_hunt_flyer_default, holidays_easter_activity_sheet_default, holidays_halloween_party_invitation_default, holidays_halloween_treat_labels_default, holidays_halloween_trunk_or_treat_poster_default, holidays_thanksgiving_dinner_menu_default, holidays_thanksgiving_place_cards_default, holidays_thanksgiving_pie_orders_post_default, holidays_diwali_party_invitation_default, holidays_diwali_sweet_shop_post_default, holidays_eid_dinner_invitation_default, holidays_eid_gift_tags_default, holidays_lunar_new_year_banquet_menu_default, holidays_lunar_new_year_bakery_post_default];
|
|
83
|
+
var holidays_default = pack;
|
|
84
|
+
|
|
85
|
+
export {
|
|
86
|
+
holidays_default
|
|
87
|
+
};
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { createRequire as __popcraftRequire } from 'node:module';
|
|
2
|
+
import { fileURLToPath as __popcraftPath } from 'node:url';
|
|
3
|
+
import { dirname as __popcraftDirname } from 'node:path';
|
|
4
|
+
const require = __popcraftRequire(import.meta.url);
|
|
5
|
+
const __filename = __popcraftPath(import.meta.url);
|
|
6
|
+
const __dirname = __popcraftDirname(__filename);
|
|
7
|
+
import {
|
|
8
|
+
branch,
|
|
9
|
+
cloudCurl,
|
|
10
|
+
coin,
|
|
11
|
+
disc,
|
|
12
|
+
doubleRule,
|
|
13
|
+
draw,
|
|
14
|
+
flourishComponent,
|
|
15
|
+
plum,
|
|
16
|
+
redLantern
|
|
17
|
+
} from "./chunk-AISWLDDO.js";
|
|
18
|
+
import {
|
|
19
|
+
SERIF
|
|
20
|
+
} from "./chunk-X23ZWFW2.js";
|
|
21
|
+
import {
|
|
22
|
+
blurred
|
|
23
|
+
} from "./chunk-HVK5T4I5.js";
|
|
24
|
+
import {
|
|
25
|
+
defineTemplate
|
|
26
|
+
} from "./chunk-A44WEVKR.js";
|
|
27
|
+
import {
|
|
28
|
+
Kit,
|
|
29
|
+
preset
|
|
30
|
+
} from "./chunk-T3SGRYUX.js";
|
|
31
|
+
import {
|
|
32
|
+
init_define_POPCRAFT_COMPONENT_IDS
|
|
33
|
+
} from "./chunk-6VMOKHMF.js";
|
|
34
|
+
|
|
35
|
+
// templates/src/print/holidays-lunar-new-year-banquet-menu.ts
|
|
36
|
+
init_define_POPCRAFT_COMPONENT_IDS();
|
|
37
|
+
var NAME = "Lunar New Year banquet menu";
|
|
38
|
+
var PAD = { top: 212, right: 60, bottom: 92, left: 60 };
|
|
39
|
+
var DISHES = [
|
|
40
|
+
["Prosperity salad, tossed at the table", "Lo hei: toss it high for a good year"],
|
|
41
|
+
["Crystal prawn and chive dumplings", "Shaped like silver ingots, for wealth"],
|
|
42
|
+
["Golden spring rolls", "Bars of gold"],
|
|
43
|
+
["Whole steamed sea bass, ginger and scallion", "Plenty, with some to spare"],
|
|
44
|
+
["Braised e-fu longevity noodles", "Long noodles for long life: no cutting"],
|
|
45
|
+
["Soy-glazed duck with lotus leaf rice", "A table that stays together"],
|
|
46
|
+
["Stir-fried greens with garlic", "A fresh start"],
|
|
47
|
+
["Sesame tangyuan in ginger syrup, and nian gao", "Reunion, and rising higher every year"]
|
|
48
|
+
];
|
|
49
|
+
function art(w, h) {
|
|
50
|
+
const s = w / 559, B = 12 * s;
|
|
51
|
+
const l1 = redLantern(92 * s, -B, 118 * s, 48 * s), l2 = redLantern(w - 92 * s, -B, 96 * s, 28 * s);
|
|
52
|
+
const br = branch([{ x: w + B, y: 168 * s }, { x: w - 120 * s, y: 150 * s }, { x: w - 230 * s, y: 172 * s }, { x: w - 330 * s, y: 154 * s }], 6, 5, 50 * s);
|
|
53
|
+
const blossoms = br.ends.slice(0, 9).map((p, i) => plum(p.x, p.y, (i % 3 ? 10 : 14) * s, i));
|
|
54
|
+
const cloudL = cloudCurl(24 * s, h - 44 * s, 130 * s, 1), cloudR = cloudCurl(w - 24 * s, h - 40 * s, 116 * s, -1);
|
|
55
|
+
const coins = [coin(w / 2 - 36 * s, h - 40 * s, 12 * s), coin(w / 2, h - 44 * s, 14 * s), coin(w / 2 + 36 * s, h - 40 * s, 12 * s)];
|
|
56
|
+
const lanterns = [l1, l2];
|
|
57
|
+
return [
|
|
58
|
+
{ name: "Frame", paths: doubleRule(w, h, 18 * s, 6 * s), color: "gold", o: { strokeWidth: 1 * s } },
|
|
59
|
+
{ name: "Branch", paths: br.limb, color: "bark", o: { strokeWidth: 5 * s } },
|
|
60
|
+
{ name: "Twigs", paths: br.twigs, color: "bark", o: { strokeWidth: 2.4 * s } },
|
|
61
|
+
{ name: "Blossoms", paths: blossoms.flatMap((b) => b.petals), color: "blossom" },
|
|
62
|
+
{ name: "Blossom hearts", paths: blossoms.flatMap((b) => b.heart), color: "gold" },
|
|
63
|
+
{ name: "Lantern glow", paths: lanterns.flatMap((l) => l.body), color: "glow", o: { opacity: 0.45, effects: [blurred(16 * s)] } },
|
|
64
|
+
{ name: "Lantern cords", paths: lanterns.flatMap((l) => l.cord), color: "gold", o: { strokeWidth: 1.4 * s } },
|
|
65
|
+
{ name: "Lanterns", paths: lanterns.flatMap((l) => l.body), color: "lantern" },
|
|
66
|
+
{ name: "Lantern ribs", paths: lanterns.flatMap((l) => l.ribs), color: "gold", o: { strokeWidth: 1.4 * s } },
|
|
67
|
+
{ name: "Lantern caps", paths: lanterns.flatMap((l) => l.caps), color: "gold" },
|
|
68
|
+
{ name: "Tassels", paths: lanterns.flatMap((l) => l.tassel), color: "gold" },
|
|
69
|
+
{ name: "Clouds", paths: cloudL, color: "gold", o: { strokeWidth: 2.4 * s } },
|
|
70
|
+
{ name: "Clouds", paths: cloudR, color: "gold", o: { strokeWidth: 2.4 * s } },
|
|
71
|
+
{ name: "Coins", paths: coins.flatMap((c) => c.coin), color: "gold" },
|
|
72
|
+
{ name: "Coin holes", paths: coins.flatMap((c) => c.hole), color: "paperRed" },
|
|
73
|
+
{ name: "Coin rims", paths: coins.flatMap((c) => c.rim), color: "goldDeep", o: { strokeWidth: 1 * s } },
|
|
74
|
+
{ name: "Dots", paths: [disc(w / 2 - 62 * s, h - 42 * s, 2.4 * s), disc(w / 2 + 62 * s, h - 42 * s, 2.4 * s)], color: "gold" }
|
|
75
|
+
];
|
|
76
|
+
}
|
|
77
|
+
var holidays_lunar_new_year_banquet_menu_default = defineTemplate({
|
|
78
|
+
id: "print-holidays-lunar-new-year-banquet-menu",
|
|
79
|
+
meta: {
|
|
80
|
+
name: NAME,
|
|
81
|
+
description: "A restaurant menu for the Lunar New Year\u2019s Eve reunion dinner: a deep red card in a fine gold double frame, round red lanterns with gold ribs, a branch of plum blossom, auspicious clouds and coins at the foot, and eight banquet dishes each with the wish it brings the table. A5 with bleed",
|
|
82
|
+
category: "menu",
|
|
83
|
+
tags: ["lunar new year", "chinese new year", "spring festival", "reunion dinner", "banquet", "restaurant", "menu", "lanterns", "plum blossom", "red and gold", "year of the goat", "small business", "print"],
|
|
84
|
+
platforms: ["print"],
|
|
85
|
+
formats: ["card"],
|
|
86
|
+
useCases: ["menu", "event"],
|
|
87
|
+
created: "2026-10-10",
|
|
88
|
+
updated: "2026-10-10"
|
|
89
|
+
},
|
|
90
|
+
stableNumbers: true,
|
|
91
|
+
build() {
|
|
92
|
+
const k = new Kit(NAME, preset("a5"));
|
|
93
|
+
k.quantizeGeometry = true;
|
|
94
|
+
k.brand(
|
|
95
|
+
{ paper: "#A3141E", text: "#FFF1D8", onPaper: "#F4C95D", primary: "#F4C95D", onPrimary: "#A3141E" },
|
|
96
|
+
{ name: "Golden Lotus" }
|
|
97
|
+
);
|
|
98
|
+
k.palette({ gold: "#E9BC52", goldDeep: "#B0852A", lantern: "#D8242F", glow: "#FF7A45", blossom: "#F7C6CF", bark: "#4A1A12", paperRed: "#A3141E" });
|
|
99
|
+
k.textStyle("Kicker 11", { size: 11, fontWeight: 700, letterSpacing: 3.4, lineHeight: 16 });
|
|
100
|
+
k.textStyle("Title 40", { ...SERIF, size: 40, fontWeight: 700, letterSpacing: -0.6, lineHeight: 44 });
|
|
101
|
+
k.textStyle("Greeting 15", { ...SERIF, size: 15, fontWeight: 400, fontStyle: "italic", lineHeight: 20 });
|
|
102
|
+
k.textStyle("Dish 14", { ...SERIF, size: 14, fontWeight: 600, lineHeight: 18 });
|
|
103
|
+
k.textStyle("Wish 10.5", { ...SERIF, size: 10.5, fontWeight: 400, fontStyle: "italic", lineHeight: 14 });
|
|
104
|
+
k.textStyle("Price 11", { size: 11, fontWeight: 700, letterSpacing: 1.2, lineHeight: 16 });
|
|
105
|
+
const DW = Math.round(k.node(k.sheet).width - PAD.left - PAD.right);
|
|
106
|
+
k.component("Dish", { gap: 1, width: DW, align: "CENTER", props: { Dish: "Dish", Wish: "What it wishes you" } }, (id) => {
|
|
107
|
+
k.propText(id, "Dish", { style: "Dish 14", color: "text", align: "CENTER", width: "FILL", name: "Dish name" });
|
|
108
|
+
k.propText(id, "Wish", { style: "Wish 10.5", color: "onPaper", align: "CENTER", width: "FILL", name: "Wish" });
|
|
109
|
+
});
|
|
110
|
+
flourishComponent(k, "Coin rule", "onPaper", disc(0, 0, 6), { rule: 40, size: 8 });
|
|
111
|
+
const sheet = k.sheet;
|
|
112
|
+
const { width: W, height: H } = k.node(sheet);
|
|
113
|
+
k.flowSheet(sheet, 0, PAD, "paper", "MIN", "CENTER");
|
|
114
|
+
draw(k, sheet, art(W, H));
|
|
115
|
+
const c = { align: "CENTER", width: "FILL" };
|
|
116
|
+
k.text(sheet, "FRIDAY 5 FEBRUARY \xB7 NEW YEAR\u2019S EVE", { style: "Kicker 11", color: "onPaper", ...c, name: "Kicker" });
|
|
117
|
+
k.stack(sheet, { height: 6, name: "Gap" });
|
|
118
|
+
k.text(sheet, "Reunion Dinner", { style: "Title 40", color: "text", ...c, name: "Title" });
|
|
119
|
+
k.text(sheet, "Gong hei fat choy, and welcome to the Year of the Goat", { style: "Greeting 15", color: "onPaper", ...c, name: "Greeting" });
|
|
120
|
+
k.stack(sheet, { height: 14, name: "Gap" });
|
|
121
|
+
k.instance(sheet, "Coin rule", {}, { name: "Divider" });
|
|
122
|
+
k.stack(sheet, { height: 14, name: "Gap" });
|
|
123
|
+
for (const [i, [dish, wish]] of DISHES.entries()) {
|
|
124
|
+
k.instance(sheet, "Dish", { Dish: dish, Wish: wish }, { name: "Dish", width: "FILL" });
|
|
125
|
+
if (i < DISHES.length - 1) k.stack(sheet, { height: 6, name: "Gap" });
|
|
126
|
+
}
|
|
127
|
+
k.stack(sheet, { height: 16, name: "Gap" });
|
|
128
|
+
k.text(sheet, "$388 PER TABLE OF TEN \xB7 SEATINGS AT 5:30 AND 8", { style: "Price 11", color: "onPaper", ...c, name: "Price" });
|
|
129
|
+
k.text(sheet, "{{brand.name}}, 136-20 41st Avenue, Flushing", { style: "Wish 10.5", color: "text", ...c, name: "Address" });
|
|
130
|
+
return k.finish();
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
|
|
134
|
+
export {
|
|
135
|
+
holidays_lunar_new_year_banquet_menu_default
|
|
136
|
+
};
|
|
@@ -28,10 +28,10 @@ import {
|
|
|
28
28
|
requestImageAction,
|
|
29
29
|
sizeForAspect,
|
|
30
30
|
vectorSupport
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-O3BEBIDN.js";
|
|
32
32
|
import {
|
|
33
33
|
useEditorStore
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-IM6HORNC.js";
|
|
35
35
|
import {
|
|
36
36
|
getActiveRenderer
|
|
37
37
|
} from "./chunk-ILG7UWXL.js";
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { createRequire as __popcraftRequire } from 'node:module';
|
|
2
|
+
import { fileURLToPath as __popcraftPath } from 'node:url';
|
|
3
|
+
import { dirname as __popcraftDirname } from 'node:path';
|
|
4
|
+
const require = __popcraftRequire(import.meta.url);
|
|
5
|
+
const __filename = __popcraftPath(import.meta.url);
|
|
6
|
+
const __dirname = __popcraftDirname(__filename);
|
|
7
|
+
import {
|
|
8
|
+
along,
|
|
9
|
+
bat,
|
|
10
|
+
candyCorn,
|
|
11
|
+
disc,
|
|
12
|
+
draw,
|
|
13
|
+
egg,
|
|
14
|
+
jackFace,
|
|
15
|
+
polyP,
|
|
16
|
+
printVariant,
|
|
17
|
+
pumpkin,
|
|
18
|
+
quad,
|
|
19
|
+
rectPath,
|
|
20
|
+
roundRect
|
|
21
|
+
} from "./chunk-AISWLDDO.js";
|
|
22
|
+
import {
|
|
23
|
+
SERIF
|
|
24
|
+
} from "./chunk-X23ZWFW2.js";
|
|
25
|
+
import {
|
|
26
|
+
defineTemplate
|
|
27
|
+
} from "./chunk-A44WEVKR.js";
|
|
28
|
+
import {
|
|
29
|
+
Kit,
|
|
30
|
+
preset
|
|
31
|
+
} from "./chunk-T3SGRYUX.js";
|
|
32
|
+
import {
|
|
33
|
+
init_define_POPCRAFT_COMPONENT_IDS
|
|
34
|
+
} from "./chunk-6VMOKHMF.js";
|
|
35
|
+
|
|
36
|
+
// templates/src/print/holidays-halloween-trunk-or-treat-poster.ts
|
|
37
|
+
init_define_POPCRAFT_COMPONENT_IDS();
|
|
38
|
+
var NAME = "Trunk-or-treat poster";
|
|
39
|
+
var PAD = { top: 80, right: 72, bottom: 64, left: 72 };
|
|
40
|
+
function car(x, ground, s) {
|
|
41
|
+
const u = (v) => v * s;
|
|
42
|
+
const body = [roundRect(x, ground - u(150), u(520), u(110), u(30)), polyP([{ x: x + u(150), y: ground - u(146) }, { x: x + u(210), y: ground - u(250) }, { x: x + u(420), y: ground - u(250) }, { x: x + u(500), y: ground - u(146) }])];
|
|
43
|
+
const windows = [polyP([{ x: x + u(232), y: ground - u(232) }, { x: x + u(318), y: ground - u(232) }, { x: x + u(318), y: ground - u(160) }, { x: x + u(196), y: ground - u(160) }]), polyP([{ x: x + u(332), y: ground - u(232) }, { x: x + u(412), y: ground - u(232) }, { x: x + u(472), y: ground - u(160) }, { x: x + u(332), y: ground - u(160) }])];
|
|
44
|
+
const wheels = [disc(x + u(110), ground - u(36), u(46)), disc(x + u(420), ground - u(36), u(46))];
|
|
45
|
+
const hubs = [disc(x + u(110), ground - u(36), u(18)), disc(x + u(420), ground - u(36), u(18))];
|
|
46
|
+
const gate = [polyP([{ x: x + u(170), y: ground - u(252) }, { x: x + u(40), y: ground - u(330) }, { x: x - u(10), y: ground - u(316) }, { x: x + u(150), y: ground - u(240) }])];
|
|
47
|
+
const boot = [polyP([{ x: x + u(16), y: ground - u(146) }, { x: x + u(160), y: ground - u(146) }, { x: x + u(200), y: ground - u(236) }, { x: x + u(150), y: ground - u(240) }])];
|
|
48
|
+
return { body, windows, wheels, hubs, gate, boot };
|
|
49
|
+
}
|
|
50
|
+
function art(w, h) {
|
|
51
|
+
const s = w / 1056, B = 12;
|
|
52
|
+
const dots = [];
|
|
53
|
+
for (let row = 0; row < 16; row++) for (let col = 0; col < 40; col++) {
|
|
54
|
+
const x = -B + col * 28 * s + row % 2 * 14 * s, y = -B + row * 26 * s, r = Math.max(0, (1 - row / 16) * 10 * s);
|
|
55
|
+
if (r > 0.6) dots.push(disc(x, y, r));
|
|
56
|
+
}
|
|
57
|
+
const g = h - 420 * s, U = 1.5 * s, X = (w - 520 * U) / 2 + 40 * s;
|
|
58
|
+
const c = car(X, g, U);
|
|
59
|
+
const floor = g - 150 * U;
|
|
60
|
+
const pumps = [[60, 70, 54], [118, 50, 40], [24, 44, 34]].map(([dx, pw, ph]) => ({ x: X + dx * U, y: floor, pw: pw * U, ph: ph * U, p: pumpkin(X + dx * U, floor, pw * U, ph * U) }));
|
|
61
|
+
const corn = [candyCorn(X + 96 * U, floor - 50 * U, 26 * U, -0.4), candyCorn(X + 140 * U, floor - 46 * U, 24 * U, 0.3), candyCorn(X + 8 * U, floor - 40 * U, 22 * U, 0.7)];
|
|
62
|
+
const ga = { x: X + 150 * U, y: g - 240 * U }, gb = { x: X - 10 * U, y: g - 316 * U };
|
|
63
|
+
const bunting = [0, 1, 2, 3, 4, 5].map((i) => {
|
|
64
|
+
const t0 = 0.04 + i * 0.16, t1 = t0 + 0.12;
|
|
65
|
+
const p0 = { x: ga.x + (gb.x - ga.x) * t0, y: ga.y + (gb.y - ga.y) * t0 }, p1 = { x: ga.x + (gb.x - ga.x) * t1, y: ga.y + (gb.y - ga.y) * t1 };
|
|
66
|
+
return polyP([p0, p1, { x: (p0.x + p1.x) / 2, y: (p0.y + p1.y) / 2 + 30 * U }]);
|
|
67
|
+
});
|
|
68
|
+
const wire = [], bulbs = [[], [], []];
|
|
69
|
+
for (let span = 0; span < 3; span++) {
|
|
70
|
+
const a = { x: -B + span * (w + 2 * B) / 3, y: 600 * s }, z = { x: -B + (span + 1) * (w + 2 * B) / 3, y: 600 * s }, m = { x: (a.x + z.x) / 2, y: 680 * s };
|
|
71
|
+
wire.push(quad(a, m, z, 16));
|
|
72
|
+
for (let i = 1; i < 6; i++) {
|
|
73
|
+
const q = along(a, m, z, i / 6).p;
|
|
74
|
+
bulbs[(i + span) % 3].push(egg(q.x, q.y + 16 * s, 16 * s, 24 * s, Math.PI));
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
const bats = [[0.16, 0.3, 70, 0.3], [0.82, 0.26, 90, -0.2], [0.9, 0.42, 50, 0.4], [0.08, 0.44, 46, -0.3]].map(([x, y, sz, f]) => bat(w * x, h * y, sz * s, f));
|
|
78
|
+
return [
|
|
79
|
+
{ name: "Halftone", paths: dots, color: "orangeDeep", o: { opacity: 0.55 } },
|
|
80
|
+
...bats.map((b) => ({ name: "Bat", paths: [b], color: "purple" })),
|
|
81
|
+
{ name: "Light wire", paths: wire, color: "purple", o: { strokeWidth: 2.4 * s } },
|
|
82
|
+
{ name: "Bulbs", paths: bulbs[0], color: "teal" },
|
|
83
|
+
{ name: "Bulbs", paths: bulbs[1], color: "cream" },
|
|
84
|
+
{ name: "Bulbs", paths: bulbs[2], color: "purpleDeep" },
|
|
85
|
+
{ name: "Asphalt", paths: [rectPath(-B, g - 6 * s, w + 2 * B, h - g + 6 * s + B)], color: "purple" },
|
|
86
|
+
{ name: "Kerb", paths: [rectPath(-B, g - 6 * s, w + 2 * B, 6 * s)], color: "orangeDeep" },
|
|
87
|
+
{ name: "Car", paths: c.body, color: "teal" },
|
|
88
|
+
{ name: "Tailgate", paths: c.gate, color: "teal" },
|
|
89
|
+
{ name: "Boot", paths: c.boot, color: "purpleDeep" },
|
|
90
|
+
{ name: "Car windows", paths: c.windows, color: "purpleDeep" },
|
|
91
|
+
{ name: "Wheels", paths: c.wheels, color: "purpleDeep" },
|
|
92
|
+
{ name: "Hubs", paths: c.hubs, color: "orange" },
|
|
93
|
+
{ name: "Bunting", paths: bunting.filter((_, i) => i % 2 === 0), color: "orange" },
|
|
94
|
+
{ name: "Bunting", paths: bunting.filter((_, i) => i % 2 === 1), color: "cream" },
|
|
95
|
+
{ name: "Boot pumpkins", paths: pumps.flatMap((p) => p.p.lobes), color: "orange" },
|
|
96
|
+
{ name: "Boot pumpkin creases", paths: pumps.flatMap((p) => p.p.creases), color: "orangeDeep", o: { strokeWidth: 2 * s } },
|
|
97
|
+
{ name: "Boot pumpkin stems", paths: pumps.flatMap((p) => p.p.stem), color: "purpleDeep" },
|
|
98
|
+
{ name: "Boot pumpkin faces", paths: jackFace(pumps[0].x, pumps[0].y - pumps[0].ph * 0.5, pumps[0].pw * 0.8), color: "purpleDeep" },
|
|
99
|
+
{ name: "Candy corn", paths: corn.flatMap((k) => [...k.base, ...k.mid, ...k.tip]), color: "cream" }
|
|
100
|
+
];
|
|
101
|
+
}
|
|
102
|
+
var holidays_halloween_trunk_or_treat_poster_default = defineTemplate({
|
|
103
|
+
id: "print-holidays-halloween-trunk-or-treat-poster",
|
|
104
|
+
meta: {
|
|
105
|
+
name: NAME,
|
|
106
|
+
description: "A two-colour screenprint-style poster for a church car-park trunk-or-treat: a halftone sky behind \u201CTrunk or Treat\u201D in huge capitals, a hatchback with its boot open and spilling pumpkins, candy and bunting, and the details in two columns: when and where, the costume parade, the best-trunk prize and the teal-pumpkin table of allergy-friendly treats. Tabloid with bleed, and a US Letter flyer",
|
|
107
|
+
category: "poster",
|
|
108
|
+
tags: ["halloween", "trunk or treat", "church", "community", "kids", "family", "costume parade", "teal pumpkin", "screenprint", "retro", "poster", "flyer", "print", "event"],
|
|
109
|
+
platforms: ["print"],
|
|
110
|
+
formats: ["poster", "flyer"],
|
|
111
|
+
useCases: ["event", "announcement"],
|
|
112
|
+
created: "2026-10-10",
|
|
113
|
+
updated: "2026-10-10"
|
|
114
|
+
},
|
|
115
|
+
stableNumbers: true,
|
|
116
|
+
build() {
|
|
117
|
+
const k = new Kit(NAME, preset("tabloid"));
|
|
118
|
+
k.quantizeGeometry = true;
|
|
119
|
+
k.brand(
|
|
120
|
+
{ paper: "#F28A2E", text: "#2A1840", onPaper: "#3E2559", primary: "#2A1840", onPrimary: "#FFE9CC" },
|
|
121
|
+
{ name: "Grace Community Church", site: "gracecommunity.org/trunk" }
|
|
122
|
+
);
|
|
123
|
+
k.palette({ orange: "#F28A2E", orangeDeep: "#D9661A", purple: "#2A1840", purpleDeep: "#1A0E29", teal: "#3FB3A6", cream: "#FFE9CC" });
|
|
124
|
+
k.textStyle("Kicker 30", { size: 30, fontWeight: 800, letterSpacing: 8, lineHeight: 38 });
|
|
125
|
+
k.textStyle("Title 176", { size: 176, fontWeight: 900, letterSpacing: -7, lineHeight: 150 });
|
|
126
|
+
k.textStyle("Sub 34", { ...SERIF, size: 34, fontWeight: 700, fontStyle: "italic", lineHeight: 42 });
|
|
127
|
+
k.textStyle("Col head 22", { size: 22, fontWeight: 800, letterSpacing: 3, lineHeight: 28 });
|
|
128
|
+
k.textStyle("Col 22", { ...SERIF, size: 22, fontWeight: 400, lineHeight: 31 });
|
|
129
|
+
k.textStyle("Foot 22", { size: 22, fontWeight: 700, letterSpacing: 1, lineHeight: 28 });
|
|
130
|
+
k.component("Detail", { gap: 6, width: 420, props: { Head: "WHEN", Text: "What happens" } }, (id) => {
|
|
131
|
+
k.propText(id, "Head", { style: "Col head 22", color: "cream", width: "FILL", name: "Detail head" });
|
|
132
|
+
k.propText(id, "Text", { style: "Col 22", color: "cream", width: "FILL", name: "Detail text" });
|
|
133
|
+
});
|
|
134
|
+
const sheet = k.sheet;
|
|
135
|
+
const { width: W, height: H } = k.node(sheet);
|
|
136
|
+
k.flowSheet(sheet, 0, PAD, "paper", "MIN", "CENTER");
|
|
137
|
+
draw(k, sheet, art(W, H));
|
|
138
|
+
const c = { align: "CENTER", width: "FILL" };
|
|
139
|
+
k.text(sheet, "FRIDAY 30 OCTOBER \xB7 5:30\u20137:30 PM", { style: "Kicker 30", color: "text", ...c, name: "Kicker" });
|
|
140
|
+
k.stack(sheet, { height: 14, name: "Gap" });
|
|
141
|
+
k.text(sheet, "TRUNK\nOR TREAT", { style: "Title 176", color: "text", ...c, name: "Title" });
|
|
142
|
+
k.stack(sheet, { height: 14, name: "Gap" });
|
|
143
|
+
k.text(sheet, "Safe, bright, and the candy comes to you", { style: "Sub 34", color: "text", ...c, name: "Sub" });
|
|
144
|
+
k.stack(sheet, { width: "FILL", height: "FILL", name: "Car space" });
|
|
145
|
+
const cols = k.stack(sheet, { direction: "HORIZONTAL", gap: 48, width: "HUG", name: "Details" });
|
|
146
|
+
const left = k.stack(cols, { gap: 22, width: 420, name: "Left" });
|
|
147
|
+
const right = k.stack(cols, { gap: 22, width: 420, name: "Right" });
|
|
148
|
+
k.instance(left, "Detail", { Head: "WHERE", Text: "The {{brand.name}} car park, 1100 Elm Avenue. Come in costume; grown-ups too." }, { name: "Detail", width: "FILL" });
|
|
149
|
+
k.instance(left, "Detail", { Head: "COSTUME PARADE", Text: "Round the car park at 6:30, with a prize for every age group." }, { name: "Detail", width: "FILL" });
|
|
150
|
+
k.instance(right, "Detail", { Head: "DECORATE A TRUNK", Text: "Sign up by 23 October. Best-dressed trunk wins a $50 pumpkin-patch voucher." }, { name: "Detail", width: "FILL" });
|
|
151
|
+
k.instance(right, "Detail", { Head: "TEAL PUMPKIN TABLE", Text: "Allergy-friendly treats and small toys, no nuts anywhere near it." }, { name: "Detail", width: "FILL" });
|
|
152
|
+
k.stack(sheet, { height: 34, name: "Gap" });
|
|
153
|
+
k.text(sheet, "Free \xB7 hot cider and doughnuts \xB7 {{brand.site}}", { style: "Foot 22", color: "cream", ...c, name: "Foot" });
|
|
154
|
+
k.textStyle("Kicker 15", { size: 15, fontWeight: 800, letterSpacing: 4, lineHeight: 19 });
|
|
155
|
+
k.textStyle("Title 88", { size: 86, fontWeight: 900, letterSpacing: -3.4, lineHeight: 74 });
|
|
156
|
+
k.textStyle("Sub 17", { ...SERIF, size: 17, fontWeight: 700, fontStyle: "italic", lineHeight: 21 });
|
|
157
|
+
k.textStyle("Foot 11", { size: 11, fontWeight: 700, letterSpacing: 0.6, lineHeight: 14 });
|
|
158
|
+
k.variants(sheet, [printVariant("us-letter", {
|
|
159
|
+
art,
|
|
160
|
+
pad: PAD,
|
|
161
|
+
masterWidth: W,
|
|
162
|
+
styles: [["Kicker", "Kicker 15"], ["Title", "Title 88"], ["Sub", "Sub 17"], ["Foot", "Foot 11"]],
|
|
163
|
+
more: (kit, id) => {
|
|
164
|
+
for (const n of kit.named(id, "Details")) kit.patch(n, { itemSpacing: 22 });
|
|
165
|
+
for (const n of [...kit.named(id, "Left"), ...kit.named(id, "Right")]) kit.patch(n, { width: 320, itemSpacing: 10 });
|
|
166
|
+
}
|
|
167
|
+
})]);
|
|
168
|
+
return k.finish();
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
|
|
172
|
+
export {
|
|
173
|
+
holidays_halloween_trunk_or_treat_poster_default
|
|
174
|
+
};
|
|
@@ -6,13 +6,13 @@ const __filename = __popcraftPath(import.meta.url);
|
|
|
6
6
|
const __dirname = __popcraftDirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
activeTeamWorkspaceId
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-EVFG2K4L.js";
|
|
10
10
|
import {
|
|
11
11
|
prepareTemplate
|
|
12
12
|
} from "./chunk-XFB6EZVY.js";
|
|
13
13
|
import {
|
|
14
14
|
markLibraryDocument
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-IM6HORNC.js";
|
|
16
16
|
import {
|
|
17
17
|
listDocMetas,
|
|
18
18
|
saveDocSnapshot
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { createRequire as __popcraftRequire } from 'node:module';
|
|
2
|
+
import { fileURLToPath as __popcraftPath } from 'node:url';
|
|
3
|
+
import { dirname as __popcraftDirname } from 'node:path';
|
|
4
|
+
const require = __popcraftRequire(import.meta.url);
|
|
5
|
+
const __filename = __popcraftPath(import.meta.url);
|
|
6
|
+
const __dirname = __popcraftDirname(__filename);
|
|
7
|
+
import {
|
|
8
|
+
disc,
|
|
9
|
+
draw,
|
|
10
|
+
flourishComponent,
|
|
11
|
+
heart,
|
|
12
|
+
leaf,
|
|
13
|
+
quad,
|
|
14
|
+
rose
|
|
15
|
+
} from "./chunk-AISWLDDO.js";
|
|
16
|
+
import {
|
|
17
|
+
SERIF
|
|
18
|
+
} from "./chunk-X23ZWFW2.js";
|
|
19
|
+
import {
|
|
20
|
+
defineTemplate
|
|
21
|
+
} from "./chunk-A44WEVKR.js";
|
|
22
|
+
import {
|
|
23
|
+
Kit,
|
|
24
|
+
preset
|
|
25
|
+
} from "./chunk-T3SGRYUX.js";
|
|
26
|
+
import {
|
|
27
|
+
init_define_POPCRAFT_COMPONENT_IDS
|
|
28
|
+
} from "./chunk-6VMOKHMF.js";
|
|
29
|
+
|
|
30
|
+
// templates/src/print/holidays-valentines-dinner-menu.ts
|
|
31
|
+
init_define_POPCRAFT_COMPONENT_IDS();
|
|
32
|
+
var NAME = "Valentine\u2019s dinner menu";
|
|
33
|
+
var PAD = { top: 214, right: 40, bottom: 40, left: 40 };
|
|
34
|
+
var COURSES = [
|
|
35
|
+
["APERITIVO", "Blood-orange spritz", "or a glass of Franciacorta ros\xE9"],
|
|
36
|
+
["ANTIPASTO", "Burrata, roasted beets, pistachio", "with warm focaccia from our oven"],
|
|
37
|
+
["PRIMO", "Heart-shaped ravioli of ricotta and lemon", "brown butter, sage, a little black pepper"],
|
|
38
|
+
["SECONDO", "Slow-cooked short rib, soft polenta", "or wild mushroom and chestnut risotto"],
|
|
39
|
+
["DOLCE", "Dark chocolate torta for two", "raspberries, vanilla mascarpone"]
|
|
40
|
+
];
|
|
41
|
+
function art(w, h) {
|
|
42
|
+
const s = w / 374, B = 12 * s;
|
|
43
|
+
const r1 = rose(w - 70 * s, 64 * s, 44 * s, 3), r2 = rose(w - 158 * s, 22 * s, 32 * s, 7), bud = rose(56 * s, 40 * s, 18 * s, 9);
|
|
44
|
+
const stem = [quad({ x: w + B, y: 150 * s }, { x: w - 130 * s, y: 128 * s }, { x: 40 * s, y: 50 * s }, 24)];
|
|
45
|
+
const leaves = [leaf({ x: w - 40 * s, y: 132 * s }, 40 * s, 16 * s, 2.7), leaf({ x: w - 110 * s, y: 118 * s }, 36 * s, 15 * s, 3.5), leaf({ x: w - 200 * s, y: 104 * s }, 34 * s, 14 * s, 2.6), leaf({ x: w - 250 * s, y: 92 * s }, 30 * s, 12 * s, 3.6), leaf({ x: 110 * s, y: 66 * s }, 28 * s, 11 * s, 2.7)];
|
|
46
|
+
const petal = (x, y, r, t) => heart(x, y, r * 2 * s, t);
|
|
47
|
+
return [
|
|
48
|
+
{ name: "Stem", paths: stem, color: "leaf", o: { strokeWidth: 2.2 * s } },
|
|
49
|
+
{ name: "Leaves", paths: leaves, color: "leaf" },
|
|
50
|
+
{ name: "Rose petals outer", paths: [...r1.outer, ...r2.outer, ...bud.outer], color: "rose" },
|
|
51
|
+
{ name: "Rose petals inner", paths: [...r1.inner, ...r2.inner, ...bud.inner], color: "roseDeep" },
|
|
52
|
+
{ name: "Rose edges", paths: [...r1.outer, ...r2.outer], color: "roseDeep", o: { strokeWidth: 0.8 * s, opacity: 0.5 } },
|
|
53
|
+
{ name: "Petals", paths: [petal(16 * s, h - 40 * s, 7, 0.4), petal(30 * s, h - 18 * s, 5, 1.2)], color: "rose", o: { opacity: 0.7 } },
|
|
54
|
+
{ name: "Petals", paths: [petal(w - 18 * s, h - 30 * s, 6, -0.6), petal(w - 34 * s, h - 12 * s, 4, 0.2)], color: "rose", o: { opacity: 0.55 } },
|
|
55
|
+
{ name: "Dots", paths: [disc(26 * s, 150 * s, 2 * s), disc(40 * s, 166 * s, 1.4 * s)], color: "primary" }
|
|
56
|
+
];
|
|
57
|
+
}
|
|
58
|
+
var holidays_valentines_dinner_menu_default = defineTemplate({
|
|
59
|
+
id: "print-holidays-valentines-dinner-menu",
|
|
60
|
+
meta: {
|
|
61
|
+
name: NAME,
|
|
62
|
+
description: "A table menu for a small restaurant\u2019s Valentine\u2019s supper: roses seen from above climb in from the corner of a blush card, the five courses are set in a light serif with small-capital course names between hairlines, and the price and wine pairing sit at the foot. DL to stand on each table, with bleed",
|
|
63
|
+
category: "menu",
|
|
64
|
+
tags: ["valentine\u2019s day", "valentines", "menu", "restaurant", "dinner", "prix fixe", "tasting menu", "roses", "romantic", "italian", "small business", "print"],
|
|
65
|
+
platforms: ["print"],
|
|
66
|
+
formats: ["card"],
|
|
67
|
+
useCases: ["menu", "event"],
|
|
68
|
+
created: "2026-10-10",
|
|
69
|
+
updated: "2026-10-10"
|
|
70
|
+
},
|
|
71
|
+
stableNumbers: true,
|
|
72
|
+
build() {
|
|
73
|
+
const k = new Kit(NAME, preset("dl-flyer"));
|
|
74
|
+
k.quantizeGeometry = true;
|
|
75
|
+
k.brand(
|
|
76
|
+
{ paper: "#F8E9E4", text: "#4A1722", onPaper: "#7B3A44", primary: "#9E2B3E", onPrimary: "#FFF4F1", line: "#E3BFC0" },
|
|
77
|
+
{ name: "Osteria Lina" }
|
|
78
|
+
);
|
|
79
|
+
k.palette({ rose: "#D9566E", roseDeep: "#A12E46", leaf: "#5F7A5A" });
|
|
80
|
+
k.textStyle("Kicker 9", { size: 9, fontWeight: 700, letterSpacing: 2.6, lineHeight: 13 });
|
|
81
|
+
k.textStyle("Title 34", { ...SERIF, size: 34, fontWeight: 300, fontStyle: "italic", letterSpacing: -0.6, lineHeight: 36 });
|
|
82
|
+
k.textStyle("Date 11", { ...SERIF, size: 11, fontWeight: 400, lineHeight: 15 });
|
|
83
|
+
k.textStyle("Course 8", { size: 8, fontWeight: 700, letterSpacing: 2.4, lineHeight: 11 });
|
|
84
|
+
k.textStyle("Dish 14", { ...SERIF, size: 14, fontWeight: 500, lineHeight: 18 });
|
|
85
|
+
k.textStyle("Note 10", { ...SERIF, size: 10, fontWeight: 400, fontStyle: "italic", lineHeight: 14 });
|
|
86
|
+
k.textStyle("Price 11", { size: 11, fontWeight: 600, letterSpacing: 0.4, lineHeight: 16 });
|
|
87
|
+
k.component("Course", { gap: 3, width: 294, align: "CENTER", props: { Course: "COURSE", Dish: "Dish", Note: "How it comes" } }, (id) => {
|
|
88
|
+
k.propText(id, "Course", { style: "Course 8", color: "onPaper", align: "CENTER", width: "FILL", name: "Course name" });
|
|
89
|
+
k.propText(id, "Dish", { style: "Dish 14", color: "text", align: "CENTER", width: "FILL", name: "Dish" });
|
|
90
|
+
k.propText(id, "Note", { style: "Note 10", color: "onPaper", align: "CENTER", width: "FILL", name: "Note" });
|
|
91
|
+
});
|
|
92
|
+
flourishComponent(k, "Heart rule", "primary", heart(0, 0, 10), { rule: 30, size: 8 });
|
|
93
|
+
const sheet = k.sheet;
|
|
94
|
+
const { width: W, height: H } = k.node(sheet);
|
|
95
|
+
k.flowSheet(sheet, 0, PAD, "paper", "MIN", "CENTER");
|
|
96
|
+
draw(k, sheet, art(W, H));
|
|
97
|
+
const c = { align: "CENTER", width: "FILL" };
|
|
98
|
+
k.text(sheet, "SATURDAY 13 & SUNDAY 14 FEBRUARY", { style: "Kicker 9", color: "onPaper", ...c, name: "Kicker" });
|
|
99
|
+
k.stack(sheet, { height: 8, name: "Gap" });
|
|
100
|
+
k.text(sheet, "A supper for two", { style: "Title 34", color: "text", ...c, name: "Title" });
|
|
101
|
+
k.text(sheet, "Valentine\u2019s at {{brand.name}}", { style: "Date 11", color: "onPaper", ...c, name: "Sub" });
|
|
102
|
+
k.stack(sheet, { height: 18, name: "Gap" });
|
|
103
|
+
for (const [i, [course, dish, note]] of COURSES.entries()) {
|
|
104
|
+
k.instance(sheet, "Course", { Course: course, Dish: dish, Note: note }, { name: "Course", width: "FILL" });
|
|
105
|
+
if (i < COURSES.length - 1) {
|
|
106
|
+
k.stack(sheet, { height: 10, name: "Gap" });
|
|
107
|
+
k.rect(sheet, 40, 1, "line", { name: "Hairline" });
|
|
108
|
+
k.stack(sheet, { height: 10, name: "Gap" });
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
k.stack(sheet, { height: 20, name: "Gap" });
|
|
112
|
+
k.instance(sheet, "Heart rule", {}, { name: "Divider" });
|
|
113
|
+
k.stack(sheet, { height: 10, name: "Gap" });
|
|
114
|
+
k.text(sheet, "$85 per person \xB7 wine pairing $40", { style: "Price 11", color: "text", ...c, name: "Price" });
|
|
115
|
+
k.text(sheet, "Please tell us about any allergies. Sittings at 6 and 8:30.", { style: "Note 10", color: "onPaper", ...c, name: "Allergies" });
|
|
116
|
+
return k.finish();
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
|
|
120
|
+
export {
|
|
121
|
+
holidays_valentines_dinner_menu_default
|
|
122
|
+
};
|