@fy-stack/app-construct 0.0.147-alpha.3045 → 0.0.147-alpha.3047

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.
@@ -42,7 +42,9 @@ export type AppSource = {
42
42
  reference: {
43
43
  repository: string;
44
44
  static?: string;
45
- files?: Record<string, string>;
45
+ files?: Record<string, {
46
+ key: string;
47
+ }>;
46
48
  tag?: string;
47
49
  };
48
50
  container?: Omit<ContainerDefinitionOptions, 'image' | 'logging'>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/ecs/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/ecs/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"next-app-router-construct.d.ts","sourceRoot":"","sources":["../../../../src/lib/lambda/apps/next-app-router-construct.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAExD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAKvD,QAAA,MAAM,iBAAiB;;;;;;gCAA8C,CAAC;AAEtE,qBAAa,sBAAuB,SAAQ,SAAU,YAAW,YAAY;IACpE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC;IAEpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;gBAG9B,KAAK,EAAE,SAAS,EAChB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAyCzD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,eAAe,CAAC;IAkBpE,gBAAgB,CAAC,cAAc,EAAE,MAAM;IAIvC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC;IAkF3D,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;IAI7C,KAAK,CAAC,GAAG,MAAM,EAAE,SAAS,EAAE;IAI5B,YAAY,IAAI,kBAAkB;IAIlC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO;;;CAG7B"}
1
+ {"version":3,"file":"next-app-router-construct.d.ts","sourceRoot":"","sources":["../../../../src/lib/lambda/apps/next-app-router-construct.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAExD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAKvD,QAAA,MAAM,iBAAiB;;;;;;gCAA8C,CAAC;AAEtE,qBAAa,sBAAuB,SAAQ,SAAU,YAAW,YAAY;IACpE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC;IAEpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;gBAG9B,KAAK,EAAE,SAAS,EAChB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAyCzD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,eAAe,CAAC;IAkBpE,gBAAgB,CAAC,cAAc,EAAE,MAAM;IAIvC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC;IA0F3D,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;IAI7C,KAAK,CAAC,GAAG,MAAM,EAAE,SAAS,EAAE;IAI5B,YAAY,IAAI,kBAAkB;IAIlC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO;;;CAG7B"}
@@ -67,22 +67,28 @@ class NextAppRouterConstruct extends constructs_1.Construct {
67
67
  invokeMode: aws_lambda_1.InvokeMode.RESPONSE_STREAM,
68
68
  });
69
69
  if (this.files.staticFiles) {
70
- const staticFiles = s3Deploy.Source.bucket(this.static, this.files.staticFiles);
71
- new s3Deploy.BucketDeployment(this, `${strippedBasePath}StaticDeployment`, {
70
+ const staticFiles = s3Deploy.Source.bucket(this.static, this.files.staticFiles.key);
71
+ const deployment = new s3Deploy.BucketDeployment(this, `${strippedBasePath}StaticDeployment`, {
72
72
  destinationBucket: this.static,
73
73
  sources: [staticFiles],
74
74
  destinationKeyPrefix: `${strippedBasePath}/_next/static/`,
75
75
  retainOnDelete: false,
76
76
  });
77
+ if (this.files.staticFiles.deployment) {
78
+ deployment.node.addDependency(this.files.staticFiles.deployment);
79
+ }
77
80
  }
78
81
  if (this.files.publicFiles) {
79
- const publicFiles = s3Deploy.Source.bucket(this.static, this.files.publicFiles);
80
- new s3Deploy.BucketDeployment(this, `${strippedBasePath}PublicDeployment`, {
82
+ const publicFiles = s3Deploy.Source.bucket(this.static, this.files.publicFiles.key);
83
+ const deployment = new s3Deploy.BucketDeployment(this, `${strippedBasePath}PublicDeployment`, {
81
84
  destinationBucket: this.static,
82
85
  sources: [publicFiles],
83
86
  destinationKeyPrefix: `${strippedBasePath}/`,
84
87
  retainOnDelete: false,
85
88
  });
89
+ if (this.files.publicFiles.deployment) {
90
+ deployment.node.addDependency(this.files.publicFiles.deployment);
91
+ }
86
92
  }
87
93
  if (strippedBasePath)
88
94
  this.function.addEnvironment('BASE_PATH', basePath);
@@ -1,16 +1,29 @@
1
1
  import * as cdk from 'aws-cdk-lib';
2
2
  import * as cloudfront from 'aws-cdk-lib/aws-cloudfront';
3
3
  import * as s3 from 'aws-cdk-lib/aws-s3';
4
+ import * as s3Deploy from 'aws-cdk-lib/aws-s3-deployment';
4
5
  import { Construct } from 'constructs';
5
6
  export type AppFile = {
6
- staticFiles?: string;
7
- publicFiles?: string;
7
+ staticFiles?: {
8
+ deployment?: s3Deploy.BucketDeployment;
9
+ key: string;
10
+ };
11
+ publicFiles?: {
12
+ deployment?: s3Deploy.BucketDeployment;
13
+ key: string;
14
+ };
8
15
  };
9
16
  export declare function staticDeployment(app: Construct, output: string): {
10
17
  staticBucket: cdk.aws_s3.Bucket;
11
18
  files: {
12
- staticFiles: string;
13
- publicFiles: string;
19
+ staticFiles: {
20
+ deployment: cdk.aws_s3_deployment.BucketDeployment;
21
+ key: string;
22
+ };
23
+ publicFiles: {
24
+ deployment: cdk.aws_s3_deployment.BucketDeployment;
25
+ key: string;
26
+ };
14
27
  };
15
28
  };
16
29
  export declare function cloudfrontBehaviours(app: Construct, staticBucket: s3.IBucket, serverOrigin: cloudfront.IOrigin, basePath: string, files: AppFile, isLambda?: boolean): {
@@ -1 +1 @@
1
- {"version":3,"file":"next-app-router.d.ts","sourceRoot":"","sources":["../../../src/lib/shared/next-app-router.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAGzC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,MAAM,MAAM,OAAO,GAAG;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM;;;;;;EAsD9D;AAED,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,SAAS,EACd,YAAY,EAAE,EAAE,CAAC,OAAO,EACxB,YAAY,EAAE,UAAU,CAAC,OAAO,EAChC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,EACd,QAAQ,UAAQ;;EA0EjB"}
1
+ {"version":3,"file":"next-app-router.d.ts","sourceRoot":"","sources":["../../../src/lib/shared/next-app-router.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,MAAM,MAAM,OAAO,GAAG;IACpB,WAAW,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACtE,WAAW,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACvE,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM;;;;;;;;;;;;EAkE9D;AAED,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,SAAS,EACd,YAAY,EAAE,EAAE,CAAC,OAAO,EACxB,YAAY,EAAE,UAAU,CAAC,OAAO,EAChC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,EACd,QAAQ,UAAQ;;EAgGjB"}
@@ -43,8 +43,20 @@ function staticDeployment(app, output) {
43
43
  extract: false,
44
44
  });
45
45
  const files = {
46
- staticFiles: 'assets/' + staticDeployment.objectKeys[0],
47
- publicFiles: 'assets/' + publicDeployment.objectKeys[0],
46
+ staticFiles: {
47
+ deployment: staticDeployment,
48
+ key: cdk.Fn.join('/', [
49
+ 'assets',
50
+ cdk.Fn.select(0, staticDeployment.objectKeys),
51
+ ]),
52
+ },
53
+ publicFiles: {
54
+ deployment: publicDeployment,
55
+ key: cdk.Fn.join('/', [
56
+ 'assets',
57
+ cdk.Fn.select(0, publicDeployment.objectKeys),
58
+ ]),
59
+ },
48
60
  };
49
61
  if (!files.publicFiles || !files.staticFiles) {
50
62
  throw new Error('Failed to deploy static and public files');
@@ -54,17 +66,20 @@ function staticDeployment(app, output) {
54
66
  function cloudfrontBehaviours(app, staticBucket, serverOrigin, basePath, files, isLambda = false) {
55
67
  const strippedBasePath = basePath.replace(/^\/+|\/+$/g, '');
56
68
  if (files.staticFiles) {
57
- const staticFiles = s3Deploy.Source.bucket(staticBucket, files.staticFiles);
58
- new s3Deploy.BucketDeployment(app, `${basePath}StaticDeployment`, {
69
+ const staticFiles = s3Deploy.Source.bucket(staticBucket, files.staticFiles.key);
70
+ const deployment = new s3Deploy.BucketDeployment(app, `${strippedBasePath}StaticDeployment`, {
59
71
  destinationBucket: staticBucket,
60
72
  sources: [staticFiles],
61
73
  destinationKeyPrefix: `${strippedBasePath}/_next/static/`,
62
74
  retainOnDelete: false,
63
75
  });
76
+ if (files.staticFiles.deployment) {
77
+ deployment.node.addDependency(files.staticFiles.deployment);
78
+ }
64
79
  }
65
80
  if (files.publicFiles) {
66
- const publicFiles = s3Deploy.Source.bucket(staticBucket, files.publicFiles);
67
- new s3Deploy.BucketDeployment(app, `${basePath}PublicDeployment`, {
81
+ const publicFiles = s3Deploy.Source.bucket(staticBucket, files.publicFiles.key);
82
+ const deployment = new s3Deploy.BucketDeployment(app, `${strippedBasePath}PublicDeployment`, {
68
83
  destinationBucket: staticBucket,
69
84
  sources: [publicFiles],
70
85
  destinationKeyPrefix: strippedBasePath
@@ -72,6 +87,9 @@ function cloudfrontBehaviours(app, staticBucket, serverOrigin, basePath, files,
72
87
  : undefined,
73
88
  retainOnDelete: false,
74
89
  });
90
+ if (files.publicFiles.deployment) {
91
+ deployment.node.addDependency(files.publicFiles.deployment);
92
+ }
75
93
  }
76
94
  const staticOrigin = new cloudfrontOrigin.S3StaticWebsiteOrigin(staticBucket);
77
95
  const staticBehavior = {
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@fy-stack/app-construct",
3
- "version": "0.0.147-alpha.3045",
3
+ "version": "0.0.147-alpha.3047",
4
4
  "repository": "https://github.com/festusyuma/fy-stack",
5
5
  "dependencies": {
6
- "@fy-stack/types": "0.0.147-alpha.3045",
6
+ "@fy-stack/types": "0.0.147-alpha.3047",
7
7
  "tslib": "^2.3.0",
8
8
  "zod": "^3.24.1"
9
9
  },