diff --git a/example.php b/example.php index 852ddfa31..fe52a6a19 100644 --- a/example.php +++ b/example.php @@ -94,8 +94,9 @@ function configureSDK($sdk, $overrides = []) { // $platform = 'server'; } + $branch = '1.8.x'; $version = '1.8.x'; - $spec = getSSLPage("https://raw.githubusercontent.com/appwrite/appwrite/{$version}/app/config/specs/swagger2-{$version}-{$platform}.json"); + $spec = getSSLPage("https://raw.githubusercontent.com/appwrite/appwrite/{$branch}/app/config/specs/swagger2-{$version}-{$platform}.json"); if(empty($spec)) { throw new Exception('Failed to fetch spec from Appwrite server'); diff --git a/templates/cli/lib/type-generation/attribute.js.twig b/templates/cli/lib/type-generation/attribute.js.twig index 70bfc3869..e36d0558c 100644 --- a/templates/cli/lib/type-generation/attribute.js.twig +++ b/templates/cli/lib/type-generation/attribute.js.twig @@ -9,6 +9,9 @@ const AttributeType = { URL: "url", ENUM: "enum", RELATIONSHIP: "relationship", + POINT: "point", + LINESTRING: "linestring", + POLYGON: "polygon", }; module.exports = { diff --git a/templates/cli/lib/type-generation/languages/csharp.js.twig b/templates/cli/lib/type-generation/languages/csharp.js.twig index 3914d1595..ff85bf675 100644 --- a/templates/cli/lib/type-generation/languages/csharp.js.twig +++ b/templates/cli/lib/type-generation/languages/csharp.js.twig @@ -33,6 +33,15 @@ class CSharp extends LanguageMeta { type = `List<${type}>`; } break; + case AttributeType.POINT: + type = "List"; + break; + case AttributeType.LINESTRING: + type = "List>"; + break; + case AttributeType.POLYGON: + type = "List>>"; + break; default: throw new Error(`Unknown attribute type: ${attribute.type}`); } diff --git a/templates/cli/lib/type-generation/languages/dart.js.twig b/templates/cli/lib/type-generation/languages/dart.js.twig index d44efb932..d48ca4868 100644 --- a/templates/cli/lib/type-generation/languages/dart.js.twig +++ b/templates/cli/lib/type-generation/languages/dart.js.twig @@ -70,6 +70,15 @@ class Dart extends LanguageMeta { type = `List<${type}>`; } break; + case AttributeType.POINT: + type = "List"; + break; + case AttributeType.LINESTRING: + type = "List>"; + break; + case AttributeType.POLYGON: + type = "List>>"; + break; default: throw new Error(`Unknown attribute type: ${attribute.type}`); } diff --git a/templates/cli/lib/type-generation/languages/java.js.twig b/templates/cli/lib/type-generation/languages/java.js.twig index dfcf5e20b..e45f22e54 100644 --- a/templates/cli/lib/type-generation/languages/java.js.twig +++ b/templates/cli/lib/type-generation/languages/java.js.twig @@ -33,6 +33,15 @@ class Java extends LanguageMeta { type = "List<" + type + ">"; } break; + case AttributeType.POINT: + type = "List"; + break; + case AttributeType.LINESTRING: + type = "List>"; + break; + case AttributeType.POLYGON: + type = "List>>"; + break; default: throw new Error(`Unknown attribute type: ${attribute.type}`); } diff --git a/templates/cli/lib/type-generation/languages/javascript.js.twig b/templates/cli/lib/type-generation/languages/javascript.js.twig index 5c40f2925..1d19cfb44 100644 --- a/templates/cli/lib/type-generation/languages/javascript.js.twig +++ b/templates/cli/lib/type-generation/languages/javascript.js.twig @@ -38,6 +38,15 @@ class JavaScript extends LanguageMeta { type = `${type}[]`; } break; + case AttributeType.POINT: + type = "number[]"; + break; + case AttributeType.LINESTRING: + type = "number[][]"; + break; + case AttributeType.POLYGON: + type = "number[][][]"; + break; default: throw new Error(`Unknown attribute type: ${attribute.type}`); } diff --git a/templates/cli/lib/type-generation/languages/kotlin.js.twig b/templates/cli/lib/type-generation/languages/kotlin.js.twig index 09df341a0..8cecd74ba 100644 --- a/templates/cli/lib/type-generation/languages/kotlin.js.twig +++ b/templates/cli/lib/type-generation/languages/kotlin.js.twig @@ -33,6 +33,15 @@ class Kotlin extends LanguageMeta { type = `List<${type}>`; } break; + case AttributeType.POINT: + type = "List"; + break; + case AttributeType.LINESTRING: + type = "List>"; + break; + case AttributeType.POLYGON: + type = "List>>"; + break; default: throw new Error(`Unknown attribute type: ${attribute.type}`); } diff --git a/templates/cli/lib/type-generation/languages/php.js.twig b/templates/cli/lib/type-generation/languages/php.js.twig index 713ed2004..d316796fa 100644 --- a/templates/cli/lib/type-generation/languages/php.js.twig +++ b/templates/cli/lib/type-generation/languages/php.js.twig @@ -36,6 +36,11 @@ class PHP extends LanguageMeta { type = "array"; } break; + case AttributeType.POINT: + case AttributeType.LINESTRING: + case AttributeType.POLYGON: + type = "array"; + break; default: throw new Error(`Unknown attribute type: ${attribute.type}`); } diff --git a/templates/cli/lib/type-generation/languages/swift.js.twig b/templates/cli/lib/type-generation/languages/swift.js.twig index 87557bb32..8cb25748c 100644 --- a/templates/cli/lib/type-generation/languages/swift.js.twig +++ b/templates/cli/lib/type-generation/languages/swift.js.twig @@ -33,6 +33,15 @@ class Swift extends LanguageMeta { type = `[${type}]`; } break; + case AttributeType.POINT: + type = "[Double]"; + break; + case AttributeType.LINESTRING: + type = "[[Double]]"; + break; + case AttributeType.POLYGON: + type = "[[[Double]]]"; + break; default: throw new Error(`Unknown attribute type: ${attribute.type}`); } diff --git a/templates/cli/lib/type-generation/languages/typescript.js.twig b/templates/cli/lib/type-generation/languages/typescript.js.twig index 61a6fcb0b..d3fdd67b8 100644 --- a/templates/cli/lib/type-generation/languages/typescript.js.twig +++ b/templates/cli/lib/type-generation/languages/typescript.js.twig @@ -38,6 +38,15 @@ class TypeScript extends LanguageMeta { type = `${type}[]`; } break; + case AttributeType.POINT: + type = "Array"; + break; + case AttributeType.LINESTRING: + type = "Array>"; + break; + case AttributeType.POLYGON: + type = "Array>>"; + break; default: throw new Error(`Unknown attribute type: ${attribute.type}`); } diff --git a/templates/react-native/package.json.twig b/templates/react-native/package.json.twig index a4e276c1d..73e3acb7c 100644 --- a/templates/react-native/package.json.twig +++ b/templates/react-native/package.json.twig @@ -26,7 +26,7 @@ }, "devDependencies": { "@rollup/plugin-typescript": "8.3.2", - "playwright": "1.15.0", + "playwright": "1.56.1", "rollup": "2.75.4", "serve-handler": "6.1.0", "tslib": "2.4.0", diff --git a/templates/web/package.json.twig b/templates/web/package.json.twig index 7e8771b32..fefcbbf00 100644 --- a/templates/web/package.json.twig +++ b/templates/web/package.json.twig @@ -26,7 +26,7 @@ }, "devDependencies": { "@rollup/plugin-typescript": "8.3.2", - "playwright": "1.15.0", + "playwright": "1.56.1", "rollup": "2.79.2", "serve-handler": "6.1.0", "tslib": "2.4.0", diff --git a/tests/WebChromiumTest.php b/tests/WebChromiumTest.php index bb58b2c1d..8e609e383 100644 --- a/tests/WebChromiumTest.php +++ b/tests/WebChromiumTest.php @@ -15,10 +15,10 @@ class WebChromiumTest extends Base 'cp tests/languages/web/tests.js tests/sdks/web/tests.js', 'cp tests/languages/web/node.js tests/sdks/web/node.js', 'cp tests/languages/web/index.html tests/sdks/web/index.html', - 'docker run --rm -v $(pwd):/app -w /app/tests/sdks/web mcr.microsoft.com/playwright:v1.15.0-focal sh -c "npm install && npm run build"', + 'docker run --rm -v $(pwd):/app -w /app/tests/sdks/web mcr.microsoft.com/playwright:v1.56.1-jammy sh -c "npm install && npm run build"', ]; protected string $command = - 'docker run --network="mockapi" --rm -v $(pwd):/app -e BROWSER=chromium -w /app/tests/sdks/web mcr.microsoft.com/playwright:v1.15.0-focal node tests.js'; + 'docker run --network="mockapi" --rm -v $(pwd):/app -e BROWSER=chromium -w /app/tests/sdks/web mcr.microsoft.com/playwright:v1.56.1-jammy node tests.js'; protected array $expectedOutput = [ ...Base::PING_RESPONSE,