Compare commits
1443 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 49ff928414 | |||
| 71efd4a6d7 | |||
| 01e4907295 | |||
| 6a47e99680 | |||
| 078d8068e0 | |||
| 58ae76ce2a | |||
| bc6cd5b014 | |||
| 17deac8d65 | |||
| 7dbf8dd9fe | |||
| 27ab9f89c9 | |||
| 602808c742 | |||
| c1051956ad | |||
| 6d2c084355 | |||
| 6e3f0f2253 | |||
| d3d3688d60 | |||
| 49c28299af | |||
| 0bb6fea3db | |||
| 7027084394 | |||
| 7c4cbaad9a | |||
| e603048a80 | |||
| 9e08157517 | |||
| d4c2b1e914 | |||
| 65dd67ec96 | |||
| 76259309af | |||
| 3e5a9db279 | |||
| c155bbdb37 | |||
| ecbc03f052 | |||
| 6ef9efc8bf | |||
| 513e9e822d | |||
| dbc215c44f | |||
| 43c5cf4275 | |||
| 41f1f376bc | |||
| cad7fef454 | |||
| 93791aea15 | |||
| 884dcde289 | |||
| 21f993a951 | |||
| 4784228831 | |||
| c6e3e0c07e | |||
| 30685e7252 | |||
| 12a398a65c | |||
| 71360e37de | |||
| f99b8ea9ee | |||
| 2854b928f6 | |||
| 14e1f1d003 | |||
| 85c490bd06 | |||
| 96d78f8bda | |||
| 5f65aebe63 | |||
| cd96da9cd5 | |||
| 674b66b682 | |||
| 934851456b | |||
| afca396654 | |||
| b62f62671d | |||
| eb8913479b | |||
| 4918b412b2 | |||
| a78f5803a5 | |||
| 0d1799cbf7 | |||
| 438db40d0e | |||
| aca5e1fe87 | |||
| 8aaf24ff87 | |||
| 75dbea1ab7 | |||
| 61616dd2b9 | |||
| ceef7964af | |||
| ec12e89653 | |||
| 386ca41a5d | |||
| a8fd5a4f46 | |||
| 4590383a97 | |||
| 405208cf92 | |||
| f19c37276a | |||
| 3269034bfb | |||
| e5f99af43b | |||
| 2866ca9537 | |||
| a377eae2f4 | |||
| dbd8ce2380 | |||
| 0741351318 | |||
| ab9e02adfc | |||
| 12ff690619 | |||
| 5039012fcb | |||
| 75af57a7b3 | |||
| 9027eee99f | |||
| 50fe373f1e | |||
| 2c546867a8 | |||
| 9dad934a40 | |||
| 34dbb4c794 | |||
| 7472af66ef | |||
| f293fb287d | |||
| 7656e84c20 | |||
| c524e8d3b7 | |||
| 7f13ce491b | |||
| 6c16aabce0 | |||
| f5240b1766 | |||
| cc5a95d725 | |||
| 8ba63988d8 | |||
| 289f307a52 | |||
| 91ac36c835 | |||
| 503e4b2bac | |||
| c39ddc3b45 | |||
| 1163c4ad5e | |||
| e497734c07 | |||
| 77fef33cbf | |||
| 81189db1e1 | |||
| 054a3d005e | |||
| dfbff64430 | |||
| 2b4046a82e | |||
| 9eb879fc37 | |||
| 9e63ee2735 | |||
| 9950e51d45 | |||
| 70fdd4bdc3 | |||
| e855f7dd01 | |||
| 123842dfda | |||
| 1338513f82 | |||
| c9c88dd82d | |||
| 02a5395453 | |||
| 7ba2f6b827 | |||
| f1b5dc8ef3 | |||
| 78875572e9 | |||
| f487560ec5 | |||
| f752090c78 | |||
| 96f5b2b82a | |||
| 80292ae579 | |||
| 1d156ac506 | |||
| dc5586f859 | |||
| 1a9f36ce9e | |||
| 203c8a6588 | |||
| 2e6cf8d869 | |||
| b1827dd352 | |||
| 0d2dddddbc | |||
| 1d8e1957ba | |||
| dc957cb3cc | |||
| c314fa0bf3 | |||
| c5ebfac647 | |||
| 4adea11a93 | |||
| e6f49b9f1f | |||
| 9cde569c7d | |||
| 91e7c7434c | |||
| ffef5dfdee | |||
| 409dd69fcb | |||
| 064cf5103a | |||
| 7e3a613a93 | |||
| e7c49f6d67 | |||
| 022b83ab32 | |||
| 551d705ee1 | |||
| 83f73c7fa9 | |||
| cc8cb4f4f1 | |||
| 496eab7d09 | |||
| 5197c967c2 | |||
| 74b615dba7 | |||
| b67ee797cb | |||
| 4228084810 | |||
| b514c7972d | |||
| 83d9042a47 | |||
| a28c403093 | |||
| 2927fa5ff7 | |||
| f39a7f8d6f | |||
| 397610d8ab | |||
| fb170bb7c4 | |||
| d93f6e8720 | |||
| 668de93829 | |||
| 7cecd859ae | |||
| fea2966f62 | |||
| 6efa308e85 | |||
| 82b50a60bc | |||
| f52c4f7900 | |||
| 2fb621993d | |||
| cf663de2fc | |||
| 65c215fa9c | |||
| 8af972c20b | |||
| 027e4046a2 | |||
| 4c256348fc | |||
| 6e3275c05c | |||
| 3518a3f3b6 | |||
| 2b6b0cb38b | |||
| f56a836ffd | |||
| 2d963a9d23 | |||
| 4423b06807 | |||
| 1f9223b476 | |||
| b4ecf5d257 | |||
| 0dd13cbab1 | |||
| 48e50430fe | |||
| ac5611fdca | |||
| 50c3dbc0a0 | |||
| ddd840d2df | |||
| c0c9878fad | |||
| c4fc8a8aef | |||
| 0620b096db | |||
| f998491beb | |||
| 55a6ea4fca | |||
| 72fc5beb98 | |||
| a45b607fe7 | |||
| adfdf04240 | |||
| faa7281993 | |||
| 2d0f4e7881 | |||
| ce9183ffd6 | |||
| 3a5508653b | |||
| 7e4e28037c | |||
| d2d8ea8249 | |||
| ba835bec3e | |||
| 9850874dfd | |||
| 51a8285ba2 | |||
| e12150d026 | |||
| 54bc241984 | |||
| a698f83c45 | |||
| 854e7cc67e | |||
| c3920cbcc0 | |||
| 6a68cebc93 | |||
| ba474205c8 | |||
| dffe5bfffb | |||
| 7615c0d2ba | |||
| 216353837c | |||
| 7f180b2c50 | |||
| ce46e0f351 | |||
| 0999b93b47 | |||
| 63c21cf7c2 | |||
| 72ab1dc8a0 | |||
| 131e1ec11d | |||
| 4d60f5b8d9 | |||
| 6962a05c96 | |||
| 25ee57da1c | |||
| 37e41c9c8e | |||
| 69b6821deb | |||
| 8e6078515a | |||
| 73868dbcbf | |||
| 49ae774d48 | |||
| 5b3e2da95b | |||
| 1a5e513526 | |||
| ad83e95a46 | |||
| bdd5c78d39 | |||
| 6a0c2213a5 | |||
| 99515591f1 | |||
| b8228844df | |||
| 7613bc32c2 | |||
| 4d81dc49fa | |||
| 8c65775310 | |||
| 74c9d0ca6f | |||
| 871bb9da3a | |||
| 8ae1fb4fdb | |||
| 1a39182d80 | |||
| a1a837298f | |||
| 74b0e38f7e | |||
| c1f48b21a4 | |||
| a496c04701 | |||
| 590a7c7dfa | |||
| 796629b4e6 | |||
| ced3b491ff | |||
| 78aebd7c5d | |||
| 9532601efe | |||
| bd34a729b3 | |||
| 23990b581b | |||
| f786da52bb | |||
| ee145d6f65 | |||
| c310ad65ef | |||
| 26284e2412 | |||
| 6e4cd6912b | |||
| 974313c30b | |||
| 8ed586e2f3 | |||
| f016d2cdf4 | |||
| c79e041777 | |||
| a50984d2cb | |||
| 819945dcba | |||
| 9f81bff020 | |||
| b45594515e | |||
| 3a5d701195 | |||
| 34e037725c | |||
| b4fd7b6a66 | |||
| 81af324260 | |||
| a5541745c3 | |||
| 39d691d528 | |||
| 0c1537e5ef | |||
| 3405f853e3 | |||
| 8b0b53029c | |||
| f6012d3b03 | |||
| f4072c183b | |||
| 9a4a8eb742 | |||
| dbfb547af9 | |||
| 0492b867aa | |||
| b7cbb3055a | |||
| c3c18e22ea | |||
| 9318d00a5b | |||
| a5940a9124 | |||
| 9a8986834e | |||
| c5d2c60d70 | |||
| 52d2cf5cb4 | |||
| a63763bfe8 | |||
| 15633d07f0 | |||
| 04f7c7fdd4 | |||
| 1c6ee88912 | |||
| c53b2f8ed8 | |||
| 5c2c18268b | |||
| 5fd0ffaa4f | |||
| 4d0b0d0c8d | |||
| 45df497ee6 | |||
| 2dd83b111f | |||
| 6b599bf53d | |||
| d10e4a3d68 | |||
| 7f1c4a4d18 | |||
| c3d4f6cacd | |||
| dad3d10a83 | |||
| 5c06624f8c | |||
| cf428a14a3 | |||
| a0e09b80cf | |||
| 0e388dabf5 | |||
| 27a5153b8a | |||
| cad3b4c905 | |||
| bda82a8198 | |||
| b9d14e03f1 | |||
| ea46b98400 | |||
| 123f09da6c | |||
| 4155cd0963 | |||
| 27f82aef94 | |||
| 9f9d685353 | |||
| 9b97a3fa61 | |||
| 5b519320c2 | |||
| 790782b799 | |||
| 8c5188dfd0 | |||
| d793e67b56 | |||
| 9bccf7c405 | |||
| 291daa434c | |||
| ef5daad1dd | |||
| 6cb5c95c1f | |||
| 37068a3b89 | |||
| 5901748b76 | |||
| 945a4052e2 | |||
| cd887f8615 | |||
| 3f3540dd2b | |||
| b4b0c6cedd | |||
| afd91d2ae3 | |||
| e0e1799902 | |||
| e64d77feba | |||
| ac944c43bb | |||
| aec2f85165 | |||
| 85a7df29db | |||
| 18d56f32cf | |||
| d1aed5007f | |||
| e2b20eb89b | |||
| a5fa022eb6 | |||
| 79e7d7a010 | |||
| 431ff76e19 | |||
| dc5414284a | |||
| a59e57572c | |||
| 2827b2ae01 | |||
| fc5024be90 | |||
| dab1103279 | |||
| f5dabc134a | |||
| 9e57125c96 | |||
| 8a14327aaf | |||
| b9311e841c | |||
| 46b80b9a18 | |||
| b6a670689c | |||
| 1a3fbe0a7a | |||
| 66a2b4c225 | |||
| 83c47454c6 | |||
| 0947e209ce | |||
| 1f12ef2151 | |||
| 8de80c00a8 | |||
| b79ebdfbef | |||
| a8604dd150 | |||
| c676f5b91f | |||
| 41054ed819 | |||
| d95204513f | |||
| 1850cc68d8 | |||
| c1c07b861e | |||
| 244aebb0f5 | |||
| ae49e3cf2f | |||
| 40f04d6800 | |||
| bc0ba8c116 | |||
| 746951b55f | |||
| 89d4698155 | |||
| 415cc71f74 | |||
| 0e41144a10 | |||
| b5dbb30b02 | |||
| bc40123891 | |||
| f465e34ea3 | |||
| eca925a4eb | |||
| 6442728931 | |||
| 7e67d0dac6 | |||
| 2fdc214c21 | |||
| 652be94eb2 | |||
| 93a5bafc38 | |||
| c2de979527 | |||
| fd78bdf8af | |||
| e0e82e7246 | |||
| cb749480a4 | |||
| 5ec8f1a904 | |||
| 83b20d9086 | |||
| 211f09fe19 | |||
| 03c1fb0ff2 | |||
| 834412ad31 | |||
| 7ae0aa198e | |||
| 5d24d90a7c | |||
| b5923539c2 | |||
| 3a9d49549c | |||
| ff272a5385 | |||
| 327875df6a | |||
| 9bbb213bc2 | |||
| 3122c1a058 | |||
| af055ab6dd | |||
| e34d84deee | |||
| 0596faf51e | |||
| 5f1867c14f | |||
| 1c6b204e80 | |||
| 29957780cb | |||
| fd0d783e7d | |||
| 5ec025a70e | |||
| dc0c6401de | |||
| 06fc7b391f | |||
| 8c91f1c52d | |||
| 968d991a1a | |||
| f4f75f342c | |||
| ba32832619 | |||
| 186811156e | |||
| 261c5541cd | |||
| 5c14d20f78 | |||
| c67731f852 | |||
| 0336f4afea | |||
| ace4c77bdc | |||
| ffe3f08705 | |||
| d06d1674d1 | |||
| a66c67e86d | |||
| 0cfc4119ba | |||
| af0354a4d5 | |||
| e696c0c636 | |||
| 6aeec1e89c | |||
| e406b27170 | |||
| 55cead87c8 | |||
| aaf840d358 | |||
| af8470e254 | |||
| c7809c62ce | |||
| cb47883328 | |||
| 588e0609fd | |||
| 091d2efb2e | |||
| e5c5985f0f | |||
| b7627fd469 | |||
| 22c0f8f8c6 | |||
| a7d2a427ec | |||
| 14cc4079a3 | |||
| bb93b0895e | |||
| 1a3e2eec70 | |||
| 926b77c770 | |||
| a4472bb449 | |||
| cd04d7a760 | |||
| 6356c55c81 | |||
| 37ed99d0fb | |||
| 72475fbcc2 | |||
| 0096aeeb1b | |||
| 91ccc71fcd | |||
| b00f9795bf | |||
| 255b9a9c2d | |||
| 8eab4933ae | |||
| 031f443238 | |||
| 72d0fca28b | |||
| 7aeadb531f | |||
| 4e213ea79e | |||
| b99ea61115 | |||
| 4a025f82e4 | |||
| 6ddaf0366c | |||
| 62183ecb58 | |||
| 3ee92b068b | |||
| 4dc3a0e8d1 | |||
| 43652ce65d | |||
| b08c8a1719 | |||
| 0385f13928 | |||
| 3bf2c585b8 | |||
| 7d05e4536b | |||
| 0553f3b5a2 | |||
| c01a0d79e1 | |||
| adc094005f | |||
| 5b7557bd45 | |||
| 6aa3905922 | |||
| aa75aaaffb | |||
| 62ab4b7a00 | |||
| 145dc5c99e | |||
| 82a566aee1 | |||
| 42058ff6d6 | |||
| 9841cfba38 | |||
| 6c8099efe5 | |||
| 8ba87d57cd | |||
| 4d57faa197 | |||
| 4129a8f56e | |||
| 1aa91fe2f5 | |||
| 5c399f7117 | |||
| 3c07f03651 | |||
| b26b6eab09 | |||
| b2579c031d | |||
| 98e2458a03 | |||
| b30e26ae7e | |||
| fd158b956a | |||
| 109788ebbb | |||
| ffdef596ad | |||
| 0a54f7c44c | |||
| d5d995de5f | |||
| 304c38db1e | |||
| ef631d12cc | |||
| 4006980b29 | |||
| f9c3c107bd | |||
| 7106b100ce | |||
| e2d56c70b1 | |||
| 1a930021b6 | |||
| 66699b9572 | |||
| 99be12e648 | |||
| dde4e1b33c | |||
| 88711eac2f | |||
| f21ca83179 | |||
| f43950874d | |||
| a3794158f0 | |||
| 7f52b31b40 | |||
| 18a864a049 | |||
| 4eac6457ea | |||
| df0d4b7032 | |||
| f0942c7795 | |||
| 396325f397 | |||
| 63015195b0 | |||
| e821397e6c | |||
| aae68853ef | |||
| f904aafd4a | |||
| 38b2508de6 | |||
| 8fee57157a | |||
| 6207cea9f1 | |||
| c299752e44 | |||
| 82e4f832eb | |||
| c8221c07ef | |||
| 710fc16f62 | |||
| 331cddcabb | |||
| b9a0d9b847 | |||
| 9c59a38f7a | |||
| b573999d33 | |||
| 35d8698ca0 | |||
| 23e4574667 | |||
| 7db15c7c72 | |||
| d94b220319 | |||
| acfc106f40 | |||
| 856400048b | |||
| a7c2a92f16 | |||
| fc3d700a57 | |||
| a60973ffee | |||
| a1114235d6 | |||
| 928b0b6f4d | |||
| 60d6d49eaa | |||
| 804a670bf1 | |||
| e51bb05564 | |||
| a21ee21652 | |||
| 8b2d162733 | |||
| cc76c9f31e | |||
| aa7a5037fa | |||
| 0acb1f54fc | |||
| 403ed8cae6 | |||
| 3db229ef68 | |||
| f0d22267c3 | |||
| 796e511626 | |||
| 06e757d3b2 | |||
| 0c8032d097 | |||
| 7cd86d1301 | |||
| 781df3ab06 | |||
| 88b9124185 | |||
| 48724f816c | |||
| 1a184a73de | |||
| e4b5cf36e1 | |||
| dff182cbc5 | |||
| fb8245539f | |||
| bb3cb4a6ad | |||
| fb2e30c484 | |||
| 73c5292cc1 | |||
| 800074dced | |||
| f78a572a3c | |||
| 97b20cec19 | |||
| fd833f683b | |||
| 076d9b3083 | |||
| 3a2a1b0dc8 | |||
| 20c19cac6f | |||
| 8205eeed22 | |||
| 5eb2cff6e9 | |||
| d822d9cd29 | |||
| 4142132ebc | |||
| fb2746323b | |||
| d9172efae9 | |||
| 8e04f98e26 | |||
| 51587fbb6b | |||
| cf06d69822 | |||
| 22751de2f6 | |||
| 04fbf5d3d2 | |||
| 936ba73fe4 | |||
| 05efd0f318 | |||
| ce570eddd2 | |||
| 5b1f269344 | |||
| 0806d9852a | |||
| c3e38d7133 | |||
| a322717e0e | |||
| dcb84dd442 | |||
| ac257a9dc1 | |||
| 25bfb65b6d | |||
| 96f38e597c | |||
| 383b728ddc | |||
| 003cfbdd6c | |||
| a67ae50d16 | |||
| ac3dcb5e17 | |||
| 833f82edff | |||
| 76f55111ec | |||
| f418bbfd2f | |||
| b02eba510d | |||
| 7a77b9bfe7 | |||
| c34b6774b9 | |||
| f3fe5b013a | |||
| 37be2cc8fa | |||
| e3c26aa5fa | |||
| e21f538aa4 | |||
| c9cd87bae5 | |||
| 9a8cb45510 | |||
| 68b6a58ac5 | |||
| 5b5cdbfb7f | |||
| cf4e505743 | |||
| 8464ed439e | |||
| 9e49a45db9 | |||
| 8dc5f2a580 | |||
| 6bb848a675 | |||
| 8edf61f9e7 | |||
| 96d2699a2d | |||
| 614761efd7 | |||
| 154f0180e1 | |||
| 593ad7ad12 | |||
| 2372f1890c | |||
| ad5485506d | |||
| ea7399541f | |||
| 455452bf77 | |||
| b2941b67d6 | |||
| bc898d6097 | |||
| 88b27fa378 | |||
| 3c2af4bd1a | |||
| f5d6c4983c | |||
| 08a8f7f500 | |||
| f92754c2ac | |||
| d4e39ca12d | |||
| 868c64dda5 | |||
| 09dfc1ff1d | |||
| 303eba87ca | |||
| d8c46ba7ef | |||
| 649f541077 | |||
| 858678ea93 | |||
| 48bba76c74 | |||
| 3f32e6cd2f | |||
| 253a78b236 | |||
| 69de9a98f0 | |||
| 0f4534c34c | |||
| a9476a98b1 | |||
| e56d885007 | |||
| b6e7bfb9bc | |||
| a377e3d3bb | |||
| 752b191ad7 | |||
| b19e752314 | |||
| 1e8e1789cd | |||
| 1bc1f619ff | |||
| b4b106222e | |||
| 4cc51c3700 | |||
| 8b0632495b | |||
| 7ed847fecb | |||
| f61d34c340 | |||
| 5c8d18d1c9 | |||
| 401d0e5c19 | |||
| e7bdb2d4ed | |||
| f9ce076a1a | |||
| a14e5f08ee | |||
| ab1176d4f6 | |||
| eb100351a6 | |||
| a546a4d57b | |||
| 1ac267fa99 | |||
| 2a36fa932c | |||
| 8f1141b6e0 | |||
| ed5d590a6b | |||
| 13afd3d9c4 | |||
| d821e0a1f8 | |||
| f850c52f5d | |||
| 22dd20884d | |||
| 578083d994 | |||
| 29a5fa3f74 | |||
| 1bcc23862c | |||
| 4103ed7221 | |||
| ce6155fe47 | |||
| e147a78ee0 | |||
| 4b66c86fd6 | |||
| aa435bbfc4 | |||
| a4dbeff5ea | |||
| 61e70342a4 | |||
| f7d488ba84 | |||
| 01a95f5445 | |||
| bdce8ecafe | |||
| bb55fc2278 | |||
| a778f4c715 | |||
| bea5bd7857 | |||
| 10aec7bcac | |||
| c1ea39aa14 | |||
| 5da119e065 | |||
| 27eebe474e | |||
| 16d656f010 | |||
| eeb0a786fd | |||
| 32062d7c0f | |||
| b627f4e489 | |||
| 389dfd08f7 | |||
| 8a681a7e95 | |||
| 6eba434c3e | |||
| 816df56ef1 | |||
| a02fc28785 | |||
| 753f35f81b | |||
| fcfe39aa2b | |||
| d5799af44e | |||
| 3d07290231 | |||
| a19a6815e9 | |||
| 628b0184de | |||
| 38b06fdd06 | |||
| 498a0f4b5d | |||
| a96ea6c5ac | |||
| b6ac954910 | |||
| 76b59921f1 | |||
| 507bf66f47 | |||
| d3191611c6 | |||
| 7f540472da | |||
| cd2d8ae3c9 | |||
| 01a412efd0 | |||
| 2929603565 | |||
| e4b5158fe3 | |||
| 4f4300042b | |||
| bd8503b25d | |||
| 3c8054c93b | |||
| 20aa65f16a | |||
| c82762a3fc | |||
| 4ddada1fe3 | |||
| 2f2dbbde3e | |||
| adbcca00de | |||
| 65a7c3440b | |||
| 4862a65b21 | |||
| 68fa8ac058 | |||
| d8b190c2b7 | |||
| 20a6fcbeb7 | |||
| 2fb40fd050 | |||
| 9634d7c50d | |||
| 9dbee39d34 | |||
| 56098c6617 | |||
| 9c81487f98 | |||
| 8841781e6b | |||
| ce7e5ad7ad | |||
| 512a769742 | |||
| 1507aff8e6 | |||
| a74ed3e4c7 | |||
| 1d6019c9d2 | |||
| 9385c25ea9 | |||
| e84d5eca8f | |||
| 84621474c0 | |||
| 42fca271ce | |||
| 766756f64a | |||
| 0a7029f7bc | |||
| 126b5ed67d | |||
| 4531f88e71 | |||
| dace0259aa | |||
| 2d5671323f | |||
| 7db3eab38c | |||
| c7b0759ff0 | |||
| 202c5da350 | |||
| 8bb46d78aa | |||
| 64a67cf169 | |||
| 83886ed4ba | |||
| 40af5fb945 | |||
| 3554572dc2 | |||
| 999976645d | |||
| 458ede252a | |||
| 1438f42616 | |||
| b72af98a1b | |||
| d463030271 | |||
| de86f687ea | |||
| 566d938b6c | |||
| 7ac47377f1 | |||
| c27a9bf95b | |||
| 9004485aa9 | |||
| 845b678e18 | |||
| ab9da5207c | |||
| e37c76301d | |||
| 8c545f6d21 | |||
| 286b6d1a11 | |||
| b66530f8fd | |||
| 7c5dc5bb39 | |||
| 19a0529b42 | |||
| 424c269c22 | |||
| 376c09d1ea | |||
| c14877916a | |||
| 4d626377ef | |||
| 69fa5bc733 | |||
| 20830cb979 | |||
| ccdd16292a | |||
| 5540ca4e32 | |||
| a5372313c4 | |||
| 091625d7d9 | |||
| a27ddfe746 | |||
| 5ea7798c52 | |||
| ee5d2b12c1 | |||
| 06e502c63d | |||
| 92682c62dc | |||
| d8df70eddd | |||
| cb2581252b | |||
| a47f94ebb2 | |||
| 9d498d4ca2 | |||
| 85c0d8503b | |||
| d604074d82 | |||
| d511b58c8f | |||
| 49ce670281 | |||
| 55ebc7d74a | |||
| a7e6a75c68 | |||
| c738725d94 | |||
| b87d63ced9 | |||
| 75ef5995ea | |||
| 16971aaa9c | |||
| 0b5b554eec | |||
| 917bf91583 | |||
| 355257104d | |||
| 47d44851f0 | |||
| f84506ce01 | |||
| 854a26e3f4 | |||
| ddb6447165 | |||
| 4d2721db50 | |||
| d22b24d98f | |||
| 7701ea0a8c | |||
| a35577444b | |||
| cab16b0893 | |||
| bc5d0cf994 | |||
| f2b59d531b | |||
| 9699092d9f | |||
| 7d9cd39d85 | |||
| bbd6457341 | |||
| 9f957c2197 | |||
| 248b71311d | |||
| 578a373248 | |||
| 59ae291e1f | |||
| 0472e6711b | |||
| d9c8e5ccba | |||
| 080258dc49 | |||
| 7237b4d136 | |||
| a58b3394e9 | |||
| d5144d0dd4 | |||
| 677c41efb9 | |||
| 765f96254e | |||
| dd8bf8db35 | |||
| e0a12bc859 | |||
| 1d2eda4175 | |||
| e4b648a99c | |||
| 533d22b050 | |||
| 2b9cb196d0 | |||
| 517dfcf2a7 | |||
| b715bd178f | |||
| 97af90c004 | |||
| 8d53358d33 | |||
| 2c026837e8 | |||
| 6d8947fe74 | |||
| 65f24c2c03 | |||
| 4889f2b51a | |||
| 2b2dd34c60 | |||
| 07523f82ce | |||
| aff7a61bca | |||
| 542dd573f2 | |||
| 4abfbd1973 | |||
| 93d4536ba6 | |||
| 72e7006cc3 | |||
| 94ed91f95c | |||
| baf40ba50e | |||
| 51c546fa5d | |||
| 84b464090c | |||
| 7db0b59895 | |||
| 94b9a3a4dc | |||
| 1c5bbb8fa0 | |||
| 994d8bac71 | |||
| bfac1524a8 | |||
| 2ceca9c034 | |||
| 02144db221 | |||
| 8d0eb55691 | |||
| 5442107405 | |||
| fe493d1dab | |||
| 0afbfb12cd | |||
| b5780094e7 | |||
| 0fd6032bfc | |||
| 65c54655ff | |||
| 286651c1b3 | |||
| c7bf0d8fb8 | |||
| 0b8ae55150 | |||
| b99bc62065 | |||
| 615280e01b | |||
| 72ef6da243 | |||
| 5cab727b2d | |||
| b9b39caf86 | |||
| 96acf759ff | |||
| c5c2b24a9d | |||
| 6d87da2474 | |||
| d75d1687a4 | |||
| f425e6ba63 | |||
| fd2023e9d6 | |||
| e8db28e112 | |||
| 78fcc5c1c7 | |||
| 08e8c65a18 | |||
| dd3d05c813 | |||
| 8777da9491 | |||
| cb3c0fe0d4 | |||
| 1c0cbafa3e | |||
| c5112e5031 | |||
| 196289edb3 | |||
| aab19b289b | |||
| 801e2cdcf4 | |||
| 0b70ed158b | |||
| de3c7de7e5 | |||
| cba7cbfdfa | |||
| f5ab1d8e8a | |||
| 7744f58c8c | |||
| 981e250d8c | |||
| 297db71850 | |||
| 24846fbae4 | |||
| ad198ea047 | |||
| 526ba338a8 | |||
| cfb289f906 | |||
| 8d829b2886 | |||
| bdc52ece9d | |||
| 224fcf94b8 | |||
| 3f704f1f35 | |||
| 8611bb9755 | |||
| 108ba53be2 | |||
| 96e9d54f4e | |||
| 7f95c520b2 | |||
| b097d67d71 | |||
| 3a5eb96410 | |||
| 576d14dca0 | |||
| a6945bc1f3 | |||
| 6094a520e2 | |||
| d22fee887c | |||
| 83bd83b629 | |||
| abd2f9485c | |||
| f448572e0a | |||
| 2fa6c9de94 | |||
| 5e12a666e3 | |||
| bb1705a774 | |||
| 974e96c7b4 | |||
| 4e3b4c0118 | |||
| e69d0c8922 | |||
| 5e8d17f144 | |||
| 774495262e | |||
| a708162b15 | |||
| 61bfca90d1 | |||
| c4bf3da5d4 | |||
| 93ba99e36f | |||
| a99a02c94c | |||
| 998eb02621 | |||
| a18d2ee305 | |||
| 663fdd426f | |||
| 72e2e6daca | |||
| 9b17d3513a | |||
| 06d0c715af | |||
| 9d3c44ef15 | |||
| 8f06b177b5 | |||
| 9e1cdcc93e | |||
| 2101b2e1c7 | |||
| c376f3add3 | |||
| 503dfd6a55 | |||
| 4fc036f4ea | |||
| dbad1088ea | |||
| b7c413c96a | |||
| 1c65ca4a5a | |||
| 5d0124369e | |||
| 3f8a3a5e03 | |||
| 60d8d18a0f | |||
| 212d9e9f55 | |||
| f0c35be21f | |||
| 2f32534cf9 | |||
| 7016446be7 | |||
| 0927ff0e5e | |||
| 4ef2956eb1 | |||
| a893b063de | |||
| 7cc7086dbb | |||
| 092a9c3f19 | |||
| ac5de29c71 | |||
| 6b307b3bd4 | |||
| 9e0c4d4b2a | |||
| d66b1c1bbb | |||
| 3a2c5f7b11 | |||
| 411f661174 | |||
| a238927749 | |||
| 10c9bec2cf | |||
| ffa9d165f2 | |||
| 6a8e55ce15 | |||
| 2c9ea6d19c | |||
| 902ac91b95 | |||
| 60cdea6787 | |||
| 948f428546 | |||
| 94a7829882 | |||
| 4b3fda18d4 | |||
| 778d878349 | |||
| c77d38fca0 | |||
| 042047d7c1 | |||
| 6f132f745b | |||
| 2264fa0d29 | |||
| 8ad5e26c2f | |||
| 22fae938c4 | |||
| 359e442947 | |||
| 0a6b9a1040 | |||
| 8d72596a33 | |||
| e78a46ab24 | |||
| d3132ad570 | |||
| eba485034a | |||
| 1b8afe3134 | |||
| 04c2bec58f | |||
| 6dc110e776 | |||
| a4f53e5273 | |||
| 5e5b4f1536 | |||
| a2926ef47e | |||
| 7cc5ccd2c5 | |||
| 80419a1edf | |||
| db110733a4 | |||
| 1763f666b5 | |||
| 16c703fe31 | |||
| bbcee3f461 | |||
| 56162b650c | |||
| af7e52295a | |||
| c23e459b89 | |||
| 70cffda3f9 | |||
| 7c71f1058d | |||
| a32f76720a | |||
| 84419820b8 | |||
| 0bc3ea51ec | |||
| f3b7d776e8 | |||
| cfb1f63567 | |||
| 54a8c8c3a4 | |||
| 6d0f80f06a | |||
| 4b2708e1e4 | |||
| 80b4730749 | |||
| 00371ef09e | |||
| 646eb4a3b0 | |||
| 0aee428aaf | |||
| 6a003c9035 | |||
| 7fd084bb0c | |||
| 1747395b3e | |||
| b24faa1e08 | |||
| 0a25df39ca | |||
| c0f18d7a10 | |||
| 8225803ec0 | |||
| 42e90734b2 | |||
| 06481118ad | |||
| 875e178c0b | |||
| c5c3c596a0 | |||
| a5fa5727d3 | |||
| 59cdc66355 | |||
| 73551847fb | |||
| 2269eee8cc | |||
| 958ded6988 | |||
| 2b70adc1f6 | |||
| 6a0b36cfa6 | |||
| e80fc1a513 | |||
| 19a51d82be | |||
| 9801337c61 | |||
| 6978516f79 | |||
| ee4a1f762e | |||
| ab49735268 | |||
| 1c5212d756 | |||
| b159dd4452 | |||
| e137e727f6 | |||
| 606aaa0d56 | |||
| ca78149ba3 | |||
| 70a6ca5d77 | |||
| d83d1f3e5a | |||
| ae954b00cb | |||
| d3634d2c8a | |||
| 41a394367b | |||
| 676f963e19 | |||
| b6e4302087 | |||
| 75bf33fbba | |||
| c76ac7b249 | |||
| 57779e960b | |||
| da863956b3 | |||
| d6a40a7bc9 | |||
| 233c35647d | |||
| 43eb6607ba | |||
| 3212a35efb | |||
| c4f94495a8 | |||
| 948fc40b3e | |||
| 427cfe0796 | |||
| 4b135d7586 | |||
| f86b00eced | |||
| 7fb0dffc40 | |||
| da82581eb0 | |||
| ece82d813c | |||
| eb8dcfa053 | |||
| 82e1ce4d7a | |||
| c25c339feb | |||
| 1a4c909cc3 | |||
| ff776293a6 | |||
| 8ac0a27f33 | |||
| f2680bb1de | |||
| bbaf305129 | |||
| c21e2f4a1e | |||
| c763824803 | |||
| 485fe8085c | |||
| c691c349dd | |||
| 0dff13c43f | |||
| 725e44f048 | |||
| 12e916fd0d | |||
| 05da8c0456 | |||
| 1735b64d76 | |||
| 1785e5c3a6 | |||
| ab5eb5c34c | |||
| 94f15d0f4f | |||
| 4fc346ac90 | |||
| ec135e30ed | |||
| dff3d0b04c | |||
| aba8896ecf | |||
| a386a1baad | |||
| cf50132870 | |||
| 62ace421e6 | |||
| dde2e4e780 | |||
| 6c785c7ea2 | |||
| d977407766 | |||
| 71bea66ab7 | |||
| bc13c7b176 | |||
| 9f5ec9113c | |||
| 00565cccb9 | |||
| 8e1cdac3a2 | |||
| 46c0a309da | |||
| 70242c4044 | |||
| 92d4681a23 | |||
| 781582c043 | |||
| e986557d87 | |||
| ef78196d1e | |||
| d8e6aec93d | |||
| 1acde80d61 | |||
| 808c0167f1 | |||
| 69f7f5c236 | |||
| 63e6df0481 | |||
| ea95a7bbd1 | |||
| c77ba121a6 | |||
| fe60d2e26f | |||
| dfb01ce165 | |||
| e3402a1e44 | |||
| e45c126a3f | |||
| 7b9007c699 | |||
| 142a6d6512 | |||
| 18a7875504 | |||
| f3bb4187d7 | |||
| d349cc3e8d | |||
| f6ad67693e | |||
| 43d409b0d7 | |||
| 09a9498d0d | |||
| 05deafdffb | |||
| bd5f2b8f68 | |||
| fd85f1f51a | |||
| 8433ce7f3e | |||
| 94c128ea3d | |||
| a4a0a1d227 | |||
| 47e47e3cc3 | |||
| eb1443a45b | |||
| 5892d62391 | |||
| 9113756923 | |||
| 60c7a4a9a1 | |||
| 79af774569 | |||
| 001ad7490c | |||
| c6ab0e7b8a | |||
| 1b0ea06c6b | |||
| a92a829ca7 | |||
| 199a67fdf3 | |||
| 4451389b6a | |||
| 243d29f7a7 | |||
| 0fd55a3f7c | |||
| a78d917fd2 | |||
| 6842da1d68 | |||
| 21081edfa3 | |||
| 2bdb5a52c4 | |||
| e0b326c565 | |||
| 9490bf29cc | |||
| 30377ab84e | |||
| 99dea8891e | |||
| 820a4efc76 | |||
| 2f6ef7906f | |||
| dc15ede3dc | |||
| f52bcd2415 | |||
| f366b50550 | |||
| 31d9ab048d | |||
| 4ba7306855 | |||
| 3adfb3711f | |||
| 4e9a1839eb | |||
| 0de8035ca9 | |||
| b5eadb64a1 | |||
| f2b629fe6d | |||
| 2fc14ecd0e | |||
| 60cc564743 | |||
| 81d3d2e620 | |||
| 48feb9f656 | |||
| e246e4c0b7 | |||
| 2c9edc47e1 | |||
| 00a012df78 | |||
| 6d50454e72 | |||
| 8eb90ebf06 | |||
| ec0590c79a | |||
| 9c2ed36b5c | |||
| f48c26915f | |||
| 1ab9012446 | |||
| d25b62f7d9 | |||
| cccb5d7785 | |||
| 06d9245778 | |||
| 3d4f35e881 | |||
| b6c3200419 | |||
| 56d0669510 | |||
| 05c4fd37cc | |||
| af00110973 | |||
| da691fa978 | |||
| 3f4148258f | |||
| a03ea3b4d8 | |||
| 4c92da9ab5 | |||
| 31a2fdbcb6 | |||
| 7921f1e548 | |||
| 8ac3f2a6f7 | |||
| 2da6894ee5 | |||
| 9265bc86bc | |||
| c5cd71c8c3 | |||
| 3ecf59c32a | |||
| da2109b310 | |||
| 6d6caa0406 | |||
| e82c1d3a20 | |||
| 500947eb1f | |||
| fe51b671c7 | |||
| 65b72298df | |||
| ba66b246d2 | |||
| 0c6a993f29 | |||
| 8a8de4a1b6 | |||
| 164332d752 | |||
| 173e00af3d | |||
| 4f1d39d3c4 | |||
| 72f20ddd11 | |||
| 0ba481a7a6 | |||
| 31b64b317b | |||
| 302107ed64 | |||
| ef7d3f1c52 | |||
| dffd3efd36 | |||
| a75f64d204 | |||
| c5e11cca58 | |||
| 744780861f | |||
| 498abf3c3d | |||
| 5e45897b8e | |||
| c7dc2d4969 | |||
| 8c163be070 | |||
| 75de4bd305 | |||
| b8fc0fb668 | |||
| 2c7b134931 | |||
| 1eb60f93e6 | |||
| d2e6658c36 | |||
| a24b870faa | |||
| af480e8283 | |||
| a786e4f40c | |||
| f6b65fe0fe | |||
| 1b80d7fd27 | |||
| 7d5be53c4d | |||
| a566509f5b | |||
| 528205f113 | |||
| 9fda3cd49a | |||
| a484628e13 | |||
| 595d92efd9 | |||
| f06dbdec56 | |||
| 9f5f77cbf9 | |||
| dcc1ef311c | |||
| f2d655d25a | |||
| 8d1e78485c | |||
| 10085f9bd9 | |||
| 219c650585 | |||
| ee1803448c | |||
| dee73d5632 | |||
| 6bde14be49 | |||
| 27e84ce518 | |||
| 9dbe3d8d0f | |||
| e6dd302be2 | |||
| 57dbe85ec7 | |||
| 7a36360c4a | |||
| a2eb0bf8d3 | |||
| 4360906883 | |||
| 6541a6d583 | |||
| 0baae9cf5a | |||
| 1a16b74f98 | |||
| 17c4d3e5fb | |||
| fda7165580 | |||
| 489daa6353 | |||
| d7e2ec0860 | |||
| ad409fecfa | |||
| 7d4a17e89c | |||
| a87d5ef8d8 | |||
| 7a4326f98d | |||
| 3c996407d5 | |||
| fb75717ae0 | |||
| 9fafb4f397 | |||
| b4558491e7 | |||
| 0cfa07bfbc | |||
| cb232ab5af | |||
| 71bd124088 | |||
| c615f63673 | |||
| c644224072 | |||
| 0e9f9f2fe1 | |||
| 5f0309d12b | |||
| 1368c2bd50 | |||
| 64e84b092f | |||
| e5cafab9c2 | |||
| 0b56524b7d | |||
| 62127df4f4 | |||
| 62b0ea6616 | |||
| 34dc917271 | |||
| dae04e2aeb | |||
| 17f5c5cd99 | |||
| bf75dec0ce | |||
| 2504c0ec10 | |||
| 08ab0715bd | |||
| 17e4c5cbb3 | |||
| fe0813502d | |||
| 6ff5affb58 | |||
| 56907436a3 | |||
| 33735c1314 | |||
| 872543b5aa | |||
| 1a5b771ae0 | |||
| 26d635791a | |||
| 7701135e67 | |||
| cdf783f2a6 | |||
| af89def3f9 | |||
| cd578db53a | |||
| f6a7af2b12 | |||
| d8877befeb | |||
| fcdd543616 | |||
| 86b680cd41 | |||
| 51b1945957 | |||
| f90a11e9cf | |||
| 4d4e88fb66 | |||
| dffa8e710a | |||
| e53b434dfe | |||
| bc4edb9bde | |||
| aaff54c490 | |||
| ae0a6497cb | |||
| 3a30f536d4 | |||
| 34bd9d93ad | |||
| f7f1d5f54d | |||
| ac625a9032 | |||
| 804d8c766f | |||
| f19da36005 | |||
| dddc38af4c | |||
| 241e265e02 | |||
| b2dd3ed699 | |||
| e67a1a6a1b | |||
| dd0586df6d | |||
| 24f9753bc0 | |||
| c56baf65e3 | |||
| 4dba1e3d94 | |||
| 1172152018 | |||
| 943b26dfea | |||
| c2715a2d7e | |||
| 33b0cda2a0 | |||
| c5c9311d00 | |||
| 076710672c | |||
| 53daa90bff | |||
| 3b4a667f61 | |||
| b6e38815e3 | |||
| 6471114c28 | |||
| 667aacc6c8 | |||
| e9300825dc | |||
| c4f937b4da | |||
| 4600e56b94 | |||
| a068b9ca3d | |||
| dafd914696 | |||
| e4189e92d0 | |||
| 361569ee3f | |||
| c08deb980b | |||
| b9f600409e | |||
| f09a8e3306 | |||
| d9e8625b15 | |||
| 545ea25e43 | |||
| 02d9e8328f | |||
| 42a0530777 | |||
| 3ce6a6fe95 | |||
| 9d1b2a7c72 | |||
| 06a3686739 | |||
| 3c2f186891 | |||
| 15c27c164f | |||
| ae8ca54a07 | |||
| c27c05ac5d | |||
| 3e0e3f9984 | |||
| 00e7b4a9d5 | |||
| f610489a61 | |||
| 9d15e8d0a4 | |||
| 6ae103850b | |||
| f1f3223922 | |||
| 8e392a9bff | |||
| e89cf9dbb4 | |||
| f8af307159 | |||
| 74473427df | |||
| 18f448c733 | |||
| 0a591a3f09 | |||
| 8dcc28376c | |||
| 3f3a02ba8c | |||
| d4b8b12687 | |||
| 9cfe396d0f | |||
| 85d8ad09c6 | |||
| 3fc2583470 | |||
| df9e039fce | |||
| 3efa54b68a | |||
| 90e7541bc1 | |||
| 91deb9b7c1 | |||
| 66c5424549 | |||
| c43751d2dc | |||
| 80baa6798b | |||
| 85407f3e11 | |||
| 789512b10a | |||
| 820d8da7d5 | |||
| 9db7830726 | |||
| ff83ce5254 | |||
| 69d16edfc1 | |||
| 77bd483ce4 | |||
| 5ff9efb7d6 | |||
| e4574b0260 | |||
| 126ab38475 | |||
| 18390443ff | |||
| 71e280061c | |||
| 7c50ee814d | |||
| 3ed6d4b2f7 | |||
| 7a2af3d013 | |||
| 1108cb7e9a | |||
| c0317aca58 | |||
| 015d5a4d65 | |||
| ea646a5723 | |||
| 9e508f0a02 | |||
| 070bf7c0f9 | |||
| 7224255775 | |||
| 6ff535c406 | |||
| 02e721ce17 | |||
| e0256dd535 | |||
| 328015bce7 | |||
| b03a33f534 | |||
| 7cd012de70 | |||
| 6ced14d0e8 | |||
| 9fd4abec25 | |||
| a452495c22 | |||
| 3c93167abb | |||
| 7717bff367 | |||
| be6db801ee | |||
| 427f808180 | |||
| 76bf4ae825 | |||
| e02a518583 | |||
| 79ddd122a4 | |||
| b1fa7e4e09 | |||
| 015c3004f5 | |||
| 550ba4f768 | |||
| 1d4069d4fa | |||
| b35b805a8e | |||
| 683705aa9b | |||
| cad0265e3c | |||
| 6a236c803a | |||
| d74e7b52cc |
@@ -5,6 +5,7 @@
|
||||
*.jpeg binary
|
||||
*.ico binary
|
||||
*.icns binary
|
||||
*.webp binary
|
||||
*.eot binary
|
||||
*.otf binary
|
||||
*.ttf binary
|
||||
|
||||
@@ -0,0 +1,189 @@
|
||||
# Alpha builds published to Cloudflare R2 with date versioning (e.g. 1.0.0-alpha-20260205).
|
||||
# Required repo secrets: R2_ACCESS_KEY_ID, R2_SECRET_ACCESS_KEY (from R2 API token in Cloudflare dashboard).
|
||||
name: Publish Alpha
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
version:
|
||||
description: 'Semantic version number (e.g., 1.0.0) - alpha suffix will be added automatically'
|
||||
required: false
|
||||
type: string
|
||||
schedule:
|
||||
# Run at 3:00 AM PST daily (11:00 UTC; PST = UTC-8)
|
||||
- cron: '0 11 * * *'
|
||||
|
||||
jobs:
|
||||
check-new-commits:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
has_new_commits: ${{ steps.manual.outputs.has_new_commits || steps.check.outputs['has-new-commits'] }}
|
||||
steps:
|
||||
- name: Set has new commits (manual trigger)
|
||||
id: manual
|
||||
if: github.event_name == 'workflow_dispatch'
|
||||
run: echo "has_new_commits=true" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Check for new commits (24 hr interval)
|
||||
id: check
|
||||
if: github.event_name != 'workflow_dispatch'
|
||||
uses: adriangl/check-new-commits-action@v1
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
seconds: 86400
|
||||
|
||||
prepare:
|
||||
needs: check-new-commits
|
||||
if: needs.check-new-commits.outputs.has_new_commits == 'true'
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
version: ${{ steps.version.outputs.version }}
|
||||
steps:
|
||||
- name: Checkout git repo
|
||||
uses: actions/checkout@v1
|
||||
|
||||
- name: Install Node and PNPM
|
||||
uses: pnpm/action-setup@v4.1.0
|
||||
with:
|
||||
version: 9
|
||||
|
||||
- name: Install dependencies
|
||||
run: pnpm install
|
||||
|
||||
- name: Set date-based alpha version
|
||||
id: version
|
||||
shell: pwsh
|
||||
run: |
|
||||
$inputVersion = "${{ github.event.inputs.version }}"
|
||||
Write-Host "Input version: $inputVersion"
|
||||
|
||||
if ($inputVersion -eq "" -or $inputVersion -eq "null") {
|
||||
# No input version provided (scheduled run or manual without input), auto-increment patch version
|
||||
Write-Host "No version provided, auto-incrementing patch version..."
|
||||
|
||||
$currentVersion = (Get-Content package.json | ConvertFrom-Json).version
|
||||
Write-Host "Current version: $currentVersion"
|
||||
|
||||
$cleanVersion = $currentVersion -replace '-.*$', ''
|
||||
$versionParts = $cleanVersion.Split('.')
|
||||
if ($versionParts.Length -ne 3) {
|
||||
Write-Error "Current version format is invalid: $cleanVersion"
|
||||
exit 1
|
||||
}
|
||||
|
||||
$major = [int]$versionParts[0]
|
||||
$minor = [int]$versionParts[1]
|
||||
$patch = [int]$versionParts[2]
|
||||
$newPatch = $patch + 1
|
||||
$inputVersion = "$major.$minor.$newPatch"
|
||||
Write-Host "Auto-generated version: $inputVersion"
|
||||
} else {
|
||||
# Validate semantic version format (major.minor.patch)
|
||||
$versionPattern = '^\d+\.\d+\.\d+$'
|
||||
if ($inputVersion -notmatch $versionPattern) {
|
||||
Write-Error "Invalid version format. Expected semantic version (e.g., 1.0.0), got: $inputVersion"
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
||||
# Date in YYYYMMDD (PST / America/Los_Angeles)
|
||||
$pst = [TimeZoneInfo]::FindSystemTimeZoneById('America/Los_Angeles')
|
||||
$dateInPst = [TimeZoneInfo]::ConvertTimeFromUtc([DateTime]::UtcNow, $pst)
|
||||
$dateStr = $dateInPst.ToString("yyyyMMdd")
|
||||
$alphaVersion = "$inputVersion-alpha-$dateStr"
|
||||
Write-Host "Alpha version: $alphaVersion"
|
||||
|
||||
# Update package.json
|
||||
$packageJson = Get-Content package.json | ConvertFrom-Json
|
||||
$packageJson.version = $alphaVersion
|
||||
$packageJson | ConvertTo-Json -Depth 10 | Set-Content package.json
|
||||
|
||||
echo "version=$alphaVersion" >> $env:GITHUB_OUTPUT
|
||||
|
||||
cleanup:
|
||||
needs: prepare
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.R2_SECRET_ACCESS_KEY }}
|
||||
R2_ENDPOINT_URL: ${{ secrets.R2_ENDPOINT_URL }}
|
||||
steps:
|
||||
- name: Delete all objects in R2 bucket
|
||||
run: |
|
||||
aws s3 rm s3://feishin-nightly --recursive --endpoint-url $R2_ENDPOINT_URL
|
||||
|
||||
publish:
|
||||
needs: [prepare, cleanup]
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.R2_SECRET_ACCESS_KEY }}
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
os: [windows-latest, macos-latest, ubuntu-latest]
|
||||
|
||||
steps:
|
||||
- name: Checkout git repo
|
||||
uses: actions/checkout@v1
|
||||
|
||||
- name: Install Node and PNPM
|
||||
uses: pnpm/action-setup@v4.1.0
|
||||
with:
|
||||
version: 9
|
||||
|
||||
- name: Install dependencies
|
||||
run: pnpm install
|
||||
|
||||
- name: Set version from prepare job
|
||||
shell: pwsh
|
||||
run: |
|
||||
$version = "${{ needs.prepare.outputs.version }}"
|
||||
Write-Host "Setting version: $version"
|
||||
$packageJson = Get-Content package.json | ConvertFrom-Json
|
||||
$packageJson.version = $version
|
||||
$packageJson | ConvertTo-Json -Depth 10 | Set-Content package.json
|
||||
|
||||
- name: Build and Publish to R2 (Windows)
|
||||
if: matrix.os == 'windows-latest'
|
||||
uses: nick-invision/retry@v2.8.2
|
||||
with:
|
||||
timeout_minutes: 30
|
||||
max_attempts: 3
|
||||
retry_on: error
|
||||
command: |
|
||||
pnpm run publish:win:alpha
|
||||
on_retry_command: pnpm cache delete
|
||||
|
||||
- name: Build and Publish to R2 (macOS)
|
||||
if: matrix.os == 'macos-latest'
|
||||
uses: nick-invision/retry@v2.8.2
|
||||
with:
|
||||
timeout_minutes: 30
|
||||
max_attempts: 3
|
||||
retry_on: error
|
||||
command: |
|
||||
pnpm run publish:mac:alpha
|
||||
on_retry_command: pnpm cache delete
|
||||
|
||||
- name: Build and Publish to R2 (Linux)
|
||||
if: matrix.os == 'ubuntu-latest'
|
||||
uses: nick-invision/retry@v2.8.2
|
||||
with:
|
||||
timeout_minutes: 30
|
||||
max_attempts: 3
|
||||
retry_on: error
|
||||
command: |
|
||||
pnpm run publish:linux:alpha
|
||||
on_retry_command: pnpm cache delete
|
||||
|
||||
- name: Build and Publish to R2 (Linux ARM64)
|
||||
if: matrix.os == 'ubuntu-latest'
|
||||
uses: nick-invision/retry@v2.8.2
|
||||
with:
|
||||
timeout_minutes: 30
|
||||
max_attempts: 3
|
||||
retry_on: error
|
||||
command: |
|
||||
pnpm run publish:linux-arm64:alpha
|
||||
on_retry_command: pnpm cache delete
|
||||
@@ -4,9 +4,24 @@ on:
|
||||
pull_request:
|
||||
branches:
|
||||
- development
|
||||
paths:
|
||||
- 'src/**'
|
||||
|
||||
jobs:
|
||||
wait-for-lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Wait for Test workflow to complete
|
||||
uses: lewagon/wait-on-check-action@v1.4.1
|
||||
with:
|
||||
ref: ${{ github.event.pull_request.head.sha }}
|
||||
check-name: 'lint'
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
wait-interval: 10
|
||||
allowed-conclusions: success
|
||||
|
||||
publish:
|
||||
needs: wait-for-lint
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
strategy:
|
||||
|
||||
@@ -16,6 +16,5 @@ jobs:
|
||||
- uses: vedantmgoyal9/winget-releaser@main
|
||||
with:
|
||||
identifier: jeffvli.Feishin
|
||||
installers-regex: 'Feishin-*-win-x64\.exe'
|
||||
installers-regex: 'Feishin-*-win-(x64|arm64)\.exe'
|
||||
token: ${{ secrets.WINGET_ACC_TOKEN }}
|
||||
|
||||
|
||||
@@ -14,9 +14,7 @@
|
||||
".eslintignore": "ignore"
|
||||
},
|
||||
"eslint.validate": ["typescript", "typescriptreact"],
|
||||
"eslint.workingDirectories": [
|
||||
{ "directory": "./", "changeProcessCWD": true },
|
||||
],
|
||||
"eslint.workingDirectories": [{ "directory": "./", "changeProcessCWD": true }],
|
||||
"typescript.tsserver.experimental.enableProjectDiagnostics": false,
|
||||
"editor.codeActionsOnSave": {
|
||||
"source.fixAll.eslint": "explicit",
|
||||
@@ -50,7 +48,10 @@
|
||||
"typescript.preferences.autoImportFileExcludePatterns": [
|
||||
"@mantine/core",
|
||||
"@mantine/modals",
|
||||
"@mantine/dates"
|
||||
"@mantine/dates",
|
||||
"@mantine/hooks",
|
||||
"@mantine/form",
|
||||
"@radix-ui/react-context-menu"
|
||||
],
|
||||
"[typescriptreact]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
|
||||
"typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": true,
|
||||
|
||||
@@ -20,6 +20,8 @@ COPY --chown=nginx:nginx --from=builder /app/out/web /usr/share/nginx/html
|
||||
COPY ./settings.js.template /etc/nginx/templates/settings.js.template
|
||||
COPY ng.conf.template /etc/nginx/templates/default.conf.template
|
||||
|
||||
ENV PUBLIC_PATH="/"
|
||||
ENV SERVER_LOCK=false SERVER_NAME="" SERVER_TYPE="" SERVER_URL=""
|
||||
ENV LEGACY_AUTHENTICATION="" ANALYTICS_DISABLED="" PUBLIC_PATH="/"
|
||||
|
||||
EXPOSE 9180
|
||||
CMD ["nginx", "-g", "daemon off;"]
|
||||
|
||||
@@ -43,7 +43,7 @@ Rewrite of [Sonixd](https://github.com/jeffvli/sonixd).
|
||||
|
||||
## Screenshots
|
||||
|
||||
<a href="https://raw.githubusercontent.com/jeffvli/feishin/development/media/preview_full_screen_player.png"><img src="https://raw.githubusercontent.com/jeffvli/feishin/development/media/preview_full_screen_player.png" width="49.5%"/></a> <a href="https://raw.githubusercontent.com/jeffvli/feishin/development/media/preview_album_artist_detail.png"><img src="https://raw.githubusercontent.com/jeffvli/feishin/development/media/preview_album_artist_detail.png" width="49.5%"/></a> <a href="https://raw.githubusercontent.com/jeffvli/feishin/development/media/preview_album_detail.png"><img src="https://raw.githubusercontent.com/jeffvli/feishin/development/media/preview_album_detail.png" width="49.5%"/></a> <a href="https://raw.githubusercontent.com/jeffvli/feishin/development/media/preview_smart_playlist.png"><img src="https://raw.githubusercontent.com/jeffvli/feishin/development/media/preview_smart_playlist.png" width="49.5%"/></a>
|
||||
<a href="./media/preview_full_screen_player.png"><img src="./media/preview_full_screen_player.png" width="49.5%"/></a> <a href="./media/preview_album_artist_detail.png"><img src="./media/preview_album_artist_detail.png" width="49.5%"/></a> <a href="./media/preview_album_detail.png"><img src="./media/preview_album_detail.png" width="49.5%"/></a> <a href="./media/preview_smart_playlist.png"><img src="./media/preview_smart_playlist.png" width="49.5%"/></a>
|
||||
|
||||
## Getting Started
|
||||
|
||||
@@ -62,18 +62,21 @@ For media keys to work, you will be prompted to allow Feishin to be a Trusted Ac
|
||||
We provide a small install script to download the latest `.AppImage`, make it executable, and also download the icons required by Desktop Environments. Finally, it generates a `.desktop` file to add Feishin to your Application Launcher.
|
||||
|
||||
Simply run the installer like this:
|
||||
|
||||
```sh
|
||||
dir=/your/application/directory
|
||||
curl 'https://raw.githubusercontent.com/jeffvli/feishin/refs/heads/development/install-feishin-appimage' | sh -s -- "$dir"
|
||||
```
|
||||
|
||||
The script also has an option to add launch arguments to run Feishin in native Wayland mode. Note that this is experimental in Electron and therefore not officially supported. If you want to use it, run this instead:
|
||||
|
||||
```sh
|
||||
dir=/your/application/directory
|
||||
curl 'https://raw.githubusercontent.com/jeffvli/feishin/refs/heads/development/install-feishin-appimage' | sh -s -- "$dir" wayland-native
|
||||
```
|
||||
|
||||
It also provides a simple uninstall routine, removing the downloaded files:
|
||||
|
||||
```sh
|
||||
dir=/your/application/directory
|
||||
curl 'https://raw.githubusercontent.com/jeffvli/feishin/refs/heads/development/install-feishin-appimage' | sh -s -- "$dir" remove
|
||||
@@ -98,25 +101,24 @@ docker run --name feishin -p 9180:9180 feishin
|
||||
|
||||
#### Docker Compose
|
||||
|
||||
To install via Docker Compose use the following snippit. This also works on Portainer.
|
||||
To install via Docker Compose, use the following snippet. This also works on Portainer.
|
||||
|
||||
```yaml
|
||||
services:
|
||||
feishin:
|
||||
container_name: feishin
|
||||
image: 'ghcr.io/jeffvli/feishin:latest'
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- SERVER_NAME=jellyfin # pre defined server name
|
||||
- SERVER_NAME=jellyfin # pre-defined server name
|
||||
- SERVER_LOCK=true # When true AND name/type/url are set, only username/password can be toggled
|
||||
- SERVER_TYPE=jellyfin # navidrome also works
|
||||
- SERVER_URL= # http://address:port
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- UMASK=002
|
||||
- TZ=America/Los_Angeles
|
||||
- SERVER_TYPE=jellyfin # the allowed types are: jellyfin, navidrome, subsonic. These values are case insensitive
|
||||
- SERVER_URL= # http://address:port or https://address:port
|
||||
- LEGACY_AUTHENTICATION=false # When SERVER_LOCK is true, sets the legacy (plaintext) authentication flag for Subsonic/OpenSubsonic servers
|
||||
- ANALYTICS_DISABLED=true # Set to true to disable Umami analytics tracking
|
||||
ports:
|
||||
- 9180:9180
|
||||
restart: unless-stopped
|
||||
# Alternatively, to restrict to only localhost, - 127.0.0.1:9180:8190
|
||||
```
|
||||
|
||||
### Configuration
|
||||
@@ -126,11 +128,15 @@ services:
|
||||
2. After restarting the app, you will be prompted to select a server. Click the `Open menu` button and select `Manage servers`. Click the `Add server` button in the popup and fill out all applicable details. You will need to enter the full URL to your server, including the protocol and port if applicable (e.g. `https://navidrome.my-server.com` or `http://192.168.0.1:4533`).
|
||||
|
||||
- **Navidrome** - For the best experience, select "Save password" when creating the server and configure the `SessionTimeout` setting in your Navidrome config to a larger value (e.g. 72h).
|
||||
- **Linux users** - The default password store uses `libsecret`. `kwallet4/5/6` are also supported, but must be explicitly set in Settings > Window > Passwords/secret score.
|
||||
- **Linux users** - The default password store uses `libsecret`. `kwallet4/5/6` are also supported, but must be explicitly set in Settings > Window > Passwords/secret store.
|
||||
|
||||
3. _Optional_ - If you want to host Feishin on a subpath (not `/`), then pass in the following environment variable: `PUBLIC_PATH=PATH`. For example, to host on `/feishin`, pass in `PUBLIC_PATH=/feishin`.
|
||||
|
||||
4. _Optional_ - To hard code the server url, pass the following environment variables: `SERVER_NAME`, `SERVER_TYPE` (one of `jellyfin` or `navidrome`), `SERVER_URL`. To prevent users from changing these settings, pass `SERVER_LOCK=true`. This can only be set if all three of the previous values are set.
|
||||
4. _Optional_ - To hard code the server url, pass the following environment variables: `SERVER_NAME`, `SERVER_TYPE` (one of `jellyfin` or `navidrome` or `subsonic`), `SERVER_URL`. To prevent users from changing these settings, pass `SERVER_LOCK=true`. This can only be set if all three of the previous values are set. When `SERVER_LOCK=true`, you can also set `LEGACY_AUTHENTICATION=true` or `LEGACY_AUTHENTICATION=false` to configure the legacy authentication flag for the server (only applicable for Subsonic/OpenSubsonic servers).
|
||||
|
||||
5. _Optional_ - To disable Umami analytics tracking in the Docker/web version, set the environment variable `ANALYTICS_DISABLED=true`. When enabled, the analytics script will not be loaded and all tracking will be disabled.
|
||||
|
||||
6. _Optional_ - App settings (theme, language, sidebar options, etc.) can be overridden with environment variables on first run. The variables use the `FS_` prefix (e.g. `FS_GENERAL_THEME=defaultDark`, `FS_GENERAL_LANGUAGE=de`). See [the settings environment variable documentation](docs/ENV_SETTINGS.md) for the full list.
|
||||
|
||||
## FAQ
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 154 KiB After Width: | Height: | Size: 73 KiB |
|
Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 6.4 KiB |
|
After Width: | Height: | Size: 651 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 277 B |
|
After Width: | Height: | Size: 447 B |
|
Before Width: | Height: | Size: 176 KiB After Width: | Height: | Size: 422 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 32 KiB |
@@ -1,13 +1,15 @@
|
||||
version: '3.5'
|
||||
services:
|
||||
feishin:
|
||||
container_name: feishin
|
||||
image: ghcr.io/jeffvli/feishin:latest
|
||||
image: "ghcr.io/jeffvli/feishin:latest"
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- SERVER_NAME=jellyfin # pre-defined server name
|
||||
- SERVER_LOCK=false # When true AND name/type/url are set, only username/password can be toggled
|
||||
- SERVER_TYPE=jellyfin # the allowed types are: jellyfin, navidrome, subsonic. These values are case insensitive
|
||||
- SERVER_URL=http://localhost:8096 # http://address:port or https://address:port
|
||||
- LEGACY_AUTHENTICATION=false # When SERVER_LOCK is true, sets the legacyauth flag for server authentication (true or false)
|
||||
- ANALYTICS_DISABLED=false # Set to true to disable Umami analytics tracking
|
||||
ports:
|
||||
- 9180:9180
|
||||
environment:
|
||||
- SERVER_NAME=jellyfin # pre defined server name
|
||||
- SERVER_LOCK=true # When true AND name/type/url are set, only username/password can be toggled
|
||||
- SERVER_TYPE=jellyfin # navidrome also works
|
||||
- SERVER_URL= # http://address:port
|
||||
# Alternatively, to restrict to only localhost, - 127.0.0.1:9180:8190
|
||||
|
||||
@@ -0,0 +1,126 @@
|
||||
# Environment variables for settings (web / Docker)
|
||||
|
||||
These variables override app settings **on first run** when no persisted settings exist. They are injected via `settings.js` (from `settings.js.template`) and only apply to the **web** build.
|
||||
|
||||
**Format:** All values are strings; booleans use `true`/`false`, numbers are numeric strings. Leave unset or empty to use the default.
|
||||
|
||||
---
|
||||
|
||||
## General
|
||||
|
||||
| Setting | Default | Env variable | Available values / Description |
|
||||
|-------------|---------|--------------|--------------------------------|
|
||||
| `general.accent` | `rgb(53, 116, 252)` | `FS_GENERAL_ACCENT` | CSS `rgb(r, g, b)` string (e.g. `rgb(53, 116, 252)`). Invalid values are ignored. |
|
||||
| `general.albumBackground` | `false` | `FS_GENERAL_ALBUM_BACKGROUND` | `true` / `false` — Show album background image. |
|
||||
| `general.albumBackgroundBlur` | `3` | `FS_GENERAL_ALBUM_BACKGROUND_BLUR` | Blur amount for album background (number). |
|
||||
| `general.artistBackground` | `true` | `FS_GENERAL_ARTIST_BACKGROUND` | `true` / `false` — Show artist background image. |
|
||||
| `general.artistBackgroundBlur` | `3` | `FS_GENERAL_ARTIST_BACKGROUND_BLUR` | Blur amount for artist background (number). |
|
||||
| `general.blurExplicitImages` | `false` | `FS_GENERAL_BLUR_EXPLICIT_IMAGES` | `true` / `false` — Blur explicit images. |
|
||||
| `general.combinedLyricsAndVisualizer` | `false` | `FS_GENERAL_COMBINED_LYRICS_AND_VISUALIZER` | `true` / `false` — Combine lyrics and visualizer panel. |
|
||||
| `general.enableGridMultiSelect` | `false` | `FS_GENERAL_ENABLE_GRID_MULTI_SELECT` | `true` / `false` — Enable multi-select in grid views. |
|
||||
| `general.externalLinks` | `true` | `FS_GENERAL_EXTERNAL_LINKS` | `true` / `false` — Show external links in UI. |
|
||||
| `general.followCurrentSong` | `true` | `FS_GENERAL_FOLLOW_CURRENT_SONG` | `true` / `false` — Follow current song in list. |
|
||||
| `general.followSystemTheme` | `false` | `FS_GENERAL_FOLLOW_SYSTEM_THEME` | `true` / `false` — Use OS light/dark preference. |
|
||||
| `general.homeFeature` | `true` | `FS_GENERAL_HOME_FEATURE` | `true` / `false` — Show home featured carousel. |
|
||||
| `general.homeFeatureStyle` | `single` | `FS_GENERAL_HOME_FEATURE_STYLE` | `multiple` / `single` — Home featured carousel style. |
|
||||
| `general.language` | `en` | `FS_GENERAL_LANGUAGE` | UI language code (e.g. `en`, `de`, `fr`). |
|
||||
| `general.theme` | `defaultDark` | `FS_GENERAL_THEME` | One of: `ayuDark`, `ayuLight`, `catppuccinLatte`, `catppuccinMocha`, `defaultDark`, `defaultLight`, `dracula`, `githubDark`, `githubLight`, `glassyDark`, `gruvboxDark`, `gruvboxLight`, `highContrastDark`, `highContrastLight`, `materialDark`, `materialLight`, `monokai`, `nightOwl`, `nord`, `oneDark`, `rosePine`, `rosePineDawn`, `rosePineMoon`, `shadesOfPurple`, `solarizedDark`, `solarizedLight`, `tokyoNight`, `vscodeDarkPlus`, `vscodeLightPlus`. |
|
||||
| `general.themeDark` | `defaultDark` | `FS_GENERAL_THEME_DARK` | Same as theme (used when system is dark). |
|
||||
| `general.themeLight` | `defaultLight` | `FS_GENERAL_THEME_LIGHT` | Same as theme (used when system is light). |
|
||||
| `general.lastfmApiKey` | *(empty)* | `FS_GENERAL_LASTFM_API_KEY` | Last.fm API key. |
|
||||
| `general.lastFM` | `true` | `FS_GENERAL_LAST_FM` | `true` / `false` — Enable Last.fm. |
|
||||
| `general.musicBrainz` | `true` | `FS_GENERAL_MUSIC_BRAINZ` | `true` / `false` — MusicBrainz links. |
|
||||
| `general.nativeAspectRatio` | `false` | `FS_GENERAL_NATIVE_ASPECT_RATIO` | `true` / `false` — Use native cover art aspect ratio. |
|
||||
| `general.pathReplace` | *(empty)* | `FS_GENERAL_PATH_REPLACE` | Path pattern to replace (e.g. server path in Docker). |
|
||||
| `general.pathReplaceWith` | *(empty)* | `FS_GENERAL_PATH_REPLACE_WITH` | Replacement path. |
|
||||
| `general.playerbarOpenDrawer` | `false` | `FS_GENERAL_PLAYERBAR_OPEN_DRAWER` | `true` / `false` — Open queue/lyrics as drawer from player bar. |
|
||||
| `general.primaryShade` | `6` | `FS_GENERAL_PRIMARY_SHADE` | Mantine primary shade 0–9 (number). |
|
||||
| `general.resume` | `true` | `FS_GENERAL_RESUME` | `true` / `false` — Resume playback on load. |
|
||||
| `general.showLyricsInSidebar` | `true` | `FS_GENERAL_SHOW_LYRICS_IN_SIDEBAR` | `true` / `false` — Show lyrics in sidebar. |
|
||||
| `general.showRatings` | `true` | `FS_GENERAL_SHOW_RATINGS` | `true` / `false` — Show star ratings. |
|
||||
| `general.showVisualizerInSidebar` | `true` | `FS_GENERAL_SHOW_VISUALIZER_IN_SIDEBAR` | `true` / `false` — Show visualizer in sidebar. |
|
||||
| `general.sidebarCollapsedNavigation` | `true` | `FS_GENERAL_SIDEBAR_COLLAPSED_NAVIGATION` | `true` / `false` — Start with collapsed sidebar nav. |
|
||||
| `general.sidebarCollapseShared` | `false` | `FS_GENERAL_SIDEBAR_COLLAPSE_SHARED` | `true` / `false` — Share sidebar collapse state. |
|
||||
| `general.sidebarPlaylistList` | `true` | `FS_GENERAL_SIDEBAR_PLAYLIST_LIST` | `true` / `false` — Show playlist list in sidebar. |
|
||||
| `general.sidebarPlaylistSorting` | `false` | `FS_GENERAL_SIDEBAR_PLAYLIST_SORTING` | `true` / `false` — Enable playlist sorting in sidebar. |
|
||||
| `general.sideQueueType` | `sideQueue` | `FS_GENERAL_SIDE_QUEUE_TYPE` | `sideDrawerQueue` / `sideQueue` — Side play queue style. |
|
||||
| `general.useThemeAccentColor` | `false` | `FS_GENERAL_USE_THEME_ACCENT_COLOR` | `true` / `false` — Use theme’s accent color instead of custom. |
|
||||
| `general.useThemePrimaryShade` | `true` | `FS_GENERAL_USE_THEME_PRIMARY_SHADE` | `true` / `false` — Use theme’s primary shade. |
|
||||
| `general.zoomFactor` | `100` | `FS_GENERAL_ZOOM_FACTOR` | UI zoom percentage (number). |
|
||||
|
||||
---
|
||||
|
||||
## Playback
|
||||
|
||||
| Setting path | Default | Env variable | Available values / Description |
|
||||
|-------------|---------|--------------|--------------------------------|
|
||||
| `playback.mediaSession` | `false` | `FS_PLAYBACK_MEDIA_SESSION` | `true` / `false` — Media Session API (e.g. browser/media keys). |
|
||||
| `playback.webAudio` | `true` | `FS_PLAYBACK_WEB_AUDIO` | `true` / `false` — Use Web Audio for playback. |
|
||||
| `playback.audioFadeOnStatusChange` | `true` | `FS_PLAYBACK_AUDIO_FADE_ON_STATUS_CHANGE` | `true` / `false` — Fade on play/pause. |
|
||||
| `playback.preservePitch` | `true` | `FS_PLAYBACK_PRESERVE_PITCH` | `true` / `false` — Preserve pitch when changing speed. |
|
||||
| `playback.scrobble.enabled` | `true` | `FS_PLAYBACK_SCROBBLE_ENABLED` | `true` / `false` — Enable scrobbling. |
|
||||
| `playback.scrobble.notify` | `false` | `FS_PLAYBACK_SCROBBLE_NOTIFY` | `true` / `false` — Scrobble notifications. |
|
||||
| `playback.scrobble.scrobbleAtDuration` | `240` | `FS_PLAYBACK_SCROBBLE_AT_DURATION` | Seconds of playback before scrobble. |
|
||||
| `playback.scrobble.scrobbleAtPercentage` | `75` | `FS_PLAYBACK_SCROBBLE_AT_PERCENTAGE` | Percentage of track before scrobble. |
|
||||
| `playback.transcode.enabled` | `false` | `FS_PLAYBACK_TRANSCODE_ENABLED` | `true` / `false` — Enable transcoding. |
|
||||
|
||||
---
|
||||
|
||||
## Discord
|
||||
|
||||
| Setting path | Default | Env variable | Available values / Description |
|
||||
|-------------|---------|--------------|--------------------------------|
|
||||
| `discord.enabled` | `false` | `FS_DISCORD_ENABLED` | `true` / `false` — Discord rich presence. |
|
||||
| `discord.clientId` | *(built-in)* | `FS_DISCORD_CLIENT_ID` | Custom Discord application ID. |
|
||||
| `discord.displayType` | `feishin` | `FS_DISCORD_DISPLAY_TYPE` | `artist` / `feishin` / `song`. |
|
||||
| `discord.linkType` | `none` | `FS_DISCORD_LINK_TYPE` | `last_fm` / `musicbrainz` / `musicbrainz_last_fm` / `none`. |
|
||||
| `discord.showAsListening` | `false` | `FS_DISCORD_SHOW_AS_LISTENING` | `true` / `false`. |
|
||||
| `discord.showPaused` | `true` | `FS_DISCORD_SHOW_PAUSED` | `true` / `false` — Show paused state. |
|
||||
| `discord.showServerImage` | `false` | `FS_DISCORD_SHOW_SERVER_IMAGE` | `true` / `false`. |
|
||||
| `discord.showStateIcon` | `true` | `FS_DISCORD_SHOW_STATE_ICON` | `true` / `false`. |
|
||||
|
||||
---
|
||||
|
||||
## Lyrics
|
||||
|
||||
| Setting path | Default | Env variable | Available values / Description |
|
||||
|-------------|---------|--------------|--------------------------------|
|
||||
| `lyrics.fetch` | `true` | `FS_LYRICS_FETCH` | `true` / `false` — Fetch lyrics. |
|
||||
| `lyrics.follow` | `true` | `FS_LYRICS_FOLLOW` | `true` / `false` — Follow current line. |
|
||||
| `lyrics.delayMs` | `0` | `FS_LYRICS_DELAY_MS` | Sync delay in milliseconds. |
|
||||
| `lyrics.preferLocalLyrics` | `true` | `FS_LYRICS_PREFER_LOCAL` | `true` / `false` — Prefer local lyric files. |
|
||||
| `lyrics.showMatch` | `true` | `FS_LYRICS_SHOW_MATCH` | `true` / `false`. |
|
||||
| `lyrics.showProvider` | `true` | `FS_LYRICS_SHOW_PROVIDER` | `true` / `false`. |
|
||||
| `lyrics.enableAutoTranslation` | `false` | `FS_LYRICS_ENABLE_AUTO_TRANSLATION` | `true` / `false`. |
|
||||
| `lyrics.translationApiKey` | *(empty)* | `FS_LYRICS_TRANSLATION_API_KEY` | API key for lyric translation. |
|
||||
| `lyrics.translationTargetLanguage` | `en` | `FS_LYRICS_TRANSLATION_TARGET_LANGUAGE` | Target language code. |
|
||||
| `lyrics.alignment` | `center` | `FS_LYRICS_ALIGNMENT` | `center` / `left` / `right`. |
|
||||
|
||||
---
|
||||
|
||||
## Auto DJ
|
||||
|
||||
| Setting path | Default | Env variable | Available values / Description |
|
||||
|-------------|---------|--------------|--------------------------------|
|
||||
| `autoDJ.enabled` | `false` | `FS_AUTO_DJ_ENABLED` | `true` / `false`. |
|
||||
| `autoDJ.itemCount` | `5` | `FS_AUTO_DJ_ITEM_COUNT` | Number of items to add. |
|
||||
| `autoDJ.timing` | `1` | `FS_AUTO_DJ_TIMING` | Timing value (number). |
|
||||
|
||||
---
|
||||
|
||||
## CSS
|
||||
|
||||
| Setting path | Default | Env variable | Available values / Description |
|
||||
|-------------|---------|--------------|--------------------------------|
|
||||
| `css.content` | *(empty)* | `FS_CSS_CONTENT` | Custom CSS string (sanitized like in-app custom CSS). Set `FS_CSS_ENABLED=true` to apply. |
|
||||
| `css.enabled` | `false` | `FS_CSS_ENABLED` | `true` / `false` — Enable custom CSS. |
|
||||
|
||||
---
|
||||
|
||||
## Font
|
||||
|
||||
| Setting path | Default | Env variable | Available values / Description |
|
||||
|-------------|---------|--------------|--------------------------------|
|
||||
| `font.type` | `builtIn` | `FS_FONT_TYPE` | `builtIn` / `system` / `custom`. |
|
||||
| `font.builtIn` | `Inter` | `FS_FONT_BUILT_IN` | Built-in font name. |
|
||||
| `font.system` | *(empty)* | `FS_FONT_SYSTEM` | System font name (when type is `system`). |
|
||||
@@ -0,0 +1,65 @@
|
||||
appId: org.jeffvli.feishin
|
||||
productName: Feishin
|
||||
artifactName: ${productName}-${version}-${os}-${arch}.${ext}
|
||||
electronVersion: 39.4.0
|
||||
directories:
|
||||
buildResources: assets
|
||||
files:
|
||||
- 'out/**/*'
|
||||
- 'package.json'
|
||||
extraResources:
|
||||
- assets/**
|
||||
asarUnpack:
|
||||
- resources/**
|
||||
win:
|
||||
target:
|
||||
- target: zip
|
||||
arch:
|
||||
- x64
|
||||
- arm64
|
||||
- target: nsis
|
||||
arch:
|
||||
- x64
|
||||
- arm64
|
||||
icon: assets/icons/icon.ico
|
||||
|
||||
nsis:
|
||||
allowToChangeInstallationDirectory: true
|
||||
oneClick: false
|
||||
shortcutName: ${productName}
|
||||
uninstallDisplayName: ${productName}
|
||||
createDesktopShortcut: always
|
||||
|
||||
mac:
|
||||
target:
|
||||
target: default
|
||||
arch:
|
||||
- arm64
|
||||
- x64
|
||||
icon: assets/icons/icon.icns
|
||||
type: distribution
|
||||
hardenedRuntime: true
|
||||
entitlements: assets/entitlements.mac.plist
|
||||
entitlementsInherit: assets/entitlements.mac.plist
|
||||
gatekeeperAssess: false
|
||||
notarize: false
|
||||
|
||||
dmg:
|
||||
contents: [{ x: 130, y: 220 }, { x: 410, y: 220, type: link, path: /Applications }]
|
||||
|
||||
linux:
|
||||
target:
|
||||
- AppImage
|
||||
- deb
|
||||
- tar.xz
|
||||
category: AudioVideo;Audio;Player
|
||||
icon: assets/icons/icon.png
|
||||
artifactName: ${productName}-${os}-${arch}.${ext}
|
||||
|
||||
npmRebuild: false
|
||||
|
||||
publish:
|
||||
provider: s3
|
||||
bucket: feishin-nightly
|
||||
channel: alpha
|
||||
endpoint: https://065f090c64de2dc707dd70ac72db9669.r2.cloudflarestorage.com
|
||||
@@ -1,7 +1,7 @@
|
||||
appId: org.jeffvli.feishin
|
||||
productName: Feishin
|
||||
artifactName: ${productName}-${version}-${os}-${arch}.${ext}
|
||||
electronVersion: 38.5.0
|
||||
electronVersion: 39.4.0
|
||||
directories:
|
||||
buildResources: assets
|
||||
files:
|
||||
@@ -13,9 +13,15 @@ asarUnpack:
|
||||
- resources/**
|
||||
win:
|
||||
target:
|
||||
- zip
|
||||
- nsis
|
||||
icon: assets/icons/icon.png
|
||||
- target: zip
|
||||
arch:
|
||||
- x64
|
||||
- arm64
|
||||
- target: nsis
|
||||
arch:
|
||||
- x64
|
||||
- arm64
|
||||
icon: assets/icons/icon.ico
|
||||
|
||||
nsis:
|
||||
allowToChangeInstallationDirectory: true
|
||||
@@ -44,6 +50,7 @@ dmg:
|
||||
linux:
|
||||
target:
|
||||
- AppImage
|
||||
- deb
|
||||
- tar.xz
|
||||
category: AudioVideo;Audio;Player
|
||||
icon: assets/icons/icon.png
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
appId: org.jeffvli.feishin
|
||||
productName: Feishin
|
||||
artifactName: ${productName}-${version}-${os}-${arch}.${ext}
|
||||
electronVersion: 38.5.0
|
||||
electronVersion: 39.4.0
|
||||
directories:
|
||||
buildResources: assets
|
||||
files:
|
||||
@@ -13,9 +13,15 @@ asarUnpack:
|
||||
- resources/**
|
||||
win:
|
||||
target:
|
||||
- zip
|
||||
- nsis
|
||||
icon: assets/icons/icon.png
|
||||
- target: zip
|
||||
arch:
|
||||
- x64
|
||||
- arm64
|
||||
- target: nsis
|
||||
arch:
|
||||
- x64
|
||||
- arm64
|
||||
icon: assets/icons/icon.ico
|
||||
|
||||
nsis:
|
||||
allowToChangeInstallationDirectory: true
|
||||
@@ -44,12 +50,14 @@ dmg:
|
||||
linux:
|
||||
target:
|
||||
- AppImage
|
||||
- deb
|
||||
- tar.xz
|
||||
category: AudioVideo;Audio;Player
|
||||
icon: assets/icons/icon.png
|
||||
artifactName: ${productName}-${os}-${arch}.${ext}
|
||||
|
||||
npmRebuild: false
|
||||
afterAllArtifactBuild: scripts/after-all-artifact-build.mjs
|
||||
publish:
|
||||
provider: github
|
||||
owner: jeffvli
|
||||
|
||||
@@ -6,6 +6,7 @@ import dynamicImportPlugin from 'vite-plugin-dynamic-import';
|
||||
import { ViteEjsPlugin } from 'vite-plugin-ejs';
|
||||
|
||||
const currentOSEnv = process.platform;
|
||||
const electronRendererTarget = 'chrome87';
|
||||
|
||||
const config: UserConfig = {
|
||||
main: {
|
||||
@@ -36,6 +37,9 @@ const config: UserConfig = {
|
||||
},
|
||||
},
|
||||
preload: {
|
||||
build: {
|
||||
sourcemap: true,
|
||||
},
|
||||
plugins: [externalizeDepsPlugin()],
|
||||
resolve: {
|
||||
alias: {
|
||||
@@ -45,6 +49,15 @@ const config: UserConfig = {
|
||||
},
|
||||
},
|
||||
renderer: {
|
||||
build: {
|
||||
cssMinify: 'esbuild',
|
||||
minify: 'esbuild',
|
||||
modulePreload: {
|
||||
polyfill: false,
|
||||
},
|
||||
sourcemap: true,
|
||||
target: electronRendererTarget,
|
||||
},
|
||||
css: {
|
||||
modules: {
|
||||
generateScopedName: 'fs-[name]-[local]',
|
||||
|
||||
@@ -43,6 +43,8 @@ export default tseslint.config(
|
||||
'no-unused-vars': 'off',
|
||||
'no-use-before-define': 'off',
|
||||
quotes: ['error', 'single'],
|
||||
'react-hooks/refs': 'off',
|
||||
'react-hooks/set-state-in-effect': 'off',
|
||||
'react-refresh/only-export-components': 'off',
|
||||
'react/display-name': 'off',
|
||||
semi: ['error', 'always'],
|
||||
|
||||
|
Before Width: | Height: | Size: 118 KiB |
|
After Width: | Height: | Size: 81 KiB |
|
After Width: | Height: | Size: 77 KiB |
|
After Width: | Height: | Size: 214 KiB |
|
Before Width: | Height: | Size: 101 KiB |
@@ -0,0 +1,104 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="512"
|
||||
height="512"
|
||||
viewBox="0 0 512 512"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
xml:space="preserve"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs1"><linearGradient
|
||||
id="linearGradient1"><stop
|
||||
style="stop-color:#dfdfdf;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop1" /><stop
|
||||
style="stop-color:#ffffff;stop-opacity:1;"
|
||||
offset="1"
|
||||
id="stop2" /></linearGradient><filter
|
||||
style="color-interpolation-filters:sRGB"
|
||||
id="filter249"
|
||||
x="-0.61395349"
|
||||
y="-0.61395349"
|
||||
width="2.227907"
|
||||
height="2.5069767"><feFlood
|
||||
result="flood"
|
||||
in="SourceGraphic"
|
||||
flood-opacity="0.498039"
|
||||
flood-color="rgb(0,0,0)"
|
||||
id="feFlood247" /><feGaussianBlur
|
||||
result="blur"
|
||||
in="SourceGraphic"
|
||||
stdDeviation="1.000000"
|
||||
id="feGaussianBlur247" /><feOffset
|
||||
result="offset"
|
||||
in="blur"
|
||||
dx="0.000000"
|
||||
dy="2"
|
||||
id="feOffset247" /><feComposite
|
||||
result="comp1"
|
||||
operator="in"
|
||||
in="flood"
|
||||
in2="offset"
|
||||
id="feComposite248" /><feComposite
|
||||
result="fbSourceGraphic"
|
||||
operator="over"
|
||||
in="SourceGraphic"
|
||||
id="feComposite249"
|
||||
in2="comp1" /><feColorMatrix
|
||||
result="fbSourceGraphicAlpha"
|
||||
in="fbSourceGraphic"
|
||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
||||
id="feColorMatrix122" /><feFlood
|
||||
id="feFlood122"
|
||||
result="flood"
|
||||
in="fbSourceGraphic"
|
||||
flood-opacity="0.196078"
|
||||
flood-color="rgb(0,0,0)" /><feGaussianBlur
|
||||
id="feGaussianBlur122"
|
||||
result="blur"
|
||||
in="fbSourceGraphic"
|
||||
stdDeviation="10.000000" /><feOffset
|
||||
id="feOffset122"
|
||||
result="offset"
|
||||
in="blur"
|
||||
dx="0.000000"
|
||||
dy="10.000000" /><feComposite
|
||||
id="feComposite122"
|
||||
result="comp1"
|
||||
operator="in"
|
||||
in="flood"
|
||||
in2="offset" /><feComposite
|
||||
id="feComposite123"
|
||||
result="comp2"
|
||||
operator="over"
|
||||
in="fbSourceGraphic"
|
||||
in2="comp1" /></filter><linearGradient
|
||||
xlink:href="#linearGradient1"
|
||||
id="linearGradient2"
|
||||
x1="256"
|
||||
y1="0"
|
||||
x2="256"
|
||||
y2="512"
|
||||
gradientUnits="userSpaceOnUse" /></defs><g
|
||||
id="layer1"
|
||||
style="display:inline"><circle
|
||||
style="display:inline;fill:url(#linearGradient2);stroke-width:25;stroke-linecap:round;stroke-linejoin:round;paint-order:markers fill stroke"
|
||||
id="background"
|
||||
cx="256"
|
||||
cy="256"
|
||||
r="256" /><circle
|
||||
style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.19597;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:markers fill stroke;filter:url(#filter249)"
|
||||
id="dot"
|
||||
cx="256"
|
||||
cy="240.31155"
|
||||
r="21.5" /><path
|
||||
id="bottom"
|
||||
style="opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter249)"
|
||||
d="M 220.84961,277.95117 183.5,315.59961 219.5,351.69922 239.5,332 c 0,0 5.85615,-6.19922 16.5,-6.19922 10.64385,0 16.5,6.19922 16.5,6.19922 l 20,19.69922 36,-36.09961 -37.34961,-37.64844 A 51.5,51.5 0 0 1 256,291.8125 51.5,51.5 0 0 1 220.84961,277.95117 Z" /><path
|
||||
id="main"
|
||||
style="display:inline;opacity:1;fill:#000000;fill-opacity:1;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;paint-order:markers fill stroke;filter:url(#filter249)"
|
||||
d="m 256,145.40039 c -7.11895,0 -13.56326,2.88552 -18.22852,7.55078 L 66.96875,323.46875 C 62.354158,328.08334 59.5,334.45837 59.5,341.5 c 0,14.08326 11.416739,25.5 25.5,25.5 7.04163,0 13.41666,-2.85416 18.03125,-7.46875 L 206.92578,255.93359 A 51.5,51.5 0 0 1 204.5,240.3125 a 51.5,51.5 0 0 1 51.5,-51.5 51.5,51.5 0 0 1 51.5,51.5 51.5,51.5 0 0 1 -2.42578,15.62109 L 408.96875,359.53125 C 413.58334,364.14585 419.95837,367 427,367 c 14.08326,0 25.5,-11.41674 25.5,-25.5 0,-7.04163 -2.85415,-13.41666 -7.46875,-18.03125 L 274.22852,152.95117 C 269.56326,148.2859 263.11895,145.40039 256,145.40039 Z" /></g></svg>
|
||||
|
After Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 644 KiB After Width: | Height: | Size: 733 KiB |
|
Before Width: | Height: | Size: 186 KiB After Width: | Height: | Size: 371 KiB |
|
Before Width: | Height: | Size: 465 KiB After Width: | Height: | Size: 869 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
Before Width: | Height: | Size: 887 KiB After Width: | Height: | Size: 990 KiB |
|
Before Width: | Height: | Size: 396 KiB After Width: | Height: | Size: 356 KiB |
@@ -1,5 +1,6 @@
|
||||
server {
|
||||
listen 9180;
|
||||
listen [::]:9180;
|
||||
sendfile on;
|
||||
default_type application/octet-stream;
|
||||
|
||||
@@ -19,9 +20,11 @@ server {
|
||||
|
||||
location ${PUBLIC_PATH}settings.js {
|
||||
alias /etc/nginx/conf.d/settings.js;
|
||||
add_header Cache-Control "no-store";
|
||||
}
|
||||
|
||||
location ${PUBLIC_PATH}/settings.js {
|
||||
alias /etc/nginx/conf.d/settings.js;
|
||||
add_header Cache-Control "no-store";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "feishin",
|
||||
"version": "0.21.2",
|
||||
"version": "1.7.0",
|
||||
"description": "A modern self-hosted music player.",
|
||||
"keywords": [
|
||||
"subsonic",
|
||||
@@ -16,11 +16,12 @@
|
||||
"license": "GPL-3.0",
|
||||
"author": {
|
||||
"name": "jeffvli",
|
||||
"email": "feishin@users.noreply.github.com",
|
||||
"url": "https://github.com/jeffvli/"
|
||||
},
|
||||
"main": "./out/main/index.js",
|
||||
"scripts": {
|
||||
"build": "pnpm run typecheck && pnpm run build:electron && pnpm run build:remote",
|
||||
"build": "pnpm run build:electron && pnpm run build:remote",
|
||||
"build:electron": "electron-vite build",
|
||||
"build:remote": "vite build --config remote.vite.config.ts",
|
||||
"build:web": "vite build --config web.vite.config.ts",
|
||||
@@ -29,7 +30,7 @@
|
||||
"dev:watch": "electron-vite dev --watch",
|
||||
"i18next": "i18next -c src/i18n/i18next-parser.config.js",
|
||||
"postinstall": "electron-builder install-app-deps",
|
||||
"lint": "pnpm run lint-code && pnpm run lint-styles",
|
||||
"lint": "pnpm run typecheck && pnpm run lint-code && pnpm run lint-styles",
|
||||
"lint-code": "eslint --max-warnings=0 --cache .",
|
||||
"lint-code:fix": "eslint --cache --fix .",
|
||||
"lint-styles": "stylelint --max-warnings=0 'src/**/*.{css,scss}'",
|
||||
@@ -43,14 +44,22 @@
|
||||
"package:mac": "pnpm run build && electron-builder --mac",
|
||||
"package:mac:pr": "pnpm run build && electron-builder --mac --publish never",
|
||||
"package:win": "pnpm run build && electron-builder --win",
|
||||
"package:win-arm64:pr": "pnpm run build && electron-builder --win --arm64 --publish never",
|
||||
"package:win:pr": "pnpm run build && electron-builder --win --publish never",
|
||||
"publish:linux": "pnpm run build && electron-builder --publish always --linux",
|
||||
"publish:linux-arm64": "pnpm run build && electron-builder --publish always --linux --arm64",
|
||||
"publish:linux-arm64:alpha": "pnpm run build && electron-builder --config electron-builder-alpha.yml --publish always --linux --arm64",
|
||||
"publish:linux-arm64:beta": "pnpm run build && electron-builder --config electron-builder-beta.yml --publish always --linux --arm64",
|
||||
"publish:linux:alpha": "pnpm run build && electron-builder --config electron-builder-alpha.yml --publish always --linux",
|
||||
"publish:linux:beta": "pnpm run build && electron-builder --config electron-builder-beta.yml --publish always --linux",
|
||||
"publish:mac": "pnpm run build && electron-builder --publish always --mac",
|
||||
"publish:mac:alpha": "pnpm run build && electron-builder --config electron-builder-alpha.yml --publish always --mac",
|
||||
"publish:mac:beta": "pnpm run build && electron-builder --config electron-builder-beta.yml --publish always --mac",
|
||||
"publish:win": "pnpm run build && electron-builder --publish always --win",
|
||||
"publish:win-arm64": "pnpm run build && electron-builder --publish always --win --arm64",
|
||||
"publish:win-arm64:alpha": "pnpm run build && electron-builder --config electron-builder-alpha.yml --publish always --win --arm64",
|
||||
"publish:win-arm64:beta": "pnpm run build && electron-builder --config electron-builder-beta.yml --publish always --win --arm64",
|
||||
"publish:win:alpha": "pnpm run build && electron-builder --config electron-builder-alpha.yml --publish always --win",
|
||||
"publish:win:beta": "pnpm run build && electron-builder --config electron-builder-beta.yml --publish always --win",
|
||||
"start": "electron-vite preview",
|
||||
"typecheck": "pnpm run typecheck:node && pnpm run typecheck:web",
|
||||
@@ -60,75 +69,74 @@
|
||||
"postversion": "node ./scripts/update-app-stream.mjs"
|
||||
},
|
||||
"dependencies": {
|
||||
"@ag-grid-community/client-side-row-model": "^28.2.1",
|
||||
"@ag-grid-community/core": "^28.2.1",
|
||||
"@ag-grid-community/infinite-row-model": "^28.2.1",
|
||||
"@ag-grid-community/react": "^28.2.1",
|
||||
"@ag-grid-community/styles": "^28.2.1",
|
||||
"@atlaskit/pragmatic-drag-and-drop": "1.4.0",
|
||||
"@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.1.0",
|
||||
"@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.0.3",
|
||||
"@atlaskit/pragmatic-drag-and-drop": "1.7.7",
|
||||
"@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.1.2",
|
||||
"@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.1.0",
|
||||
"@electron-toolkit/preload": "^3.0.1",
|
||||
"@electron-toolkit/utils": "^4.0.0",
|
||||
"@mantine/colors-generator": "^8.2.8",
|
||||
"@mantine/core": "^8.2.8",
|
||||
"@mantine/dates": "^8.2.8",
|
||||
"@mantine/form": "^8.2.8",
|
||||
"@mantine/hooks": "^8.2.8",
|
||||
"@mantine/modals": "^8.2.8",
|
||||
"@mantine/notifications": "^8.2.8",
|
||||
"@tanstack/react-query": "^5.89.0",
|
||||
"@tanstack/react-query-devtools": "^5.89.0",
|
||||
"@tanstack/react-query-persist-client": "^5.89.0",
|
||||
"@ts-rest/core": "^3.23.0",
|
||||
"@mantine/colors-generator": "^8.3.8",
|
||||
"@mantine/core": "^8.3.8",
|
||||
"@mantine/dates": "^8.3.8",
|
||||
"@mantine/form": "^8.3.8",
|
||||
"@mantine/hooks": "^8.3.8",
|
||||
"@mantine/modals": "^8.3.8",
|
||||
"@mantine/notifications": "^8.3.8",
|
||||
"@radix-ui/react-context-menu": "^2.2.16",
|
||||
"@tanstack/react-query": "^5.90.9",
|
||||
"@tanstack/react-query-devtools": "^5.90.2",
|
||||
"@tanstack/react-query-persist-client": "^5.90.11",
|
||||
"@ts-rest/core": "^3.52.1",
|
||||
"@wavesurfer/react": "^1.0.11",
|
||||
"@xhayper/discord-rpc": "^1.3.0",
|
||||
"audiomotion-analyzer": "^4.5.0",
|
||||
"auto-text-size": "^0.2.3",
|
||||
"axios": "^1.12.0",
|
||||
"cheerio": "^1.0.0",
|
||||
"clsx": "^2.0.0",
|
||||
"cmdk": "^0.2.0",
|
||||
"dayjs": "^1.11.6",
|
||||
"dompurify": "^3.1.6",
|
||||
"audiomotion-analyzer": "^4.5.1",
|
||||
"axios": "^1.13.5",
|
||||
"butterchurn": "^3.0.0-beta.5",
|
||||
"butterchurn-presets": "^3.0.0-beta.4",
|
||||
"cheerio": "^1.1.2",
|
||||
"clsx": "^2.1.1",
|
||||
"cmdk": "^1.1.1",
|
||||
"dayjs": "^1.11.19",
|
||||
"dompurify": "^3.3.0",
|
||||
"electron-debug": "^3.2.0",
|
||||
"electron-localshortcut": "^3.2.1",
|
||||
"electron-log": "^5.1.1",
|
||||
"electron-store": "^8.1.0",
|
||||
"electron-updater": "^6.3.9",
|
||||
"fast-average-color": "^9.3.0",
|
||||
"fast-xml-parser": "^5.3.0",
|
||||
"format-duration": "^2.0.0",
|
||||
"fuse.js": "^6.6.2",
|
||||
"i18next": "^21.10.0",
|
||||
"idb-keyval": "^6.2.1",
|
||||
"immer": "^9.0.21",
|
||||
"electron-log": "^5.4.3",
|
||||
"electron-store": "^8.2.0",
|
||||
"electron-updater": "^6.6.2",
|
||||
"fast-average-color": "^9.5.0",
|
||||
"fast-xml-parser": "^5.3.6",
|
||||
"format-duration": "^3.0.2",
|
||||
"fuse.js": "^7.1.0",
|
||||
"i18next": "^25.6.2",
|
||||
"icecast-metadata-stats": "^0.1.12",
|
||||
"idb-keyval": "^6.2.2",
|
||||
"immer": "^10.2.0",
|
||||
"is-electron": "^2.2.2",
|
||||
"lodash": "^4.17.21",
|
||||
"lodash": "^4.17.23",
|
||||
"md5": "^2.3.0",
|
||||
"memoize-one": "^6.0.0",
|
||||
"motion": "^12.18.1",
|
||||
"motion": "^12.23.24",
|
||||
"mpris-service": "^2.1.2",
|
||||
"nanoid": "^3.3.3",
|
||||
"nanoid": "^3.3.11",
|
||||
"node-mpv": "github:jeffvli/Node-MPV#32b4d64395289ad710c41d481d2707a7acfc228f",
|
||||
"nuqs": "^2.7.1",
|
||||
"overlayscrollbars": "^2.11.1",
|
||||
"overlayscrollbars-react": "^0.5.6",
|
||||
"qs": "^6.14.0",
|
||||
"qs": "^6.14.2",
|
||||
"react": "^19.1.0",
|
||||
"react-call": "^1.8.1",
|
||||
"react-dom": "^19.1.0",
|
||||
"react-error-boundary": "^3.1.4",
|
||||
"react-i18next": "^11.18.6",
|
||||
"react-error-boundary": "^5.0.0",
|
||||
"react-i18next": "^16.3.3",
|
||||
"react-icons": "^5.5.0",
|
||||
"react-image": "^4.1.0",
|
||||
"react-loading-skeleton": "^3.5.0",
|
||||
"react-player": "^2.11.0",
|
||||
"react-router": "^6.16.0",
|
||||
"react-router-dom": "^6.16.0",
|
||||
"react-virtualized-auto-sizer": "^1.0.17",
|
||||
"react-window": "^1.8.9",
|
||||
"react-window-infinite-loader": "^1.0.9",
|
||||
"react-player": "^2.16.0",
|
||||
"react-router": "^7.13.1",
|
||||
"react-split-pane": "^3.0.4",
|
||||
"react-virtualized-auto-sizer": "^1.0.26",
|
||||
"react-window": "1.8.11",
|
||||
"react-window-v2": "npm:react-window@^2.2.3",
|
||||
"semver": "^7.5.4",
|
||||
"swiper": "^9.3.1",
|
||||
"use-sync-external-store": "^1.5.0",
|
||||
"string-to-color": "^2.2.2",
|
||||
"wavesurfer.js": "^7.11.1",
|
||||
"ws": "^8.18.2",
|
||||
"zod": "^3.22.3",
|
||||
"zustand": "^5.0.5"
|
||||
@@ -136,45 +144,44 @@
|
||||
"devDependencies": {
|
||||
"@electron-toolkit/eslint-config-prettier": "^3.0.0",
|
||||
"@electron-toolkit/eslint-config-ts": "^3.0.0",
|
||||
"@electron-toolkit/tsconfig": "^1.0.1",
|
||||
"@electron-toolkit/tsconfig": "^2.0.0",
|
||||
"@types/electron-localshortcut": "^3.1.0",
|
||||
"@types/lodash": "^4.17.18",
|
||||
"@types/md5": "^2.3.5",
|
||||
"@types/node": "^22.15.32",
|
||||
"@types/react": "^18.3.23",
|
||||
"@types/react-dom": "^18.3.7",
|
||||
"@types/react-window": "^1.8.5",
|
||||
"@types/react-window-infinite-loader": "^1.0.6",
|
||||
"@types/node": "^24.10.1",
|
||||
"@types/react": "^19.2.5",
|
||||
"@types/react-dom": "^19.2.3",
|
||||
"@types/react-window": "^1.8.8",
|
||||
"@types/source-map-support": "^0.5.10",
|
||||
"@types/ws": "^8.18.1",
|
||||
"@vitejs/plugin-react": "^4.3.4",
|
||||
"concurrently": "^7.1.0",
|
||||
"cross-env": "^7.0.3",
|
||||
"electron": "^38.5.0",
|
||||
"electron-builder": "^26.0.12",
|
||||
"electron-devtools-installer": "^3.2.0",
|
||||
"electron-vite": "^3.1.0",
|
||||
"@vitejs/plugin-react": "^5.1.1",
|
||||
"concurrently": "^9.2.1",
|
||||
"cross-env": "^10.1.0",
|
||||
"electron": "^39.4.0",
|
||||
"electron-builder": "^26.8.1",
|
||||
"electron-devtools-installer": "^4.0.0",
|
||||
"electron-vite": "^4.0.1",
|
||||
"eslint": "^9.24.0",
|
||||
"eslint-plugin-perfectionist": "^4.13.0",
|
||||
"eslint-plugin-prettier": "^5.4.0",
|
||||
"eslint-plugin-react": "^7.37.5",
|
||||
"eslint-plugin-react-hooks": "^5.2.0",
|
||||
"eslint-plugin-react-refresh": "^0.4.19",
|
||||
"i18next-parser": "^9.0.2",
|
||||
"postcss-preset-mantine": "^1.17.0",
|
||||
"prettier": "^3.5.3",
|
||||
"prettier-plugin-packagejson": "^2.5.14",
|
||||
"sass-embedded": "^1.89.0",
|
||||
"stylelint": "^16.14.1",
|
||||
"stylelint-config-css-modules": "^4.4.0",
|
||||
"stylelint-config-recess-order": "^7.1.0",
|
||||
"stylelint-config-standard": "^38.0.0",
|
||||
"eslint-plugin-react-hooks": "^7.0.1",
|
||||
"eslint-plugin-react-refresh": "^0.4.24",
|
||||
"i18next-parser": "^9.3.0",
|
||||
"postcss-preset-mantine": "^1.18.0",
|
||||
"postcss-simple-vars": "^7.0.1",
|
||||
"prettier": "^3.6.2",
|
||||
"prettier-plugin-packagejson": "^2.5.19",
|
||||
"stylelint": "^16.25.0",
|
||||
"stylelint-config-css-modules": "^4.5.1",
|
||||
"stylelint-config-recess-order": "^7.4.0",
|
||||
"stylelint-config-standard": "^39.0.1",
|
||||
"typescript": "^5.8.3",
|
||||
"vite": "^6.4.1",
|
||||
"vite": "^7.2.2",
|
||||
"vite-plugin-conditional-import": "^0.1.7",
|
||||
"vite-plugin-dynamic-import": "^1.6.0",
|
||||
"vite-plugin-ejs": "^1.7.0",
|
||||
"vite-plugin-pwa": "^1.0.3"
|
||||
"vite-plugin-pwa": "^1.1.0"
|
||||
},
|
||||
"pnpm": {
|
||||
"onlyBuiltDependencies": [
|
||||
|
||||
@@ -1,5 +1,16 @@
|
||||
module.exports = {
|
||||
plugins: {
|
||||
'postcss-preset-mantine': {},
|
||||
'postcss-simple-vars': {
|
||||
variables: {
|
||||
'mantine-breakpoint-2xl': '120em',
|
||||
'mantine-breakpoint-3xl': '160em',
|
||||
'mantine-breakpoint-lg': '75em',
|
||||
'mantine-breakpoint-md': '62em',
|
||||
'mantine-breakpoint-sm': '48em',
|
||||
'mantine-breakpoint-xl': '88em',
|
||||
'mantine-breakpoint-xs': '36em',
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
@@ -7,7 +7,9 @@ import { version } from './package.json';
|
||||
|
||||
export default defineConfig({
|
||||
build: {
|
||||
cssMinify: 'esbuild',
|
||||
emptyOutDir: true,
|
||||
minify: 'esbuild',
|
||||
outDir: path.resolve(__dirname, './out/remote'),
|
||||
rollupOptions: {
|
||||
input: {
|
||||
@@ -21,6 +23,7 @@ export default defineConfig({
|
||||
assetFileNames: '[name].[ext]',
|
||||
chunkFileNames: '[name].js',
|
||||
entryFileNames: '[name].js',
|
||||
sourcemapExcludeSources: false,
|
||||
},
|
||||
},
|
||||
sourcemap: true,
|
||||
|
||||
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 32 KiB |
@@ -0,0 +1,45 @@
|
||||
import { execSync } from 'child_process';
|
||||
import path from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = path.dirname(__filename);
|
||||
|
||||
/**
|
||||
* Electron-builder afterAllArtifactBuild hook
|
||||
* Runs the app stream update script only for Linux builds
|
||||
* Returns the metainfo file path to be included in published artifacts
|
||||
*/
|
||||
|
||||
// This is not a typescript file, and is called by electron-builder, so we cannot use typescript features here.
|
||||
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
||||
export default async function afterAllArtifactBuild(buildResult) {
|
||||
// Check if this build includes Linux as a target
|
||||
const isLinux = Array.from(buildResult.platformToTargets.keys()).some(
|
||||
(platform) => platform.name === 'linux',
|
||||
);
|
||||
|
||||
if (isLinux) {
|
||||
const updateScriptPath = path.join(__dirname, 'update-app-stream.mjs');
|
||||
const projectRoot = path.resolve(__dirname, '..');
|
||||
const metainfoFile = path.resolve(projectRoot, 'org.jeffvli.feishin.metainfo.xml');
|
||||
|
||||
console.log('Running app stream update for Linux build...');
|
||||
|
||||
try {
|
||||
execSync(`node ${updateScriptPath} --replace-if-version-missing`, {
|
||||
cwd: projectRoot,
|
||||
stdio: 'inherit',
|
||||
});
|
||||
|
||||
// Return the metainfo file to be included in published artifacts
|
||||
return [metainfoFile];
|
||||
} catch (error) {
|
||||
console.error('Failed to update app stream:', error.message);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
// Return empty array if not a Linux build
|
||||
return [];
|
||||
}
|
||||
@@ -3,30 +3,51 @@ import fs from 'fs';
|
||||
import path from 'path';
|
||||
|
||||
const args = process.argv.slice(2);
|
||||
if (args.length > 3) {
|
||||
console.error('Usage: node update-app-stream.js [package-file] [date] [metainfo-file]');
|
||||
|
||||
// Parse flags and positional arguments
|
||||
const flags = args.filter((arg) => arg.startsWith('--'));
|
||||
const positionalArgs = args.filter((arg) => !arg.startsWith('--'));
|
||||
const replaceIfVersionMissing = flags.includes('--replace-if-version-missing');
|
||||
|
||||
if (positionalArgs.length > 3) {
|
||||
console.error(
|
||||
'Usage: node update-app-stream.js [package-file] [date] [metainfo-file] [--replace-if-version-missing]',
|
||||
);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const packageFile = args[0] || path.resolve(process.cwd(), 'package.json');
|
||||
const packageFile = positionalArgs[0] || path.resolve(process.cwd(), 'package.json');
|
||||
|
||||
const packageContent = fs.readFileSync(packageFile, 'utf8');
|
||||
const packageJson = JSON.parse(packageContent);
|
||||
const version = packageJson.version;
|
||||
|
||||
const time = Math.floor((Date.parse(args[1]) || Date.now()) / 1000);
|
||||
const metainfoFile = args[2] || path.resolve(process.cwd(), 'org.jeffvli.feishin.metainfo.xml');
|
||||
const time = Math.floor((Date.parse(positionalArgs[1]) || Date.now()) / 1000);
|
||||
const metainfoFile =
|
||||
positionalArgs[2] || path.resolve(process.cwd(), 'org.jeffvli.feishin.metainfo.xml');
|
||||
|
||||
const parser = new XMLParser({ ignoreAttributes: false });
|
||||
const metainfoContent = fs.readFileSync(metainfoFile, 'utf8');
|
||||
const metainfo = parser.parse(metainfoContent);
|
||||
|
||||
if (!metainfo.component.releases.release.find((release) => release['@_version'] === version)) {
|
||||
metainfo.component.releases.release.unshift({
|
||||
'@_date': new Date(time * 1000).toISOString().split('T')[0],
|
||||
'@_type': version.includes('-') ? 'development' : 'stable',
|
||||
'@_version': version,
|
||||
});
|
||||
const newRelease = {
|
||||
'@_date': new Date(time * 1000).toISOString().split('T')[0],
|
||||
'@_type': version.includes('-') ? 'development' : 'stable',
|
||||
'@_version': version,
|
||||
};
|
||||
|
||||
if (replaceIfVersionMissing) {
|
||||
// Replace all releases with only the current version
|
||||
metainfo.component.releases.release = [newRelease];
|
||||
} else {
|
||||
// Default behavior: add new release if it doesn't exist
|
||||
const releaseExists =
|
||||
metainfo.component.releases.release.findIndex(
|
||||
(release) => release['@_version'] === version,
|
||||
) !== -1;
|
||||
if (!releaseExists) {
|
||||
metainfo.component.releases.release.unshift(newRelease);
|
||||
}
|
||||
}
|
||||
|
||||
const builder = new XMLBuilder({ format: true, ignoreAttributes: false, indentBy: ' ' });
|
||||
|
||||
@@ -1 +1,86 @@
|
||||
"use strict";window.SERVER_URL="${SERVER_URL}";window.SERVER_NAME="${SERVER_NAME}";window.SERVER_TYPE="${SERVER_TYPE}";window.SERVER_LOCK=${SERVER_LOCK};
|
||||
"use strict";
|
||||
|
||||
window.SERVER_URL = "${SERVER_URL}";
|
||||
window.SERVER_NAME = "${SERVER_NAME}";
|
||||
window.SERVER_TYPE = "${SERVER_TYPE}";
|
||||
window.SERVER_LOCK = "${SERVER_LOCK}";
|
||||
window.LEGACY_AUTHENTICATION = "${LEGACY_AUTHENTICATION}";
|
||||
window.ANALYTICS_DISABLED = "${ANALYTICS_DISABLED}";
|
||||
|
||||
window.FS_GENERAL_ACCENT = "${FS_GENERAL_ACCENT}";
|
||||
window.FS_GENERAL_ALBUM_BACKGROUND = "${FS_GENERAL_ALBUM_BACKGROUND}";
|
||||
window.FS_GENERAL_ALBUM_BACKGROUND_BLUR = "${FS_GENERAL_ALBUM_BACKGROUND_BLUR}";
|
||||
window.FS_GENERAL_ARTIST_BACKGROUND = "${FS_GENERAL_ARTIST_BACKGROUND}";
|
||||
window.FS_GENERAL_ARTIST_BACKGROUND_BLUR = "${FS_GENERAL_ARTIST_BACKGROUND_BLUR}";
|
||||
window.FS_GENERAL_BLUR_EXPLICIT_IMAGES = "${FS_GENERAL_BLUR_EXPLICIT_IMAGES}";
|
||||
window.FS_GENERAL_COMBINED_LYRICS_AND_VISUALIZER = "${FS_GENERAL_COMBINED_LYRICS_AND_VISUALIZER}";
|
||||
window.FS_GENERAL_ENABLE_GRID_MULTI_SELECT = "${FS_GENERAL_ENABLE_GRID_MULTI_SELECT}";
|
||||
window.FS_GENERAL_EXTERNAL_LINKS = "${FS_GENERAL_EXTERNAL_LINKS}";
|
||||
window.FS_GENERAL_FOLLOW_CURRENT_SONG = "${FS_GENERAL_FOLLOW_CURRENT_SONG}";
|
||||
window.FS_GENERAL_FOLLOW_SYSTEM_THEME = "${FS_GENERAL_FOLLOW_SYSTEM_THEME}";
|
||||
window.FS_GENERAL_HOME_FEATURE = "${FS_GENERAL_HOME_FEATURE}";
|
||||
window.FS_GENERAL_HOME_FEATURE_STYLE = "${FS_GENERAL_HOME_FEATURE_STYLE}";
|
||||
window.FS_GENERAL_LANGUAGE = "${FS_GENERAL_LANGUAGE}";
|
||||
window.FS_GENERAL_LAST_FM = "${FS_GENERAL_LAST_FM}";
|
||||
window.FS_GENERAL_LASTFM_API_KEY = "${FS_GENERAL_LASTFM_API_KEY}";
|
||||
window.FS_GENERAL_MUSIC_BRAINZ = "${FS_GENERAL_MUSIC_BRAINZ}";
|
||||
window.FS_GENERAL_NATIVE_ASPECT_RATIO = "${FS_GENERAL_NATIVE_ASPECT_RATIO}";
|
||||
window.FS_GENERAL_PATH_REPLACE = "${FS_GENERAL_PATH_REPLACE}";
|
||||
window.FS_GENERAL_PATH_REPLACE_WITH = "${FS_GENERAL_PATH_REPLACE_WITH}";
|
||||
window.FS_GENERAL_PLAYERBAR_OPEN_DRAWER = "${FS_GENERAL_PLAYERBAR_OPEN_DRAWER}";
|
||||
window.FS_GENERAL_PRIMARY_SHADE = "${FS_GENERAL_PRIMARY_SHADE}";
|
||||
window.FS_GENERAL_RESUME = "${FS_GENERAL_RESUME}";
|
||||
window.FS_GENERAL_SHOW_LYRICS_IN_SIDEBAR = "${FS_GENERAL_SHOW_LYRICS_IN_SIDEBAR}";
|
||||
window.FS_GENERAL_SHOW_RATINGS = "${FS_GENERAL_SHOW_RATINGS}";
|
||||
window.FS_GENERAL_SHOW_VISUALIZER_IN_SIDEBAR = "${FS_GENERAL_SHOW_VISUALIZER_IN_SIDEBAR}";
|
||||
window.FS_GENERAL_SIDEBAR_COLLAPSED_NAVIGATION = "${FS_GENERAL_SIDEBAR_COLLAPSED_NAVIGATION}";
|
||||
window.FS_GENERAL_SIDEBAR_COLLAPSE_SHARED = "${FS_GENERAL_SIDEBAR_COLLAPSE_SHARED}";
|
||||
window.FS_GENERAL_SIDEBAR_PLAYLIST_LIST = "${FS_GENERAL_SIDEBAR_PLAYLIST_LIST}";
|
||||
window.FS_GENERAL_SIDEBAR_PLAYLIST_SORTING = "${FS_GENERAL_SIDEBAR_PLAYLIST_SORTING}";
|
||||
window.FS_GENERAL_SIDE_QUEUE_TYPE = "${FS_GENERAL_SIDE_QUEUE_TYPE}";
|
||||
window.FS_GENERAL_THEME = "${FS_GENERAL_THEME}";
|
||||
window.FS_GENERAL_THEME_DARK = "${FS_GENERAL_THEME_DARK}";
|
||||
window.FS_GENERAL_THEME_LIGHT = "${FS_GENERAL_THEME_LIGHT}";
|
||||
window.FS_GENERAL_USE_THEME_ACCENT_COLOR = "${FS_GENERAL_USE_THEME_ACCENT_COLOR}";
|
||||
window.FS_GENERAL_USE_THEME_PRIMARY_SHADE = "${FS_GENERAL_USE_THEME_PRIMARY_SHADE}";
|
||||
window.FS_GENERAL_ZOOM_FACTOR = "${FS_GENERAL_ZOOM_FACTOR}";
|
||||
|
||||
window.FS_PLAYBACK_MEDIA_SESSION = "${FS_PLAYBACK_MEDIA_SESSION}";
|
||||
window.FS_PLAYBACK_WEB_AUDIO = "${FS_PLAYBACK_WEB_AUDIO}";
|
||||
window.FS_PLAYBACK_AUDIO_FADE_ON_STATUS_CHANGE = "${FS_PLAYBACK_AUDIO_FADE_ON_STATUS_CHANGE}";
|
||||
window.FS_PLAYBACK_PRESERVE_PITCH = "${FS_PLAYBACK_PRESERVE_PITCH}";
|
||||
window.FS_PLAYBACK_SCROBBLE_ENABLED = "${FS_PLAYBACK_SCROBBLE_ENABLED}";
|
||||
window.FS_PLAYBACK_SCROBBLE_NOTIFY = "${FS_PLAYBACK_SCROBBLE_NOTIFY}";
|
||||
window.FS_PLAYBACK_SCROBBLE_AT_DURATION = "${FS_PLAYBACK_SCROBBLE_AT_DURATION}";
|
||||
window.FS_PLAYBACK_SCROBBLE_AT_PERCENTAGE = "${FS_PLAYBACK_SCROBBLE_AT_PERCENTAGE}";
|
||||
window.FS_PLAYBACK_TRANSCODE_ENABLED = "${FS_PLAYBACK_TRANSCODE_ENABLED}";
|
||||
|
||||
window.FS_DISCORD_ENABLED = "${FS_DISCORD_ENABLED}";
|
||||
window.FS_DISCORD_CLIENT_ID = "${FS_DISCORD_CLIENT_ID}";
|
||||
window.FS_DISCORD_DISPLAY_TYPE = "${FS_DISCORD_DISPLAY_TYPE}";
|
||||
window.FS_DISCORD_LINK_TYPE = "${FS_DISCORD_LINK_TYPE}";
|
||||
window.FS_DISCORD_SHOW_AS_LISTENING = "${FS_DISCORD_SHOW_AS_LISTENING}";
|
||||
window.FS_DISCORD_SHOW_PAUSED = "${FS_DISCORD_SHOW_PAUSED}";
|
||||
window.FS_DISCORD_SHOW_SERVER_IMAGE = "${FS_DISCORD_SHOW_SERVER_IMAGE}";
|
||||
window.FS_DISCORD_SHOW_STATE_ICON = "${FS_DISCORD_SHOW_STATE_ICON}";
|
||||
|
||||
window.FS_LYRICS_FETCH = "${FS_LYRICS_FETCH}";
|
||||
window.FS_LYRICS_FOLLOW = "${FS_LYRICS_FOLLOW}";
|
||||
window.FS_LYRICS_DELAY_MS = "${FS_LYRICS_DELAY_MS}";
|
||||
window.FS_LYRICS_PREFER_LOCAL = "${FS_LYRICS_PREFER_LOCAL}";
|
||||
window.FS_LYRICS_SHOW_MATCH = "${FS_LYRICS_SHOW_MATCH}";
|
||||
window.FS_LYRICS_SHOW_PROVIDER = "${FS_LYRICS_SHOW_PROVIDER}";
|
||||
window.FS_LYRICS_ENABLE_AUTO_TRANSLATION = "${FS_LYRICS_ENABLE_AUTO_TRANSLATION}";
|
||||
window.FS_LYRICS_TRANSLATION_API_KEY = "${FS_LYRICS_TRANSLATION_API_KEY}";
|
||||
window.FS_LYRICS_TRANSLATION_TARGET_LANGUAGE = "${FS_LYRICS_TRANSLATION_TARGET_LANGUAGE}";
|
||||
window.FS_LYRICS_ALIGNMENT = "${FS_LYRICS_ALIGNMENT}";
|
||||
|
||||
window.FS_AUTO_DJ_ENABLED = "${FS_AUTO_DJ_ENABLED}";
|
||||
window.FS_AUTO_DJ_ITEM_COUNT = "${FS_AUTO_DJ_ITEM_COUNT}";
|
||||
window.FS_AUTO_DJ_TIMING = "${FS_AUTO_DJ_TIMING}";
|
||||
|
||||
window.FS_CSS_CONTENT = "${FS_CSS_CONTENT}";
|
||||
window.FS_CSS_ENABLED = "${FS_CSS_ENABLED}";
|
||||
window.FS_FONT_TYPE = "${FS_FONT_TYPE}";
|
||||
window.FS_FONT_BUILT_IN = "${FS_FONT_BUILT_IN}";
|
||||
window.FS_FONT_SYSTEM = "${FS_FONT_SYSTEM}";
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { PostProcessorModule, StringMap, TOptions } from 'i18next';
|
||||
import { PostProcessorModule, TOptions } from 'i18next';
|
||||
import i18n from 'i18next';
|
||||
import { initReactI18next } from 'react-i18next';
|
||||
|
||||
@@ -207,7 +207,12 @@ const ignoreSentenceCaseLanguages = ['de'];
|
||||
|
||||
const sentenceCasePostProcessor: PostProcessorModule = {
|
||||
name: 'sentenceCase',
|
||||
process: (value: string, _key: string, _options: TOptions<StringMap>, translator: any) => {
|
||||
process: (
|
||||
value: string,
|
||||
_key: string,
|
||||
_options: TOptions<Record<string, string>>,
|
||||
translator: any,
|
||||
) => {
|
||||
const sentences = value.split('. ');
|
||||
|
||||
return sentences
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
{
|
||||
"action": {
|
||||
"addToFavorites": "إضافة الى $t(entity.favorite_other)",
|
||||
"addToPlaylist": "إضافة الى $t(entity.playlist_one)",
|
||||
"addToFavorites": "إضافة الى $t(entity.favorite, {\"count\": 2})",
|
||||
"addToPlaylist": "إضافة الى $t(entity.playlist, {\"count\": 1})",
|
||||
"clearQueue": "مسح قائمة الإنتظار",
|
||||
"createPlaylist": "إنشاء $t(entity.playlist_one)",
|
||||
"deletePlaylist": "حذف $t(entity.playlist_one)",
|
||||
"createPlaylist": "إنشاء $t(entity.playlist, {\"count\": 1})",
|
||||
"deletePlaylist": "حذف $t(entity.playlist, {\"count\": 1})",
|
||||
"deselectAll": "إلغاء تحديد الكل",
|
||||
"editPlaylist": "تعديل $t(entity.playlist_one)",
|
||||
"editPlaylist": "تعديل $t(entity.playlist, {\"count\": 1})",
|
||||
"goToPage": "اذهب الى صفحة",
|
||||
"moveToNext": "الذهاب الى التالي",
|
||||
"moveToBottom": "الذهاب الى الأسفل",
|
||||
"moveToTop": "الذهاب الى الأعلى",
|
||||
"refresh": "$t(common.refresh)",
|
||||
"removeFromFavorites": "حذف من $t(entity.favorite_other)",
|
||||
"removeFromPlaylist": "حذف من $t(entity.playlist_one)",
|
||||
"removeFromFavorites": "حذف من $t(entity.favorite, {\"count\": 2})",
|
||||
"removeFromPlaylist": "حذف من $t(entity.playlist, {\"count\": 1})",
|
||||
"removeFromQueue": "حذف من قائمة الإنتظار",
|
||||
"setRating": "تحديد التقييم",
|
||||
"toggleSmartPlaylistEditor": "تشغيل / إطفاء وضع التعديل لـ $t(entity.smartPlaylist)",
|
||||
"viewPlaylists": "إظهار $t(entity.playlist_other)",
|
||||
"viewPlaylists": "إظهار $t(entity.playlist, {\"count\": 2})",
|
||||
"openIn": {
|
||||
"lastfm": "فتح في Last.fm",
|
||||
"musicbrainz": "فتح في MusicBrainz"
|
||||
@@ -59,7 +59,7 @@
|
||||
"configure": "تعديل",
|
||||
"confirm": "تأكيد",
|
||||
"create": "إنشاء",
|
||||
"currentSong": "$t(entity.track_one) الحالي",
|
||||
"currentSong": "$t(entity.track, {\"count\": 1}) الحالي",
|
||||
"decrease": "تنقيص",
|
||||
"delete": "حذف",
|
||||
"descending": "تنازلي",
|
||||
@@ -102,7 +102,7 @@
|
||||
"path": "المسار",
|
||||
"playerMustBePaused": "يجب إيقاف المشغل",
|
||||
"preview": "معاينة",
|
||||
"previousSong": "$t(entity.track_one) السابق",
|
||||
"previousSong": "$t(entity.track, {\"count\": 1}) السابق",
|
||||
"quit": "خروج",
|
||||
"random": "عشوائي",
|
||||
"rating": "التقييم",
|
||||
@@ -117,7 +117,12 @@
|
||||
"saveAndReplace": "حفظ واستبدال",
|
||||
"saveAs": "حفظ بإسم",
|
||||
"search": "بحث",
|
||||
"setting": "إعداد",
|
||||
"setting_zero": "إعداد",
|
||||
"setting_one": "",
|
||||
"setting_two": "",
|
||||
"setting_few": "",
|
||||
"setting_many": "",
|
||||
"setting_other": "",
|
||||
"share": "نشر",
|
||||
"size": "حجم",
|
||||
"sortOrder": "الترتيب",
|
||||
|
||||
@@ -2,46 +2,55 @@
|
||||
"page": {
|
||||
"sidebar": {
|
||||
"myLibrary": "La meva llibreria",
|
||||
"albumArtists": "$t(entity.albumArtist_other)",
|
||||
"albums": "$t(entity.album_other)",
|
||||
"artists": "$t(entity.artist_other)",
|
||||
"folders": "$t(entity.folder_other)",
|
||||
"genres": "$t(entity.genre_other)",
|
||||
"albumArtists": "$t(entity.albumArtist, {\"count\": 2})",
|
||||
"albums": "$t(entity.album, {\"count\": 2})",
|
||||
"artists": "$t(entity.artist, {\"count\": 2})",
|
||||
"folders": "$t(entity.folder, {\"count\": 2})",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})",
|
||||
"home": "$t(common.home)",
|
||||
"playlists": "$t(entity.playlist_other)",
|
||||
"playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"search": "$t(common.search)",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"tracks": "$t(entity.track_other)",
|
||||
"nowPlaying": "ara sona",
|
||||
"shared": "$t(entity.playlist_other) compartida"
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"tracks": "$t(entity.track, {\"count\": 2})",
|
||||
"nowPlaying": "s'està reproduint",
|
||||
"shared": "$t(entity.playlist, {\"count\": 2}) compartides",
|
||||
"favorites": "$t(entity.favorite, {\"count\": 2})",
|
||||
"radio": "$t(entity.radioStation, {\"count\": 2})",
|
||||
"collections": "col·leccions"
|
||||
},
|
||||
"albumArtistDetail": {
|
||||
"relatedArtists": "$t(entity.artist_other) similars",
|
||||
"viewAllTracks": "veure totes les $t(entity.track_other)",
|
||||
"relatedArtists": "$t(entity.artist, {\"count\": 2}) similars",
|
||||
"viewAllTracks": "mostra totes les $t(entity.track, {\"count\": 2})",
|
||||
"about": "Sobre {{artist}}",
|
||||
"appearsOn": "apareix a",
|
||||
"recentReleases": "Llançaments recents",
|
||||
"viewDiscography": "Mosta la discografia",
|
||||
"topSongs": "millors cançons",
|
||||
"topSongsFrom": "les millors cançons de {{title}}",
|
||||
"viewAll": "mostra-ho tot"
|
||||
"viewAll": "mostra-ho tot",
|
||||
"groupingTypeAll": "tots els tipus de llançaments",
|
||||
"groupingTypePrimary": "tipus principals de llançament",
|
||||
"favoriteSongs": "Cançons preferides",
|
||||
"topSongsCommunity": "comunitat",
|
||||
"topSongsPersonal": "personal",
|
||||
"favoriteSongsFrom": "cançons preferides de {{title}}"
|
||||
},
|
||||
"albumArtistList": {
|
||||
"title": "$t(entity.albumArtist_other)"
|
||||
"title": "$t(entity.albumArtist, {\"count\": 2})"
|
||||
},
|
||||
"albumDetail": {
|
||||
"moreFromArtist": "més d'aquest $t(entity.artist_one)",
|
||||
"moreFromArtist": "més d'aquest $t(entity.artist, {\"count\": 1})",
|
||||
"moreFromGeneric": "més de {{item}}",
|
||||
"released": "publicat"
|
||||
},
|
||||
"albumList": {
|
||||
"title": "$t(entity.album_other)",
|
||||
"title": "$t(entity.album, {\"count\": 2})",
|
||||
"artistAlbums": "àlbums de {{artist}}",
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album_other)"
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album, {\"count\": 2})"
|
||||
},
|
||||
"appMenu": {
|
||||
"quit": "$t(common.quit)",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"goBack": "torna enrere",
|
||||
"goForward": "avança",
|
||||
"collapseSidebar": "replega la barra lateral",
|
||||
@@ -51,7 +60,11 @@
|
||||
"version": "versió {{version}}",
|
||||
"openBrowserDevtools": "obre les eines de desenvolupament del navegador",
|
||||
"privateModeOff": "desactiva el mode privat",
|
||||
"privateModeOn": "activa el mode privat"
|
||||
"privateModeOn": "activa el mode privat",
|
||||
"commandPalette": "obre la paleta d'ordres",
|
||||
"selectMusicFolder": "selecciona una carpeta de música",
|
||||
"noMusicFolder": "no s'ha seleccionat cap carpeta de música",
|
||||
"multipleMusicFolders": "{{count}} carpetes de música seleccionades"
|
||||
},
|
||||
"contextMenu": {
|
||||
"addFavorite": "$t(action.addToFavorites)",
|
||||
@@ -76,13 +89,15 @@
|
||||
"showDetails": "informació",
|
||||
"numberSelected": "{{count}} seleccionat",
|
||||
"shareItem": "comparteix l'element",
|
||||
"goToAlbumArtist": "Ves a $t(entity.albumArtist_one)",
|
||||
"goToAlbum": "ves a $t(entity.album_one)"
|
||||
"goToAlbumArtist": "Ves a $t(entity.albumArtist, {\"count\": 1})",
|
||||
"goToAlbum": "ves a $t(entity.album, {\"count\": 1})",
|
||||
"moveItems": "$t(action.moveItems)",
|
||||
"goTo": "ves a"
|
||||
},
|
||||
"genreList": {
|
||||
"title": "$t(entity.genre_other)",
|
||||
"showAlbums": "mostra $t(entity.album_other) $t(entity.genre_one)",
|
||||
"showTracks": "mostra $t(entity.track_other) $t(entity.genre_one)"
|
||||
"title": "$t(entity.genre, {\"count\": 2})",
|
||||
"showAlbums": "mostra $t(entity.album, {\"count\": 2}) de $t(entity.genre, {\"count\": 1})",
|
||||
"showTracks": "mostra $t(entity.track, {\"count\": 2}) de $t(entity.genre, {\"count\": 1})"
|
||||
},
|
||||
"home": {
|
||||
"title": "$t(common.home)",
|
||||
@@ -90,15 +105,16 @@
|
||||
"newlyAdded": "afegits recentment",
|
||||
"mostPlayed": "els més reproduïts",
|
||||
"recentlyPlayed": "reproduït recentment",
|
||||
"recentlyReleased": "estrenat fa poc"
|
||||
"recentlyReleased": "estrenat fa poc",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})"
|
||||
},
|
||||
"playlistList": {
|
||||
"title": "$t(entity.playlist_other)"
|
||||
"title": "$t(entity.playlist, {\"count\": 2})"
|
||||
},
|
||||
"trackList": {
|
||||
"title": "$t(entity.track_other)",
|
||||
"title": "$t(entity.track, {\"count\": 2})",
|
||||
"artistTracks": "pistes de {{artist}}",
|
||||
"genreTracks": "\"{{genre}}\" $t(entity.track_other)"
|
||||
"genreTracks": "$t(entity.track, {\"count\": 2}) \"{{genre}}\""
|
||||
},
|
||||
"manageServers": {
|
||||
"username": "nom d'usuari",
|
||||
@@ -136,7 +152,25 @@
|
||||
"generalTab": "general",
|
||||
"hotkeysTab": "tecles d'accés ràpid",
|
||||
"playbackTab": "reproducció",
|
||||
"windowTab": "finestra"
|
||||
"windowTab": "finestra",
|
||||
"analytics": "analítiques",
|
||||
"updates": "actualitza",
|
||||
"cache": "memòria cau",
|
||||
"application": "aplicació",
|
||||
"queryBuilder": "constructor de consultes",
|
||||
"theme": "tema",
|
||||
"controls": "controls",
|
||||
"sidebar": "barra lateral",
|
||||
"remote": "remot",
|
||||
"exportImport": "importa/exporta",
|
||||
"scrobble": "scrobble",
|
||||
"audio": "àudio",
|
||||
"lyrics": "lletra",
|
||||
"transcoding": "transcodificació",
|
||||
"discord": "discord",
|
||||
"logger": "registres",
|
||||
"playerFilters": "filtres de reproducció",
|
||||
"lyricsDisplay": "mostra la lletra"
|
||||
},
|
||||
"globalSearch": {
|
||||
"commands": {
|
||||
@@ -153,6 +187,28 @@
|
||||
},
|
||||
"playlist": {
|
||||
"reorder": "el reordenament només s'activa quan s'ordena per id"
|
||||
},
|
||||
"favorites": {
|
||||
"title": "$t(entity.favorite, {\"count\": 2})"
|
||||
},
|
||||
"folderList": {
|
||||
"title": "$t(entity.folder, {\"count\": 2})"
|
||||
},
|
||||
"radioList": {
|
||||
"title": "emissores de ràdio"
|
||||
},
|
||||
"windowBar": {
|
||||
"paused": "(en pausa) ",
|
||||
"privateMode": "(mode privat)"
|
||||
},
|
||||
"collections": {
|
||||
"overrideExisting": "sobreescriu existents",
|
||||
"saveAsCollection": "desa com a col·lecció"
|
||||
},
|
||||
"releasenotes": {
|
||||
"commitsSinceStable": "commits des de {{stable}}",
|
||||
"noNewCommits": "no hi ha hagut commits en aquest període",
|
||||
"noStableReleaseToCompare": "no hi ha actualitzacions disponibles amb les quals comparar"
|
||||
}
|
||||
},
|
||||
"common": {
|
||||
@@ -224,9 +280,9 @@
|
||||
"action_other": "accions",
|
||||
"newVersion": "s'ha instal·lat una nova versió ({{version}})",
|
||||
"viewReleaseNotes": "veure les notes de la versió",
|
||||
"currentSong": "$t(entity.track_one) actual",
|
||||
"currentSong": "$t(entity.track, {\"count\": 1}) actual",
|
||||
"limit": "límit",
|
||||
"previousSong": "$t(entity.track_one) anterior",
|
||||
"previousSong": "$t(entity.track, {\"count\": 1}) anterior",
|
||||
"trackNumber": "pista",
|
||||
"albumGain": "guany de l'àlbum",
|
||||
"albumPeak": "pic de l'àlbum",
|
||||
@@ -250,7 +306,9 @@
|
||||
"playerMustBePaused": "cal pausar el reproductor",
|
||||
"restartRequired": "cal reiniciar",
|
||||
"sampleRate": "freqüència de mostreig",
|
||||
"setting": "configuració",
|
||||
"setting_one": "configuració",
|
||||
"setting_many": "configuracions",
|
||||
"setting_other": "configuracions",
|
||||
"trackGain": "guany de pista",
|
||||
"trackPeak": "pic de pista",
|
||||
"gap": "espera",
|
||||
@@ -260,7 +318,24 @@
|
||||
"private": "privat",
|
||||
"public": "públic",
|
||||
"recordLabel": "segell discogràfic",
|
||||
"releaseType": "tipus de llançament"
|
||||
"releaseType": "tipus de llançament",
|
||||
"doNotShowAgain": "no tornis a mostrar això",
|
||||
"view": "mostra",
|
||||
"externalLinks": "enllaços externs",
|
||||
"faster": "més ràpid",
|
||||
"noFilters": "cap filtre configurat",
|
||||
"slower": "més lent",
|
||||
"sort": "ordre",
|
||||
"gridRows": "files de la quadrícula",
|
||||
"tableColumns": "columnes de la taula",
|
||||
"itemsMore": "{{count}} més",
|
||||
"countSelected": "{{count}} seleccionats",
|
||||
"retry": "reintenta",
|
||||
"example": "exemple",
|
||||
"mood": "estat d'ànim",
|
||||
"filter_single": "senzill",
|
||||
"filter_multiple": "multi",
|
||||
"rename": "reanomena"
|
||||
},
|
||||
"entity": {
|
||||
"album_one": "àlbum",
|
||||
@@ -287,7 +362,7 @@
|
||||
"playlistWithCount_one": "{{count}} llista de reproducció",
|
||||
"playlistWithCount_many": "{{count}} llistes de reproducció",
|
||||
"playlistWithCount_other": "{{count}} llistes de reproducció",
|
||||
"smartPlaylist": "$t(entity.playlist_one) intel·ligent",
|
||||
"smartPlaylist": "$t(entity.playlist, {\"count\": 1}) intel·ligent",
|
||||
"play_one": "{{count}} reproducció",
|
||||
"play_many": "{{count}} reproduccions",
|
||||
"play_other": "{{count}} reproduccions",
|
||||
@@ -314,37 +389,44 @@
|
||||
"song_other": "cançons",
|
||||
"favorite_one": "preferit",
|
||||
"favorite_many": "preferits",
|
||||
"favorite_other": "preferits"
|
||||
"favorite_other": "preferits",
|
||||
"radioStation_one": "emissora de ràdio",
|
||||
"radioStation_many": "emissores de ràdio",
|
||||
"radioStation_other": "emissores de ràdio",
|
||||
"radioStationWithCount_one": "{{count}} emissora de ràdio",
|
||||
"radioStationWithCount_many": "{{count}} emissores de ràdio",
|
||||
"radioStationWithCount_other": "{{count}} emissores de ràdio"
|
||||
},
|
||||
"form": {
|
||||
"addToPlaylist": {
|
||||
"input_playlists": "$t(entity.playlist_other)",
|
||||
"title": "afegir a una $t(entity.playlist_one)",
|
||||
"input_playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"title": "afegir a una $t(entity.playlist, {\"count\": 1})",
|
||||
"input_skipDuplicates": "salta't els duplicats",
|
||||
"success": "s'ha afegit $t(entity.trackWithCount, {\"count\": {{message}} }) a $t(entity.playlistWithCount, {\"count\": {{numOfPlaylists}} })",
|
||||
"create": "crea $t(entity.playlist_one) {{playlist}}",
|
||||
"searchOrCreate": "cerca $t(entity.playlist_other) o tipus per crear-ne un de nou"
|
||||
"create": "crea $t(entity.playlist, {\"count\": 1}) {{playlist}}",
|
||||
"searchOrCreate": "cerca $t(entity.playlist, {\"count\": 2}) o escriu per crear-ne una de nova"
|
||||
},
|
||||
"createPlaylist": {
|
||||
"input_description": "$t(common.description)",
|
||||
"input_name": "$t(common.name)",
|
||||
"input_owner": "$t(common.owner)",
|
||||
"success": "$t(entity.playlist_one) s'ha creat amb èxit",
|
||||
"title": "crear una $t(entity.playlist_one)",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) s'ha creat amb èxit",
|
||||
"title": "crea una $t(entity.playlist, {\"count\": 1})",
|
||||
"input_public": "públic"
|
||||
},
|
||||
"deletePlaylist": {
|
||||
"success": "$t(entity.playlist_one) s'ha eliminat amb èxit",
|
||||
"title": "elimina la $t(entity.playlist_one)",
|
||||
"input_confirm": "escriviu el nom de la $t(entity.playlist_one) per confirmar"
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) s'ha eliminat amb èxit",
|
||||
"title": "elimina la $t(entity.playlist, {\"count\": 1})",
|
||||
"input_confirm": "escriviu el nom de la $t(entity.playlist, {\"count\": 1}) per confirmar"
|
||||
},
|
||||
"editPlaylist": {
|
||||
"success": "$t(entity.playlist_one) s'ha actualitzat amb èxit",
|
||||
"title": "editar la $t(entity.playlist_one)",
|
||||
"publicJellyfinNote": "Per algun motiu, Jellyfin no exposa si una llista de reproducció és pública o no. Si voleu que es mantingui pública, seleccioneu la següent entrada"
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) s'ha actualitzat amb èxit",
|
||||
"title": "editar la $t(entity.playlist, {\"count\": 1})",
|
||||
"publicJellyfinNote": "Per algun motiu, Jellyfin no exposa si una llista de reproducció és pública o no. Si voleu que es mantingui pública, seleccioneu la següent entrada",
|
||||
"editNote": "es recomana no editar manualment les llistes de reproducció grans. segur que accepteu el risc de perdre dades si sobreescriviu la llista de reproducció existent?"
|
||||
},
|
||||
"lyricSearch": {
|
||||
"input_artist": "$t(entity.artist_one)",
|
||||
"input_artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"input_name": "$t(common.name)",
|
||||
"title": "cerca de lletres"
|
||||
},
|
||||
@@ -361,7 +443,10 @@
|
||||
"success": "servidor afegit correctament",
|
||||
"title": "afegeix un servidor",
|
||||
"input_preferInstantMix": "prefereix el mix instantani",
|
||||
"input_preferInstantMixDescription": "utilitza només el mix instantani per obtenir cançons similars. útil si teniu complements que modifiquin aquest comportament"
|
||||
"input_preferInstantMixDescription": "utilitza només el mix instantani per obtenir cançons similars. útil si teniu complements que modifiquin aquest comportament",
|
||||
"input_preferRemoteUrl": "prefereix l'url públic",
|
||||
"input_remoteUrl": "url públic",
|
||||
"input_remoteUrlPlaceholder": "opcional: url públic per característiques externes"
|
||||
},
|
||||
"shareItem": {
|
||||
"description": "descripció",
|
||||
@@ -369,7 +454,9 @@
|
||||
"setExpiration": "estableix expiració",
|
||||
"success": "s'ha copiat l'enllaç de compartició al porta-retalls (o feu clic aquí per obrir-lo)",
|
||||
"expireInvalid": "la data d'expiració ha de ser al futur",
|
||||
"createFailed": "no s'ha pogut crear el recurs compartit (està habilitat, l'ús compartit?)"
|
||||
"createFailed": "no s'ha pogut crear el recurs compartit (està habilitat, l'ús compartit?)",
|
||||
"copyToClipboard": "Copiar al porta-retalls: Ctrl+C, Enter",
|
||||
"successMustClick": "Compartició creada correctament. Feu clic aquí per obrir-la."
|
||||
},
|
||||
"updateServer": {
|
||||
"success": "s'ha actualitzat el servidor amb èxit",
|
||||
@@ -378,24 +465,58 @@
|
||||
"queryEditor": {
|
||||
"title": "editor de consultes",
|
||||
"input_optionMatchAll": "coincidències totals",
|
||||
"input_optionMatchAny": "coincidències parcials"
|
||||
"input_optionMatchAny": "coincidències parcials",
|
||||
"addRuleGroup": "afegeix el grup de regles",
|
||||
"removeRuleGroup": "elimina el grup de regles",
|
||||
"resetToDefault": "reestableix als valors predeterminats",
|
||||
"clearFilters": "neteja els filtres"
|
||||
},
|
||||
"privateMode": {
|
||||
"enabled": "mode privat actiu; l'estat de reproducció ara està ocult d'integracions externes",
|
||||
"disabled": "mode privat inactiu; l'estat de reproducció ara és visible per les integracions externes",
|
||||
"title": "mode privat"
|
||||
},
|
||||
"largeFetchConfirmation": {
|
||||
"title": "afegeix elements a la cua",
|
||||
"description": "Aquesta acció afegirà tots els elements a la vista filtrada actual"
|
||||
},
|
||||
"shuffleAll": {
|
||||
"title": "reprodueix a l'atzar",
|
||||
"input_genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"input_limit": "quantes cançons?",
|
||||
"input_minYear": "de l'any",
|
||||
"input_maxYear": "fins a l'any",
|
||||
"input_played": "reprodueix el filtre",
|
||||
"input_played_optionAll": "totes les pistes",
|
||||
"input_played_optionUnplayed": "només les pistes sense reproduir",
|
||||
"input_played_optionPlayed": "només les pistes reproduïdes"
|
||||
},
|
||||
"createRadioStation": {
|
||||
"success": "emissora de ràdio creada amb èxit",
|
||||
"title": "crea una emissora de ràdio",
|
||||
"input_homepageUrl": "URL de la pàgina d'inici",
|
||||
"input_name": "nom",
|
||||
"input_streamUrl": "URL de transmissió"
|
||||
},
|
||||
"saveQueue": {
|
||||
"success": "cua de reproducció desada al servidor"
|
||||
},
|
||||
"lyricsExport": {
|
||||
"export": "exporta la lletra",
|
||||
"input_synced": "exporta la lletra sincronitzada",
|
||||
"input_offset": "$t(setting.lyricOffset)"
|
||||
}
|
||||
},
|
||||
"action": {
|
||||
"addToFavorites": "afegir als $t(entity.favorite_other)",
|
||||
"addToPlaylist": "afegir a $t(entity.playlist_one)",
|
||||
"createPlaylist": "crear $t(entity.playlist_one)",
|
||||
"deletePlaylist": "elimina la $t(entity.playlist_one)",
|
||||
"editPlaylist": "edita la $t(entity.playlist_one)",
|
||||
"addToFavorites": "afegeix a $t(entity.favorite, {\"count\": 2})",
|
||||
"addToPlaylist": "afegeix a $t(entity.playlist, {\"count\": 1})",
|
||||
"createPlaylist": "crea $t(entity.playlist, {\"count\": 1})",
|
||||
"deletePlaylist": "elimina la $t(entity.playlist, {\"count\": 1})",
|
||||
"editPlaylist": "edita $t(entity.playlist, {\"count\": 1})",
|
||||
"refresh": "$t(common.refresh)",
|
||||
"removeFromFavorites": "elimina dels $t(entity.favorite_other)",
|
||||
"removeFromPlaylist": "elimina de $t(entity.playlist_one)",
|
||||
"clearQueue": "buidar la cua",
|
||||
"removeFromFavorites": "elimina dels $t(entity.favorite, {\"count\": 2})",
|
||||
"removeFromPlaylist": "elimina de $t(entity.playlist, {\"count\": 1})",
|
||||
"clearQueue": "buida la cua",
|
||||
"removeFromQueue": "treure de la cua",
|
||||
"goToPage": "anar a la pàgina",
|
||||
"openIn": {
|
||||
@@ -403,12 +524,28 @@
|
||||
"musicbrainz": "Obrir a MusicBrainz"
|
||||
},
|
||||
"deselectAll": "deselecciona-ho tot",
|
||||
"viewPlaylists": "veure$t(entity.playlist_other)",
|
||||
"viewPlaylists": "veure $t(entity.playlist, {\"count\": 2})",
|
||||
"moveToNext": "passar al següent",
|
||||
"moveToBottom": "anar al final",
|
||||
"moveToTop": "anar al principi",
|
||||
"setRating": "Qualifica",
|
||||
"toggleSmartPlaylistEditor": "canvia l'editor $t(entity.smartPlaylist)"
|
||||
"toggleSmartPlaylistEditor": "canvia l'editor $t(entity.smartPlaylist)",
|
||||
"downloadStarted": "s'ha iniciat la descàrrega de {{count}} elements",
|
||||
"moveUp": "mou amunt",
|
||||
"moveDown": "mou avall",
|
||||
"holdToMoveToTop": "mantingueu premut per moure al capdamunt",
|
||||
"holdToMoveToBottom": "mantingueu premut per moure al capdavall",
|
||||
"moveItems": "mou elements",
|
||||
"shuffle": "mescla",
|
||||
"shuffleAll": "mescla-ho tot",
|
||||
"shuffleSelected": "mescla els seleccionats",
|
||||
"viewMore": "mostra'n més",
|
||||
"createRadioStation": "crea $t(entity.radioStation, {\"count\": 1})",
|
||||
"deleteRadioStation": "elimina $t(entity.radioStation, {\"count\": 1})",
|
||||
"addOrRemoveFromSelection": "afegeix o elimina de la selecció",
|
||||
"selectRangeOfItems": "selecciona un interval d'elements",
|
||||
"selectAll": "selecciona-ho tot",
|
||||
"openApplicationDirectory": "obre el directori de l'aplicació"
|
||||
},
|
||||
"setting": {
|
||||
"language_description": "estableix l'idioma de l'aplicació ($t(common.restartRequired))",
|
||||
@@ -416,15 +553,14 @@
|
||||
"playButtonBehavior_optionAddNext": "$t(player.addNext)",
|
||||
"playButtonBehavior_optionPlay": "$t(player.play)",
|
||||
"playButtonBehavior_optionPlayShuffled": "$t(player.shuffle)",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album_one)",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album, {\"count\": 1})",
|
||||
"replayGainMode_optionNone": "$t(common.none)",
|
||||
"replayGainMode_optionTrack": "$t(entity.track_one)",
|
||||
"replayGainMode_optionTrack": "$t(entity.track, {\"count\": 1})",
|
||||
"font": "tipus de lletra",
|
||||
"fontType": "selecció de tipus de lletra",
|
||||
"fontType_optionBuiltIn": "tipus de lletra integrats",
|
||||
"fontType_optionCustom": "tipus de lletra personalitzats",
|
||||
"fontType_optionSystem": "tipus de lletra del sistema",
|
||||
"disableAutomaticUpdates": "desactivar les actualitzacions automàtiques",
|
||||
"disableLibraryUpdateOnStartup": "desactiva la comprovació de noves versions a l'inici",
|
||||
"homeConfiguration": "configuració de la pàgina d'inici",
|
||||
"sidebarConfiguration": "configuració de la barra lateral",
|
||||
@@ -434,7 +570,7 @@
|
||||
"sidePlayQueueStyle_optionAttached": "unida",
|
||||
"sidePlayQueueStyle_optionDetached": "separada",
|
||||
"audioDevice": "dispositiu d'àudio",
|
||||
"audioDevice_description": "seleccioneu el dispositiu d'àudio que voleu utilitzar per a la reproducció (només pel reproductor web)",
|
||||
"audioDevice_description": "seleccioneu el dispositiu d'àudio que voleu utilitzar per a la reproducció",
|
||||
"audioPlayer": "reproductor d'àudio",
|
||||
"audioPlayer_description": "seleccioneu el reproductor d'àudio que voleu utilitzar per a la reproducció",
|
||||
"sidebarConfiguration_description": "selecciona els elements i l'ordre en què apareixen a la barra lateral",
|
||||
@@ -480,9 +616,9 @@
|
||||
"customFontPath_description": "estableix la ruta a una font personalitzada per utilitzar-la a l'aplicació",
|
||||
"discordApplicationId": "id d'aplicació de {{discord}}",
|
||||
"discordApplicationId_description": "l'id d'aplicació per l'estat d'activitat de {{discord}} (per defecte, {{defaultId}})",
|
||||
"discordPausedStatus": "mosta l'estat d'activitat quan està en pausa",
|
||||
"discordPausedStatus": "mostra l'estat d'activitat quan està en pausa",
|
||||
"discordPausedStatus_description": "si està activat, l'estat es mostrarà quan el reproductor estigui pausat",
|
||||
"discordIdleStatus": "mosta l'estat d'activitat en inactivitat",
|
||||
"discordIdleStatus": "mosta l'estat d'activitat quan està inactiu",
|
||||
"discordIdleStatus_description": "si està activat, s'actualitzarà l'estat mentre el reproductor estigui inactiu",
|
||||
"discordListening": "mosta l'estat com escoltant",
|
||||
"discordListening_description": "mosta l'estat com escoltant en comptes de jugant",
|
||||
@@ -490,14 +626,10 @@
|
||||
"discordServeImage": "serveix imatges de {{discord}} des del servidor",
|
||||
"discordServeImage_description": "comparteix la caràtula per l'estat d'activitat de {{discord}} des del servidor; només disponible per Jellyfin i Navidrome. {{discord}} fa ser un bot per trobar les imatges, de manera que el vostre servidor ha de ser visible per l'internet públic",
|
||||
"discordUpdateInterval": "interval d'actualització de l'estat d'activitat de {{discord}}",
|
||||
"doubleClickBehavior": "posa en cua totes les pistes cercades en fer doble clic",
|
||||
"doubleClickBehavior_description": "si està actiu, totes les pistes coincidents en una cerca de pistes es posaran a la cua. altrament, només la que seleccioneu s'afegirà a la cua",
|
||||
"externalLinks": "mostra enllaços externs",
|
||||
"externalLinks_description": "permet mostrar enllaços externs (Last.fm, MusicBrainz) a les pàgines d'artista/àlbum",
|
||||
"exitToTray": "surt a la safata",
|
||||
"exitToTray_description": "en sortir de l'aplicació, minimitza-la a la safa del sistema",
|
||||
"floatingQueueArea": "mostra la zona flotant de la cua",
|
||||
"floatingQueueArea_description": "mostra una icona flotant al costat dret de la pantalla per veure la cua de reproducció",
|
||||
"followLyric": "segueix la lletra actual",
|
||||
"followLyric_description": "desplaça la lletra a la posició de reproducció actual",
|
||||
"preferLocalLyrics": "prefereix les lletres locals",
|
||||
@@ -507,8 +639,6 @@
|
||||
"gaplessAudio": "àudio sense pauses",
|
||||
"gaplessAudio_description": "estableix la configuració d'àudio sense pauses per mpv",
|
||||
"gaplessAudio_optionWeak": "feble (recomanat)",
|
||||
"genreBehavior": "comportament predeterminat per les pàgines de gènere",
|
||||
"genreBehavior_description": "determina si clicar sobre un gènere obre per defecte la llista de pistes o d'àlbums",
|
||||
"globalMediaHotkeys": "tecles de drecera globals",
|
||||
"globalMediaHotkeys_description": "activa o desactiva l'ús de les tecles multimèdia del sistema per controlar la reproducció",
|
||||
"homeConfiguration_description": "configura quins objectes es mostren, i en quin ordre, a la pàgina d'inici",
|
||||
@@ -554,7 +684,7 @@
|
||||
"lyricFetch": "extreu la lletra d'internet",
|
||||
"lyricFetch_description": "extreu la lletra de diverses fonts d'internet",
|
||||
"lyricFetchProvider": "proveïdors de lletres",
|
||||
"lyricFetchProvider_description": "selecciona els proveïdors de lletres. l'ordre en què apareixen és l'ordre en què es consultaran",
|
||||
"lyricFetchProvider_description": "selecciona els proveïdors de lletres",
|
||||
"lyricOffset": "desfasament de la lletra (ms)",
|
||||
"lyricOffset_description": "desplaça la lletra els mil·lisegons especificats",
|
||||
"minimizeToTray": "minimitza a la safata",
|
||||
@@ -578,8 +708,6 @@
|
||||
"playbackStyle_optionNormal": "normal",
|
||||
"playButtonBehavior": "comportament del botó de reproducció",
|
||||
"playButtonBehavior_description": "estableix el comportament predeterminat del botó de reproducció quan s'afegeixen cançons a la cua",
|
||||
"playerAlbumArtResolution": "resolució de la caràtula de l'àlbum al reproductor",
|
||||
"playerAlbumArtResolution_description": "la resolució de la previsualització gran de la caràtula al reproductor. si és més alta, serà més nítida, però es carregarà més lent. el valor predeterminat 0 vol dir automàtic",
|
||||
"playerbarOpenDrawer": "activa el reproductor en pantalla completa",
|
||||
"playerbarOpenDrawer_description": "permet fer clic a la barra de reproducció per obrir el reproductor de pantalla completa",
|
||||
"remotePassword": "contrasenya del servidor de control remot",
|
||||
@@ -662,9 +790,9 @@
|
||||
"releaseChannel_optionLatest": "última versió",
|
||||
"releaseChannel_optionBeta": "beta",
|
||||
"releaseChannel": "canal de versions",
|
||||
"releaseChannel_description": "tria entre versions estables i versions beta per les actualitzacions automàtiques",
|
||||
"releaseChannel_description": "trieu entre versions estables i beta o alfa (diàries) per les actualitzacions automàtiques",
|
||||
"mediaSession": "activa Media Session",
|
||||
"mediaSession_description": "activa la integració amb Windows Media Session per mostrar els controls multimèdia i les metadades a l'indicador de volum del sistema i la pantalla de bloqueig (només per Windows)",
|
||||
"mediaSession_description": "activa la integració amb Media Session per mostrar els controls multimèdia i les metadades a l'indicador de volum del sistema i la pantalla de bloqueig",
|
||||
"crossfadeStyle": "estil de fosa encadenada",
|
||||
"discordRichPresence": "estat d'activitat de {{discord}}",
|
||||
"enableAutoTranslation_description": "activa la traducció automàtica en carregar la lletra",
|
||||
@@ -679,17 +807,108 @@
|
||||
"exportImportSettings_importSuccess": "la configuració s'ha importat correctament!",
|
||||
"exportImportSettings_notValidJSON": "el fitxer que heu seleccionat no és un JSON vàlid",
|
||||
"exportImportSettings_offendingKeyError": "\"{{offendingKey}}\" és incorrecte: {{reason}}",
|
||||
"language": "llengua"
|
||||
"language": "llengua",
|
||||
"notify": "activa les notificacions de cançons",
|
||||
"notify_description": "mostra notificacions quan la cançó actual canviï",
|
||||
"transcode": "activa la transcodificació",
|
||||
"autoDJ": "DJ automàtic",
|
||||
"autoDJ_description": "afegeix cançons similars a la cua automàticament",
|
||||
"autoDJ_itemCount": "número d'elements",
|
||||
"autoDJ_itemCount_description": "el nombre d'elements que s'intenten afegir a la cua quan el DJ automàtic està activat",
|
||||
"autoDJ_timing": "temps",
|
||||
"autoDJ_timing_description": "el nombre de cançons que han de quedar a la cua per activar el DJ automàtic",
|
||||
"analyticsDisable": "Desactiva les analítiques basades en l'ús",
|
||||
"analyticsDisable_description": "S'envien dades d'ús anonimitzades al desenvolupador per ajudar a millorar l'aplicació",
|
||||
"followCurrentSong_description": "desplaça automàticament la cua de reproducció a la cançó en reproducció",
|
||||
"followCurrentSong": "segueix la cançó actual",
|
||||
"logLevel": "nivell de registre",
|
||||
"logLevel_description": "estableix el nivell mínim de registre que s'ha de mostrar. debug mostra tots els missatges, error mostra només els errors",
|
||||
"logLevel_optionDebug": "debug",
|
||||
"logLevel_optionError": "error",
|
||||
"logLevel_optionInfo": "info",
|
||||
"logLevel_optionWarn": "avís",
|
||||
"playerFilters": "filtra les cançons de la cua",
|
||||
"playerFilters_description": "evita afegir cançons a la cua segons els següents criteris",
|
||||
"playerbarSlider": "barra lliscadora de reproducció",
|
||||
"playerbarSlider_description": "la forma d'ona no es recomana si utilitzeu una connexió d'internet lenta o mesurada",
|
||||
"playerbarSliderType_optionSlider": "lliscador",
|
||||
"playerbarSliderType_optionWaveform": "forma d'ona",
|
||||
"playerbarWaveformAlign": "alineament de la forma d'ona",
|
||||
"playerbarWaveformAlign_optionTop": "superior",
|
||||
"playerbarWaveformAlign_optionCenter": "centrat",
|
||||
"playerbarWaveformAlign_optionBottom": "inferior",
|
||||
"playerbarWaveformBarWidth": "amplada de la forma d'ona",
|
||||
"playerbarWaveformGap": "buits de la forma d'ona",
|
||||
"playerbarWaveformRadius": "radi de la forma d'ona",
|
||||
"showLyricsInSidebar_description": "s'afegirà un tauler a la cua de reproducció que mostra la lletra",
|
||||
"showLyricsInSidebar": "mostra la lletra a la barra lateral del reproductor",
|
||||
"showVisualizerInSidebar_description": "s'afegirà un tauler a la barra lateral de reproducció que mostra el visualitzador",
|
||||
"showVisualizerInSidebar": "mostra el visualitzador a la barra laterla de reproducció",
|
||||
"audioFadeOnStatusChange": "fosa d'àudio en canviar d'estat",
|
||||
"audioFadeOnStatusChange_description": "activa la fosa de sortida i entrada en reproduir o pausar",
|
||||
"queryBuilder": "constructor de consultes",
|
||||
"queryBuilderCustomFields_inputLabel": "discogràfica",
|
||||
"queryBuilderCustomFields_inputTag": "etiqueta",
|
||||
"queryBuilderCustomFields": "camps personalitzats",
|
||||
"queryBuilderCustomFields_description": "afegeix camps personalitzats pel constructor de consultes",
|
||||
"useThemeAccentColor": "fes servir el color d'accent del tema",
|
||||
"useThemeAccentColor_description": "fes servir el color primari definit pel tema seleccionat en comptes del color d'accent personalitzat",
|
||||
"artistRadioCount_description": "estableix el número de cançons per cercar per la ràdio d'artista i pista",
|
||||
"artistRadioCount": "recompte de ràdios d'artista o pista",
|
||||
"imageResolution": "resolució d'imatge",
|
||||
"imageResolution_description": "la resolució per les imatges que s'utilitzen a l'aplicació. un valor de 0 equival a la resolució nativa de la imatge",
|
||||
"imageResolution_optionTable": "taula",
|
||||
"imageResolution_optionItemCard": "targeta d'element",
|
||||
"imageResolution_optionSidebar": "tauler lateral",
|
||||
"imageResolution_optionHeader": "encapçalament",
|
||||
"imageResolution_optionFullScreenPlayer": "reproductor de pantalla completa",
|
||||
"showRatings_description": "controla si es mostren les estrelles de valoració a la interfície",
|
||||
"showRatings": "mostra la valoració d'estrelles",
|
||||
"combinedLyricsAndVisualizer_description": "combina la lletra i el visualitzador en un sol tauler",
|
||||
"combinedLyricsAndVisualizer": "combina la lletra i el visualitzador al tauler lateral del reproductor",
|
||||
"artistReleaseTypeConfiguration": "configuració de tipus de llançament d'artista",
|
||||
"artistReleaseTypeConfiguration_description": "configura quins llançaments es mostren, i en quin ordre, a la pàgina d'artista de l'àlbum",
|
||||
"hotkey_listNavigateToPage": "navega per la llista fins a la pàgina de l'element",
|
||||
"hotkey_listPlayDefault": "reprodueix llista",
|
||||
"hotkey_listPlayLast": "reprodueix la llista al final",
|
||||
"hotkey_listPlayNext": "reprodueix la llista a continuació",
|
||||
"hotkey_listPlayNow": "reprodueix la llista ara",
|
||||
"mpvExtraParameters": "paràmetres addicionals d'mpv",
|
||||
"mpvExtraParameters_description": "arguments addicionals per l'mpv",
|
||||
"pathReplace": "substitució de la ruta de l'arxiu",
|
||||
"pathReplace_description": "substitueix la ruta d'arxiu predeterminada del servidor",
|
||||
"pathReplace_optionRemovePrefix": "elimina el prefix",
|
||||
"pathReplace_optionAddPrefix": "afegeix prefix",
|
||||
"homeFeatureStyle_description": "controla l'estil del carrusel de destacats de l'inici",
|
||||
"homeFeatureStyle": "estil del carrusel de destacats de l'inici",
|
||||
"homeFeatureStyle_optionMultiple": "múltiple",
|
||||
"homeFeatureStyle_optionSingle": "simple",
|
||||
"enableGridMultiSelect": "activa la selecció múltiple de quadrícula",
|
||||
"enableGridMultiSelect_description": "quan està activada, podeu seleccionar més d'un element en la vista de quadrícula; si feu clic en la imatge d'un element de la quadrícula, accedireu a la pàgina de l'element",
|
||||
"sidebarPlaylistSorting_description": "permet ordenar manualment les llistes de reproducció a la barra lateral arrossegant amb el ratolí en comptes de seguir l'ordre predeterminat del servidor",
|
||||
"sidebarPlaylistSorting": "ordenació de llistes de reproducció de la barra lateral",
|
||||
"sidebarPlaylistListFilterRegex_description": "amaga les llistes de reproducció de la barra lateral que coincideixin amb aquesta expressió regular",
|
||||
"sidebarPlaylistListFilterRegex_placeholder": "ex. ^Mescla diària.*",
|
||||
"sidebarPlaylistListFilterRegex": "regex pel filtre de llistes",
|
||||
"analyticsEnable": "envia analítiques basades en l'ús",
|
||||
"analyticsEnable_description": "s'envien dades d'ús anonimitzades al desenvolupar per ajudar a millorar l'aplicació",
|
||||
"automaticUpdates": "actualitzacions automàtiques",
|
||||
"automaticUpdates_description": "cerca i instal·la actualitzacions automàticament",
|
||||
"releaseChannel_optionAlpha": "alfa (diària)",
|
||||
"blurExplicitImages": "desenfoca imatges explícites",
|
||||
"blurExplicitImages_description": "les caràtules d'àlbums i cançons marcades com a explícites quedaran desenfocades",
|
||||
"discordStateIcon": "mostra la icona de reproducció",
|
||||
"discordStateIcon_description": "mostra una petita icona de reproducció a l'estat d'activitat. l'icona de pausa es mostra quan \"mostra l'estat d'activitat quan està en pausa\" està activat"
|
||||
},
|
||||
"table": {
|
||||
"column": {
|
||||
"albumCount": "$t(entity.album_other)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"channels": "$t(common.channel, {\"count\": 2})",
|
||||
"codec": "$t(common.codec)",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"size": "$t(common.size)",
|
||||
"songCount": "$t(entity.track_other)",
|
||||
"songCount": "$t(entity.track, {\"count\": 2})",
|
||||
"releaseYear": "any",
|
||||
"playCount": "reproduccions",
|
||||
"releaseDate": "data de llançament",
|
||||
@@ -706,7 +925,10 @@
|
||||
"lastPlayed": "última reproducció",
|
||||
"path": "ruta",
|
||||
"rating": "qualificació",
|
||||
"title": "títol"
|
||||
"title": "títol",
|
||||
"bitDepth": "$t(common.bitDepth)",
|
||||
"sampleRate": "$t(common.sampleRate)",
|
||||
"owner": "propietari"
|
||||
},
|
||||
"config": {
|
||||
"general": {
|
||||
@@ -717,27 +939,49 @@
|
||||
"displayType": "tipus de visualització",
|
||||
"itemGap": "espai entre elements (px)",
|
||||
"itemSize": "mida dels elements (px)",
|
||||
"tableColumns": "columnes de la taula"
|
||||
"tableColumns": "columnes de la taula",
|
||||
"advancedSettings": "opcions avançades",
|
||||
"autosize": "dimensions automàtiques",
|
||||
"moveUp": "mou amunt",
|
||||
"moveDown": "mou avall",
|
||||
"pinToLeft": "ancora a l'esquerra",
|
||||
"pinToRight": "ancora a la dreta",
|
||||
"alignLeft": "alinea a l'esquerra",
|
||||
"alignCenter": "alinea al centre",
|
||||
"alignRight": "alinea a la dreta",
|
||||
"itemsPerRow": "elements per fila",
|
||||
"size_default": "predeterminat",
|
||||
"size_compact": "compacte",
|
||||
"size_large": "gran",
|
||||
"pagination": "paginació",
|
||||
"pagination_itemsPerPage": "elements per pàgina",
|
||||
"pagination_infinite": "infinita",
|
||||
"pagination_paginate": "paginada",
|
||||
"alternateRowColors": "colors de fila alternants",
|
||||
"horizontalBorders": "vores de fila",
|
||||
"rowHoverHighlight": "ressalta en passar el cursor per la fila",
|
||||
"verticalBorders": "vores de columna",
|
||||
"showHeader": "mostra l'encapçalament"
|
||||
},
|
||||
"label": {
|
||||
"actions": "$t(common.action_other)",
|
||||
"album": "$t(entity.album_one)",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"actions": "$t(common.action, {\"count\": 2})",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"biography": "$t(common.biography)",
|
||||
"bitrate": "$t(common.bitrate)",
|
||||
"bpm": "$t(common.bpm)",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"channels": "$t(common.channel, {\"count\": 2})",
|
||||
"codec": "$t(common.codec)",
|
||||
"duration": "$t(common.duration)",
|
||||
"favorite": "$t(common.favorite)",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"note": "$t(common.note)",
|
||||
"owner": "$t(common.owner)",
|
||||
"path": "$t(common.path)",
|
||||
"rating": "$t(common.rating)",
|
||||
"size": "$t(common.size)",
|
||||
"songCount": "$t(entity.track_other)",
|
||||
"songCount": "$t(entity.track, {\"count\": 2})",
|
||||
"title": "$t(common.title)",
|
||||
"year": "$t(common.year)",
|
||||
"playCount": "compte de reproduccions",
|
||||
@@ -747,14 +991,20 @@
|
||||
"discNumber": "número de disc",
|
||||
"lastPlayed": "última reproducció",
|
||||
"rowIndex": "índex de files",
|
||||
"titleCombined": "$t(common.title) (combinat)"
|
||||
"titleCombined": "$t(common.title) (combinat)",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2})",
|
||||
"bitDepth": "$t(common.bitDepth)",
|
||||
"genreBadge": "$t(entity.genre, {\"count\": 1}) (insígnies)",
|
||||
"image": "imatge",
|
||||
"sampleRate": "$t(common.sampleRate)",
|
||||
"composer": "compositor",
|
||||
"titleArtist": "$t(common.title) (artista)"
|
||||
},
|
||||
"view": {
|
||||
"table": "taula",
|
||||
"card": "targeta",
|
||||
"grid": "quadrícula",
|
||||
"list": "llista",
|
||||
"poster": "pòster"
|
||||
"detail": "detall"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -762,17 +1012,17 @@
|
||||
"fromYear": "des de l'any",
|
||||
"releaseYear": "any de llançament",
|
||||
"toYear": "fins a l'any",
|
||||
"album": "$t(entity.album_one)",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"biography": "biografia",
|
||||
"bitrate": "taxa de bits",
|
||||
"bpm": "bpm",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"channels": "$t(common.channel, {\"count\": 2})",
|
||||
"comment": "comentari",
|
||||
"disc": "disc",
|
||||
"duration": "durada",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"id": "identificador",
|
||||
"name": "nom",
|
||||
"note": "nota",
|
||||
@@ -791,7 +1041,7 @@
|
||||
"recentlyAdded": "afegit recentment",
|
||||
"recentlyPlayed": "reproduït recentment",
|
||||
"recentlyUpdated": "actualitzat recentment",
|
||||
"albumCount": "nombre de $t(entity.album_other)",
|
||||
"albumCount": "nombre de $t(entity.album, {\"count\": 2})",
|
||||
"favorited": "preferits",
|
||||
"isCompilation": "és una compilació",
|
||||
"isFavorited": "és un preferit",
|
||||
@@ -801,7 +1051,10 @@
|
||||
"lastPlayed": "última reproducció",
|
||||
"path": "ruta",
|
||||
"songCount": "nombre de cançons",
|
||||
"explicitStatus": "$t(common.explicitStatus)"
|
||||
"explicitStatus": "$t(common.explicitStatus)",
|
||||
"sortName": "ordena per nom",
|
||||
"matchAnd": "i",
|
||||
"matchOr": "o"
|
||||
},
|
||||
"player": {
|
||||
"muted": "silenciat",
|
||||
@@ -816,10 +1069,10 @@
|
||||
"playSimilarSongs": "reproduir cançons similars",
|
||||
"repeat_off": "repetició desactivada",
|
||||
"repeat_all": "repetició",
|
||||
"shuffle": "reproducció aleatòria",
|
||||
"shuffle": "reprodueix (mesclat)",
|
||||
"shuffle_off": "reproducció aleatòria desactivada",
|
||||
"addLast": "afegeix al final",
|
||||
"addNext": "afegeix a continuació",
|
||||
"addLast": "al final",
|
||||
"addNext": "a continuació",
|
||||
"favorite": "marcar com a preferida",
|
||||
"mute": "silencia",
|
||||
"next": "següent",
|
||||
@@ -834,7 +1087,24 @@
|
||||
"skip_forward": "salta endavant",
|
||||
"toggleFullscreenPlayer": "activa el reproductor de pantalla completa",
|
||||
"unfavorite": "elimina de preferits",
|
||||
"pause": "pausa"
|
||||
"pause": "pausa",
|
||||
"addLastShuffled": "al final (mesclat)",
|
||||
"addNextShuffled": "a continuació (mesclat)",
|
||||
"holdToShuffle": "mantén premut per mesclar",
|
||||
"lyrics": "lletra",
|
||||
"restoreQueueFromServer": "restaura la cua del servidor",
|
||||
"saveQueueToServer": "desa la cua al servidor",
|
||||
"artistRadio": "ràdio de l'artista",
|
||||
"trackRadio": "ràdio de la pista",
|
||||
"sleepTimer": "temporitzador d'adormir",
|
||||
"sleepTimer_endOfSong": "final de la cançó actual",
|
||||
"sleepTimer_minutes": "{{count}} min",
|
||||
"sleepTimer_hours": "{{count}} h",
|
||||
"sleepTimer_custom": "personalitzat",
|
||||
"sleepTimer_off": "apagat",
|
||||
"sleepTimer_timeRemaining": "queden {{time}}",
|
||||
"sleepTimer_setCustom": "configura el temporitzador",
|
||||
"sleepTimer_cancel": "cancel·la el temporitzador"
|
||||
},
|
||||
"error": {
|
||||
"credentialsRequired": "credencials requerides",
|
||||
@@ -860,11 +1130,18 @@
|
||||
"notificationDenied": "s'han negat els permisos per enviar notificacions. aquesta opció no té cap efecte",
|
||||
"playbackError": "hi ha hagut un error en intentar reproduir el mitjà",
|
||||
"remoteDisableError": "hi ha hagut un error en intentar $t(common.disable) el servidor remot",
|
||||
"endpointNotImplementedError": "el punt final {{endpoint}} no està implementat per {{serverType}}"
|
||||
"endpointNotImplementedError": "el punt final {{endpoint}} no està implementat per {{serverType}}",
|
||||
"multipleServerSaveQueueError": "la cua de reproducció té una o més cançons que no són del servidor actual, cosa que no és compatible",
|
||||
"saveQueueFailed": "error en desar la cua",
|
||||
"settingsSyncError": "hi ha discrepàncies entre la configuració del renderitzador i el procés principal. reinicieu l'aplicació per aplicar els canvis",
|
||||
"noNetwork": "servidor no disponible",
|
||||
"noNetworkDescription": "no s'ha pogut connectar amb el servidor",
|
||||
"invalidJson": "JSON invàlid",
|
||||
"serverLockSingleServer": "només es permet un servidor quan el servidor està bloquejat"
|
||||
},
|
||||
"releaseType": {
|
||||
"primary": {
|
||||
"album": "$t(entity.album_one)",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"broadcast": "emissió",
|
||||
"ep": "EP",
|
||||
"other": "altres",
|
||||
@@ -889,5 +1166,185 @@
|
||||
"error_oneFileOnly": "Seleccioneu un sol fitxer",
|
||||
"error_readingFile": "hi ha hagut un error en llegir el fitxer: {{errorMessage}}",
|
||||
"mainText": "deixeu anar un fitxer aquí"
|
||||
},
|
||||
"filterOperator": {
|
||||
"after": "és posterior",
|
||||
"afterDate": "és posterior a (data)",
|
||||
"before": "és anterior",
|
||||
"beforeDate": "és anterior a (data)",
|
||||
"contains": "conté",
|
||||
"endsWith": "acaba en",
|
||||
"inPlaylist": "és a",
|
||||
"inTheLast": "és a l'últim",
|
||||
"inTheRange": "és entre",
|
||||
"inTheRangeDate": "és entre (data)",
|
||||
"is": "és",
|
||||
"isNot": "no és",
|
||||
"isGreaterThan": "és més gran que",
|
||||
"isLessThan": "és més petit que",
|
||||
"matchesRegex": "coincideix amb l'expressió regular",
|
||||
"notContains": "no conté",
|
||||
"notInPlaylist": "no és a",
|
||||
"notInTheLast": "no és a l'últim",
|
||||
"startsWith": "comença amb"
|
||||
},
|
||||
"queryBuilder": {
|
||||
"standardTags": "etiquetes estàndard",
|
||||
"customTags": "etiquetes personalitzades"
|
||||
},
|
||||
"datetime": {
|
||||
"minuteShort": "min",
|
||||
"secondShort": "s",
|
||||
"hourShort": "h",
|
||||
"dayShort": "d"
|
||||
},
|
||||
"visualizer": {
|
||||
"visualizerType": "tipus de visualitzador",
|
||||
"cyclePresets": "opcions preconfigurades",
|
||||
"cycleTime": "duració d'un cicle (segons)",
|
||||
"includeAllPresets": "inclou totes les opcions predeterminades",
|
||||
"ignoredPresets": "ignora les opcions predeterminades",
|
||||
"selectedPresets": "opcions predeterminades seleccionades",
|
||||
"randomizeNextPreset": "tria la següent opcions predeterminada a l'atzar",
|
||||
"blendTime": "duració de la mescla",
|
||||
"presets": "opcions predeterminades",
|
||||
"selectPreset": "selecciona una opció predeterminada",
|
||||
"applyPreset": "aplica l'opció predeterminada",
|
||||
"saveAsPreset": "desa com a opció predeterminada",
|
||||
"updatePreset": "actualitza l'opció predeterminada",
|
||||
"copyConfiguration": "copia la configuració",
|
||||
"pasteConfiguration": "enganxa la configuració",
|
||||
"pasteConfigurationPlaceholder": "enganxa la configuració JSON aquí...",
|
||||
"pasteFromClipboard": "enganxa des del portaretalls",
|
||||
"applyConfiguration": "aplica la configuració",
|
||||
"configCopied": "configuració copiada al portaretalls",
|
||||
"configCopyFailed": "error en copiar la configuració",
|
||||
"configPasted": "configuració aplicada correctament",
|
||||
"configPasteFailed": "Error en aplicar la configuració. Reviseu-ne el format.",
|
||||
"configPasteReadFailed": "Error en llegir del portaretalls",
|
||||
"presetName": "Nom de l'opció predeterminada",
|
||||
"presetNamePlaceholder": "Escriviu el nom de l'opció predeterminada",
|
||||
"general": "General",
|
||||
"mode": "Mode",
|
||||
"mode1To8": "Mode 1 - 8",
|
||||
"mode10": "Mode 10",
|
||||
"barSpace": "Espai entre barres",
|
||||
"lineWidth": "Amplitud de línia",
|
||||
"fillAlpha": "Omplir alfa",
|
||||
"channelLayout": "Disseny del canal",
|
||||
"maxFPS": "FPS màxims",
|
||||
"opacity": "Opacitat",
|
||||
"customGradients": "Degradats personalitzats",
|
||||
"addCustomGradient": "Afegeix un degradat personalitzat",
|
||||
"gradientName": "Nom del degradat",
|
||||
"gradientNamePlaceholder": "Nom del degradat",
|
||||
"vertical": "Vertical",
|
||||
"horizontal": "Horitzontal",
|
||||
"colorStops": "Parades de color",
|
||||
"addColor": "Afegeix el color",
|
||||
"position": "Posició",
|
||||
"level": "Nivell",
|
||||
"remove": "Elimina",
|
||||
"custom": "Personalitzat",
|
||||
"builtIn": "Integrat",
|
||||
"colors": "Colors",
|
||||
"colorMode": "Mode de color",
|
||||
"gradient": "Degradat",
|
||||
"gradientLeft": "Esquerra del degradat",
|
||||
"gradientRight": "Dreta del degradat",
|
||||
"fft": "FFT",
|
||||
"fftSize": "Mida del FFT",
|
||||
"smoothing": "Suavitzador",
|
||||
"frequencyRangeAndScaling": "Escala i rang de freqüència",
|
||||
"minimumFrequency": "Freqüència mínima",
|
||||
"maximumFrequency": "Freqüència màxima",
|
||||
"frequencyScale": "Escala de freqüència",
|
||||
"sensitivity": "Sensibilitat",
|
||||
"weightingFilter": "Filtre de pes",
|
||||
"minimumDecibels": "Decibels mínims",
|
||||
"maximumDecibels": "Decibels màxims",
|
||||
"linearAmplitude": "Amplitud lineal",
|
||||
"linearBoost": "Augment lineal",
|
||||
"peakBehavior": "Comportament del pic",
|
||||
"showPeaks": "Mostra els pics",
|
||||
"fadePeaks": "Pics de fosa",
|
||||
"peakLine": "Línea del pic",
|
||||
"gravity": "Gravetat",
|
||||
"peakFadeTime": "Temps de fosa del pic (ms)",
|
||||
"peakHoldTime": "Temps d'espera del pic (ms)",
|
||||
"radialSpectrum": "Espectre radial",
|
||||
"radial": "Radial",
|
||||
"radialInvert": "Invertir el radial",
|
||||
"spinSpeed": "Velocitat de gir",
|
||||
"radius": "Radi",
|
||||
"reflexMirror": "Mirall del reflex",
|
||||
"reflexFit": "Ajustament del reflex",
|
||||
"reflexRatio": "Proporció del reflex",
|
||||
"reflexAlpha": "Alfa del reflex",
|
||||
"reflexBrightness": "Brillantor del reflex",
|
||||
"mirror": "Mirall",
|
||||
"miscellaneousSettings": "Configuració miscel·lànea",
|
||||
"alphaBars": "Barres alfa",
|
||||
"ansiBands": "Bandes ANSI",
|
||||
"ledBars": "Barres LED",
|
||||
"trueLeds": "LEDs reals",
|
||||
"lumiBars": "Barres Lumi",
|
||||
"outlineBars": "Barres de vora",
|
||||
"roundBars": "Barres arrodonides",
|
||||
"lowResolution": "Baixa resolució",
|
||||
"splitGradient": "Degradat dividit",
|
||||
"showFPS": "Mostra els FPS",
|
||||
"showScaleX": "Mostra l'escala X",
|
||||
"noteLabels": "Etiquetes de nota",
|
||||
"showScaleY": "Mostra l'escala Y",
|
||||
"options": {
|
||||
"colorMode": {
|
||||
"gradient": "Degradat",
|
||||
"barIndex": "Índex de barra",
|
||||
"barLevel": "Nivell de barra"
|
||||
},
|
||||
"gradient": {
|
||||
"classic": "Classic",
|
||||
"prism": "Prisme",
|
||||
"rainbow": "Arc de Sant Martí",
|
||||
"steelblue": "Blau d'acer",
|
||||
"orangered": "Vermell ataronjat"
|
||||
},
|
||||
"channelLayout": {
|
||||
"single": "Únic",
|
||||
"dualCombined": "Dual-Combinat",
|
||||
"dualHorizontal": "Dual-Horitzontal",
|
||||
"dualVertical": "Dual-Vertical"
|
||||
},
|
||||
"frequencyScale": {
|
||||
"bark": "Escala Bark",
|
||||
"linear": "Escala Lineal",
|
||||
"log": "Escala logarítmica",
|
||||
"mel": "Escala Mel",
|
||||
"none": "Cap"
|
||||
},
|
||||
"weightingFilter": {
|
||||
"none": "Cap",
|
||||
"a": "A",
|
||||
"b": "B",
|
||||
"c": "C",
|
||||
"d": "D",
|
||||
"z": "Z"
|
||||
},
|
||||
"mode": {
|
||||
"0": "[0] Freqüències discretes",
|
||||
"1": "[1] 1/24a octava / 240 bandes",
|
||||
"2": "[2] 1/12a octava / 120 bandes",
|
||||
"3": "[3] 1/8a octava / 80 bandes",
|
||||
"4": "[4] 1/6a octava / 60 bandes",
|
||||
"5": "[5] 1/4a octava / 40 bandes",
|
||||
"6": "[6] 1/3a octava / 30 bandes",
|
||||
"7": "[7] Mitja octava / 20 bandes",
|
||||
"8": "[8] Octava completa / 10 bandes",
|
||||
"10": "[10] Línia / Gràfic d'àrea"
|
||||
}
|
||||
},
|
||||
"pasteGradient": "enganxa degradat",
|
||||
"pasteGradientPlaceholder": "enganxa el degradat JSON aquí..."
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,27 +1,39 @@
|
||||
{
|
||||
"action": {
|
||||
"deselectAll": "deshautatu dena",
|
||||
"editPlaylist": "editatu $t(entity.playlist_one)",
|
||||
"editPlaylist": "editatu $t(entity.playlist, {\"count\": 1})",
|
||||
"goToPage": "joan orrira",
|
||||
"moveToNext": "mugitu hurrengora",
|
||||
"moveToBottom": "mugitu behera",
|
||||
"moveToTop": "mugitu gora",
|
||||
"refresh": "$t(common.refresh)",
|
||||
"removeFromFavorites": "kendu $t(entity.favorite_other)-(e)tik",
|
||||
"removeFromPlaylist": "kendu $t(entity.playlist_one)-(e)tik",
|
||||
"removeFromFavorites": "kendu gogokoetatik",
|
||||
"removeFromPlaylist": "kendu $t(entity.playlist, {\"count\": 1})-(e)tik",
|
||||
"removeFromQueue": "kendu ilaratik",
|
||||
"setRating": "ezarri balorazioa",
|
||||
"toggleSmartPlaylistEditor": "txandakatu $t(entity.smartPlaylist) editorea",
|
||||
"viewPlaylists": "ikusi $t(entity.playlist_other)",
|
||||
"viewPlaylists": "ikusi $t(entity.playlist, {\"count\": 2})",
|
||||
"openIn": {
|
||||
"lastfm": "Ireki Last.fm-n",
|
||||
"musicbrainz": "Ireki MusicBrainz-en"
|
||||
},
|
||||
"clearQueue": "garbitu ilara",
|
||||
"createPlaylist": "sortu $t(entity.playlist_one)",
|
||||
"deletePlaylist": "ezabatu $t(entity.playlist_one)",
|
||||
"addToFavorites": "gehitu $t(entity.favorite_other)-(e)ra",
|
||||
"addToPlaylist": "gehitu $t(entity.playlist_one)-(e)ra"
|
||||
"createPlaylist": "sortu $t(entity.playlist, {\"count\": 1})",
|
||||
"deletePlaylist": "ezabatu $t(entity.playlist, {\"count\": 1})",
|
||||
"addToFavorites": "gehitu gogokoetara",
|
||||
"addToPlaylist": "gehitu $t(entity.playlist, {\"count\": 1})ra",
|
||||
"createRadioStation": "sortu $t(entity.radioStation, {\"count\": 1})",
|
||||
"deleteRadioStation": "ezabatu $t(entity.radioStation, {\"count\": 1})",
|
||||
"viewMore": "ikusi gehiago",
|
||||
"shuffle": "nahastu",
|
||||
"selectAll": "aukeratu guztiak",
|
||||
"downloadStarted": "{{count}} elementuren deskarga hasi da",
|
||||
"addOrRemoveFromSelection": "gehitu edo kendu hautapenetik",
|
||||
"selectRangeOfItems": "aukeratu elementu sorta bat",
|
||||
"shuffleAll": "nahastu dena",
|
||||
"shuffleSelected": "nahastu aukeratutak",
|
||||
"moveItems": "elementuak mugitu",
|
||||
"openApplicationDirectory": "ireki aplikazioaren direktorioa"
|
||||
},
|
||||
"common": {
|
||||
"add": "gehitu",
|
||||
@@ -38,7 +50,7 @@
|
||||
"configure": "konfiguratu",
|
||||
"confirm": "berretsi",
|
||||
"create": "sortu",
|
||||
"currentSong": "uneko $t(entity.track_one)",
|
||||
"currentSong": "uneko $t(entity.track, {\"count\": 1})",
|
||||
"decrease": "gutxitu",
|
||||
"delete": "ezabatu",
|
||||
"descending": "beheranzkoa",
|
||||
@@ -55,7 +67,8 @@
|
||||
"filter_other": "iragazkiak",
|
||||
"filters": "iragazkiak",
|
||||
"forceRestartRequired": "berreabiarazi aldaketak aplikatzeko... itxi notifikazioa berreabiarazteko",
|
||||
"setting": "ezarpena",
|
||||
"setting_one": "ezarpenak",
|
||||
"setting_other": "",
|
||||
"share": "partekatu",
|
||||
"action_one": "ekintza",
|
||||
"action_other": "ekintzak",
|
||||
@@ -91,7 +104,7 @@
|
||||
"path": "bidea",
|
||||
"playerMustBePaused": "erreproduzitzailea pausatuta egon behar da",
|
||||
"preview": "aurrebista",
|
||||
"previousSong": "aurreko $t(entity.track_one)",
|
||||
"previousSong": "aurreko $t(entity.track, {\"count\": 1})",
|
||||
"quit": "irten",
|
||||
"random": "ausazkoa",
|
||||
"rating": "balorazioa",
|
||||
@@ -124,7 +137,20 @@
|
||||
"clean": "garbia",
|
||||
"private": "pribatua",
|
||||
"public": "publikoa",
|
||||
"releaseType": "argitalpen mota"
|
||||
"releaseType": "argitalpen mota",
|
||||
"countSelected": "{{count}} hautatuta",
|
||||
"view": "ikuspegia",
|
||||
"externalLinks": "kanpoko estekak",
|
||||
"faster": "azkarrago",
|
||||
"noFilters": "ez dago iragazkirik konfiguratuta",
|
||||
"retry": "saiatu berriro",
|
||||
"slower": "motelago",
|
||||
"itemsMore": "{{count}} gehiago",
|
||||
"sort": "ordenatu",
|
||||
"recordLabel": "diskoetxea",
|
||||
"example": "adibidea",
|
||||
"tableColumns": "taulako zutabeak",
|
||||
"doNotShowAgain": "ez erakutsi hau berriro"
|
||||
},
|
||||
"player": {
|
||||
"repeat": "errepikatu",
|
||||
@@ -151,35 +177,53 @@
|
||||
"queue_remove": "kendu hautatutakoak",
|
||||
"repeat_all": "errepikatu dena",
|
||||
"repeat_off": "errepikapena desgaituta",
|
||||
"shuffle": "erreproduzitu ausaz",
|
||||
"shuffle": "erreproduzitu (ausaz)",
|
||||
"shuffle_off": "auza desgaituta",
|
||||
"skip_back": "saltatu atzeraka",
|
||||
"skip_forward": "saltatu aurreraka",
|
||||
"toggleFullscreenPlayer": "txandakatu pantaila osoko erreproduzitzailea",
|
||||
"viewQueue": "ikusi ilara",
|
||||
"playbackFetchCancel": "honek denbora pixka bat behar du... itxi jakinarazpena bertan behera uzteko"
|
||||
"playbackFetchCancel": "honek denbora pixka bat behar du... itxi jakinarazpena bertan behera uzteko",
|
||||
"lyrics": "letrak",
|
||||
"restoreQueueFromServer": "berrezarri ilara zerbitzaritik",
|
||||
"saveQueueToServer": "gorde ilara zerbitzarira",
|
||||
"addLastShuffled": "azkena (ausaz)",
|
||||
"addNextShuffled": "hurrengoa (ausaz)",
|
||||
"artistRadio": "artista irratia",
|
||||
"trackRadio": "pista irratia"
|
||||
},
|
||||
"table": {
|
||||
"config": {
|
||||
"view": {
|
||||
"table": "taula",
|
||||
"list": "zerrenda",
|
||||
"card": "txartela",
|
||||
"grid": "sareta",
|
||||
"poster": "kartela"
|
||||
"grid": "sareta"
|
||||
},
|
||||
"general": {
|
||||
"gap": "$t(common.gap)",
|
||||
"size": "$t(common.size)",
|
||||
"tableColumns": "taula zutabeak",
|
||||
"itemSize": "elementuaren tamaina (px)",
|
||||
"followCurrentSong": "jarraitu uneko abestia"
|
||||
"followCurrentSong": "jarraitu uneko abestia",
|
||||
"size_default": "lehenetsia",
|
||||
"advancedSettings": "ezarpen aurreratuak",
|
||||
"autoFitColumns": "zutabeak automatikoki doitu",
|
||||
"pinToLeft": "ezkerrera finkatu",
|
||||
"pinToRight": "eskuinera finkatu",
|
||||
"alignLeft": "ezkerrean lerrokatu",
|
||||
"alignCenter": "lerrokatu erdian",
|
||||
"alignRight": "eskuinean lerrokatu",
|
||||
"itemGap": "elementuen arteko tartea (px)",
|
||||
"itemsPerRow": "elementuak errenkada bakoitzeko",
|
||||
"size_large": "handia",
|
||||
"pagination_itemsPerPage": "elementuak orrialde bakoitzeko",
|
||||
"pagination_infinite": "infinitua"
|
||||
},
|
||||
"label": {
|
||||
"actions": "$t(common.action_other)",
|
||||
"album": "$t(entity.album_one)",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"biography": "$t(common.biography)",
|
||||
"bitrate": "$t(common.bitrate)",
|
||||
"bpm": "$t(common.bpm)",
|
||||
@@ -187,13 +231,13 @@
|
||||
"codec": "$t(common.codec)",
|
||||
"duration": "$t(common.duration)",
|
||||
"favorite": "$t(common.favorite)",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"note": "$t(common.note)",
|
||||
"owner": "$t(common.owner)",
|
||||
"path": "$t(common.path)",
|
||||
"rating": "$t(common.rating)",
|
||||
"size": "$t(common.size)",
|
||||
"songCount": "$t(entity.track_other)",
|
||||
"songCount": "$t(entity.track, {\"count\": 2})",
|
||||
"title": "$t(common.title)",
|
||||
"year": "$t(common.year)",
|
||||
"titleCombined": "$t(common.title) (batuta)",
|
||||
@@ -201,25 +245,29 @@
|
||||
"playCount": "erreprodukzio kopurua",
|
||||
"lastPlayed": "azken aldiz entzunda",
|
||||
"discNumber": "disko zenbakia",
|
||||
"dateAdded": "gehitze data"
|
||||
"dateAdded": "gehitze data",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2})",
|
||||
"image": "irudia",
|
||||
"bitDepth": "$t(common.bitDepth)",
|
||||
"sampleRate": "$t(common.sampleRate)"
|
||||
}
|
||||
},
|
||||
"column": {
|
||||
"album": "albuma",
|
||||
"albumCount": "$t(entity.album_other)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"biography": "biografia",
|
||||
"bitrate": "bit-emaria",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"codec": "$t(common.codec)",
|
||||
"discNumber": "diskoa",
|
||||
"favorite": "gogokoa",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"path": "bidea",
|
||||
"rating": "balorazioa",
|
||||
"releaseYear": "urtea",
|
||||
"size": "$t(common.size)",
|
||||
"songCount": "$t(entity.track_other)",
|
||||
"songCount": "$t(entity.track, {\"count\": 2})",
|
||||
"title": "tituloa",
|
||||
"trackNumber": "pista",
|
||||
"bpm": "bpm",
|
||||
@@ -228,7 +276,10 @@
|
||||
"releaseDate": "argitalpen data",
|
||||
"lastPlayed": "azken aldiz entzundakoa",
|
||||
"dateAdded": "gehitutako data",
|
||||
"albumArtist": "albumeko artista"
|
||||
"albumArtist": "albumeko artista",
|
||||
"owner": "jabea",
|
||||
"bitDepth": "$t(common.bitDepth)",
|
||||
"sampleRate": "$t(common.sampleRate)"
|
||||
}
|
||||
},
|
||||
"entity": {
|
||||
@@ -260,13 +311,17 @@
|
||||
"play_other": "{{count}} erreprodukzio",
|
||||
"playlistWithCount_one": "erreprodukzio-zerrenda {{count}}",
|
||||
"playlistWithCount_other": "{{count}} erreprodukzio-zerrenda",
|
||||
"smartPlaylist": "$t(entity.playlist_one) adimentsua",
|
||||
"smartPlaylist": "$t(entity.playlist, {\"count\": 1}) adimentsua",
|
||||
"track_one": "pista",
|
||||
"track_other": "pistak",
|
||||
"song_one": "abestia",
|
||||
"song_other": "abestiak",
|
||||
"trackWithCount_one": "pista {{count}}",
|
||||
"trackWithCount_other": "{{count}} pista"
|
||||
"trackWithCount_other": "{{count}} pista",
|
||||
"radioStation_one": "irrati-katea",
|
||||
"radioStation_other": "irrati-kateak",
|
||||
"radioStationWithCount_one": "irrati-kate {{count}}",
|
||||
"radioStationWithCount_other": "{{count}} irrati-kate"
|
||||
},
|
||||
"error": {
|
||||
"apiRouteError": "ezin izan da eskaera bideratu",
|
||||
@@ -292,7 +347,11 @@
|
||||
"badAlbum": "Orrialde hau ikusten ari zara abesti hau album batekoa ez delako. Ziurrenik arazo hau ikusten ari zara zure musika karpetaren goiko mailan abesti bat baduzu. Jellyfinek abestiak karpeta batean badaude taldekatzen ditu bakarrik",
|
||||
"loginRateError": "Saioa hasteko saiakera gehiegi egin dira, saiatu berriro segundo batzuk barru",
|
||||
"notificationDenied": "jakinarazpenetarako baimenak ukatu dira. Ezarpen honek ez du eraginik",
|
||||
"systemFontError": "errore bat gertatu da sistemaren letra-tipoak lortzen saiatzean"
|
||||
"systemFontError": "errore bat gertatu da sistemaren letra-tipoak lortzen saiatzean",
|
||||
"noNetwork": "zerbitzaria ez dago erabilgarri",
|
||||
"noNetworkDescription": "ezin izan da zerbitzari honetara konektatu",
|
||||
"saveQueueFailed": "huts egin du ilara gordetzean",
|
||||
"multipleServerSaveQueueError": "erreprodukzio-ilarak zerbitzarikoak ez diren abesti bat edo gehiago ditu. hau ez da onartzen"
|
||||
},
|
||||
"filter": {
|
||||
"disc": "diskoa",
|
||||
@@ -306,19 +365,19 @@
|
||||
"random": "ausazkoa",
|
||||
"rating": "balorazioa",
|
||||
"trackNumber": "pista",
|
||||
"album": "$t(entity.album_one)",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"biography": "biografia",
|
||||
"bitrate": "bit-emaria",
|
||||
"bpm": "bpm-ak",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"comment": "iruzkina",
|
||||
"favorited": "gogoko gisa markatua",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"search": "bilatu",
|
||||
"title": "tituloa",
|
||||
"albumCount": "$t(entity.album_other) kopurua",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2}) kopurua",
|
||||
"communityRating": "komunitatearen balorazioa",
|
||||
"criticRating": "kritikarien balorazioa",
|
||||
"dateAdded": "gehitutako data",
|
||||
@@ -345,9 +404,9 @@
|
||||
"playbackStyle_optionNormal": "normala",
|
||||
"playButtonBehavior_optionPlay": "$t(player.play)",
|
||||
"playButtonBehavior_optionPlayShuffled": "$t(player.shuffle)",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album_one)",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album, {\"count\": 1})",
|
||||
"replayGainMode_optionNone": "$t(common.none)",
|
||||
"replayGainMode_optionTrack": "$t(entity.track_one)",
|
||||
"replayGainMode_optionTrack": "$t(entity.track, {\"count\": 1})",
|
||||
"font": "letra-tipoa",
|
||||
"hotkey_playbackStop": "gelditu",
|
||||
"buttonSize_description": "erreproduzitzailearen barrako botoien tamaina",
|
||||
@@ -360,7 +419,6 @@
|
||||
"customCss": "css pertsonalizatua",
|
||||
"customFontPath": "letra-tipo pertsonalizatuaren bidea",
|
||||
"customFontPath_description": "aplikazioan erabiliko den letra-tipo pertsonalizatuaren bidea ezartzen du",
|
||||
"disableAutomaticUpdates": "desgaitu eguneratze automatikoak",
|
||||
"discordApplicationId": "{{discord}} aplikazioaren IDa",
|
||||
"followLyric": "jarraitu uneko letra",
|
||||
"font_description": "aplikazioan erabiliko den letra-tipoa ezartzen du",
|
||||
@@ -448,7 +506,6 @@
|
||||
"discordDisplayType_description": "zure egoeran entzuten ari zarena aldatzen du",
|
||||
"discordLinkType": "{{discord}} egoera estekak",
|
||||
"fontType_description": "barneko letra-tipoa feishinek eskaintzen dituen letra-tipoetako bat aukeratzen du. sistemaren letra-tipoa zure sistema eragileak eskaintzen duen edozein letra-tipo hautatzeko aukera ematen dizu. pertsonalizatua zure letra-tipoa eskaintzeko aukera ematen dizu",
|
||||
"genreBehavior": "genero orriaren portaera lehenetsia",
|
||||
"homeConfiguration_description": "konfiguratu zein elementu erakusten diren hasierako orrian eta zein ordenatan",
|
||||
"homeFeature": "etxeko karrusela nabarmendua",
|
||||
"homeFeature_description": "hasierako orrian karrusel nabarmen handia erakutsi behar den ala ez kontrolatzen du",
|
||||
@@ -496,7 +553,6 @@
|
||||
"accentColor": "azentu-kolorea",
|
||||
"clearCache_description": "feishinen 'garbiketa gogorra'. feishinen katxea garbitzeaz gain, hustu nabigatzailearen katxea (gordetako irudiak eta bestelako aktiboak). zerbitzari-kredentzialak eta ezarpenak gorde egiten dira",
|
||||
"clearQueryCache_description": "feishinen 'garbiketa ahula'. honek erreprodukzio-zerrendak eta pisten metadatuak freskatuko ditu eta gordetako letrak berrezarriko ditu. ezarpenak, zerbitzari-kredentzialak eta katxetutako irudiak gorde egiten dira",
|
||||
"doubleClickBehavior": "jarri ilaran bilatutako pista guztiak klik bikoitza egitean",
|
||||
"exitToTray_description": "irten aplikaziotik sistemaren erretilura",
|
||||
"followLyric_description": "mugitu letra uneko erreprodukzio-posiziora",
|
||||
"preferLocalLyrics": "nahiago izan letra lokalak",
|
||||
@@ -523,10 +579,8 @@
|
||||
"playbackStyle_description": "aukeratu audio erreproduzitzailearentzat erabiliko den erreprodukzio estiloa",
|
||||
"playButtonBehavior": "erreprodukzio botoiaren portaera",
|
||||
"playButtonBehavior_description": "ezartzen du erreprodukzio botoiaren portaera lehenetsia abestiak ilaran gehitzean",
|
||||
"playerAlbumArtResolution": "erreproduzitzailearen albumaren arte-azalaren erresoluzioa",
|
||||
"gaplessAudio": "hutsune gabeko audioa",
|
||||
"gaplessAudio_description": "ezartzen du hutsunik gabeko audio ezarpena mpv-rako",
|
||||
"genreBehavior_description": "genero batean klik egiteak abestien edo albumen zerrendan lehenespenez irekitzen den zehazten du",
|
||||
"passwordStore": "pasahitzak/biltegi sekretua",
|
||||
"playerbarOpenDrawer": "txandakatu erreproduzitzailearen barra pantaila osora",
|
||||
"playerbarOpenDrawer_description": "aukera ematen du erreproduzitzailearen barran klik egiteak pantaila osoko erreproduzitzailea irekitzeko",
|
||||
@@ -534,11 +588,94 @@
|
||||
"customCss_description": "css eduki pertsonalizatua. Oharra: edukia eta urruneko URLak debekatutako propietateak dira. Zure edukiaren aurrebista erakusten da behean. Ezarri ez dituzun eremu gehigarriak daude garbiketa dela eta",
|
||||
"enableRemote": "gaitu urruneko kontrol zerbitzaria",
|
||||
"enableRemote_description": "urruneko kontrol zerbitzariari beste gailu batzuei aplikazioa kontrolatzeko aukera ematen dio",
|
||||
"doubleClickBehavior_description": "egia bada, bilaketa batean bat datozen pista guztiak ilaran jarriko dira. bestela, klikatutakoak bakarrik jarriko dira ilaran",
|
||||
"imageAspectRatio_description": "gaituta badago, azaleko artea jatorrizko aspektu-erlazioa erabiliz erakutsiko da. 1:1 ez den arterako, gainerako espazioa hutsik egongo da",
|
||||
"crossfadeStyle": "crossfade estiloa",
|
||||
"discordRichPresence": "{{discord}}-en jarduera-egoera",
|
||||
"enableAutoTranslation": "gaitu itzulpen automatikoa"
|
||||
"enableAutoTranslation": "gaitu itzulpen automatikoa",
|
||||
"exportImportSettings_control_exportText": "esportatu ezarpenak",
|
||||
"exportImportSettings_control_importText": "inportatu ezarpenak",
|
||||
"exportImportSettings_control_title": "inportatu / esportatu ezarpenak",
|
||||
"exportImportSettings_importBtn": "inportatu ezarpenak",
|
||||
"exportImportSettings_importModalTitle": "inportatu feishin ezarpenak",
|
||||
"autoDJ_itemCount": "elementu kopurua",
|
||||
"language": "hizkuntza",
|
||||
"queryBuilderCustomFields_inputTag": "etiketa",
|
||||
"logLevel_optionError": "errore bat",
|
||||
"logLevel_optionInfo": "informazioa",
|
||||
"imageResolution_optionTable": "taula",
|
||||
"imageResolution_optionSidebar": "alboko barra",
|
||||
"replayGainClipping": "{{ReplayGain}} mozketa",
|
||||
"replayGainFallback": "{{ReplayGain}} ordezko aukera",
|
||||
"trayEnabled": "erakutsi erretilua",
|
||||
"artistReleaseTypeConfiguration": "artistaren argitalpen motaren konfigurazioa",
|
||||
"artistReleaseTypeConfiguration_description": "konfiguratu zein argitalpen mota erakusten diren, eta zein ordenatan, albumaren artistaren orrian",
|
||||
"useThemeAccentColor": "erabili gaiaren azentu-kolorea",
|
||||
"useThemeAccentColor_description": "erabili hautatutako gaian definitutako kolore nagusia azentu-kolore pertsonalizatuaren ordez",
|
||||
"showRatings": "erakutsi izarren balorazioak",
|
||||
"showRatings_description": "izarren balorazioen funtzioa interfazean agertzen den ala ez kontrolatzen du",
|
||||
"imageResolution": "irudiaren erresoluzioa",
|
||||
"imageResolution_description": "aplikazioan erabilitako irudien erresoluzioa. 0 balioa erabiliz gero, jatorrizko irudiaren erresoluzioa erabiliko da lehenespenez",
|
||||
"followCurrentSong_description": "automatikoki korritu erreprodukzio-ilara uneko abestira",
|
||||
"followCurrentSong": "jarraitu uneko abestia",
|
||||
"lyricOffset_description": "letra zehaztutako milisegundo kopuruarekin desplazatu",
|
||||
"lyricOffset": "letraren desplazamendua (ms)",
|
||||
"mpvExtraParameters": "mpv parametro gehigarriak",
|
||||
"mpvExtraParameters_description": "mpv-ri pasatzeko argumentu gehigarriak",
|
||||
"notify": "abestien jakinarazpenak gaitu",
|
||||
"notify_description": "erakutsi jakinarazpenak uneko abestia aldatzean",
|
||||
"pathReplace": "fitxategiaren bidearen ordezkapena",
|
||||
"pathReplace_description": "ordezkatu zure zerbitzariaren fitxategi-bide lehenetsia",
|
||||
"pathReplace_optionRemovePrefix": "kendu aurrizkia",
|
||||
"pathReplace_optionAddPrefix": "gehitu aurrizkia",
|
||||
"passwordStore_description": "zein pasahitz/sekretu biltegi erabili. aldatu hau pasahitzak gordetzeko arazoak badituzu",
|
||||
"playerFilters": "Iragazi ilarako abestiak",
|
||||
"sidePlayQueueStyle_description": "alboko erreprodukzio-ilararen estiloa ezartzen du",
|
||||
"mediaSession_description": "Windows Media Session integrazioa gaitzen du, multimedia kontrolak eta metadatuak sistemaren bolumenaren gainjartzean eta blokeo pantailan bistaratuz (Windows bakarrik)",
|
||||
"sidePlayQueueStyle": "alboko erreprodukzio-ilarako estiloa",
|
||||
"skipPlaylistPage": "saltatu erreprodukzio-zerrenda orria",
|
||||
"startMinimized_description": "abiarazi aplikazioa sistemaren erretiluan",
|
||||
"startMinimized": "hasi minimizatuta",
|
||||
"transcode": "gaitu transkodetzea",
|
||||
"transcode_description": "formatu ezberdinetara transkodetzea ahalbidetzen du",
|
||||
"transcodeBitrate_description": "transkodetzeko bit-emaria hautatzen du. 0k zerbitzariari aukeratzen uzten diola esan nahi du",
|
||||
"transcodeBitrate": "transkodetzeko bit-emaria",
|
||||
"transcodeFormat_description": "transkodetzeko formatua hautatzen du. utzi hutsik zerbitzariak erabaki dezan",
|
||||
"transcodeFormat": "transkodetzeko formatua",
|
||||
"queryBuilderCustomFields_inputLabel": "etiketa",
|
||||
"autoDJ": "DJ automatikoa",
|
||||
"autoDJ_description": "automatikoki gehitu antzeko abestiak ilaran",
|
||||
"autoDJ_itemCount_description": "DJ automatikoa gaituta dagoenean ilaran gehitzen saiatu diren elementuen kopurua",
|
||||
"autoDJ_timing_description": "DJ automatikoa aktibatu aurretik ilaran geratzen diren abestien kopurua",
|
||||
"analyticsDisable": "Erabileran oinarritutako analisiei uko egin",
|
||||
"analyticsDisable_description": "Erabilera-datu anonimoak garatzaileari bidaltzen zaizkio aplikazioa hobetzen laguntzeko",
|
||||
"contextMenu_description": "elementu batean eskuineko botoiarekin klik egitean menuan agertzen diren elementuak ezkutatzeko aukera ematen dizu. hautatuta ez dauden elementuak ezkutatuta egongo dira",
|
||||
"enableAutoTranslation_description": "Gaitu itzulpena automatikoki letra kargatzen denean",
|
||||
"exportImportSettings_control_description": "JSON bidez ezarpenak esportatu eta inportatu",
|
||||
"exportImportSettings_destructiveWarning": "Ezarpenak inportatzea arriskutsua da, mesedez, berrikusi goikoa beheko \"inportatu\" klikatu aurretik!",
|
||||
"exportImportSettings_importSuccess": "ezarpenak behar bezala inportatu dira!",
|
||||
"exportImportSettings_offendingKeyError": "\"{{offendingKey}}\" okerra da - {{reason}}",
|
||||
"hotkey_listPlayDefault": "zerrenda erreproduzitu",
|
||||
"hotkey_listPlayLast": "zerrenda erreproduzitu amaieran",
|
||||
"hotkey_listPlayNow": "zerrenda erreproduzitu orain",
|
||||
"logLevel": "erregistro maila",
|
||||
"logLevel_description": "Bistaratzeko erregistroen gutxieneko maila ezartzen du. Debug-ek erregistro guztiak erakusten ditu, «erroreak» erroreak bakarrik erakusten ditu",
|
||||
"logLevel_optionDebug": "arazketa",
|
||||
"playerFilters_description": "saltatu abestiak ilaran gehitzea irizpide hauen arabera",
|
||||
"artistRadioCount_description": "artista eta abestien irratian bilatu beharreko abesti kopurua ezartzen du",
|
||||
"artistRadioCount": "artista/abesti irratiko kopurua",
|
||||
"imageResolution_optionItemCard": "elementu txartela",
|
||||
"imageResolution_optionHeader": "goiburua",
|
||||
"imageResolution_optionFullScreenPlayer": "pantaila osoko erreproduzitzailea",
|
||||
"showVisualizerInSidebar": "erakutsi bistaratzailea erreproduzitzailearen alboko barran",
|
||||
"combinedLyricsAndVisualizer_description": "konbinatu letrak eta bistaratzailea panel berean",
|
||||
"combinedLyricsAndVisualizer": "konbinatu letrak eta bistaratzailea erreproduzitzailearen alboko barran",
|
||||
"preventSleepOnPlayback_description": "saihestu pantaila lotan jartzea musika erreproduzitzen ari den bitartean",
|
||||
"remotePassword_description": "urruneko kontrol zerbitzariaren pasahitza ezartzen du. Kredentzial hauek modu ez-seguruan transferitzen dira lehenespenez, beraz, axola ez zaizun pasahitz bakarra erabili beharko zenuke",
|
||||
"remotePassword": "urruneko kontrol zerbitzariaren pasahitza",
|
||||
"remotePort_description": "urruneko kontrol zerbitzariaren portua ezartzen du",
|
||||
"remotePort": "urruneko kontrol zerbitzariaren ataka",
|
||||
"remoteUsername_description": "urruneko kontrol zerbitzariaren erabiltzaile-izena ezartzen du. Erabiltzaile-izena eta pasahitza hutsik badaude, autentifikazioa desgaituta egongo da",
|
||||
"remoteUsername": "urruneko kontrol zerbitzariaren erabiltzaile-izena"
|
||||
},
|
||||
"form": {
|
||||
"addServer": {
|
||||
@@ -554,26 +691,27 @@
|
||||
"input_legacyAuthentication": "gaitu zaharkitutako autentifikazioa",
|
||||
"success": "zerbitzaria behar bezala gehitu da",
|
||||
"input_preferInstantMix": "nahiago izan berehalako nahasketa",
|
||||
"input_preferInstantMixDescription": "erabili berehalako nahasketa soilik antzeko abestiak lortzeko. erabilgarria portaera hau aldatzen duten pluginak badituzu"
|
||||
"input_preferInstantMixDescription": "erabili berehalako nahasketa soilik antzeko abestiak lortzeko. erabilgarria portaera hau aldatzen duten pluginak badituzu",
|
||||
"input_remoteUrl": "URL publikoa"
|
||||
},
|
||||
"addToPlaylist": {
|
||||
"input_playlists": "$t(entity.playlist_other)",
|
||||
"input_playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"success": "$t(entity.trackWithCount, {\"count\": {{message}} }) gehitu da $t(entity.playlistWithCount, {\"count\": {{numOfPlaylists}} })-ra",
|
||||
"input_skipDuplicates": "saltatu bikoiztuak",
|
||||
"title": "gehitu $t(entity.playlist_one)-(a)ri",
|
||||
"create": "sortu $t(entity.playlist_one) {{playlist}}",
|
||||
"searchOrCreate": "bilatu $t(entity.playlist_other) edo idatzi berri bat sortzeko"
|
||||
"title": "gehitu $t(entity.playlist, {\"count\": 1})-(a)ri",
|
||||
"create": "sortu $t(entity.playlist, {\"count\": 1}) {{playlist}}",
|
||||
"searchOrCreate": "bilatu $t(entity.playlist, {\"count\": 2}) edo idatzi berri bat sortzeko"
|
||||
},
|
||||
"createPlaylist": {
|
||||
"input_description": "$t(common.description)",
|
||||
"input_name": "$t(common.name)",
|
||||
"input_owner": "$t(common.owner)",
|
||||
"input_public": "publikoa",
|
||||
"title": "$t(entity.playlist_one) sortu",
|
||||
"success": "$t(entity.playlist_one) behar bezala sortu da"
|
||||
"title": "$t(entity.playlist, {\"count\": 1}) sortu",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) behar bezala sortu da"
|
||||
},
|
||||
"lyricSearch": {
|
||||
"input_artist": "$t(entity.artist_one)",
|
||||
"input_artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"input_name": "$t(common.name)",
|
||||
"title": "letra bilatu"
|
||||
},
|
||||
@@ -586,19 +724,22 @@
|
||||
"createFailed": "partekatzea sortzeak huts egin du (partekatzea gaituta al dago?)"
|
||||
},
|
||||
"deletePlaylist": {
|
||||
"success": "$t(entity.playlist_one) behar bezala ezabatu da",
|
||||
"title": "$t(entity.playlist_one) ezabatu",
|
||||
"input_confirm": "idatzi $t(entity.playlist_one)-(a)ren izena berresteko"
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) behar bezala ezabatu da",
|
||||
"title": "$t(entity.playlist, {\"count\": 1}) ezabatu",
|
||||
"input_confirm": "idatzi $t(entity.playlist, {\"count\": 1})-(a)ren izena berresteko"
|
||||
},
|
||||
"editPlaylist": {
|
||||
"success": "$t(entity.playlist_one) behar bezala eguneratu da",
|
||||
"title": "$t(entity.playlist_one) editatu",
|
||||
"publicJellyfinNote": "Arrazoiren batengatik, Jellyfin ez du erakusten erreprodukzio-zerrendak publikoak diren edo ez. Hau publiko izaten jarraitzea nahi baduzu, hautatu sarrera hau"
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) behar bezala eguneratu da",
|
||||
"title": "$t(entity.playlist, {\"count\": 1}) editatu",
|
||||
"publicJellyfinNote": "Arrazoiren batengatik, Jellyfin ez du erakusten erreprodukzio-zerrendak publikoak diren edo ez. Hau publiko izaten jarraitzea nahi baduzu, hautatu sarrera hau",
|
||||
"editNote": "ez da gomendatzen eskuzko edizioak egitea erreprodukzio-zerrenda handietarako. ziur zaude onartzen duzula lehendik dagoen erreprodukzio-zerrenda gainidazteagatik datuak galtzeko arriskua?"
|
||||
},
|
||||
"queryEditor": {
|
||||
"title": "kontsulta editorea",
|
||||
"input_optionMatchAll": "guztiak bat etorri",
|
||||
"input_optionMatchAny": "edozeinekin bat etorri"
|
||||
"input_optionMatchAny": "edozeinekin bat etorri",
|
||||
"resetToDefault": "lehenetsitako egoerara berrezarri",
|
||||
"clearFilters": "garbitu iragazkiak"
|
||||
},
|
||||
"updateServer": {
|
||||
"success": "zerbitzaria behar bezala eguneratu da",
|
||||
@@ -608,25 +749,50 @@
|
||||
"title": "modu pribatua",
|
||||
"enabled": "modu pribatua gaituta, erreprodukzio egoera kanpoko integrazioetatik ezkutatuta dago orain",
|
||||
"disabled": "modu pribatua desgaituta, erreprodukzio egoera ikusgai dago orain gaitutako kanpoko integrazioentzat"
|
||||
},
|
||||
"largeFetchConfirmation": {
|
||||
"title": "gehitu elementuak ilaran"
|
||||
},
|
||||
"createRadioStation": {
|
||||
"input_homepageUrl": "hasierako orriaren URLa",
|
||||
"input_name": "izena",
|
||||
"title": "irrati-katea sortu",
|
||||
"success": "irrati-katea behar bezala sortu da"
|
||||
},
|
||||
"lyricsExport": {
|
||||
"export": "esportatu letrak",
|
||||
"input_synced": "esportatu sinkronizatutako letrak",
|
||||
"input_offset": "$t(setting.lyricOffset)"
|
||||
},
|
||||
"shuffleAll": {
|
||||
"input_genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"title": "ausaz erreproduzitu",
|
||||
"input_limit": "zenbat abesti?",
|
||||
"input_played_optionAll": "pista guztiak",
|
||||
"input_played_optionUnplayed": "erreproduzitu gabeko pistak bakarrik",
|
||||
"input_played_optionPlayed": "erreproduzitutako pistak bakarrik"
|
||||
},
|
||||
"saveQueue": {
|
||||
"success": "erreprodukzio-ilara zerbitzarian gordeta"
|
||||
}
|
||||
},
|
||||
"page": {
|
||||
"albumArtistList": {
|
||||
"title": "$t(entity.albumArtist_other)"
|
||||
"title": "$t(entity.albumArtist, {\"count\": 2})"
|
||||
},
|
||||
"albumDetail": {
|
||||
"released": "argitaratuta",
|
||||
"moreFromArtist": "$t(entity.artist_one) honetatik gehiago",
|
||||
"moreFromArtist": "$t(entity.artist, {\"count\": 1}) honetatik gehiago",
|
||||
"moreFromGeneric": "{{item}}-(e)tik gehiago"
|
||||
},
|
||||
"albumList": {
|
||||
"title": "$t(entity.album_other)",
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album_other)",
|
||||
"title": "$t(entity.album, {\"count\": 2})",
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album, {\"count\": 2})",
|
||||
"artistAlbums": "{{artist}}-(a)ren albumak"
|
||||
},
|
||||
"appMenu": {
|
||||
"quit": "$t(common.quit)",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"collapseSidebar": "tolestu alboko barra",
|
||||
"expandSidebar": "zabaldu alboko barra",
|
||||
"goBack": "atzera",
|
||||
@@ -636,7 +802,11 @@
|
||||
"privateModeOn": "aktibatu modu pribatua",
|
||||
"selectServer": "aukeratu zerbitzaria",
|
||||
"version": "bertsioa {{version}}",
|
||||
"openBrowserDevtools": "ireki nabigatzailearen garapen tresnak"
|
||||
"openBrowserDevtools": "ireki nabigatzailearen garapen tresnak",
|
||||
"commandPalette": "ireki komando-paleta",
|
||||
"noMusicFolder": "ez da musika karpetarik hautatu",
|
||||
"selectMusicFolder": "aukeratu musika karpeta",
|
||||
"multipleMusicFolders": "{{count}} musika karpeta aukeratuta"
|
||||
},
|
||||
"manageServers": {
|
||||
"url": "URLa",
|
||||
@@ -668,9 +838,10 @@
|
||||
"playShuffled": "$t(player.shuffle)",
|
||||
"numberSelected": "{{count}} hautatuta",
|
||||
"shareItem": "partekatu elementua",
|
||||
"goToAlbum": "joan $t(entity.album_one)-(e)ra",
|
||||
"goToAlbum": "joan $t(entity.album, {\"count\": 1})-(e)ra",
|
||||
"goToAlbumArtist": "joan albumera",
|
||||
"showDetails": "informazioa lortu"
|
||||
"showDetails": "informazioa lortu",
|
||||
"moveItems": "$t(action.moveItems)"
|
||||
},
|
||||
"fullscreenPlayer": {
|
||||
"config": {
|
||||
@@ -696,9 +867,9 @@
|
||||
"noLyrics": "ez da letrarik aurkitu"
|
||||
},
|
||||
"genreList": {
|
||||
"title": "$t(entity.genre_other)",
|
||||
"showAlbums": "erakutsi $t(entity.genre_one) $t(entity.album_other)",
|
||||
"showTracks": "erakutsi $t(entity.genre_one) $t(entity.track_other)"
|
||||
"title": "$t(entity.genre, {\"count\": 2})",
|
||||
"showAlbums": "erakutsi $t(entity.genre, {\"count\": 1}) $t(entity.album, {\"count\": 2})",
|
||||
"showTracks": "erakutsi $t(entity.genre, {\"count\": 1}) $t(entity.track, {\"count\": 2})"
|
||||
},
|
||||
"globalSearch": {
|
||||
"title": "komandoak",
|
||||
@@ -714,48 +885,68 @@
|
||||
"newlyAdded": "azken aldian gehitutako argitalpenak",
|
||||
"recentlyPlayed": "azken aldian entzundakoak",
|
||||
"recentlyReleased": "azken aldian argitaratutak",
|
||||
"explore": "arakatu zure liburutegitik"
|
||||
"explore": "arakatu zure liburutegitik",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})"
|
||||
},
|
||||
"playlistList": {
|
||||
"title": "$t(entity.playlist_other)"
|
||||
"title": "$t(entity.playlist, {\"count\": 2})"
|
||||
},
|
||||
"setting": {
|
||||
"advanced": "aurreratua",
|
||||
"generalTab": "orokorra",
|
||||
"playbackTab": "erreprodukzioa",
|
||||
"windowTab": "leihoa",
|
||||
"hotkeysTab": "laster-teklak"
|
||||
"hotkeysTab": "laster-teklak",
|
||||
"cache": "katxea",
|
||||
"application": "aplikazioa",
|
||||
"theme": "gaia",
|
||||
"sidebar": "alboko barra",
|
||||
"exportImport": "inportatu/esportatu",
|
||||
"scrobble": "scrobble",
|
||||
"audio": "audioa",
|
||||
"lyrics": "letrak",
|
||||
"discord": "discord",
|
||||
"playerFilters": "erreproduzitzailearen iragazkiak",
|
||||
"updates": "eguneraketa",
|
||||
"queryBuilder": "kontsulta-sortzailea",
|
||||
"controls": "kontrolak",
|
||||
"remote": "urrunekoa",
|
||||
"lyricsDisplay": "erakutsi letrak"
|
||||
},
|
||||
"sidebar": {
|
||||
"albumArtists": "$t(entity.albumArtist_other)",
|
||||
"albums": "$t(entity.album_other)",
|
||||
"artists": "$t(entity.artist_other)",
|
||||
"folders": "$t(entity.folder_other)",
|
||||
"genres": "$t(entity.genre_other)",
|
||||
"albumArtists": "$t(entity.albumArtist, {\"count\": 2})",
|
||||
"albums": "$t(entity.album, {\"count\": 2})",
|
||||
"artists": "$t(entity.artist, {\"count\": 2})",
|
||||
"folders": "$t(entity.folder, {\"count\": 2})",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})",
|
||||
"home": "$t(common.home)",
|
||||
"playlists": "$t(entity.playlist_other)",
|
||||
"playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"search": "$t(common.search)",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"tracks": "$t(entity.track_other)",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"tracks": "$t(entity.track, {\"count\": 2})",
|
||||
"myLibrary": "nire liburutegia",
|
||||
"nowPlaying": "orain erreproduzitzen",
|
||||
"shared": "partekatutako $t(entity.playlist_other)"
|
||||
"shared": "partekatutako $t(entity.playlist, {\"count\": 2})",
|
||||
"favorites": "$t(entity.favorite, {\"count\": 2})",
|
||||
"radio": "$t(entity.radioStation, {\"count\": 2})"
|
||||
},
|
||||
"trackList": {
|
||||
"title": "$t(entity.track_other)",
|
||||
"genreTracks": "\"{{genre}}\" $t(entity.track_other)",
|
||||
"title": "$t(entity.track, {\"count\": 2})",
|
||||
"genreTracks": "\"{{genre}}\" $t(entity.track, {\"count\": 2})",
|
||||
"artistTracks": "{{artist}}-(r)en abestiak"
|
||||
},
|
||||
"albumArtistDetail": {
|
||||
"about": "{{artist}}-(r)i buruz",
|
||||
"relatedArtists": "erlazionatutako $t(entity.artist_other)",
|
||||
"relatedArtists": "erlazionatutako $t(entity.artist, {\"count\": 2})",
|
||||
"topSongs": "abesti nagusiak",
|
||||
"topSongsFrom": "{{title}}-(a)ren abesti nagusiak",
|
||||
"viewAll": "ikusi guztiak",
|
||||
"viewAllTracks": "ikusi $t(entity.track_other) guztiak",
|
||||
"viewAllTracks": "ikusi $t(entity.track, {\"count\": 2}) guztiak",
|
||||
"appearsOn": "agertzen da hemen",
|
||||
"recentReleases": "azken argitalpenak",
|
||||
"viewDiscography": "ikusi diskografia"
|
||||
"viewDiscography": "ikusi diskografia",
|
||||
"groupingTypeAll": "argitalpen mota guztiak",
|
||||
"groupingTypePrimary": "argitalpen mota nagusiak"
|
||||
},
|
||||
"itemDetail": {
|
||||
"copyPath": "kopiatu bidea arbelean",
|
||||
@@ -764,14 +955,148 @@
|
||||
},
|
||||
"playlist": {
|
||||
"reorder": "berrantolaketa IDaren arabera ordenatzean bakarrik gaituta dago"
|
||||
},
|
||||
"folderList": {
|
||||
"title": "$t(entity.folder, {\"count\": 2})"
|
||||
},
|
||||
"favorites": {
|
||||
"title": "$t(entity.favorite, {\"count\": 2})"
|
||||
},
|
||||
"radioList": {
|
||||
"title": "irrati-kateak"
|
||||
}
|
||||
},
|
||||
"releaseType": {
|
||||
"primary": {
|
||||
"album": "$t(entity.album_one)"
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"other": "bestelakoa",
|
||||
"ep": "ep"
|
||||
},
|
||||
"secondary": {
|
||||
"compilation": "konpilazioa"
|
||||
"compilation": "konpilazioa",
|
||||
"audiobook": "audioliburua",
|
||||
"interview": "elkarrizketa",
|
||||
"remix": "nahasketa",
|
||||
"djMix": "dj nahasketa"
|
||||
}
|
||||
},
|
||||
"datetime": {
|
||||
"minuteShort": "m",
|
||||
"secondShort": "s",
|
||||
"hourShort": "h",
|
||||
"dayShort": "d"
|
||||
},
|
||||
"queryBuilder": {
|
||||
"customTags": "etiketa pertsonalizatutak",
|
||||
"standardTags": "etiketa estandarrak"
|
||||
},
|
||||
"filterOperator": {
|
||||
"is": "da",
|
||||
"contains": "dauka",
|
||||
"notContains": "ez dauka",
|
||||
"startsWith": "honekin hasten da",
|
||||
"endsWith": "honekin amaitzen da",
|
||||
"isNot": "ez da"
|
||||
},
|
||||
"visualizer": {
|
||||
"general": "Orokorra",
|
||||
"mode": "Modua",
|
||||
"vertical": "Bertikala",
|
||||
"horizontal": "Horizontala",
|
||||
"position": "Posizioa",
|
||||
"level": "Maila",
|
||||
"remove": "Kendu",
|
||||
"custom": "Pertsonalizatua",
|
||||
"builtIn": "Barneratua",
|
||||
"colors": "Koloreak",
|
||||
"gradient": "Gradientea",
|
||||
"fft": "FFT",
|
||||
"sensitivity": "Sentikortasuna",
|
||||
"smoothing": "Leuntzea",
|
||||
"gravity": "Grabitatea",
|
||||
"radial": "Erradiala",
|
||||
"radius": "Erradioa",
|
||||
"mirror": "Ispilua",
|
||||
"options": {
|
||||
"colorMode": {
|
||||
"gradient": "Gradientea",
|
||||
"barIndex": "Barra-indizea",
|
||||
"barLevel": "Barra-maila"
|
||||
},
|
||||
"gradient": {
|
||||
"classic": "Klasikoa",
|
||||
"prism": "Prisma",
|
||||
"rainbow": "Ostadarra",
|
||||
"orangered": "Laranja-gorria"
|
||||
},
|
||||
"weightingFilter": {
|
||||
"none": "Bat ere ez",
|
||||
"a": "A",
|
||||
"b": "B",
|
||||
"c": "C",
|
||||
"d": "D",
|
||||
"z": "Z"
|
||||
},
|
||||
"mode": {
|
||||
"0": "[0] Maiztasun Diskretuak",
|
||||
"1": "[1] 1/24 oktaba / 240 banda",
|
||||
"2": "[2] 1/12 oktaba / 120 banda",
|
||||
"3": "[3] 1/8 oktaba / 80 banda",
|
||||
"4": "[4] 1/6ko oktaba / 60 banda",
|
||||
"5": "[5] 1/4 oktaba / 40 banda",
|
||||
"6": "[6] 1/3 oktaba / 30 banda",
|
||||
"7": "[7] Oktaba erdi / 20 banda",
|
||||
"8": "[8] Oktaba osoa / 10 banda",
|
||||
"10": "[10] Lerroa / Azalera grafikoa"
|
||||
},
|
||||
"frequencyScale": {
|
||||
"none": "Bat ere ez",
|
||||
"linear": "Eskala Lineala",
|
||||
"bark": "Bark Eskala",
|
||||
"mel": "Mel Eskala"
|
||||
}
|
||||
},
|
||||
"opacity": "Opakotasuna",
|
||||
"minimumFrequency": "Gutxieneko Maiztasuna",
|
||||
"maximumFrequency": "Gehienezko Maiztasuna",
|
||||
"frequencyScale": "Maiztasun Eskala",
|
||||
"weightingFilter": "Ponderazio-iragazkia",
|
||||
"minimumDecibels": "Gutxieneko Dezibelioak",
|
||||
"maximumDecibels": "Gehienezko Dezibelioak",
|
||||
"linearAmplitude": "Anplitude Lineala",
|
||||
"linearBoost": "Bultzada Lineala",
|
||||
"showPeaks": "Erakutsi Gailurrak",
|
||||
"configCopied": "Konfigurazioa arbelean kopiatu da",
|
||||
"configCopyFailed": "Konfigurazioa kopiatzeak huts egin du",
|
||||
"configPasted": "Konfigurazioa behar bezala aplikatu da",
|
||||
"configPasteFailed": "Konfigurazioa aplikatzeak huts egin du. Mesedez, egiaztatu formatua.",
|
||||
"configPasteReadFailed": "Arbelatik irakurtzeak huts egin du",
|
||||
"colorMode": "Kolore Modua",
|
||||
"fftSize": "FFT tamaina",
|
||||
"frequencyRangeAndScaling": "Maiztasun-tartea eta eskalatzea",
|
||||
"showScaleY": "Erakutsi Y Eskala",
|
||||
"pasteGradientPlaceholder": "Itsatsi JSON gradientea hemen...",
|
||||
"pasteGradient": "Itsatsi Gradientea",
|
||||
"addColor": "Gehitu Kolorea",
|
||||
"colorStops": "Kolore Geldialdiak",
|
||||
"gradientNamePlaceholder": "Gradientearen Izena",
|
||||
"gradientName": "Gradientearen Izena",
|
||||
"addCustomGradient": "Gehitu Gradiente Pertsonalizatua",
|
||||
"customGradients": "Gradiente Pertsonalizatuak",
|
||||
"maxFPS": "FPS maximoak",
|
||||
"channelLayout": "Kanalaren Diseinua",
|
||||
"lineWidth": "Lerroaren Zabalera",
|
||||
"presetNamePlaceholder": "Sartu aurrezarpenaren izena",
|
||||
"presetName": "Aurrezarpenaren Izena",
|
||||
"applyConfiguration": "Aplikatu konfigurazioa",
|
||||
"pasteFromClipboard": "Itsatsi Arbeletik",
|
||||
"pasteConfigurationPlaceholder": "Itsatsi JSON konfigurazioa hemen...",
|
||||
"pasteConfiguration": "Itsatsi Konfigurazioa",
|
||||
"copyConfiguration": "Kopiatu Konfigurazioa",
|
||||
"updatePreset": "Aurrezarpena Eguneratu",
|
||||
"saveAsPreset": "Aurrezarpen gisa gorde",
|
||||
"applyPreset": "Aurrezarpena Aplikatu",
|
||||
"selectPreset": "Aukeratu Aurrezarpena",
|
||||
"presets": "Aurrezarpenak"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,23 +33,23 @@
|
||||
"muted": "بیصدا"
|
||||
},
|
||||
"action": {
|
||||
"editPlaylist": "ویرایش $t(entity.playlist_one)",
|
||||
"editPlaylist": "ویرایش $t(entity.playlist, {\"count\": 1})",
|
||||
"goToPage": "برو به صفحهٔ",
|
||||
"moveToTop": "انتقال به بالا",
|
||||
"clearQueue": "خالی کردن صف",
|
||||
"addToFavorites": "افزودن به $t(entity.favorite_other)",
|
||||
"addToPlaylist": "افزودن به $t(entity.playlist_one)",
|
||||
"createPlaylist": "ساخت $t(entity.playlist_one)",
|
||||
"removeFromPlaylist": "حذف از $t(entity.playlist_one)",
|
||||
"viewPlaylists": "نمایش $t(entity.playlist_other)",
|
||||
"addToFavorites": "افزودن به $t(entity.favorite, {\"count\": 2})",
|
||||
"addToPlaylist": "افزودن به $t(entity.playlist, {\"count\": 1})",
|
||||
"createPlaylist": "ساخت $t(entity.playlist, {\"count\": 1})",
|
||||
"removeFromPlaylist": "حذف از $t(entity.playlist, {\"count\": 1})",
|
||||
"viewPlaylists": "نمایش $t(entity.playlist, {\"count\": 2})",
|
||||
"refresh": "$t(common.refresh)",
|
||||
"deletePlaylist": "حذف $t(entity.playlist_one)",
|
||||
"deletePlaylist": "حذف $t(entity.playlist, {\"count\": 1})",
|
||||
"removeFromQueue": "حذف از صف",
|
||||
"deselectAll": "لغو انتخاب همه",
|
||||
"moveToBottom": "انتقال به پایین",
|
||||
"setRating": "تعیین امتیاز",
|
||||
"toggleSmartPlaylistEditor": "تغییر ویرایشگر $t(entity.smartPlaylist)",
|
||||
"removeFromFavorites": "حذف از $t(entity.favorite_other)",
|
||||
"removeFromFavorites": "حذف از $t(entity.favorite, {\"count\": 2})",
|
||||
"openIn": {
|
||||
"lastfm": "باز کردن در Last.fm",
|
||||
"musicbrainz": "باز کردن در MusicBranz"
|
||||
@@ -76,16 +76,15 @@
|
||||
"hotkey_volumeDown": "کم کردن صدا",
|
||||
"audioPlayer_description": "پخشکنندهٔ صدا را برای پخش انتخاب کنید",
|
||||
"hotkey_globalSearch": "جست و جوی سراسری",
|
||||
"disableAutomaticUpdates": "غیرفعال کردن بهروزرسانی خودکار",
|
||||
"exitToTray_description": "خروج از اپلیکیشن به system tray",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album_one)",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album, {\"count\": 1})",
|
||||
"discordUpdateInterval_description": "فاصلهٔ بین هر به روزرسانی به ثانیه (حداقل ۱۵ ثانیه)",
|
||||
"audioExclusiveMode": "حالت اختصاصی صدا",
|
||||
"remotePassword": "رمز عبور کنترل از راه دور",
|
||||
"language_description": "زبان اپلیکیشن را معین میکند $t(common.restartRequired)",
|
||||
"hotkey_rate3": "امتیاز ۳ ستاره",
|
||||
"font": "قلم",
|
||||
"replayGainMode_optionTrack": "$t(entity.track_one)",
|
||||
"replayGainMode_optionTrack": "$t(entity.track, {\"count\": 1})",
|
||||
"hotkey_toggleFullScreenPlayer": "تغییر به پخشکنندهٔ تمامصفحه",
|
||||
"hotkey_localSearch": "جست و جو در صفحه",
|
||||
"hotkey_toggleQueue": "تغییر صف",
|
||||
@@ -186,7 +185,7 @@
|
||||
"left": "چپ",
|
||||
"save": "ذخیره",
|
||||
"right": "راست",
|
||||
"currentSong": "فعلی $t(entity.track_one)",
|
||||
"currentSong": "فعلی $t(entity.track, {\"count\": 1})",
|
||||
"collapse": "بستن",
|
||||
"trackNumber": "قطعه",
|
||||
"descending": "نزولی",
|
||||
@@ -239,7 +238,7 @@
|
||||
"none": "هیچ",
|
||||
"menu": "منو",
|
||||
"restartRequired": "راهاندازی دوباره لازم است",
|
||||
"previousSong": "$t(entity.track_one) پیشین",
|
||||
"previousSong": "$t(entity.track, {\"count\": 1}) پیشین",
|
||||
"noResultsFromQuery": "جستوجو نتیجهای نداشت",
|
||||
"quit": "خروج",
|
||||
"expand": "گسترش",
|
||||
@@ -256,7 +255,8 @@
|
||||
"albumPeak": "اوج آلبوم",
|
||||
"mbid": "شناسهی MusicBrainz",
|
||||
"reload": "بارگذاری مجدد",
|
||||
"setting": "پیکربندی",
|
||||
"setting_one": "پیکربندی",
|
||||
"setting_other": "",
|
||||
"trackGain": "گین قطعه",
|
||||
"trackPeak": "اوج قطعه",
|
||||
"translation": "ترجمه",
|
||||
@@ -301,16 +301,16 @@
|
||||
"rating": "امتیاز",
|
||||
"search": "جستوجو",
|
||||
"bitrate": "بیتریت",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"recentlyAdded": "به تازگی افزوده شده",
|
||||
"note": "توجه",
|
||||
"name": "نام",
|
||||
"dateAdded": "تاریخ افزوده شدن",
|
||||
"releaseDate": "تاریخ انتشار",
|
||||
"albumCount": "$t(entity.album_other) عدد",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2}) عدد",
|
||||
"path": "مسیر",
|
||||
"favorited": "موردعلاقه",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"isRecentlyPlayed": "به تازگی پخش شده است",
|
||||
"isFavorited": "موردعلاقه است",
|
||||
"bpm": "bpm",
|
||||
@@ -319,7 +319,7 @@
|
||||
"disc": "دیسک",
|
||||
"biography": "زندگینامه",
|
||||
"songCount": "تعداد ترانه",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"duration": "مدت",
|
||||
"isPublic": "عمومی است",
|
||||
"random": "تصادفی",
|
||||
@@ -327,23 +327,23 @@
|
||||
"toYear": "تا سال",
|
||||
"fromYear": "از سال",
|
||||
"criticRating": "امتیاز منتقدین",
|
||||
"album": "$t(entity.album_one)",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"trackNumber": "قطعه",
|
||||
"communityRating": "رتبه بندی جامعه",
|
||||
"isCompilation": "مخلوط است"
|
||||
},
|
||||
"form": {
|
||||
"deletePlaylist": {
|
||||
"title": "حذف $t(entity.playlist_one)",
|
||||
"success": "$t(entity.playlist_one) حذف شد",
|
||||
"input_confirm": "برای تایید، نام $t(entity.playlist_one) را وارد کنید"
|
||||
"title": "حذف $t(entity.playlist, {\"count\": 1})",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) حذف شد",
|
||||
"input_confirm": "برای تایید، نام $t(entity.playlist, {\"count\": 1}) را وارد کنید"
|
||||
},
|
||||
"createPlaylist": {
|
||||
"input_description": "$t(common.description)",
|
||||
"title": "ساخت $t(entity.playlist_one)",
|
||||
"title": "ساخت $t(entity.playlist, {\"count\": 1})",
|
||||
"input_public": "عمومی",
|
||||
"input_name": "$t(common.name)",
|
||||
"success": "$t(entity.playlist_one) ساخته شد",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) ساخته شد",
|
||||
"input_owner": "$t(common.owner)"
|
||||
},
|
||||
"addServer": {
|
||||
@@ -360,19 +360,19 @@
|
||||
"ignoreSsl": "نادیده گرفتن ssl ($t(common.restartRequired))"
|
||||
},
|
||||
"addToPlaylist": {
|
||||
"success": "$t(entity.song_other) به {{numOfPlaylists}}$t(entity.playlist_other) افزوده شد",
|
||||
"title": "افزودن به $t(entity.playlist_one)",
|
||||
"input_playlists": "$t(entity.playlist_other)",
|
||||
"success": "$t(entity.song, {\"count\": 2}) به {{numOfPlaylists}}$t(entity.playlist, {\"count\": 2}) افزوده شد",
|
||||
"title": "افزودن به $t(entity.playlist, {\"count\": 1})",
|
||||
"input_playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"input_skipDuplicates": "پرش از تکراریها"
|
||||
},
|
||||
"lyricSearch": {
|
||||
"input_name": "$t(common.name)",
|
||||
"input_artist": "$t(entity.artist_one)",
|
||||
"input_artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"title": "جستوجو در متن شعر"
|
||||
},
|
||||
"editPlaylist": {
|
||||
"title": "ویرایش $t(entity.playlist_one)",
|
||||
"success": "$t(entity.playlist_one) با موفقیت بروزرسانی شد",
|
||||
"title": "ویرایش $t(entity.playlist, {\"count\": 1})",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) با موفقیت بروزرسانی شد",
|
||||
"publicJellyfinNote": "جلیفین به دلیلی اینکه فهرست پخش عمومیست یا خصوصی را فاش نمیکند. اگر میخواهید این عمومی باقی بماند، لطفاٌ ورودی پیشرو را منتخب داشته باشید"
|
||||
},
|
||||
"queryEditor": {
|
||||
@@ -417,7 +417,7 @@
|
||||
"artistWithCount_other": "{{count}} هنرمند",
|
||||
"folder_one": "پوشه",
|
||||
"folder_other": "پوشهها",
|
||||
"smartPlaylist": "$t(entity.playlist_one) هوشمند",
|
||||
"smartPlaylist": "$t(entity.playlist, {\"count\": 1}) هوشمند",
|
||||
"album_one": "آلبوم",
|
||||
"album_other": "آلبومها",
|
||||
"genreWithCount_one": "{{count}} ژانر",
|
||||
@@ -431,12 +431,12 @@
|
||||
},
|
||||
"page": {
|
||||
"albumList": {
|
||||
"title": "$t(entity.album_other)",
|
||||
"title": "$t(entity.album, {\"count\": 2})",
|
||||
"artistAlbums": "آلبومهای {{artist}}",
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album_other)"
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album, {\"count\": 2})"
|
||||
},
|
||||
"appMenu": {
|
||||
"settings": "$t(common.setting_other)",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"selectServer": "گزینش سرویسدهنده",
|
||||
"expandSidebar": "گسترش نوار کناری",
|
||||
"collapseSidebar": "فروکش نوار کناری",
|
||||
@@ -451,11 +451,11 @@
|
||||
"appearsOn": "مشاهده میشود در",
|
||||
"about": "دربارهی {{artist}}",
|
||||
"recentReleases": "عرضههای اخیر",
|
||||
"viewAllTracks": "نمایش همهی $t(entity.track_other)",
|
||||
"viewAllTracks": "نمایش همهی $t(entity.track, {\"count\": 2})",
|
||||
"topSongsFrom": "قطعههای برتر از {{title}}",
|
||||
"viewAll": "نمایش همه",
|
||||
"viewDiscography": "نمایش کاتالوگ",
|
||||
"relatedArtists": "$t(entity.artist_other) مربوطه",
|
||||
"relatedArtists": "$t(entity.artist, {\"count\": 2}) مربوطه",
|
||||
"topSongs": "قطعههای برتر"
|
||||
},
|
||||
"contextMenu": {
|
||||
@@ -523,21 +523,21 @@
|
||||
"playbackTab": "پخش"
|
||||
},
|
||||
"sidebar": {
|
||||
"genres": "$t(entity.genre_other)",
|
||||
"playlists": "$t(entity.playlist_other)",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})",
|
||||
"playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"search": "$t(common.search)",
|
||||
"albumArtists": "$t(entity.albumArtist_other)",
|
||||
"albums": "$t(entity.album_other)",
|
||||
"folders": "$t(entity.folder_other)",
|
||||
"artists": "$t(entity.artist_other)",
|
||||
"albumArtists": "$t(entity.albumArtist, {\"count\": 2})",
|
||||
"albums": "$t(entity.album, {\"count\": 2})",
|
||||
"folders": "$t(entity.folder, {\"count\": 2})",
|
||||
"artists": "$t(entity.artist, {\"count\": 2})",
|
||||
"home": "$t(common.home)",
|
||||
"nowPlaying": "پخش کنونی",
|
||||
"tracks": "$t(entity.track_other)",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"shared": "$t(entity.playlist_other) اشتراکگذاری شده"
|
||||
"tracks": "$t(entity.track, {\"count\": 2})",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"shared": "$t(entity.playlist, {\"count\": 2}) اشتراکگذاری شده"
|
||||
},
|
||||
"albumDetail": {
|
||||
"moreFromArtist": "موارد بیشتر از این $t(entity.artist_one)",
|
||||
"moreFromArtist": "موارد بیشتر از این $t(entity.artist, {\"count\": 1})",
|
||||
"moreFromGeneric": "موارد بیشتر از {{item}}",
|
||||
"released": "عرضه شده"
|
||||
},
|
||||
@@ -550,9 +550,9 @@
|
||||
"editServerDetailsTooltip": "ویرایش ریزگان سرویسدهنده"
|
||||
},
|
||||
"genreList": {
|
||||
"showAlbums": "نمایش $t(entity.genre_one) $t(entity.album_other)",
|
||||
"title": "$t(entity.genre_other)",
|
||||
"showTracks": "نمایش $t(entity.genre_one) $t(entity.track_other)"
|
||||
"showAlbums": "نمایش $t(entity.genre, {\"count\": 1}) $t(entity.album, {\"count\": 2})",
|
||||
"title": "$t(entity.genre, {\"count\": 2})",
|
||||
"showTracks": "نمایش $t(entity.genre, {\"count\": 1}) $t(entity.track, {\"count\": 2})"
|
||||
},
|
||||
"globalSearch": {
|
||||
"commands": {
|
||||
@@ -563,15 +563,15 @@
|
||||
"title": "فرمانها"
|
||||
},
|
||||
"playlistList": {
|
||||
"title": "$t(entity.playlist_other)"
|
||||
"title": "$t(entity.playlist, {\"count\": 2})"
|
||||
},
|
||||
"trackList": {
|
||||
"title": "$t(entity.track_other)",
|
||||
"title": "$t(entity.track, {\"count\": 2})",
|
||||
"artistTracks": "قطعههای {{artist}}",
|
||||
"genreTracks": "$t(entity.track_other) \"{{genre}}\""
|
||||
"genreTracks": "$t(entity.track, {\"count\": 2}) \"{{genre}}\""
|
||||
},
|
||||
"albumArtistList": {
|
||||
"title": "$t(entity.albumArtist_other)"
|
||||
"title": "$t(entity.albumArtist, {\"count\": 2})"
|
||||
},
|
||||
"itemDetail": {
|
||||
"copyPath": "کپی کردن مسیر در کلیپبورد",
|
||||
@@ -584,11 +584,11 @@
|
||||
"size": "$t(common.size)",
|
||||
"lastPlayed": "آخرین بار پخش شده",
|
||||
"discNumber": "دیسک",
|
||||
"songCount": "$t(entity.track_other)",
|
||||
"songCount": "$t(entity.track, {\"count\": 2})",
|
||||
"title": "عنوان",
|
||||
"trackNumber": "قطعه",
|
||||
"favorite": "مورد علاقه",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"comment": "دیدگاه",
|
||||
"playCount": "تعداد پخش",
|
||||
"rating": "امتیاز",
|
||||
@@ -608,9 +608,6 @@
|
||||
"gap": "$t(common.gap)",
|
||||
"itemGap": "فاصلهی آیتم (px)"
|
||||
},
|
||||
"view": {
|
||||
"card": "کارت"
|
||||
},
|
||||
"label": {
|
||||
"playCount": "تعداد پخش",
|
||||
"dateAdded": "تاریخ افزوده شدن",
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
"size": "koko",
|
||||
"search": "etsi",
|
||||
"sortOrder": "järjestys",
|
||||
"setting": "asetus",
|
||||
"setting_one": "asetus",
|
||||
"setting_other": "asetukset",
|
||||
"title": "otsikko",
|
||||
"trackNumber": "raita",
|
||||
"action_one": "toiminto",
|
||||
@@ -44,7 +45,7 @@
|
||||
"owner": "omistaja",
|
||||
"path": "polku",
|
||||
"preview": "esikatsele",
|
||||
"previousSong": "edellinen $t(entity.track_one)",
|
||||
"previousSong": "edellinen $t(entity.track, {\"count\": 1})",
|
||||
"resetToDefault": "palauta oletusarvoihin",
|
||||
"restartRequired": "vaatii uudelleenkäynnistyksen",
|
||||
"right": "oikea",
|
||||
@@ -66,7 +67,7 @@
|
||||
"codec": "koodekki",
|
||||
"create": "luo",
|
||||
"description": "kuvaus",
|
||||
"currentSong": "nykyinen $t(entity.track_one)",
|
||||
"currentSong": "nykyinen $t(entity.track, {\"count\": 1})",
|
||||
"delete": "poista",
|
||||
"duration": "kesto",
|
||||
"edit": "muokkaa",
|
||||
@@ -94,7 +95,31 @@
|
||||
"newVersion": "uusi versio on asennettu ({{version}})",
|
||||
"viewReleaseNotes": "katsele julkaisutietoja",
|
||||
"bitDepth": "bittisyvyys",
|
||||
"sampleRate": "näytteenottotaajuus"
|
||||
"sampleRate": "näytteenottotaajuus",
|
||||
"private": "yksityinen",
|
||||
"public": "julkinen",
|
||||
"explicitStatus": "eksplisiittinen tila",
|
||||
"recordLabel": "levy-yhtiö",
|
||||
"releaseType": "julkaisun tyyppi",
|
||||
"explicit": "eksplisiittinen",
|
||||
"clean": "puhdas",
|
||||
"countSelected": "{{count}} valittuna",
|
||||
"doNotShowAgain": "älä näytä uudelleen",
|
||||
"view": "katso",
|
||||
"example": "esimerkki",
|
||||
"externalLinks": "ulkoiset linkit",
|
||||
"faster": "nopeammin",
|
||||
"filter_single": "yksi",
|
||||
"filter_multiple": "useampi",
|
||||
"mood": "mieliala",
|
||||
"noFilters": "suodattimia ei ole määritetty",
|
||||
"retry": "yritä uudelleen",
|
||||
"rename": "nimeä uudelleen",
|
||||
"slower": "hitaammin",
|
||||
"sort": "järjestä",
|
||||
"gridRows": "ruudukon rivejä",
|
||||
"tableColumns": "taulukon sarakkeita",
|
||||
"itemsMore": "{{count}} lisää"
|
||||
},
|
||||
"entity": {
|
||||
"album_one": "albumi",
|
||||
@@ -123,7 +148,7 @@
|
||||
"genre_other": "genret",
|
||||
"genreWithCount_one": "{{count}} genre",
|
||||
"genreWithCount_other": "{{count}} genreä",
|
||||
"smartPlaylist": "älykäs $t(entity.playlist_one)",
|
||||
"smartPlaylist": "älykäs $t(entity.playlist, {\"count\": 1})",
|
||||
"track_one": "raita",
|
||||
"track_other": "raidat",
|
||||
"trackWithCount_one": "{{count}} raita",
|
||||
@@ -131,31 +156,52 @@
|
||||
"play_one": "{{count}} toisto",
|
||||
"play_other": "{{count}} toistoa",
|
||||
"song_one": "kappale",
|
||||
"song_other": "kappaleet"
|
||||
"song_other": "kappaleet",
|
||||
"radioStation_one": "radioasema",
|
||||
"radioStation_other": "radioasemaa",
|
||||
"radioStationWithCount_one": "{{count}} radioasema",
|
||||
"radioStationWithCount_other": "{{count}} radioasemaa"
|
||||
},
|
||||
"action": {
|
||||
"clearQueue": "tyhjennä jono",
|
||||
"createPlaylist": "luo $t(entity.playlist_one)",
|
||||
"createPlaylist": "luo $t(entity.playlist, {\"count\": 1})",
|
||||
"deselectAll": "poista kaikkien valinta",
|
||||
"editPlaylist": "muokkaa $t(entity.playlist_one)",
|
||||
"editPlaylist": "muokkaa $t(entity.playlist, {\"count\": 1})",
|
||||
"removeFromQueue": "poista jonosta",
|
||||
"viewPlaylists": "katsele $t(entity.playlist_other)",
|
||||
"viewPlaylists": "katsele $t(entity.playlist, {\"count\": 2})",
|
||||
"openIn": {
|
||||
"lastfm": "Avaa Last.fm:ssä",
|
||||
"musicbrainz": "Avaa MusicBrainz:ssä"
|
||||
},
|
||||
"goToPage": "mene sivulle",
|
||||
"moveToBottom": "siirry pohjalle",
|
||||
"moveToBottom": "siirrä alimmaksi",
|
||||
"moveToTop": "siirry ylös",
|
||||
"addToFavorites": "lisää kohteeseen $t(entity.favorite_other)",
|
||||
"addToPlaylist": "lisää kohteeseen $t(entity.playlist_one)",
|
||||
"addToFavorites": "lisää kohteeseen $t(entity.favorite, {\"count\": 2})",
|
||||
"addToPlaylist": "lisää kohteeseen $t(entity.playlist, {\"count\": 1})",
|
||||
"refresh": "$t(common.refresh)",
|
||||
"removeFromFavorites": "poista kohteesta $t(entity.favorite_other)",
|
||||
"removeFromFavorites": "poista kohteesta $t(entity.favorite, {\"count\": 2})",
|
||||
"toggleSmartPlaylistEditor": "kytke $t(entity.smartPlaylist) editori",
|
||||
"deletePlaylist": "poista $t(entity.playlist_one)",
|
||||
"removeFromPlaylist": "poista kohteesta $t(entity.playlist_one)",
|
||||
"deletePlaylist": "poista $t(entity.playlist, {\"count\": 1})",
|
||||
"removeFromPlaylist": "poista kohteesta $t(entity.playlist, {\"count\": 1})",
|
||||
"setRating": "aseta arvostelu",
|
||||
"moveToNext": "siirry seuraavaan"
|
||||
"moveToNext": "siirry seuraavaan",
|
||||
"selectRangeOfItems": "valitse useita peräkkäisiä kohteita",
|
||||
"goToCurrent": "siirry nykyiseen kohteeseen",
|
||||
"createRadioStation": "luo $t(entity.radioStation, {\"count\": 1})",
|
||||
"deleteRadioStation": "poista $t(entity.radioStation, {\"count\": 1})",
|
||||
"selectAll": "valitse kaikki",
|
||||
"downloadStarted": "aloitettiin lataamaan {{count}} kohdetta",
|
||||
"moveUp": "siirrä ylöspäin",
|
||||
"moveDown": "siirrä alaspäin",
|
||||
"holdToMoveToTop": "pidä pohjassa siirtääksesi ylimmäksi",
|
||||
"holdToMoveToBottom": "pidä pohjassa siirtääksesi alimmaksi",
|
||||
"moveItems": "siirrä kohteet",
|
||||
"shuffle": "sekoita",
|
||||
"shuffleAll": "sekoita kaikki",
|
||||
"shuffleSelected": "sekoita valitut",
|
||||
"viewMore": "katso lisää",
|
||||
"openApplicationDirectory": "avaa ohjelman kansio",
|
||||
"addOrRemoveFromSelection": "lisää tai poista valinnasta"
|
||||
},
|
||||
"error": {
|
||||
"remoteEnableError": "virhe tapahtui yrittäessä $t(common.enable) etäpalvelinta",
|
||||
@@ -181,16 +227,24 @@
|
||||
"remotePortWarning": "käynnistä palvelin uudestaan ottaaksesi uuden portin käyttöön",
|
||||
"endpointNotImplementedError": "päätepiste {{endpoint}} ei ole toteutettu {{serverType}} varten",
|
||||
"badValue": "kelpaamaton optio \"{{value}}\". tätä arvoa ei ole enää olemassa",
|
||||
"notificationDenied": "luvat ilmouilmoituksia varten evättiin. tällä asetuksella ei ole vaikutusta"
|
||||
"notificationDenied": "luvat ilmouilmoituksia varten evättiin. tällä asetuksella ei ole vaikutusta",
|
||||
"invalidJson": "virheellinen JSON",
|
||||
"multipleServerSaveQueueError": "soittojonossa on yksi tai useampi kappale, jotka eivät ole nykyiseltä palvelimelta. tätä ei ole tuettu",
|
||||
"noNetwork": "palvelin ei ole käytettävissä",
|
||||
"noNetworkDescription": "ei voida yhdistää palvelimeen",
|
||||
"serverLockSingleServer": "lukitussa tilassa sallitaan vain yksi palvelin",
|
||||
"settingsSyncError": "rendererin ja pääprosessin asetukset eivät täsmää. Käynnistä sovellus uudelleen, jotta muutokset otetaan käyttöön",
|
||||
"playbackPausedDueToError": "toisto tauotettiin virheen takia",
|
||||
"saveQueueFailed": "jonon tallentaminen epäonnistui"
|
||||
},
|
||||
"filter": {
|
||||
"album": "$t(entity.album_one)",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"biography": "biografia",
|
||||
"bitrate": "bittinopeus",
|
||||
"bpm": "lyöntiä minuutissa (bpm)",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"channels": "$t(common.channel, {\"count\": 2})",
|
||||
"title": "otsikko",
|
||||
"playCount": "toistomäärä",
|
||||
"dateAdded": "lisätty päivänä",
|
||||
@@ -206,12 +260,12 @@
|
||||
"search": "haku",
|
||||
"trackNumber": "raita",
|
||||
"isPublic": "on julkinen",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"favorited": "suosikeissa",
|
||||
"fromYear": "vuodelta",
|
||||
"isRated": "on arvosteltu",
|
||||
"recentlyPlayed": "äskettäin toistetut",
|
||||
"albumCount": "$t(entity.album_other) määrä",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2}) määrä",
|
||||
"disc": "levy",
|
||||
"duration": "kesto",
|
||||
"id": "tunnus",
|
||||
@@ -225,7 +279,11 @@
|
||||
"note": "muistiinpano",
|
||||
"owner": "$t(common.owner)",
|
||||
"path": "polku",
|
||||
"songCount": "kappalemäärä"
|
||||
"songCount": "kappalemäärä",
|
||||
"explicitStatus": "$t(common.explicitStatus)",
|
||||
"matchAnd": "ja",
|
||||
"matchOr": "tai",
|
||||
"sortName": "järjestä nimen mukaan"
|
||||
},
|
||||
"form": {
|
||||
"addServer": {
|
||||
@@ -239,38 +297,46 @@
|
||||
"error_savePassword": "salasanaa tallentaessa tapahtui virhe",
|
||||
"input_password": "salasana",
|
||||
"input_username": "käyttäjänimi",
|
||||
"success": "palvelin lisätty onnistuneesti"
|
||||
"success": "palvelin lisätty onnistuneesti",
|
||||
"input_preferInstantMix": "suosi pika-miksausta",
|
||||
"input_preferInstantMixDescription": "käytä vain pika-miksausta saadaksesi samankaltaisia kappaleita. käytännöllinen jos sinulla on lisäosia, jotka muuttavat tätä käytöstä",
|
||||
"input_preferRemoteUrl": "suosi julkista url-osoitetta",
|
||||
"input_remoteUrl": "julkinen url-osoite",
|
||||
"input_remoteUrlPlaceholder": "valinnainen: julkinen url-osoite ulkoisille toiminnoille"
|
||||
},
|
||||
"createPlaylist": {
|
||||
"input_public": "julkinen",
|
||||
"input_name": "$t(common.name)",
|
||||
"input_owner": "$t(common.owner)",
|
||||
"success": "$t(entity.playlist_one) luotu onnistuneesti",
|
||||
"title": "luo $t(entity.playlist_one)",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) luotu onnistuneesti",
|
||||
"title": "luo $t(entity.playlist, {\"count\": 1})",
|
||||
"input_description": "$t(common.description)"
|
||||
},
|
||||
"addToPlaylist": {
|
||||
"input_skipDuplicates": "ohita kaksoiskappaleet",
|
||||
"success": "$t(entity.trackWithCount, {\"count\": {{message}} }) lisätty $t(entity.playlistWithCount, {\"count\": {{numOfPlaylists}} })",
|
||||
"title": "lisää soittolistalle $t(entity.playlist_one)",
|
||||
"input_playlists": "$t(entity.playlist_other)"
|
||||
"title": "lisää soittolistalle $t(entity.playlist, {\"count\": 1})",
|
||||
"input_playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"create": "luo $t(entity.playlist, {\"count\": 1}) {{playlist}}",
|
||||
"searchOrCreate": "hae $t(entity.playlist, {\"count\": 2}) tai tyyppiä luodaksesi uuden"
|
||||
},
|
||||
"updateServer": {
|
||||
"success": "palvelin on päivitetty onnistuneesti",
|
||||
"title": "päivitä palvelin"
|
||||
},
|
||||
"deletePlaylist": {
|
||||
"success": "$t(entity.playlist_one) poistettu onnistuneesti",
|
||||
"title": "poista $t(entity.playlist_one)",
|
||||
"input_confirm": "kirjoita soittolistan $t(entity.playlist_one) nimi vahvistaaksesi"
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) poistettu onnistuneesti",
|
||||
"title": "poista $t(entity.playlist, {\"count\": 1})",
|
||||
"input_confirm": "kirjoita soittolistan $t(entity.playlist, {\"count\": 1}) nimi vahvistaaksesi"
|
||||
},
|
||||
"editPlaylist": {
|
||||
"success": "$t(entity.playlist_one) päivitetty onnistuneesti",
|
||||
"title": "muokkaa $t(entity.playlist_one)",
|
||||
"publicJellyfinNote": "Jellyfin ei jostain syystä kerro onko soittolista julkinen vai ei. Jos haluat sen pysyvän julkisena, pidä seuraava valinta valittuna"
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) päivitetty onnistuneesti",
|
||||
"title": "muokkaa $t(entity.playlist, {\"count\": 1})",
|
||||
"publicJellyfinNote": "Jellyfin ei jostain syystä kerro onko soittolista julkinen vai ei. Jos haluat sen pysyvän julkisena, pidä seuraava valinta valittuna",
|
||||
"editNote": "manuaalisia muokkauksia ei suositella suurille soittolistoille. haluatko varmasti hyväksyä riskin, että nykyinen soittolista ylikirjoitetaan ja tietoja voi hävitä?"
|
||||
},
|
||||
"lyricSearch": {
|
||||
"input_artist": "$t(entity.artist_one)",
|
||||
"input_artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"input_name": "$t(common.name)",
|
||||
"title": "sanojen haku"
|
||||
},
|
||||
@@ -280,12 +346,53 @@
|
||||
"description": "kuvaus",
|
||||
"setExpiration": "aseta vanheneminen",
|
||||
"success": "jakolinkki kopioitu leikepöydälle (tai klikkaa tästä avataksesi)",
|
||||
"expireInvalid": "vanhetumisen pitää olla tulevaisuudessa"
|
||||
"expireInvalid": "vanhetumisen pitää olla tulevaisuudessa",
|
||||
"copyToClipboard": "Kopioi leikepöydälle: Ctrl+C, Enter",
|
||||
"successMustClick": "jako luotu onnistuneesti. paina tästä avataksesi"
|
||||
},
|
||||
"queryEditor": {
|
||||
"input_optionMatchAny": "sovita joku",
|
||||
"input_optionMatchAll": "sovita kaikki",
|
||||
"title": "kyselyeditori"
|
||||
"title": "kyselyeditori",
|
||||
"addRuleGroup": "lisää sääntöryhmä",
|
||||
"removeRuleGroup": "poista sääntöryhmä",
|
||||
"resetToDefault": "palauta oletukset",
|
||||
"clearFilters": "poista suodattimet"
|
||||
},
|
||||
"privateMode": {
|
||||
"enabled": "yksityinen tila käytössä, toistotila on nyt piilotettu ulkoisilta integraatioilta",
|
||||
"disabled": "yksityinen tila poissa käytössä, toistotila on nyt näkyvillä ulkoisille integraatioille",
|
||||
"title": "yksityinen tila"
|
||||
},
|
||||
"largeFetchConfirmation": {
|
||||
"title": "lisää kohteet jonoon",
|
||||
"description": "lisää kaikki suodatetun näkymän kohteet"
|
||||
},
|
||||
"createRadioStation": {
|
||||
"success": "radiokanava luotu onnistuneesti",
|
||||
"title": "luo radiokanava",
|
||||
"input_homepageUrl": "kotisivun osoite",
|
||||
"input_name": "nimi",
|
||||
"input_streamUrl": "suoratoisto-osoite"
|
||||
},
|
||||
"lyricsExport": {
|
||||
"export": "vie sanoitukset",
|
||||
"input_synced": "vie ajastetut sanoitukset",
|
||||
"input_offset": "$t(setting.lyricOffset)"
|
||||
},
|
||||
"saveQueue": {
|
||||
"success": "toistojono tallennettu palvelimelle"
|
||||
},
|
||||
"shuffleAll": {
|
||||
"title": "soita satunnainen",
|
||||
"input_genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"input_limit": "kuinka monta kappaletta?",
|
||||
"input_minYear": "vuodesta",
|
||||
"input_maxYear": "vuoteen",
|
||||
"input_played": "toiston suodatin",
|
||||
"input_played_optionAll": "kaikki raidat",
|
||||
"input_played_optionUnplayed": "vain toistamattomat raidat",
|
||||
"input_played_optionPlayed": "vain toistetut raidat"
|
||||
}
|
||||
},
|
||||
"setting": {
|
||||
@@ -324,7 +431,6 @@
|
||||
"homeConfiguration": "koti sivun muokkaus",
|
||||
"homeConfiguration_description": "määritä mitä osioita näkyy, ja missä järjestyksessä, koti sivulla",
|
||||
"gaplessAudio_optionWeak": "heikko (suositus)",
|
||||
"genreBehavior_description": "määrittää avautuuko generä painettaessa oletuksena ääniraita vaiko albumi listassa",
|
||||
"hotkey_browserBack": "selain takaisin",
|
||||
"hotkey_playbackPlay": "toista",
|
||||
"hotkey_playbackPlayPause": "toista / tauko",
|
||||
@@ -358,17 +464,14 @@
|
||||
"customCss_description": "mukautettu CSS-sisältö. Huomautus: content- ja etä-URL-osoitteet ovat estettyjä ominaisuuksia. Esikatselu sisällöstäsi on alla. Lisäkenttiä, joita et ole määrittänyt, on näkyvissä puhdistuksen vuoksi",
|
||||
"customCssNotice": "Varoitus: vaikka jonkinlainen puhdistus onkin tehty (url()- ja content:-komentojen estäminen), mukautetun css:n käyttäminen voi silti aiheuttaa riskejä muuttamalla käyttöliittymää",
|
||||
"disableLibraryUpdateOnStartup": "poista uusimman version tarkistus käynnistyksen yhteydessä käytöstä",
|
||||
"disableAutomaticUpdates": "poista automaattiset päivitykset käytöstä",
|
||||
"discordIdleStatus": "näytä rich presencen käyttämätön tila",
|
||||
"discordIdleStatus_description": "kun käytössä, päivitä tila kun soitin on käyttämättömänä",
|
||||
"doubleClickBehavior": "lisää kaikki haetut kappaleet soittojonoon tuplaklikkauksella",
|
||||
"discordUpdateInterval_description": "päivitysväli sekunnteina (vähintään 15 sekunttia)",
|
||||
"discordRichPresence_description": "ota toiston tila käyttöön {{discord}}n rich presence-toiminnossa. Kuvakkeiden avaimet ovat {{icon}}, {{playing}} ja {{paused}}",
|
||||
"discordUpdateInterval": "{{discord}} rich presencen päivitysväli",
|
||||
"enableRemote": "aktivoi etäohjauspalvelin",
|
||||
"externalLinks_description": "ottaa ulkoiset linkit (Last.fm, MusicBrainz) artistien/albumien sivuilla",
|
||||
"exitToTray": "sulje tehtäväpalkkiin",
|
||||
"doubleClickBehavior_description": "jos päällä, kaikki hakutuloksissa olevat kappaleet lisätään soittojonoon. muuten vain napsautettu kappale lisätään jonoon",
|
||||
"discordApplicationId_description": "{{discord}}n ohjelma-ID rich presenceä varten (oletuksena {{defaultId}})",
|
||||
"enableRemote_description": "aktivoi etäohjauspalvelimen, jolla muut laitteet voivat ohjata sovellusta",
|
||||
"externalLinks": "näytä ulkoiset linkit",
|
||||
@@ -379,7 +482,6 @@
|
||||
"playButtonBehavior_optionAddNext": "$t(player.addNext)",
|
||||
"lastfmApiKey_description": "API-avain {{lastfm}}:lle. tarvitaan kansikuvia varten",
|
||||
"passwordStore_description": "mitä salasanojen/avaimien tallennusta käytetään. muuta tätä, jos sinulla on ongelmia salasanojen tallennuksessa",
|
||||
"floatingQueueArea_description": "näyttää ikonin ikkunan oikealla reunalla jonon katselua varten",
|
||||
"homeFeature_description": "ohjaa näytetäänkö suuri esittelykaruselli kotisivulla",
|
||||
"hotkey_rate0": "arvostelun tyhjennys",
|
||||
"hotkey_togglePreviousSongFavorite": "vaihda $t(common.previousSong) suosikkiasetus",
|
||||
@@ -392,7 +494,6 @@
|
||||
"mpvExecutablePath_description": "asettaa mpv:n suoritettavan tiedoston polun. ollessa tyhjä, käytetään oletuspolkua",
|
||||
"mpvExtraParameters_help": "yksi per rivi",
|
||||
"playButtonBehavior_optionPlay": "$t(player.play)",
|
||||
"genreBehavior": "genre-sivun oletustoiminta",
|
||||
"globalMediaHotkeys": "globaalit median pikanäppäimet",
|
||||
"globalMediaHotkeys_description": "ota käyttöön tai poista käytöstä järjestelmän median pikanäppäinten käyttö toiston hallintaa",
|
||||
"hotkey_toggleCurrentSongFavorite": "vaihda $t(common.currentSong) suosikkiasetus",
|
||||
@@ -419,14 +520,13 @@
|
||||
"minimizeToTray_description": "pienennä sovellus ilmaisinalueelle",
|
||||
"playButtonBehavior_optionAddLast": "$t(player.addLast)",
|
||||
"hotkey_zoomOut": "loitonna",
|
||||
"floatingQueueArea": "näytä kelluvan jonon avausalue",
|
||||
"homeFeature": "kodin esittelykaruselli",
|
||||
"hotkey_toggleFullScreenPlayer": "vaihda kokonäytön toistin",
|
||||
"hotkey_toggleRepeat": "vaihda kertaus",
|
||||
"gaplessAudio": "tauoton toisto",
|
||||
"transcodeFormat_description": "valitsee transkoodattavan formaatin. jätä tyhjäksi palvelimen valintaa varten",
|
||||
"replayGainMode_optionNone": "$t(common.none)",
|
||||
"replayGainMode_optionTrack": "$t(entity.track_one)",
|
||||
"replayGainMode_optionTrack": "$t(entity.track, {\"count\": 1})",
|
||||
"themeDark": "teema (tumma)",
|
||||
"translationApiKey_description": "API-avain käännöstä varten (tukee vain globaalia palvelun palvelupistettä)",
|
||||
"playbackStyle_description": "valitse toiston tyyli, jota käytetään soittimessa",
|
||||
@@ -463,8 +563,7 @@
|
||||
"replayGainClipping": "{{ReplayGain}} leikkaus",
|
||||
"replayGainClipping_description": "Estää {{ReplayGain}}n aiheuttaman leikkauksen laskemalla vahvistusta automaatisesti",
|
||||
"replayGainFallback": "{{ReplayGain}} palautus",
|
||||
"playerAlbumArtResolution_description": "suurien kansikuvien resoluutio soittimen esikatselussa. suurempi tekee niistä terävempiä, mutta voi hidastaa latausta. oletuksena on 0, joka tarkoittaa automaattista",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album_one)",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album, {\"count\": 1})",
|
||||
"replayGainPreamp": "{{ReplayGain}} esivahvistus (dB)",
|
||||
"scrobble_description": "skrobblaa toistot mediapalvelimellesi",
|
||||
"replayGainPreamp_description": "säätää esivahvistuksen määrää {{ReplayGain}} arvoon",
|
||||
@@ -479,7 +578,6 @@
|
||||
"sidebarConfiguration": "sivupalkin asetukset",
|
||||
"sidebarConfiguration_description": "valitse kohteet ja niiden järjestys sivupalkissa",
|
||||
"volumeWidth_description": "äänenvoimakkuuden säätimen leveys",
|
||||
"playerAlbumArtResolution": "soittimen kansikuvien resoluutio",
|
||||
"playerbarOpenDrawer": "toistipalkin kokoruudun kytkin",
|
||||
"playerbarOpenDrawer_description": "sallii toistopalkin klikkaamisen avaamaan kokonäytön soittimen",
|
||||
"replayGainFallback_description": "asetettava vahvistus desibelinä (dB), jos tiedostolla ei ole {{ReplayGain}} tageja",
|
||||
@@ -521,7 +619,22 @@
|
||||
"discordPausedStatus": "näytä rich presence tauotettuna",
|
||||
"discordPausedStatus_description": "ollessak käytössä, status näyttää milloin soitin on tautotettuna",
|
||||
"preservePitch": "säilytä sävelkorkeus",
|
||||
"preservePitch_description": "säilytä sävelkorkeus toistonopeutta muokatessa"
|
||||
"preservePitch_description": "säilytä sävelkorkeus toistonopeutta muokatessa",
|
||||
"artistBackground": "artistin taustakuva",
|
||||
"artistBackground_description": "lisää taustakuvan artistin sivuille, jotak sisältävät artistin kuvia",
|
||||
"artistBackgroundBlur": "artistin taustakuvan kuvan sumennuksen koko",
|
||||
"artistBackgroundBlur_description": "säätää artistin taustakuvaan käytettävän sumennuksen määrää",
|
||||
"crossfadeStyle": "ristihäivytyksen tyylli",
|
||||
"releaseChannel_optionBeta": "beeta",
|
||||
"releaseChannel_optionLatest": "viimeisin",
|
||||
"releaseChannel": "julkaisulinja",
|
||||
"releaseChannel_description": "valitse vakaiden ja beetaversioiden välillä automaattisille päivityksille",
|
||||
"discordDisplayType_artistname": "artistin nimi / artistien nimet",
|
||||
"autoDJ": "auto DJ",
|
||||
"autoDJ_description": "lisää automaattisesti samanlaisia kappaleita jonoon",
|
||||
"autoDJ_itemCount": "kohteiden määrä",
|
||||
"autoDJ_itemCount_description": "jonoon lisättäväksi yritettyjen kohteiden määrä, kun auto DJ on käytössä",
|
||||
"autoDJ_timing": "ajastus"
|
||||
},
|
||||
"page": {
|
||||
"itemDetail": {
|
||||
@@ -530,29 +643,35 @@
|
||||
"openFile": "näytä kappale tiedostonhallinnassa"
|
||||
},
|
||||
"albumArtistList": {
|
||||
"title": "$t(entity.albumArtist_other)"
|
||||
"title": "$t(entity.albumArtist, {\"count\": 2})"
|
||||
},
|
||||
"albumDetail": {
|
||||
"moreFromArtist": "siirrä kohteesta $t(entity.artist_one)",
|
||||
"moreFromArtist": "siirrä kohteesta $t(entity.artist, {\"count\": 1})",
|
||||
"moreFromGeneric": "listää kohteesta {{item}}",
|
||||
"released": "julkaistu"
|
||||
},
|
||||
"albumList": {
|
||||
"artistAlbums": "artistin {{artist}} albumit",
|
||||
"genreAlbums": "\"{{genre}}\"$t(entity.album_other)",
|
||||
"title": "$t(entity.album_other)"
|
||||
"genreAlbums": "\"{{genre}}\"$t(entity.album, {\"count\": 2})",
|
||||
"title": "$t(entity.album, {\"count\": 2})"
|
||||
},
|
||||
"appMenu": {
|
||||
"goBack": "mene takaisin",
|
||||
"openBrowserDevtools": "avaa selaimen kehitystyökalut",
|
||||
"quit": "$t(common.quit)",
|
||||
"selectServer": "valitse palvelin",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"expandSidebar": "laajenna sivupalkki",
|
||||
"goForward": "mene eteenpäin",
|
||||
"manageServers": "hallitse palvelimia",
|
||||
"collapseSidebar": "kutista sivupalkki",
|
||||
"version": "versio {{version}}"
|
||||
"version": "versio {{version}}",
|
||||
"privateModeOff": "käännä yksityinen tila pois käytöstä",
|
||||
"privateModeOn": "käännä yksityinen tila käyttöön",
|
||||
"commandPalette": "avaa komentopaletti",
|
||||
"selectMusicFolder": "valitse musiikkikansio",
|
||||
"noMusicFolder": "musiikkikansiota ei ole valittu",
|
||||
"multipleMusicFolders": "{{count}} musiikkikansio(ta) valittu"
|
||||
},
|
||||
"contextMenu": {
|
||||
"playSimilarSongs": "$t(player.playSimilarSongs)",
|
||||
@@ -576,29 +695,54 @@
|
||||
"addFavorite": "$t(action.addToFavorites)",
|
||||
"addLast": "$t(player.addLast)",
|
||||
"moveToNext": "$t(action.moveToNext)",
|
||||
"removeFromQueue": "$t(action.removeFromQueue)"
|
||||
"removeFromQueue": "$t(action.removeFromQueue)",
|
||||
"goToAlbum": "mene $t(entity.album, {\"count\": 1})",
|
||||
"goToAlbumArtist": "mene $t(entity.albumArtist, {\"count\": 1})",
|
||||
"moveItems": "$t(action.moveItems)",
|
||||
"goTo": "mene"
|
||||
},
|
||||
"sidebar": {
|
||||
"albumArtists": "$t(entity.albumArtist_other)",
|
||||
"albums": "$t(entity.album_other)",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"shared": "$t(entity.playlist_other) jaettu",
|
||||
"tracks": "$t(entity.track_other)",
|
||||
"artists": "$t(entity.artist_other)",
|
||||
"folders": "$t(entity.folder_other)",
|
||||
"genres": "$t(entity.genre_other)",
|
||||
"albumArtists": "$t(entity.albumArtist, {\"count\": 2})",
|
||||
"albums": "$t(entity.album, {\"count\": 2})",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"shared": "$t(entity.playlist, {\"count\": 2}) jaettu",
|
||||
"tracks": "$t(entity.track, {\"count\": 2})",
|
||||
"artists": "$t(entity.artist, {\"count\": 2})",
|
||||
"folders": "$t(entity.folder, {\"count\": 2})",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})",
|
||||
"home": "$t(common.home)",
|
||||
"nowPlaying": "nyt soi",
|
||||
"playlists": "$t(entity.playlist_other)",
|
||||
"playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"search": "$t(common.search)",
|
||||
"myLibrary": "oma kirjasto"
|
||||
"myLibrary": "oma kirjasto",
|
||||
"collections": "kokoelmat",
|
||||
"favorites": "$t(entity.favorite, {\"count\": 2})",
|
||||
"radio": "$t(entity.radioStation, {\"count\": 2})"
|
||||
},
|
||||
"setting": {
|
||||
"generalTab": "yleinen",
|
||||
"windowTab": "ikkuna",
|
||||
"hotkeysTab": "pikanäppäimet",
|
||||
"playbackTab": "toisto",
|
||||
"advanced": "edistyneet"
|
||||
"advanced": "edistyneet",
|
||||
"analytics": "tilastot",
|
||||
"updates": "päivitä",
|
||||
"cache": "välimuisti",
|
||||
"application": "aplikaatio",
|
||||
"queryBuilder": "kyselynrakentaja",
|
||||
"theme": "teema",
|
||||
"controls": "säätimet",
|
||||
"sidebar": "sivupalkki",
|
||||
"remote": "kauko-ohjain",
|
||||
"exportImport": "tuo/vie",
|
||||
"scrobble": "scrobblata",
|
||||
"audio": "audio",
|
||||
"lyrics": "sanat",
|
||||
"lyricsDisplay": "sanojen näyttö",
|
||||
"transcoding": "transkoodaus",
|
||||
"discord": "discord",
|
||||
"logger": "lokittaja",
|
||||
"playerFilters": "soittimen suodattimet"
|
||||
},
|
||||
"fullscreenPlayer": {
|
||||
"upNext": "seuraavaksi",
|
||||
@@ -624,9 +768,9 @@
|
||||
"related": "liittyvät"
|
||||
},
|
||||
"genreList": {
|
||||
"showAlbums": "näytä $t(entity.genre_one) $t(entity.album_other)",
|
||||
"showTracks": "näytä $t(entity.genre_one) $t(entity.track_other)",
|
||||
"title": "$t(entity.genre_other)"
|
||||
"showAlbums": "näytä $t(entity.genre, {\"count\": 1}) $t(entity.album, {\"count\": 2})",
|
||||
"showTracks": "näytä $t(entity.genre, {\"count\": 1}) $t(entity.track, {\"count\": 2})",
|
||||
"title": "$t(entity.genre, {\"count\": 2})"
|
||||
},
|
||||
"globalSearch": {
|
||||
"commands": {
|
||||
@@ -641,21 +785,29 @@
|
||||
"recentlyPlayed": "hiljattain soitetut",
|
||||
"title": "$t(common.home)",
|
||||
"mostPlayed": "eniten soitetut",
|
||||
"newlyAdded": "hiljattain lisätyt julkaisut"
|
||||
"newlyAdded": "hiljattain lisätyt julkaisut",
|
||||
"recentlyReleased": "hiljattain julkaistu",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})"
|
||||
},
|
||||
"albumArtistDetail": {
|
||||
"about": "{{artist}}{sta/stä",
|
||||
"about": "{{artist}}",
|
||||
"viewDiscography": "katsele diskografiaa",
|
||||
"relatedArtists": "liittyvät $t(entity.artist_other)",
|
||||
"relatedArtists": "liittyvät $t(entity.artist, {\"count\": 2})",
|
||||
"appearsOn": "esiintyy",
|
||||
"topSongs": "parhaat kappaleet",
|
||||
"topSongsFrom": "parhaat kappaleet albumilta {{title}}",
|
||||
"recentReleases": "hiljattaiset julkaisut",
|
||||
"viewAll": "katsele kaikkia",
|
||||
"viewAllTracks": "katsele kaikkia $t(entity.track_other)"
|
||||
"viewAllTracks": "katsele kaikkia $t(entity.track, {\"count\": 2})",
|
||||
"favoriteSongs": "suosikki kappaleet",
|
||||
"groupingTypeAll": "kaikki julkaisun tyypit",
|
||||
"groupingTypePrimary": "ensisijaiset tyypin julkaisut",
|
||||
"topSongsCommunity": "yhteisö",
|
||||
"topSongsPersonal": "henkilökohtainen",
|
||||
"favoriteSongsFrom": "suosikkikappale {{title}}:sta"
|
||||
},
|
||||
"playlistList": {
|
||||
"title": "$t(entity.playlist_other)"
|
||||
"title": "$t(entity.playlist, {\"count\": 2})"
|
||||
},
|
||||
"manageServers": {
|
||||
"title": "hallitse palvelimia",
|
||||
@@ -670,13 +822,35 @@
|
||||
},
|
||||
"trackList": {
|
||||
"artistTracks": "artistin {{artist}} kappaleet",
|
||||
"genreTracks": "\"{{genre}}\" $t(entity.track_other)",
|
||||
"title": "$t(entity.track_other)"
|
||||
"genreTracks": "\"{{genre}}\" $t(entity.track, {\"count\": 2})",
|
||||
"title": "$t(entity.track, {\"count\": 2})"
|
||||
},
|
||||
"radioList": {
|
||||
"title": "radiokanavat"
|
||||
},
|
||||
"releasenotes": {
|
||||
"commitsSinceStable": "muutokset {{stable}} verrattuna",
|
||||
"noNewCommits": "ei uusia muutoksia tällä välillä",
|
||||
"noStableReleaseToCompare": "vertailukelpoista vakaata versiota ei löytynyt"
|
||||
},
|
||||
"favorites": {
|
||||
"title": "$t(entity.favorite, {\"count\": 2})"
|
||||
},
|
||||
"windowBar": {
|
||||
"paused": "(Tauotettu) ",
|
||||
"privateMode": "(Yksityinen tila)"
|
||||
},
|
||||
"folderList": {
|
||||
"title": "$t(entity.folder, {\"count\": 2})"
|
||||
},
|
||||
"collections": {
|
||||
"overrideExisting": "syrjäytä olemassa olevat",
|
||||
"saveAsCollection": "tallenna kokoelmana"
|
||||
}
|
||||
},
|
||||
"player": {
|
||||
"addLast": "lisää viimeinen",
|
||||
"addNext": "lisää seuraava",
|
||||
"addLast": "viimeinen",
|
||||
"addNext": "seuraava",
|
||||
"favorite": "suosikki",
|
||||
"queue_moveToTop": "siirrä valittu alas",
|
||||
"queue_remove": "poista valittu",
|
||||
@@ -695,7 +869,7 @@
|
||||
"repeat_all": "kertaa kaikki",
|
||||
"playbackFetchCancel": "tämä vie aikaa... sulje ilmoitus peruaksesi",
|
||||
"mute": "mykistä",
|
||||
"shuffle": "soita sekoitettuna",
|
||||
"shuffle": "soita (sekoitettuna)",
|
||||
"next": "seuraava",
|
||||
"play": "toista",
|
||||
"playbackFetchInProgress": "ladataan kappaleita…",
|
||||
@@ -705,7 +879,25 @@
|
||||
"playSimilarSongs": "toista samanlaisia kappaleita",
|
||||
"repeat_off": "kertaus pois päältä",
|
||||
"shuffle_off": "sekoitus pois päältä",
|
||||
"toggleFullscreenPlayer": "vaihda kokoruudun soittimeen"
|
||||
"toggleFullscreenPlayer": "vaihda kokoruudun soittimeen",
|
||||
"addLastShuffled": "viimeinen (sekoitettu)",
|
||||
"addNextShuffled": "seuraava (sekoitettu)",
|
||||
"albumRadio": "albumiradio",
|
||||
"artistRadio": "artistiradio",
|
||||
"holdToShuffle": "pidä sekoittaaksesi",
|
||||
"lyrics": "sanat",
|
||||
"restoreQueueFromServer": "palauta tiedustelu palvelimelta",
|
||||
"saveQueueToServer": "tallenna tiedustelu palvelimelle",
|
||||
"trackRadio": "raitaradio",
|
||||
"sleepTimer": "uniajastin",
|
||||
"sleepTimer_endOfSong": "nykyisen kappaleen loppu",
|
||||
"sleepTimer_minutes": "{{count}} min",
|
||||
"sleepTimer_hours": "{{count}} t",
|
||||
"sleepTimer_custom": "mukautettu",
|
||||
"sleepTimer_off": "pois",
|
||||
"sleepTimer_timeRemaining": "{{time}} jäljellä",
|
||||
"sleepTimer_setCustom": "aseta ajastin",
|
||||
"sleepTimer_cancel": "peruuta ajastin"
|
||||
},
|
||||
"table": {
|
||||
"config": {
|
||||
@@ -722,14 +914,14 @@
|
||||
"label": {
|
||||
"channels": "$t(common.channel_other)",
|
||||
"trackNumber": "raidan numero",
|
||||
"album": "$t(entity.album_one)",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"actions": "$t(common.action_other)",
|
||||
"codec": "$t(common.codec)",
|
||||
"dateAdded": "lisäyspäivämäärä",
|
||||
"owner": "$t(common.owner)",
|
||||
"path": "$t(common.path)",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"discNumber": "levyn numero",
|
||||
"duration": "$t(common.duration)",
|
||||
"favorite": "$t(common.favorite)",
|
||||
@@ -740,19 +932,17 @@
|
||||
"biography": "$t(common.biography)",
|
||||
"bitrate": "$t(common.bitrate)",
|
||||
"bpm": "$t(common.bpm)",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"playCount": "toistojen lukumäärä",
|
||||
"rating": "$t(common.rating)",
|
||||
"releaseDate": "julkaisupäivämäärä",
|
||||
"size": "$t(common.size)",
|
||||
"songCount": "$t(entity.track_other)",
|
||||
"songCount": "$t(entity.track, {\"count\": 2})",
|
||||
"title": "$t(common.title)",
|
||||
"year": "$t(common.year)"
|
||||
},
|
||||
"view": {
|
||||
"table": "taulukko",
|
||||
"card": "kortti",
|
||||
"poster": "juliste",
|
||||
"grid": "ruudukko",
|
||||
"list": "lista"
|
||||
}
|
||||
@@ -760,7 +950,7 @@
|
||||
"column": {
|
||||
"releaseYear": "vuosi",
|
||||
"bpm": "bpm",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"biography": "biografia",
|
||||
"dateAdded": "lisäyspäivämäärä",
|
||||
"album": "albumi",
|
||||
@@ -768,20 +958,74 @@
|
||||
"lastPlayed": "viimeksi toistettu",
|
||||
"path": "polku",
|
||||
"size": "$t(common.size)",
|
||||
"songCount": "$t(entity.track_other)",
|
||||
"songCount": "$t(entity.track, {\"count\": 2})",
|
||||
"title": "nimi",
|
||||
"trackNumber": "raita",
|
||||
"codec": "$t(common.codec)",
|
||||
"comment": "kommentti",
|
||||
"albumCount": "$t(entity.album_other)",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2})",
|
||||
"bitrate": "bittinopeus",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"discNumber": "levy",
|
||||
"favorite": "suosikki",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"playCount": "toistoja",
|
||||
"rating": "arvostelu",
|
||||
"releaseDate": "julkaisupäivämäärä"
|
||||
}
|
||||
},
|
||||
"releaseType": {
|
||||
"primary": {
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"broadcast": "lähetys",
|
||||
"ep": "EP",
|
||||
"other": "muu",
|
||||
"single": "single"
|
||||
},
|
||||
"secondary": {
|
||||
"audiobook": "änikirja",
|
||||
"audioDrama": "kuunnelma",
|
||||
"compilation": "kokoomateos",
|
||||
"djMix": "DJ mix",
|
||||
"demo": "demo",
|
||||
"fieldRecording": "kenttä-äänitys",
|
||||
"interview": "haastattelu",
|
||||
"live": "live",
|
||||
"mixtape": "mixtape",
|
||||
"remix": "remiksi",
|
||||
"soundtrack": "elokuvamusiikki",
|
||||
"spokenWord": "puhetta"
|
||||
}
|
||||
},
|
||||
"datetime": {
|
||||
"minuteShort": "m",
|
||||
"secondShort": "s",
|
||||
"hourShort": "t",
|
||||
"dayShort": "p"
|
||||
},
|
||||
"filterOperator": {
|
||||
"after": "jälkeen",
|
||||
"afterDate": "jälkeen (päivän)",
|
||||
"before": "ennen",
|
||||
"beforeDate": "ennen (päivää)",
|
||||
"contains": "sisältää",
|
||||
"endsWith": "loppuu",
|
||||
"inPlaylist": "on",
|
||||
"inTheLast": "on viimeisenä",
|
||||
"inTheRange": "on välillä",
|
||||
"inTheRangeDate": "on valitulla aikavälillä (päivä)",
|
||||
"is": "on",
|
||||
"isNot": "ei ole",
|
||||
"isGreaterThan": "enemmän kuin",
|
||||
"isLessThan": "vähemmän kuin",
|
||||
"matchesRegex": "vastaa säännöllistä lausetta (regex)",
|
||||
"notContains": "ei sisällä",
|
||||
"notInPlaylist": "ei ole",
|
||||
"notInTheLast": "ei ole viimeisenä",
|
||||
"startsWith": "alkaa"
|
||||
},
|
||||
"queryBuilder": {
|
||||
"standardTags": "standardi tagit",
|
||||
"customTags": "mukautetut tagit"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,27 +1,40 @@
|
||||
{
|
||||
"action": {
|
||||
"editPlaylist": "modifica $t(entity.playlist_one)",
|
||||
"editPlaylist": "modifica $t(entity.playlist, {\"count\": 1})",
|
||||
"goToPage": "vai alla pagina",
|
||||
"clearQueue": "cancella la coda",
|
||||
"addToFavorites": "aggiungi a $t(entity.favorite_other)",
|
||||
"addToPlaylist": "aggiungi a $t(entity.playlist_one)",
|
||||
"createPlaylist": "crea $t(entity.playlist_one)",
|
||||
"removeFromPlaylist": "rimuovi da $t(entity.playlist_one)",
|
||||
"viewPlaylists": "visualizza $t(entity.playlist_other)",
|
||||
"addToFavorites": "aggiungi a $t(entity.favorite, {\"count\": 2})",
|
||||
"addToPlaylist": "aggiungi a $t(entity.playlist, {\"count\": 1})",
|
||||
"createPlaylist": "crea $t(entity.playlist, {\"count\": 1})",
|
||||
"removeFromPlaylist": "rimuovi da $t(entity.playlist, {\"count\": 1})",
|
||||
"viewPlaylists": "visualizza $t(entity.playlist, {\"count\": 2})",
|
||||
"refresh": "$t(common.refresh)",
|
||||
"deletePlaylist": "elimina $t(entity.playlist_one)",
|
||||
"deletePlaylist": "elimina $t(entity.playlist, {\"count\": 1})",
|
||||
"removeFromQueue": "rimuovi dalla coda",
|
||||
"deselectAll": "deseleziona tutto",
|
||||
"setRating": "vota",
|
||||
"toggleSmartPlaylistEditor": "attiva/disattiva editor $t(entity.smartPlaylist)",
|
||||
"removeFromFavorites": "rimuovi da $t(entity.favorite_other)",
|
||||
"removeFromFavorites": "rimuovi da $t(entity.favorite, {\"count\": 2})",
|
||||
"moveToTop": "sposta in cima",
|
||||
"moveToBottom": "sposta in fondo",
|
||||
"moveToNext": "passa al successivo",
|
||||
"openIn": {
|
||||
"lastfm": "Apri in Last.fm",
|
||||
"musicbrainz": "Apri in MusicBrainz"
|
||||
}
|
||||
},
|
||||
"addOrRemoveFromSelection": "aggiungi o rimuovi dalla selezione",
|
||||
"selectRangeOfItems": "seleziona un intervallo di elementi",
|
||||
"createRadioStation": "crea $t(entity.radioStation, {\"count\": 1})",
|
||||
"deleteRadioStation": "rimuovi $t(entity.radioStation, {\"count\": 1})",
|
||||
"selectAll": "seleziona tutto",
|
||||
"downloadStarted": "download di {{count}} elementi iniziato",
|
||||
"moveUp": "sposta sopra",
|
||||
"moveDown": "sposta in basso",
|
||||
"holdToMoveToTop": "tieni premuto per muovere in cima",
|
||||
"holdToMoveToBottom": "tieni premuto per muoverlo in fondo",
|
||||
"moveItems": "muovi elementi",
|
||||
"shuffle": "casuale",
|
||||
"viewMore": "mostra di più"
|
||||
},
|
||||
"common": {
|
||||
"backward": "indietro",
|
||||
@@ -51,7 +64,7 @@
|
||||
"left": "sinistra",
|
||||
"save": "salva",
|
||||
"right": "destra",
|
||||
"currentSong": "$t(entity.track_one) corrente",
|
||||
"currentSong": "$t(entity.track, {\"count\": 1}) corrente",
|
||||
"trackNumber": "traccia",
|
||||
"descending": "decrescente",
|
||||
"gap": "gap",
|
||||
@@ -75,7 +88,9 @@
|
||||
"forward": "successivo",
|
||||
"delete": "elimina",
|
||||
"forceRestartRequired": "riavvia per applicare le modifiche... chiudi la notifica per riavviare",
|
||||
"setting": "impostazione",
|
||||
"setting_one": "impostazione",
|
||||
"setting_many": "impostazioni",
|
||||
"setting_other": "impostazioni",
|
||||
"version": "versione",
|
||||
"title": "titolo",
|
||||
"filter_one": "filtro",
|
||||
@@ -94,7 +109,7 @@
|
||||
"none": "nessuno",
|
||||
"menu": "menù",
|
||||
"restartRequired": "riavvio richiesto",
|
||||
"previousSong": "$t(entity.track_one) precedente",
|
||||
"previousSong": "$t(entity.track, {\"count\": 1}) precedente",
|
||||
"noResultsFromQuery": "la query non ha ritornato risultati",
|
||||
"quit": "esci",
|
||||
"expand": "espandi",
|
||||
@@ -121,7 +136,24 @@
|
||||
"trackPeak": "picco di volume del brano",
|
||||
"translation": "traduzione",
|
||||
"bitDepth": "bit depth (profondità di bit)",
|
||||
"sampleRate": "sample rate (frequenza di campionamento)"
|
||||
"sampleRate": "sample rate (frequenza di campionamento)",
|
||||
"countSelected": "{{count}} selezionati",
|
||||
"doNotShowAgain": "non mostrarlo di nuovo",
|
||||
"view": "visualizza",
|
||||
"example": "esempio",
|
||||
"externalLinks": "link esterni",
|
||||
"faster": "più rapido",
|
||||
"filter_single": "singolo",
|
||||
"noFilters": "nessun filtro configurato",
|
||||
"private": "privato",
|
||||
"public": "pubblico",
|
||||
"retry": "riprova",
|
||||
"recordLabel": "registra etichetta",
|
||||
"rename": "rinomina",
|
||||
"sort": "ordina",
|
||||
"explicit": "esplicito",
|
||||
"clean": "pulisci",
|
||||
"itemsMore": "ancora {{count}}"
|
||||
},
|
||||
"player": {
|
||||
"repeat_all": "ripeti coda",
|
||||
@@ -138,7 +170,7 @@
|
||||
"shuffle": "riproduzione casuale",
|
||||
"playbackFetchNoResults": "nessuna canzone trovata",
|
||||
"playbackFetchInProgress": "caricamento canzoni…",
|
||||
"addNext": "aggiungi successivo",
|
||||
"addNext": "successivo",
|
||||
"playbackSpeed": "velocità di riproduzione",
|
||||
"playbackFetchCancel": "ci sta mettendo un po'... chiudi la notifica per annullare",
|
||||
"play": "riproduci",
|
||||
@@ -150,18 +182,30 @@
|
||||
"queue_moveToTop": "sposta selezionati in fondo",
|
||||
"queue_moveToBottom": "sposta selezionati in cima",
|
||||
"shuffle_off": "non mescolare",
|
||||
"addLast": "aggiungi in coda",
|
||||
"addLast": "per ultima",
|
||||
"mute": "silenzia",
|
||||
"skip_forward": "salta avanti",
|
||||
"playSimilarSongs": "riproduci brani simili",
|
||||
"viewQueue": "visualizza coda"
|
||||
"viewQueue": "visualizza coda",
|
||||
"holdToShuffle": "tieni premuto per la riproduzione casuale",
|
||||
"lyrics": "testi",
|
||||
"restoreQueueFromServer": "ripristina coda dal server",
|
||||
"saveQueueToServer": "salva coda sul server",
|
||||
"trackRadio": "radio della traccia",
|
||||
"sleepTimer_minutes": "{{count}} minuti",
|
||||
"sleepTimer_hours": "{{count}} ore",
|
||||
"sleepTimer_custom": "personalizzato",
|
||||
"sleepTimer_off": "spento",
|
||||
"sleepTimer_timeRemaining": "{{time}} rimanente",
|
||||
"sleepTimer_setCustom": "imposta timer",
|
||||
"sleepTimer_cancel": "cancella timer"
|
||||
},
|
||||
"setting": {
|
||||
"crossfadeStyle_description": "seleziona lo stile dissolvenza da usare per il player audio",
|
||||
"remotePort_description": "imposta la porta del server di controllo remoto",
|
||||
"hotkey_skipBackward": "salta a precedente",
|
||||
"volumeWheelStep_description": "la quantità di volume da cambiare quando si scorre la rotellina del mouse sullo slider del volume",
|
||||
"audioDevice_description": "seleziona il device audioda usare per la riproduzione (solo web player)",
|
||||
"audioDevice_description": "seleziona il dispositivo audio da usare per la riproduzione",
|
||||
"theme_description": "imposta il tema da usare per l'applicazione",
|
||||
"hotkey_playbackPause": "pausa",
|
||||
"hotkey_volumeUp": "alza volume",
|
||||
@@ -200,11 +244,10 @@
|
||||
"hotkey_globalSearch": "ricerca globale",
|
||||
"gaplessAudio_description": "imposta l'audio gapless per mpv",
|
||||
"remoteUsername_description": "imposta l'username del server di controllo remoto. Se username e password sono vuoti, l'autenticazione sarà disattivata",
|
||||
"disableAutomaticUpdates": "disabilita aggiornamenti automatici",
|
||||
"exitToTray_description": "riduce a icona nella barra di sistema all'uscita",
|
||||
"followLyric_description": "scorre il testo alla posizione di riproduzione corrente",
|
||||
"hotkey_favoritePreviousSong": "$t(common.previousSong) preferita",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album_one)",
|
||||
"replayGainMode_optionAlbum": "$t(entity.album, {\"count\": 1})",
|
||||
"lyricOffset": "offset testi (ms)",
|
||||
"discordUpdateInterval_description": "il tempo in secondi tra ogni aggiornamento (minimo 15 secondi)",
|
||||
"fontType_optionCustom": "font personalizzato",
|
||||
@@ -216,7 +259,7 @@
|
||||
"playbackStyle_optionCrossFade": "dissolvenza",
|
||||
"hotkey_rate3": "voto 3 stelle",
|
||||
"font": "font",
|
||||
"replayGainMode_optionTrack": "$t(entity.track_one)",
|
||||
"replayGainMode_optionTrack": "$t(entity.track, {\"count\": 1})",
|
||||
"themeLight_description": "imposta il tema chiaro da usare per l'applicazione",
|
||||
"hotkey_toggleFullScreenPlayer": "attiva/disattiva player a schermo intero",
|
||||
"hotkey_localSearch": "ricerca in-pagina",
|
||||
@@ -249,7 +292,6 @@
|
||||
"accentColor_description": "imposta colore d'accento per l'applicazione",
|
||||
"playbackStyle_optionNormal": "normale",
|
||||
"windowBarStyle": "stile barra della finestra",
|
||||
"floatingQueueArea": "mostra l'area di passaggio della coda fluttante",
|
||||
"hotkey_toggleRepeat": "attiva/disattiva ripeti",
|
||||
"lyricOffset_description": "aumenta/dimuisce l'offset del testo di una specifica quantità di millisecondi",
|
||||
"sidebarConfiguration_description": "seleziona gli elementi e l'ordine in cui appaiono nella barra laterale",
|
||||
@@ -260,7 +302,7 @@
|
||||
"useSystemTheme_description": "segui le preferenze del tema definite dal sistema",
|
||||
"playButtonBehavior_optionAddNext": "$t(player.addNext)",
|
||||
"lyricFetch_description": "ottieni testi da varie sorgenti internet",
|
||||
"lyricFetchProvider_description": "seleziona i provider da dove prendere i testi. l'ordine dei provider è l'ordine in cui vengono fatte le richieste",
|
||||
"lyricFetchProvider_description": "seleziona i provider dai quali prendere i testi",
|
||||
"globalMediaHotkeys_description": "attiva/disattiva l'uso dei tasti media globali per controllare la riproduzione",
|
||||
"customFontPath": "percorso font personalizzato",
|
||||
"followLyric": "segui testo corrente",
|
||||
@@ -271,7 +313,6 @@
|
||||
"hotkey_rate0": "rimuovi voto",
|
||||
"discordApplicationId": "application id {{discord}}",
|
||||
"applicationHotkeys_description": "configura tasti a scelta rapida dell'applicazione. attiva/disattiva la casella per impostare un tasto a scelta rapida globale (solo desktop)",
|
||||
"floatingQueueArea_description": "visualizza l'icona di passaggio sul lato destro dello schermo per mostrare la coda di riproduzione",
|
||||
"hotkey_volumeMute": "silenzia volume",
|
||||
"remoteUsername": "username server di controllo remoto",
|
||||
"sidebarPlaylistList": "lista playlist nella barra laterale",
|
||||
@@ -335,14 +376,10 @@
|
||||
"discordListening_description": "mostra lo stato come in ascolto invece che in riproduzione",
|
||||
"discordServeImage": "recupera le immagini di {{discord}} dal server",
|
||||
"discordServeImage_description": "condividi la copertina per lo stato attività di {{discord}} direttamente dal server, disponibile solo per Jellyfin e Navidrome",
|
||||
"doubleClickBehavior": "aggiungi alla coda tutte le tracce cercate, con un doppio clic",
|
||||
"doubleClickBehavior_description": "se attivato, tutte le tracce corrispondenti alla ricerca verranno aggiunte alla coda. altrimenti, verrà aggiunta alla coda solo la traccia selezionata",
|
||||
"externalLinks": "mostra link esterni",
|
||||
"externalLinks_description": "consente di visualizzare link esterni (Last.fm, MusicBrainz) sulle pagine di artista/album",
|
||||
"preferLocalLyrics": "utilizza i testi locali",
|
||||
"preferLocalLyrics_description": "usa i testi locali anziché quelli online, quando disponibili",
|
||||
"genreBehavior": "comportamento predefinito della pagina genere",
|
||||
"genreBehavior_description": "determina se cliccando su un genere si apre di default la lista dei brani o degli album",
|
||||
"homeConfiguration": "configurazione della home page",
|
||||
"homeConfiguration_description": "configura quali elementi vengono mostrati e in quale ordine nella home page",
|
||||
"homeFeature": "carosello in evidenza nella home page",
|
||||
@@ -361,8 +398,6 @@
|
||||
"passwordStore": "Archivio di password/segreti",
|
||||
"passwordStore_description": "specifica quale archivio di password e segreti utilizzare. modificalo in caso di problemi nel salvataggio delle credenziali",
|
||||
"playButtonBehavior_optionPlayShuffled": "$t(player.shuffle)",
|
||||
"playerAlbumArtResolution": "risoluzione della copertina nel lettore",
|
||||
"playerAlbumArtResolution_description": "la risoluzione dell’anteprima della copertina nel lettore in formato grande. valori più alti la rendono più nitida, ma possono rallentare il caricamento. Il valore predefinito è 0, che indica la modalità automatica",
|
||||
"sidePlayQueueStyle_optionAttached": "fissata",
|
||||
"sidePlayQueueStyle_optionDetached": "sganciata",
|
||||
"startMinimized": "avvia minimizzato",
|
||||
@@ -400,7 +435,35 @@
|
||||
"discordLinkType": "link di attività {{discord}}",
|
||||
"discordLinkType_description": "aggiunge collegamenti esterni a {{lastfm}} o {{musicbrainz}} ai campi del brano e dell'artista nell'attività {{discord}}. {{musicbrainz}} è il più accurato, ma richiede tag e non fornisce collegamenti dell'artista mentre {{lastfm}} dovrebbe sempre fornire un link. non rende richieste di rete extra",
|
||||
"discordLinkType_none": "$t(common.none)",
|
||||
"discordLinkType_mbz_lastfm": "{{musicbrainz}} con {{lastfm}} fallback"
|
||||
"discordLinkType_mbz_lastfm": "{{musicbrainz}} con {{lastfm}} fallback",
|
||||
"autoDJ": "auto DJ",
|
||||
"autoDJ_description": "aggiungi automaticamente canzoni simili alla coda",
|
||||
"autoDJ_itemCount": "conteggio elementi",
|
||||
"analyticsDisable_description": "Alcuni dati anonimi sull'utilizzo vengono inviati allo sviluppatore per migliorare l'applicazione",
|
||||
"artistBackground": "immagine dello sfondo dell'artista",
|
||||
"releaseChannel_optionBeta": "beta",
|
||||
"releaseChannel_optionLatest": "ultima",
|
||||
"releaseChannel": "canale di rilascio",
|
||||
"releaseChannel_description": "seleziona tra rilascio stabile, beta o alpha (nightly) per gli aggiornamenti automatici",
|
||||
"discordRichPresence": "{{discord}} rich presence",
|
||||
"releaseChannel_optionAlpha": "alpha (nightly)",
|
||||
"automaticUpdates_description": "Controlla e installa aggiornamenti automaticamente",
|
||||
"automaticUpdates": "Aggiornamenti automatici",
|
||||
"exportImportSettings_notValidJSON": "il file passato non è un JSON valido",
|
||||
"language": "lingua",
|
||||
"logLevel_optionDebug": "debug",
|
||||
"logLevel_optionError": "errore",
|
||||
"logLevel_optionInfo": "info",
|
||||
"pathReplace_optionRemovePrefix": "rimuovi prefisso",
|
||||
"pathReplace_optionAddPrefix": "aggiungi prefisso",
|
||||
"playerFilters": "Filtra canzoni dalla coda",
|
||||
"imageResolution_optionHeader": "header",
|
||||
"playerbarWaveformAlign_optionTop": "in cima",
|
||||
"sidebarPlaylistListFilterRegex_placeholder": "es. ^Daily Mix.*",
|
||||
"transcode": "abilita transcodifica",
|
||||
"queryBuilderCustomFields_inputLabel": "etichetta",
|
||||
"queryBuilderCustomFields_inputTag": "tag",
|
||||
"queryBuilderCustomFields": "campi personalizzati"
|
||||
},
|
||||
"error": {
|
||||
"remotePortWarning": "riavvia il server per applicare la nuova porta",
|
||||
@@ -426,14 +489,17 @@
|
||||
"badValue": "opzione non valida \"{{value}}\". valore inesistente",
|
||||
"networkError": "si è verificato un errore di rete",
|
||||
"openError": "impossibile aprire il file",
|
||||
"notificationDenied": "i permessi per le notifiche non sono stati concessi. questa configurazione non ha effetto"
|
||||
"notificationDenied": "i permessi per le notifiche non sono stati concessi. questa configurazione non ha effetto",
|
||||
"invalidJson": "JSON non valido",
|
||||
"noNetwork": "server non disponibile",
|
||||
"noNetworkDescription": "impossibile connettersi al server"
|
||||
},
|
||||
"filter": {
|
||||
"mostPlayed": "più riprodotti",
|
||||
"comment": "commento",
|
||||
"playCount": "numero di riproduzioni",
|
||||
"recentlyUpdated": "aggiornati recentemente",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"channels": "$t(common.channel, {\"count\": 2})",
|
||||
"isCompilation": "è una compilation",
|
||||
"recentlyPlayed": "riprodotti recentemente",
|
||||
"isRated": "è valutato",
|
||||
@@ -442,17 +508,17 @@
|
||||
"rating": "voto",
|
||||
"search": "cerca",
|
||||
"bitrate": "bitrate",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"recentlyAdded": "aggiunti recentemente",
|
||||
"note": "nota",
|
||||
"name": "nome",
|
||||
"dateAdded": "data aggiunta",
|
||||
"releaseDate": "data di rilascio",
|
||||
"albumCount": "numero $t(entity.album_other)",
|
||||
"albumCount": "numero $t(entity.album, {\"count\": 2})",
|
||||
"communityRating": "voto della community",
|
||||
"path": "percorso",
|
||||
"favorited": "preferito",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"isRecentlyPlayed": "è stato recentemente riprodotto",
|
||||
"isFavorited": "è preferito",
|
||||
"bpm": "bpm",
|
||||
@@ -461,7 +527,7 @@
|
||||
"disc": "disco",
|
||||
"biography": "biografia",
|
||||
"songCount": "conteggio canzoni",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"duration": "durata",
|
||||
"isPublic": "è pubblico",
|
||||
"random": "casuale",
|
||||
@@ -469,24 +535,29 @@
|
||||
"toYear": "fino all'anno",
|
||||
"fromYear": "dall'anno",
|
||||
"criticRating": "voto della critica",
|
||||
"album": "$t(entity.album_one)",
|
||||
"trackNumber": "traccia"
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"trackNumber": "traccia",
|
||||
"matchOr": "o",
|
||||
"sortName": "ordina nome"
|
||||
},
|
||||
"page": {
|
||||
"sidebar": {
|
||||
"nowPlaying": "in riproduzione",
|
||||
"playlists": "$t(entity.playlist_other)",
|
||||
"playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"search": "$t(common.search)",
|
||||
"tracks": "$t(entity.track_other)",
|
||||
"albums": "$t(entity.album_other)",
|
||||
"genres": "$t(entity.genre_other)",
|
||||
"folders": "$t(entity.folder_other)",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"tracks": "$t(entity.track, {\"count\": 2})",
|
||||
"albums": "$t(entity.album, {\"count\": 2})",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})",
|
||||
"folders": "$t(entity.folder, {\"count\": 2})",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"home": "$t(common.home)",
|
||||
"artists": "$t(entity.artist_other)",
|
||||
"albumArtists": "$t(entity.albumArtist_other)",
|
||||
"artists": "$t(entity.artist, {\"count\": 2})",
|
||||
"albumArtists": "$t(entity.albumArtist, {\"count\": 2})",
|
||||
"myLibrary": "la mia libreria",
|
||||
"shared": "condivisa $t(entity.playlist_other)"
|
||||
"shared": "condivisa $t(entity.playlist, {\"count\": 2})",
|
||||
"collections": "collezioni",
|
||||
"favorites": "$t(entity.favorite, {\"count\": 2})",
|
||||
"radio": "$t(entity.radioStation, {\"count\": 2})"
|
||||
},
|
||||
"fullscreenPlayer": {
|
||||
"config": {
|
||||
@@ -514,7 +585,7 @@
|
||||
"appMenu": {
|
||||
"selectServer": "seleziona server",
|
||||
"version": "versione {{version}}",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"manageServers": "gestisci server",
|
||||
"expandSidebar": "espandi barra laterale",
|
||||
"collapseSidebar": "collassa barra laterale",
|
||||
@@ -523,7 +594,10 @@
|
||||
"goBack": "torna indietro",
|
||||
"goForward": "vai avanti",
|
||||
"privateModeOff": "disabilita modalità privata",
|
||||
"privateModeOn": "abilita modalità privata"
|
||||
"privateModeOn": "abilita modalità privata",
|
||||
"selectMusicFolder": "seleziona cartella con musica",
|
||||
"noMusicFolder": "nessuna cartella con musica selezionata",
|
||||
"multipleMusicFolders": "{{count}} cartelle con musica selezionate"
|
||||
},
|
||||
"contextMenu": {
|
||||
"addToPlaylist": "$t(action.addToPlaylist)",
|
||||
@@ -548,8 +622,10 @@
|
||||
"playShuffled": "$t(player.shuffle)",
|
||||
"shareItem": "condividi elemento",
|
||||
"showDetails": "mostra info",
|
||||
"goToAlbum": "vai a $t(entity.album_one)",
|
||||
"goToAlbumArtist": "vai a $t(entity.albumArtist_one)"
|
||||
"goToAlbum": "vai a $t(entity.album, {\"count\": 1})",
|
||||
"goToAlbumArtist": "vai a $t(entity.albumArtist, {\"count\": 1})",
|
||||
"moveItems": "$t(action.moveItems)",
|
||||
"goTo": "vai a"
|
||||
},
|
||||
"home": {
|
||||
"mostPlayed": "più riprodotti",
|
||||
@@ -557,10 +633,11 @@
|
||||
"title": "$t(common.home)",
|
||||
"explore": "esplora dalla tua libreria",
|
||||
"recentlyPlayed": "riprodotti recentemente",
|
||||
"recentlyReleased": "appena pubblicato"
|
||||
"recentlyReleased": "appena pubblicato",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})"
|
||||
},
|
||||
"albumDetail": {
|
||||
"moreFromArtist": "di più da questo $t(entity.artist_one)",
|
||||
"moreFromArtist": "di più da questo $t(entity.artist, {\"count\": 1})",
|
||||
"moreFromGeneric": "di più da {{item}}",
|
||||
"released": "rilasciato"
|
||||
},
|
||||
@@ -569,20 +646,33 @@
|
||||
"generalTab": "generale",
|
||||
"hotkeysTab": "tasti a scelta rapida",
|
||||
"windowTab": "finestra",
|
||||
"advanced": "avanzate"
|
||||
"advanced": "avanzate",
|
||||
"updates": "aggiorna",
|
||||
"cache": "cache",
|
||||
"application": "applicazione",
|
||||
"theme": "tema",
|
||||
"controls": "controlla",
|
||||
"remote": "remoto",
|
||||
"exportImport": "importa/esporta",
|
||||
"scrobble": "scrobble",
|
||||
"audio": "audio",
|
||||
"lyrics": "testi",
|
||||
"transcoding": "transcodifica",
|
||||
"discord": "discord",
|
||||
"lyricsDisplay": "mostra testi"
|
||||
},
|
||||
"albumArtistList": {
|
||||
"title": "$t(entity.albumArtist_other)"
|
||||
"title": "$t(entity.albumArtist, {\"count\": 2})"
|
||||
},
|
||||
"genreList": {
|
||||
"title": "$t(entity.genre_other)",
|
||||
"showAlbums": "mostra $t(entity.genre_one) $t(entity.album_other)",
|
||||
"showTracks": "mostra $t(entity.genre_one) $t(entity.track_other)"
|
||||
"title": "$t(entity.genre, {\"count\": 2})",
|
||||
"showAlbums": "mostra $t(entity.genre, {\"count\": 1}) $t(entity.album, {\"count\": 2})",
|
||||
"showTracks": "mostra $t(entity.genre, {\"count\": 1}) $t(entity.track, {\"count\": 2})"
|
||||
},
|
||||
"trackList": {
|
||||
"title": "$t(entity.track_other)",
|
||||
"title": "$t(entity.track, {\"count\": 2})",
|
||||
"artistTracks": "tracce di {{artist}}",
|
||||
"genreTracks": "\"{{genre}}\" $t(entity.track_other)"
|
||||
"genreTracks": "\"{{genre}}\" $t(entity.track, {\"count\": 2})"
|
||||
},
|
||||
"globalSearch": {
|
||||
"commands": {
|
||||
@@ -593,23 +683,26 @@
|
||||
"title": "comandi"
|
||||
},
|
||||
"playlistList": {
|
||||
"title": "$t(entity.playlist_other)"
|
||||
"title": "$t(entity.playlist, {\"count\": 2})"
|
||||
},
|
||||
"albumList": {
|
||||
"title": "$t(entity.album_other)",
|
||||
"title": "$t(entity.album, {\"count\": 2})",
|
||||
"artistAlbums": "albums di {{artist}}",
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album_other)"
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album, {\"count\": 2})"
|
||||
},
|
||||
"albumArtistDetail": {
|
||||
"about": "Info {{artist}}",
|
||||
"appearsOn": "compare su",
|
||||
"recentReleases": "uscite recenti",
|
||||
"viewDiscography": "mostra discografia",
|
||||
"relatedArtists": "correlati $t(entity.artist_other)",
|
||||
"relatedArtists": "correlati $t(entity.artist, {\"count\": 2})",
|
||||
"topSongs": "brani migliori",
|
||||
"topSongsFrom": "brani migliori da {{title}}",
|
||||
"viewAll": "mostra tutto",
|
||||
"viewAllTracks": "mostra tutto $t(entity.track_other)"
|
||||
"viewAllTracks": "mostra tutto $t(entity.track, {\"count\": 2})",
|
||||
"favoriteSongs": "canzoni preferite",
|
||||
"topSongsPersonal": "personale",
|
||||
"favoriteSongsFrom": "canzoni preferite da {{title}}"
|
||||
},
|
||||
"manageServers": {
|
||||
"title": "gestisci servers",
|
||||
@@ -626,20 +719,30 @@
|
||||
},
|
||||
"playlist": {
|
||||
"reorder": "riordino abilitato solo quando si ordina per id"
|
||||
},
|
||||
"radioList": {
|
||||
"title": "stazioni radio"
|
||||
},
|
||||
"folderList": {
|
||||
"title": "$t(entity.folder, {\"count\": 2})"
|
||||
},
|
||||
"collections": {
|
||||
"overrideExisting": "sovrascrivi esistente",
|
||||
"saveAsCollection": "salva come collezione"
|
||||
}
|
||||
},
|
||||
"form": {
|
||||
"deletePlaylist": {
|
||||
"title": "elimina $t(entity.playlist_one)",
|
||||
"success": "$t(entity.playlist_one) eliminata correttamente",
|
||||
"input_confirm": "digita il nome della $t(entity.playlist_one) per confermare"
|
||||
"title": "elimina $t(entity.playlist, {\"count\": 1})",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) eliminata correttamente",
|
||||
"input_confirm": "digita il nome della $t(entity.playlist, {\"count\": 1}) per confermare"
|
||||
},
|
||||
"createPlaylist": {
|
||||
"input_description": "$t(common.description)",
|
||||
"title": "crea $t(entity.playlist_one)",
|
||||
"title": "crea $t(entity.playlist, {\"count\": 1})",
|
||||
"input_public": "publico",
|
||||
"input_name": "$t(common.name)",
|
||||
"success": "$t(entity.playlist_one) creata con successo",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) creata con successo",
|
||||
"input_owner": "$t(common.owner)"
|
||||
},
|
||||
"addServer": {
|
||||
@@ -655,13 +758,17 @@
|
||||
"ignoreCors": "ignora cors ($t(common.restartRequired))",
|
||||
"error_savePassword": "si è verificato un errore quando si è provato a salvare la password",
|
||||
"input_preferInstantMix": "preferisci mix istantaneo",
|
||||
"input_preferInstantMixDescription": "usa solo mix istantaneo per ottenere canzoni simili. utile se si dispone di plugin che modificano questo comportamento"
|
||||
"input_preferInstantMixDescription": "usa solo mix istantaneo per ottenere canzoni simili. utile se si dispone di plugin che modificano questo comportamento",
|
||||
"input_preferRemoteUrl": "preferisci url pubblico",
|
||||
"input_remoteUrl": "url pubblico"
|
||||
},
|
||||
"addToPlaylist": {
|
||||
"success": "aggiunto $t(entity.trackWithCount, {\"count\": {{message}} }) a $t(entity.playlistWithCount, {\"count\": {{numOfPlaylists}} })",
|
||||
"title": "aggiungi a $t(entity.playlist_one)",
|
||||
"title": "aggiungi a $t(entity.playlist, {\"count\": 1})",
|
||||
"input_skipDuplicates": "salta duplicati",
|
||||
"input_playlists": "$t(entity.playlist_other)"
|
||||
"input_playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"create": "crea $t(entity.playlist, {\"count\": 1})",
|
||||
"searchOrCreate": "cerca $t(entity.playlist, {\"count\": 2}) o digita per crearne una nuova"
|
||||
},
|
||||
"updateServer": {
|
||||
"title": "aggiorna server",
|
||||
@@ -670,17 +777,19 @@
|
||||
"queryEditor": {
|
||||
"input_optionMatchAll": "soddisfa tutti",
|
||||
"input_optionMatchAny": "soddisfa qualsiasi",
|
||||
"title": "editor di query"
|
||||
"title": "editor di query",
|
||||
"resetToDefault": "ripristina predefinito",
|
||||
"clearFilters": "rimuovi filtri"
|
||||
},
|
||||
"lyricSearch": {
|
||||
"input_name": "$t(common.name)",
|
||||
"input_artist": "$t(entity.artist_one)",
|
||||
"input_artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"title": "cerca testi"
|
||||
},
|
||||
"editPlaylist": {
|
||||
"title": "modifica $t(entity.playlist_one)",
|
||||
"title": "modifica $t(entity.playlist, {\"count\": 1})",
|
||||
"publicJellyfinNote": "Jellyfin non mostra se una playlist è pubblica o meno. Se vuoi che rimanga pubblica, assicurati di selezionare l’opzione seguente",
|
||||
"success": "$t(entity.playlist_one) aggiornato con successo"
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) aggiornato con successo"
|
||||
},
|
||||
"shareItem": {
|
||||
"allowDownloading": "consentire il download",
|
||||
@@ -694,6 +803,27 @@
|
||||
"enabled": "la modalità privata è abilitata: lo stato di riproduzione viene ora nascosto alle integrazioni esterne",
|
||||
"disabled": "la modalità privata è disabilitata: lo stato di riproduzione è ora visibile alle integrazioni esterne abilitate",
|
||||
"title": "modalità privata"
|
||||
},
|
||||
"largeFetchConfirmation": {
|
||||
"title": "aggiungi elementi alla coda"
|
||||
},
|
||||
"createRadioStation": {
|
||||
"success": "stazione radio creata con successo",
|
||||
"title": "crea stazione radio",
|
||||
"input_name": "nome"
|
||||
},
|
||||
"lyricsExport": {
|
||||
"export": "esporta testi",
|
||||
"input_synced": "esporta testi sincronizzati",
|
||||
"input_offset": "$t(setting.lyricOffset)"
|
||||
},
|
||||
"shuffleAll": {
|
||||
"input_limit": "quante canzoni?",
|
||||
"input_minYear": "dall'anno",
|
||||
"input_maxYear": "all'anno",
|
||||
"input_played_optionAll": "tutte le tracce",
|
||||
"input_played_optionUnplayed": "solo tracce non ancora riprodotte",
|
||||
"input_played_optionPlayed": "solo tracce riprodotte"
|
||||
}
|
||||
},
|
||||
"table": {
|
||||
@@ -706,14 +836,29 @@
|
||||
"size": "$t(common.size)",
|
||||
"followCurrentSong": "segui il brano corrente",
|
||||
"itemGap": "spaziatura tra gli elementi (px)",
|
||||
"itemSize": "dimensione dell’elemento (px)"
|
||||
"itemSize": "dimensione dell’elemento (px)",
|
||||
"advancedSettings": "impostazioni avanzate",
|
||||
"moveUp": "muovi sopra",
|
||||
"moveDown": "muovi sotto",
|
||||
"pinToLeft": "fissa a sinistra",
|
||||
"pinToRight": "fissa a destra",
|
||||
"alignLeft": "allinea a sinistra",
|
||||
"alignCenter": "allina al centro",
|
||||
"alignRight": "allinea a destra",
|
||||
"itemsPerRow": "elementi per riga",
|
||||
"size_default": "predefinito",
|
||||
"size_compact": "compatto",
|
||||
"size_large": "largo",
|
||||
"pagination": "paginazione",
|
||||
"pagination_itemsPerPage": "elementi per pagina",
|
||||
"pagination_infinite": "infinita",
|
||||
"pagination_paginate": "impaginato"
|
||||
},
|
||||
"view": {
|
||||
"table": "tabella",
|
||||
"card": "Scheda",
|
||||
"grid": "griglia",
|
||||
"list": "lista",
|
||||
"poster": "poster"
|
||||
"detail": "dettaglio"
|
||||
},
|
||||
"label": {
|
||||
"releaseDate": "data rilascio",
|
||||
@@ -727,23 +872,29 @@
|
||||
"trackNumber": "numero traccia",
|
||||
"rowIndex": "indice riga",
|
||||
"rating": "$t(common.rating)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"album": "$t(entity.album_one)",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"note": "$t(common.note)",
|
||||
"biography": "$t(common.biography)",
|
||||
"owner": "$t(common.owner)",
|
||||
"path": "$t(common.path)",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"channels": "$t(common.channel, {\"count\": 2})",
|
||||
"playCount": "numero riproduzioni",
|
||||
"bitrate": "$t(common.bitrate)",
|
||||
"actions": "$t(common.action_other)",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"actions": "$t(common.action, {\"count\": 2})",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"discNumber": "numero disco",
|
||||
"favorite": "$t(common.favorite)",
|
||||
"year": "$t(common.year)",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"codec": "$t(common.codec)",
|
||||
"songCount": "$t(entity.track_other)"
|
||||
"songCount": "$t(entity.track, {\"count\": 2})",
|
||||
"bitDepth": "$t(common.bitDepth)",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2})",
|
||||
"composer": "compositore",
|
||||
"image": "immagine",
|
||||
"sampleRate": "$t(common.sampleRate)",
|
||||
"titleArtist": "$t(common.title) (artista)"
|
||||
}
|
||||
},
|
||||
"column": {
|
||||
@@ -752,7 +903,7 @@
|
||||
"rating": "voto",
|
||||
"favorite": "preferito",
|
||||
"playCount": "riproduzioni",
|
||||
"albumCount": "$t(entity.album_other)",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2})",
|
||||
"releaseYear": "anno",
|
||||
"lastPlayed": "ultima riproduzione",
|
||||
"biography": "biografia",
|
||||
@@ -761,16 +912,19 @@
|
||||
"title": "titolo",
|
||||
"bpm": "bpm",
|
||||
"dateAdded": "data aggiunta",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"songCount": "$t(entity.track_other)",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"songCount": "$t(entity.track, {\"count\": 2})",
|
||||
"trackNumber": "traccia",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"albumArtist": "artista album",
|
||||
"path": "percorso",
|
||||
"discNumber": "disco",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"channels": "$t(common.channel, {\"count\": 2})",
|
||||
"size": "$t(common.size)",
|
||||
"codec": "$t(common.codec)"
|
||||
"codec": "$t(common.codec)",
|
||||
"bitDepth": "$t(common.bitDepth)",
|
||||
"sampleRate": "$t(common.sampleRate)",
|
||||
"owner": "proprietario"
|
||||
}
|
||||
},
|
||||
"entity": {
|
||||
@@ -810,7 +964,7 @@
|
||||
"folder_one": "cartella",
|
||||
"folder_many": "cartelle",
|
||||
"folder_other": "cartelle",
|
||||
"smartPlaylist": "$t(entity.playlist_one) smart",
|
||||
"smartPlaylist": "$t(entity.playlist, {\"count\": 1}) smart",
|
||||
"album_one": "album",
|
||||
"album_many": "album",
|
||||
"album_other": "album",
|
||||
@@ -825,6 +979,89 @@
|
||||
"play_other": "{{count}} riproduzioni",
|
||||
"song_one": "traccia",
|
||||
"song_many": "tracce",
|
||||
"song_other": "tracce"
|
||||
"song_other": "tracce",
|
||||
"radioStation_one": "stazione radio",
|
||||
"radioStation_many": "stazioni radio",
|
||||
"radioStation_other": "stazioni radio",
|
||||
"radioStationWithCount_one": "{{count}} stazione radio",
|
||||
"radioStationWithCount_many": "{{count}} stazioni radio",
|
||||
"radioStationWithCount_other": "{{count}} stazioni radio"
|
||||
},
|
||||
"datetime": {
|
||||
"minuteShort": "m",
|
||||
"secondShort": "s",
|
||||
"hourShort": "o",
|
||||
"dayShort": "g"
|
||||
},
|
||||
"filterOperator": {
|
||||
"contains": "contiene",
|
||||
"endsWith": "finisce con",
|
||||
"inPlaylist": "è in",
|
||||
"is": "è",
|
||||
"isNot": "non è",
|
||||
"isGreaterThan": "è più grande di",
|
||||
"isLessThan": "è meno di",
|
||||
"notContains": "non contiene",
|
||||
"notInPlaylist": "non è in",
|
||||
"startsWith": "inizia con"
|
||||
},
|
||||
"releaseType": {
|
||||
"primary": {
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"broadcast": "broadcast",
|
||||
"ep": "ep",
|
||||
"other": "altro",
|
||||
"single": "singolo"
|
||||
},
|
||||
"secondary": {
|
||||
"audiobook": "audiolibro",
|
||||
"audioDrama": "audio drama",
|
||||
"compilation": "compilation",
|
||||
"interview": "intervista",
|
||||
"live": "live",
|
||||
"mixtape": "mixtape",
|
||||
"remix": "remix",
|
||||
"soundtrack": "soundtrack"
|
||||
}
|
||||
},
|
||||
"queryBuilder": {
|
||||
"customTags": "tag personalizzati"
|
||||
},
|
||||
"dragDropZone": {
|
||||
"error_oneFileOnly": "Per favore seleziona solo 1 file",
|
||||
"error_readingFile": "errore nella lettura del file: {{errorMessage}}",
|
||||
"mainText": "rilascia un file qui"
|
||||
},
|
||||
"visualizer": {
|
||||
"ignoredPresets": "Preset Ignorati",
|
||||
"includeAllPresets": "Includi Tutti i Preset",
|
||||
"selectedPresets": "Preset Selezionati",
|
||||
"presets": "Preset",
|
||||
"selectPreset": "Seleziona Preset",
|
||||
"applyPreset": "Applica Preset",
|
||||
"saveAsPreset": "Salva come Preset",
|
||||
"updatePreset": "Aggiorna Preset",
|
||||
"copyConfiguration": "Copia Configurazione",
|
||||
"pasteConfiguration": "Incolla Configurazione",
|
||||
"pasteConfigurationPlaceholder": "Incolla la configurazione JSON qui...",
|
||||
"pasteFromClipboard": "Incolla dalla Clipboard",
|
||||
"applyConfiguration": "Applica Configurazione",
|
||||
"presetName": "Nome Preset",
|
||||
"presetNamePlaceholder": "Inserisci il nome del preset",
|
||||
"general": "Generale",
|
||||
"mode": "Modalità",
|
||||
"maxFPS": "Max FPS",
|
||||
"opacity": "Opacità",
|
||||
"customGradients": "Gradienti Personalizzati",
|
||||
"gradientNamePlaceholder": "Nome Gradiente",
|
||||
"vertical": "Verticale",
|
||||
"horizontal": "Orizzontale",
|
||||
"addColor": "Aggiungi Colore",
|
||||
"position": "Posizione",
|
||||
"level": "Livello",
|
||||
"remove": "Rimuovi",
|
||||
"pasteGradient": "Incolla Gradiente",
|
||||
"custom": "Personalizzato",
|
||||
"gradient": "Gradiente"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,27 +1,43 @@
|
||||
{
|
||||
"action": {
|
||||
"createPlaylist": "$t(entity.playlist_one) 생성",
|
||||
"addToFavorites": "$t(entity.favorite_other)에 추가",
|
||||
"addToPlaylist": "$t(entity.playlist_one)에 추가",
|
||||
"createPlaylist": "$t(entity.playlist, {\"count\": 1}) 생성",
|
||||
"addToFavorites": "$t(entity.favorite, {\"count\": 2})에 추가",
|
||||
"addToPlaylist": "$t(entity.playlist, {\"count\": 1})에 추가",
|
||||
"clearQueue": "대기열 지우기",
|
||||
"deletePlaylist": "$t(entity.playlist_one) 삭제",
|
||||
"deletePlaylist": "$t(entity.playlist, {\"count\": 1}) 삭제",
|
||||
"deselectAll": "모두 선택 해제",
|
||||
"editPlaylist": "$t(entity.playlist_one) 편집",
|
||||
"editPlaylist": "$t(entity.playlist, {\"count\": 1}) 편집",
|
||||
"goToPage": "페이지 이동",
|
||||
"moveToBottom": "맨 아래로 이동",
|
||||
"moveToTop": "맨 위로 이동",
|
||||
"moveToNext": "다음으로 이동",
|
||||
"removeFromQueue": "대기열에서 제거",
|
||||
"refresh": "$t(common.refresh)",
|
||||
"removeFromFavorites": "$t(entity.favorite_other)에서 제거",
|
||||
"removeFromPlaylist": "$t(entity.playlist_one)에서 제거",
|
||||
"removeFromFavorites": "$t(entity.favorite, {\"count\": 2})에서 제거",
|
||||
"removeFromPlaylist": "$t(entity.playlist, {\"count\": 1})에서 제거",
|
||||
"openIn": {
|
||||
"musicbrainz": "MusicBrainz에서 보기",
|
||||
"lastfm": "Last.fm에서 보기"
|
||||
},
|
||||
"viewPlaylists": "$t(entity.playlist_other) 보기",
|
||||
"viewPlaylists": "$t(entity.playlist, {\"count\": 2}) 보기",
|
||||
"setRating": "평점 지정",
|
||||
"toggleSmartPlaylistEditor": "$t(entity.smartPlaylist) 편집기 펼치기"
|
||||
"toggleSmartPlaylistEditor": "$t(entity.smartPlaylist) 편집기 펼치기",
|
||||
"addOrRemoveFromSelection": "선택항목에서 추가 또는 제거",
|
||||
"selectRangeOfItems": "항목의 범위 선택",
|
||||
"createRadioStation": "$t(entity.radioStation, {\"count\": 1}) 생성",
|
||||
"deleteRadioStation": "$t(entity.radioStation, {\"count\": 1}) 삭제",
|
||||
"selectAll": "전부 선택",
|
||||
"downloadStarted": "{{count}}개 항목 다운로드 시작했습니다",
|
||||
"moveUp": "위로 옮기기",
|
||||
"moveDown": "아래로 옮기기",
|
||||
"holdToMoveToTop": "맨 위로 옮기기 위해 끌기",
|
||||
"holdToMoveToBottom": "맨 아래로 옮기기 위해 끌기",
|
||||
"moveItems": "항목 옮기기",
|
||||
"shuffle": "섞기",
|
||||
"shuffleAll": "모두 섞기",
|
||||
"shuffleSelected": "선택항목 섞기",
|
||||
"viewMore": "더 보기",
|
||||
"openApplicationDirectory": "앱 디렉토리 열기"
|
||||
},
|
||||
"common": {
|
||||
"translation": "번역",
|
||||
@@ -43,7 +59,7 @@
|
||||
"backward": "뒤로",
|
||||
"saveAs": "(으)로 저장하기",
|
||||
"search": "검색",
|
||||
"setting": "설정",
|
||||
"setting_other": "설정",
|
||||
"share": "공유",
|
||||
"size": "크기",
|
||||
"sortOrder": "순서",
|
||||
@@ -58,7 +74,7 @@
|
||||
"comingSoon": "조만간…",
|
||||
"configure": "설정",
|
||||
"confirm": "확인",
|
||||
"currentSong": "현재 $t(entity.track_one)",
|
||||
"currentSong": "현재 $t(entity.track, {\"count\": 1})",
|
||||
"decrease": "감소",
|
||||
"delete": "삭제",
|
||||
"descending": "내림차순",
|
||||
@@ -80,7 +96,7 @@
|
||||
"path": "경로",
|
||||
"playerMustBePaused": "플레이어가 일시정지 되어야 합니다",
|
||||
"preview": "미리보기",
|
||||
"previousSong": "이전곡 $t(entity.track_one)",
|
||||
"previousSong": "이전곡 $t(entity.track, {\"count\": 1})",
|
||||
"quit": "종료",
|
||||
"refresh": "새로고침",
|
||||
"reload": "리로드",
|
||||
@@ -115,7 +131,25 @@
|
||||
"owner": "소유자",
|
||||
"sampleRate": "샘플레이트",
|
||||
"tags": "태그",
|
||||
"additionalParticipants": "추가 참여자"
|
||||
"additionalParticipants": "추가 참여자",
|
||||
"explicitStatus": "성인컨텐츠",
|
||||
"private": "비공개",
|
||||
"public": "공개",
|
||||
"recordLabel": "레이블",
|
||||
"releaseType": "발매형태",
|
||||
"explicit": "성인컨텐츠",
|
||||
"clean": "클린",
|
||||
"countSelected": "{{count}}개 선택됨",
|
||||
"doNotShowAgain": "다시 보지 않기",
|
||||
"view": "보기",
|
||||
"externalLinks": "외부 링크",
|
||||
"faster": "빠르게",
|
||||
"noFilters": "필터 미설정",
|
||||
"slower": "천천히",
|
||||
"sort": "정렬",
|
||||
"gridRows": "행 그리드",
|
||||
"tableColumns": "테이블 열",
|
||||
"itemsMore": "{{count}}개 더"
|
||||
},
|
||||
"entity": {
|
||||
"albumWithCount_other": "{{count}} 앨범",
|
||||
@@ -134,8 +168,10 @@
|
||||
"song_other": "곡",
|
||||
"play_other": "{{count}} 재생",
|
||||
"playlistWithCount_other": "{{count}} 재생목록",
|
||||
"smartPlaylist": "스마트 $t(entity.playlist_one)",
|
||||
"track_other": "트랙"
|
||||
"smartPlaylist": "스마트 $t(entity.playlist, {\"count\": 1})",
|
||||
"track_other": "트랙",
|
||||
"radioStation_other": "라디오 방송국",
|
||||
"radioStationWithCount_other": "{{count}}개 라디오 방송국"
|
||||
},
|
||||
"error": {
|
||||
"systemFontError": "시스템 폰트를 가져오는데 실패하였습니다",
|
||||
@@ -178,9 +214,9 @@
|
||||
"dateAdded": "추가된 날짜",
|
||||
"lastPlayed": "마지막으로 재생한",
|
||||
"mostPlayed": "가장 많이 재생한",
|
||||
"album": "$t(entity.album_one)",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"communityRating": "커뮤니티 평점",
|
||||
"criticRating": "비평가 평점",
|
||||
"disc": "디스크",
|
||||
@@ -189,11 +225,11 @@
|
||||
"channels": "$t(common.channel_other)",
|
||||
"duration": "길이",
|
||||
"bpm": "bpm",
|
||||
"albumCount": "$t(entity.album_other) 앨범수",
|
||||
"albumCount": "$t(entity.album, {\"count\": 2}) 앨범수",
|
||||
"comment": "코멘트",
|
||||
"favorited": "즐겨찾기",
|
||||
"fromYear": "시작 년도",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"id": "아이디",
|
||||
"isCompilation": "편집앨범 여부",
|
||||
"isFavorited": "즐겨찾기 여부",
|
||||
@@ -226,14 +262,16 @@
|
||||
},
|
||||
"addToPlaylist": {
|
||||
"input_skipDuplicates": "중복 건너뛰기",
|
||||
"title": "$t(entity.playlist_one) 에 추가",
|
||||
"input_playlists": "$t(entity.playlist_other)",
|
||||
"success": "$t(entity.playlistWithCount, {\"count\": {{numOfPlaylists}} })에 $t(entity.trackWithCount, {\"count\": {{message}} })가 추가되었습니다"
|
||||
"title": "$t(entity.playlist, {\"count\": 1}) 에 추가",
|
||||
"input_playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"success": "$t(entity.playlistWithCount, {\"count\": {{numOfPlaylists}} })에 $t(entity.trackWithCount, {\"count\": {{message}} })가 추가되었습니다",
|
||||
"create": "$t(entity.playlist, {\"count\": 1}) {{playlist}} 생성",
|
||||
"searchOrCreate": "$t(entity.playlist, {\"count\": 2}) 검색 또는 입력하여 새로 만들기"
|
||||
},
|
||||
"lyricSearch": {
|
||||
"title": "가사 검색",
|
||||
"input_name": "$t(common.name)",
|
||||
"input_artist": "$t(entity.artist_one)"
|
||||
"input_artist": "$t(entity.artist, {\"count\": 1})"
|
||||
},
|
||||
"queryEditor": {
|
||||
"input_optionMatchAll": "모두 일치",
|
||||
@@ -241,9 +279,9 @@
|
||||
"title": "쿼리 편집기"
|
||||
},
|
||||
"editPlaylist": {
|
||||
"title": "$t(entity.playlist_one) 편집",
|
||||
"title": "$t(entity.playlist, {\"count\": 1}) 편집",
|
||||
"publicJellyfinNote": "Jellyfin은 재생목록 공개 여부를 노출하지 않습니다. 만약 공개되길 원한다면 다음을 선택하세요",
|
||||
"success": "$t(entity.playlist_one) 업데이트 되었습니다"
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) 업데이트 되었습니다"
|
||||
},
|
||||
"shareItem": {
|
||||
"allowDownloading": "다운로드 허용",
|
||||
@@ -260,15 +298,15 @@
|
||||
"createPlaylist": {
|
||||
"input_description": "$t(common.description)",
|
||||
"input_name": "$t(common.name)",
|
||||
"success": "$t(entity.playlist_one)를 생성했습니다",
|
||||
"success": "$t(entity.playlist, {\"count\": 1})를 생성했습니다",
|
||||
"input_owner": "$t(common.owner)",
|
||||
"input_public": "공개",
|
||||
"title": "$t(entity.playlist_one) 생성"
|
||||
"title": "$t(entity.playlist, {\"count\": 1}) 생성"
|
||||
},
|
||||
"deletePlaylist": {
|
||||
"input_confirm": "확인을 위해 $t(entity.playlist_one)의 이름을 적어주세요",
|
||||
"success": "$t(entity.playlist_one)가 삭제되었습니다",
|
||||
"title": "$t(entity.playlist_one) 삭제"
|
||||
"input_confirm": "확인을 위해 $t(entity.playlist, {\"count\": 1})의 이름을 적어주세요",
|
||||
"success": "$t(entity.playlist, {\"count\": 1})가 삭제되었습니다",
|
||||
"title": "$t(entity.playlist, {\"count\": 1}) 삭제"
|
||||
},
|
||||
"privateMode": {
|
||||
"enabled": "프라이빗 모드가 활성화되었습니다. 재생상태가 외부 서비스에 지금부터 노출되지 않습니다",
|
||||
@@ -324,8 +362,8 @@
|
||||
"download": "다운로드",
|
||||
"numberSelected": "{{count}}개 선택됨",
|
||||
"shareItem": "공유",
|
||||
"goToAlbum": "$t(entity.album_one)으로 이동",
|
||||
"goToAlbumArtist": "$t(entity.albumArtist_one)으로 이동",
|
||||
"goToAlbum": "$t(entity.album, {\"count\": 1})으로 이동",
|
||||
"goToAlbumArtist": "$t(entity.albumArtist, {\"count\": 1})으로 이동",
|
||||
"showDetails": "추가정보"
|
||||
},
|
||||
"albumArtistDetail": {
|
||||
@@ -333,17 +371,17 @@
|
||||
"viewDiscography": "디스코그래피 보기",
|
||||
"appearsOn": "참여 앨범",
|
||||
"recentReleases": "최근 앨범",
|
||||
"relatedArtists": "연관 $t(entity.artist_other)",
|
||||
"relatedArtists": "연관 $t(entity.artist, {\"count\": 2})",
|
||||
"topSongs": "최고의 곡들",
|
||||
"topSongsFrom": "{{title}}이 포함된 최고의 곡들",
|
||||
"viewAll": "전부 보이기",
|
||||
"viewAllTracks": "$t(entity.track_other) 전부 보이기"
|
||||
"viewAllTracks": "$t(entity.track, {\"count\": 2}) 전부 보이기"
|
||||
},
|
||||
"albumArtistList": {
|
||||
"title": "$t(entity.albumArtist_other)"
|
||||
"title": "$t(entity.albumArtist, {\"count\": 2})"
|
||||
},
|
||||
"albumDetail": {
|
||||
"moreFromArtist": "$t(entity.artist_one) 더 보기",
|
||||
"moreFromArtist": "$t(entity.artist, {\"count\": 1}) 더 보기",
|
||||
"moreFromGeneric": "{{item}} 더 보기",
|
||||
"released": "발매"
|
||||
},
|
||||
@@ -351,8 +389,8 @@
|
||||
"artistAlbums": "{{artist}}의 앨범"
|
||||
},
|
||||
"genreList": {
|
||||
"showAlbums": "$t(entity.genre_one) $t(entity.album_other) 표시",
|
||||
"showTracks": "$t(entity.genre_one) $t(entity.track_other) 표시"
|
||||
"showAlbums": "$t(entity.genre, {\"count\": 1}) $t(entity.album, {\"count\": 2}) 표시",
|
||||
"showTracks": "$t(entity.genre, {\"count\": 1}) $t(entity.track, {\"count\": 2}) 표시"
|
||||
},
|
||||
"globalSearch": {
|
||||
"commands": {
|
||||
@@ -387,7 +425,7 @@
|
||||
"sidebar": {
|
||||
"myLibrary": "내 라이브러리",
|
||||
"nowPlaying": "재생중",
|
||||
"shared": "공유 $t(entity.playlist_other)"
|
||||
"shared": "공유 $t(entity.playlist, {\"count\": 2})"
|
||||
},
|
||||
"trackList": {
|
||||
"artistTracks": "{{artist}}의 음악"
|
||||
@@ -400,8 +438,6 @@
|
||||
"dateAdded": "추가된 날짜"
|
||||
},
|
||||
"view": {
|
||||
"card": "카드",
|
||||
"poster": "포스터",
|
||||
"table": "표"
|
||||
}
|
||||
}
|
||||
@@ -443,6 +479,47 @@
|
||||
"accentColor_description": "앱의 강조색상 설정",
|
||||
"accentColor": "강조색상",
|
||||
"albumBackground_description": "앨범아트가 있는 경우 앨범화면에 배경이미지 추가",
|
||||
"albumBackground": "앨범 배경이미지"
|
||||
"albumBackground": "앨범 배경이미지",
|
||||
"albumBackgroundBlur_description": "앨범 배경이미지의 흐려짐 정도 조정",
|
||||
"albumBackgroundBlur": "앨범배경이미지 흐려짐 크기",
|
||||
"applicationHotkeys_description": "앱의 단축키 설정. 앱 전체에 적용되는 단축키를 설정하기 위해서는 체크박스에 체크하세요(PC만 가능)",
|
||||
"applicationHotkeys": "앱 단축키",
|
||||
"artistBackground": "아티스트 배경이미지",
|
||||
"artistBackground_description": "아티스트 페이지에 아티스트가 포함된 배경이미지를 추가",
|
||||
"artistBackgroundBlur": "아티스트 배경이미지 흐려짐 크기",
|
||||
"artistBackgroundBlur_description": "아티스트 배경이미지에 적용된 흐려짐 크기 조정",
|
||||
"artistConfiguration": "앨범아티스트 페이지 설정",
|
||||
"artistConfiguration_description": "앨범아티스트 페이지에 표시할 정보 및 순서 설정",
|
||||
"audioDevice_description": "음악재생에 사용할 장치 선택(웹플레이어만 가능)",
|
||||
"audioDevice": "오디오 장치",
|
||||
"audioExclusiveMode_description": "단독재생모드 켜기. 이 모드에서는 일반적으로 시스템의 재생장치가 고정되며 MPV로만 오디오가 재생됩니다",
|
||||
"audioExclusiveMode": "오디오 단독재생모드",
|
||||
"audioPlayer_description": "재생을 위한 오디오 플레이어 선택",
|
||||
"audioPlayer": "오디오 플레이어",
|
||||
"buttonSize_description": "플레이어 바 버튼 크기",
|
||||
"buttonSize": "플레이어 바 버튼 크기",
|
||||
"clearCache_description": "페이신 하드클리어. 페이신의 캐시 및 브라우저의 캐시 삭제(저장된 이미지 및 기타 정보). 서버 접속정보 및 설정은 유지됩니다"
|
||||
},
|
||||
"releaseType": {
|
||||
"primary": {
|
||||
"broadcast": "방송",
|
||||
"ep": "ep앨범",
|
||||
"other": "기타",
|
||||
"single": "싱글"
|
||||
},
|
||||
"secondary": {
|
||||
"audiobook": "오디오북",
|
||||
"audioDrama": "오디오 드라마",
|
||||
"compilation": "컴필레이션",
|
||||
"djMix": "DJ 믹스",
|
||||
"demo": "데모",
|
||||
"fieldRecording": "현지녹음",
|
||||
"interview": "인터뷰",
|
||||
"live": "라이브",
|
||||
"mixtape": "믹스테이프",
|
||||
"remix": "리믹스",
|
||||
"soundtrack": "사운드트랙",
|
||||
"spokenWord": "보컬사운드"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,23 +5,39 @@
|
||||
"musicbrainz": "Åpne i MusicBrainz"
|
||||
},
|
||||
"moveToBottom": "flytt til bunnen",
|
||||
"deletePlaylist": "slett $t(entity.playlist_one)",
|
||||
"deletePlaylist": "slett $t(entity.playlist, {\"count\": 1})",
|
||||
"deselectAll": "avmarker alle",
|
||||
"editPlaylist": "rediger $t(entity.playlist_one)",
|
||||
"addToFavorites": "legg til $t(entity.favorite_other)",
|
||||
"addToPlaylist": "legg til $t(entity.playlist_one)",
|
||||
"editPlaylist": "rediger $t(entity.playlist, {\"count\": 1})",
|
||||
"addToFavorites": "legg til $t(entity.favorite, {\"count\": 2})",
|
||||
"addToPlaylist": "legg til $t(entity.playlist, {\"count\": 1})",
|
||||
"clearQueue": "tøm kø",
|
||||
"createPlaylist": "opprett $t(entity.playlist_one)",
|
||||
"createPlaylist": "opprett $t(entity.playlist, {\"count\": 1})",
|
||||
"goToPage": "gå til side",
|
||||
"moveToTop": "flytt til toppen",
|
||||
"refresh": "$t(common.refresh)",
|
||||
"removeFromFavorites": "fjern fra $t(entity.favorite_other)",
|
||||
"removeFromFavorites": "fjern fra $t(entity.favorite, {\"count\": 2})",
|
||||
"moveToNext": "flytt til neste",
|
||||
"setRating": "angi vurdering",
|
||||
"removeFromQueue": "fjern fra kø",
|
||||
"removeFromPlaylist": "fjern fra $t(entity.playlist_one)",
|
||||
"viewPlaylists": "vise $t(entity.playlist_other)",
|
||||
"toggleSmartPlaylistEditor": "bytt $t(entity.smartPlaylist) editor"
|
||||
"removeFromPlaylist": "fjern fra $t(entity.playlist, {\"count\": 1})",
|
||||
"viewPlaylists": "vise $t(entity.playlist, {\"count\": 2})",
|
||||
"toggleSmartPlaylistEditor": "bytt $t(entity.smartPlaylist) editor",
|
||||
"selectAll": "marker alle",
|
||||
"downloadStarted": "startet nedlasting av {{count}} elementer",
|
||||
"selectRangeOfItems": "velg en rekke elementer",
|
||||
"addOrRemoveFromSelection": "legge til eller fjerne fra utvalg",
|
||||
"moveUp": "flytt opp",
|
||||
"moveDown": "flytt ned",
|
||||
"createRadioStation": "opprett $t(entity.radioStation, {\"count\": 1})",
|
||||
"deleteRadioStation": "slett $t(entity.radioStation, {\"count\": 1})",
|
||||
"holdToMoveToTop": "hold nede for å gå til toppen",
|
||||
"holdToMoveToBottom": "hold nede for å gå til bunnen",
|
||||
"moveItems": "flytt elementer",
|
||||
"shuffle": "tilfeldig avspilling",
|
||||
"shuffleAll": "tilfelding avspilling av alt",
|
||||
"shuffleSelected": "tilfelding avspilling av utvalgte",
|
||||
"viewMore": "se mer",
|
||||
"openApplicationDirectory": "åpne applikasjonskatalogen"
|
||||
},
|
||||
"common": {
|
||||
"bpm": "bpm",
|
||||
@@ -31,7 +47,7 @@
|
||||
"collapse": "slå sammen",
|
||||
"configure": "konfigurer",
|
||||
"confirm": "bekreft",
|
||||
"currentSong": "gjeldende $t(entity.track_one)",
|
||||
"currentSong": "gjeldende $t(entity.track, {\"count\": 1})",
|
||||
"version": "versjon",
|
||||
"areYouSure": "er du sikker?",
|
||||
"ascending": "stigende",
|
||||
@@ -50,8 +66,8 @@
|
||||
"expand": "utvid",
|
||||
"favorite": "favoritt",
|
||||
"filters": "filter",
|
||||
"forceRestartRequired": "ta omstart for å la endringene trå i kraft... lukk meldingen for å ta omstart",
|
||||
"forward": "fremover",
|
||||
"forceRestartRequired": "ta omstart for å aktivere endringene... lukk meldingen for å ta omstart",
|
||||
"forward": "framover",
|
||||
"gap": "avstand",
|
||||
"home": "hjem",
|
||||
"increase": "øke",
|
||||
@@ -69,7 +85,7 @@
|
||||
"owner": "eier",
|
||||
"playerMustBePaused": "spilleren må settes på pause",
|
||||
"path": "sti",
|
||||
"previousSong": "forrige $t(entity.track_one)",
|
||||
"previousSong": "forrige $t(entity.track, {\"count\": 1})",
|
||||
"refresh": "frisk opp",
|
||||
"rating": "vurdering",
|
||||
"random": "vilkårlig",
|
||||
@@ -87,7 +103,8 @@
|
||||
"share": "del",
|
||||
"quit": "avslutt",
|
||||
"size": "størrelse",
|
||||
"setting": "innstilling",
|
||||
"setting_one": "innstilling",
|
||||
"setting_other": "innstillinger",
|
||||
"trackNumber": "spor",
|
||||
"title": "tittel",
|
||||
"channel_one": "kanal",
|
||||
@@ -118,10 +135,34 @@
|
||||
"albumGain": "gjennomsnittlig lydnivå for album",
|
||||
"albumPeak": "høyeste lydnivå for album",
|
||||
"bitDepth": "bitdybde",
|
||||
"sampleRate": "samplingsfrekvens"
|
||||
"sampleRate": "samplingsfrekvens",
|
||||
"countSelected": "{{count}} valgt",
|
||||
"doNotShowAgain": "ikke vis dette igjen",
|
||||
"view": "vis",
|
||||
"example": "eksempel",
|
||||
"externalLinks": "eksterne lenker",
|
||||
"faster": "raskere",
|
||||
"filter_single": "enkelt",
|
||||
"filter_multiple": "flerfoldige",
|
||||
"mood": "humør",
|
||||
"noFilters": "ingen filtre konfigurert",
|
||||
"private": "privat",
|
||||
"public": "offentlig",
|
||||
"retry": "prøv igjen",
|
||||
"recordLabel": "plateselskap",
|
||||
"releaseType": "utgivelsestype",
|
||||
"rename": "gi nytt navn",
|
||||
"slower": "saktere",
|
||||
"sort": "sorter",
|
||||
"explicit": "grov",
|
||||
"clean": "ren",
|
||||
"gridRows": "rutenettrader",
|
||||
"tableColumns": "tabellkolonner",
|
||||
"itemsMore": "{{count}} fler",
|
||||
"explicitStatus": "grovhetsstatus"
|
||||
},
|
||||
"entity": {
|
||||
"smartPlaylist": "smart $t(entity.playlist_one)",
|
||||
"smartPlaylist": "smart $t(entity.playlist, {\"count\": 1})",
|
||||
"album_one": "album",
|
||||
"album_other": "album",
|
||||
"albumArtist_one": "albumartist",
|
||||
@@ -155,7 +196,11 @@
|
||||
"artist_one": "artist",
|
||||
"artist_other": "artister",
|
||||
"song_one": "sang",
|
||||
"song_other": "sanger"
|
||||
"song_other": "sanger",
|
||||
"radioStation_one": "radiostasjon",
|
||||
"radioStation_other": "radiostasjoner",
|
||||
"radioStationWithCount_one": "{{count}} radiostasjon",
|
||||
"radioStationWithCount_other": "{{count}} radiostasjoner"
|
||||
},
|
||||
"error": {
|
||||
"apiRouteError": "kan ikke behandle forespørselen",
|
||||
@@ -165,23 +210,30 @@
|
||||
"endpointNotImplementedError": "endepunkt {{endpoint}} er ikke implementert for {{serverType}}",
|
||||
"credentialsRequired": "innloggingsdetaljer er påkrevd",
|
||||
"genericError": "en feil har oppstått",
|
||||
"invalidServer": "ugyldig server",
|
||||
"invalidServer": "ugyldig tjener",
|
||||
"playbackError": "et problem oppstod ved avspilling av media",
|
||||
"localFontAccessDenied": "ingen tilgang til lokale skrifttyper",
|
||||
"loginRateError": "for mange innloggingsforsøk, vennligst prøv igjen om noen få sekunder",
|
||||
"audioDeviceFetchError": "en feil oppstod ved innhenting av lydenheter",
|
||||
"networkError": "at nettverksproblem har oppstått",
|
||||
"networkError": "det har oppstått et nettverksproblem",
|
||||
"openError": "kunne ikke åpne fil",
|
||||
"serverNotSelectedError": "ingen server er valgt",
|
||||
"serverNotSelectedError": "ingen tjener er valgt",
|
||||
"remotePortError": "et problem oppstod med å sette serverport",
|
||||
"systemFontError": "et problem oppstod med innlasting av systemskrifttyper",
|
||||
"serverRequired": "server er påkrevd",
|
||||
"serverRequired": "tjener er påkrevd",
|
||||
"sessionExpiredError": "sesjonen din har utløpt",
|
||||
"remotePortWarning": "ta omstart av serveren for å aktivere ny port",
|
||||
"remoteDisableError": "en problem oppstod ved å $t(common.disable) serveren",
|
||||
"remoteEnableError": "et problem oppstod ved å $t(common.enable) serveren",
|
||||
"notificationDenied": "tillatelser for varsler ble avvist. Denne innstillingen har ingen effekt",
|
||||
"badValue": "ugyldig alternativ \"{{value}}\". Denne verdien eksisterer ikke lenger"
|
||||
"badValue": "ugyldig alternativ \"{{value}}\". Denne verdien eksisterer ikke lenger",
|
||||
"noNetwork": "tjener utilgjengelig",
|
||||
"noNetworkDescription": "kunne ikke koble til tjeneren",
|
||||
"invalidJson": "ugyldig JSON",
|
||||
"saveQueueFailed": "kunne ikke lagre kø",
|
||||
"multipleServerSaveQueueError": "Spillekøen har en eller flere sanger som ikke finnes på gjeldene tjener. Dette er ikke støttet",
|
||||
"serverLockSingleServer": "kun én tjener er tillatt når tjener er låst",
|
||||
"settingsSyncError": "avvik ble funnet mellom innstillinger i avspilleren og hovedprosessen. ta en omstart av applikasjonen for å aktivere endringene"
|
||||
},
|
||||
"filter": {
|
||||
"bpm": "bpm",
|
||||
@@ -189,10 +241,10 @@
|
||||
"id": "id",
|
||||
"name": "navn",
|
||||
"bitrate": "bithastighet",
|
||||
"albumArtist": "$t(entity.albumArtist_one)",
|
||||
"artist": "$t(entity.artist_one)",
|
||||
"albumArtist": "$t(entity.albumArtist, {\"count\": 1})",
|
||||
"artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"biography": "biografi",
|
||||
"album": "$t(entity.album_one)",
|
||||
"album": "$t(entity.album, {\"count\": 1})",
|
||||
"duration": "lengde",
|
||||
"favorited": "merket som favoritt",
|
||||
"comment": "kommentar",
|
||||
@@ -222,22 +274,26 @@
|
||||
"isCompilation": "er samling",
|
||||
"isFavorited": "er merket som favoritt",
|
||||
"recentlyAdded": "nylig lagt til",
|
||||
"channels": "$t(common.channel_other)",
|
||||
"genre": "$t(entity.genre_one)",
|
||||
"channels": "$t(common.channel, {\"count\": 2})",
|
||||
"genre": "$t(entity.genre, {\"count\": 1})",
|
||||
"trackNumber": "spor",
|
||||
"albumCount": "$t(entity.album_other) opptelling"
|
||||
"albumCount": "$t(entity.album, {\"count\": 2}) opptelling",
|
||||
"matchAnd": "og",
|
||||
"matchOr": "eller",
|
||||
"sortName": "sorter navn",
|
||||
"explicitStatus": "$t(common.explicitStatus)"
|
||||
},
|
||||
"form": {
|
||||
"createPlaylist": {
|
||||
"input_description": "$t(common.description)",
|
||||
"input_owner": "$t(common.owner)",
|
||||
"input_public": "offentlig",
|
||||
"title": "opprett $t(entity.playlist_one)",
|
||||
"title": "opprett $t(entity.playlist, {\"count\": 1})",
|
||||
"input_name": "$t(common.name)",
|
||||
"success": "$t(entity.playlist_one) opprettet"
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) opprettet"
|
||||
},
|
||||
"lyricSearch": {
|
||||
"input_artist": "$t(entity.artist_one)",
|
||||
"input_artist": "$t(entity.artist, {\"count\": 1})",
|
||||
"input_name": "$t(common.name)",
|
||||
"title": "sangtekstsøk"
|
||||
},
|
||||
@@ -252,22 +308,27 @@
|
||||
"input_legacyAuthentication": "aktiver tradisjonell autentisering",
|
||||
"input_name": "servernavn",
|
||||
"title": "legg til server",
|
||||
"input_password": "passord"
|
||||
"input_password": "passord",
|
||||
"input_preferInstantMix": "foretrekk øyeblikkelig miks",
|
||||
"input_preferInstantMixDescription": "bruk bare øyeblikkelig miks for innhenting av lignende sanger. nyttig hvis du har tilleggsmoduler som endrer funksjonaliteten",
|
||||
"input_preferRemoteUrl": "foretrekk offentlig url",
|
||||
"input_remoteUrl": "offentlig url",
|
||||
"input_remoteUrlPlaceholder": "valgfritt: offentlig nettadresse for eksterne funksjoner"
|
||||
},
|
||||
"addToPlaylist": {
|
||||
"success": "la $t(entity.trackWithCount, {\"count\": {{message}} }) til $t(entity.playlistWithCount, {\"count\": {{numOfPlaylists}} })",
|
||||
"title": "legg til i $t(entity.playlist_one)",
|
||||
"title": "legg til i $t(entity.playlist, {\"count\": 1})",
|
||||
"input_skipDuplicates": "hopp over duplikater",
|
||||
"input_playlists": "$t(entity.playlist_other)"
|
||||
"input_playlists": "$t(entity.playlist, {\"count\": 2})"
|
||||
},
|
||||
"deletePlaylist": {
|
||||
"title": "slett $t(entity.playlist_one)",
|
||||
"success": "$t(entity.playlist_one) er slettet",
|
||||
"input_confirm": "skrive inn navnet på $t(entity.playlist_one) for å bekrefte"
|
||||
"title": "slett $t(entity.playlist, {\"count\": 1})",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) er slettet",
|
||||
"input_confirm": "skrive inn navnet på $t(entity.playlist, {\"count\": 1}) for å bekrefte"
|
||||
},
|
||||
"editPlaylist": {
|
||||
"title": "rediger $t(entity.playlist_one)",
|
||||
"success": "$t(entity.playlist_one) er oppdatert"
|
||||
"title": "rediger $t(entity.playlist, {\"count\": 1})",
|
||||
"success": "$t(entity.playlist, {\"count\": 1}) er oppdatert"
|
||||
},
|
||||
"shareItem": {
|
||||
"allowDownloading": "tillat nedlasting",
|
||||
@@ -284,7 +345,29 @@
|
||||
"queryEditor": {
|
||||
"input_optionMatchAll": "match alle",
|
||||
"input_optionMatchAny": "matche hvilken som helst",
|
||||
"title": "redigeringsverktøy for spørringer"
|
||||
"title": "redigeringsverktøy for spørringer",
|
||||
"addRuleGroup": "legg til regelgruppe",
|
||||
"removeRuleGroup": "fjern regelgruppe",
|
||||
"resetToDefault": "tilbakestill til standard",
|
||||
"clearFilters": "tøm filter"
|
||||
},
|
||||
"largeFetchConfirmation": {
|
||||
"title": "legg til elementer i køen",
|
||||
"description": "Denne handlingen vil legge alle elementene til den gjeldende filtervisningen"
|
||||
},
|
||||
"createRadioStation": {
|
||||
"success": "vellykket opprettelse av radiostasjon",
|
||||
"title": "opprett radiostasjon",
|
||||
"input_homepageUrl": "hjemmesidelenke",
|
||||
"input_name": "navn",
|
||||
"input_streamUrl": "strømmelenke"
|
||||
},
|
||||
"saveQueue": {
|
||||
"success": "lagre spillekø på tjener"
|
||||
},
|
||||
"lyricsExport": {
|
||||
"export": "eksporter sangtekster",
|
||||
"input_synced": "eksporter sunkroniserte sangtekster"
|
||||
}
|
||||
},
|
||||
"page": {
|
||||
@@ -296,7 +379,7 @@
|
||||
"manageServers": "administrere servere",
|
||||
"goBack": "gå tilbake",
|
||||
"openBrowserDevtools": "åpne utviklingsverktøy i nettleser",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"expandSidebar": "utvid sidefelt",
|
||||
"goForward": "gå fremover"
|
||||
},
|
||||
@@ -329,22 +412,22 @@
|
||||
"viewDiscography": "se diskografi",
|
||||
"recentReleases": "nylige utgivelser",
|
||||
"topSongsFrom": "beste sanger fra {{title}}",
|
||||
"viewAllTracks": "se alle $t(entity.track_other)",
|
||||
"viewAllTracks": "se alle $t(entity.track, {\"count\": 2})",
|
||||
"viewAll": "se alle",
|
||||
"about": "Om {{artist}}",
|
||||
"appearsOn": "opptrer på",
|
||||
"relatedArtists": "relatert $t(entity.artist_other)"
|
||||
"relatedArtists": "relatert $t(entity.artist, {\"count\": 2})"
|
||||
},
|
||||
"albumList": {
|
||||
"artistAlbums": "album av {{artist}}",
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album_other)",
|
||||
"title": "$t(entity.album_other)"
|
||||
"genreAlbums": "\"{{genre}}\" $t(entity.album, {\"count\": 2})",
|
||||
"title": "$t(entity.album, {\"count\": 2})"
|
||||
},
|
||||
"albumArtistList": {
|
||||
"title": "$t(entity.albumArtist_other)"
|
||||
"title": "$t(entity.albumArtist, {\"count\": 2})"
|
||||
},
|
||||
"albumDetail": {
|
||||
"moreFromArtist": "mer fra denne $t(entity.artist_one)",
|
||||
"moreFromArtist": "mer fra denne $t(entity.artist, {\"count\": 1})",
|
||||
"moreFromGeneric": "mer fra {{item}}",
|
||||
"released": "utgitt"
|
||||
},
|
||||
@@ -372,9 +455,9 @@
|
||||
"related": "relatert"
|
||||
},
|
||||
"genreList": {
|
||||
"title": "$t(entity.genre_other)",
|
||||
"showAlbums": "vis $t(entity.genre_one) $t(entity.album_other)",
|
||||
"showTracks": "vis $t(entity.genre_one) $t(entity.track_other)"
|
||||
"title": "$t(entity.genre, {\"count\": 2})",
|
||||
"showAlbums": "vis $t(entity.genre, {\"count\": 1}) $t(entity.album, {\"count\": 2})",
|
||||
"showTracks": "vis $t(entity.genre, {\"count\": 1}) $t(entity.track, {\"count\": 2})"
|
||||
},
|
||||
"globalSearch": {
|
||||
"title": "kommandoer",
|
||||
@@ -405,23 +488,23 @@
|
||||
"copyPath": "kopier stien til utklippstavlen"
|
||||
},
|
||||
"trackList": {
|
||||
"genreTracks": "\"{{genre}}\" $t(entity.track_other)",
|
||||
"title": "$t(entity.track_other)",
|
||||
"genreTracks": "\"{{genre}}\" $t(entity.track, {\"count\": 2})",
|
||||
"title": "$t(entity.track, {\"count\": 2})",
|
||||
"artistTracks": "spor fra {{artist}}"
|
||||
},
|
||||
"sidebar": {
|
||||
"albumArtists": "$t(entity.albumArtist_other)",
|
||||
"tracks": "$t(entity.track_other)",
|
||||
"albumArtists": "$t(entity.albumArtist, {\"count\": 2})",
|
||||
"tracks": "$t(entity.track, {\"count\": 2})",
|
||||
"nowPlaying": "spilles nå",
|
||||
"folders": "$t(entity.folder_other)",
|
||||
"genres": "$t(entity.genre_other)",
|
||||
"folders": "$t(entity.folder, {\"count\": 2})",
|
||||
"genres": "$t(entity.genre, {\"count\": 2})",
|
||||
"home": "$t(common.home)",
|
||||
"albums": "$t(entity.album_other)",
|
||||
"playlists": "$t(entity.playlist_other)",
|
||||
"albums": "$t(entity.album, {\"count\": 2})",
|
||||
"playlists": "$t(entity.playlist, {\"count\": 2})",
|
||||
"search": "$t(common.search)",
|
||||
"settings": "$t(common.setting_other)",
|
||||
"shared": "delt $t(entity.playlist_other)",
|
||||
"artists": "$t(entity.artist_other)",
|
||||
"settings": "$t(common.setting, {\"count\": 2})",
|
||||
"shared": "delt $t(entity.playlist, {\"count\": 2})",
|
||||
"artists": "$t(entity.artist, {\"count\": 2})",
|
||||
"myLibrary": "mitt bibliotek"
|
||||
},
|
||||
"setting": {
|
||||
@@ -432,7 +515,7 @@
|
||||
"windowTab": "vindu"
|
||||
},
|
||||
"playlistList": {
|
||||
"title": "$t(entity.playlist_other)"
|
||||
"title": "$t(entity.playlist, {\"count\": 2})"
|
||||
},
|
||||
"playlist": {
|
||||
"reorder": "omorganisering kun mulig ved sortering på id"
|
||||
@@ -494,15 +577,21 @@
|
||||
},
|
||||
"view": {
|
||||
"table": "tabell",
|
||||
"card": "kort",
|
||||
"grid": "rutenett",
|
||||
"list": "liste",
|
||||
"poster": "plakat"
|
||||
"list": "liste"
|
||||
},
|
||||
"general": {
|
||||
"autoFitColumns": "automatisk kolonnetilpasning",
|
||||
"displayType": "visningstype",
|
||||
"followCurrentSong": "følg gjeldende sang"
|
||||
"followCurrentSong": "følg gjeldende sang",
|
||||
"advancedSettings": "avanserte innstillinger",
|
||||
"moveUp": "flytt opp",
|
||||
"moveDown": "flytt ned",
|
||||
"pinToLeft": "fest til venstre",
|
||||
"pinToRight": "fest til høyre",
|
||||
"alignLeft": "venstrejuster",
|
||||
"alignCenter": "midtjuster",
|
||||
"alignRight": "høyrejuster"
|
||||
}
|
||||
},
|
||||
"column": {
|
||||
@@ -520,7 +609,46 @@
|
||||
"rating": "vurdering",
|
||||
"releaseDate": "utgivelsesdato",
|
||||
"title": "tittel",
|
||||
"trackNumber": "spor"
|
||||
"trackNumber": "spor",
|
||||
"owner": "eier"
|
||||
}
|
||||
},
|
||||
"filterOperator": {
|
||||
"after": "er etter",
|
||||
"afterDate": "er etter (date)",
|
||||
"before": "er før",
|
||||
"beforeDate": "er før (date)",
|
||||
"contains": "inneholder",
|
||||
"endsWith": "ender med",
|
||||
"inPlaylist": "er inne i",
|
||||
"inTheLast": "er inne i de siste",
|
||||
"inTheRange": "er innenfor området",
|
||||
"isGreaterThan": "er større enn",
|
||||
"isLessThan": "er mindre enn",
|
||||
"matchesRegex": "samsvarer med regex",
|
||||
"notContains": "inneholder ikke",
|
||||
"notInPlaylist": "er ikke med i",
|
||||
"notInTheLast": "er ikke med i de siste",
|
||||
"startsWith": "starter med",
|
||||
"inTheRangeDate": "er innenfor området (date)",
|
||||
"is": "er",
|
||||
"isNot": "er ikke"
|
||||
},
|
||||
"datetime": {
|
||||
"minuteShort": "m",
|
||||
"secondShort": "s",
|
||||
"hourShort": "h",
|
||||
"dayShort": "d"
|
||||
},
|
||||
"visualizer": {
|
||||
"options": {
|
||||
"weightingFilter": {
|
||||
"a": "A",
|
||||
"b": "B",
|
||||
"c": "C",
|
||||
"d": "D",
|
||||
"z": "Z"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||