diff --git a/functions/definition/announcement.yaml b/functions/definition/announcement.yaml index 0c5195f..e3087c4 100644 --- a/functions/definition/announcement.yaml +++ b/functions/definition/announcement.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbAnnouncement: model: alias # path: v2/announcement diff --git a/functions/definition/models.yaml b/functions/definition/models.yaml index c134cc8..3a33a0d 100644 --- a/functions/definition/models.yaml +++ b/functions/definition/models.yaml @@ -1,4 +1,4 @@ -# yaml-language-server: $schema=https://schema.typesync.org/v0.13.json +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json # ENUM @@ -150,8 +150,8 @@ FbObjRasterTileServer: apiKey: optional: true type: string - # NOTE: @deprecated wmtsLayerName: + deprecated: true optional: true type: string credits: @@ -271,9 +271,9 @@ FbProjectUpdateInput: type: string projectTopic: type: string - # TODO: We can remove this @deprecated projectTopicKey: type: string + deprecated: true # NOTE: Name of the organisation requestingOrganisation: type: string diff --git a/functions/definition/organisation.yaml b/functions/definition/organisation.yaml index dcb3194..cae52a4 100644 --- a/functions/definition/organisation.yaml +++ b/functions/definition/organisation.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbOrganisation: model: alias # path: organisations/{organisation_id} @@ -10,8 +12,9 @@ FbOrganisation: description: optional: true type: string - nameKey: # NOTE: this is deprecated + nameKey: type: string + deprecated: true abbreviation: optional: true type: string diff --git a/functions/definition/team.yaml b/functions/definition/team.yaml index 71e524f..a466ffd 100644 --- a/functions/definition/team.yaml +++ b/functions/definition/team.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbTeam: model: alias # path: teams/{teamId} diff --git a/functions/definition/tutorial/common.yaml b/functions/definition/tutorial/common.yaml index bfa1f2a..eda0b68 100644 --- a/functions/definition/tutorial/common.yaml +++ b/functions/definition/tutorial/common.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbEnumInformationPageBlockType: model: alias type: @@ -68,13 +70,14 @@ FbBaseTutorial: type: type: object fields: - # deprecated exampleImage1: type: string optional: true + deprecated: true exampleImage2: type: string optional: true + deprecated: true contributorCount: # NOTE: intially zero type: int informationPages: @@ -91,14 +94,16 @@ FbBaseTutorial: type: string projectId: type: string - projectTopicKey: # NOTE: deprecated + projectTopicKey: type: string + deprecated: true status: type: type: literal value: tutorial - tutorialDraftId: # NOTE: deprecated + tutorialDraftId: type: string + deprecated: true FbBaseTutorialGroup: model: alias diff --git a/functions/definition/tutorial/compare.yaml b/functions/definition/tutorial/compare.yaml index 7c51a6d..23e3312 100644 --- a/functions/definition/tutorial/compare.yaml +++ b/functions/definition/tutorial/compare.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbCompareTutorial: model: alias type: diff --git a/functions/definition/tutorial/completeness.yaml b/functions/definition/tutorial/completeness.yaml index e3010de..8d35f3c 100644 --- a/functions/definition/tutorial/completeness.yaml +++ b/functions/definition/tutorial/completeness.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbCompletenessTutorial: model: alias type: diff --git a/functions/definition/tutorial/find.yaml b/functions/definition/tutorial/find.yaml index 521b5d1..12e0400 100644 --- a/functions/definition/tutorial/find.yaml +++ b/functions/definition/tutorial/find.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbFindTutorial: model: alias type: diff --git a/functions/definition/tutorial/validate.yaml b/functions/definition/tutorial/validate.yaml index e2ebeb6..dff1523 100644 --- a/functions/definition/tutorial/validate.yaml +++ b/functions/definition/tutorial/validate.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbValidateTutorial: model: alias type: diff --git a/functions/definition/user.yaml b/functions/definition/user.yaml index bf0188b..ba9d15b 100644 --- a/functions/definition/user.yaml +++ b/functions/definition/user.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbUserReadonlyType: model: alias docs: Represents user fields that cannot be updated from backend @@ -8,14 +10,14 @@ FbUserReadonlyType: type: timestamp userName: type: string - # NOTE: We can remove this @deprecated userNameKey: type: string + deprecated: true username: type: string - # NOTE: We can remove this @deprecated usernameKey: type: string + deprecated: true accessibility: optional: true type: boolean diff --git a/functions/definition/userContribution.yaml b/functions/definition/userContribution.yaml index f8c37e9..a733a11 100644 --- a/functions/definition/userContribution.yaml +++ b/functions/definition/userContribution.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbUserContribution: model: alias # path: userContributions/{userId}/{projectId}/{groupId} diff --git a/functions/definition/userGroup.yaml b/functions/definition/userGroup.yaml index 0a41718..2ac1156 100644 --- a/functions/definition/userGroup.yaml +++ b/functions/definition/userGroup.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + FbUserGroup: model: alias # path: userGroups/{userGroupId} @@ -5,7 +7,6 @@ FbUserGroup: type: type: object fields: - # TODO: this is an enum createdAt: type: int createdBy: @@ -14,9 +15,9 @@ FbUserGroup: type: string name: type: string - # NOTE: We can remove this @deprecated nameKey: type: string + deprecated: true users: type: type: map diff --git a/functions/definition/wait.yaml b/functions/definition/wait.yaml index d5cee7b..de5b0fd 100644 --- a/functions/definition/wait.yaml +++ b/functions/definition/wait.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json + # NOTE: We need at least one model with type document FbBackendWait: model: document diff --git a/functions/generated/pyfirebase/pyfirebase_mapswipe/models.py b/functions/generated/pyfirebase/pyfirebase_mapswipe/models.py index 7d775fe..e2cadba 100644 --- a/functions/generated/pyfirebase/pyfirebase_mapswipe/models.py +++ b/functions/generated/pyfirebase/pyfirebase_mapswipe/models.py @@ -158,7 +158,7 @@ class FbObjCustomOption(TypesyncModel): description: str icon: str iconColor: str - subOptions: TypesyncUndefined | list[FbBaseObjCustomSubOption] = UNDEFINED + subOptions: list[FbBaseObjCustomSubOption] | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -173,8 +173,11 @@ def __setattr__(self, name: str, value: typing.Any) -> None: class FbObjRasterTileServer(TypesyncModel): """Represents a raster tile server configuration""" - apiKey: TypesyncUndefined | str = UNDEFINED - wmtsLayerName: TypesyncUndefined | str = UNDEFINED + apiKey: str | TypesyncUndefined | None = UNDEFINED + wmtsLayerName: typing.Annotated[ + str | TypesyncUndefined | None, + pydantic.Field(deprecated=True), + ] = UNDEFINED credits: str name: FbEnumRasterTileServerName url: str @@ -249,8 +252,8 @@ class FbObjUnifiedOverlayTileServer(TypesyncModel): """Represents an overlay layer""" type: FbEnumOverlayTileServerType - raster: TypesyncUndefined | FbObjRasterTileServerOverlay = UNDEFINED - vector: TypesyncUndefined | FbObjVectorTileServerOverlay = UNDEFINED + raster: FbObjRasterTileServerOverlay | TypesyncUndefined | None = UNDEFINED + vector: FbObjVectorTileServerOverlay | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -282,7 +285,7 @@ def __setattr__(self, name: str, value: typing.Any) -> None: class FbProjectUpdateInput(TypesyncModel): """Represents project fields that are valid while updating a project""" - image: TypesyncUndefined | str = UNDEFINED + image: str | TypesyncUndefined | None = UNDEFINED isFeatured: bool lookFor: str name: str @@ -290,12 +293,12 @@ class FbProjectUpdateInput(TypesyncModel): projectNumber: int projectRegion: str projectTopic: str - projectTopicKey: str + projectTopicKey: typing.Annotated[str, pydantic.Field(deprecated=True)] requestingOrganisation: str tutorialId: str language: str - manualUrl: TypesyncUndefined | str = UNDEFINED - teamId: TypesyncUndefined | str = UNDEFINED + manualUrl: str | TypesyncUndefined | None = UNDEFINED + teamId: str | TypesyncUndefined | None = UNDEFINED status: FbEnumProjectStatus class Config: @@ -319,7 +322,7 @@ class FbProjectCreateOnlyInput(TypesyncModel): createdBy: str groupMaxSize: int groupSize: int - maxTasksPerUser: TypesyncUndefined | int = UNDEFINED + maxTasksPerUser: int | TypesyncUndefined | None = UNDEFINED projectId: str projectType: FbEnumProjectType requiredResults: int @@ -383,11 +386,11 @@ def __setattr__(self, name: str, value: typing.Any) -> None: class FbProjectValidateCreateOnlyInput(TypesyncModel): """Represents VALIDATE project fields that are valid while creating a project""" - customOptions: TypesyncUndefined | list[FbObjCustomOption] = UNDEFINED + customOptions: list[FbObjCustomOption] | TypesyncUndefined | None = UNDEFINED tileServer: FbObjRasterTileServer inputType: FbEnumValidateInputType - filter: TypesyncUndefined | str = UNDEFINED - TMId: TypesyncUndefined | str = UNDEFINED + filter: str | TypesyncUndefined | None = UNDEFINED + TMId: str | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -406,7 +409,7 @@ def __setattr__(self, name: str, value: typing.Any) -> None: class FbProjectValidateImageCreateOnlyInput(TypesyncModel): """Represents VALIDATE_IMAGE project fields that are valid while creating a project""" - customOptions: TypesyncUndefined | list[FbObjCustomOption] = UNDEFINED + customOptions: list[FbObjCustomOption] | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -521,7 +524,7 @@ class FbMappingTaskValidateImageCreateOnlyInput(TypesyncModel): """Represents VALIDATE_IMAGE mapping task fields that are valid while creating a task""" taskId: str - question: TypesyncUndefined | str = UNDEFINED + question: str | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -538,10 +541,10 @@ class FbMappingTaskCompareCreateOnlyInput(TypesyncModel): groupId: str taskId: str - taskX: TypesyncUndefined | int = UNDEFINED - taskY: TypesyncUndefined | int = UNDEFINED - url: TypesyncUndefined | str = UNDEFINED - urlB: TypesyncUndefined | str = UNDEFINED + taskX: int | TypesyncUndefined | None = UNDEFINED + taskY: int | TypesyncUndefined | None = UNDEFINED + url: str | TypesyncUndefined | None = UNDEFINED + urlB: str | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -563,11 +566,11 @@ class FbMappingResult(TypesyncModel): """Represents a mapswipe project""" appVersion: str - clientType: TypesyncUndefined | str = UNDEFINED + clientType: str | TypesyncUndefined | None = UNDEFINED endTime: datetime.datetime startTime: datetime.datetime results: dict[str, int] - usergroups: TypesyncUndefined | dict[str, bool] = UNDEFINED + usergroups: dict[str, bool] | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -585,9 +588,9 @@ class FbOrganisation(TypesyncModel): """Represents the requesting organisation.""" name: str - description: TypesyncUndefined | str = UNDEFINED - nameKey: str - abbreviation: TypesyncUndefined | str = UNDEFINED + description: str | TypesyncUndefined | None = UNDEFINED + nameKey: typing.Annotated[str, pydantic.Field(deprecated=True)] + abbreviation: str | TypesyncUndefined | None = UNDEFINED isArchived: bool class Config: @@ -625,8 +628,8 @@ class FbEnumInformationPageBlockType(enum.Enum): class FbInformationPageBlock(TypesyncModel): blockNumber: int blockType: FbEnumInformationPageBlockType - textDescription: TypesyncUndefined | str = UNDEFINED - image: TypesyncUndefined | str = UNDEFINED + textDescription: str | TypesyncUndefined | None = UNDEFINED + image: str | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -680,8 +683,14 @@ def __setattr__(self, name: str, value: typing.Any) -> None: class FbBaseTutorial(TypesyncModel): - exampleImage1: TypesyncUndefined | str = UNDEFINED - exampleImage2: TypesyncUndefined | str = UNDEFINED + exampleImage1: typing.Annotated[ + str | TypesyncUndefined | None, + pydantic.Field(deprecated=True), + ] = UNDEFINED + exampleImage2: typing.Annotated[ + str | TypesyncUndefined | None, + pydantic.Field(deprecated=True), + ] = UNDEFINED contributorCount: int informationPages: list[FbInformationPage] lookFor: str @@ -689,9 +698,9 @@ class FbBaseTutorial(TypesyncModel): progress: int projectDetails: str projectId: str - projectTopicKey: str + projectTopicKey: typing.Annotated[str, pydantic.Field(deprecated=True)] status: typing.Literal["tutorial"] - tutorialDraftId: str + tutorialDraftId: typing.Annotated[str, pydantic.Field(deprecated=True)] class Config: use_enum_values = True @@ -876,7 +885,7 @@ class FbValidateTutorial(TypesyncModel): tileServer: FbObjRasterTileServer zoomLevel: int screens: list[FbScreen] - customOptions: TypesyncUndefined | list[FbObjCustomOption] = UNDEFINED + customOptions: list[FbObjCustomOption] | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -923,11 +932,11 @@ class FbUserReadonlyType(TypesyncModel): created: datetime.datetime userName: str - userNameKey: str + userNameKey: typing.Annotated[str, pydantic.Field(deprecated=True)] username: str - usernameKey: str - accessibility: TypesyncUndefined | bool = UNDEFINED - userGroups: TypesyncUndefined | dict[str, typing.Any] = UNDEFINED + usernameKey: typing.Annotated[str, pydantic.Field(deprecated=True)] + accessibility: bool | TypesyncUndefined | None = UNDEFINED + userGroups: dict[str, typing.Any] | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -944,7 +953,7 @@ def __setattr__(self, name: str, value: typing.Any) -> None: class FbUserUpdateInput(TypesyncModel): """Represents a user""" - teamId: TypesyncUndefined | str = UNDEFINED + teamId: str | TypesyncUndefined | None = UNDEFINED class Config: use_enum_values = True @@ -978,7 +987,7 @@ class FbUserGroup(TypesyncModel): createdBy: str description: str name: str - nameKey: str + nameKey: typing.Annotated[str, pydantic.Field(deprecated=True)] users: dict[str, typing.Any] class Config: diff --git a/functions/package.json b/functions/package.json index c0cda28..c17a6d1 100644 --- a/functions/package.json +++ b/functions/package.json @@ -3,7 +3,6 @@ "description": "Cloud Functions for Firebase", "packageManager": "yarn@1.22.22", "scripts": { - "postinstall": "patch-package", "lint": "eslint --ext .js,.ts .", "build": "tsc", "build:watch": "tsc --watch", @@ -37,9 +36,8 @@ "eslint-plugin-import": "^2.25.4", "eslint-plugin-promise": "^4.0.1", "firebase-functions-test": "^0.2.0", - "patch-package": "^8.0.0", - "typescript": "^4.5.4", - "typesync-cli": "^0.13.0" + "typescript": "^5.9.2", + "typesync-cli": "https://github.com/toggle-corp/typesync#v1.0.0" }, "engines": { "node": "22", diff --git a/functions/patches/typesync-cli+0.13.0.patch b/functions/patches/typesync-cli+0.13.0.patch deleted file mode 100644 index 6b7fd0a..0000000 --- a/functions/patches/typesync-cli+0.13.0.patch +++ /dev/null @@ -1,176 +0,0 @@ -diff --git a/node_modules/typesync-cli/dist/esm/index.js b/node_modules/typesync-cli/dist/esm/index.js -index 4aa9f0b..b26191b 100755 ---- a/node_modules/typesync-cli/dist/esm/index.js -+++ b/node_modules/typesync-cli/dist/esm/index.js -@@ -5,6 +5,107 @@ var __export = (target, all) => { - __defProp(target, name, { get: all[name], enumerable: true }); - }; - -+// sorting -+ -+function createGraph( -+ items, -+ getKey, -+ getIncomingNodesKey, -+) { -+ const graph = {}; -+ const outgoingNodesMap = {}; -+ -+ // Populate graph with incoming nodes -+ for (const [index, item] of items.entries()) { -+ const nodeKey = getKey(item); -+ const incomingNodesKey = getIncomingNodesKey(item); -+ -+ graph[nodeKey] = { -+ key: nodeKey, -+ item, -+ incomingNodesKey, -+ index, -+ outgoingNodesKey: new Set(), -+ }; -+ -+ // Create a outgoing nodes mapping -+ for (const incomingNodeKey of incomingNodesKey ) { -+ if (!outgoingNodesMap[incomingNodeKey]) { -+ outgoingNodesMap[incomingNodeKey] = new Set(); -+ } -+ outgoingNodesMap[incomingNodeKey].add(nodeKey); -+ } -+ } -+ -+ // Set outgoing nodes on graph -+ for (const nodeKey of Object.keys(graph)) { -+ graph[nodeKey] = { -+ ...graph[nodeKey], -+ outgoingNodesKey: outgoingNodesMap[nodeKey] ?? new Set(), -+ } -+ } -+ -+ return graph; -+} -+ -+function removeFromGraph( -+ graph, -+ removeKey, -+) { -+ const nodeToRemove = graph[removeKey]; -+ if (!nodeToRemove) { -+ throw Error(`Error while removing node with key ${removeKey}`); -+ } -+ -+ // Remove from graph -+ delete graph[removeKey]; -+ -+ // Update incomingNodesKey from outgoingNodes -+ const affectedOutgoingNodes = []; -+ for (const outgoingNodeKey of nodeToRemove.outgoingNodesKey) { -+ const outgoingNode = graph[outgoingNodeKey]; -+ outgoingNode.incomingNodesKey.delete(removeKey); -+ affectedOutgoingNodes.push(outgoingNode); -+ } -+ -+ return affectedOutgoingNodes; -+} -+ -+function topoSortGraph( -+ graph, -+) { -+ const orderedNodeList = []; -+ -+ const removableNodesQueue = Object.values(graph).filter( -+ (item) => item.incomingNodesKey.size === 0 -+ ) -+ removableNodesQueue.sort((foo, bar) => foo.index - bar.index); -+ -+ if (removableNodesQueue.length <= 0) { -+ throw Error(`Expected removableNodes to greater than zero while sorting.`); -+ } -+ -+ while (removableNodesQueue.length > 0) { -+ const removedNode = removableNodesQueue.shift(); -+ orderedNodeList.push(removedNode); -+ -+ const affectedOutgoingNodes = removeFromGraph(graph, removedNode.key); -+ -+ const removableNodes = affectedOutgoingNodes.filter((node) => node.incomingNodesKey.size === 0); -+ if (removableNodes.length > 0) { -+ removableNodesQueue.push(...removableNodes) -+ removableNodesQueue.sort((foo, bar) => (foo.index - bar.index)); -+ } -+ } -+ -+ const graphNodesCount = Object.keys(graph).length; -+ if (graphNodesCount != 0) { -+ throw Error(`Expected graph to have no nodes left while sorting. But got ${graphNodesCount} nodes`); -+ } -+ -+ return orderedNodeList; -+} -+ - // src/cli/index.tsx - import { render } from "ink"; - import { resolve as resolve2 } from "path"; -@@ -562,10 +663,12 @@ var AbstractSchema = class { - aliasModelsById; - documentModelsById; - get aliasModels() { -- return Array.from(this.aliasModelsById.values()).sort((m1, m2) => m1.name.localeCompare(m2.name)); -+ // return Array.from(this.aliasModelsById.values()).sort((m1, m2) => m1.name.localeCompare(m2.name)); -+ return Array.from(this.aliasModelsById.values()); - } - get documentModels() { -- return Array.from(this.documentModelsById.values()).sort((m1, m2) => m1.name.localeCompare(m2.name)); -+ // return Array.from(this.documentModelsById.values()).sort((m1, m2) => m1.name.localeCompare(m2.name)); -+ return Array.from(this.documentModelsById.values()); - } - constructor() { - this.aliasModelsById = /* @__PURE__ */ new Map(); -@@ -1771,7 +1874,39 @@ var PythonGeneratorImpl = class { - const d = this.createDeclarationForDocumentModel(model2); - declarations.push(d); - }); -- return { type: "python", declarations }; -+ -+ const graph = createGraph( -+ declarations, -+ (item) => item.modelName, -+ (item) => { -+ if (item.modelType.type !== 'object-class') { -+ // NOTE: we can skip enum-class -+ console.warn(`Skipping declaration "${item.modelName}" as modelType is ${item.modelType.type}`) -+ return new Set(); -+ } -+ const deps = new Set(); -+ for (const attribute of item.modelType.attributes) { -+ if (attribute.type.type === "alias") { -+ deps.add(attribute.type.name); -+ } else if (attribute.type.type === "dict") { -+ if (attribute.type.valueType.type === "alias") { -+ deps.add(attribute.type.valueType.name); -+ } -+ } else if (attribute.type.type === "list") { -+ if (attribute.type.elementType.type === "alias") { -+ deps.add(attribute.type.elementType.name); -+ } -+ } -+ // FIXME(tnagorra): Handle union, tuple -+ } -+ return deps; -+ }, -+ ); -+ const sortedDeclarations = topoSortGraph(graph) -+ return { -+ type: "python", -+ declarations: sortedDeclarations.map((node) => node.item), -+ }; - } - createDeclarationForAliasModel(model2) { - switch (model2.type.type) { -@@ -5469,6 +5604,7 @@ var TypesyncImpl = class { - if (filePaths.length === 0) { - throw new DefinitionFilesNotFoundError(globPattern); - } -+ filePaths.sort(); - return filePaths; - } - }; diff --git a/functions/tsconfig.json b/functions/tsconfig.json index f4cc845..0c8d32a 100644 --- a/functions/tsconfig.json +++ b/functions/tsconfig.json @@ -26,6 +26,7 @@ "noUnusedParameters": true, "forceConsistentCasingInFileNames": true, + "skipLibCheck": true, "resolveJsonModule": true }, "compileOnSave": true, diff --git a/functions/yarn.lock b/functions/yarn.lock index 80dca38..a7ac6d6 100644 --- a/functions/yarn.lock +++ b/functions/yarn.lock @@ -618,11 +618,6 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== -"@yarnpkg/lockfile@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" - integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== - abort-controller@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" @@ -802,11 +797,6 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== -at-least-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - auto-bind@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/auto-bind/-/auto-bind-5.0.1.tgz#50d8e63ea5a1dddcb5e5e36451c1a8266ffbb2ae" @@ -908,14 +898,6 @@ bytes@3.1.2: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== -call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" - integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== - dependencies: - es-errors "^1.3.0" - function-bind "^1.1.2" - call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" @@ -927,24 +909,6 @@ call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: get-intrinsic "^1.2.4" set-function-length "^1.2.1" -call-bind@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" - integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== - dependencies: - call-bind-apply-helpers "^1.0.0" - es-define-property "^1.0.0" - get-intrinsic "^1.2.4" - set-function-length "^1.2.2" - -call-bound@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" - integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== - dependencies: - call-bind-apply-helpers "^1.0.2" - get-intrinsic "^1.3.0" - callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -955,7 +919,7 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== -chalk@^4.0.0, chalk@^4.1.2: +chalk@^4.0.0: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -968,7 +932,7 @@ chalk@^5.2.0: resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.4.1.tgz#1b48bf0963ec158dce2aacf69c093ae2dd2092d8" integrity sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w== -ci-info@^3.2.0, ci-info@^3.7.0: +ci-info@^3.2.0: version "3.9.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== @@ -1123,7 +1087,7 @@ cross-spawn@^7.0.2: shebang-command "^2.0.0" which "^2.0.1" -cross-spawn@^7.0.3, cross-spawn@^7.0.6: +cross-spawn@^7.0.6: version "7.0.6" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== @@ -1265,15 +1229,6 @@ dot-prop@^5.2.0: dependencies: is-obj "^2.0.0" -dunder-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" - integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== - dependencies: - call-bind-apply-helpers "^1.0.1" - es-errors "^1.3.0" - gopd "^1.2.0" - duplexify@^4.0.0, duplexify@^4.1.1: version "4.1.3" resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-4.1.3.tgz#a07e1c0d0a2c001158563d32592ba58bddb0236f" @@ -1397,11 +1352,6 @@ es-define-property@^1.0.0: dependencies: get-intrinsic "^1.2.4" -es-define-property@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" - integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== - es-errors@^1.2.1, es-errors@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" @@ -1414,13 +1364,6 @@ es-object-atoms@^1.0.0: dependencies: es-errors "^1.3.0" -es-object-atoms@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" - integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== - dependencies: - es-errors "^1.3.0" - es-set-tostringtag@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" @@ -1760,13 +1703,6 @@ find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" -find-yarn-workspace-root@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz#f47fb8d239c900eb78179aa81b66673eac88f7bd" - integrity sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ== - dependencies: - micromatch "^4.0.2" - firebase-admin@^10.0.2: version "10.3.0" resolved "https://registry.yarnpkg.com/firebase-admin/-/firebase-admin-10.3.0.tgz#6ac2a528d11e52e20cb7e417730b057b83900422" @@ -1862,16 +1798,6 @@ fresh@0.5.2: resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== -fs-extra@^9.0.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -1937,30 +1863,6 @@ get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@ has-symbols "^1.0.3" hasown "^2.0.0" -get-intrinsic@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" - integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== - dependencies: - call-bind-apply-helpers "^1.0.2" - es-define-property "^1.0.1" - es-errors "^1.3.0" - es-object-atoms "^1.1.1" - function-bind "^1.1.2" - get-proto "^1.0.1" - gopd "^1.2.0" - has-symbols "^1.1.0" - hasown "^2.0.2" - math-intrinsics "^1.1.0" - -get-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" - integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== - dependencies: - dunder-proto "^1.0.1" - es-object-atoms "^1.0.0" - get-symbol-description@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" @@ -2090,12 +1992,7 @@ gopd@^1.0.1: dependencies: get-intrinsic "^1.1.3" -gopd@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" - integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== - -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0: +graceful-fs@^4.1.2: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -2154,11 +2051,6 @@ has-symbols@^1.0.2, has-symbols@^1.0.3: resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== -has-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" - integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== - has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" @@ -2364,11 +2256,6 @@ is-date-object@^1.0.1: dependencies: has-tostringtag "^1.0.0" -is-docker@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== - is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" @@ -2490,13 +2377,6 @@ is-weakref@^1.0.2: dependencies: call-bind "^1.0.2" -is-wsl@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - isarray@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" @@ -2572,17 +2452,6 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== -json-stable-stringify@^1.0.2: - version "1.3.0" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.3.0.tgz#8903cfac42ea1a0f97f35d63a4ce0518f0cc6a70" - integrity sha512-qtYiSSFlwot9XHtF9bD9c7rwKjr+RecWT//ZnPvSmEjpV5mmPOCN4j8UjY5hbjNkOwZ/jQv3J6R1/pL7RwgMsg== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.4" - isarray "^2.0.5" - jsonify "^0.0.1" - object-keys "^1.1.1" - json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" @@ -2595,20 +2464,6 @@ json5@^1.0.2: dependencies: minimist "^1.2.0" -jsonfile@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" - integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== - dependencies: - universalify "^2.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - -jsonify@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.1.tgz#2aa3111dae3d34a0f151c63f3a45d995d9420978" - integrity sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg== - jsonwebtoken@^8.5.1: version "8.5.1" resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz#00e71e0b8df54c2121a1f26137df2280673bcc0d" @@ -2688,13 +2543,6 @@ keyv@^4.5.3: dependencies: json-buffer "3.0.1" -klaw-sync@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/klaw-sync/-/klaw-sync-6.0.0.tgz#1fd2cfd56ebb6250181114f0a581167099c2b28c" - integrity sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ== - dependencies: - graceful-fs "^4.1.11" - levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -2814,11 +2662,6 @@ make-dir@^3.0.0: dependencies: semver "^6.0.0" -math-intrinsics@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" - integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== - media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" @@ -2839,14 +2682,6 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@^4.0.2: - version "4.0.8" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" - integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== - dependencies: - braces "^3.0.3" - picomatch "^2.3.1" - micromatch@^4.0.4: version "4.0.7" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" @@ -3032,14 +2867,6 @@ onetime@^5.1.0: dependencies: mimic-fn "^2.1.0" -open@^7.4.2: - version "7.4.2" - resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" - integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== - dependencies: - is-docker "^2.0.0" - is-wsl "^2.1.1" - optionator@^0.9.3: version "0.9.4" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" @@ -3052,11 +2879,6 @@ optionator@^0.9.3: type-check "^0.4.0" word-wrap "^1.2.5" -os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== - p-limit@^3.0.1, p-limit@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" @@ -3093,27 +2915,6 @@ patch-console@^2.0.0: resolved "https://registry.yarnpkg.com/patch-console/-/patch-console-2.0.0.tgz#9023f4665840e66f40e9ce774f904a63167433bb" integrity sha512-0YNdUceMdaQwoKce1gatDScmMo5pu/tfABfnzEqeG0gtTmd7mh/WcwgUjtAeOU7N8nFFlbQBnFK2gXW5fGvmMA== -patch-package@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/patch-package/-/patch-package-8.0.0.tgz#d191e2f1b6e06a4624a0116bcb88edd6714ede61" - integrity sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA== - dependencies: - "@yarnpkg/lockfile" "^1.1.0" - chalk "^4.1.2" - ci-info "^3.7.0" - cross-spawn "^7.0.3" - find-yarn-workspace-root "^2.0.0" - fs-extra "^9.0.0" - json-stable-stringify "^1.0.2" - klaw-sync "^6.0.0" - minimist "^1.2.6" - open "^7.4.2" - rimraf "^2.6.3" - semver "^7.5.3" - slash "^2.0.0" - tmp "^0.0.33" - yaml "^2.2.2" - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -3178,9 +2979,9 @@ prelude-ls@^1.2.1: integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== prettier@^3.4.2: - version "3.5.3" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.5.3.tgz#4fc2ce0d657e7a02e602549f053b239cb7dfe1b5" - integrity sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw== + version "3.6.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.6.2.tgz#ccda02a1003ebbb2bfda6f83a074978f608b9393" + integrity sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ== proto3-json-serializer@^0.1.8: version "0.1.9" @@ -3443,13 +3244,6 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@^2.6.3: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -3515,11 +3309,6 @@ semver@^7.3.7: resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== -semver@^7.5.3: - version "7.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" - integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== - send@0.18.0: version "0.18.0" resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" @@ -3549,7 +3338,7 @@ serve-static@1.15.0: parseurl "~1.3.3" send "0.18.0" -set-function-length@^1.2.1, set-function-length@^1.2.2: +set-function-length@^1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== @@ -3619,11 +3408,6 @@ simple-oauth2@3.3.0: date-fns "^2.9.0" debug "^4.1.1" -slash@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" - integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== - slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" @@ -3820,13 +3604,6 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -3972,15 +3749,14 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^4.5.4: - version "4.9.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" - integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== +typescript@^5.9.2: + version "5.9.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.9.2.tgz#d93450cddec5154a2d5cabe3b8102b83316fb2a6" + integrity sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A== -typesync-cli@^0.13.0: +"typesync-cli@https://github.com/toggle-corp/typesync#v1.0.0": version "0.13.0" - resolved "https://registry.yarnpkg.com/typesync-cli/-/typesync-cli-0.13.0.tgz#4c1021b96af99095db6328b0333fe854b2cfac64" - integrity sha512-fEYXcrtDcL9qgNqwQBqjfvs0Y+5E8RVsSJATQzuUpklVvLptk/BlGolhAi+hQBt1HrwKOt8DzmGrF7aXRoOa0w== + resolved "https://github.com/toggle-corp/typesync#003cd79b99ca67087d25fde8f05bcaa15de65fbf" dependencies: "@proficient/ds" "0.3.2" glob "^10.3.12" @@ -4015,11 +3791,6 @@ unique-string@^2.0.0: dependencies: crypto-random-string "^2.0.0" -universalify@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" - integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== - unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -4177,9 +3948,9 @@ write-file-atomic@^3.0.0: typedarray-to-buffer "^3.1.5" ws@^8.12.0: - version "8.18.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.2.tgz#42738b2be57ced85f46154320aabb51ab003705a" - integrity sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ== + version "8.18.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.3.tgz#b56b88abffde62791c639170400c93dcb0c95472" + integrity sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg== xdg-basedir@^4.0.0: version "4.0.0" @@ -4196,7 +3967,7 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^2.2.2, yaml@^2.4.0: +yaml@^2.4.0: version "2.8.0" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.8.0.tgz#15f8c9866211bdc2d3781a0890e44d4fa1a5fff6" integrity sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ== @@ -4248,6 +4019,6 @@ yoga-wasm-web@~0.3.3: integrity sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA== zod@^3.24.1: - version "3.25.64" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.25.64.tgz#57b5c7e76dd64e447f7e710285fcdb396b32f803" - integrity sha512-hbP9FpSZf7pkS7hRVUrOjhwKJNyampPgtXKc3AN6DsWtoHsg2Sb4SQaS4Tcay380zSwd2VPo9G9180emBACp5g== + version "3.25.76" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.25.76.tgz#26841c3f6fd22a6a2760e7ccb719179768471e34" + integrity sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==