jbilcke-hf HF staff commited on
Commit
1b59eed
β€’
1 Parent(s): ff4c569

rebranding to 🎬 Clapper

Browse files
README.md CHANGED
@@ -1,5 +1,5 @@
1
  ---
2
- title: Clap Viewer
3
  emoji: 🎬
4
  sdk: docker
5
  colorFrom: gray
@@ -9,14 +9,12 @@ app_port: 3000
9
  disable_embedding: true
10
  hf_oauth: false
11
  header: mini
12
- short_description: Visualize screenplay and OpenClap files 🎬
13
  ---
14
 
15
  ## Introduction
16
 
17
- Clap Viewer is a simple app to visualize a .clap timeline:
18
-
19
- [demo](https://jbilcke-hf-clap-viewer.hf.space/?clap=https://huggingface.co/spaces/jbilcke-hf/clap-viewer/resolve/main/public/samples/test.clap)
20
 
21
  ## Instructions for developers
22
 
 
1
  ---
2
+ title: Clapper
3
  emoji: 🎬
4
  sdk: docker
5
  colorFrom: gray
 
9
  disable_embedding: true
10
  hf_oauth: false
11
  header: mini
12
+ short_description: 🎬 Clapper
13
  ---
14
 
15
  ## Introduction
16
 
17
+ 🎬 Clapper is a work-in-progress video editor made for the AI age
 
 
18
 
19
  ## Instructions for developers
20
 
package-lock.json CHANGED
@@ -1,11 +1,11 @@
1
  {
2
- "name": "@jbilcke-hf/clap-viewer",
3
  "version": "0.0.2",
4
  "lockfileVersion": 3,
5
  "requires": true,
6
  "packages": {
7
  "": {
8
- "name": "@jbilcke-hf/clap-viewer",
9
  "version": "0.0.2",
10
  "dependencies": {
11
  "@aitube/clap": "0.0.24",
@@ -565,15 +565,6 @@
565
  "@jridgewell/sourcemap-codec": "^1.4.10"
566
  }
567
  },
568
- "node_modules/@emnapi/runtime": {
569
- "version": "1.2.0",
570
- "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.2.0.tgz",
571
- "integrity": "sha512-bV21/9LQmcQeCPEg3BDFtvwL6cwiTMksYNWQQ4KOxCZikEGalWtenoZ0wCiukJINlGCIi2KXx01g4FoH/LxpzQ==",
572
- "optional": true,
573
- "dependencies": {
574
- "tslib": "^2.4.0"
575
- }
576
- },
577
  "node_modules/@emotion/is-prop-valid": {
578
  "version": "1.2.2",
579
  "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.2.tgz",
@@ -755,31 +746,6 @@
755
  "@img/sharp-libvips-darwin-arm64": "1.0.2"
756
  }
757
  },
758
- "node_modules/@img/sharp-darwin-x64": {
759
- "version": "0.33.4",
760
- "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.4.tgz",
761
- "integrity": "sha512-0l7yRObwtTi82Z6ebVI2PnHT8EB2NxBgpK2MiKJZJ7cz32R4lxd001ecMhzzsZig3Yv9oclvqqdV93jo9hy+Dw==",
762
- "cpu": [
763
- "x64"
764
- ],
765
- "optional": true,
766
- "os": [
767
- "darwin"
768
- ],
769
- "engines": {
770
- "glibc": ">=2.26",
771
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
772
- "npm": ">=9.6.5",
773
- "pnpm": ">=7.1.0",
774
- "yarn": ">=3.2.0"
775
- },
776
- "funding": {
777
- "url": "https://opencollective.com/libvips"
778
- },
779
- "optionalDependencies": {
780
- "@img/sharp-libvips-darwin-x64": "1.0.2"
781
- }
782
- },
783
  "node_modules/@img/sharp-libvips-darwin-arm64": {
784
  "version": "1.0.2",
785
  "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.2.tgz",
@@ -801,366 +767,6 @@
801
  "url": "https://opencollective.com/libvips"
802
  }
803
  },
804
- "node_modules/@img/sharp-libvips-darwin-x64": {
805
- "version": "1.0.2",
806
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.2.tgz",
807
- "integrity": "sha512-Ofw+7oaWa0HiiMiKWqqaZbaYV3/UGL2wAPeLuJTx+9cXpCRdvQhCLG0IH8YGwM0yGWGLpsF4Su9vM1o6aer+Fw==",
808
- "cpu": [
809
- "x64"
810
- ],
811
- "optional": true,
812
- "os": [
813
- "darwin"
814
- ],
815
- "engines": {
816
- "macos": ">=10.13",
817
- "npm": ">=9.6.5",
818
- "pnpm": ">=7.1.0",
819
- "yarn": ">=3.2.0"
820
- },
821
- "funding": {
822
- "url": "https://opencollective.com/libvips"
823
- }
824
- },
825
- "node_modules/@img/sharp-libvips-linux-arm": {
826
- "version": "1.0.2",
827
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.2.tgz",
828
- "integrity": "sha512-iLWCvrKgeFoglQxdEwzu1eQV04o8YeYGFXtfWU26Zr2wWT3q3MTzC+QTCO3ZQfWd3doKHT4Pm2kRmLbupT+sZw==",
829
- "cpu": [
830
- "arm"
831
- ],
832
- "optional": true,
833
- "os": [
834
- "linux"
835
- ],
836
- "engines": {
837
- "glibc": ">=2.28",
838
- "npm": ">=9.6.5",
839
- "pnpm": ">=7.1.0",
840
- "yarn": ">=3.2.0"
841
- },
842
- "funding": {
843
- "url": "https://opencollective.com/libvips"
844
- }
845
- },
846
- "node_modules/@img/sharp-libvips-linux-arm64": {
847
- "version": "1.0.2",
848
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.2.tgz",
849
- "integrity": "sha512-x7kCt3N00ofFmmkkdshwj3vGPCnmiDh7Gwnd4nUwZln2YjqPxV1NlTyZOvoDWdKQVDL911487HOueBvrpflagw==",
850
- "cpu": [
851
- "arm64"
852
- ],
853
- "optional": true,
854
- "os": [
855
- "linux"
856
- ],
857
- "engines": {
858
- "glibc": ">=2.26",
859
- "npm": ">=9.6.5",
860
- "pnpm": ">=7.1.0",
861
- "yarn": ">=3.2.0"
862
- },
863
- "funding": {
864
- "url": "https://opencollective.com/libvips"
865
- }
866
- },
867
- "node_modules/@img/sharp-libvips-linux-s390x": {
868
- "version": "1.0.2",
869
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.2.tgz",
870
- "integrity": "sha512-cmhQ1J4qVhfmS6szYW7RT+gLJq9dH2i4maq+qyXayUSn9/3iY2ZeWpbAgSpSVbV2E1JUL2Gg7pwnYQ1h8rQIog==",
871
- "cpu": [
872
- "s390x"
873
- ],
874
- "optional": true,
875
- "os": [
876
- "linux"
877
- ],
878
- "engines": {
879
- "glibc": ">=2.28",
880
- "npm": ">=9.6.5",
881
- "pnpm": ">=7.1.0",
882
- "yarn": ">=3.2.0"
883
- },
884
- "funding": {
885
- "url": "https://opencollective.com/libvips"
886
- }
887
- },
888
- "node_modules/@img/sharp-libvips-linux-x64": {
889
- "version": "1.0.2",
890
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.2.tgz",
891
- "integrity": "sha512-E441q4Qdb+7yuyiADVi5J+44x8ctlrqn8XgkDTwr4qPJzWkaHwD489iZ4nGDgcuya4iMN3ULV6NwbhRZJ9Z7SQ==",
892
- "cpu": [
893
- "x64"
894
- ],
895
- "optional": true,
896
- "os": [
897
- "linux"
898
- ],
899
- "engines": {
900
- "glibc": ">=2.26",
901
- "npm": ">=9.6.5",
902
- "pnpm": ">=7.1.0",
903
- "yarn": ">=3.2.0"
904
- },
905
- "funding": {
906
- "url": "https://opencollective.com/libvips"
907
- }
908
- },
909
- "node_modules/@img/sharp-libvips-linuxmusl-arm64": {
910
- "version": "1.0.2",
911
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.2.tgz",
912
- "integrity": "sha512-3CAkndNpYUrlDqkCM5qhksfE+qSIREVpyoeHIU6jd48SJZViAmznoQQLAv4hVXF7xyUB9zf+G++e2v1ABjCbEQ==",
913
- "cpu": [
914
- "arm64"
915
- ],
916
- "optional": true,
917
- "os": [
918
- "linux"
919
- ],
920
- "engines": {
921
- "musl": ">=1.2.2",
922
- "npm": ">=9.6.5",
923
- "pnpm": ">=7.1.0",
924
- "yarn": ">=3.2.0"
925
- },
926
- "funding": {
927
- "url": "https://opencollective.com/libvips"
928
- }
929
- },
930
- "node_modules/@img/sharp-libvips-linuxmusl-x64": {
931
- "version": "1.0.2",
932
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.2.tgz",
933
- "integrity": "sha512-VI94Q6khIHqHWNOh6LLdm9s2Ry4zdjWJwH56WoiJU7NTeDwyApdZZ8c+SADC8OH98KWNQXnE01UdJ9CSfZvwZw==",
934
- "cpu": [
935
- "x64"
936
- ],
937
- "optional": true,
938
- "os": [
939
- "linux"
940
- ],
941
- "engines": {
942
- "musl": ">=1.2.2",
943
- "npm": ">=9.6.5",
944
- "pnpm": ">=7.1.0",
945
- "yarn": ">=3.2.0"
946
- },
947
- "funding": {
948
- "url": "https://opencollective.com/libvips"
949
- }
950
- },
951
- "node_modules/@img/sharp-linux-arm": {
952
- "version": "0.33.4",
953
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.4.tgz",
954
- "integrity": "sha512-RUgBD1c0+gCYZGCCe6mMdTiOFS0Zc/XrN0fYd6hISIKcDUbAW5NtSQW9g/powkrXYm6Vzwd6y+fqmExDuCdHNQ==",
955
- "cpu": [
956
- "arm"
957
- ],
958
- "optional": true,
959
- "os": [
960
- "linux"
961
- ],
962
- "engines": {
963
- "glibc": ">=2.28",
964
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
965
- "npm": ">=9.6.5",
966
- "pnpm": ">=7.1.0",
967
- "yarn": ">=3.2.0"
968
- },
969
- "funding": {
970
- "url": "https://opencollective.com/libvips"
971
- },
972
- "optionalDependencies": {
973
- "@img/sharp-libvips-linux-arm": "1.0.2"
974
- }
975
- },
976
- "node_modules/@img/sharp-linux-arm64": {
977
- "version": "0.33.4",
978
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.4.tgz",
979
- "integrity": "sha512-2800clwVg1ZQtxwSoTlHvtm9ObgAax7V6MTAB/hDT945Tfyy3hVkmiHpeLPCKYqYR1Gcmv1uDZ3a4OFwkdBL7Q==",
980
- "cpu": [
981
- "arm64"
982
- ],
983
- "optional": true,
984
- "os": [
985
- "linux"
986
- ],
987
- "engines": {
988
- "glibc": ">=2.26",
989
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
990
- "npm": ">=9.6.5",
991
- "pnpm": ">=7.1.0",
992
- "yarn": ">=3.2.0"
993
- },
994
- "funding": {
995
- "url": "https://opencollective.com/libvips"
996
- },
997
- "optionalDependencies": {
998
- "@img/sharp-libvips-linux-arm64": "1.0.2"
999
- }
1000
- },
1001
- "node_modules/@img/sharp-linux-s390x": {
1002
- "version": "0.33.4",
1003
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.4.tgz",
1004
- "integrity": "sha512-h3RAL3siQoyzSoH36tUeS0PDmb5wINKGYzcLB5C6DIiAn2F3udeFAum+gj8IbA/82+8RGCTn7XW8WTFnqag4tQ==",
1005
- "cpu": [
1006
- "s390x"
1007
- ],
1008
- "optional": true,
1009
- "os": [
1010
- "linux"
1011
- ],
1012
- "engines": {
1013
- "glibc": ">=2.31",
1014
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1015
- "npm": ">=9.6.5",
1016
- "pnpm": ">=7.1.0",
1017
- "yarn": ">=3.2.0"
1018
- },
1019
- "funding": {
1020
- "url": "https://opencollective.com/libvips"
1021
- },
1022
- "optionalDependencies": {
1023
- "@img/sharp-libvips-linux-s390x": "1.0.2"
1024
- }
1025
- },
1026
- "node_modules/@img/sharp-linux-x64": {
1027
- "version": "0.33.4",
1028
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.4.tgz",
1029
- "integrity": "sha512-GoR++s0XW9DGVi8SUGQ/U4AeIzLdNjHka6jidVwapQ/JebGVQIpi52OdyxCNVRE++n1FCLzjDovJNozif7w/Aw==",
1030
- "cpu": [
1031
- "x64"
1032
- ],
1033
- "optional": true,
1034
- "os": [
1035
- "linux"
1036
- ],
1037
- "engines": {
1038
- "glibc": ">=2.26",
1039
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1040
- "npm": ">=9.6.5",
1041
- "pnpm": ">=7.1.0",
1042
- "yarn": ">=3.2.0"
1043
- },
1044
- "funding": {
1045
- "url": "https://opencollective.com/libvips"
1046
- },
1047
- "optionalDependencies": {
1048
- "@img/sharp-libvips-linux-x64": "1.0.2"
1049
- }
1050
- },
1051
- "node_modules/@img/sharp-linuxmusl-arm64": {
1052
- "version": "0.33.4",
1053
- "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.4.tgz",
1054
- "integrity": "sha512-nhr1yC3BlVrKDTl6cO12gTpXMl4ITBUZieehFvMntlCXFzH2bvKG76tBL2Y/OqhupZt81pR7R+Q5YhJxW0rGgQ==",
1055
- "cpu": [
1056
- "arm64"
1057
- ],
1058
- "optional": true,
1059
- "os": [
1060
- "linux"
1061
- ],
1062
- "engines": {
1063
- "musl": ">=1.2.2",
1064
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1065
- "npm": ">=9.6.5",
1066
- "pnpm": ">=7.1.0",
1067
- "yarn": ">=3.2.0"
1068
- },
1069
- "funding": {
1070
- "url": "https://opencollective.com/libvips"
1071
- },
1072
- "optionalDependencies": {
1073
- "@img/sharp-libvips-linuxmusl-arm64": "1.0.2"
1074
- }
1075
- },
1076
- "node_modules/@img/sharp-linuxmusl-x64": {
1077
- "version": "0.33.4",
1078
- "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.4.tgz",
1079
- "integrity": "sha512-uCPTku0zwqDmZEOi4ILyGdmW76tH7dm8kKlOIV1XC5cLyJ71ENAAqarOHQh0RLfpIpbV5KOpXzdU6XkJtS0daw==",
1080
- "cpu": [
1081
- "x64"
1082
- ],
1083
- "optional": true,
1084
- "os": [
1085
- "linux"
1086
- ],
1087
- "engines": {
1088
- "musl": ">=1.2.2",
1089
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1090
- "npm": ">=9.6.5",
1091
- "pnpm": ">=7.1.0",
1092
- "yarn": ">=3.2.0"
1093
- },
1094
- "funding": {
1095
- "url": "https://opencollective.com/libvips"
1096
- },
1097
- "optionalDependencies": {
1098
- "@img/sharp-libvips-linuxmusl-x64": "1.0.2"
1099
- }
1100
- },
1101
- "node_modules/@img/sharp-wasm32": {
1102
- "version": "0.33.4",
1103
- "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.4.tgz",
1104
- "integrity": "sha512-Bmmauh4sXUsUqkleQahpdNXKvo+wa1V9KhT2pDA4VJGKwnKMJXiSTGphn0gnJrlooda0QxCtXc6RX1XAU6hMnQ==",
1105
- "cpu": [
1106
- "wasm32"
1107
- ],
1108
- "optional": true,
1109
- "dependencies": {
1110
- "@emnapi/runtime": "^1.1.1"
1111
- },
1112
- "engines": {
1113
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1114
- "npm": ">=9.6.5",
1115
- "pnpm": ">=7.1.0",
1116
- "yarn": ">=3.2.0"
1117
- },
1118
- "funding": {
1119
- "url": "https://opencollective.com/libvips"
1120
- }
1121
- },
1122
- "node_modules/@img/sharp-win32-ia32": {
1123
- "version": "0.33.4",
1124
- "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.4.tgz",
1125
- "integrity": "sha512-99SJ91XzUhYHbx7uhK3+9Lf7+LjwMGQZMDlO/E/YVJ7Nc3lyDFZPGhjwiYdctoH2BOzW9+TnfqcaMKt0jHLdqw==",
1126
- "cpu": [
1127
- "ia32"
1128
- ],
1129
- "optional": true,
1130
- "os": [
1131
- "win32"
1132
- ],
1133
- "engines": {
1134
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1135
- "npm": ">=9.6.5",
1136
- "pnpm": ">=7.1.0",
1137
- "yarn": ">=3.2.0"
1138
- },
1139
- "funding": {
1140
- "url": "https://opencollective.com/libvips"
1141
- }
1142
- },
1143
- "node_modules/@img/sharp-win32-x64": {
1144
- "version": "0.33.4",
1145
- "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.4.tgz",
1146
- "integrity": "sha512-3QLocdTRVIrFNye5YocZl+KKpYKP+fksi1QhmOArgx7GyhIbQp/WrJRu176jm8IxromS7RIkzMiMINVdBtC8Aw==",
1147
- "cpu": [
1148
- "x64"
1149
- ],
1150
- "optional": true,
1151
- "os": [
1152
- "win32"
1153
- ],
1154
- "engines": {
1155
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1156
- "npm": ">=9.6.5",
1157
- "pnpm": ">=7.1.0",
1158
- "yarn": ">=3.2.0"
1159
- },
1160
- "funding": {
1161
- "url": "https://opencollective.com/libvips"
1162
- }
1163
- },
1164
  "node_modules/@isaacs/cliui": {
1165
  "version": "8.0.2",
1166
  "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
@@ -1289,126 +895,6 @@
1289
  "node": ">= 10"
1290
  }
1291
  },
