@wix/auto_sdk_containers_projects 1.0.5 → 1.0.7

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.
@@ -1,6 +1,11 @@
1
1
  import { CreateProjectRequest as CreateProjectRequest$1, CreateProjectResponse as CreateProjectResponse$1, GetProjectRequest as GetProjectRequest$1, GetProjectResponse as GetProjectResponse$1, UpdateProjectRequest as UpdateProjectRequest$1, UpdateProjectResponse as UpdateProjectResponse$1, DeleteProjectRequest as DeleteProjectRequest$1, DeleteProjectResponse as DeleteProjectResponse$1, ResumeProjectRequest as ResumeProjectRequest$1, ResumeProjectResponse as ResumeProjectResponse$1, RegenerateProjectNameRequest as RegenerateProjectNameRequest$1, RegenerateProjectNameResponse as RegenerateProjectNameResponse$1, RegenerateProjectIconRequest as RegenerateProjectIconRequest$1, RegenerateProjectIconResponse as RegenerateProjectIconResponse$1, SaveProjectDesignRequest as SaveProjectDesignRequest$1, SaveProjectDesignResponse as SaveProjectDesignResponse$1, RestoreReleaseRequest as RestoreReleaseRequest$1, RestoreReleaseResponse as RestoreReleaseResponse$1, ListProjectsRequest as ListProjectsRequest$1, ListProjectsResponse as ListProjectsResponse$1, GetHimalayaAuthorizationRequest as GetHimalayaAuthorizationRequest$1, GetHimalayaAuthorizationResponse as GetHimalayaAuthorizationResponse$1 } from './index.typings.mjs';
2
2
  import '@wix/sdk-types';
3
3
 
4
+ /**
5
+ * A project represents an app that a user builds with the Wix AI coding agent.
6
+ * A project belongs to the Wix site it's created on. The user's chat with the coding agent about a
7
+ * project is held in [conversations](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-chat/introduction).
8
+ */
4
9
  interface Project {
5
10
  /**
6
11
  * Project ID.
@@ -9,137 +14,144 @@ interface Project {
9
14
  */
10
15
  id?: string | null;
11
16
  /**
12
- * Display name for the project.
17
+ * Project name, shown to the user.
13
18
  * @maxLength 200
14
19
  */
15
20
  name?: string;
16
- /** Current status of the project. */
21
+ /** Project status. */
17
22
  status?: ProjectStatusWithLiterals;
18
23
  /**
19
- * ID of the template used to create this project.
24
+ * ID of the template that the project was created from.
20
25
  * @format GUID
21
26
  * @immutable
22
27
  */
23
28
  templateId?: string | null;
24
29
  /**
25
- * ID of the git-code-store project (and backing dev-center app) for this project. Set on creation.
30
+ * ID of the project's source code project. Set automatically when the project is created.
26
31
  * @format GUID
27
32
  * @readonly
28
33
  */
29
34
  codeStoreProjectId?: string | null;
30
35
  /**
31
- * The user id of the owner of this project
36
+ * ID of the user who created the project.
32
37
  * @format GUID
33
38
  * @readonly
34
39
  */
35
40
  ownerUserId?: string | null;
36
41
  /**
37
- * Revision number, which increments by 1 each time the Project is updated.
42
+ * Revision number, which increments by 1 each time the project is updated.
43
+ * To prevent conflicting changes,
44
+ * the current revision must be passed when updating the project.
45
+ *
46
+ * Ignored when creating a project.
38
47
  * @readonly
39
48
  */
40
49
  revision?: string | null;
41
50
  /**
42
- * Date and time the Project was created.
51
+ * Date and time the project was created.
43
52
  * @readonly
44
53
  */
45
54
  createdDate?: Date | null;
46
55
  /**
47
- * Date and time the Project was last updated.
56
+ * Date and time the project was last updated.
48
57
  * @readonly
49
58
  */
50
59
  updatedDate?: Date | null;
51
60
  /**
52
- * Transient lock marking that a sandbox is currently being created for this project.
53
- * Used to serialize concurrent dev-machine creation; liveness of the sandbox itself is resolved via ListSandboxes.
61
+ * Whether a remote development environment is being created for the project.
54
62
  * @readonly
55
63
  */
56
64
  sandboxStatus?: SandboxStatusWithLiterals;
57
65
  /**
58
- * Meta site IDs (MSIDs) of the Wix sites this project is related to.
59
- * Optional — a project is not required to be tied to a site; may relate to many sites.
60
- * Preserve the deployed input contract; see containers-projects/SDK_COMPATIBILITY.md.
66
+ * IDs of the Wix sites that the project relates to.
67
+ *
68
+ * A project can relate to any number of sites, including none.
61
69
  * @format GUID
62
70
  */
63
71
  metaSiteIds?: string[];
64
72
  /**
65
- * Platform this project targets (iOS/Android). Supplied by the client at creation; immutable after.
73
+ * Platform that the project's app targets. Set when the project is created and can't be changed.
66
74
  * @immutable
67
75
  */
68
76
  platform?: PlatformWithLiterals;
69
77
  /**
70
- * Optional app icon URL supplied by the client from Wix Media Manager.
78
+ * URL of the app's icon.
71
79
  * @maxLength 2000
72
80
  */
73
81
  appIconUrl?: string | null;
74
82
  /**
75
- * The Himalaya release the editor is currently on — the "head" the client previews and the next
76
- * edit (design save or AI edit) branches from. Server-managed: set to the new draft after each
77
- * edit, and to the chosen release by RestoreRelease. Unset means "newest release by date" (the
78
- * pre-head default), so existing projects keep working until their first edit/restore sets it.
79
- * Not a GUID — a Himalaya release id (e.g. `rel-<hash>` / `<sha>-<hash>`).
83
+ * ID of the release that the project is currently on.
84
+ *
85
+ * Your app previews this release, and the next design save or edit by the coding agent branches
86
+ * from it. Set automatically after each design save or edit, and by
87
+ * [Restore Release](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-projects/project-v1/restore-release).
88
+ * When empty, the project is on its newest release.
80
89
  * @maxLength 200
81
90
  * @readonly
82
91
  */
83
92
  headReleaseId?: string | null;
84
93
  }
