@absolutejs/absolute 0.20.0-beta.112 → 0.20.0-beta.114

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.
@@ -0,0 +1,92 @@
1
+ import type { NormalizedAbsoluteMobileConfig } from './config';
2
+ export declare const ABSOLUTE_MOBILE_BRANDING_FORMAT: 1;
3
+ export declare const ABSOLUTE_CAPACITOR_ASSETS_VERSION: "3.0.5";
4
+ export declare const ABSOLUTE_CAPACITOR_ASSETS_SPEC: "@capacitor/assets@3.0.5";
5
+ export type AbsoluteMobileBrandingSource = {
6
+ bytes: number;
7
+ height: number;
8
+ kind: 'android-background' | 'android-foreground' | 'android-monochrome' | 'icon' | 'ios-dark' | 'ios-tinted' | 'splash-dark' | 'splash-light';
9
+ path: string;
10
+ sha256: string;
11
+ width: number;
12
+ };
13
+ export type AbsoluteMobileBrandingManifest = {
14
+ engine: 'capacitor' | 'expo';
15
+ fingerprint: string;
16
+ format: typeof ABSOLUTE_MOBILE_BRANDING_FORMAT;
17
+ platforms: ('android' | 'ios')[];
18
+ sources: AbsoluteMobileBrandingSource[];
19
+ };
20
+ export type AbsoluteMobileBrandingInspection = {
21
+ configured: boolean;
22
+ detail: string;
23
+ manifestPath: string;
24
+ ready: boolean;
25
+ status: 'absent' | 'invalid' | 'ready' | 'stale';
26
+ };
27
+ export type AbsoluteMobileBrandingRunner = (command: string[], options: {
28
+ cwd: string;
29
+ }) => Promise<void>;
30
+ export declare const absoluteMobileBrandingManifestPath: (projectRoot: string) => string;
31
+ export declare const createAbsoluteMobileBrandingManifest: (config: NormalizedAbsoluteMobileConfig, projectRoot: string) => Promise<{
32
+ engine: "capacitor" | "expo";
33
+ fingerprint: string;
34
+ format: 1;
35
+ platforms: import("..").MobilePlatform[];
36
+ sources: AbsoluteMobileBrandingSource[];
37
+ }>;
38
+ export declare const absoluteExpoBrandingConfig: (config: NormalizedAbsoluteMobileConfig) => {
39
+ android: {
40
+ adaptiveIcon: {
41
+ monochromeImage?: string | undefined;
42
+ foregroundImage: string;
43
+ backgroundImage?: string | undefined;
44
+ backgroundColor: string;
45
+ };
46
+ icon: string;
47
+ };
48
+ icon: string;
49
+ ios: {
50
+ icon: string | {
51
+ tinted?: string | undefined;
52
+ light: string;
53
+ dark?: string | undefined;
54
+ };
55
+ };
56
+ splashPlugin: (string | {
57
+ backgroundColor: string;
58
+ dark: {
59
+ backgroundColor: string;
60
+ image: string;
61
+ };
62
+ image: string;
63
+ imageWidth: number;
64
+ })[];
65
+ } | undefined;
66
+ export declare const writeAbsoluteExpoBrandingInputs: (config: NormalizedAbsoluteMobileConfig, projectRoot: string) => Promise<{
67
+ manifest: {
68
+ engine: "capacitor" | "expo";
69
+ fingerprint: string;
70
+ format: 1;
71
+ platforms: import("..").MobilePlatform[];
72
+ sources: AbsoluteMobileBrandingSource[];
73
+ };
74
+ path: string;
75
+ } | undefined>;
76
+ export declare const generateAbsoluteCapacitorBranding: (config: NormalizedAbsoluteMobileConfig, projectRoot: string, options?: AbsoluteMobileBrandingGenerationOptions) => Promise<{
77
+ manifest: {
78
+ platforms: ("android" | "ios")[];
79
+ engine: "capacitor" | "expo";
80
+ fingerprint: string;
81
+ format: 1;
82
+ sources: AbsoluteMobileBrandingSource[];
83
+ };
84
+ manifestPath: string;
85
+ platforms: import("..").MobilePlatform[];
86
+ }>;
87
+ export type AbsoluteMobileBrandingGenerationOptions = {
88
+ platforms?: ('android' | 'ios')[];
89
+ runner?: AbsoluteMobileBrandingRunner;
90
+ };
91
+ export declare const inspectAbsoluteMobileBranding: (config: NormalizedAbsoluteMobileConfig, projectRoot: string) => Promise<AbsoluteMobileBrandingInspection>;
92
+ export declare const renderAbsoluteMobileBrandingPreview: (config: NormalizedAbsoluteMobileConfig, projectRoot: string) => Promise<string>;
@@ -0,0 +1,49 @@
1
+ export declare const ABSOLUTE_MOBILE_CI_PROMOTION_OPERATION_FORMAT: 1;
2
+ declare const PHASES: readonly ["dispatching", "dispatched", "discovered", "completed", "audited"];
3
+ export type AbsoluteMobilePromotionOperationPhase = (typeof PHASES)[number];
4
+ export type AbsoluteMobilePromotionOperation = {
5
+ auditDirectory: string | null;
6
+ auditOutputDirectory: string | null;
7
+ auditRequested: boolean;
8
+ certificationId: string;
9
+ certificationSha256: string;
10
+ channel: string | null;
11
+ conclusion: string | null;
12
+ createdAt: string;
13
+ dispatchId: string;
14
+ format: typeof ABSOLUTE_MOBILE_CI_PROMOTION_OPERATION_FORMAT;
15
+ githubStatus: string | null;
16
+ phase: AbsoluteMobilePromotionOperationPhase;
17
+ platform: 'android' | 'ios';
18
+ playTrack: string | null;
19
+ ref: string | null;
20
+ releaseId: string;
21
+ repository: string | null;
22
+ runId: string | null;
23
+ sourceRunId: string;
24
+ testflightGroup: string | null;
25
+ testflightSubmitReview: boolean;
26
+ updatedAt: string;
27
+ url: string | null;
28
+ watchRequested: boolean;
29
+ workflow: string;
30
+ };
31
+ export type CreateAbsoluteMobilePromotionOperationOptions = Omit<AbsoluteMobilePromotionOperation, 'auditDirectory' | 'conclusion' | 'createdAt' | 'format' | 'githubStatus' | 'phase' | 'runId' | 'updatedAt' | 'url'> & {
32
+ now?: () => Date;
33
+ };
34
+ export type AdvanceAbsoluteMobilePromotionOperationOptions = {
35
+ auditDirectory?: string | null;
36
+ conclusion?: string | null;
37
+ githubStatus?: string | null;
38
+ phase: AbsoluteMobilePromotionOperationPhase;
39
+ runId?: string | null;
40
+ url?: string | null;
41
+ };
42
+ export declare const absoluteMobilePromotionOperationPath: (projectRoot: string, requestedDispatchId: string) => string;
43
+ export declare const parseAbsoluteMobilePromotionOperation: (value: unknown) => AbsoluteMobilePromotionOperation;
44
+ export declare const advanceAbsoluteMobilePromotionOperation: (projectRoot: string, requestedDispatchId: string, options: AdvanceAbsoluteMobilePromotionOperationOptions, now?: () => Date) => Promise<AbsoluteMobilePromotionOperation>;
45
+ export declare const createAbsoluteMobilePromotionOperation: (projectRoot: string, options: CreateAbsoluteMobilePromotionOperationOptions) => Promise<AbsoluteMobilePromotionOperation>;
46
+ export declare const listAbsoluteMobilePromotionOperations: (projectRoot: string) => Promise<AbsoluteMobilePromotionOperation[]>;
47
+ export declare const readAbsoluteMobilePromotionOperation: (projectRoot: string, requestedDispatchId: string) => Promise<AbsoluteMobilePromotionOperation>;
48
+ export declare const relativeAbsoluteMobilePromotionOperationPath: (projectRoot: string, dispatchIdValue: string) => string;
49
+ export {};
@@ -2,6 +2,26 @@ import type { MobileConfig, MobilePlatform } from '../../types/build';
2
2
  export type NormalizedAbsoluteMobileConfig = {
3
3
  appId: string;
4
4
  appName: string;
5
+ branding?: {
6
+ android: {
7
+ backgroundImage?: string;
8
+ backgroundColor: string;
9
+ foreground?: string;
10
+ monochrome?: string;
11
+ };
12
+ icon: string;
13
+ ios: {
14
+ darkIcon?: string;
15
+ tintedIcon?: string;
16
+ };
17
+ splash: {
18
+ backgroundColor: string;
19
+ darkBackgroundColor: string;
20
+ darkImage?: string;
21
+ image?: string;
22
+ logoScale: number;
23
+ };
24
+ };
5
25
  androidCertificateFingerprints: string[];
6
26
  appleAppIdPrefix?: string;
7
27
  bundleDirectory: string;
@@ -1,5 +1,6 @@
1
1
  export * from './artifactStore';
2
2
  export * from './adaptiveShell';
3
+ export * from './branding';
3
4
  export * from './androidRelease';
4
5
  export * from './androidReleaseAcceptance';
5
6
  export * from './androidUpgradeConformance';
@@ -32,6 +33,7 @@ export * from './capacitorProject';
32
33
  export * from './config';
33
34
  export * from './client';
34
35
  export * from './ciPromotionAudit';
36
+ export * from './ciPromotionLedger';
35
37
  export * from './ciWorkflow';
36
38
  export * from './compatibilityDispatcher';
37
39
  export * from './materializedBundle';
@@ -71,6 +71,42 @@ type MobileSharedConfig = {
71
71
  appName: string;
72
72
  /** Initial canonical application route. Defaults to `/`. */
73
73
  entry?: string;
74
+ /** One provider-neutral source of truth for native icons and launch artwork. */
75
+ branding?: {
76
+ /** Project-relative 1024x1024 PNG used for iOS and legacy Android icons. */
77
+ icon: string;
78
+ /** Android adaptive-icon layers. Unspecified layers derive from `icon` and a color. */
79
+ android?: {
80
+ /** Opaque 1024x1024 PNG. Defaults to a generated solid color. */
81
+ backgroundImage?: string;
82
+ /** Adaptive-icon background. Defaults to white. */
83
+ backgroundColor?: string;
84
+ /** Transparent 1024x1024 PNG whose artwork stays inside Android's safe zone. */
85
+ foreground?: string;
86
+ /** Transparent monochrome 1024x1024 PNG used for themed icons. */
87
+ monochrome?: string;
88
+ };
89
+ /** Optional iOS 18+ appearance variants. */
90
+ ios?: {
91
+ /** 1024x1024 PNG for dark appearance. */
92
+ darkIcon?: string;
93
+ /** 1024x1024 PNG for tinted appearance. */
94
+ tintedIcon?: string;
95
+ };
96
+ /** Native launch-screen artwork and colors. */
97
+ splash?: {
98
+ /** Light launch background. Defaults to white. */
99
+ backgroundColor?: string;
100
+ /** Dark launch background. Defaults to #111111. */
101
+ darkBackgroundColor?: string;
102
+ /** Optional precomposed square PNG, at least 2732x2732. */
103
+ image?: string;
104
+ /** Optional dark precomposed square PNG, at least 2732x2732. */
105
+ darkImage?: string;
106
+ /** Centered-logo scale when precomposed artwork is omitted. Defaults to 0.2. */
107
+ logoScale?: number;
108
+ };
109
+ };
74
110
  /** Native projects generated and synchronized by AbsoluteJS. */
75
111
  platforms?: readonly MobilePlatform[];
76
112
  server: {
package/package.json CHANGED
@@ -537,7 +537,7 @@
537
537
  ]
538
538
  }
539
539
  },
540
- "version": "0.20.0-beta.112",
540
+ "version": "0.20.0-beta.114",
541
541
  "workspaces": [
542
542
  "tests/fixtures/*",
543
543
  "tests/fixtures/_packages/*"