@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.js';
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;
@@ -360,35 +372,35 @@ interface AccountInfo {
360
372
  siteId?: string | null;
361
373
  }
362
374
  interface CreateProjectRequest {
363
- /** Project to be created. */
375
+ /** Project to create. */
364
376
  project: Project;
365
377
  }
366
378
  interface CreateProjectResponse {
367
- /** The created Project. */
379
+ /** Created project. */
368
380
  project?: Project;
369
381
  }
370
382
  interface GetProjectRequest {
371
383
  /**
372
- * ID of the Project to retrieve.
384
+ * ID of the project to retrieve.
373
385
  * @format GUID
374
386
  */
375
387
  projectId: string;
376
388
  }
377
389
  interface GetProjectResponse {
378
- /** The requested Project. */
390
+ /** Retrieved project. */
379
391
  project?: Project;
380
392
  }
381
393
  interface UpdateProjectRequest {
382
- /** Project to be updated, may be partial. */
394
+ /** Project to update. */
383
395
  project: Project;
384
396
  }
385
397
  interface UpdateProjectResponse {
386
- /** Updated Project. */
398
+ /** Updated project. */
387
399
  project?: Project;
388
400
  }
389
401
  interface DeleteProjectRequest {
390
402
  /**
391
- * Id of the Project to delete.
403
+ * ID of the project to delete.
392
404
  * @format GUID
393
405
  */
394
406
  projectId: string;
@@ -397,60 +409,60 @@ interface DeleteProjectResponse {
397
409
  }
398
410
  interface StartProjectRequest {
399
411
  /**
400
- * ID of the Project to start.
412
+ * ID of the project to start.
401
413
  * @format GUID
402
414
  */
403
415
  projectId?: string;
404
416
  }
405
417
  interface StartProjectResponse {
406
- /** The Project for which start was requested. */
418
+ /** Project whose environment is starting. */
407
419
  project?: Project;
408
420
  }
409
421
  interface ResumeProjectRequest {
410
422
  /**
411
- * ID of the Project to resume.
423
+ * ID of the project to resume.
412
424
  * @format GUID
413
425
  */
414
426
  projectId: string;
415
427
  }
416
428
  interface ResumeProjectResponse {
417
- /** The Project for which resume was requested. */
429
+ /** Resumed project. The project is returned unchanged; its environment starts in the background. */
418
430
  project?: Project;
419
431
  }
420
432
  interface RegenerateProjectNameRequest {
421
433
  /**
422
- * ID of the Project to generate a new name for.
434
+ * ID of the project to generate a name for.
423
435
  * @format GUID
424
436
  */
425
437
  projectId: string;
426
438
  /**
427
- * The user's free-text renaming instruction, passed to the name-generation prompt.
439
+ * User's instruction for the new name. For example, `Make it shorter and more playful`.
428
440
  * @maxLength 4000
429
441
  */
430
442
  prompt: string;
431
443
  }
432
444
  interface RegenerateProjectNameResponse {
433
445
  /**
434
- * The generated display name, at most 30 characters. Not persisted.
446
+ * Suggested project name. Not saved.
435
447
  * @maxLength 30
436
448
  */
437
449
  name?: string;
438
450
  }
439
451
  interface RegenerateProjectIconRequest {
440
452
  /**
441
- * ID of the Project to generate a new icon for.
453
+ * ID of the project to generate an icon for.
442
454
  * @format GUID
443
455
  */
444
456
  projectId: string;
445
457
  /**
446
- * The user's free-text icon instruction, passed to the icon-generation prompt.
458
+ * User's instruction for the new icon. For example, `Use a minimal coffee cup`.
447
459
  * @maxLength 4000
448
460
  */
449
461
  prompt: string;
450
462
  }
451
463
  interface RegenerateProjectIconResponse {
452
464
  /**
453
- * The generated icon URL. Not persisted.
465
+ * URL of the suggested icon. Not saved.
454
466
  * @format WEB_URL
455
467
  */
456
468
  iconUrl?: string;
@@ -475,9 +487,9 @@ interface CursorPaging {
475
487
  cursor?: string | null;
476
488
  }
477
489
  interface ListProjectsForCurrentUserResponse {
478
- /** Projects owned by the current user. */
490
+ /** Projects that the current user owns. */
479
491
  projects?: Project[];
480
- /** Paging metadata for cursor-based pagination. */
492
+ /** Paging metadata. */
481
493
  pagingMetadata?: CursorPagingMetadata;
482
494
  }
483
495
  interface CursorPagingMetadata {
@@ -507,101 +519,94 @@ interface Cursors {
507
519
  }
508
520
  interface SaveProjectDesignRequest {
509
521
  /**
510
- * Project whose design is being saved. The caller must own it.
522
+ * ID of the project whose design to save.
511
523
  * @format GUID
512
524
  */
513
525
  projectId: string;
514
526
  /**
515
- * The Himalaya release ID currently displayed by the client. The saved draft branches from
516
- * exactly this release, even when a newer release exists for the app.
527
+ * ID of the release that the user is currently viewing.
528
+ *
529
+ * The new draft release branches from this release, even if a newer release exists.
517
530
  * @maxLength 100
518
531
  */
519
532
  baseReleaseId: string;
520
533
  /**
521
- * The complete edited design-token document, as a JSON object string — not a flattened set of
522
- * preview overrides. The caller is responsible for preserving unknown groups and light/dark
523
- * values it did not change.
534
+ * Complete design-token document, as a string that contains a single JSON object.
535
+ *
536
+ * Specify the whole document, not only the values that changed. Keep any token groups and light or
537
+ * dark mode values that you didn't change.
524
538
  * @maxLength 65536
525
539
  */
526
540
  tokensJson: string;
527
541
  /**
528
- * Short-lived, app-scoped Himalaya control credential the client obtained from Himalaya's owner
529
- * embed-token endpoint. Forwarded to Himalaya for this call only — never logged, persisted, or
530
- * echoed back in any response, error, or event.
542
+ * Short-lived control credential for the project's app releases.
531
543
  *
532
- * The app this call writes to is NOT taken from this request. It is composed from the owner
533
- * prefix this credential carries plus project_id; see HimalayaAppSlug.
544
+ * Used for this call only. It isn't stored or returned.
534
545
  * @maxLength 4096
535
546
  */
536
547
  himalayaControlToken: string;
537
548
  /**
538
- * Client assertion of the canonical app returned by authenticated Himalaya lookup. Catalyst
539
- * resolves and validates the same value; it is never used as an unchecked write target.
549
+ * Canonical slug of the project's app, exactly as returned in `canonicalApp` by
550
+ * [Get Himalaya Authorization](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-projects/project-v1/get-himalaya-authorization).
551
+ * This isn't the app's ID.
552
+ *
553
+ * Required when the project's `platform` is `HIMALAYA_MOBILE`. The value is verified on the server.
540
554
  * @maxLength 200
541
555
  */
542
556
  canonicalApp?: string;
543
557
  /**
544
- * Conversation this design is saved from. When set, a CHECKPOINT message marking the saved
545
- * version is posted into it (best-effort). Optional — an older client that omits it still saves
546
- * the design; it just produces no checkpoint. Verified to belong to this project server-side.
558
+ * ID of the [conversation](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-chat/introduction) that the design is saved from.
547
559
  *
548
- * Deliberately NOT (.wix.api.format) = GUID: posting the checkpoint is best-effort and must never
549
- * fail the save. A malformed/unexpected id is handled downstream (the ownership lookup rejects it
550
- * and the checkpoint is skipped) rather than hard-failing SaveProjectDesign at the request boundary.
560
+ * When specified, a `CHECKPOINT` message that marks the saved version is added to the conversation.
561
+ * The conversation must belong to the project.
551
562
  * @maxLength 100
552
563
  */
553
564
  conversationId?: string;
554
565
  }
555
566
  interface SaveProjectDesignResponse {
556
567
  /**
557
- * The saved draft release. Always a draft, so the app's live release is untouched.
568
+ * ID of the saved draft release.
558
569
  * @maxLength 100
559
570
  */
560
571
  himalayaReleaseId?: string;
561
572
  /**
562
- * Short-lived credential for previewing the saved draft release. Response-only: never persisted
563
- * or placed in a preview URL by this service.
573
+ * Short-lived token for previewing the saved draft release.
564
574
  * @maxLength 4096
565
575
  */
566
576
  previewToken?: string;
567
- /** When preview_token expires. */
577
+ /** Date and time the preview token expires. */
568
578
  previewTokenExpiresAt?: Date | null;
569
579
  }
570
580
  interface RestoreReleaseRequest {
571
581
  /**
572
- * Project whose head is being moved. The caller must own it.
582
+ * ID of the project to restore a release for.
573
583
  * @format GUID
574
584
  */
575
585
  projectId: string;
576
586
  /**
577
- * The Himalaya release to make the project's editable head. Not a GUID — a Himalaya release id
578
- * (e.g. `rel-<hash>` / `<sha>-<hash>`), taken from the project's own release ledger.
587
+ * ID of the release to restore. For example, `rel-4f9c2a1b7d3e`.
579
588
  * @maxLength 200
580
589
  */
581
590
  releaseId: string;
582
591
  /**
583
- * Short-lived, app-scoped Himalaya control credential (the same the client obtains from Himalaya's
584
- * owner embed-token endpoint and sends on SaveProjectDesign). When present, the server verifies
585
- * release_id belongs to this project's Himalaya app before moving head. Optional for back-compat:
586
- * an older client that omits it skips that check (the release still comes from the project's own
587
- * ledger). Forwarded to Himalaya for the ledger read only — never logged, persisted, or echoed.
592
+ * Short-lived control credential for the project's app releases.
593
+ *
594
+ * When specified, the release is checked to belong to the project before it's restored. Used for
595
+ * this call only. It isn't stored or returned.
588
596
  * @maxLength 4096
589
597
  */
590
598
  himalayaControlToken?: string;
591
599
  /**
592
- * Conversation this restore is made from. When set, a CHECKPOINT message marking the restored
593
- * version is posted into it (best-effort). Optional — a client that omits it still restores; it
594
- * just produces no checkpoint. Verified to belong to this project server-side.
600
+ * ID of the [conversation](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-chat/introduction) that the release is restored from.
595
601
  *
596
- * Deliberately NOT (.wix.api.format) = GUID: posting the checkpoint is best-effort and must never
597
- * fail the restore. A malformed id is handled downstream (the ownership lookup rejects it and the
598
- * checkpoint is skipped) rather than hard-failing RestoreRelease at the request boundary.
602
+ * When specified, a `CHECKPOINT` message that marks the restored version is added to the
603
+ * conversation. The conversation must belong to the project.
599
604
  * @maxLength 100
600
605
  */
601
606
  conversationId?: string;
602
607
  }
603
608
  interface RestoreReleaseResponse {
604
- /** The project after the restore, with head_release_id set to the restored release. */
609
+ /** Updated project. `headReleaseId` is set to the restored release. */
605
610
  project?: Project;
606
611
  }
607
612
  interface ListProjectsRequest {
@@ -609,39 +614,42 @@ interface ListProjectsRequest {
609
614
  paging?: CursorPaging;
610
615
  }
611
616
  interface ListProjectsResponse {
612
- /** Projects in the current site. */
617
+ /** Projects of the current site. */
613
618
  projects?: Project[];
614
- /** Paging metadata for cursor-based pagination. */
619
+ /** Paging metadata. */
615
620
  pagingMetadata?: CursorPagingMetadata;
616
621
  }
617
622
  interface GetHimalayaAuthorizationRequest {
618
623
  /**
619
- * Site-tenanted Containers project being authorized.
624
+ * ID of the project to check.
620
625
  * @format GUID
621
626
  */
622
627
  projectId: string;
623
628
  }
624
629
  interface GetHimalayaAuthorizationResponse {
625
- /** Version of the authorization capability contract. */
630
+ /** Version of the response format. Currently always `1`. */
626
631
  authorizationVersion?: number;
627
632
  /**
628
- * Trusted MetaSite selected from request identity context.
633
+ * ID of the Wix site that the check was made for.
629
634
  * @format GUID
630
635
  */
631
636
  metaSiteId?: string;
632
637
  /**
633
- * Site-tenanted Containers project authorized by the lookup.
638
+ * Project ID.
634
639
  * @format GUID
635
640
  */
636
641
  projectId?: string;
637
642
  /**
638
- * Verified canonical Himalaya app slug.
643
+ * Canonical slug of the project's app.
644
+ *
645
+ * Specify this value in `canonicalApp` when you call
646
+ * [Save Project Design](https://dev.wix.com/docs/api-reference/mobile/containers-app/containers-projects/project-v1/save-project-design).
639
647
  * @maxLength 200
640
648
  */
641
649
  canonicalApp?: string;
642
- /** Whether a fresh worker launch is currently authorized. */
650
+ /** Whether the current user can start new work by the coding agent on the project. */
643
651
  workerLaunch?: boolean;
644
- /** Whether a fresh design save is currently authorized. */
652
+ /** Whether the current user can save the project's design. */
645
653
  saveDesign?: boolean;
646
654
  }
647
655
 
package/build/cjs/meta.js CHANGED
@@ -62,6 +62,12 @@ function resolveWixContainersProjectsV1ContainersProjectsUrl(opts) {
62
62
  srcPath: "/_api/containers-projects",
63
63
  destPath: ""
64
64
  }
65
+ ],
66
+ "www.wixapis.com": [
67
+ {
68
+ srcPath: "/containers/projects",
69
+ destPath: ""
70
+ }
65
71
  ]
66
72
  };
67
73
  return (0, import_rest_modules2.resolveUrl)(Object.assign(opts, { domainToMappings }));