ProjectsProject class

Constructors

ProjectsProject({bool? analytics, String? bucket, String? cacheControl, int? createdAt, String? currentDeploymentId, String? description, String? forkedFrom, String? framework, bool? hidden, String? hiddenReason, String? id, String? key, int? lastPurgeAt, String? license, String? liveUrl, String? name, String? org, ProjectsRepo? repo, String? slug, String? space, bool? starred, String? status, Map<String, String> tags = const {}, int? updatedAt, String? upstream, String? visibility})
Returns a new ProjectsProject instance.

Properties

analytics ↔ bool?
Analytics is whether the web-analytics beacon is injected into this site's pages. It is ON by default — a project has to opt out — and it is what the static builder reads to decide whether to inject at all.
getter/setter pair
bucket ↔ String?
Bucket is the object-store bucket the site's files are served out of.
getter/setter pair
cacheControl ↔ String?
CacheControl is the Cache-Control policy the edge serves this site's HTML under — how long a reader may hold a stale page before asking again. Assets are content-addressed and are not governed by it.
getter/setter pair
createdAt ↔ int?
CreatedAt is when the project was created, as Unix seconds.
getter/setter pair
currentDeploymentId ↔ String?
CurrentDeploymentID names the deployment currently serving, so a caller can ask what is live without scanning the history.
getter/setter pair
description ↔ String?
Description is the one-line summary, which is copied onto forks of this project and shown on a gallery card.
getter/setter pair
forkedFrom ↔ String?
ForkedFrom is the parent this project was forked from ("
getter/setter pair
framework ↔ String?
Framework is a BUILD HINT from a closed set, defaulting to static. It tells CI how to build a linked repo and never gates a deploy, so a wrong value costs a build rather than access.
getter/setter pair
hashCode → int
The hash code for this object.
no setteroverride
hidden ↔ bool?
Hidden is PLATFORM MODERATION, and it is a different axis from visibility: it pulls a public project out of the catalogue without editing the publisher's own choice, so un-hiding restores exactly what they asked for. A project is listed only when it is public AND not hidden. Always present, never omitted, for the same reason as visibility.
getter/setter pair
hiddenReason ↔ String?
HiddenReason is why moderation hid it. Absent when it is not hidden.
getter/setter pair
id ↔ String?
ID is the project's internal identifier. It is stable across a rename, but it is not what the API addresses this project by — slug is.
getter/setter pair
key ↔ String?
Key is the project's publishable ingest key, minted at create. It is the value the injected beacon carries and the ONE thing that attributes this site's events; the static-builder reads it beside analytics. Publishable means it belongs in a page's source: it names a write scope and mints no principal, so it is returned in full rather than masked. Masking it would only mean every caller needed a second endpoint to get the thing the page already ships.
getter/setter pair
lastPurgeAt ↔ int?
LastPurgeAt is when the edge cache was last cleared, as Unix seconds, so a console can say how fresh what readers see actually is. Absent means never.
getter/setter pair
license ↔ String?
License is the terms that upstream work carries. Absent has the same reading: undeclared, not unencumbered.
getter/setter pair
liveUrl ↔ String?
LiveURL is where the site answers today. Absent until something has been deployed.
getter/setter pair
name ↔ String?
Name is the project's display name, free text a person chose.
getter/setter pair
org ↔ String?
Org is the organisation that owns the project, and therefore who pays for it and who may change it. It is also the AUTHORSHIP line a gallery credits; there is no separate author field.
getter/setter pair
repo ↔ ProjectsRepo?
Repo is the git source this project builds from, empty when it is deployed by uploading an artifact instead.
getter/setter pair
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
slug ↔ String?
Slug is the identifier that MATTERS: the handle every later call addresses, the S3 key segment the site's objects live under, and the label of the public host <slug>.hanzo.app. Because it is a hostname it is constrained and reserved labels such as api are refused.
getter/setter pair
space ↔ String?
Space is the project's Base data space, which is where a deployed site's form, forum and data submissions land. Absent means the site stores nothing.
getter/setter pair
starred ↔ bool?
Starred is THIS CALLER's star, not a property of the project — two people in the same org see different values for the same row, which is the whole point of it. Always present so a client can tell "not starred" from "this API is too old to say", the same reason visibility and hidden are.
getter/setter pair
status ↔ String?
Status is where the project stands — whether a build has ever succeeded and whether anything is serving right now.
getter/setter pair
tags ↔ Map<String, String>
Tags is the site's browser tag config: platform slug → non-secret pixel id (GA measurement, Meta pixel, …) — what track.js injects and the server CAPI reads, per site. Omitted when none are set. The API SECRET is never here (KMS).
getter/setter pair
updatedAt ↔ int?
UpdatedAt is when the project's own record last changed, as Unix seconds. A deploy is not an edit of the project, so this does not move on every publish.
getter/setter pair
upstream ↔ String?
Upstream credits the third-party work this project was published from — a free-text line, because the honest answer is a name and a title that no enum could hold. Absent means NOBODY HAS SAID, not that there is nothing to say.
getter/setter pair
visibility ↔ String?
Visibility is "public" or "private", and Hidden reports platform moderation. Both are always present (never omitempty) so a consumer can tell a real answer from "this API is too old to say" — and so a console never renders a project as public because a field was missing. Authorship is deliberately absent: it is Org, above.
getter/setter pair

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
toString() → String
A string representation of this object.
override

Operators

operator ==(Object other) → bool
The equality operator.
override

Static Methods

fromJson(dynamic value) → ProjectsProject?
Returns a new ProjectsProject instance and imports its values from value if it's a Map, null otherwise.
listFromJson(dynamic json, {bool growable = false}) → List<ProjectsProject>
mapFromJson(dynamic json) → Map<String, ProjectsProject>
mapListFromJson(dynamic json, {bool growable = false}) → Map<String, List<ProjectsProject>>

Constants

requiredKeys → const Set<String>
The list of required keys that must be present in a JSON.