94
+ /**
95
+ * Project status. The status changes in one direction only: `PLANNING`, then `PLAN_READY`, then
96
+ * `BUILDING`.
97
+ */
85
98
  declare enum ProjectStatus {
86
- /** Project created; client (via containers-plans) is doing most of the work. */
99
+ /** The user and the coding agent are planning the app. New projects start with this status. */
87
100
  PLANNING = "PLANNING",
88
- /** Generation job created; project moves onward to machine startup. */
101
+ /** The coding agent is building the app, or has built it. The user can continue to request changes. */
89
102
  BUILDING = "BUILDING",
90
- /** Plan finalized; project is about to create the initial generation job. */
103
+ /** The plan is finalized, and the first build of the app is about to start. */
91
104
  PLAN_READY = "PLAN_READY"
92
105
  }
93
106
  /** @enumType */
94
107
  type ProjectStatusWithLiterals = ProjectStatus | 'PLANNING' | 'BUILDING' | 'PLAN_READY';
95
108
  declare enum SandboxStatus {
96
- /** No sandbox creation in progress. */
109
+ /** No remote development environment is being created. */
97
110
  NONE = "NONE",
98
- /** A caller is currently creating a sandbox for this project (creation lock held). */
111
+ /** A remote development environment is being created. */
99
112
  CREATING = "CREATING"
100
113
  }
101
114
  /** @enumType */
102
115
  type SandboxStatusWithLiterals = SandboxStatus | 'NONE' | 'CREATING';