1292
- "node_modules/@next/swc-darwin-x64": {
1293
- "version": "14.2.3",
1294
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
1295
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
1296
- "cpu": [
1297
- "x64"
1298
- ],
1299
- "optional": true,
1300
- "os": [
1301
- "darwin"
1302
- ],
1303
- "engines": {
1304
- "node": ">= 10"
1305
- }
1306
- },
1307
- "node_modules/@next/swc-linux-arm64-gnu": {
1308
- "version": "14.2.3",
1309
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
1310
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
1311
- "cpu": [
1312
- "arm64"
1313
- ],
1314
- "optional": true,
1315
- "os": [
1316
- "linux"
1317
- ],
1318
- "engines": {
1319
- "node": ">= 10"
1320
- }
1321
- },
1322
- "node_modules/@next/swc-linux-arm64-musl": {
1323
- "version": "14.2.3",
1324
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
1325
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
1326
- "cpu": [
1327
- "arm64"
1328
- ],
1329
- "optional": true,
1330
- "os": [
1331
- "linux"
1332
- ],
1333
- "engines": {
1334
- "node": ">= 10"
1335
- }
1336
- },
1337
- "node_modules/@next/swc-linux-x64-gnu": {
1338
- "version": "14.2.3",
1339
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
1340
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
1341
- "cpu": [
1342
- "x64"
1343
- ],
1344
- "optional": true,
1345
- "os": [
1346
- "linux"
1347
- ],
1348
- "engines": {
1349
- "node": ">= 10"
1350
- }
1351
- },
1352
- "node_modules/@next/swc-linux-x64-musl": {
1353
- "version": "14.2.3",
1354
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
1355
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
1356
- "cpu": [
1357
- "x64"
1358
- ],
1359
- "optional": true,
1360
- "os": [
1361
- "linux"
1362
- ],
1363
- "engines": {
1364
- "node": ">= 10"
1365
- }
1366
- },
1367
- "node_modules/@next/swc-win32-arm64-msvc": {
1368
- "version": "14.2.3",
1369
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
1370
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
1371
- "cpu": [
1372
- "arm64"
1373
- ],
1374
- "optional": true,
1375
- "os": [
1376
- "win32"
1377
- ],
1378
- "engines": {
1379
- "node": ">= 10"
1380
- }
1381
- },
1382
- "node_modules/@next/swc-win32-ia32-msvc": {
1383
- "version": "14.2.3",
1384
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
1385
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
1386
- "cpu": [
1387
- "ia32"
1388
- ],
1389
- "optional": true,
1390
- "os": [
1391
- "win32"
1392
- ],
1393
- "engines": {
1394
- "node": ">= 10"
1395
- }
1396
- },
1397
- "node_modules/@next/swc-win32-x64-msvc": {
1398
- "version": "14.2.3",
1399
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
1400
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
1401
- "cpu": [
1402
- "x64"
1403
- ],
1404
- "optional": true,
1405
- "os": [
1406
- "win32"
1407
- ],
1408
- "engines": {
1409
- "node": ">= 10"
1410
- }
1411
- },
1412
  "node_modules/@nodelib/fs.scandir": {
1413
  "version": "2.1.5",
1414
  "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
 
1
  {
2
+ "name": "@jbilcke-hf/clapper",
3
  "version": "0.0.2",
4
  "lockfileVersion": 3,
5
  "requires": true,
6
  "packages": {
7
  "": {
8
+ "name": "@jbilcke-hf/clapper",
9
  "version": "0.0.2",
10
  "dependencies": {
11
  "@aitube/clap": "0.0.24",
 
565
  "@jridgewell/sourcemap-codec": "^1.4.10"
566
  }
567
  },
 
 
 
 
 
 
 
 
 
568
  "node_modules/@emotion/is-prop-valid": {
569
  "version": "1.2.2",
570
  "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.2.tgz",
 
746
  "@img/sharp-libvips-darwin-arm64": "1.0.2"
747
  }
748
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
749
  "node_modules/@img/sharp-libvips-darwin-arm64": {
750
  "version": "1.0.2",
751
  "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.2.tgz",
 
767
  "url": "https://opencollective.com/libvips"
768
  }
769
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
770
  "node_modules/@isaacs/cliui": {
771
  "version": "8.0.2",
772
  "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
 
895
  "node": ">= 10"
896
  }
897
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
898
  "node_modules/@nodelib/fs.scandir": {
899
  "version": "2.1.5",
900
  "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
package.json CHANGED
@@ -1,8 +1,8 @@
1
  {
2
- "name": "@jbilcke-hf/clap-viewer",
3
  "version": "0.0.2",
4
  "private": true,
5
- "description": "Clap Viewer - Visualize screenplays and OpenClap files 🎞️",
6
  "scripts": {
7
  "dev": "next dev",
8
  "build": "next build",
 
1
  {
2
+ "name": "@jbilcke-hf/clapper",
3
  "version": "0.0.2",
4
  "private": true,
5
+ "description": "🎬 Clapper",
6
  "scripts": {
7
  "dev": "next dev",
8
  "build": "next build",
src/app/layout.tsx CHANGED
@@ -8,8 +8,8 @@ import type { Metadata } from 'next'
8
  import { inter } from './fonts'
9
 
10
  export const metadata: Metadata = {
11
- title: 'Clap Viewer - Visualize .clap files 🎞️',
12
- description: 'Clap Viewer - Visualize .clap files 🎞️',
13
  }
14
 
15
  export default function RootLayout({
 
8
  import { inter } from './fonts'
9
 
10
  export const metadata: Metadata = {
11
+ title: '🎬 Clapper',
12
+ description: '🎬 Clapper',
13
  }
14
 
15
  export default function RootLayout({
src/app/main.tsx CHANGED
@@ -20,6 +20,7 @@ export function Main() {
20
  return (
21
  <TooltipProvider>
22
  <div className={cn(`
 
23
  fixed
24
  flex flex-col
25
  w-screen h-screen
 
20
  return (
21
  <TooltipProvider>
22
  <div className={cn(`
23
+ select-none
24
  fixed
25
  flex flex-col
26
  w-screen h-screen
src/components/interface/iframe-warning/index.tsx ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use client"
2
+
3
+ import { APP_DOMAIN, APP_LINK, APP_NAME } from "@/lib/core/constants"
4
+ import { cn } from "@/lib/utils"
5
+ import { useEffect, useState } from "react"
6
+
7
+ export function IframeWarning() {
8
+ const [showWarning, setShowWarning] = useState(false)
9
+
10
+ useEffect(() => {
11
+ setShowWarning(window.self !== window.top)
12
+ return () => {}
13
+ }, [])
14
+ // TODO: read our global state
15
+
16
+ return (
17
+ <div className={cn(`
18
+ fixed
19
+ z-50
20
+ flex
21
+ w-screen h-screen
22
+ top-0 left-0 right-0 bottom-0
23
+ p-0 m-0
24
+ overflow-hidden
25
+ items-center justify-center
26
+ `,
27
+ showWarning
28
+ ? 'opacity-100 pointer-events-auto'
29
+ : 'pointer-events-none opacity-0',
30
+ )}
31
+ style={{
32
+ backgroundImage: "repeating-radial-gradient( circle at 0 0, transparent 0, #000000 7px ), repeating-linear-gradient( #34353655, #343536 )"
33
+ }}>
34
+ <p
35
+ className={cn("text-stone-100 font-sans font-thin text-[3vw]")}
36
+ style={{ textShadow: "#000 1px 0 3px" }}>
37
+ <span>
38
+ {APP_NAME} doesn&apos;t work well when used from an iframe, please use the official website instead:
39
+ </span>
40
+ <br/>
41
+ <a href={APP_LINK} target="_blank">
42
+ {APP_DOMAIN}
43
+ </a>
44
+ </p>
45
+ </div>
46
+ )
47
+ }
src/components/interface/top-bar/index.tsx CHANGED
@@ -4,6 +4,7 @@ import { useTimelineState } from "@aitube/timeline"
4
  import { cn } from "@/lib/utils"
5
 
6
  import { TopMenu } from "../top-menu"
 
7
 
8
 
9
  export function TopBar() {
@@ -19,11 +20,16 @@ export function TopBar() {
19
  )}>
20
  <TopMenu />
21
  <div className={cn(
22
- `flex flex-row flex-grow`,
23
  `items-center justify-center`,
 
24
  `text-xs text-stone-300`
25
  )}>
26
- {clap?.meta?.title || "Untitled"}
 
 
 
 
27
  </div>
28
  </div>
29
  )
 
4
  import { cn } from "@/lib/utils"
5
 
6
  import { TopMenu } from "../top-menu"
7
+ import { APP_NAME, APP_REVISION } from "@/lib/core/constants"
8
 
9
 
10
  export function TopBar() {
 
20
  )}>
21
  <TopMenu />
22
  <div className={cn(
23
+ `absolute flex flex-row flex-grow w-full`,
24
  `items-center justify-center`,
25
+ `pointer-events-none`,
26
  `text-xs text-stone-300`
27
  )}>
28
+ {
29
+ // clap?.meta?.title || "Untitled"
30
+ }
31
+ <span className="text-stone-300 mr-1">{APP_NAME}.app</span>
32
+ <span className="text-stone-500">({APP_REVISION})</span>
33
  </div>
34
  </div>
35
  )
src/components/interface/top-menu/file/index.tsx CHANGED
@@ -7,6 +7,7 @@ import { parseClap } from "@aitube/clap"
7
  import { MenubarContent, MenubarItem, MenubarMenu, MenubarSeparator, MenubarShortcut, MenubarTrigger } from "@/components/ui/menubar"
8
  import { useClapFilePicker, useQueryStringParams, useScreenplayFilePicker } from "@/lib/hooks"
9
  import { Loader } from "../../loader"
 
10
 
11
  export function TopMenuFile() {
12
  const { clapUrl } = useQueryStringParams({
@@ -67,6 +68,7 @@ export function TopMenuFile() {
67
  </MenubarContent>
68
  </MenubarMenu>
69
  <Loader isLoading={isLoading} />
 
70
  </>
71
  )
72
  }
 
7
  import { MenubarContent, MenubarItem, MenubarMenu, MenubarSeparator, MenubarShortcut, MenubarTrigger } from "@/components/ui/menubar"
8
  import { useClapFilePicker, useQueryStringParams, useScreenplayFilePicker } from "@/lib/hooks"
9
  import { Loader } from "../../loader"
10
+ import { IframeWarning } from "../../iframe-warning"
11
 
12
  export function TopMenuFile() {
13
  const { clapUrl } = useQueryStringParams({
 
68
  </MenubarContent>
69
  </MenubarMenu>
70
  <Loader isLoading={isLoading} />
71
+ <IframeWarning />
72
  </>
73
  )
74
  }
src/lib/core/constants.ts CHANGED
@@ -2,3 +2,13 @@
2
  // do we really want a high value here?
3
  // who is seriously ready to spawn 32 GPUs in parallels for this?
4
  export const HARD_LIMIT_NB_MAX_ASSETS_TO_GENERATE_IN_PARALLEL = 32
 
 
 
 
 
 
 
 
 
 
 
2
  // do we really want a high value here?
3
  // who is seriously ready to spawn 32 GPUs in parallels for this?
4
  export const HARD_LIMIT_NB_MAX_ASSETS_TO_GENERATE_IN_PARALLEL = 32
5
+
6
+ export const APP_NAME = "Clapper"
7
+ export const APP_REVISION = "nightly 20240604"
8
+
9
+ // TODO: use clapper.app
10
+ // export const APP_DOMAIN = "Clapper.app"
11
+ // export const APP_LINK = "https://clapper.app"
12
+
13
+ export const APP_DOMAIN = "jbilcke-hf-clapper.hf.space"
14
+ export const APP_LINK = "https://jbilcke-hf-clapper.hf.space"