From 7c0ff067a87e84e4bd891c34c14468f49dfa0e5e Mon Sep 17 00:00:00 2001 From: william Date: Wed, 6 Dec 2023 18:50:42 +0700 Subject: [PATCH 1/2] rive init --- README.md | 1 + apps/demo-angular/nativescript.config.ts | 10 + apps/demo-angular/package.json | 3 +- apps/demo-angular/src/app-routing.module.ts | 1 + apps/demo-angular/src/home.component.ts | 3 + .../nativescript-rive.component.html | 8 + .../nativescript-rive.component.ts | 7 + .../plugin-demos/nativescript-rive.module.ts | 10 + apps/demo/nativescript.config.ts | 10 + apps/demo/package.json | 3 +- apps/demo/src/main-page.xml | 5 +- apps/demo/src/main-view-model.ts | 6 + .../src/plugin-demos/nativescript-rive.ts | 9 + .../src/plugin-demos/nativescript-rive.xml | 18 + packages/nativescript-rive/.eslintrc.json | 18 + packages/nativescript-rive/README.md | 13 + packages/nativescript-rive/common.ts | 239 ++++ packages/nativescript-rive/index.android.ts | 326 +++++ packages/nativescript-rive/index.d.ts | 68 ++ packages/nativescript-rive/index.ios.ts | 410 +++++++ packages/nativescript-rive/package.json | 35 + .../platforms/android/AndroidManifest.xml | 9 + .../platforms/android/include.gradle | 8 + .../platforms/android/nativescript_rive.aar | Bin 0 -> 925 bytes .../platforms/ios/src/NSCRiveController.swift | 138 +++ packages/nativescript-rive/project.json | 73 ++ packages/nativescript-rive/references.d.ts | 1 + packages/nativescript-rive/tsconfig.json | 9 + .../nativescript-rive/typings/android.d.ts | 1083 +++++++++++++++++ .../typings/objc!NSCRiveController.d.ts | 35 + .../typings/objc!RiveRuntime.d.ts | 495 ++++++++ tools/assets/App_Resources/Android/app.gradle | 16 +- .../App_Resources/Android/gradle.properties | 1 + .../Android/src/main/AndroidManifest.xml | 12 +- tools/assets/rive/compass.riv | Bin 0 -> 1160 bytes tools/demo/index.ts | 1 + tools/demo/nativescript-rive/index.ts | 7 + tools/workspace-scripts.js | 11 + tsconfig.base.json | 3 + 39 files changed, 3099 insertions(+), 6 deletions(-) create mode 100644 apps/demo-angular/src/plugin-demos/nativescript-rive.component.html create mode 100644 apps/demo-angular/src/plugin-demos/nativescript-rive.component.ts create mode 100644 apps/demo-angular/src/plugin-demos/nativescript-rive.module.ts create mode 100644 apps/demo/src/plugin-demos/nativescript-rive.ts create mode 100644 apps/demo/src/plugin-demos/nativescript-rive.xml create mode 100644 packages/nativescript-rive/.eslintrc.json create mode 100644 packages/nativescript-rive/README.md create mode 100644 packages/nativescript-rive/common.ts create mode 100644 packages/nativescript-rive/index.android.ts create mode 100644 packages/nativescript-rive/index.d.ts create mode 100644 packages/nativescript-rive/index.ios.ts create mode 100644 packages/nativescript-rive/package.json create mode 100644 packages/nativescript-rive/platforms/android/AndroidManifest.xml create mode 100644 packages/nativescript-rive/platforms/android/include.gradle create mode 100644 packages/nativescript-rive/platforms/android/nativescript_rive.aar create mode 100644 packages/nativescript-rive/platforms/ios/src/NSCRiveController.swift create mode 100644 packages/nativescript-rive/project.json create mode 100644 packages/nativescript-rive/references.d.ts create mode 100644 packages/nativescript-rive/tsconfig.json create mode 100644 packages/nativescript-rive/typings/android.d.ts create mode 100644 packages/nativescript-rive/typings/objc!NSCRiveController.d.ts create mode 100644 packages/nativescript-rive/typings/objc!RiveRuntime.d.ts create mode 100644 tools/assets/App_Resources/Android/gradle.properties create mode 100644 tools/assets/rive/compass.riv create mode 100644 tools/demo/nativescript-rive/index.ts diff --git a/README.md b/README.md index 4fdae62..4e8ae9b 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,7 @@ - [@voicethread/nativescript-custom-rotors](packages/nativescript-custom-rotors/README.md) - [@voicethread/nativescript-downloader](packages/nativescript-downloader/README.md) - [@voicethread/nativescript-filepicker](packages/nativescript-filepicker/README.md) +- [@voicethread/rive](packages/rive/README.md) # How to use? diff --git a/apps/demo-angular/nativescript.config.ts b/apps/demo-angular/nativescript.config.ts index fc9f2dd..7c98626 100644 --- a/apps/demo-angular/nativescript.config.ts +++ b/apps/demo-angular/nativescript.config.ts @@ -7,6 +7,16 @@ export default { v8Flags: '--expose_gc', markingMode: 'none', }, + ios: { + SPMPackages: [ + { + name: 'RiveRuntime', + libs: ['RiveRuntime'], + repositoryURL: 'https://github.com/rive-app/rive-ios.git', + version: '5.0.0', + }, + ], + }, appPath: 'src', cli: { packageManager: 'npm', diff --git a/apps/demo-angular/package.json b/apps/demo-angular/package.json index b14c3ce..ffcfaab 100644 --- a/apps/demo-angular/package.json +++ b/apps/demo-angular/package.json @@ -6,7 +6,8 @@ "@voicethread/nativescript-filepicker": "file:../../dist/packages/nativescript-filepicker", "@voicethread/nativescript-downloader": "file:../../dist/packages/nativescript-downloader", "@voicethread/nativescript-audio-player": "file:../../dist/packages/nativescript-audio-player", - "@voicethread/nativescript-audio-recorder": "file:../../dist/packages/nativescript-audio-recorder" + "@voicethread/nativescript-audio-recorder": "file:../../dist/packages/nativescript-audio-recorder", + "@voicethread/rive": "file:../../dist/packages/rive" }, "devDependencies": { "@nativescript/android": "~8.4.0", diff --git a/apps/demo-angular/src/app-routing.module.ts b/apps/demo-angular/src/app-routing.module.ts index f564993..df633d5 100644 --- a/apps/demo-angular/src/app-routing.module.ts +++ b/apps/demo-angular/src/app-routing.module.ts @@ -12,6 +12,7 @@ const routes: Routes = [ { path: 'nativescript-custom-rotors', loadChildren: () => import('./plugin-demos/nativescript-custom-rotors.module').then(m => m.NativescriptCustomRotorsModule) }, { path: 'nativescript-downloader', loadChildren: () => import('./plugin-demos/nativescript-downloader.module').then(m => m.NativescriptDownloaderModule) }, { path: 'nativescript-filepicker', loadChildren: () => import('./plugin-demos/nativescript-filepicker.module').then(m => m.NativescriptFilepickerModule) }, + { path: 'nativescript-rive', loadChildren: () => import('./plugin-demos/nativescript-rive.module').then(m => m.NativescriptRiveModule) }, ]; @NgModule({ diff --git a/apps/demo-angular/src/home.component.ts b/apps/demo-angular/src/home.component.ts index 225a6ab..01d66c5 100644 --- a/apps/demo-angular/src/home.component.ts +++ b/apps/demo-angular/src/home.component.ts @@ -21,5 +21,8 @@ export class HomeComponent { { name: 'nativescript-filepicker', }, + { + name: 'nativescript-rive', + }, ]; } diff --git a/apps/demo-angular/src/plugin-demos/nativescript-rive.component.html b/apps/demo-angular/src/plugin-demos/nativescript-rive.component.html new file mode 100644 index 0000000..fc4e0e3 --- /dev/null +++ b/apps/demo-angular/src/plugin-demos/nativescript-rive.component.html @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/apps/demo-angular/src/plugin-demos/nativescript-rive.component.ts b/apps/demo-angular/src/plugin-demos/nativescript-rive.component.ts new file mode 100644 index 0000000..c4c66a7 --- /dev/null +++ b/apps/demo-angular/src/plugin-demos/nativescript-rive.component.ts @@ -0,0 +1,7 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'demo-nativescript-rive', + templateUrl: 'nativescript-rive.component.html', +}) +export class NativescriptRiveComponent {} diff --git a/apps/demo-angular/src/plugin-demos/nativescript-rive.module.ts b/apps/demo-angular/src/plugin-demos/nativescript-rive.module.ts new file mode 100644 index 0000000..b73e6a3 --- /dev/null +++ b/apps/demo-angular/src/plugin-demos/nativescript-rive.module.ts @@ -0,0 +1,10 @@ +import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core'; +import { NativeScriptCommonModule, NativeScriptRouterModule } from '@nativescript/angular'; +import { NativescriptRiveComponent } from './nativescript-rive.component'; + +@NgModule({ + imports: [NativeScriptCommonModule, NativeScriptRouterModule.forChild([{ path: '', component: NativescriptRiveComponent }])], + declarations: [NativescriptRiveComponent], + schemas: [NO_ERRORS_SCHEMA], +}) +export class NativescriptRiveModule {} diff --git a/apps/demo/nativescript.config.ts b/apps/demo/nativescript.config.ts index 711cef6..164586f 100644 --- a/apps/demo/nativescript.config.ts +++ b/apps/demo/nativescript.config.ts @@ -7,6 +7,16 @@ export default { v8Flags: '--expose_gc', markingMode: 'none', }, + ios: { + SPMPackages: [ + { + name: 'RiveRuntime', + libs: ['RiveRuntime'], + repositoryURL: 'https://github.com/rive-app/rive-ios.git', + version: '5.0.0', + }, + ], + }, appPath: 'src', cli: { packageManager: 'npm', diff --git a/apps/demo/package.json b/apps/demo/package.json index 8732fe1..92b29d7 100644 --- a/apps/demo/package.json +++ b/apps/demo/package.json @@ -12,7 +12,8 @@ "@voicethread/nativescript-downloader": "file:../../packages/nativescript-downloader", "@voicethread/nativescript-filepicker": "file:../../packages/nativescript-filepicker", "@voicethread/nativescript-audio-player": "file:../../packages/nativescript-audio-player", - "@voicethread/nativescript-audio-recorder": "file:../../packages/nativescript-audio-recorder" + "@voicethread/nativescript-audio-recorder": "file:../../packages/nativescript-audio-recorder", + "@voicethread/nativescript-rive": "file:../../packages/nativescript-rive" }, "devDependencies": { "@nativescript/android": "~8.4.0", diff --git a/apps/demo/src/main-page.xml b/apps/demo/src/main-page.xml index b2be8ec..672d666 100644 --- a/apps/demo/src/main-page.xml +++ b/apps/demo/src/main-page.xml @@ -1,4 +1,5 @@ -