103
116
  declare enum Platform {
117
+ /** Native iOS app. Used by older projects. */
104
118
  IOS = "IOS",
119
+ /** Native Android app. Used by older projects. */
105
120
  ANDROID = "ANDROID",
106
121
  /**
107
- * Himalaya Mobile (Wix SDUI/OTA content package): mobile apps built headlessly on the
108
- * on-demand remote machine via the himi CLI, instead of native iOS/Android pods.
122
+ * Mobile app built from content that's updated over the air, instead of native iOS or Android
123
+ * code. Most new projects use this platform.
109
124
  */
110
125
  HIMALAYA_MOBILE = "HIMALAYA_MOBILE"
111
126
  }
112
127
  /** @enumType */
113
128
  type PlatformWithLiterals = Platform | 'IOS' | 'ANDROID' | 'HIMALAYA_MOBILE';
129
+ /** Details of a request to start a project's remote development environment. */
114
130
  interface ProjectStartRequested {
115
131
  /**
116
- * ID of the Project to start.
132
+ * ID of the project to start.
117
133
  * @format GUID
118
134
  */
119
135
  projectId?: string;
120
136
  }
137
+ /** Details of a request to resume a project. */
121
138
  interface ProjectResumeRequested {
122
139
  /**
123
- * ID of the Project to resume.
140
+ * ID of the project to resume.
124
141
  * @format GUID
125
142
  */
126
143
  projectId?: string;
127
144
  }
