@upstart.gg/sdk 0.0.78 → 0.0.80
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/node/cli/api.js +3 -3
- package/dist/node/cli/commands/build/cmd-build.js +1 -1
- package/dist/node/cli/commands/login/cmd-login.js +8 -8
- package/dist/node/cli/commands/logout/cmd-logout.js +3 -3
- package/dist/node/cli/commands/publish/cmd-publish.js +19 -19
- package/dist/node/cli/commands/publish/parse-gitignore.d.ts +1 -1
- package/dist/node/cli/commands/publish/parse-gitignore.js +2 -2
- package/dist/node/cli/commands/publish/uploader.js +6 -6
- package/dist/node/cli/constants.d.ts +2 -2
- package/dist/node/cli/constants.d.ts.map +1 -1
- package/dist/node/cli/constants.js +2 -2
- package/dist/node/cli/is-logged-in.js +3 -3
- package/dist/node/cli/program.js +16 -16
- package/dist/node/cli/store.js +2 -2
- package/dist/node/cli/types.js +1 -1
- package/dist/node/cli/utils.js +1 -1
- package/dist/node/shared/config.d.ts +1 -1
- package/dist/node/shared/config.d.ts.map +1 -1
- package/dist/node/shared/config.js +6 -6
- package/dist/node/shared/logger.d.ts +2 -2
- package/dist/node/shared/logger.d.ts.map +1 -1
- package/dist/node/shared/logger.js +3 -3
- package/dist/shared/ajv.d.ts +1 -0
- package/dist/shared/ajv.d.ts.map +1 -1
- package/dist/shared/ajv.js +2 -2
- package/dist/shared/analytics/init.js +1 -1
- package/dist/shared/analytics/track.js +1 -1
- package/dist/shared/analytics/types.js +1 -1
- package/dist/shared/attributes.d.ts +18 -13
- package/dist/shared/attributes.d.ts.map +1 -1
- package/dist/shared/attributes.js +2 -2
- package/dist/shared/brick-manifest.d.ts +95 -46
- package/dist/shared/brick-manifest.d.ts.map +1 -1
- package/dist/shared/brick-manifest.js +2 -2
- package/dist/shared/bricks/manifests/all-manifests.d.ts +2 -3
- package/dist/shared/bricks/manifests/all-manifests.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/all-manifests.js +2 -2
- package/dist/shared/bricks/manifests/button.manifest.d.ts +43 -124
- package/dist/shared/bricks/manifests/button.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/button.manifest.js +2 -2
- package/dist/shared/bricks/manifests/card.manifest.d.ts +76 -137
- package/dist/shared/bricks/manifests/card.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/card.manifest.js +2 -2
- package/dist/shared/bricks/manifests/carousel.manifest.d.ts +40 -124
- package/dist/shared/bricks/manifests/carousel.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/carousel.manifest.js +2 -2
- package/dist/shared/bricks/manifests/container.manifest.d.ts +205 -123
- package/dist/shared/bricks/manifests/container.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/container.manifest.js +2 -2
- package/dist/shared/bricks/manifests/countdown.manifest.d.ts +40 -76
- package/dist/shared/bricks/manifests/countdown.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/countdown.manifest.js +2 -2
- package/dist/shared/bricks/manifests/footer.manifest.d.ts +64 -75
- package/dist/shared/bricks/manifests/footer.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/footer.manifest.js +2 -2
- package/dist/shared/bricks/manifests/form.manifest.d.ts +40 -78
- package/dist/shared/bricks/manifests/form.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/form.manifest.js +2 -2
- package/dist/shared/bricks/manifests/generic-component.manifest.d.ts +43 -124
- package/dist/shared/bricks/manifests/generic-component.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/generic-component.manifest.js +2 -2
- package/dist/shared/bricks/manifests/header.manifest.d.ts +257 -75
- package/dist/shared/bricks/manifests/header.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/header.manifest.js +2 -2
- package/dist/shared/bricks/manifests/hero.manifest.d.ts +100 -113
- package/dist/shared/bricks/manifests/hero.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/hero.manifest.js +2 -2
- package/dist/shared/bricks/manifests/icon.manifest.d.ts +40 -76
- package/dist/shared/bricks/manifests/icon.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/icon.manifest.js +2 -2
- package/dist/shared/bricks/manifests/image.manifest.d.ts +84 -77
- package/dist/shared/bricks/manifests/image.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/image.manifest.js +2 -2
- package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts +184 -0
- package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts.map +1 -0
- package/dist/shared/bricks/manifests/images-gallery.manifest.js +3 -0
- package/dist/shared/bricks/manifests/map.manifest.d.ts +40 -74
- package/dist/shared/bricks/manifests/map.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/map.manifest.js +2 -2
- package/dist/shared/bricks/manifests/sidebar.manifest.d.ts +57 -0
- package/dist/shared/bricks/manifests/sidebar.manifest.d.ts.map +1 -0
- package/dist/shared/bricks/manifests/sidebar.manifest.js +3 -0
- package/dist/shared/bricks/manifests/social-links.manifest.d.ts +40 -76
- package/dist/shared/bricks/manifests/social-links.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/social-links.manifest.js +2 -2
- package/dist/shared/bricks/manifests/tests/header.manifest.test.d.ts +2 -0
- package/dist/shared/bricks/manifests/tests/header.manifest.test.d.ts.map +1 -0
- package/dist/shared/bricks/manifests/text.manifest.d.ts +87 -118
- package/dist/shared/bricks/manifests/text.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/text.manifest.js +2 -2
- package/dist/shared/bricks/manifests/video.manifest.d.ts +40 -78
- package/dist/shared/bricks/manifests/video.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/video.manifest.js +2 -2
- package/dist/shared/bricks/props/_docs-common-styles.d.ts +59 -0
- package/dist/shared/bricks/props/_docs-common-styles.d.ts.map +1 -0
- package/dist/shared/bricks/props/_docs-common-styles.js +3 -0
- package/dist/shared/bricks/props/_style-presets.d.ts +18 -0
- package/dist/shared/bricks/props/_style-presets.d.ts.map +1 -0
- package/dist/shared/bricks/props/_style-presets.js +3 -0
- package/dist/shared/bricks/props/align.d.ts +15 -0
- package/dist/shared/bricks/props/align.d.ts.map +1 -0
- package/dist/shared/bricks/props/align.js +3 -0
- package/dist/shared/bricks/props/background.d.ts +23 -0
- package/dist/shared/bricks/props/background.d.ts.map +1 -0
- package/dist/shared/bricks/props/background.js +3 -0
- package/dist/shared/bricks/props/boolean.d.ts +4 -0
- package/dist/shared/bricks/props/boolean.d.ts.map +1 -0
- package/dist/shared/bricks/props/boolean.js +3 -0
- package/dist/shared/bricks/props/border.d.ts +27 -0
- package/dist/shared/bricks/props/border.d.ts.map +1 -0
- package/dist/shared/bricks/props/border.js +3 -0
- package/dist/shared/bricks/props/common.d.ts +5 -39
- package/dist/shared/bricks/props/common.d.ts.map +1 -1
- package/dist/shared/bricks/props/common.js +2 -2
- package/dist/shared/bricks/props/container.d.ts +73 -0
- package/dist/shared/bricks/props/container.d.ts.map +1 -0
- package/dist/shared/bricks/props/container.js +3 -0
- package/dist/shared/bricks/props/datasource.d.ts +18 -0
- package/dist/shared/bricks/props/datasource.d.ts.map +1 -0
- package/dist/shared/bricks/props/datasource.js +3 -0
- package/dist/shared/bricks/props/effects.d.ts +39 -0
- package/dist/shared/bricks/props/effects.d.ts.map +1 -0
- package/dist/shared/bricks/props/effects.js +3 -0
- package/dist/shared/bricks/props/helpers.d.ts +29 -0
- package/dist/shared/bricks/props/helpers.d.ts.map +1 -0
- package/dist/shared/bricks/props/helpers.js +3 -0
- package/dist/shared/bricks/props/image.d.ts +15 -0
- package/dist/shared/bricks/props/image.d.ts.map +1 -0
- package/dist/shared/bricks/props/image.js +3 -0
- package/dist/shared/bricks/props/number.d.ts +6 -0
- package/dist/shared/bricks/props/number.d.ts.map +1 -0
- package/dist/shared/bricks/props/number.js +3 -0
- package/dist/shared/bricks/props/padding.d.ts +4 -0
- package/dist/shared/bricks/props/padding.d.ts.map +1 -0
- package/dist/shared/bricks/props/padding.js +3 -0
- package/dist/shared/bricks/props/position.d.ts +6 -0
- package/dist/shared/bricks/props/position.d.ts.map +1 -0
- package/dist/shared/bricks/props/position.js +3 -0
- package/dist/shared/bricks/props/string.d.ts +11 -0
- package/dist/shared/bricks/props/string.d.ts.map +1 -0
- package/dist/shared/bricks/props/string.js +3 -0
- package/dist/shared/bricks/props/tests/align.test.d.ts +2 -0
- package/dist/shared/bricks/props/tests/align.test.d.ts.map +1 -0
- package/dist/shared/bricks/props/tests/background.test.d.ts +2 -0
- package/dist/shared/bricks/props/tests/background.test.d.ts.map +1 -0
- package/dist/shared/bricks/props/tests/border.test.d.ts +2 -0
- package/dist/shared/bricks/props/tests/border.test.d.ts.map +1 -0
- package/dist/shared/bricks/props/tests/container.test.d.ts +2 -0
- package/dist/shared/bricks/props/tests/container.test.d.ts.map +1 -0
- package/dist/shared/bricks/props/tests/effects.test.d.ts +2 -0
- package/dist/shared/bricks/props/tests/effects.test.d.ts.map +1 -0
- package/dist/shared/bricks/props/tests/helpers.test.d.ts +2 -0
- package/dist/shared/bricks/props/tests/helpers.test.d.ts.map +1 -0
- package/dist/shared/bricks/props/tests/image.test.d.ts +2 -0
- package/dist/shared/bricks/props/tests/image.test.d.ts.map +1 -0
- package/dist/shared/bricks/props/tests/padding.d.ts +2 -0
- package/dist/shared/bricks/props/tests/padding.d.ts.map +1 -0
- package/dist/shared/bricks/props/tests/string.test.d.ts +2 -0
- package/dist/shared/bricks/props/tests/string.test.d.ts.map +1 -0
- package/dist/shared/bricks/props/text.d.ts +14 -0
- package/dist/shared/bricks/props/text.d.ts.map +1 -0
- package/dist/shared/bricks/props/text.js +3 -0
- package/dist/shared/bricks/props/types.d.ts +43 -0
- package/dist/shared/bricks/props/types.d.ts.map +1 -0
- package/dist/shared/bricks/props/types.js +2 -0
- package/dist/shared/bricks.d.ts +88 -1527
- package/dist/shared/bricks.d.ts.map +1 -1
- package/dist/shared/bricks.js +2 -2
- package/dist/shared/chunk-3CY6AZG7.js +3 -0
- package/dist/shared/chunk-3YDMOB7M.js +3 -0
- package/dist/shared/{chunk-X7ABR5GQ.js → chunk-6GYFUI5C.js} +2 -2
- package/dist/shared/chunk-6I4PY5WS.js +3 -0
- package/dist/shared/{chunk-KXVIWTJN.js → chunk-7XTKGW6E.js} +1 -1
- package/dist/shared/chunk-AZ63RF3K.js +3 -0
- package/dist/shared/chunk-BK6LBWDI.js +3 -0
- package/dist/shared/chunk-BMDB2V7J.js +3 -0
- package/dist/shared/chunk-CSBX76ZN.js +3 -0
- package/dist/shared/chunk-DAPQ4JPP.js +3 -0
- package/dist/shared/chunk-EFJQECVB.js +3 -0
- package/dist/shared/chunk-F2ZVIFHO.js +3 -0
- package/dist/shared/chunk-FGU4BGP4.js +3 -0
- package/dist/shared/chunk-H6L4KRCJ.js +3 -0
- package/dist/shared/chunk-HIZPJNEM.js +3 -0
- package/dist/shared/chunk-HW5TY2QW.js +3 -0
- package/dist/shared/chunk-IWSVY2VC.js +3 -0
- package/dist/shared/chunk-JVDUEZYO.js +3 -0
- package/dist/shared/chunk-KB4HY432.js +3 -0
- package/dist/shared/chunk-LDOM2LJF.js +3 -0
- package/dist/shared/chunk-NFU5BF6G.js +3 -0
- package/dist/shared/{chunk-A3ACTIE3.js → chunk-NNVPTAAH.js} +1 -1
- package/dist/shared/chunk-P5FVZ5PL.js +3 -0
- package/dist/shared/chunk-P7WL7MYK.js +3 -0
- package/dist/shared/chunk-PD7P5KSV.js +3 -0
- package/dist/shared/chunk-PJ6HA55L.js +3 -0
- package/dist/shared/chunk-PSSJMWGU.js +3 -0
- package/dist/shared/chunk-Q4MXTCE4.js +8 -0
- package/dist/shared/chunk-QRBMK5UX.js +3 -0
- package/dist/shared/chunk-RBYYMUOZ.js +3 -0
- package/dist/shared/chunk-SO5M7CYA.js +3 -0
- package/dist/shared/chunk-SQVL4WSX.js +3 -0
- package/dist/shared/chunk-TQ23UATQ.js +3 -0
- package/dist/shared/chunk-U44NTSIO.js +3 -0
- package/dist/shared/chunk-U4R5EGBK.js +3 -0
- package/dist/shared/chunk-WJ5CDDXW.js +3 -0
- package/dist/shared/chunk-WOEBR25A.js +3 -0
- package/dist/shared/chunk-WPTVLIYS.js +3 -0
- package/dist/shared/{chunk-XGI243DO.js → chunk-WXKRIUTA.js} +1 -1
- package/dist/shared/chunk-XBX6II3M.js +3 -0
- package/dist/shared/chunk-XEQ2XZLQ.js +3 -0
- package/dist/shared/chunk-XGCBIXOO.js +3 -0
- package/dist/shared/chunk-XYID4ZEA.js +3 -0
- package/dist/shared/chunk-ZWVJMSTT.js +3 -0
- package/dist/shared/datarecords/external/google/oauth/config.js +1 -1
- package/dist/shared/datarecords/types.d.ts +2 -2
- package/dist/shared/datarecords/types.js +1 -1
- package/dist/shared/datarecords.js +1 -1
- package/dist/shared/datasources/external/meta/oauth/config.js +2 -2
- package/dist/shared/datasources/external/tiktok/oauth/config.js +2 -2
- package/dist/shared/datasources/external/youtube/oauth/config.js +2 -2
- package/dist/shared/datasources/internal/job-board/schema.d.ts +87 -0
- package/dist/shared/datasources/internal/job-board/schema.d.ts.map +1 -0
- package/dist/shared/datasources/schemas.js +2 -2
- package/dist/shared/datasources/types.d.ts +2 -2
- package/dist/shared/datasources/types.js +2 -2
- package/dist/shared/datasources.js +1 -1
- package/dist/shared/env.d.ts +6 -6
- package/dist/shared/env.d.ts.map +1 -1
- package/dist/shared/env.js +1 -1
- package/dist/shared/errors.js +1 -1
- package/dist/shared/layout-constants.js +2 -2
- package/dist/shared/oauth.js +2 -2
- package/dist/shared/page.d.ts +155 -2331
- package/dist/shared/page.d.ts.map +1 -1
- package/dist/shared/page.js +2 -2
- package/dist/shared/responsive.js +1 -1
- package/dist/shared/template.d.ts +31 -0
- package/dist/shared/template.d.ts.map +1 -0
- package/dist/shared/template.js +3 -0
- package/dist/shared/tests/test-config.d.ts +1 -1
- package/dist/shared/tests/test-config.d.ts.map +1 -1
- package/dist/shared/theme.d.ts.map +1 -1
- package/dist/shared/theme.js +2 -2
- package/dist/shared/themes/all-themes.js +1 -1
- package/dist/shared/themes/color-system.d.ts +3 -5
- package/dist/shared/themes/color-system.d.ts.map +1 -1
- package/dist/shared/themes/color-system.js +2 -2
- package/dist/shared/utils/canvas-data-uri.d.ts +2 -0
- package/dist/shared/utils/canvas-data-uri.d.ts.map +1 -0
- package/dist/shared/utils/invariant.js +2 -2
- package/dist/shared/utils/merge.d.ts +2 -0
- package/dist/shared/utils/merge.d.ts.map +1 -0
- package/dist/shared/utils/merge.js +3 -0
- package/dist/shared/utils/object-hash.d.ts +2 -0
- package/dist/shared/utils/object-hash.d.ts.map +1 -0
- package/dist/shared/utils/try-catch.d.ts +7 -0
- package/dist/shared/utils/try-catch.d.ts.map +1 -0
- package/package.json +6 -5
- package/dist/shared/bricks/manifests/images-wall.manifest.d.ts +0 -95
- package/dist/shared/bricks/manifests/images-wall.manifest.d.ts.map +0 -1
- package/dist/shared/bricks/manifests/images-wall.manifest.js +0 -3
- package/dist/shared/bricks/manifests/loop.manifest.d.ts +0 -105
- package/dist/shared/bricks/manifests/loop.manifest.d.ts.map +0 -1
- package/dist/shared/bricks/manifests/loop.manifest.js +0 -3
- package/dist/shared/bricks/props/style-presets.d.ts +0 -10
- package/dist/shared/bricks/props/style-presets.d.ts.map +0 -1
- package/dist/shared/bricks/props/style-presets.js +0 -3
- package/dist/shared/bricks/props/style-props.d.ts +0 -90
- package/dist/shared/bricks/props/style-props.d.ts.map +0 -1
- package/dist/shared/bricks/props/style-props.js +0 -3
- package/dist/shared/chunk-3PPIJUXG.js +0 -32
- package/dist/shared/chunk-3T2OW4FE.js +0 -14
- package/dist/shared/chunk-5PE57DBS.js +0 -15
- package/dist/shared/chunk-6G2OUITX.js +0 -3
- package/dist/shared/chunk-6PCNIIO5.js +0 -3
- package/dist/shared/chunk-AVHF4FLR.js +0 -3
- package/dist/shared/chunk-G42AE2ZC.js +0 -13
- package/dist/shared/chunk-G4K7GJZO.js +0 -3
- package/dist/shared/chunk-GBKDJDGW.js +0 -3
- package/dist/shared/chunk-GUOQD446.js +0 -22
- package/dist/shared/chunk-MEMG6QPT.js +0 -3
- package/dist/shared/chunk-NYPOZ5T2.js +0 -13
- package/dist/shared/chunk-PXAK7ZJ3.js +0 -3
- package/dist/shared/chunk-PZCWP77P.js +0 -3
- package/dist/shared/chunk-QQ7YEIHB.js +0 -3
- package/dist/shared/chunk-RRTB52G4.js +0 -9
- package/dist/shared/chunk-UIKVMZNI.js +0 -13
- package/dist/shared/chunk-WGWJHVOE.js +0 -20
- package/dist/shared/chunk-WX4P2YIR.js +0 -11
- package/dist/shared/chunk-WXSQ2ZEK.js +0 -16
- package/dist/shared/chunk-XS5WCEA6.js +0 -16
- package/dist/shared/chunk-Y3TOGUNY.js +0 -9
- package/dist/shared/chunk-YSMFNK4R.js +0 -20
- package/dist/shared/chunk-YXGFGLKH.js +0 -16
- package/dist/shared/chunk-ZDZXB45C.js +0 -7
- package/dist/shared/chunk-ZWYM64YA.js +0 -8
- package/dist/shared/chunk-ZYVXEGAM.js +0 -11
package/dist/node/cli/api.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
|
-
import{createLogger as
|
|
4
|
-
`)),{...s,success:(r,n)=>s.info(i.green(r),n),error:(r,n)=>s.error(i.red(r),n),warn:(r,n)=>s.warn(i.yellow(r),n),warnOnce:(r,n)=>s.warnOnce(i.yellow(r),n),debug:(r,n)=>{e==="debug"&&s.info(i.gray(r),n)}}}var p=h();var m="
|
|
3
|
+
import{createLogger as T}from"vite";var g="0.0.80";import i from"chalk";function h(e,t,o=!1){let s=T(e==="debug"?"info":e,{prefix:"[upstart]",allowClearScreen:t});return o&&s.info(i.hex("#7270c6").bold(`\u{1F680} Upstart v${g}
|
|
4
|
+
`)),{...s,success:(r,n)=>s.info(i.green(r),n),error:(r,n)=>s.error(i.red(r),n),warn:(r,n)=>s.warn(i.yellow(r),n),warnOnce:(r,n)=>s.warnOnce(i.yellow(r),n),debug:(r,n)=>{e==="debug"&&s.info(i.gray(r),n)}}}var p=h();var m="upstart-cli";var w=process.env.PUBLIC_UPSTART_OAUTH_CLIENT_ID??"50000000-0000-0000-0000-000000000001",u=process.env.PUBLIC_UPSTART_API_BASE_URL??"https://api.upstart.gg",b=process.env.PUBLIC_UPSTART_EDITOR_BASE_URL??"https://upstart.gg";import E from"conf";import c from"node:path";import _ from"node:crypto";import a from"node:fs";import{fileURLToPath as L}from"node:url";import W from"chalk";var R=L(new URL(".",import.meta.url)),x=S(),d=new E({projectName:m,encryptionKey:x,clearInvalidConfig:!0});function O(){let e=R;for(;e!==c.parse(e).root;){let t=c.join(e,"node_modules");if(a.existsSync(t))return t;e=c.dirname(e)}return null}function S(){let e=O();if(!e)throw new Error("Could not find nearest node_modules directory.");let t=c.join(e,".enpage-tmp");a.existsSync(t)||a.mkdirSync(t,{recursive:!0,mode:448});let o=c.join(t,".enpage-key");if(!a.existsSync(o)){let r=_.randomBytes(32).toString("hex");return a.writeFileSync(o,r,{mode:384,flush:!0}),r}return a.readFileSync(o,"utf8")}async function J(e,t,o={}){d.get("access_token")&&(o.Authorization=`Bearer ${d.get("access_token")}`);let s=await fetch(l(e),{method:"POST",headers:{"Content-Type":t instanceof URLSearchParams?"application/x-www-form-urlencoded":"application/json",...o},body:t instanceof URLSearchParams?t:JSON.stringify(t)}).catch(r=>{p.error(`Fatal Error requesting API: ${r.message} (${r.cause.code})`),p.error("Please check your internet connection and try again, or retry later."),process.exit(1)});return y(s)}async function K(e,t={}){d.get("access_token")&&(t.Authorization=`Bearer ${d.get("access_token")}`);let o=await fetch(l(e),{headers:t,method:"GET"}).catch(s=>{p.error(`Fatal Error requesting API: ${s.message} (${s.cause.code})`),p.error("Please check your internet connection and try again, or retry later."),process.exit(1)});return y(o)}function l(e){let t=new URL(u.endsWith("/")?u:`${u}/`);return new URL(e,t)}async function y(e){let t=e.headers.get("content-type")?.startsWith("application/json")?await e.json():await e.text();return e.ok?{isSuccess:!0,isError:!1,status:e.status,statusText:e.statusText,data:t}:{isSuccess:!1,isError:!0,status:e.status,statusText:e.statusText,data:t}}export{K as get,J as post};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
3
|
var Ii=Object.create;var ts=Object.defineProperty;var Wi=Object.getOwnPropertyDescriptor;var ji=Object.getOwnPropertyNames;var Bi=Object.getPrototypeOf,zi=Object.prototype.hasOwnProperty;var es=(i,t)=>()=>(t||i((t={exports:{}}).exports,t),t.exports);var Ui=(i,t,e,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of ji(t))!zi.call(i,r)&&r!==e&&ts(i,r,{get:()=>t[r],enumerable:!(s=Wi(t,r))||s.enumerable});return i};var $i=(i,t,e)=>(e=i!=null?Ii(Bi(i)):{},Ui(t||!i||!i.__esModule?ts(e,"default",{value:i,enumerable:!0}):e,i));var os=es((So,ns)=>{"use strict";ns.exports=is;function is(i,t,e){i instanceof RegExp&&(i=ss(i,e)),t instanceof RegExp&&(t=ss(t,e));var s=rs(i,t,e);return s&&{start:s[0],end:s[1],pre:e.slice(0,s[0]),body:e.slice(s[0]+i.length,s[1]),post:e.slice(s[1]+t.length)}}function ss(i,t){var e=t.match(i);return e?e[0]:null}is.range=rs;function rs(i,t,e){var s,r,n,o,h,a=e.indexOf(i),l=e.indexOf(t,a+1),c=a;if(a>=0&&l>0){if(i===t)return[a,l];for(s=[],n=e.length;c>=0&&!h;)c==a?(s.push(c),a=e.indexOf(i,c+1)):s.length==1?h=[s.pop(),l]:(r=s.pop(),r<n&&(n=r,o=l),l=e.indexOf(t,c+1)),c=a<l&&a>=0?a:l;s.length&&(h=[n,o])}return h}});var ps=es((bo,ds)=>{"use strict";var hs=os();ds.exports=Vi;var as="\0SLASH"+Math.random()+"\0",ls="\0OPEN"+Math.random()+"\0",be="\0CLOSE"+Math.random()+"\0",cs="\0COMMA"+Math.random()+"\0",fs="\0PERIOD"+Math.random()+"\0";function Se(i){return parseInt(i,10)==i?parseInt(i,10):i.charCodeAt(0)}function Gi(i){return i.split("\\\\").join(as).split("\\{").join(ls).split("\\}").join(be).split("\\,").join(cs).split("\\.").join(fs)}function Hi(i){return i.split(as).join("\\").split(ls).join("{").split(be).join("}").split(cs).join(",").split(fs).join(".")}function us(i){if(!i)return[""];var t=[],e=hs("{","}",i);if(!e)return i.split(",");var s=e.pre,r=e.body,n=e.post,o=s.split(",");o[o.length-1]+="{"+r+"}";var h=us(n);return n.length&&(o[o.length-1]+=h.shift(),o.push.apply(o,h)),t.push.apply(t,o),t}function Vi(i){return i?(i.substr(0,2)==="{}"&&(i="\\{\\}"+i.substr(2)),xt(Gi(i),!0).map(Hi)):[]}function qi(i){return"{"+i+"}"}function Ki(i){return/^-?0\d/.test(i)}function Yi(i,t){return i<=t}function Xi(i,t){return i>=t}function xt(i,t){var e=[],s=hs("{","}",i);if(!s)return[i];var r=s.pre,n=s.post.length?xt(s.post,!1):[""];if(/\$$/.test(s.pre))for(var o=0;o<n.length;o++){var h=r+"{"+s.body+"}"+n[o];e.push(h)}else{var a=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(s.body),l=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(s.body),c=a||l,f=s.body.indexOf(",")>=0;if(!c&&!f)return s.post.match(/,.*\}/)?(i=s.pre+"{"+s.body+be+s.post,xt(i)):[i];var u;if(c)u=s.body.split(/\.\./);else if(u=us(s.body),u.length===1&&(u=xt(u[0],!1).map(qi),u.length===1))return n.map(function(Bt){return s.pre+u[0]+Bt});var d;if(c){var g=Se(u[0]),p=Se(u[1]),w=Math.max(u[0].length,u[1].length),m=u.length==3?Math.abs(Se(u[2])):1,b=Yi,S=p<g;S&&(m*=-1,b=Xi);var y=u.some(Ki);d=[];for(var E=g;b(E,p);E+=m){var x;if(l)x=String.fromCharCode(E),x==="\\"&&(x="");else if(x=String(E),y){var W=w-x.length;if(W>0){var it=new Array(W+1).join("0");E<0?x="-"+it+x.slice(1):x=it+x}}d.push(x)}}else{d=[];for(var j=0;j<u.length;j++)d.push.apply(d,xt(u[j],!1))}for(var j=0;j<d.length;j++)for(var o=0;o<n.length;o++){var h=r+d[j]+n[o];(!t||c||h)&&e.push(h)}}return e}});import{build as Ze}from"vite";import mo,{resolve as Li}from"node:path";import{fileURLToPath as go}from"node:url";var vs=$i(ps(),1);var Tt=i=>{if(typeof i!="string")throw new TypeError("invalid pattern");if(i.length>65536)throw new TypeError("pattern is too long")};var Ji={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Rt=i=>i.replace(/[[\]\\-]/g,"\\$&"),Zi=i=>i.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),ms=i=>i.join(""),gs=(i,t)=>{let e=t;if(i.charAt(e)!=="[")throw new Error("not in a brace expression");let s=[],r=[],n=e+1,o=!1,h=!1,a=!1,l=!1,c=e,f="";t:for(;n<i.length;){let p=i.charAt(n);if((p==="!"||p==="^")&&n===e+1){l=!0,n++;continue}if(p==="]"&&o&&!a){c=n+1;break}if(o=!0,p==="\\"&&!a){a=!0,n++;continue}if(p==="["&&!a){for(let[w,[m,b,S]]of Object.entries(Ji))if(i.startsWith(w,n)){if(f)return["$.",!1,i.length-e,!0];n+=w.length,S?r.push(m):s.push(m),h=h||b;continue t}}if(a=!1,f){p>f?s.push(Rt(f)+"-"+Rt(p)):p===f&&s.push(Rt(p)),f="",n++;continue}if(i.startsWith("-]",n+1)){s.push(Rt(p+"-")),n+=2;continue}if(i.startsWith("-",n+1)){f=p,n+=2;continue}s.push(Rt(p)),n++}if(c<n)return["",!1,0,!1];if(!s.length&&!r.length)return["$.",!1,i.length-e,!0];if(r.length===0&&s.length===1&&/^\\?.$/.test(s[0])&&!l){let p=s[0].length===2?s[0].slice(-1):s[0];return[Zi(p),!1,c-e,!1]}let u="["+(l?"^":"")+ms(s)+"]",d="["+(l?"":"^")+ms(r)+"]";return[s.length&&r.length?"("+u+"|"+d+")":s.length?u:d,h,c-e,!0]};var B=(i,{windowsPathsNoEscape:t=!1}={})=>t?i.replace(/\[([^\/\\])\]/g,"$1"):i.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");var Qi=new Set(["!","?","+","*","@"]),ws=i=>Qi.has(i),tr="(?!(?:^|/)\\.\\.?(?:$|/))",zt="(?!\\.)",er=new Set(["[","."]),sr=new Set(["..","."]),ir=new Set("().*{}+?[]^$\\!"),rr=i=>i.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Ee="[^/]",ys=Ee+"*?",Ss=Ee+"+?",ot=class i{type;#t;#e;#n=!1;#i=[];#o;#b;#l;#f=!1;#h;#a;#r=!1;constructor(t,e,s={}){this.type=t,t&&(this.#e=!0),this.#o=e,this.#t=this.#o?this.#o.#t:this,this.#h=this.#t===this?s:this.#t.#h,this.#l=this.#t===this?[]:this.#t.#l,t==="!"&&!this.#t.#f&&this.#l.push(this),this.#b=this.#o?this.#o.#i.length:0}get hasMagic(){if(this.#e!==void 0)return this.#e;for(let t of this.#i)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#e=!0;return this.#e}toString(){return this.#a!==void 0?this.#a:this.type?this.#a=this.type+"("+this.#i.map(t=>String(t)).join("|")+")":this.#a=this.#i.map(t=>String(t)).join("")}#g(){if(this!==this.#t)throw new Error("should only call on root");if(this.#f)return this;this.toString(),this.#f=!0;let t;for(;t=this.#l.pop();){if(t.type!=="!")continue;let e=t,s=e.#o;for(;s;){for(let r=e.#b+1;!s.type&&r<s.#i.length;r++)for(let n of t.#i){if(typeof n=="string")throw new Error("string part in extglob AST??");n.copyIn(s.#i[r])}e=s,s=e.#o}}return this}push(...t){for(let e of t)if(e!==""){if(typeof e!="string"&&!(e instanceof i&&e.#o===this))throw new Error("invalid part: "+e);this.#i.push(e)}}toJSON(){let t=this.type===null?this.#i.slice().map(e=>typeof e=="string"?e:e.toJSON()):[this.type,...this.#i.map(e=>e.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#t||this.#t.#f&&this.#o?.type==="!")&&t.push({}),t}isStart(){if(this.#t===this)return!0;if(!this.#o?.isStart())return!1;if(this.#b===0)return!0;let t=this.#o;for(let e=0;e<this.#b;e++){let s=t.#i[e];if(!(s instanceof i&&s.type==="!"))return!1}return!0}isEnd(){if(this.#t===this||this.#o?.type==="!")return!0;if(!this.#o?.isEnd())return!1;if(!this.type)return this.#o?.isEnd();let t=this.#o?this.#o.#i.length:0;return this.#b===t-1}copyIn(t){typeof t=="string"?this.push(t):this.push(t.clone(this))}clone(t){let e=new i(this.type,t);for(let s of this.#i)e.copyIn(s);return e}static#w(t,e,s,r){let n=!1,o=!1,h=-1,a=!1;if(e.type===null){let d=s,g="";for(;d<t.length;){let p=t.charAt(d++);if(n||p==="\\"){n=!n,g+=p;continue}if(o){d===h+1?(p==="^"||p==="!")&&(a=!0):p==="]"&&!(d===h+2&&a)&&(o=!1),g+=p;continue}else if(p==="["){o=!0,h=d,a=!1,g+=p;continue}if(!r.noext&&ws(p)&&t.charAt(d)==="("){e.push(g),g="";let w=new i(p,e);d=i.#w(t,w,d,r),e.push(w);continue}g+=p}return e.push(g),d}let l=s+1,c=new i(null,e),f=[],u="";for(;l<t.length;){let d=t.charAt(l++);if(n||d==="\\"){n=!n,u+=d;continue}if(o){l===h+1?(d==="^"||d==="!")&&(a=!0):d==="]"&&!(l===h+2&&a)&&(o=!1),u+=d;continue}else if(d==="["){o=!0,h=l,a=!1,u+=d;continue}if(ws(d)&&t.charAt(l)==="("){c.push(u),u="";let g=new i(d,c);c.push(g),l=i.#w(t,g,l,r);continue}if(d==="|"){c.push(u),u="",f.push(c),c=new i(null,e);continue}if(d===")")return u===""&&e.#i.length===0&&(e.#r=!0),c.push(u),u="",e.push(...f,c),l;u+=d}return e.type=null,e.#e=void 0,e.#i=[t.substring(s-1)],l}static fromGlob(t,e={}){let s=new i(null,void 0,e);return i.#w(t,s,0,e),s}toMMPattern(){if(this!==this.#t)return this.#t.toMMPattern();let t=this.toString(),[e,s,r,n]=this.toRegExpSource();if(!(r||this.#e||this.#h.nocase&&!this.#h.nocaseMagicOnly&&t.toUpperCase()!==t.toLowerCase()))return s;let h=(this.#h.nocase?"i":"")+(n?"u":"");return Object.assign(new RegExp(`^${e}$`,h),{_src:e,_glob:t})}get options(){return this.#h}toRegExpSource(t){let e=t??!!this.#h.dot;if(this.#t===this&&this.#g(),!this.type){let a=this.isStart()&&this.isEnd(),l=this.#i.map(d=>{let[g,p,w,m]=typeof d=="string"?i.#u(d,this.#e,a):d.toRegExpSource(t);return this.#e=this.#e||w,this.#n=this.#n||m,g}).join(""),c="";if(this.isStart()&&typeof this.#i[0]=="string"&&!(this.#i.length===1&&sr.has(this.#i[0]))){let g=er,p=e&&g.has(l.charAt(0))||l.startsWith("\\.")&&g.has(l.charAt(2))||l.startsWith("\\.\\.")&&g.has(l.charAt(4)),w=!e&&!t&&g.has(l.charAt(0));c=p?tr:w?zt:""}let f="";return this.isEnd()&&this.#t.#f&&this.#o?.type==="!"&&(f="(?:$|\\/)"),[c+l+f,B(l),this.#e=!!this.#e,this.#n]}let s=this.type==="*"||this.type==="+",r=this.type==="!"?"(?:(?!(?:":"(?:",n=this.#d(e);if(this.isStart()&&this.isEnd()&&!n&&this.type!=="!"){let a=this.toString();return this.#i=[a],this.type=null,this.#e=void 0,[a,B(this.toString()),!1,!1]}let o=!s||t||e||!zt?"":this.#d(!0);o===n&&(o=""),o&&(n=`(?:${n})(?:${o})*?`);let h="";if(this.type==="!"&&this.#r)h=(this.isStart()&&!e?zt:"")+Ss;else{let a=this.type==="!"?"))"+(this.isStart()&&!e&&!t?zt:"")+ys+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&o?")":this.type==="*"&&o?")?":`)${this.type}`;h=r+n+a}return[h,B(n),this.#e=!!this.#e,this.#n]}#d(t){return this.#i.map(e=>{if(typeof e=="string")throw new Error("string type in extglob ast??");let[s,r,n,o]=e.toRegExpSource(t);return this.#n=this.#n||o,s}).filter(e=>!(this.isStart()&&this.isEnd())||!!e).join("|")}static#u(t,e,s=!1){let r=!1,n="",o=!1;for(let h=0;h<t.length;h++){let a=t.charAt(h);if(r){r=!1,n+=(ir.has(a)?"\\":"")+a;continue}if(a==="\\"){h===t.length-1?n+="\\\\":r=!0;continue}if(a==="["){let[l,c,f,u]=gs(t,h);if(f){n+=l,o=o||c,h+=f-1,e=e||u;continue}}if(a==="*"){s&&t==="*"?n+=Ss:n+=ys,e=!0;continue}if(a==="?"){n+=Ee,e=!0;continue}n+=rr(a)}return[n,B(t),!!e,o]}};var ht=(i,{windowsPathsNoEscape:t=!1}={})=>t?i.replace(/[?*()[\]]/g,"[$&]"):i.replace(/[?*()[\]\\]/g,"\\$&");var k=(i,t,e={})=>(Tt(t),!e.nocomment&&t.charAt(0)==="#"?!1:new F(t,e).match(i)),nr=/^\*+([^+@!?\*\[\(]*)$/,or=i=>t=>!t.startsWith(".")&&t.endsWith(i),hr=i=>t=>t.endsWith(i),ar=i=>(i=i.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(i)),lr=i=>(i=i.toLowerCase(),t=>t.toLowerCase().endsWith(i)),cr=/^\*+\.\*+$/,fr=i=>!i.startsWith(".")&&i.includes("."),ur=i=>i!=="."&&i!==".."&&i.includes("."),dr=/^\.\*+$/,pr=i=>i!=="."&&i!==".."&&i.startsWith("."),mr=/^\*+$/,gr=i=>i.length!==0&&!i.startsWith("."),wr=i=>i.length!==0&&i!=="."&&i!=="..",yr=/^\?+([^+@!?\*\[\(]*)?$/,Sr=([i,t=""])=>{let e=xs([i]);return t?(t=t.toLowerCase(),s=>e(s)&&s.toLowerCase().endsWith(t)):e},br=([i,t=""])=>{let e=Ts([i]);return t?(t=t.toLowerCase(),s=>e(s)&&s.toLowerCase().endsWith(t)):e},Er=([i,t=""])=>{let e=Ts([i]);return t?s=>e(s)&&s.endsWith(t):e},vr=([i,t=""])=>{let e=xs([i]);return t?s=>e(s)&&s.endsWith(t):e},xs=([i])=>{let t=i.length;return e=>e.length===t&&!e.startsWith(".")},Ts=([i])=>{let t=i.length;return e=>e.length===t&&e!=="."&&e!==".."},Rs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",bs={win32:{sep:"\\"},posix:{sep:"/"}},xr=Rs==="win32"?bs.win32.sep:bs.posix.sep;k.sep=xr;var A=Symbol("globstar **");k.GLOBSTAR=A;var Tr="[^/]",Rr=Tr+"*?",Or="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",Ar="(?:(?!(?:\\/|^)\\.).)*?",Nr=(i,t={})=>e=>k(e,i,t);k.filter=Nr;var L=(i,t={})=>Object.assign({},i,t),Cr=i=>{if(!i||typeof i!="object"||!Object.keys(i).length)return k;let t=k;return Object.assign((s,r,n={})=>t(s,r,L(i,n)),{Minimatch:class extends t.Minimatch{constructor(r,n={}){super(r,L(i,n))}static defaults(r){return t.defaults(L(i,r)).Minimatch}},AST:class extends t.AST{constructor(r,n,o={}){super(r,n,L(i,o))}static fromGlob(r,n={}){return t.AST.fromGlob(r,L(i,n))}},unescape:(s,r={})=>t.unescape(s,L(i,r)),escape:(s,r={})=>t.escape(s,L(i,r)),filter:(s,r={})=>t.filter(s,L(i,r)),defaults:s=>t.defaults(L(i,s)),makeRe:(s,r={})=>t.makeRe(s,L(i,r)),braceExpand:(s,r={})=>t.braceExpand(s,L(i,r)),match:(s,r,n={})=>t.match(s,r,L(i,n)),sep:t.sep,GLOBSTAR:A})};k.defaults=Cr;var Os=(i,t={})=>(Tt(i),t.nobrace||!/\{(?:(?!\{).)*\}/.test(i)?[i]:(0,vs.default)(i));k.braceExpand=Os;var kr=(i,t={})=>new F(i,t).makeRe();k.makeRe=kr;var Dr=(i,t,e={})=>{let s=new F(t,e);return i=i.filter(r=>s.match(r)),s.options.nonull&&!i.length&&i.push(t),i};k.match=Dr;var Es=/[?*]|[+@!]\(.*?\)|\[|\]/,Mr=i=>i.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),F=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,e={}){Tt(t),e=e||{},this.options=e,this.pattern=t,this.platform=e.platform||Rs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!e.windowsPathsNoEscape||e.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!e.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!e.nonegate,this.comment=!1,this.empty=!1,this.partial=!!e.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=e.windowsNoMagicRoot!==void 0?e.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let e of t)if(typeof e!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,e=this.options;if(!e.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],e.debug&&(this.debug=(...n)=>console.error(...n)),this.debug(this.pattern,this.globSet);let s=this.globSet.map(n=>this.slashSplit(n));this.globParts=this.preprocess(s),this.debug(this.pattern,this.globParts);let r=this.globParts.map((n,o,h)=>{if(this.isWindows&&this.windowsNoMagicRoot){let a=n[0]===""&&n[1]===""&&(n[2]==="?"||!Es.test(n[2]))&&!Es.test(n[3]),l=/^[a-z]:/i.test(n[0]);if(a)return[...n.slice(0,4),...n.slice(4).map(c=>this.parse(c))];if(l)return[n[0],...n.slice(1).map(c=>this.parse(c))]}return n.map(a=>this.parse(a))});if(this.debug(this.pattern,r),this.set=r.filter(n=>n.indexOf(!1)===-1),this.isWindows)for(let n=0;n<this.set.length;n++){let o=this.set[n];o[0]===""&&o[1]===""&&this.globParts[n][2]==="?"&&typeof o[3]=="string"&&/^[a-z]:$/i.test(o[3])&&(o[2]="?")}this.debug(this.pattern,this.set)}preprocess(t){if(this.options.noglobstar)for(let s=0;s<t.length;s++)for(let r=0;r<t[s].length;r++)t[s][r]==="**"&&(t[s][r]="*");let{optimizationLevel:e=1}=this.options;return e>=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):e>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(e=>{let s=-1;for(;(s=e.indexOf("**",s+1))!==-1;){let r=s;for(;e[r+1]==="**";)r++;r!==s&&e.splice(s,r-s)}return e})}levelOneOptimize(t){return t.map(e=>(e=e.reduce((s,r)=>{let n=s[s.length-1];return r==="**"&&n==="**"?s:r===".."&&n&&n!==".."&&n!=="."&&n!=="**"?(s.pop(),s):(s.push(r),s)},[]),e.length===0?[""]:e))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let e=!1;do{if(e=!1,!this.preserveMultipleSlashes){for(let r=1;r<t.length-1;r++){let n=t[r];r===1&&n===""&&t[0]===""||(n==="."||n==="")&&(e=!0,t.splice(r,1),r--)}t[0]==="."&&t.length===2&&(t[1]==="."||t[1]==="")&&(e=!0,t.pop())}let s=0;for(;(s=t.indexOf("..",s+1))!==-1;){let r=t[s-1];r&&r!=="."&&r!==".."&&r!=="**"&&(e=!0,t.splice(s-1,2),s-=2)}}while(e);return t.length===0?[""]:t}firstPhasePreProcess(t){let e=!1;do{e=!1;for(let s of t){let r=-1;for(;(r=s.indexOf("**",r+1))!==-1;){let o=r;for(;s[o+1]==="**";)o++;o>r&&s.splice(r+1,o-r);let h=s[r+1],a=s[r+2],l=s[r+3];if(h!==".."||!a||a==="."||a===".."||!l||l==="."||l==="..")continue;e=!0,s.splice(r,1);let c=s.slice(0);c[r]="**",t.push(c),r--}if(!this.preserveMultipleSlashes){for(let o=1;o<s.length-1;o++){let h=s[o];o===1&&h===""&&s[0]===""||(h==="."||h==="")&&(e=!0,s.splice(o,1),o--)}s[0]==="."&&s.length===2&&(s[1]==="."||s[1]==="")&&(e=!0,s.pop())}let n=0;for(;(n=s.indexOf("..",n+1))!==-1;){let o=s[n-1];if(o&&o!=="."&&o!==".."&&o!=="**"){e=!0;let a=n===1&&s[n+1]==="**"?["."]:[];s.splice(n-1,2,...a),s.length===0&&s.push(""),n-=2}}}}while(e);return t}secondPhasePreProcess(t){for(let e=0;e<t.length-1;e++)for(let s=e+1;s<t.length;s++){let r=this.partsMatch(t[e],t[s],!this.preserveMultipleSlashes);if(r){t[e]=[],t[s]=r;break}}return t.filter(e=>e.length)}partsMatch(t,e,s=!1){let r=0,n=0,o=[],h="";for(;r<t.length&&n<e.length;)if(t[r]===e[n])o.push(h==="b"?e[n]:t[r]),r++,n++;else if(s&&t[r]==="**"&&e[n]===t[r+1])o.push(t[r]),r++;else if(s&&e[n]==="**"&&t[r]===e[n+1])o.push(e[n]),n++;else if(t[r]==="*"&&e[n]&&(this.options.dot||!e[n].startsWith("."))&&e[n]!=="**"){if(h==="b")return!1;h="a",o.push(t[r]),r++,n++}else if(e[n]==="*"&&t[r]&&(this.options.dot||!t[r].startsWith("."))&&t[r]!=="**"){if(h==="a")return!1;h="b",o.push(e[n]),r++,n++}else return!1;return t.length===e.length&&o}parseNegate(){if(this.nonegate)return;let t=this.pattern,e=!1,s=0;for(let r=0;r<t.length&&t.charAt(r)==="!";r++)e=!e,s++;s&&(this.pattern=t.slice(s)),this.negate=e}matchOne(t,e,s=!1){let r=this.options;if(this.isWindows){let p=typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0]),w=!p&&t[0]===""&&t[1]===""&&t[2]==="?"&&/^[a-z]:$/i.test(t[3]),m=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),b=!m&&e[0]===""&&e[1]===""&&e[2]==="?"&&typeof e[3]=="string"&&/^[a-z]:$/i.test(e[3]),S=w?3:p?0:void 0,y=b?3:m?0:void 0;if(typeof S=="number"&&typeof y=="number"){let[E,x]=[t[S],e[y]];E.toLowerCase()===x.toLowerCase()&&(e[y]=E,y>S?e=e.slice(y):S>y&&(t=t.slice(S)))}}let{optimizationLevel:n=1}=this.options;n>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:e}),this.debug("matchOne",t.length,e.length);for(var o=0,h=0,a=t.length,l=e.length;o<a&&h<l;o++,h++){this.debug("matchOne loop");var c=e[h],f=t[o];if(this.debug(e,c,f),c===!1)return!1;if(c===A){this.debug("GLOBSTAR",[e,c,f]);var u=o,d=h+1;if(d===l){for(this.debug("** at the end");o<a;o++)if(t[o]==="."||t[o]===".."||!r.dot&&t[o].charAt(0)===".")return!1;return!0}for(;u<a;){var g=t[u];if(this.debug(`
|
|
4
4
|
globstar while`,t,u,e,d,g),this.matchOne(t.slice(u),e.slice(d),s))return this.debug("globstar found match!",u,a,g),!0;if(g==="."||g===".."||!r.dot&&g.charAt(0)==="."){this.debug("dot detected!",t,u,e,d);break}this.debug("globstar swallow a segment, and continue"),u++}return!!(s&&(this.debug(`
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
`)),{...
|
|
5
|
-
`);let{isError:n,data:
|
|
3
|
+
import U from"chalk";import{confirm as b}from"@inquirer/prompts";import N from"open";var f="upstart-cli";var g=process.env.PUBLIC_UPSTART_OAUTH_CLIENT_ID??"50000000-0000-0000-0000-000000000001",u=process.env.PUBLIC_UPSTART_API_BASE_URL??"https://api.upstart.gg",j=process.env.PUBLIC_UPSTART_EDITOR_BASE_URL??"https://upstart.gg";var _="oauth/devicecode",T="oauth/token";import{createLogger as L}from"vite";var h="0.0.80";import i from"chalk";function x(t,e,n=!1){let s=L(t==="debug"?"info":t,{prefix:"[upstart]",allowClearScreen:e});return n&&s.info(i.hex("#7270c6").bold(`\u{1F680} Upstart v${h}
|
|
4
|
+
`)),{...s,success:(r,o)=>s.info(i.green(r),o),error:(r,o)=>s.error(i.red(r),o),warn:(r,o)=>s.warn(i.yellow(r),o),warnOnce:(r,o)=>s.warnOnce(i.yellow(r),o),debug:(r,o)=>{t==="debug"&&s.info(i.gray(r),o)}}}var m=x();import R from"conf";import c from"node:path";import O from"node:crypto";import a from"node:fs";import{fileURLToPath as v}from"node:url";import Q from"chalk";var k=v(new URL(".",import.meta.url)),w=P(),p=new R({projectName:f,encryptionKey:w,clearInvalidConfig:!0});function S(){let t=k;for(;t!==c.parse(t).root;){let e=c.join(t,"node_modules");if(a.existsSync(e))return e;t=c.dirname(t)}return null}function P(){let t=S();if(!t)throw new Error("Could not find nearest node_modules directory.");let e=c.join(t,".enpage-tmp");a.existsSync(e)||a.mkdirSync(e,{recursive:!0,mode:448});let n=c.join(e,".enpage-key");if(!a.existsSync(n)){let r=O.randomBytes(32).toString("hex");return a.writeFileSync(n,r,{mode:384,flush:!0}),r}return a.readFileSync(n,"utf8")}async function l(t,e,n={}){p.get("access_token")&&(n.Authorization=`Bearer ${p.get("access_token")}`);let s=await fetch(C(t),{method:"POST",headers:{"Content-Type":e instanceof URLSearchParams?"application/x-www-form-urlencoded":"application/json",...n},body:e instanceof URLSearchParams?e:JSON.stringify(e)}).catch(r=>{m.error(`Fatal Error requesting API: ${r.message} (${r.cause.code})`),m.error("Please check your internet connection and try again, or retry later."),process.exit(1)});return I(s)}function C(t){let e=new URL(u.endsWith("/")?u:`${u}/`);return new URL(t,e)}async function I(t){let e=t.headers.get("content-type")?.startsWith("application/json")?await t.json():await t.text();return t.ok?{isSuccess:!0,isError:!1,status:t.status,statusText:t.statusText,data:e}:{isSuccess:!1,isError:!0,status:t.status,statusText:t.statusText,data:e}}async function A(t,e){for(;;){let n=new URLSearchParams({grant_type:"device_code",device_code:t,client_id:g}),s=await l(T,n),{data:r,isSuccess:o}=s;if(o)return r;if(r.error==="authorization_pending")await new Promise(y=>setTimeout(y,5e3));else return e.error(`Error while polling for login: ${r.error_description??r.error}`),!1}}async function de({options:t,logger:e}){e.info(`Logging in to Enpage...
|
|
5
|
+
`);let{isError:n,data:s}=await l(_,{client_id:g,scope:"profile,templates:publish"});n&&(e.error("Failed to get device code. Please try again."),e.error(`Error: ${s.error_description??s.error}`),process.exit(1));let{verification_uri:r,device_code:o}=s;await b({message:"Would you like to open the login page in your browser?",default:!0}).catch(D=>{process.exit(0)})?N(r):e.info(`
|
|
6
6
|
Please visit the following URL to login:
|
|
7
|
-
${
|
|
8
|
-
`),e.info(
|
|
7
|
+
${r}
|
|
8
|
+
`),e.info(U.gray(`
|
|
9
9
|
Waiting for login...
|
|
10
|
-
`));let d=await
|
|
11
|
-
`),process.exitCode=0}export{de as login,
|
|
10
|
+
`));let d=await A(o,e);d||(e.error("Login failed. Please try again."),process.exit(1)),p.set({...d,...d.expires_in?{expires_at:Date.now()+d.expires_in*1e3}:{}}),e.info(`Login successful!
|
|
11
|
+
`),process.exitCode=0}export{de as login,A as pollForLogin};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
`),process.exit(0)}export{
|
|
3
|
+
var i="upstart-cli";var d=process.env.PUBLIC_UPSTART_OAUTH_CLIENT_ID??"50000000-0000-0000-0000-000000000001",I=process.env.PUBLIC_UPSTART_API_BASE_URL??"https://api.upstart.gg",O=process.env.PUBLIC_UPSTART_EDITOR_BASE_URL??"https://upstart.gg";import p from"conf";import r from"node:path";import _ from"node:crypto";import e from"node:fs";import{fileURLToPath as a}from"node:url";import U from"chalk";var m=a(new URL(".",import.meta.url)),u=E(),c=new p({projectName:i,encryptionKey:u,clearInvalidConfig:!0});function f(){let o=m;for(;o!==r.parse(o).root;){let t=r.join(o,"node_modules");if(e.existsSync(t))return t;o=r.dirname(o)}return null}function E(){let o=f();if(!o)throw new Error("Could not find nearest node_modules directory.");let t=r.join(o,".enpage-tmp");e.existsSync(t)||e.mkdirSync(t,{recursive:!0,mode:448});let n=r.join(t,".enpage-key");if(!e.existsSync(n)){let s=_.randomBytes(32).toString("hex");return e.writeFileSync(n,s,{mode:384,flush:!0}),s}return e.readFileSync(n,"utf8")}async function x({options:o,logger:t}){t.info("Logging out fom Enpage..."),c.clear(),t.info(`Done.
|
|
4
|
+
`),process.exit(0)}export{x as logout};
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
|
-
var ye=Object.defineProperty;var b=(e,t)=>()=>(e&&(t=e(e=0)),t);var he=(e,t)=>{for(var r in t)ye(e,r,{get:t[r],enumerable:!0})};function F(){let e;if(process.env.npm_config_user_agent){let t=process.env.npm_config_user_agent.split(" ")[0];e=t.slice(0,t.lastIndexOf("/"))}return e||(console.log("Warning: could not detect package manager"),e="npm"),e}function J(e){return`[${e.error}]${e.error_description?`: ${e.error_description}`:""}`}var q=b(()=>{"use strict"});var X,ft,x,yt,Y,K,V,R=b(()=>{"use strict";X="
|
|
4
|
-
`)),{...o,success:(n
|
|
5
|
-
${c}`:c,i.name=
|
|
6
|
-
${
|
|
3
|
+
var ye=Object.defineProperty;var b=(e,t)=>()=>(e&&(t=e(e=0)),t);var he=(e,t)=>{for(var r in t)ye(e,r,{get:t[r],enumerable:!0})};function F(){let e;if(process.env.npm_config_user_agent){let t=process.env.npm_config_user_agent.split(" ")[0];e=t.slice(0,t.lastIndexOf("/"))}return e||(console.log("Warning: could not detect package manager"),e="npm"),e}function J(e){return`[${e.error}]${e.error_description?`: ${e.error_description}`:""}`}var q=b(()=>{"use strict"});var X,ft,x,yt,Y,K,V,R=b(()=>{"use strict";X="upstart-cli",ft=process.env.PUBLIC_UPSTART_OAUTH_CLIENT_ID??"50000000-0000-0000-0000-000000000001",x=process.env.PUBLIC_UPSTART_API_BASE_URL??"https://api.upstart.gg",yt=process.env.PUBLIC_UPSTART_EDITOR_BASE_URL??"https://upstart.gg",Y=10,K="oauth/userinfo",V="v1/templates"});import Se from"conf";import v from"node:path";import Te from"node:crypto";import A from"node:fs";import{fileURLToPath as Ee}from"node:url";import Pe from"chalk";function Q(){let e=y.get("access_token");if(!e){let t=F();throw new Error(`Access token not found. Please run ${Pe.cyan(`${t} run enpage:login`)} to authenticate.`)}return e}function _e(){let e=xe;for(;e!==v.parse(e).root;){let t=v.join(e,"node_modules");if(A.existsSync(t))return t;e=v.dirname(e)}return null}function be(){let e=_e();if(!e)throw new Error("Could not find nearest node_modules directory.");let t=v.join(e,".enpage-tmp");A.existsSync(t)||A.mkdirSync(t,{recursive:!0,mode:448});let r=v.join(t,".enpage-key");if(!A.existsSync(r)){let s=Te.randomBytes(32).toString("hex");return A.writeFileSync(r,s,{mode:384,flush:!0}),s}return A.readFileSync(r,"utf8")}var xe,we,y,G=b(()=>{"use strict";R();q();xe=Ee(new URL(".",import.meta.url)),we=be(),y=new Se({projectName:X,encryptionKey:we,clearInvalidConfig:!0})});var ee,Z=b(()=>{ee="0.0.80"});import{createLogger as Ae}from"vite";import O from"chalk";function Oe(e,t,r=!1){let o=Ae(e==="debug"?"info":e,{prefix:"[upstart]",allowClearScreen:t});return r&&o.info(O.hex("#7270c6").bold(`\u{1F680} Upstart v${ee}
|
|
4
|
+
`)),{...o,success:(s,n)=>o.info(O.green(s),n),error:(s,n)=>o.error(O.red(s),n),warn:(s,n)=>o.warn(O.yellow(s),n),warnOnce:(s,n)=>o.warnOnce(O.yellow(s),n),debug:(s,n)=>{e==="debug"&&o.info(O.gray(s),n)}}}var g,M=b(()=>{"use strict";Z();g=Oe()});var ne={};he(ne,{get:()=>Ge,post:()=>I});async function I(e,t,r={}){y.get("access_token")&&(r.Authorization=`Bearer ${y.get("access_token")}`);let o=await fetch(oe(e),{method:"POST",headers:{"Content-Type":t instanceof URLSearchParams?"application/x-www-form-urlencoded":"application/json",...r},body:t instanceof URLSearchParams?t:JSON.stringify(t)}).catch(s=>{g.error(`Fatal Error requesting API: ${s.message} (${s.cause.code})`),g.error("Please check your internet connection and try again, or retry later."),process.exit(1)});return se(o)}async function Ge(e,t={}){y.get("access_token")&&(t.Authorization=`Bearer ${y.get("access_token")}`);let r=await fetch(oe(e),{headers:t,method:"GET"}).catch(o=>{g.error(`Fatal Error requesting API: ${o.message} (${o.cause.code})`),g.error("Please check your internet connection and try again, or retry later."),process.exit(1)});return se(r)}function oe(e){let t=new URL(x.endsWith("/")?x:`${x}/`);return new URL(e,t)}async function se(e){let t=e.headers.get("content-type")?.startsWith("application/json")?await e.json():await e.text();return e.ok?{isSuccess:!0,isError:!1,status:e.status,statusText:e.statusText,data:t}:{isSuccess:!1,isError:!0,status:e.status,statusText:e.statusText,data:t}}var W=b(()=>{"use strict";M();R();G()});q();G();import{resolve as h}from"node:path";import{existsSync as D,readFileSync as ct,writeFileSync as lt}from"node:fs";import E from"chalk";R();M();import N from"node:path";import j from"node:fs";import Me from"node:crypto";import Be from"fast-glob";import ae from"node:http";import ze from"node:https";import{pipeline as We}from"node:stream";import ie from"chalk";import qe from"form-data";import*as B from"node:fs";var ke=/[<>"|?*\n\r\t\f\x00-\x1F]/,$e=/(?:^|\/)[*]{2}($|\/)/,Le=248,Ce=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),Ue=e=>typeof e=="string"&&e.length<=Le&&!ke.test(e),ve=e=>e.split(/\r\n?|\n/);var Ie=e=>Ce(e)&&Array.isArray(e.patterns)&&Array.isArray(e.sections);var z=(e,t={})=>{let r=t.path;if(Ie(e))return e;Ue(e)&&B.existsSync(e)&&(r=e,e=B.readFileSync(e,"utf8"));let o=ve(e),s=new Map,n={sections:[],patterns:[]},p={name:"default",patterns:[]},i=null;for(let a of o){let c=a.trim();if(c.startsWith("#")){let[,u]=/^#+\s*(.*)\s*$/.exec(c)||[];if(i){s.delete(i.name),i.comment=i.comment?`${i.comment}
|
|
5
|
+
${c}`:c,i.name=u?`${i.name.trim()}
|
|
6
|
+
${u.trim()}`:i.name.trim(),s.set(i.name.toLowerCase().trim(),i);continue}p={name:u?.trim()||"",comment:c,patterns:[]},s.set(p.name.toLowerCase(),p),n.sections.push(p),i=p;continue}c!==""&&(p.patterns.push(c),n.patterns.push(c)),i=null}return(t.dedupe===!0||t.unique===!0)&&(n=te(n,{...t,format:!1})),n.path=r,n.input=Buffer.from(e),n.format=a=>Fe(n,{...t,...a}),n.dedupe=a=>te(n,{...t,...a}),n.globs=a=>je(n,{path:r,...t,...a}),n};var te=(e,t)=>{let r=z(e,{...t,dedupe:!1}),o=new Map,s={sections:[],patterns:[]},n;for(let p of r.sections){let{name:i="",comment:a,patterns:c}=p,u=i.trim().toLowerCase();for(let f of c)s.patterns.includes(f)||s.patterns.push(f);i&&o.has(u)?(n=o.get(u),n.patterns=[...n.patterns,...c]):(n={name:i,comment:a,patterns:c},s.sections.push(n),o.set(u,n))}for(let p of s.sections)p.patterns=[...new Set(p.patterns)];return s},Ne=e=>{if($e.test(e))return e;let t=!1;return e.startsWith("/")?(e=e.slice(1),t=!0):e.slice(1,e.length-1).includes("/")&&(t=!0),e+=e.endsWith("/")?"**/":"/**",t?e:`**/${e}`},je=(e,t={})=>{let r=z(e,t),o=[],s=0,n=r.patterns.concat(t.ignore||[]).concat((t.unignore||[]).map(i=>i.startsWith("!")?i:`!${i}`)),p=(i,a)=>{let c=o[o.length-1],u=i?"unignore":"ignore";c&&c.type===u?c.patterns.includes(a)||c.patterns.push(a):(o.push({type:u,path:t.path||null,patterns:[a],index:s}),s++)};for(let i of n){let a="";i.startsWith("!")&&(i=i.slice(1),a="!"),p(a,i.startsWith("/")?i.slice(1):i),p(a,Ne(i))}return o},De=(e={name:"",patterns:[]})=>{let t=[e.comment||""];return e.patterns?.length&&(t.push(e.patterns.join(`
|
|
7
7
|
`)),t.push("")),t.join(`
|
|
8
|
-
`)},Fe=(e,t={})=>{let r=z(e,t),o=t.formatSection||De,
|
|
9
|
-
`)};var re=z;W();import He from"p-queue";import Je from"ora";import{customAlphabet as Xe}from"nanoid";var k=class extends Error{constructor(r,o,
|
|
10
|
-
`))}async function pe(e,t,r,o=!1,
|
|
11
|
-
`),g.info("The following files would have been uploaded:"),i.forEach(m=>g.info(`- ${m}`)),process.exit(0));let S=Je(`Uploading ${a} files...`).start(),$=i.map(m=>{let P=
|
|
8
|
+
`)},Fe=(e,t={})=>{let r=z(e,t),o=t.formatSection||De,s=r.sections||r,n=[];for(let p of[].concat(s))n.push(o(p));return n.join(`
|
|
9
|
+
`)};var re=z;W();import He from"p-queue";import Je from"ora";import{customAlphabet as Xe}from"nanoid";var k=class extends Error{constructor(r,o,s){super(`${r}: ${o}`);this.error=r;this.error_description=o;this.filename=s;this.name="UploadError"}},Ye={maxDataSize:12*1024*1024,retryAttempts:2,retryDelay:1e3},Ke=new ae.Agent({keepAlive:!0,maxSockets:10,keepAliveMsecs:3e3});async function Ve(e){let t=N.join(e,".gitignore"),o=j.existsSync(t)?re(j.readFileSync(t,"utf-8")).patterns:[];return Be("**/*",{cwd:e,onlyFiles:!0,dot:!0,absolute:!0,ignore:["node_modules/**",".cache/**","**/.DS_Store",".gitignore",".env",".env.*",".git/**","dist/**",...o]})}async function Qe(e,t,r,o,s,n,p){let i=async a=>{try{return await Ze(e,t,r,o,s,n,p)}catch(c){if(a<p.retryAttempts)return g.warn(`Retrying upload for ${t} (attempt ${a+1})`),await new Promise(u=>setTimeout(u,p.retryDelay)),i(a+1);throw c}};return i(0)}async function Ze(e,t,r,o,s,n,p){return new Promise((i,a)=>{let c=j.statSync(e),u=N.basename(e),f=Date.now(),S=new qe({maxDataSize:p.maxDataSize}),$=j.createReadStream(e),L=0,w=l=>{L+=l.length};$.on("data",w),S.append("file",$,{filename:u,knownLength:c.size});let _={agent:Ke,method:"POST",headers:{authorization:`Bearer ${n}`,"x-upstart-template-file-path":t,"x-upstart-template-id":o,...S.getHeaders()}},P=(r.startsWith("https")?ze:ae).request(r,_,l=>{let T="";l.on("data",C=>{T+=C}),l.on("end",()=>{let C=Date.now(),fe={fileName:u,fileSize:c.size,uploadDuration:C-f,statusCode:l.statusCode??0,serverResponse:T};if(l.statusCode&&l.statusCode>=200&&l.statusCode<300)s.text=`Uploaded ${t}`,i(fe);else{let U;if(l.headers["content-type"]?.startsWith("application/json")){let H=JSON.parse(T);U=new k(H.error||"unknown_error",H.error_description||"Unknown error occurred",t)}else U=new k("unknown_error",T||"Unknown error occurred",t);s.fail(`Failed to upload ${t} [${U.error}] ${U.error_description}`),a(U)}})});P.on("error",l=>{a(new k("request_error",l.message,t))}),We(S,P,l=>{l&&a(new k("pipeline_error",`Pipeline failed for ${u}: ${l.message}`,t))})})}function et(e,t,r){r.length>0?(g.error(ie.red(`Failed to upload ${r.length} files:`)),r.forEach(o=>{let s=o.reason;g.error(`- ${s.filename}: ${s.error_description} (${s.error})`)})):g.info(ie.green(`Uploaded ${t.length} files successfully for template ${e}.
|
|
10
|
+
`))}async function pe(e,t,r,o=!1,s={}){let n={...Ye,...s},p=new He({concurrency:Y}),i=await Ve(t),a=i.length,c={},u=rt(),f=0;for(let m of i){let P=N.relative(t,m),l=await tt(m);c[P]=l}o&&(g.info(`Dry run mode enabled. Skipping upload.
|
|
11
|
+
`),g.info("The following files would have been uploaded:"),i.forEach(m=>g.info(`- ${m}`)),process.exit(0));let S=Je(`Uploading ${a} files...`).start(),$=i.map(m=>{let P=N.resolve(t,m),l=N.relative(t,m),T=`${x}/v1/templates/${e}/upload/${u}`;return p.add(async()=>{let C=await Qe(P,l,T,e,S,r,n);return f++,C})}),L=await Promise.allSettled($);S.stop();let w=L.filter(m=>m.status==="fulfilled"),_=L.filter(m=>m.status==="rejected");if(et(e,w.map(m=>m.value),_),!_.length&&w.length){let m=`${x}/v1/templates/${e}/upload/${u}/finalize`,l=await I(m,{signatures:c});if(l.isError)return g.error(`Failed to finalize upload: ${l.data.error_description} (${l.data.error})`),{filesCount:a,uploadedFiles:w.map(T=>T.value),failedFiles:[],success:!1}}return{filesCount:a,uploadedFiles:w.map(m=>m.value),failedFiles:_,success:_.length===0}}async function tt(e){let t=await Me.subtle.digest("SHA-1",j.readFileSync(e));return Array.from(new Uint8Array(t)).map(r=>r.toString(16).padStart(2,"0")).join("")}function rt(){let e=Xe("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",5),t=new Date,r=t.getUTCFullYear(),o=(t.getUTCMonth()+1).toString().padStart(2,"0"),s=t.getUTCDate().toString().padStart(2,"0"),n=t.getUTCHours().toString().padStart(2,"0"),p=t.getUTCMinutes().toString().padStart(2,"0"),i=t.getUTCSeconds().toString().padStart(2,"0");return`${r}${o}${s}${n}${p}${i}_${e()}`}W();R();import ge from"node:path";import{Type as d}from"@sinclair/typebox";var ce=d.Object({id:d.Optional(d.String({title:"Template ID",description:"A unique identifier for the template. Can be any string, but should be unique."})),name:d.String({title:"Template Name"}),description:d.Optional(d.String({title:"Show template description"})),readme:d.Optional(d.Record(d.RegExp(/^[a-z]{2}$/),d.String(),{title:"Readme texts.",description:"A dictionary of readme files for different languages (iso 2 letters code). Currently on supported for 'en' and 'fr'."})),tags:d.Optional(d.Array(d.String(),{title:"Tags"})),author:d.Optional(d.String({title:"Author name"})),thumbnail:d.Optional(d.String({title:"Thumbnail",description:"A URL to the thumbnail image for the template."})),homepage:d.Optional(d.String({title:"Homepage",description:"A URL to the homepage of the template."}))});M();import ot from"node:fs";import{readFile as st}from"node:fs/promises";import nt from"fast-glob";import{fromError as it}from"zod-validation-error";import{basename as le,dirname as at,extname as pt}from"node:path";async function ue(e,t=g){ot.existsSync(e)||(t.error(`\u{1F534} No enpage.config.js found!
|
|
12
12
|
Your project must have an enpage.config.js file in the root directory.
|
|
13
13
|
|
|
14
|
-
`),process.exit(1));let r=await import(e),o=at(e),
|
|
14
|
+
`),process.exit(1));let r=await import(e),o=at(e),s={},n=await nt(["README.enpage.md","README.enpage.*.md"],{cwd:o,onlyFiles:!0,absolute:!0,caseSensitiveMatch:!1});for(let p of n){let i=le(p,".md"),a=pt(i),c=(a===".enpage"?"en":a.substring(1)).toLowerCase();t.debug(`Found template readme file (${c}): ${le(p)}`),s[c]=await st(p,"utf-8")}return r.manifest&&(r.manifest.readme=s),r}function de(e,t){for(let o in e.datasources)if(e.datasources[o].provider==="json"&&!e.datasources[o].sampleData)throw t.error(`\u{1F534} Error: Datasource "${o}" is missing sample data - nothing will be rendered during development! Please check your enpage.config.js file and add a "sampleData" key to your ${o} datasource.`),new Error(`Missing sample data for datasource "${o}"`);let r=ce.safeParse(e.manifest);if(!r.success){t.error(`\u{1F534} Error: template manifest is invalid. Check your call to defineManifest().
|
|
15
15
|
`);let o=it(r.error);t.error(`Hint: ${o.toString()}
|
|
16
16
|
|
|
17
|
-
`),process.exit(1)}return e}R();G();async function me(e=!1){let t=y.get("access_token"),r=y.get("expires_at");if(!t)return!1;if(r&&r<Date.now())return console.log("Seems like your token expired..."),!1;if(!e)return!0;let{get:o}=await Promise.resolve().then(()=>(W(),
|
|
17
|
+
`),process.exit(1)}return e}R();G();async function me(e=!1){let t=y.get("access_token"),r=y.get("expires_at");if(!t)return!1;if(r&&r<Date.now())return console.log("Seems like your token expired..."),!1;if(!e)return!0;let{get:o}=await Promise.resolve().then(()=>(W(),ne)),{isSuccess:s}=await o(K);return s}async function _r({options:e,args:t,logger:r}){if(!await me(!0)){let f=F();r.error(` ${E.redBright("Error")}: User token not found. Please run ${E.cyan(`${f} run enpage:login`)} to authenticate or set the ${E.cyan("ENPAGE_API_TOKEN")} environment variable.
|
|
18
18
|
`),process.exit(1)}let o=t.length?ge.isAbsolute(t[0])?t[0]:h(process.cwd(),t[0]):process.cwd();D(o)||(r.error(` Template directory not found: ${o}. Aborting.
|
|
19
|
-
`),process.exit(1));let
|
|
19
|
+
`),process.exit(1));let s=t.length>1?ge.isAbsolute(t[1])?t[1]:h(process.cwd(),t[1]):h(o,"dist");D(s)||(r.error(` Dist directory not found: ${s}.
|
|
20
20
|
Please run 'build' before publishing. Aborting.
|
|
21
|
-
`),process.exit(1)),D(h(o,"enpage.config.js"))||(r.error(` ${
|
|
22
|
-
`),process.exit(1));let
|
|
23
|
-
`),process.exit(1));let a=await
|
|
24
|
-
`),process.exit(1)),!a.enpage?.id){let{data:f,isError:S,status:$}=await
|
|
25
|
-
`),process.exit(1)),a.enpage??={},a.enpage.id=f.template.id;try{e.dryRun||lt(i,JSON.stringify(a,null,2))}catch{r.error(` ${
|
|
21
|
+
`),process.exit(1)),D(h(o,"enpage.config.js"))||(r.error(` ${E.redBright("Error")}: file enpage.config.js not found in ${o}. Aborting.
|
|
22
|
+
`),process.exit(1));let n=await ue(h(o,"enpage.config.js"),r);de(n,r);let p=Q(),i=ut(o);i||(r.error(` ${E.redBright("Error")}: package.json file not found in ${o}. Aborting.
|
|
23
|
+
`),process.exit(1));let a=await dt(i);if(a||(r.error(` ${E.redBright("Error")}: cannot read/parse package.json file in ${o}. Aborting.
|
|
24
|
+
`),process.exit(1)),!a.enpage?.id){let{data:f,isError:S,status:$}=await I(V,{manifest:n.manifest});S&&(r.error(` ${E.redBright("Error")}: Cannot register template: ${J(f)}
|
|
25
|
+
`),process.exit(1)),a.enpage??={},a.enpage.id=f.template.id;try{e.dryRun||lt(i,JSON.stringify(a,null,2))}catch{r.error(` ${E.redBright("Error")}: Cannot update template id in package.json file located in ${o}. Aborting.
|
|
26
26
|
`),process.exit(1)}}let c=a.enpage.id;r.info(`Submitting template to Enpage...
|
|
27
27
|
`),(await pe(c,o,p,e.dryRun)).success||(r.error(`
|
|
28
28
|
Upload failed. See details above.
|
|
29
29
|
`),process.exit(1)),r.success(`Template ${c} published.
|
|
30
|
-
`)}function
|
|
30
|
+
`)}function ut(e){return D(h(e,"package.json"))?h(e,"package.json"):D(h(e,"template-package.json"))?h(e,"template-package.json"):!1}function dt(e){try{return JSON.parse(ct(e,"utf-8"))}catch{return null}}export{_r as publish};
|
|
31
31
|
/*!
|
|
32
32
|
* parse-gitignore <https://github.com/jonschlinkert/parse-gitignore>
|
|
33
33
|
* Copyright (c) 2015-present, Jon Schlinkert.
|
|
34
34
|
* Released under the MIT License.
|
|
35
35
|
*
|
|
36
|
-
* Converted to typescript by Matthias E. <matthias@
|
|
36
|
+
* Converted to typescript by Matthias E. <matthias@upstart.gg>
|
|
37
37
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
3
|
import*as p from"node:fs";var h=/[<>"|?*\n\r\t\f\x00-\x1F]/,P=/(?:^|\/)[*]{2}($|\/)/,G=248,S=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),y=t=>typeof t=="string"&&t.length<=G&&!h.test(t),d=t=>t.split(/\r\n?|\n/),b=t=>t.startsWith("#"),O=t=>S(t)&&Array.isArray(t.patterns)&&Array.isArray(t.sections),$=t=>d(t).map(e=>e.trim()).filter(e=>e!==""&&!b(e)),u=(t,e={})=>{let l=e.path;if(O(t))return t;y(t)&&p.existsSync(t)&&(l=t,t=p.readFileSync(t,"utf8"));let c=d(t),a=new Map,n={sections:[],patterns:[]},o={name:"default",patterns:[]},s=null;for(let r of c){let i=r.trim();if(i.startsWith("#")){let[,g]=/^#+\s*(.*)\s*$/.exec(i)||[];if(s){a.delete(s.name),s.comment=s.comment?`${s.comment}
|
|
4
4
|
${i}`:i,s.name=g?`${s.name.trim()}
|
|
@@ -11,5 +11,5 @@ ${g.trim()}`:s.name.trim(),a.set(s.name.toLowerCase().trim(),s);continue}o={name
|
|
|
11
11
|
* Copyright (c) 2015-present, Jon Schlinkert.
|
|
12
12
|
* Released under the MIT License.
|
|
13
13
|
*
|
|
14
|
-
* Converted to typescript by Matthias E. <matthias@
|
|
14
|
+
* Converted to typescript by Matthias E. <matthias@upstart.gg>
|
|
15
15
|
*/
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import b from"node:path";import L from"node:fs";import ge from"node:crypto";import me from"fast-glob";var I="upstart-cli";var Oe=process.env.PUBLIC_UPSTART_OAUTH_CLIENT_ID??"50000000-0000-0000-0000-000000000001",y=process.env.PUBLIC_UPSTART_API_BASE_URL??"https://api.upstart.gg",Ae=process.env.PUBLIC_UPSTART_EDITOR_BASE_URL??"https://upstart.gg",N=10;import B from"node:http";import fe from"node:https";import{pipeline as ye}from"node:stream";import{createLogger as q}from"vite";var D="0.0.80";import _ from"chalk";function H(e,t,n=!1){let i=q(e==="debug"?"info":e,{prefix:"[upstart]",allowClearScreen:t});return n&&i.info(_.hex("#7270c6").bold(`\u{1F680} Upstart v${D}
|
|
4
4
|
`)),{...i,success:(r,s)=>i.info(_.green(r),s),error:(r,s)=>i.error(_.red(r),s),warn:(r,s)=>i.warn(_.yellow(r),s),warnOnce:(r,s)=>i.warnOnce(_.yellow(r),s),debug:(r,s)=>{e==="debug"&&i.info(_.gray(r),s)}}}var g=H();import z from"chalk";import he from"form-data";import*as C from"node:fs";var X=/[<>"|?*\n\r\t\f\x00-\x1F]/,J=/(?:^|\/)[*]{2}($|\/)/,V=248,K=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),Y=e=>typeof e=="string"&&e.length<=V&&!X.test(e),Q=e=>e.split(/\r\n?|\n/);var Z=e=>K(e)&&Array.isArray(e.patterns)&&Array.isArray(e.sections);var k=(e,t={})=>{let n=t.path;if(Z(e))return e;Y(e)&&C.existsSync(e)&&(n=e,e=C.readFileSync(e,"utf8"));let i=Q(e),r=new Map,s={sections:[],patterns:[]},c={name:"default",patterns:[]},o=null;for(let a of i){let p=a.trim();if(p.startsWith("#")){let[,u]=/^#+\s*(.*)\s*$/.exec(p)||[];if(o){r.delete(o.name),o.comment=o.comment?`${o.comment}
|
|
5
5
|
${p}`:p,o.name=u?`${o.name.trim()}
|
|
6
6
|
${u.trim()}`:o.name.trim(),r.set(o.name.toLowerCase().trim(),o);continue}c={name:u?.trim()||"",comment:p,patterns:[]},r.set(c.name.toLowerCase(),c),s.sections.push(c),o=c;continue}p!==""&&(c.patterns.push(p),s.patterns.push(p)),o=null}return(t.dedupe===!0||t.unique===!0)&&(s=G(s,{...t,format:!1})),s.path=n,s.input=Buffer.from(e),s.format=a=>se(s,{...t,...a}),s.dedupe=a=>G(s,{...t,...a}),s.globs=a=>te(s,{path:n,...t,...a}),s};var G=(e,t)=>{let n=k(e,{...t,dedupe:!1}),i=new Map,r={sections:[],patterns:[]},s;for(let c of n.sections){let{name:o="",comment:a,patterns:p}=c,u=o.trim().toLowerCase();for(let h of p)r.patterns.includes(h)||r.patterns.push(h);o&&i.has(u)?(s=i.get(u),s.patterns=[...s.patterns,...p]):(s={name:o,comment:a,patterns:p},r.sections.push(s),i.set(u,s))}for(let c of r.sections)c.patterns=[...new Set(c.patterns)];return r},ee=e=>{if(J.test(e))return e;let t=!1;return e.startsWith("/")?(e=e.slice(1),t=!0):e.slice(1,e.length-1).includes("/")&&(t=!0),e+=e.endsWith("/")?"**/":"/**",t?e:`**/${e}`},te=(e,t={})=>{let n=k(e,t),i=[],r=0,s=n.patterns.concat(t.ignore||[]).concat((t.unignore||[]).map(o=>o.startsWith("!")?o:`!${o}`)),c=(o,a)=>{let p=i[i.length-1],u=o?"unignore":"ignore";p&&p.type===u?p.patterns.includes(a)||p.patterns.push(a):(i.push({type:u,path:t.path||null,patterns:[a],index:r}),r++)};for(let o of s){let a="";o.startsWith("!")&&(o=o.slice(1),a="!"),c(a,o.startsWith("/")?o.slice(1):o),c(a,ee(o))}return i},re=(e={name:"",patterns:[]})=>{let t=[e.comment||""];return e.patterns?.length&&(t.push(e.patterns.join(`
|
|
7
7
|
`)),t.push("")),t.join(`
|
|
8
8
|
`)},se=(e,t={})=>{let n=k(e,t),i=t.formatSection||re,r=n.sections||n,s=[];for(let c of[].concat(r))s.push(i(c));return s.join(`
|
|
9
|
-
`)};var j=k;import Se from"p-queue";import
|
|
10
|
-
`))}async function mt(e,t,n,i=!1,r={}){let s={..._e,...r},c=new Se({concurrency:
|
|
11
|
-
`),g.info("The following files would have been uploaded:"),o.forEach(d=>g.info(`- ${d}`)),process.exit(0));let S=
|
|
9
|
+
`)};var j=k;import Se from"p-queue";import Pe from"ora";import{customAlphabet as Te}from"nanoid";import oe from"conf";import U from"node:path";import ne from"node:crypto";import E from"node:fs";import{fileURLToPath as ie}from"node:url";import He from"chalk";var ae=ie(new URL(".",import.meta.url)),ce=le(),$=new oe({projectName:I,encryptionKey:ce,clearInvalidConfig:!0});function pe(){let e=ae;for(;e!==U.parse(e).root;){let t=U.join(e,"node_modules");if(E.existsSync(t))return t;e=U.dirname(e)}return null}function le(){let e=pe();if(!e)throw new Error("Could not find nearest node_modules directory.");let t=U.join(e,".enpage-tmp");E.existsSync(t)||E.mkdirSync(t,{recursive:!0,mode:448});let n=U.join(t,".enpage-key");if(!E.existsSync(n)){let r=ne.randomBytes(32).toString("hex");return E.writeFileSync(n,r,{mode:384,flush:!0}),r}return E.readFileSync(n,"utf8")}async function F(e,t,n={}){$.get("access_token")&&(n.Authorization=`Bearer ${$.get("access_token")}`);let i=await fetch(ue(e),{method:"POST",headers:{"Content-Type":t instanceof URLSearchParams?"application/x-www-form-urlencoded":"application/json",...n},body:t instanceof URLSearchParams?t:JSON.stringify(t)}).catch(r=>{g.error(`Fatal Error requesting API: ${r.message} (${r.cause.code})`),g.error("Please check your internet connection and try again, or retry later."),process.exit(1)});return de(i)}function ue(e){let t=new URL(y.endsWith("/")?y:`${y}/`);return new URL(e,t)}async function de(e){let t=e.headers.get("content-type")?.startsWith("application/json")?await e.json():await e.text();return e.ok?{isSuccess:!0,isError:!1,status:e.status,statusText:e.statusText,data:t}:{isSuccess:!1,isError:!0,status:e.status,statusText:e.statusText,data:t}}var R=class extends Error{constructor(n,i,r){super(`${n}: ${i}`);this.error=n;this.error_description=i;this.filename=r;this.name="UploadError"}},_e={maxDataSize:12*1024*1024,retryAttempts:2,retryDelay:1e3},Ee=new B.Agent({keepAlive:!0,maxSockets:10,keepAliveMsecs:3e3});async function Re(e){let t=b.join(e,".gitignore"),i=L.existsSync(t)?j(L.readFileSync(t,"utf-8")).patterns:[];return me("**/*",{cwd:e,onlyFiles:!0,dot:!0,absolute:!0,ignore:["node_modules/**",".cache/**","**/.DS_Store",".gitignore",".env",".env.*",".git/**","dist/**",...i]})}async function we(e,t,n,i,r,s,c){let o=async a=>{try{return await xe(e,t,n,i,r,s,c)}catch(p){if(a<c.retryAttempts)return g.warn(`Retrying upload for ${t} (attempt ${a+1})`),await new Promise(u=>setTimeout(u,c.retryDelay)),o(a+1);throw p}};return o(0)}async function xe(e,t,n,i,r,s,c){return new Promise((o,a)=>{let p=L.statSync(e),u=b.basename(e),h=Date.now(),S=new he({maxDataSize:c.maxDataSize}),O=L.createReadStream(e),A=0,P=l=>{A+=l.length};O.on("data",P),S.append("file",O,{filename:u,knownLength:p.size});let T={agent:Ee,method:"POST",headers:{authorization:`Bearer ${s}`,"x-upstart-template-file-path":t,"x-upstart-template-id":i,...S.getHeaders()}},f=(n.startsWith("https")?fe:B).request(n,T,l=>{let m="";l.on("data",w=>{m+=w}),l.on("end",()=>{let w=Date.now(),W={fileName:u,fileSize:p.size,uploadDuration:w-h,statusCode:l.statusCode??0,serverResponse:m};if(l.statusCode&&l.statusCode>=200&&l.statusCode<300)r.text=`Uploaded ${t}`,o(W);else{let x;if(l.headers["content-type"]?.startsWith("application/json")){let v=JSON.parse(m);x=new R(v.error||"unknown_error",v.error_description||"Unknown error occurred",t)}else x=new R("unknown_error",m||"Unknown error occurred",t);r.fail(`Failed to upload ${t} [${x.error}] ${x.error_description}`),a(x)}})});f.on("error",l=>{a(new R("request_error",l.message,t))}),ye(S,f,l=>{l&&a(new R("pipeline_error",`Pipeline failed for ${u}: ${l.message}`,t))})})}function Ue(e,t,n){n.length>0?(g.error(z.red(`Failed to upload ${n.length} files:`)),n.forEach(i=>{let r=i.reason;g.error(`- ${r.filename}: ${r.error_description} (${r.error})`)})):g.info(z.green(`Uploaded ${t.length} files successfully for template ${e}.
|
|
10
|
+
`))}async function mt(e,t,n,i=!1,r={}){let s={..._e,...r},c=new Se({concurrency:N}),o=await Re(t),a=o.length,p={},u=Le(),h=0;for(let d of o){let f=b.relative(t,d),l=await be(d);p[f]=l}i&&(g.info(`Dry run mode enabled. Skipping upload.
|
|
11
|
+
`),g.info("The following files would have been uploaded:"),o.forEach(d=>g.info(`- ${d}`)),process.exit(0));let S=Pe(`Uploading ${a} files...`).start(),O=o.map(d=>{let f=b.resolve(t,d),l=b.relative(t,d),m=`${y}/v1/templates/${e}/upload/${u}`;return c.add(async()=>{let w=await we(f,l,m,e,S,n,s);return h++,w})}),A=await Promise.allSettled(O);S.stop();let P=A.filter(d=>d.status==="fulfilled"),T=A.filter(d=>d.status==="rejected");if(Ue(e,P.map(d=>d.value),T),!T.length&&P.length){let d=`${y}/v1/templates/${e}/upload/${u}/finalize`,l=await F(d,{signatures:p});if(l.isError)return g.error(`Failed to finalize upload: ${l.data.error_description} (${l.data.error})`),{filesCount:a,uploadedFiles:P.map(m=>m.value),failedFiles:[],success:!1}}return{filesCount:a,uploadedFiles:P.map(d=>d.value),failedFiles:T,success:T.length===0}}async function be(e){let t=await ge.subtle.digest("SHA-1",L.readFileSync(e));return Array.from(new Uint8Array(t)).map(n=>n.toString(16).padStart(2,"0")).join("")}function Le(){let e=Te("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",5),t=new Date,n=t.getUTCFullYear(),i=(t.getUTCMonth()+1).toString().padStart(2,"0"),r=t.getUTCDate().toString().padStart(2,"0"),s=t.getUTCHours().toString().padStart(2,"0"),c=t.getUTCMinutes().toString().padStart(2,"0"),o=t.getUTCSeconds().toString().padStart(2,"0");return`${n}${i}${r}${s}${c}${o}_${e()}`}export{mt as uploadTemplate};
|
|
12
12
|
/*!
|
|
13
13
|
* parse-gitignore <https://github.com/jonschlinkert/parse-gitignore>
|
|
14
14
|
* Copyright (c) 2015-present, Jon Schlinkert.
|
|
15
15
|
* Released under the MIT License.
|
|
16
16
|
*
|
|
17
|
-
* Converted to typescript by Matthias E. <matthias@
|
|
17
|
+
* Converted to typescript by Matthias E. <matthias@upstart.gg>
|
|
18
18
|
*/
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export declare const CLI_PROJECT_NAME = "
|
|
1
|
+
export declare const CLI_PROJECT_NAME = "upstart-cli";
|
|
2
2
|
export declare const CLI_LOGIN_POLL_INTERVAL = 5000;
|
|
3
3
|
export declare const CLI_LOGIN_CLIENT_ID: string;
|
|
4
4
|
export declare const API_BASE_URL: string;
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const EDITOR_BASE_URL: string;
|
|
6
6
|
export declare const DEFAULT_UPLOAD_MAX_CONCURRENCY = 10;
|
|
7
7
|
export declare const OAUTH_ENDPOINT_DEVICE_CODE = "oauth/devicecode";
|
|
8
8
|
export declare const OAUTH_ENDPOINT_TOKEN = "oauth/token";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/node/cli/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/node/cli/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,gBAAgB,CAAC;AAC9C,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAC5C,eAAO,MAAM,mBAAmB,QACsD,CAAC;AAEvF,eAAO,MAAM,YAAY,QAAsE,CAAC;AAChG,eAAO,MAAM,eAAe,QAAqE,CAAC;AAClG,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAEjD,eAAO,MAAM,0BAA0B,qBAAqB,CAAC;AAC7D,eAAO,MAAM,oBAAoB,gBAAgB,CAAC;AAClD,eAAO,MAAM,wBAAwB,mBAAmB,CAAC;AAEzD,eAAO,MAAM,8BAA8B,iBAAiB,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
|
-
var _="
|
|
3
|
+
var _="upstart-cli",t=5e3,o=process.env.PUBLIC_UPSTART_OAUTH_CLIENT_ID??"50000000-0000-0000-0000-000000000001",E=process.env.PUBLIC_UPSTART_API_BASE_URL??"https://api.upstart.gg",I=process.env.PUBLIC_UPSTART_EDITOR_BASE_URL??"https://upstart.gg",T=10,e="oauth/devicecode",s="oauth/token",p="oauth/userinfo",A="v1/templates";export{E as API_BASE_URL,A as API_ENDPOINT_REGISTER_TEMPLATE,o as CLI_LOGIN_CLIENT_ID,t as CLI_LOGIN_POLL_INTERVAL,_ as CLI_PROJECT_NAME,T as DEFAULT_UPLOAD_MAX_CONCURRENCY,I as EDITOR_BASE_URL,e as OAUTH_ENDPOINT_DEVICE_CODE,s as OAUTH_ENDPOINT_TOKEN,p as OAUTH_ENDPOINT_USER_INFO};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
|
-
var O=Object.defineProperty;var p=(e,t)=>()=>(e&&(t=e(e=0)),t);var S=(e,t)=>{for(var s in t)O(e,s,{get:t[s],enumerable:!0})};var y,
|
|
4
|
-
`)),{...o,success:(r,n)=>o.info(c.green(r),n),error:(r,n)=>o.error(c.red(r),n),warn:(r,n)=>o.warn(c.yellow(r),n),warnOnce:(r,n)=>o.warnOnce(c.yellow(r),n),debug:(r,n)=>{e==="debug"&&o.info(c.gray(r),n)}}}var d,_=p(()=>{"use strict";
|
|
3
|
+
var O=Object.defineProperty;var p=(e,t)=>()=>(e&&(t=e(e=0)),t);var S=(e,t)=>{for(var s in t)O(e,s,{get:t[s],enumerable:!0})};var y,M,g,$,f,m=p(()=>{"use strict";y="upstart-cli",M=process.env.PUBLIC_UPSTART_OAUTH_CLIENT_ID??"50000000-0000-0000-0000-000000000001",g=process.env.PUBLIC_UPSTART_API_BASE_URL??"https://api.upstart.gg",$=process.env.PUBLIC_UPSTART_EDITOR_BASE_URL??"https://upstart.gg",f="oauth/userinfo"});import k from"conf";import u from"node:path";import P from"node:crypto";import a from"node:fs";import{fileURLToPath as I}from"node:url";import X from"chalk";function w(){let e=U;for(;e!==u.parse(e).root;){let t=u.join(e,"node_modules");if(a.existsSync(t))return t;e=u.dirname(e)}return null}function b(){let e=w();if(!e)throw new Error("Could not find nearest node_modules directory.");let t=u.join(e,".enpage-tmp");a.existsSync(t)||a.mkdirSync(t,{recursive:!0,mode:448});let s=u.join(t,".enpage-key");if(!a.existsSync(s)){let r=P.randomBytes(32).toString("hex");return a.writeFileSync(s,r,{mode:384,flush:!0}),r}return a.readFileSync(s,"utf8")}var U,v,i,l=p(()=>{"use strict";m();U=I(new URL(".",import.meta.url)),v=b(),i=new k({projectName:y,encryptionKey:v,clearInvalidConfig:!0})});var h,T=p(()=>{h="0.0.80"});import{createLogger as A}from"vite";import c from"chalk";function C(e,t,s=!1){let o=A(e==="debug"?"info":e,{prefix:"[upstart]",allowClearScreen:t});return s&&o.info(c.hex("#7270c6").bold(`\u{1F680} Upstart v${h}
|
|
4
|
+
`)),{...o,success:(r,n)=>o.info(c.green(r),n),error:(r,n)=>o.error(c.red(r),n),warn:(r,n)=>o.warn(c.yellow(r),n),warnOnce:(r,n)=>o.warnOnce(c.yellow(r),n),debug:(r,n)=>{e==="debug"&&o.info(c.gray(r),n)}}}var d,_=p(()=>{"use strict";T();d=C()});var x={};S(x,{get:()=>j,post:()=>D});async function D(e,t,s={}){i.get("access_token")&&(s.Authorization=`Bearer ${i.get("access_token")}`);let o=await fetch(E(e),{method:"POST",headers:{"Content-Type":t instanceof URLSearchParams?"application/x-www-form-urlencoded":"application/json",...s},body:t instanceof URLSearchParams?t:JSON.stringify(t)}).catch(r=>{d.error(`Fatal Error requesting API: ${r.message} (${r.cause.code})`),d.error("Please check your internet connection and try again, or retry later."),process.exit(1)});return L(o)}async function j(e,t={}){i.get("access_token")&&(t.Authorization=`Bearer ${i.get("access_token")}`);let s=await fetch(E(e),{headers:t,method:"GET"}).catch(o=>{d.error(`Fatal Error requesting API: ${o.message} (${o.cause.code})`),d.error("Please check your internet connection and try again, or retry later."),process.exit(1)});return L(s)}function E(e){let t=new URL(g.endsWith("/")?g:`${g}/`);return new URL(e,t)}async function L(e){let t=e.headers.get("content-type")?.startsWith("application/json")?await e.json():await e.text();return e.ok?{isSuccess:!0,isError:!1,status:e.status,statusText:e.statusText,data:t}:{isSuccess:!1,isError:!0,status:e.status,statusText:e.statusText,data:t}}var R=p(()=>{"use strict";_();m();l()});m();l();async function ce(e=!1){let t=i.get("access_token"),s=i.get("expires_at");if(!t)return!1;if(s&&s<Date.now())return console.log("Seems like your token expired..."),!1;if(!e)return!0;let{get:o}=await Promise.resolve().then(()=>(R(),x)),{isSuccess:r}=await o(f);return r}export{ce as isLoggedIn};
|