128
- /**
129
- * Emitted when the project transitions PLANNING -> PLAN_READY (on plan finalization). The project
130
- * self-consumes this event to start the app generation: mint the agent session, attach it to the
131
- * finalized conversation, create the initial generation job, and move to BUILDING. The finalized
132
- * plan is read back from containers-plans by project id when the job is built.
133
- */
145
+ /** Details of a project whose plan is finalized. */
134
146
  interface ProjectPlanReady {
135
147
  /**
136
- * ID of the Project whose plan is ready.
148
+ * ID of the project whose plan is finalized.
137
149
  * @format GUID
138
150
  */
139
151
  projectId?: string;
140
152
  /**
141
- * ID of the conversation that led to this plan being finalized. The minted agent session id is
142
- * attached to this conversation so the build can --resume it. Propagated from PlanFinalized.
153
+ * ID of the conversation in which the plan was finalized. The coding agent continues the build in
154
+ * this conversation.
143
155
  * @format GUID
144
156
  */
145
157
  conversationId?: string;
@@ -402,40 +414,40 @@ interface AccountInfo {
402
414
  siteId?: string | null;
403
415
  }
404
416
  interface CreateProjectRequest {
405
- /** Project to be created. */
417
+ /** Project to create. */
406
418
  project: Project;
407
419
  }
408
420
  interface CreateProjectResponse {
409
- /** The created Project. */
421
+ /** Created project. */
410
422
  project?: Project;
411
423
  }
412
424
  interface GetProjectRequest {
413
425
  /**
414
- * ID of the Project to retrieve.
426
+ * ID of the project to retrieve.
415
427
  * @format GUID
416
428
  */
417
429
  projectId: string;
418
430
  }
419
431
  interface GetProjectResponse {
420
- /** The requested Project. */
432
+ /** Retrieved project. */
421
433
  project?: Project;
422
434
  }
423
435
  interface UpdateProjectRequest {
424
- /** Project to be updated, may be partial. */
436
+ /** Project to update. */
425
437
  project: Project;
426
438
  /**
427
- * Set of fields to update.
439
+ * Set of fields to update. Fields not in the mask are ignored.
428
440
  * @internal
429
441
  */
430
442
  fieldMask?: string[];
431
443
  }
432
444
  interface UpdateProjectResponse {
433
- /** Updated Project. */
445
+ /** Updated project. */
434
446
  project?: Project;
435
447
  }
436
448
  interface DeleteProjectRequest {
437
449
  /**
438
- * Id of the Project to delete.
450
+ * ID of the project to delete.
439
451
  * @format GUID
440
452
  */
441
453
  projectId: string;
@@ -444,60 +456,60 @@ interface DeleteProjectResponse {
444
456
  }
445
457
  interface StartProjectRequest {
446
458
  /**
447
- * ID of the Project to start.
459
+ * ID of the project to start.
448
460
  * @format GUID
449
461
  */
450
462
  projectId?: string;
451
463
  }
452
464
  interface StartProjectResponse {
453
- /** The Project for which start was requested. */
465
+ /** Project whose environment is starting. */
454
466
  project?: Project;
455
467
  }
456
468
  interface ResumeProjectRequest {
457
469
  /**
458
- * ID of the Project to resume.
470
+ * ID of the project to resume.
459
471
  * @format GUID
460
472
  */
461
473
  projectId: string;
462
474
  }
463
475
  interface ResumeProjectResponse {
464
- /** The Project for which resume was requested. */
476
+ /** Resumed project. The project is returned unchanged; its environment starts in the background. */
465
477
  project?: Project;
466
478
  }
467
479
  interface RegenerateProjectNameRequest {
468
480
  /**
469
- * ID of the Project to generate a new name for.
481
+ * ID of the project to generate a name for.
470
482
  * @format GUID
471
483
  */
472
484
  projectId: string;
473
485
  /**
474
- * The user's free-text renaming instruction, passed to the name-generation prompt.
486
+ * User's instruction for the new name. For example, `Make it shorter and more playful`.
475
487
  * @maxLength 4000
476
488
  */
477
489
  prompt: string;
478
490
  }
479
491
  interface RegenerateProjectNameResponse {
480
492
  /**
481
- * The generated display name, at most 30 characters. Not persisted.
493
+ * Suggested project name. Not saved.
482
494
  * @maxLength 30
483
495
  */
484
496
  name?: string;
485
497
  }
486
498
  interface RegenerateProjectIconRequest {
487
499
  /**
488
- * ID of the Project to generate a new icon for.
500
+ * ID of the project to generate an icon for.
489
501
  * @format GUID
490
502
  */
491
503
  projectId: string;
492
504
  /**
493
- * The user's free-text icon instruction, passed to the icon-generation prompt.
505
+ * User's instruction for the new icon. For example, `Use a minimal coffee cup`.
494
506
  * @maxLength 4000
495
507
  */
496
508
  prompt: string;
497
509
  }
498
510
  interface RegenerateProjectIconResponse {
499
511
  /**
500
- * The generated icon URL. Not persisted.
512
+ * URL of the suggested icon. Not saved.
501
513
  * @format WEB_URL
502
514
  */
503
515
  iconUrl?: string;
@@ -522,9 +534,9 @@ interface CursorPaging {
522
534
  cursor?: string | null;
523
535
  }
524
536
  interface ListProjectsForCurrentUserResponse {
525
- /** Projects owned by the current user. */
537
+ /** Projects that the current user owns. */
526
538
  projects?: Project[];
527
- /** Paging metadata for cursor-based pagination. */
539
+ /** Paging metadata. */
528
540
  pagingMetadata?: CursorPagingMetadata;
529
541
  }
530
542
  interface CursorPagingMetadata {
@@ -554,101 +566,94 @@ interface Cursors {
554
566
  }
555
567
  interface SaveProjectDesignRequest {
556
568
  /**
557
- * Project whose design is being saved. The caller must own it.
569
+ * ID of the project whose design to save.
558
570
  * @format GUID
559
571
  */
560
572
  projectId: string;
561
573
  /**
562
- * The Himalaya release ID currently displayed by the client. The saved draft branches from
563
- * exactly this release, even when a newer release exists for the app.
574
+ * ID of the release that the user is currently viewing.
575
+ *
576
+ * The new draft release branches from this release, even if a newer release exists.
564
577
  * @maxLength 100
565
578
  */
566
579
  baseReleaseId: string;
567
580
  /**
568
- * The complete edited design-token document, as a JSON object string — not a flattened set of
569
- * preview overrides. The caller is responsible for preserving unknown groups and light/dark
570
- * values it did not change.
581
+ * Complete design-token document, as a string that contains a single JSON object.
582
+ *
583
+ * Specify the whole document, not only the values that changed. Keep any token groups and light or
584
+ * dark mode values that you didn't change.
571
585
  * @maxLength 65536
572
586
  */
573
587
  tokensJson: string;
574
588
  /**
575
- * Short-lived, app-scoped Himalaya control credential the client obtained from Himalaya's owner
576
- * embed-token endpoint. Forwarded to Himalaya for this call only — never logged, persisted, or
577
- * echoed back in any response, error, or event.
589
+ * Short-lived control credential for the project's app releases.
578
590
  *
579
- * The app this call writes to is NOT taken from this request. It is composed from the owner
580
- * prefix this credential carries plus project_id; see HimalayaAppSlug.
591
+ * Used for this call only. It isn't stored or returned.
581
592
  * @maxLength 4096
582
593
  */
583
594
  himalayaControlToken: string;
584
595
  /**
585
- * Client assertion of the canonical app returned by authenticated Himalaya lookup. Catalyst
586
- * resolves and validates the same value; it is never used as an unchecked write target.
596
+ * Canonical slug of the project's app, exactly as returned in `canonicalApp` by
597
+ * [Get Himalaya Authorization](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-projects/project-v1/get-himalaya-authorization).
598
+ * This isn't the app's ID.
599
+ *
600
+ * Required when the project's `platform` is `HIMALAYA_MOBILE`. The value is verified on the server.
587
601
  * @maxLength 200
588
602
  */
589
603
  canonicalApp?: string;
590
604
  /**
591
- * Conversation this design is saved from. When set, a CHECKPOINT message marking the saved
592
- * version is posted into it (best-effort). Optional — an older client that omits it still saves
593
- * the design; it just produces no checkpoint. Verified to belong to this project server-side.
605
+ * ID of the [conversation](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-chat/introduction) that the design is saved from.
594
606
  *
595
- * Deliberately NOT (.wix.api.format) = GUID: posting the checkpoint is best-effort and must never
596
- * fail the save. A malformed/unexpected id is handled downstream (the ownership lookup rejects it
597
- * and the checkpoint is skipped) rather than hard-failing SaveProjectDesign at the request boundary.
607
+ * When specified, a `CHECKPOINT` message that marks the saved version is added to the conversation.
608
+ * The conversation must belong to the project.
598
609
  * @maxLength 100
599
610
  */
600
611
  conversationId?: string;
601
612
  }
602
613
  interface SaveProjectDesignResponse {
603
614
  /**
604
- * The saved draft release. Always a draft, so the app's live release is untouched.
615
+ * ID of the saved draft release.
605
616
  * @maxLength 100
606
617
  */
607
618
  himalayaReleaseId?: string;
608
619
  /**
609
- * Short-lived credential for previewing the saved draft release. Response-only: never persisted
610
- * or placed in a preview URL by this service.
620
+ * Short-lived token for previewing the saved draft release.
611
621
  * @maxLength 4096
612
622
  */
613
623
  previewToken?: string;
614
- /** When preview_token expires. */
624
+ /** Date and time the preview token expires. */
615
625
  previewTokenExpiresAt?: Date | null;
616
626
  }
617
627
  interface RestoreReleaseRequest {
618
628
  /**
619
- * Project whose head is being moved. The caller must own it.
629
+ * ID of the project to restore a release for.
620
630
  * @format GUID
621
631
  */
622
632
  projectId: string;
623
633
  /**
624
- * The Himalaya release to make the project's editable head. Not a GUID — a Himalaya release id
625
- * (e.g. `rel-<hash>` / `<sha>-<hash>`), taken from the project's own release ledger.
634
+ * ID of the release to restore. For example, `rel-4f9c2a1b7d3e`.
626
635
  * @maxLength 200
627
636
  */
628
637
  releaseId: string;
629
638
  /**
630
- * Short-lived, app-scoped Himalaya control credential (the same the client obtains from Himalaya's
631
- * owner embed-token endpoint and sends on SaveProjectDesign). When present, the server verifies
632
- * release_id belongs to this project's Himalaya app before moving head. Optional for back-compat:
633
- * an older client that omits it skips that check (the release still comes from the project's own
634
- * ledger). Forwarded to Himalaya for the ledger read only — never logged, persisted, or echoed.
639
+ * Short-lived control credential for the project's app releases.
640
+ *
641
+ * When specified, the release is checked to belong to the project before it's restored. Used for
642
+ * this call only. It isn't stored or returned.
635
643
  * @maxLength 4096
636
644
  */
637
645
  himalayaControlToken?: string;
638
646
  /**
639
- * Conversation this restore is made from. When set, a CHECKPOINT message marking the restored
640
- * version is posted into it (best-effort). Optional — a client that omits it still restores; it
641
- * just produces no checkpoint. Verified to belong to this project server-side.
647
+ * ID of the [conversation](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-chat/introduction) that the release is restored from.
642
648
  *
643
- * Deliberately NOT (.wix.api.format) = GUID: posting the checkpoint is best-effort and must never
644
- * fail the restore. A malformed id is handled downstream (the ownership lookup rejects it and the
645
- * checkpoint is skipped) rather than hard-failing RestoreRelease at the request boundary.
649
+ * When specified, a `CHECKPOINT` message that marks the restored version is added to the
650
+ * conversation. The conversation must belong to the project.
646
651
  * @maxLength 100
647
652
  */
648
653
  conversationId?: string;
649
654
  }
650
655
  interface RestoreReleaseResponse {
651
- /** The project after the restore, with head_release_id set to the restored release. */
656
+ /** Updated project. `headReleaseId` is set to the restored release. */
652
657
  project?: Project;
653
658
  }
654
659
  interface ListProjectsRequest {
@@ -656,39 +661,42 @@ interface ListProjectsRequest {
656
661
  paging?: CursorPaging;
657
662
  }
658
663
  interface ListProjectsResponse {
659
- /** Projects in the current site. */
664
+ /** Projects of the current site. */
660
665
  projects?: Project[];
661
- /** Paging metadata for cursor-based pagination. */
666
+ /** Paging metadata. */
662
667
  pagingMetadata?: CursorPagingMetadata;
663
668
  }
664
669
  interface GetHimalayaAuthorizationRequest {
665
670
  /**
666
- * Site-tenanted Containers project being authorized.
671
+ * ID of the project to check.
667
672
  * @format GUID
668
673
  */
669
674
  projectId: string;
670
675
  }
671
676
  interface GetHimalayaAuthorizationResponse {
672
- /** Version of the authorization capability contract. */
677
+ /** Version of the response format. Currently always `1`. */
673
678
  authorizationVersion?: number;
674
679
  /**
675
- * Trusted MetaSite selected from request identity context.
680
+ * ID of the Wix site that the check was made for.
676
681
  * @format GUID
677
682
  */
678
683
  metaSiteId?: string;
679
684
  /**
680
- * Site-tenanted Containers project authorized by the lookup.
685
+ * Project ID.
681
686
  * @format GUID
682
687
  */
683
688
  projectId?: string;
684
689
  /**
685
- * Verified canonical Himalaya app slug.
690
+ * Canonical slug of the project's app.
691
+ *
692
+ * Specify this value in `canonicalApp` when you call
693
+ * [Save Project Design](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-projects/project-v1/save-project-design).
686
694
  * @maxLength 200
687
695
  */
688
696
  canonicalApp?: string;
689
- /** Whether a fresh worker launch is currently authorized. */
697
+ /** Whether the current user can start new work by the coding agent on the project. */
690
698
  workerLaunch?: boolean;
691
- /** Whether a fresh design save is currently authorized. */
699
+ /** Whether the current user can save the project's design. */
692
700
  saveDesign?: boolean;
693
701
  }
694
702
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/auto_sdk_containers_projects",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "license": "MIT",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/",
@@ -50,5 +50,5 @@
50
50
  "fqdn": "wix.containers.projects.v1.project"
51
51
  }
52
52
  },
53
- "falconPackageHash": "3f690302f73e2847b01827df32e3b62e23ea171fe344bc9abce76e5f"
53
+ "falconPackageHash": "af1128b50720eef41cea9bd19fd8540bdfe638730b7e8d1b0c044005"
54
54
  }