@rr0/ufoathome 0.137.0 → 0.138.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-embed-scene/BeamSystem-Dp1WU1Zx.js +1 -0
- package/dist-embed-scene/ContrailGrowth-DwHS8If9.js +1 -0
- package/dist-embed-scene/ContrailSystem-GO0Hkyj3.js +1 -0
- package/dist-embed-scene/{SceneNames_es-D_98QraV.js → SceneNames_es-BS2ioieu.js} +1 -1
- package/dist-embed-scene/{SceneNames_fr-y6Z57BDf.js → SceneNames_fr-B-fRwUUu.js} +1 -1
- package/dist-embed-scene/{SceneNames_it-DQt9yIh1.js → SceneNames_it-B-QEwmuM.js} +1 -1
- package/dist-embed-scene/rr0-scene.mjs +337 -337
- package/dist-embed-scene/{sightingSchema-CNCtrneh.js → sightingSchema-DT9g-OyF.js} +1 -1
- package/{dist-embed-sighting/trafficRuntime-sSIo5Lms.js → dist-embed-scene/trafficRuntime-BPEJW9KZ.js} +2 -2
- package/dist-embed-sighting/BeamSystem-Ddt2lTBT.js +1 -0
- package/dist-embed-sighting/ContrailGrowth-DwHS8If9.js +1 -0
- package/dist-embed-sighting/ContrailSystem-D_EBfThB.js +1 -0
- package/dist-embed-sighting/{SceneNames_es-Zb4vw-Vp.js → SceneNames_es-wkWHMHet.js} +1 -1
- package/dist-embed-sighting/{SceneNames_fr-C6_IIN2c.js → SceneNames_fr-DbbzZ1bB.js} +1 -1
- package/dist-embed-sighting/{SceneNames_it-D7GivBq2.js → SceneNames_it-BsxnweGu.js} +1 -1
- package/dist-embed-sighting/rr0-sighting.mjs +326 -326
- package/dist-embed-sighting/{sightingSchema-CNCtrneh.js → sightingSchema-DT9g-OyF.js} +1 -1
- package/dist-embed-sighting/trafficRuntime-CfPqH9j0.js +2 -0
- package/dist-embed-sighting-editor/BeamSystem-B3qYVuHd.js +1 -0
- package/dist-embed-sighting-editor/ContrailGrowth-DwHS8If9.js +1 -0
- package/dist-embed-sighting-editor/ContrailSystem-D9rPfOBE.js +1 -0
- package/dist-embed-sighting-editor/{InterviewEditorElement-DHxRISPC.js → InterviewEditorElement-D6TqSXYB.js} +2 -2
- package/dist-embed-sighting-editor/LaunchEditor-CPa-pltK.js +18 -0
- package/dist-embed-sighting-editor/LaunchEditorMessages_en-DH8gI1vo.js +1 -0
- package/dist-embed-sighting-editor/LaunchEditorMessages_es-WCfaY4uY.js +1 -0
- package/dist-embed-sighting-editor/LaunchEditorMessages_fr-CWCGUG_A.js +1 -0
- package/dist-embed-sighting-editor/LaunchEditorMessages_it-DxSSiAd7.js +1 -0
- package/dist-embed-sighting-editor/{SceneNames_es-7RR79EmC.js → SceneNames_es-umTyyCxN.js} +1 -1
- package/dist-embed-sighting-editor/{SceneNames_fr-Da_S9KXa.js → SceneNames_fr-BNgnxIHx.js} +1 -1
- package/dist-embed-sighting-editor/{SceneNames_it-BwFZROII.js → SceneNames_it-5UYhmJHo.js} +1 -1
- package/dist-embed-sighting-editor/SightingEditorMessages_es-UiUywEk4.js +12 -0
- package/dist-embed-sighting-editor/{SightingEditorMessages_fr-90Ojknvv.js → SightingEditorMessages_fr-D5pajHZd.js} +2 -2
- package/dist-embed-sighting-editor/SightingEditorMessages_it-9SduHYDB.js +12 -0
- package/dist-embed-sighting-editor/{SightingFileEditor-DcOCyimm.js → SightingFileEditor-DkRqrb-a.js} +1 -1
- package/dist-embed-sighting-editor/rr0-sighting-editor.mjs +401 -393
- package/dist-embed-sighting-editor/{sightingSchema-CNCtrneh.js → sightingSchema-DT9g-OyF.js} +1 -1
- package/dist-embed-sighting-editor/trafficRuntime-BAGbGiVc.js +2 -0
- package/package.json +1 -1
- package/dist-embed-scene/BeamSystem-DDqbr8Bb.js +0 -1
- package/dist-embed-scene/ContrailGrowth-CuAzwIoc.js +0 -1
- package/dist-embed-scene/ContrailSystem-CG5BhBF7.js +0 -1
- package/dist-embed-scene/trafficRuntime-CgM31CwB.js +0 -2
- package/dist-embed-sighting/BeamSystem-wkZ6I_8Y.js +0 -1
- package/dist-embed-sighting/ContrailGrowth-CuAzwIoc.js +0 -1
- package/dist-embed-sighting/ContrailSystem-XVzDvxFV.js +0 -1
- package/dist-embed-sighting-editor/BeamSystem-YGYbbAkU.js +0 -1
- package/dist-embed-sighting-editor/ContrailGrowth-CuAzwIoc.js +0 -1
- package/dist-embed-sighting-editor/ContrailSystem-CyYvtUTV.js +0 -1
- package/dist-embed-sighting-editor/LaunchEditor-qoB8RSgQ.js +0 -13
- package/dist-embed-sighting-editor/LaunchEditorMessages_en-BzymQ_VU.js +0 -1
- package/dist-embed-sighting-editor/LaunchEditorMessages_es-DzI2xAcW.js +0 -1
- package/dist-embed-sighting-editor/LaunchEditorMessages_fr-BLOwKfkH.js +0 -1
- package/dist-embed-sighting-editor/LaunchEditorMessages_it-CuovusOf.js +0 -1
- package/dist-embed-sighting-editor/SightingEditorMessages_es-BFzjoSef.js +0 -12
- package/dist-embed-sighting-editor/SightingEditorMessages_it-BtQIjKie.js +0 -12
- package/dist-embed-sighting-editor/trafficRuntime-lbQ2eKSF.js +0 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const e={basisTitle:"Comment cette valeur a été obtenue",basisField:"Base",howField:"Comment",rationaleField:"Justification",basisReset:"Base remise à « déclarée » : la valeur a été retapée (était : {basis}).",lawSources:"Sources : {sources}",extrapolation:"Ces lois sont mesurées sur des observations de nuit : les appliquer à une observation de jour est une extrapolation.",sectionAccountConditions:"Conditions du témoignage",sectionViewing:"Conditions de vue",sectionMoon:"Jauge Lune",sectionErrorParameters:"Paramètres d'erreur de ce témoin",errorModelField:"Modèle d'erreur",delayField:"Délai avant ce récit",delayUnit:"jours",versionField:"Version",wordField:"Mot employé",exposureField:"Exposition",independenceField:"Indépendance",independentYes:"sans avoir parlé aux autres témoins",independentNo:"après avoir parlé aux autres témoins",unknownChoice:"on ne sait pas",darkAdapted:"Adapté à l'obscurité",correctedVision:"Vue corrigée (lunettes, lentilles)",glare:"Lumière vive juste avant",viewingNote:"La vitre ou le pare-brise et les jumelles se règlent dans « Vision » ci-dessus.",moonIntro:"Le témoin montre la pleine Lune comme il a montré l'objet. Le rapport donne son propre facteur de taille angulaire : la seule mesure qui rend la loi générale individuelle. À relever une fois par témoin.",moonField:"Lune telle que montrée",moonHint:"À bout de bras, 1 cm ≈ 1°",moonNone:"Pas encore mesurée : la loi générale s'applique ({law}).",moonFactor:"Facteur ×{k} : il remplace la loi générale dans toutes les tailles angulaires de ce témoin.",moonReal:"Lune réelle · 0,52°",parametersIntro:"Les erreurs d'un même témoin sont liées : il applique le même facteur à toutes ses tailles, le même décalage à toutes ses heures. Calculées, jamais saisies : aucune marge « ± » ne se tape à la main.",showMore:"Afficher",basis:{measured:"◆ mesurée",stated:"déclarée",derived:"déduite",assumed:"supposée"},how:{clock:"lue sur une horloge",anchored:"ancrée à un événement daté",estimated:"estimée","shown-on-the-spot":"montrée sur place","arm-length-gauge":"jauge à bout de bras","recalled-object":"rapportée à un objet connu",instrument:"instrument",landmark:"repère du paysage",occlusion:"occultation","known-size":"taille connue",triangulation:"triangulation"},status:{consolidated:"consolidée",individual:"individuelle",single:"étude unique",argued:"argumentée",contested:"contestée"},laws:{timeClock:"± {minutes} min (heure lue sur une horloge)",timeAnchored:"± {minutes} min (ancrée à un événement daté)",timeEstimated:"± {minutes} min pour 9 témoins sur 10 (estimée)",duration:"{low} à {high} : ×/÷{factor} (log-normale)",elevationOver:"{low} à {high} : hauteur surestimée",measuredInstrument:"± {degrees}° (mesurée)",measuredLandmark:"± {degrees}° (d'après un repère)",headingCross:"{low} à {high} : ± {degrees}°, sens parfois inversé",sizeMoon:"{low} à {high} : facteur ×{factor} de la jauge Lune",sizeShown:"{low} à {high} : montrée sur place, +2 à +17 %",sizeRecalled:"{low} à {high} : rapportée à un objet connu, ~30 % trop grande",sizeArm:"{low} à {high} : surestimée ×{from} à ×{to} à bout de bras",sizeGauge:"{low} à {high} : jauge, ± {percent} %",distanceAnchored:"Ancrée : l'erreur suit celle de ce dont elle est déduite",distanceNotData:"Pas une donnée : faux d'un facteur {factor} et plus sans ancrage"},parameterNames:{clock:"Décalage d'horloge",date:"Décalage de date",heading:"Rotation du cap",elevation:"Compression des hauteurs",size:"Facteur de taille angulaire",duration:"Facteur de durée"},parameterScopes:{clock:"toutes les heures",date:"la date",heading:"tous les caps",elevation:"toutes les hauteurs",size:"toutes les tailles angulaires",duration:"la durée et l'échelle de la timeline"},parameters:{clockClock:"± {minutes} min (horloge)",clockAnchored:"± {minutes} min (ancrée)",clockEstimated:"± {minutes} min (estimée)",dateShift:"±1 jour, mois ou année ; heure d'été ({percent} % des dates)",headingRotation:"± {degrees}°, miroir possible",elevationCompression:"surestimées, jamais sous-estimées",sizeMoon:"×{factor} (jauge Lune)",sizeArm:"×{from} à ×{to} à bout de bras",sizeShown:"+2 à +17 % montrée sur place",durationFactor:"×/÷{factor} (log-normale)"},words:{light:"lumière",object:"objet",craft:"engin",ufo:"ovni",other:"autre"},exposures:{none:"aucune",press:"presse",broadcast:"radio, télévision","other-witnesses":"autres témoins",investigators:"enquêteurs"},models:{consolidated:"Lectures consolidées (UFO@home)",keul:"Keul (tailles montrées sur place)"},candidates:{title:"Explications candidates",verdicts:{consolidated:"Compatible avec des biais consolidés",contested:"Seulement en invoquant des biais contestés",incompatible:"Incompatible même aux bornes"},cost:"coût {x} σ",seeVariant:"Voir cette variante",variantLabel:"Variante : {name}",backToAccount:"Revenir au récit",costNote:"Un coût n'est pas une probabilité : il dit quels biais il faut invoquer, et de combien.",scopeNote:"Matrice de Poher (1977) pour la liste de départ ; la Lune, les planètes, les passages de satellites, les rentrées, les bolides enregistrés et les avions du relevé sont calculés et confrontés au récit.",fields:{time:"Heure",heading:"Azimut",elevation:"Hauteur sur l'horizon",size:"Largeur apparente",duration:"Durée",sweep:"Balayage dans le ciel"},biases:{clock:"décalage d'horloge {x} min",heading:"rotation du cap {x}°",elevation:"hauteur surestimée ×{x}",size:"taille surestimée ×{x}",duration:"durée mal estimée ×{x}",sweep:"balayage mal estimé {x}°"},reasons:{"never-seen":"Jamais visible depuis ce lieu dans la marge de l'heure donnée.",direction:"Trop loin de la direction donnée, même aux bornes des lois.",size:"Taille trop différente, même aux bornes des lois.",motion:"Il ne bouge pas comme le dit le récit, et rien ne fait lire l'un pour l'autre.",growth:"Il ne grossit pas comme le dit le récit, ni ne devient plus brillant."},readingTitle:"Lecture",readings:{grouped:"des lumières lues comme un seul corps","still-seen-moving":"une lumière fixe vue en mouvement (effet autocinétique, nuages qui défilent)","moving-seen-still":"une lumière en mouvement vue immobile (arrivant de face)","brightening-as-approach":"un éclat croissant lu comme un rapprochement"},notAgainst:"Ce n'est pas un argument contre le récit.",noDirection:"Le récit ne situe pas le phénomène dans le ciel : il n'y a rien à confronter.",noSky:"Sans date, heure et lieu, aucun astre ne peut être placé.",bodies:{Moon:"Lune",Venus:"Vénus",Mars:"Mars",Jupiter:"Jupiter",Saturn:"Saturne"},aircraft:"Aéronef {name}",interpretation:"Interprétation : {name}",keepVariant:"Garder cette variante",keptTitle:"Variantes gardées ({n})",seeKept:"Voir",removeVariant:"Retirer",keptRecomputed:"calculée de nouveau : {verdict}, coût {x} σ",keptModel:"modèle : {model}",reentry:"Rentrée {name}",star:"Étoile {name}",fireball:"Bolide {name}",poherLoading:"Chargement de la matrice de Poher…",poherFailed:"La matrice de Poher n'a pas pu être lue : seuls les astres sont proposés.",poherTitle:"D'après la matrice de Poher (1977)",poherIntro:"Les autres phénomènes connus de la matrice, sans trajectoire calculable ici : leur note est le jugement de Poher, à confronter à la main.",poherPossible:"Possibles",poherExcluded:"Exclus ({n})",poherExcludedBy:"exclu par : {list}",poherDoubted:"douteux selon des estimations : {list}",poherScore:"note {x}",poherTag:"Poher : {state}",poherStatePossible:"possible, note {x}",poherStateExcluded:"exclu",answersTitle:"Réponses déduites de l'enregistrement ({n})",firm:"ferme",soft:"estimation, n'exclut rien seule"}},r={color:"Couleur",transparency:"Transparence",halo:"Halo",blur:"Flou",brightness:"Éclat",shapeTitle:"Nom",utcOffset:"Fuseau horaire",cloudBase:"Base des nuages",elevation:"Altitude",heightAboveGround:"Hauteur au-dessus du sol",duration:"Durée",placeName:"Lieu",latitude:"Latitude",longitude:"Longitude",heading:"Orientation",pitch:"Inclinaison",roll:"Roulis",sway:"Bougé au repos",swayTitle:"Combien le corps qui tient l'instrument fait bouger la vue hors de la marche : 1 pour une personne debout, 0 pour un trépied. Vide : 1 (0 si le compte rendu dit l'observateur paralysé)",lightPollution:"Ciel nocturne",lightPollutionTitle:"Le zénith d'une nuit sans Lune en ce lieu, en magnitudes par seconde d'arc carrée, tel qu'un Sky Quality Meter le lit ou que l'atlas mondial de la brillance artificielle du ciel (Falchi et al. 2016, lightpollutionmap.info, « SQM ») le donne. 22 est un ciel naturel ; une banlieue est vers 19, un centre-ville vers 17. Vide : un ciel naturel",observationTime:"Début de l'observation",observationEndTime:"Fin de l'observation",assessmentGroup:"Évaluation",assessmentNames:{coverage:"Infos de l'observateur"},assessmentVerdicts:{"hynek.nl":"NL — lumière nocturne","hynek.dd":"DD — disque diurne","hynek.rv":"RV — radar-visuel","hynek.ce1":"RR1 — rencontre rapprochée","hynek.ce2":"RR2 — avec trace physique","hynek.ce3":"RR3 — avec occupants"},timeQualifierApproximate:"Approximative",timeQualifierUncertain:"Incertaine",timeQualifierBoth:"Incertaine et approximative",timeSeasonSpring:"Printemps",timeSeasonSummer:"Été",timeSeasonAutumn:"Automne",timeSeasonWinter:"Hiver",summaryGroups:{observation:"Observation",location:"Position",temporal:"Moment",weather:"Météo",sound:"Son"},summaryGroup:"Résumé",summaryDescription:"Description",closeDescription:"Fermer la description",observerGroup:"Observateur",observerId:"ID",observerTitle:"Titre",observerLastName:"Nom de famille",observerFirstNames:"Prénoms",sightingId:"ID",tags:"Mots-clés",cloudCover:"Couverture nuageuse",highCloudCover:"Nuages de glace (cirrus)",focalLength:"Focale",fieldOfView:"Champ de vision",aperture:"Diaphragme",exposure:"Temps de pose",focusDistance:"Mise au point à",iceCrystalAlignment:"Alignement des cristaux",rareIceCrystals:"Cristaux rares",cloudDarkness:"Obscurité des nuages",precipitationType:"Précipitations",precipitationNone:"Aucune",precipitationRain:"Pluie",precipitationSnow:"Neige",precipitationHail:"Grêle",precipitationIntensity:"Intensité",windDirection:"Direction du vent",windSpeed:"Force du vent",storm:"Orage",cloudsGroup:"Nuages",precipitationGroup:"Précipitations",windGroup:"Vent",soundKind:"Son",soundNone:"Aucun (silencieux)",soundHum:"Bourdonnement",soundWhistle:"Sifflement",soundRumble:"Grondement",soundCrackle:"Crépitement",soundVolume:"Intensité sonore",soundPitch:"Hauteur",soundSrc:"Enregistrement",instrument:"Observé avec",filter:"Devant lui",filterNone:"rien",filterSolarVisual:"un filtre solaire pour l'œil (lunettes d'éclipse, densité 5)",filterSolarPhoto:"un film solaire pour appareil photo (densité 3,8)",decorAircraft:"Aéronef",decorEntity:"Être",decorAltitude:"Altitude",decorLights:"Feux",decorLightsNone:"aucun",decor:"Décor",decorBuilding:"Bâtiment",decorTree:"Arbre",decorShrub:"Buisson",decorBridge:"Pont",decorWire:"Ligne aérienne",decorCrop:"Rang de culture",decorTerrace:"Restanque (terrasse)",decorMound:"Tas de pierres",decorWall:"Muret de pierres sèches",decorStreetlight:"Lampadaire",decorTrafficLight:"Feu de circulation",decorCrossing:"Passage piéton",decorRoadSign:"Panneau de signalisation",decorVehicle:"Véhicule",decorObserver:"Autre observateur",decorEast:"Distance à l'est",decorNorth:"Distance au nord",decorHeading:"Orientation",decorColor:"Couleur",decorLit:"Allumé",decorTitle:"Nom",milestones:"Moments",milestoneLabel:"Repère",milestoneNote:"Ce qui se passe",addMilestone:"Nommer cet instant",deleteMilestone:"Supprimer le moment",goToMilestone:"Aller à ce moment",decorWidth:"Largeur",decorLength:"Longueur",decorHeight:"Hauteur",decorModel:"Modèle 3D",decorModelAdvanced:"Modèle depuis une adresse",decorModelUrl:"Adresse glTF/GLB",decorModelTitle:"Nom du modèle",decorModelAuthor:"Auteur",decorModelLicense:"Licence",decorModelSource:"Provenance",decorObserverSide:"Emplacement de l'observateur",decorObserverSideNone:"Non présent",decorSideFront:"Avant",decorSideBehind:"Arrière",decorSideLeft:"Gauche",decorSideRight:"Droite",decorSideFrontLeft:"Avant-gauche",decorSideFrontRight:"Avant-droit",decorSideBehindLeft:"Arrière-gauche",decorSideBehindRight:"Arrière-droit"},t={...r,oval:"Ovale",polygon:"Polygone",modelTriangle:"Triangle",modelSaucer:"Soucoupe",modelCigar:"Cigare",modelChevron:"Chevron",modelLight:"Lumière",modelPartDisc:"disque",modelPartDome:"dôme",addVertex:"Ajouter un sommet",deleteVertex:"Supprimer le sommet",notAPolygon:"Sélectionnez une seule forme polygonale",tooFewVertices:"Une forme a besoin d'au moins 3 points",shape:"Forme",apparentWidth:"Largeur apparente",realWidth:"Largeur réelle",distance:"Distance",shapeRotation:"Rotation",shapeRotationTitle:"De combien la forme est tournée sur le dessin, dans le sens horaire, en degrés : ce que règle sa poignée de rotation",sizeLock:"Maintenir",lockNone:"rien",lockApparent:"la largeur apparente",lockReal:"la largeur réelle",lockDistance:"la distance",apparentSize:"{moons}× la Lune",utcOffsetPlaceholder:"d'après la longitude",realSizeBetween:"La scène borne cette largeur : entre {min} et {max} m, d'après ce qu'il croise",realSizeAtLeast:"La scène borne cette largeur : au moins {min} m, d'après ce qu'il passe derrière",realSizeAtMost:"La scène borne cette largeur : au plus {max} m, d'après ce qu'il passe devant",realSizeUnknown:"Rien dans la scène ne borne cette largeur : elle ne fait que découler de la distance",realSizeOutside:" — la largeur ci-dessus en sort",blurBound:"Flou à travers cet objectif : plus près que {max} m",blurBoundNoInstrument:"Le flou à l'œil nu ne borne aucune distance — un œil n'a pas de diaphragme dont sortir",blurBoundNotAtInfinity:"Le flou ne borne une distance que pour une mise au point à l'infini : celle-ci est à {focus} m, qui floute des deux côtés",realSizeContradiction:"Contradiction : les passages déclarés ne peuvent pas être vrais ensemble",realDistanceHere:" — soit ici entre {min} et {max} m",clearDistanceHypothesis:"Retirer l'hypothèse de distance",clearDistanceHypothesisTitle:"Revenir à ce que l'enregistrement établit",depthStated:"Dessiné à {m} m, comme l'enregistrement l'énonce",depthHypothesis:"Dessiné à {m} m : votre hypothèse — ce que le décor en cache est ce qu'une chose à cette distance perdrait",depthDerived:"Dessiné à {m} m, d'après la marche de l'observateur",depthBounded:"Dessiné à {m} m, d'après ce qu'il passe derrière et devant",depthConventional:"Dessiné à {m} m par convention : rien dans l'enregistrement n'établit de distance",addShape:"Ajouter une forme",deleteShape:"Supprimer la forme",play:"Lecture",pause:"Pause",noDuration:"Aucune durée d'observation",previousKeyframe:"Image clé précédente",nextKeyframe:"Image clé suivante",keyframeMark:"Image clé",shapesTrack:"formes",observerTrack:"observateur",weatherTrack:"météo",soundTrack:"son",group:"Grouper",ungroup:"Dégrouper",duplicate:"Dupliquer",bringToFront:"Placer devant",sendToBack:"Placer derrière",contextMenuDelete:"Supprimer",onlyOneShape:"Il n'y a qu'une seule forme",alreadyAtFront:"Cette forme est déjà la plus en avant",alreadyAtBack:"Cette forme est déjà la plus en arrière",needTwoShapesToGroup:"Sélectionnez au moins deux formes pour les grouper",notGrouped:"Cette forme ne fait pas partie d'un groupe",multipleShapesSelected:"Plusieurs formes sélectionnées — sélectionnez-en une seule pour modifier ceci",samplingRate:"Échantillonnage",currentPosition:"Position actuelle",switchToElapsed:"cliquer pour afficher la durée écoulée",switchToClockTime:"cliquer pour afficher l'heure de l'observation",durationPlaceholder:"durée de l'observation",durationImprecise:"Ces dates ne permettent pas de déterminer précisément une durée — saisissez-la manuellement.",export:"Sauver",frozenTitle:"Données figées",frozenHint:"Ce que la scène demanderait sinon à des tiers à chaque lecture (relief, photo du sol, routes, eau, voies ferrées, haute atmosphère), relevé à la sauvegarde et gardé dans des fichiers à côté de l'enregistrement, pour qu'il se rejoue à l'identique sans rien demander à personne.",frozenLive:"Interroger les sources à chaque lecture (ne rien figer)",frozenRelief:"Relief",frozenImagery:"Photo du sol",frozenRoads:"Routes",frozenWater:"Eau",frozenRailways:"Voies ferrées",frozenUpperAir:"Haute atmosphère",frozenMap:"Photo de la carte",fileItemRecording:"Enregistrement",fileItemWeather:"Météo",fileItemPlace:"Lieu",fileItemLightPollution:"Pollution lumineuse",fileItemDecor:"Décor",weatherStatedByObserver:"telle que l'observateur l'a donnée",annexSource:"Fichier",annexStorageInline:"dans l'enregistrement même",annexEditorLabel:"L'annexe en texte JSON",annexUnreadable:"Ce fichier n'est pas une annexe de ce genre : rien n'a changé.",frozenTakenOn:"relevé le {date}",frozenPending:"relevé à la sauvegarde",frozenLiveState:"demandé en direct",frozenRefresh:"Rafraîchir",frozenTaking:"Relevé : {group}… {done}/{of}",frozenFailed:"{group} : la source n'a pas répondu, rien n'a été relevé.",frozenMissing:"{file} illisible : laissé hors de l'archive.",frozenExported:"Sauvé avec {count} annexes ({size}), en une archive à décompresser là où l'enregistrement est publié.",identityHint:"Ne nommez quelqu'un que s'il y a consenti ou a publié lui-même son témoignage ; sinon des initiales suffisent.",identityAsk:"Cet enregistrement nomme ou situe une personne. Vous répondez de ce que vous publiez : ne nommez quelqu'un que s'il y a consenti, ou s'il a publié lui-même son témoignage. Sinon, des initiales suffisent.",identityLastName:"Nom de famille : {value}",identityFirstNames:"Prénom : {value}",identityNameInId:"Nom dans un identifiant : {value}",identityNameInText:"Nom dans le texte : {value}",identityAddress:"Adresse : {value}",identityEmail:"Adresse électronique : {value}",identityPhone:"Numéro de téléphone : {value}",identityInitials:"Remplacer par des initiales",identityKeep:"Sauver quand même",identityBack:"Revenir",importFile:"Charger un fichier d'observation",paramSummaryTitle:"Ce que l'enregistrement indique ({n})",wholeKeyframes:"Chaque image clé en entier",wholeKeyframesHint:"Sinon une image clé ne dit que ce qui a changé depuis la précédente, comme on écrit un enregistrement à la main. Changer ce choix repart d'un historique d'annulation vide.",importUrlPlaceholder:"https://…/sighting.json",inputFileFromFile:"depuis votre disque",inputFileFromUrl:"depuis une adresse",inputFileModeHint:"Cliquer pour le donner autrement : un fichier à vous, ou une adresse",inputFileLoad:"Charger",importError:"Impossible de charger cet enregistrement — vérifiez le fichier ou l'URL et réessayez.",importErrorCors:"Cette adresse répond, mais le navigateur n'a pas le droit de la lire depuis cette page. Le fichier lui-même est bon : c'est son serveur qui doit envoyer l'en-tête « Access-Control-Allow-Origin: * » avec. Si ce serveur n'est pas le vôtre, c'est ce qu'il faut demander à son administrateur.",importErrorMixedContent:"Une page sécurisée ne peut pas charger une adresse commençant par http://. Utilisez https:// si ce serveur le propose.",importErrorUnreachable:"Rien n'a répondu à cette adresse. Vérifiez l'orthographe, et que vous êtes connecté.",importErrorStatus:"Ce serveur a répondu par une erreur ({status}). L'adresse est probablement fausse, ou le fichier a été déplacé.",importErrorMalformed:"Cette adresse a répondu, mais ce qui revient n'est pas un enregistrement.",formatVersionError:"Ce fichier indique la version {found} de son format ; cet UFO@home lit jusqu'à la version {supported}. Ouvrez-le avec un UFO@home plus récent.",record:"Enregistrer",stop:"Arrêter",according:"selon",sourceElevation:"Relief",sourceImagery:"Imagerie",sourceAircraft:"Trafic aérien",sourceFile:"Fichier",sourceKind:"Données",placeNamePlaceholder:"Valensole, France",searchPlace:"Localiser",placeMatch:"Correspondances",placeSearching:"Recherche du lieu…",placeMatchFound:"lieu trouvé",placeMatchesFound:"lieux trouvés",placeNotFound:"Aucun lieu de ce nom",placeSearchFailed:"Recherche de lieu momentanément indisponible",utcOffsetNoZone:"Aucun fuseau n'indique ce décalage ce jour-là",utcOffsetImplausible:"Ce fuseau ne correspond pas à la longitude saisie, dont l'heure solaire est UTC{solar} — la scène et le relevé météo obéissent pourtant à ce qui est déclaré ici. Videz le champ pour le déduire de la longitude.",timeZoneManual:"inconnu",altitudeAboveSeaLevel:"Altitude de l'observateur au-dessus du niveau de la mer — le sol du lieu saisi en fixe le minimum : un observateur dans les Alpes n'est pas à 0 m.",groundAt:"sol à {m} m",headingPlaceholder:"inconnu",edtfInvalid:"Date/heure EDTF invalide (ex. 1965-07-01T05:00, 2025-06?, 2025~).",edtfPlaceholder:"AAAA-MM-JJThh:mm[?~%] ou hh:mm",observationTimeHint:"EDTF — ex. 1965-07-01T05:00, 2025-06? (incertain), 2025~ (approximatif), ou juste 05:00 si la date est inconnue",observationEndTimeHint:"EDTF — ex. 1965-07-01T05:10, 2025-06? (incertain), 2025~ (approximatif), ou juste 05:10 si la date est inconnue",presetsGroupLabel:"Forme de l'ovni",description:"Description",tagsPlaceholder:"séparés par des virgules",weather:"Météo",shapeGroup:"Phénomène",shapesSubgroup:"Formes",bodiesSubgroup:"Corps",launchesSubgroup:"Lancements",sky:"Ciel",dataSources:"Sources des données",beamsSubgroup:"Faisceaux",soundGroup:"Son",close:"Fermer",editorKicker:"Éditeur d'observation",witnessError:e,expandTracks:"Déployer les pistes",collapseTracks:"Replier les pistes",addKeyframeHere:"Ajouter une image clé ici",keyframeHere:"Une image clé est ici : l'éditer la modifie",overlayHorizon:"Horizon · inclinaison {deg}°",overlayFov:"Champ de vision {v}° × {h}°",overlayWind:"Souffle vers {point} · {speed} m/s",sectionIdentity:"Identité",sectionProfile:"Profil",sectionTestimony:"Témoignage",sectionVision:"Vision",sectionPerception:"Perception",sectionCoordinates:"Coordonnées",sectionGaze:"Regard",sectionNightSky:"Ciel nocturne",sectionPeriod:"Période",sectionSurvey:"Décor tiré d'un relevé",sectionHeard:"Ce qui a été entendu",sectionSoundRecording:"Enregistrement",sectionPicture:"Photo",sectionPose:"Pose",sectionAppearance:"Apparence",sectionSize:"Taille et distance",sectionPath:"Trajectoire",moreSettings:"Plus de réglages ({n})",lessSettings:"Moins de réglages",showSettings:"Afficher ({n} réglages)",showSettingsOne:"Afficher (1 réglage)",showSettingsAny:"Afficher",hideSettings:"Masquer",save:"Sauver",stateNew:"Nouvel enregistrement",panelIntroObservation:"Ce qui s'est passé, en quelques lignes, et ce qu'il reste à compléter.",panelIntroObserver:"Qui a vu, et avec quoi. Chaque observateur a son propre point de vue dans la scène.",panelIntroLocation:"D'où l'observateur regardait, et dans quelle direction.",panelIntroTemporal:"Quand cela a commencé, combien de temps cela a duré, et les moments du récit.",panelIntroDecor:"Ce qui entourait l'observateur : véhicules, bâtiments, végétation.",panelIntroWeather:"Le temps qu'il faisait, et ce qui traversait le ciel sans être le phénomène : lancements, faisceaux.",panelIntroShape:"Ce qui a été vu, dessiné dans la scène depuis le point de vue de l'observateur.",panelIntroSound:"Ce qui a été entendu.",panelIntroReference:"Photos et croquis, recalés sur la scène pour la comparer.",panelIntroFile:"Le relevé complet, à sauver ou à recharger.",temporalGroup:"Chronologie",fileGroup:"Fichiers",fileLoading:"Chargement de l'éditeur…",weatherEditedAsk:"Cette édition touche à la météo, une donnée lue dynamiquement depuis {source}. Voulez-vous désactiver sa lecture depuis {source} ?",weatherEditedStop:"Désactiver sa lecture",weatherEditedKeep:"Garder la lecture (annuler mon édition)",fileEditorLabel:"L'enregistrement en texte JSON",fileSearchPhrases:{Find:"Rechercher",Replace:"Remplacer",next:"suivant",previous:"précédent",all:"tout","match case":"casse","by word":"mot entier",regexp:"regexp",replace:"remplacer","replace all":"tout remplacer",close:"fermer","current match":"occurrence courante","on line":"à la ligne","replaced $ matches":"$ occurrences remplacées","replaced match on line $":"occurrence remplacée à la ligne $","Go to line":"Aller à la ligne",go:"aller"},timeQualifierExact:"Exacte",durationPrecise:"précise",durationIso:"imprécise",durationModeTitle:"Dire la durée exactement, ou comme elle a été énoncée : environ, entre deux durées",durationInvalid:"Pas une durée : PT10M, PT1H30M, PT5M/PT10M…",durationHelpTitle:"Ce que le texte accepte (EDTF)",durationHelpLines:`PT45S — 45 secondes
|
|
1
|
+
const e={basisTitle:"Comment cette valeur a été obtenue",basisField:"Base",howField:"Comment",rationaleField:"Justification",basisReset:"Base remise à « déclarée » : la valeur a été retapée (était : {basis}).",lawSources:"Sources : {sources}",extrapolation:"Ces lois sont mesurées sur des observations de nuit : les appliquer à une observation de jour est une extrapolation.",sectionAccountConditions:"Conditions du témoignage",sectionViewing:"Conditions de vue",sectionMoon:"Jauge Lune",sectionErrorParameters:"Paramètres d'erreur de ce témoin",errorModelField:"Modèle d'erreur",delayField:"Délai avant ce récit",delayUnit:"jours",versionField:"Version",wordField:"Mot employé",exposureField:"Exposition",independenceField:"Indépendance",independentYes:"sans avoir parlé aux autres témoins",independentNo:"après avoir parlé aux autres témoins",unknownChoice:"on ne sait pas",darkAdapted:"Adapté à l'obscurité",correctedVision:"Vue corrigée (lunettes, lentilles)",glare:"Lumière vive juste avant",viewingNote:"La vitre ou le pare-brise et les jumelles se règlent dans « Vision » ci-dessus.",moonIntro:"Le témoin montre la pleine Lune comme il a montré l'objet. Le rapport donne son propre facteur de taille angulaire : la seule mesure qui rend la loi générale individuelle. À relever une fois par témoin.",moonField:"Lune telle que montrée",moonHint:"À bout de bras, 1 cm ≈ 1°",moonNone:"Pas encore mesurée : la loi générale s'applique ({law}).",moonFactor:"Facteur ×{k} : il remplace la loi générale dans toutes les tailles angulaires de ce témoin.",moonReal:"Lune réelle · 0,52°",parametersIntro:"Les erreurs d'un même témoin sont liées : il applique le même facteur à toutes ses tailles, le même décalage à toutes ses heures. Calculées, jamais saisies : aucune marge « ± » ne se tape à la main.",showMore:"Afficher",basis:{measured:"◆ mesurée",stated:"déclarée",derived:"déduite",assumed:"supposée"},how:{clock:"lue sur une horloge",anchored:"ancrée à un événement daté",estimated:"estimée","shown-on-the-spot":"montrée sur place","arm-length-gauge":"jauge à bout de bras","recalled-object":"rapportée à un objet connu",instrument:"instrument",landmark:"repère du paysage",occlusion:"occultation","known-size":"taille connue",triangulation:"triangulation"},status:{consolidated:"consolidée",individual:"individuelle",single:"étude unique",argued:"argumentée",contested:"contestée"},laws:{timeClock:"± {minutes} min (heure lue sur une horloge)",timeAnchored:"± {minutes} min (ancrée à un événement daté)",timeEstimated:"± {minutes} min pour 9 témoins sur 10 (estimée)",duration:"{low} à {high} : ×/÷{factor} (log-normale)",elevationOver:"{low} à {high} : hauteur surestimée",measuredInstrument:"± {degrees}° (mesurée)",measuredLandmark:"± {degrees}° (d'après un repère)",headingCross:"{low} à {high} : ± {degrees}°, sens parfois inversé",sizeMoon:"{low} à {high} : facteur ×{factor} de la jauge Lune",sizeShown:"{low} à {high} : montrée sur place, +2 à +17 %",sizeRecalled:"{low} à {high} : rapportée à un objet connu, ~30 % trop grande",sizeArm:"{low} à {high} : surestimée ×{from} à ×{to} à bout de bras",sizeGauge:"{low} à {high} : jauge, ± {percent} %",distanceAnchored:"Ancrée : l'erreur suit celle de ce dont elle est déduite",distanceNotData:"Pas une donnée : faux d'un facteur {factor} et plus sans ancrage"},parameterNames:{clock:"Décalage d'horloge",date:"Décalage de date",heading:"Rotation du cap",elevation:"Compression des hauteurs",size:"Facteur de taille angulaire",duration:"Facteur de durée"},parameterScopes:{clock:"toutes les heures",date:"la date",heading:"tous les caps",elevation:"toutes les hauteurs",size:"toutes les tailles angulaires",duration:"la durée et l'échelle de la timeline"},parameters:{clockClock:"± {minutes} min (horloge)",clockAnchored:"± {minutes} min (ancrée)",clockEstimated:"± {minutes} min (estimée)",dateShift:"±1 jour, mois ou année ; heure d'été ({percent} % des dates)",headingRotation:"± {degrees}°, miroir possible",elevationCompression:"surestimées, jamais sous-estimées",sizeMoon:"×{factor} (jauge Lune)",sizeArm:"×{from} à ×{to} à bout de bras",sizeShown:"+2 à +17 % montrée sur place",durationFactor:"×/÷{factor} (log-normale)"},words:{light:"lumière",object:"objet",craft:"engin",ufo:"ovni",other:"autre"},exposures:{none:"aucune",press:"presse",broadcast:"radio, télévision","other-witnesses":"autres témoins",investigators:"enquêteurs"},models:{consolidated:"Lectures consolidées (UFO@home)",keul:"Keul (tailles montrées sur place)"},candidates:{title:"Explications candidates",verdicts:{consolidated:"Compatible avec des biais consolidés",contested:"Seulement en invoquant des biais contestés",incompatible:"Incompatible même aux bornes"},cost:"coût {x} σ",seeVariant:"Voir cette variante",variantLabel:"Variante : {name}",backToAccount:"Revenir au récit",costNote:"Un coût n'est pas une probabilité : il dit quels biais il faut invoquer, et de combien.",scopeNote:"Matrice de Poher (1977) pour la liste de départ ; la Lune, les planètes, les passages de satellites, les rentrées, les bolides enregistrés et les avions du relevé sont calculés et confrontés au récit.",fields:{time:"Heure",heading:"Azimut",elevation:"Hauteur sur l'horizon",size:"Largeur apparente",duration:"Durée",sweep:"Balayage dans le ciel"},biases:{clock:"décalage d'horloge {x} min",heading:"rotation du cap {x}°",elevation:"hauteur surestimée ×{x}",size:"taille surestimée ×{x}",duration:"durée mal estimée ×{x}",sweep:"balayage mal estimé {x}°"},reasons:{"never-seen":"Jamais visible depuis ce lieu dans la marge de l'heure donnée.",direction:"Trop loin de la direction donnée, même aux bornes des lois.",size:"Taille trop différente, même aux bornes des lois.",motion:"Il ne bouge pas comme le dit le récit, et rien ne fait lire l'un pour l'autre.",growth:"Il ne grossit pas comme le dit le récit, ni ne devient plus brillant."},readingTitle:"Lecture",readings:{grouped:"des lumières lues comme un seul corps","still-seen-moving":"une lumière fixe vue en mouvement (effet autocinétique, nuages qui défilent)","moving-seen-still":"une lumière en mouvement vue immobile (arrivant de face)","brightening-as-approach":"un éclat croissant lu comme un rapprochement"},notAgainst:"Ce n'est pas un argument contre le récit.",noDirection:"Le récit ne situe pas le phénomène dans le ciel : il n'y a rien à confronter.",noSky:"Sans date, heure et lieu, aucun astre ne peut être placé.",bodies:{Moon:"Lune",Venus:"Vénus",Mars:"Mars",Jupiter:"Jupiter",Saturn:"Saturne"},aircraft:"Aéronef {name}",interpretation:"Interprétation : {name}",keepVariant:"Garder cette variante",keptTitle:"Variantes gardées ({n})",seeKept:"Voir",removeVariant:"Retirer",keptRecomputed:"calculée de nouveau : {verdict}, coût {x} σ",keptModel:"modèle : {model}",reentry:"Rentrée {name}",star:"Étoile {name}",fireball:"Bolide {name}",poherLoading:"Chargement de la matrice de Poher…",poherFailed:"La matrice de Poher n'a pas pu être lue : seuls les astres sont proposés.",poherTitle:"D'après la matrice {version}",poherIntro:"Les autres phénomènes connus de la matrice, sans trajectoire calculable ici : leur note est le jugement de Poher, à confronter à la main.",poherIntroRr0:"Les autres phénomènes connus de la matrice, sans trajectoire calculable ici : chaque note est celle de Poher, ou celle de RR0 pour ce que RR0 ajoute, avec sa raison ; à confronter à la main.",poherVersion:"Matrice",poherVersions:{"poher-1977":"de Poher (1977)","rr0-2026":"de Poher étendue par RR0 (2026)"},poherAdded:"ajouté par RR0",poherRr0Reason:"note RR0 : {why}",poherPossible:"Possibles",poherExcluded:"Exclus ({n})",poherExcludedBy:"exclu par : {list}",poherDoubted:"douteux selon des estimations : {list}",poherScore:"note {x}",poherTag:"Poher : {state}",poherStatePossible:"possible, note {x}",poherStateExcluded:"exclu",answersTitle:"Réponses déduites de l'enregistrement ({n})",firm:"ferme",soft:"estimation, n'exclut rien seule"}},r={color:"Couleur",transparency:"Transparence",halo:"Halo",blur:"Flou",brightness:"Éclat",shapeTitle:"Nom",utcOffset:"Fuseau horaire",cloudBase:"Base des nuages",elevation:"Altitude",heightAboveGround:"Hauteur au-dessus du sol",duration:"Durée",placeName:"Lieu",latitude:"Latitude",longitude:"Longitude",heading:"Orientation",pitch:"Inclinaison",roll:"Roulis",sway:"Bougé au repos",swayTitle:"Combien le corps qui tient l'instrument fait bouger la vue hors de la marche : 1 pour une personne debout, 0 pour un trépied. Vide : 1 (0 si le compte rendu dit l'observateur paralysé)",lightPollution:"Ciel nocturne",lightPollutionTitle:"Le zénith d'une nuit sans Lune en ce lieu, en magnitudes par seconde d'arc carrée, tel qu'un Sky Quality Meter le lit ou que l'atlas mondial de la brillance artificielle du ciel (Falchi et al. 2016, lightpollutionmap.info, « SQM ») le donne. 22 est un ciel naturel ; une banlieue est vers 19, un centre-ville vers 17. Vide : un ciel naturel",observationTime:"Début de l'observation",observationEndTime:"Fin de l'observation",assessmentGroup:"Évaluation",assessmentNames:{coverage:"Infos de l'observateur"},assessmentVerdicts:{"hynek.nl":"NL — lumière nocturne","hynek.dd":"DD — disque diurne","hynek.rv":"RV — radar-visuel","hynek.ce1":"RR1 — rencontre rapprochée","hynek.ce2":"RR2 — avec trace physique","hynek.ce3":"RR3 — avec occupants"},timeQualifierApproximate:"Approximative",timeQualifierUncertain:"Incertaine",timeQualifierBoth:"Incertaine et approximative",timeSeasonSpring:"Printemps",timeSeasonSummer:"Été",timeSeasonAutumn:"Automne",timeSeasonWinter:"Hiver",summaryGroups:{observation:"Observation",location:"Position",temporal:"Moment",weather:"Météo",sound:"Son"},summaryGroup:"Résumé",summaryDescription:"Description",closeDescription:"Fermer la description",observerGroup:"Observateur",observerId:"ID",observerTitle:"Titre",observerLastName:"Nom de famille",observerFirstNames:"Prénoms",sightingId:"ID",tags:"Mots-clés",cloudCover:"Couverture nuageuse",highCloudCover:"Nuages de glace (cirrus)",focalLength:"Focale",fieldOfView:"Champ de vision",aperture:"Diaphragme",exposure:"Temps de pose",focusDistance:"Mise au point à",iceCrystalAlignment:"Alignement des cristaux",rareIceCrystals:"Cristaux rares",cloudDarkness:"Obscurité des nuages",precipitationType:"Précipitations",precipitationNone:"Aucune",precipitationRain:"Pluie",precipitationSnow:"Neige",precipitationHail:"Grêle",precipitationIntensity:"Intensité",windDirection:"Direction du vent",windSpeed:"Force du vent",storm:"Orage",cloudsGroup:"Nuages",precipitationGroup:"Précipitations",windGroup:"Vent",soundKind:"Son",soundNone:"Aucun (silencieux)",soundHum:"Bourdonnement",soundWhistle:"Sifflement",soundRumble:"Grondement",soundCrackle:"Crépitement",soundVolume:"Intensité sonore",soundPitch:"Hauteur",soundSrc:"Enregistrement",instrument:"Observé avec",filter:"Devant lui",filterNone:"rien",filterSolarVisual:"un filtre solaire pour l'œil (lunettes d'éclipse, densité 5)",filterSolarPhoto:"un film solaire pour appareil photo (densité 3,8)",decorAircraft:"Aéronef",decorEntity:"Être",decorAltitude:"Altitude",decorLights:"Feux",decorLightsNone:"aucun",decor:"Décor",decorBuilding:"Bâtiment",decorTree:"Arbre",decorShrub:"Buisson",decorBridge:"Pont",decorWire:"Ligne aérienne",decorCrop:"Rang de culture",decorTerrace:"Restanque (terrasse)",decorMound:"Tas de pierres",decorWall:"Muret de pierres sèches",decorStreetlight:"Lampadaire",decorTrafficLight:"Feu de circulation",decorCrossing:"Passage piéton",decorRoadSign:"Panneau de signalisation",decorVehicle:"Véhicule",decorObserver:"Autre observateur",decorEast:"Distance à l'est",decorNorth:"Distance au nord",decorHeading:"Orientation",decorColor:"Couleur",decorLit:"Allumé",decorTitle:"Nom",milestones:"Moments",milestoneLabel:"Repère",milestoneNote:"Ce qui se passe",addMilestone:"Nommer cet instant",deleteMilestone:"Supprimer le moment",goToMilestone:"Aller à ce moment",decorWidth:"Largeur",decorLength:"Longueur",decorHeight:"Hauteur",decorModel:"Modèle 3D",decorModelAdvanced:"Modèle depuis une adresse",decorModelUrl:"Adresse glTF/GLB",decorModelTitle:"Nom du modèle",decorModelAuthor:"Auteur",decorModelLicense:"Licence",decorModelSource:"Provenance",decorObserverSide:"Emplacement de l'observateur",decorObserverSideNone:"Non présent",decorSideFront:"Avant",decorSideBehind:"Arrière",decorSideLeft:"Gauche",decorSideRight:"Droite",decorSideFrontLeft:"Avant-gauche",decorSideFrontRight:"Avant-droit",decorSideBehindLeft:"Arrière-gauche",decorSideBehindRight:"Arrière-droit"},t={...r,oval:"Ovale",polygon:"Polygone",modelTriangle:"Triangle",modelSaucer:"Soucoupe",modelCigar:"Cigare",modelChevron:"Chevron",modelLight:"Lumière",modelPartDisc:"disque",modelPartDome:"dôme",addVertex:"Ajouter un sommet",deleteVertex:"Supprimer le sommet",notAPolygon:"Sélectionnez une seule forme polygonale",tooFewVertices:"Une forme a besoin d'au moins 3 points",shape:"Forme",apparentWidth:"Largeur apparente",realWidth:"Largeur réelle",distance:"Distance",shapeRotation:"Rotation",shapeRotationTitle:"De combien la forme est tournée sur le dessin, dans le sens horaire, en degrés : ce que règle sa poignée de rotation",sizeLock:"Maintenir",lockNone:"rien",lockApparent:"la largeur apparente",lockReal:"la largeur réelle",lockDistance:"la distance",apparentSize:"{moons}× la Lune",utcOffsetPlaceholder:"d'après la longitude",realSizeBetween:"La scène borne cette largeur : entre {min} et {max} m, d'après ce qu'il croise",realSizeAtLeast:"La scène borne cette largeur : au moins {min} m, d'après ce qu'il passe derrière",realSizeAtMost:"La scène borne cette largeur : au plus {max} m, d'après ce qu'il passe devant",realSizeUnknown:"Rien dans la scène ne borne cette largeur : elle ne fait que découler de la distance",realSizeOutside:" — la largeur ci-dessus en sort",blurBound:"Flou à travers cet objectif : plus près que {max} m",blurBoundNoInstrument:"Le flou à l'œil nu ne borne aucune distance — un œil n'a pas de diaphragme dont sortir",blurBoundNotAtInfinity:"Le flou ne borne une distance que pour une mise au point à l'infini : celle-ci est à {focus} m, qui floute des deux côtés",realSizeContradiction:"Contradiction : les passages déclarés ne peuvent pas être vrais ensemble",realDistanceHere:" — soit ici entre {min} et {max} m",clearDistanceHypothesis:"Retirer l'hypothèse de distance",clearDistanceHypothesisTitle:"Revenir à ce que l'enregistrement établit",depthStated:"Dessiné à {m} m, comme l'enregistrement l'énonce",depthHypothesis:"Dessiné à {m} m : votre hypothèse — ce que le décor en cache est ce qu'une chose à cette distance perdrait",depthDerived:"Dessiné à {m} m, d'après la marche de l'observateur",depthBounded:"Dessiné à {m} m, d'après ce qu'il passe derrière et devant",depthConventional:"Dessiné à {m} m par convention : rien dans l'enregistrement n'établit de distance",addShape:"Ajouter une forme",deleteShape:"Supprimer la forme",play:"Lecture",pause:"Pause",noDuration:"Aucune durée d'observation",previousKeyframe:"Image clé précédente",nextKeyframe:"Image clé suivante",keyframeMark:"Image clé",shapesTrack:"formes",observerTrack:"observateur",weatherTrack:"météo",soundTrack:"son",group:"Grouper",ungroup:"Dégrouper",duplicate:"Dupliquer",bringToFront:"Placer devant",sendToBack:"Placer derrière",contextMenuDelete:"Supprimer",onlyOneShape:"Il n'y a qu'une seule forme",alreadyAtFront:"Cette forme est déjà la plus en avant",alreadyAtBack:"Cette forme est déjà la plus en arrière",needTwoShapesToGroup:"Sélectionnez au moins deux formes pour les grouper",notGrouped:"Cette forme ne fait pas partie d'un groupe",multipleShapesSelected:"Plusieurs formes sélectionnées — sélectionnez-en une seule pour modifier ceci",samplingRate:"Échantillonnage",currentPosition:"Position actuelle",switchToElapsed:"cliquer pour afficher la durée écoulée",switchToClockTime:"cliquer pour afficher l'heure de l'observation",durationPlaceholder:"durée de l'observation",durationImprecise:"Ces dates ne permettent pas de déterminer précisément une durée — saisissez-la manuellement.",export:"Sauver",frozenTitle:"Données figées",frozenHint:"Ce que la scène demanderait sinon à des tiers à chaque lecture (relief, photo du sol, routes, eau, voies ferrées, haute atmosphère), relevé à la sauvegarde et gardé dans des fichiers à côté de l'enregistrement, pour qu'il se rejoue à l'identique sans rien demander à personne.",frozenLive:"Interroger les sources à chaque lecture (ne rien figer)",frozenRelief:"Relief",frozenImagery:"Photo du sol",frozenRoads:"Routes",frozenWater:"Eau",frozenRailways:"Voies ferrées",frozenUpperAir:"Haute atmosphère",frozenMap:"Photo de la carte",fileItemRecording:"Enregistrement",fileItemWeather:"Météo",fileItemPlace:"Lieu",fileItemLightPollution:"Pollution lumineuse",fileItemDecor:"Décor",weatherStatedByObserver:"telle que l'observateur l'a donnée",annexSource:"Fichier",annexStorageInline:"dans l'enregistrement même",annexEditorLabel:"L'annexe en texte JSON",annexUnreadable:"Ce fichier n'est pas une annexe de ce genre : rien n'a changé.",frozenTakenOn:"relevé le {date}",frozenPending:"relevé à la sauvegarde",frozenLiveState:"demandé en direct",frozenRefresh:"Rafraîchir",frozenTaking:"Relevé : {group}… {done}/{of}",frozenFailed:"{group} : la source n'a pas répondu, rien n'a été relevé.",frozenMissing:"{file} illisible : laissé hors de l'archive.",frozenExported:"Sauvé avec {count} annexes ({size}), en une archive à décompresser là où l'enregistrement est publié.",identityHint:"Ne nommez quelqu'un que s'il y a consenti ou a publié lui-même son témoignage ; sinon des initiales suffisent.",identityAsk:"Cet enregistrement nomme ou situe une personne. Vous répondez de ce que vous publiez : ne nommez quelqu'un que s'il y a consenti, ou s'il a publié lui-même son témoignage. Sinon, des initiales suffisent.",identityLastName:"Nom de famille : {value}",identityFirstNames:"Prénom : {value}",identityNameInId:"Nom dans un identifiant : {value}",identityNameInText:"Nom dans le texte : {value}",identityAddress:"Adresse : {value}",identityEmail:"Adresse électronique : {value}",identityPhone:"Numéro de téléphone : {value}",identityInitials:"Remplacer par des initiales",identityKeep:"Sauver quand même",identityBack:"Revenir",importFile:"Charger un fichier d'observation",paramSummaryTitle:"Ce que l'enregistrement indique ({n})",wholeKeyframes:"Chaque image clé en entier",wholeKeyframesHint:"Sinon une image clé ne dit que ce qui a changé depuis la précédente, comme on écrit un enregistrement à la main. Changer ce choix repart d'un historique d'annulation vide.",importUrlPlaceholder:"https://…/sighting.json",inputFileFromFile:"depuis votre disque",inputFileFromUrl:"depuis une adresse",inputFileModeHint:"Cliquer pour le donner autrement : un fichier à vous, ou une adresse",inputFileLoad:"Charger",importError:"Impossible de charger cet enregistrement — vérifiez le fichier ou l'URL et réessayez.",importErrorCors:"Cette adresse répond, mais le navigateur n'a pas le droit de la lire depuis cette page. Le fichier lui-même est bon : c'est son serveur qui doit envoyer l'en-tête « Access-Control-Allow-Origin: * » avec. Si ce serveur n'est pas le vôtre, c'est ce qu'il faut demander à son administrateur.",importErrorMixedContent:"Une page sécurisée ne peut pas charger une adresse commençant par http://. Utilisez https:// si ce serveur le propose.",importErrorUnreachable:"Rien n'a répondu à cette adresse. Vérifiez l'orthographe, et que vous êtes connecté.",importErrorStatus:"Ce serveur a répondu par une erreur ({status}). L'adresse est probablement fausse, ou le fichier a été déplacé.",importErrorMalformed:"Cette adresse a répondu, mais ce qui revient n'est pas un enregistrement.",formatVersionError:"Ce fichier indique la version {found} de son format ; cet UFO@home lit jusqu'à la version {supported}. Ouvrez-le avec un UFO@home plus récent.",record:"Enregistrer",stop:"Arrêter",according:"selon",sourceElevation:"Relief",sourceImagery:"Imagerie",sourceAircraft:"Trafic aérien",sourceFile:"Fichier",sourceKind:"Données",placeNamePlaceholder:"Valensole, France",searchPlace:"Localiser",placeMatch:"Correspondances",placeSearching:"Recherche du lieu…",placeMatchFound:"lieu trouvé",placeMatchesFound:"lieux trouvés",placeNotFound:"Aucun lieu de ce nom",placeSearchFailed:"Recherche de lieu momentanément indisponible",utcOffsetNoZone:"Aucun fuseau n'indique ce décalage ce jour-là",utcOffsetImplausible:"Ce fuseau ne correspond pas à la longitude saisie, dont l'heure solaire est UTC{solar} — la scène et le relevé météo obéissent pourtant à ce qui est déclaré ici. Videz le champ pour le déduire de la longitude.",timeZoneManual:"inconnu",altitudeAboveSeaLevel:"Altitude de l'observateur au-dessus du niveau de la mer — le sol du lieu saisi en fixe le minimum : un observateur dans les Alpes n'est pas à 0 m.",groundAt:"sol à {m} m",headingPlaceholder:"inconnu",edtfInvalid:"Date/heure EDTF invalide (ex. 1965-07-01T05:00, 2025-06?, 2025~).",edtfPlaceholder:"AAAA-MM-JJThh:mm[?~%] ou hh:mm",observationTimeHint:"EDTF — ex. 1965-07-01T05:00, 2025-06? (incertain), 2025~ (approximatif), ou juste 05:00 si la date est inconnue",observationEndTimeHint:"EDTF — ex. 1965-07-01T05:10, 2025-06? (incertain), 2025~ (approximatif), ou juste 05:10 si la date est inconnue",presetsGroupLabel:"Forme de l'ovni",description:"Description",tagsPlaceholder:"séparés par des virgules",weather:"Météo",shapeGroup:"Phénomène",shapesSubgroup:"Formes",bodiesSubgroup:"Corps",launchesSubgroup:"Lancements",sky:"Ciel",dataSources:"Sources des données",beamsSubgroup:"Faisceaux",soundGroup:"Son",close:"Fermer",editorKicker:"Éditeur d'observation",witnessError:e,expandTracks:"Déployer les pistes",collapseTracks:"Replier les pistes",addKeyframeHere:"Ajouter une image clé ici",keyframeHere:"Une image clé est ici : l'éditer la modifie",overlayHorizon:"Horizon · inclinaison {deg}°",overlayFov:"Champ de vision {v}° × {h}°",overlayWind:"Souffle vers {point} · {speed} m/s",sectionIdentity:"Identité",sectionProfile:"Profil",sectionTestimony:"Témoignage",sectionVision:"Vision",sectionPerception:"Perception",sectionCoordinates:"Coordonnées",sectionGaze:"Regard",sectionNightSky:"Ciel nocturne",sectionPeriod:"Période",sectionSurvey:"Décor tiré d'un relevé",sectionHeard:"Ce qui a été entendu",sectionSoundRecording:"Enregistrement",sectionPicture:"Photo",sectionPose:"Pose",sectionAppearance:"Apparence",sectionSize:"Taille et distance",sectionPath:"Trajectoire",moreSettings:"Plus de réglages ({n})",lessSettings:"Moins de réglages",showSettings:"Afficher ({n} réglages)",showSettingsOne:"Afficher (1 réglage)",showSettingsAny:"Afficher",hideSettings:"Masquer",save:"Sauver",stateNew:"Nouvel enregistrement",panelIntroObservation:"Ce qui s'est passé, en quelques lignes, et ce qu'il reste à compléter.",panelIntroObserver:"Qui a vu, et avec quoi. Chaque observateur a son propre point de vue dans la scène.",panelIntroLocation:"D'où l'observateur regardait, et dans quelle direction.",panelIntroTemporal:"Quand cela a commencé, combien de temps cela a duré, et les moments du récit.",panelIntroDecor:"Ce qui entourait l'observateur : véhicules, bâtiments, végétation.",panelIntroWeather:"Le temps qu'il faisait, et ce qui traversait le ciel sans être le phénomène : lancements, faisceaux.",panelIntroShape:"Ce qui a été vu, dessiné dans la scène depuis le point de vue de l'observateur.",panelIntroSound:"Ce qui a été entendu.",panelIntroReference:"Photos et croquis, recalés sur la scène pour la comparer.",panelIntroFile:"Le relevé complet, à sauver ou à recharger.",temporalGroup:"Chronologie",fileGroup:"Fichiers",fileLoading:"Chargement de l'éditeur…",weatherEditedAsk:"Cette édition touche à la météo, une donnée lue dynamiquement depuis {source}. Voulez-vous désactiver sa lecture depuis {source} ?",weatherEditedStop:"Désactiver sa lecture",weatherEditedKeep:"Garder la lecture (annuler mon édition)",fileEditorLabel:"L'enregistrement en texte JSON",fileSearchPhrases:{Find:"Rechercher",Replace:"Remplacer",next:"suivant",previous:"précédent",all:"tout","match case":"casse","by word":"mot entier",regexp:"regexp",replace:"remplacer","replace all":"tout remplacer",close:"fermer","current match":"occurrence courante","on line":"à la ligne","replaced $ matches":"$ occurrences remplacées","replaced match on line $":"occurrence remplacée à la ligne $","Go to line":"Aller à la ligne",go:"aller"},timeQualifierExact:"Exacte",durationPrecise:"précise",durationIso:"imprécise",durationModeTitle:"Dire la durée exactement, ou comme elle a été énoncée : environ, entre deux durées",durationInvalid:"Pas une durée : PT10M, PT1H30M, PT5M/PT10M…",durationHelpTitle:"Ce que le texte accepte (EDTF)",durationHelpLines:`PT45S — 45 secondes
|
|
2
2
|
PT10M — 10 minutes
|
|
3
3
|
PT1H30M — 1 heure 30 minutes
|
|
4
4
|
PT5M/PT10M — entre 5 et 10 minutes
|
|
@@ -9,4 +9,4 @@ Finir par ? si incertain, ~ si approximatif, % pour les deux
|
|
|
9
9
|
1965-07-01 — un jour
|
|
10
10
|
1965-07-01T05:00 — un jour et une heure
|
|
11
11
|
05:00 — une heure, date inconnue
|
|
12
|
-
Finir par ? si incertain, ~ si approximatif, % pour les deux`,edtfModeTitle:"Saisir plutôt une date imprécise : une année seule, un mois, une heure sans date",locationGroup:"Lieu",observerTab:"Témoin",observationGroup:"Résumé",weatherWhilePlaying:"Mettez la lecture en pause pour décrire le temps — pendant qu'elle tourne, l'instant où ceci s'écrirait se déplace",weatherInferred:"Source",weatherInferredTitle:"La météo n'est pas un compte rendu : c'est un fait mesurable, relevé pour la date, l'heure et le lieu de l'observation. Décochez pour saisir les conditions rapportées par l'observateur, qui priment alors sur le relevé.",weatherLookingUp:"Recherche du relevé…",weatherNeedsDateAndPlace:"Date complète et lieu requis pour retrouver le relevé",weatherNeedsDate:"Une date complète (année, mois et jour) est requise pour retrouver les relevés météo",weatherNeedsPlace:"Un lieu avec ses coordonnées est requis pour retrouver les relevés météo",weatherNoRecord:"Aucun relevé pour cette date et ce lieu",weatherLookupFailed:"Relevés météo momentanément inaccessibles",lightPollutionLookingUp:"Consultation de l'atlas…",lightPollutionFound:"{artificial} µcd/m² de lumière artificielle,",lightPollutionNatural:"Aucune lumière artificielle ici,",lightPollutionOutside:"Hors de l'atlas (85°N à 60°S),",lightPollutionFailed:"Atlas momentanément inaccessible",lightPollutionTooEarly:"L'atlas décrit {atlasYear} ; le ciel de {year} était plus sombre, à indiquer s'il est connu",instrumentOutOfPeriod:"{name} — hors de son époque",instrumentCategoryEye:"Œil nu",instrumentCategoryCamera:"Appareils photo",instrumentCategoryDslr:"Reflex numériques",instrumentCategoryPhone:"Téléphones",instrumentCategoryBinoculars:"Jumelles",instrumentCategoryTelescope:"Télescopes",instrumentNotYetOnSale:"N'existait pas encore en {year} (en vente à partir de {from})",instrumentNoLongerOnSale:"N'existait plus en {year} (en vente jusqu'en {to})",filterNotForInstrument:"Inutilisable avec cet instrument",unitMillimetres:"mm",unitDegrees:"°",fieldOfViewReadout:"{deg}° de champ",soundSrcPlaceholder:"URL d'un enregistrement réel",referenceGroup:"Photos",reference:"Photo",referenceTitle:"Nom",referenceSrc:"Image",referenceSrcPlaceholder:"https://…/photo.jpg",referenceKind:"Type",referencePhoto:"Photo",referencePanorama:"Panorama (360°)",referenceCredit:"Crédit",referenceCreditUrl:"Lien du crédit",referenceT:"Prise à",referenceDrawing:"Dessin par-dessus",referenceOpacity:"Opacité",referenceHeading:"Cap",referencePitch:"Assiette",referenceRoll:"Roulis",referenceFov:"Champ vertical",referenceUsePose:"Prendre la pose de l'observateur",addReferenceUrl:"Depuis une adresse",addReferenceFile:"Depuis un fichier",deleteReference:"Supprimer la photo",referenceEmbedded:"{kb} ko embarqués dans l'enregistrement — une adresse le garderait léger",referenceUnreachable:"La photo n'a pas pu être chargée : vérifiez l'adresse, et que son site autorise les autres sites à la lire",referenceRegisterHint:"Glissez pour orienter la photo, molette pour son champ ; « Ajouter un repère » pour pointer un détail sur la photo, puis le même dans le rendu",referenceLandmarkPicture:"Repère {n} : cliquez le point sur la photo",referenceLandmarkScene:"Repère {n} : cliquez le même point dans le rendu",referenceLandmarkOffPicture:"Ce clic ne tombe pas sur la photo",referenceNotLoaded:"La photo n'est pas encore arrivée",referenceLandmarksFit:"{n} repères — écart moyen {deg}°",referenceLandmarks:"Repères",addReferenceLandmark:"Ajouter un repère",deleteReferenceLandmark:"Supprimer le repère",referenceLandmarkLabel:"Nom",referenceLandmarkLabelPlaceholder:"Arbre masquant, barrière…",referenceAdoptPose:"Adopter comme pose de l'observateur",referenceAdoptRationale:"Mesuré sur la photo « {title} » : {n} repères recalés, {deg}° d'écart résiduel",referenceStreetSearch:"Photos de rue à proximité",referenceStreetNoPlace:"Donnez d'abord un lieu à l'enregistrement : les photos sont cherchées autour",referenceStreetSearching:"Recherche de photos prises à proximité…",referenceStreetNone:"Aucune photo de rue à moins de {m} m (Panoramax)",referenceStreetFailed:"Panoramax est injoignable",referenceStreetAdd:"Ajouter",traceImport:"Tracés d'enquêteur (KML, KMZ)",trace:"Tracé",deleteTrace:"Supprimer le tracé",traceTitle:"Nom",traceSource:"Source",traceImported:"{n} importé(s) depuis {name}.",traceSkipped:"Écarté : {what}.",traceNone:"Aucune ligne, aucun lieu ni contour dans ce fichier.",traceFailed:"Ce fichier n'a pas pu être lu.",traceKindPoint:"lieu",traceKindLine:"ligne",traceKindPolygon:"contour",referenceStreetItem:"{distance} m au {bearing}°, {date}{panorama}",referenceStreetPanorama:" — 360°",referenceStreetTitle:"Photo de rue à {distance} m au {bearing}°, {date}",skyLine:"Ciel : {parts}",skyStarsEye:"étoiles jusqu'à la magnitude {limit}, ce que l'œil atteignait sous ce ciel",skyStarsDeeper:"étoiles jusqu'à la magnitude {limit} à travers un {device} — {gain} magnitudes au-delà des {eye} qu'atteignaient les yeux de l'observateur",skyStarsShallower:"étoiles jusqu'à la magnitude {limit} à travers un {device} — {gain} magnitudes en deçà des {eye} qu'atteignaient les yeux de l'observateur",skyStarsCatalogue:", dessinées jusqu'à {catalogue}, où s'arrête le catalogue de ce projet",skyStarsNone:"aucune étoile ne se détachait d'un ciel aussi clair",skyDetails:"Voir le détail des relevés",skyDetailsHide:"Masquer le détail des relevés",skyShowerActive:"{name} — radiant à {altitude}° de hauteur, {bearing} — environ {rate}/h sous ce ciel, sur un fond sporadique de {sporadic}/h",skyShowerBelowHorizon:"{name} est actif, mais son radiant est sous l'horizon — il n'a rien pu produire",skyNothingActive:"aucune pluie de météores active à cette date — un fond sporadique d'environ {sporadic}/h",showMeteor:"Montrer un météore",skyComet:"La {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing}, queue longue de {tail}°",skyCometNoTail:"La {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing}",skyCometBelowHorizon:"La {name} était là, magnitude {magnitude}, mais sous l'horizon — personne ici ne l'a vue",skyCometInDaylight:"La {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing} — mais à {elongation}° du Soleil seulement",showComet:"Montrer la comète",skyNova:"La {name}, étoile nouvelle de magnitude {magnitude}, à {altitude}° de hauteur {bearing}",skyNovaBelowHorizon:"La {name} brillait, magnitude {magnitude}, mais sous l'horizon : personne ici ne l'a vue",showNova:"Montrer l'étoile nouvelle",skyEclipsePartial:"Éclipse de Soleil : la Lune cache {percent} % du Soleil à {time}, à {altitude}° de hauteur {bearing}",skyEclipseTotal:"Éclipse totale de Soleil : le Soleil est entièrement caché à partir de {time} pendant {duration}, à {altitude}° de hauteur {bearing}",skySupermoon:"Pleine Lune à {distance} km : {diameter}° de large, {percent} % de plus qu'à sa distance moyenne — une « super-lune », et pas plus grosse à l'horizon qu'au zénith",skyMicromoon:"Pleine Lune à {distance} km : {diameter}° de large, {percent} % de moins qu'à sa distance moyenne — une « micro-lune », et pas plus petite à l'horizon qu'au zénith",skyRedMoon:"La « lune rousse » : la pleine Lune de la lunaison qui suit Pâques, à {altitude}° de hauteur {bearing} — basse, donc rougie par l'air qu'elle traverse, et ni plus grosse ni plus brillante qu'une autre",skySatellitePasses:"{count} satellites ont traversé ce ciel assez brillants pour être vus, le plus brillant {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing} à {time}",skySatellitePassesOne:"un satellite a traversé ce ciel assez brillant pour être vu : {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing} à {time}",skySatelliteTrain:"dont un train de {count} Starlink lancés le {date}",skySatellitePassesNone:"d'après les éléments orbitaux archivés pour cette date, aucun satellite éclairé n'a traversé ce ciel assez brillant pour être vu",skySatelliteElementsGap:"aucun élément orbital archivé près de cette date",skyReentries:"rentrées au registre : {list}",skyReentriesMore:"{count} autres",skyReentrySeen:"{name} est retombé à {time}, vu depuis {place} (à {distance} km)",skyReentryObserved:"{name} est retombé à {time}, vu",skyReentryOffset:", à {minutes} min de l'observation",skyReentryPredicted:"{name} est retombé vers {time} ± {hours} h, on ne sait où",skyReentryDay:"{name} est retombé le {date} (UTC), ni l'heure ni le lieu connus",skyFireballs:"{count} bolides enregistrés par le Global Meteor Network, le plus brillant de magnitude {magnitude} à {time}, à {altitude}° de hauteur {bearing}, à {distance} km ({stations} stations)",skyFireballsOne:"un bolide enregistré par le Global Meteor Network : magnitude {magnitude} à {time}, à {altitude}° de hauteur {bearing}, à {distance} km ({stations} stations)",showFireball:"Montrer le bolide",showSatellite:"Montrer un satellite",skyOpticsPossible:"nuages de glace suffisants, autour {source}, pour {forms}",skyOpticsAlignment:" — tout sauf les halos exige des cristaux tombant à plat, ici supposés alignés à {alignment} %, qu'aucun relevé ne donne",skyOpticsHalo22:"un halo à {angle}°",skyOpticsHalo46:"un halo à {angle}°",skyOpticsParhelia:"des parhélies à {angle}° de part et d'autre",skyOpticsTangentArc:"un arc tangent au sommet",skyOpticsParhelicCircle:"un cercle parhélique blanc faisant le tour du ciel à sa hauteur",skyOpticsCircumzenithal:"un arc circumzénithal à {angle}° de hauteur",skyOpticsCircumhorizontal:"un arc circumhorizontal très au-dessous",skyOpticsPillar:"un pilier dressé au-dessus",skyOpticsNoIce:"aucun nuage de glace : ni halo ni parhélie",skyOpticsHidden:"des nuages de glace en altitude, mais une couche plus basse les cache",skyOpticsSun:"du Soleil",skyOpticsMoon:"de la Lune",skyBowPossible:"pluie et soleil suffisants pour {forms}",skyBowMoon:"pluie sous une Lune éclairée à {lit} %, de quoi former {forms} — un arc-en-ciel lunaire, que l'œil voit blanc",skyGlowBand:"la Voie lactée à {contrast}× le fond du ciel, à {altitude}° de hauteur {bearing}",skyGlowCone:"la lumière zodiacale à {contrast}× le fond du ciel, à {altitude}° de hauteur {bearing}, à {elongation}° du Soleil — une lueur en cône incliné, aux contours flous, disparue en moins d'une heure",skyGlowZodiacalBand:"la bande zodiacale à {contrast}× le fond du ciel, à {altitude}° de hauteur {bearing} — toute l'écliptique faiblement allumée, ce qui n'est pas ce que les gens rapportent",skyGlowMoon:"ni Voie lactée ni lumière zodiacale : une Lune éclairée à {lit} % tenait le ciel à {sky} magnitudes par seconde d'arc, là où il leur en faut 22",skyGlowTwilight:"ni Voie lactée ni lumière zodiacale : le crépuscule tenait encore le ciel à {sky} magnitudes par seconde d'arc, là où il leur en faut 22",skyGlowTowns:"ni Voie lactée ni lumière zodiacale : la lueur des villes tenait le ciel à {sky} magnitudes par seconde d'arc, là où il leur en faut 22",skyGlowNothingUp:"ciel assez noir ({sky} magnitudes par seconde d'arc), mais ni le plan de la Galaxie ni l'écliptique ne s'y tenaient assez haut",skyBowPrimary:"un arc de {radius}° de rayon, dont le sommet montait à {top}°",skyBowSecondary:"un second, plus pâle, à {radius}°, aux couleurs inversées",skyBowSourceTooHigh:"pluie, mais l'astre à {altitude}° de hauteur : aucun arc ne pouvait dépasser l'horizon, ils se tiennent à {radius}° du point opposé",skyBowHidden:"pluie, mais une couche continue entre elle et la lumière : aucun arc",skyBowNoSource:"pluie, et rien d'allumé pour en tirer un arc",skySatellitesLit:"l'ombre de la Terre montait à {height} km au-dessus de l'observateur, l'orbite basse était donc encore éclairée — {count} objets suivis étaient en orbite ce mois-là",skySatellitesLitWith:"l'ombre de la Terre montait à {height} km au-dessus de l'observateur, l'orbite basse était donc encore éclairée — {count} objets suivis étaient en orbite ce mois-là, dont {eras}",skySatellitesShadowed:"l'ombre de la Terre montait à {height} km au-dessus de l'observateur : sur les {count} objets suivis en orbite ce mois-là, rien en orbite basse n'était éclairé",skySatellitesNotYet:"rien n'était encore en orbite",skySatellitesDaylight:"tout ce qui est en orbite était éclairé, comme toujours de jour, et {eras} pouvaient l'emporter même sur ce ciel",skySatellitesDaylightOne:"tout ce qui est en orbite était éclairé, comme toujours de jour, et {eras} pouvait l'emporter même sur ce ciel",skyUnknown:"indéterminable sans date ni lieu",lookAtDecor:"Regarder cet élément",addDecor:"Ajouter",deleteDecor:"Supprimer l'élément de décor",undo:"Annuler",redo:"Rétablir",viewAccount:"Voir le compte rendu",noObserverRecording:"Aucune URL d'enregistrement définie pour cet observateur",masks:"Masque",masksNone:"Aucun phénomène à masquer pour l'instant",masksBodyFully:"masqué par cet objet",masksBodyPartly:"masqué à {share} % par cet objet",masksBodyNot:"non masqué par cet objet",modelPickerTitle:"Choisir un modèle 3D",modelPickerClose:"Fermer",modelPickerChoose:"Choisir un modèle 3D",modelPickerUse:"Utiliser ce modèle",modelPickerIncomplete:"Non dessiné tant que le nom et la licence du modèle ne sont pas donnés",addObserver:"Ajouter un observateur",surveyLabel:"Décor tiré d'un relevé",surveySource:"Décor tiré de",surveyDated:"Relevés du : {dates}.",surveyLaserLabel:"laser",surveyPhotoLabel:"photo aérienne",surveyMapLabel:"carte",surveyLampsLabel:"OpenStreetMap",surveyWarning:"⚠ Ce décor vient de relevés du {survey}, postérieurs à l'observation ({observation}) : ce n'est pas ce qui se tenait là alors. Gardez-le comme repère, ou supprimez-le.",surveyRadius:"Rayon",surveyRadiusTitle:"Jusqu'où autour de l'observateur le relevé est interrogé, en mètres. Un rayon plus large ramène des bâtiments, ponts et lignes plus éloignés ; les arbres viennent du laser, qui n'est interrogé que dans 150 m.",surveySourceTitle:"Le relevé d'où sont tirés, tout seuls, les arbres, bâtiments, ponts et lignes aériennes autour du lieu quand vous donnez un lieu à l'enregistrement : ils sont mis dans la liste, à leur place, leur hauteur et leur largeur mesurées. Les coordonnées du lieu sont envoyées à ce service. Aucun laisse le décor à vous seul. Ce que vous avez placé vous-même n'est jamais touché.",surveySourceNone:"Aucun (tout à la main)",surveyBusy:"Recherche du décor autour de l'observateur…",surveyDone:"D'après {source} : arbres {trees}, bâtiments {buildings}, ponts {bridges}, lignes électriques {lines}. Ce sont ceux du jour du relevé, pas ceux de l'enregistrement : gardez-les, déplacez-les ou supprimez-les.",surveyNone:"Aucun arbre, bâtiment, pont ni ligne électrique trouvé dans un rayon de {radius} m.",surveyKept:"Ce que vous avez placé vous-même reste tel quel.",surveyUnreachable:"Le relevé n'a pas pu être joint. Réessayez plus tard.",surveyFurniturePending:"Éclairage public et feux en attente d'OpenStreetMap…",surveyFurnitureDone:"D'après {source} : lampadaires {lamps}, feux {signals}, passages piétons {crossings}, panneaux {signs}.",surveyFurnitureUnavailable:"Éclairage public et feux non disponibles pour l'instant : OpenStreetMap ne répond pas.",surveyFurnitureRetry:"Réessayer",narrativePlaceholder:"Ce que l'observateur a rapporté, dans ses propres mots",narrativeSource:"Rédigé par",narrativeNeedsSetting:"Renseignez « {setting} » ({source}) pour générer la reconstitution d'après le récit",narrativeNeedsAsk:"Rien à envoyer pour l'instant",narrativeRemember:"Retenir sur cet appareil",narrativeDraft:"Générer la reconstitution",narrativeStop:"Arrêter",narrativeWorking:"Lecture du récit…",narrativeApplied:"{count} champs écrits dans l'éditeur",narrativeUnchanged:"Le récit n'énonce rien que l'enregistrement sache encore porter",narrativeStated:"Ce que l'observateur a dit",narrativeDerived:"Déduit du récit",narrativeAssumed:"Supposé, pour que la reconstitution tourne : à vérifier",narrativeGaps:"Ce que rien n'a pu trancher",narrativeErrorCredential:"Pas de clé, ou une clé refusée : vérifiez-la sur console.anthropic.com",narrativeErrorRateLimited:"Trop de requêtes sur votre compte : patientez un instant et redemandez",narrativeErrorRefused:"Le récit n'a pas reçu de réponse. Le reformuler peut aider, le redemander non",narrativeErrorMalformed:"La réponse n'était pas un brouillon exploitable : cela vaut la peine de redemander",narrativeErrorUnreachable:"Rien n'a répondu : vérifiez la connexion",narrativeErrorRejected:"Refusé : {detail}",observerAge:"Âge alors",observerBirth:"Né le",observerPerception:{"color-vision":"Vision des couleurs","color-vision.hint":"Comment les couleurs apparaissent à qui a des cônes différents (Machado et al. 2009). Ne fait que recolorer : luminosité et résolution inchangées.","color-vision.type":"Type","color-vision.type.normal":"Typique","color-vision.type.protan":"Protan (rouge faible ou aveugle)","color-vision.type.deutan":"Deutan (vert faible ou aveugle)","color-vision.type.tritan":"Tritan (bleu faible ou aveugle)","color-vision.severity":"Sévérité",intoxication:"Alcool","intoxication.hint":"Abaisse la sensibilité au contraste d'environ 0,9 dB à 0,08 % d'alcool dans le sang (une étude contrôlée ; les résultats varient), montré jusqu'à 0,1 % au plus : un taux supérieur est consigné mais montré comme 0,1 %, rien n'ayant été mesuré au-delà. Vision double, champ rétréci et autres drogues ne sont pas modélisés : aucune source ne les chiffre.","intoxication.bloodAlcohol":"Alcoolémie",fatigue:"Fatigue","fatigue.hint":"Énoncée seulement : le manque de sommeil n'a pas été montré comme changeant ce que reçoit un œil sain, l'image est donc inchangée. Il touche l'attention et la mémoire, pas la vue.","fatigue.hoursAwake":"Éveillé depuis"},observerOccupation:"Profession",accountSource:"Récit recueilli",accountUrl:"Source (URL)",accountSourceUnknown:"on ne sait pas",accountSourceOnSite:"enquête sur site",accountSourceInterview:"entretien en personne",accountSourceTelephone:"par téléphone",accountSourceQuestionnaire:"questionnaire",accountSourceLetter:"écrit par l'observateur",accountSourceSocialMedia:"publié en ligne par l'observateur",accountSourcePress:"presse ou radiodiffusion",accountFollowedUp:"Recontacté",accountUnknown:"on ne sait pas",accountYes:"oui",accountNo:"non",questionUnanswered:"Rien dans cet enregistrement ne répond à l'une des questions qu'une reconstitution doit trancher",durationRequired:"L'observation a besoin d'une longueur pour être rejouée — indiquez-la, ou une heure de fin, qui peut être approximative",questionsUnanswered:"{count} des questions auxquelles une reconstitution complète répond restent sans réponse ici",emptyDecor:"Aucun élément de décor",emptyMilestones:"Aucun moment",emptyReferences:"Aucune photo",emptyReferenceLandmarks:"Aucun repère",emptyTraces:"Aucun tracé d'enquêteur",emptyShapes:"Aucune forme",addReference:"Ajouter une photo",principalObserver:"Observateur de ce compte rendu",deleteObserver:"Supprimer l'observateur"};export{t as sightingEditorMessages_fr};
|
|
12
|
+
Finir par ? si incertain, ~ si approximatif, % pour les deux`,edtfModeTitle:"Saisir plutôt une date imprécise : une année seule, un mois, une heure sans date",locationGroup:"Lieu",observerTab:"Témoin",observationGroup:"Résumé",weatherWhilePlaying:"Mettez la lecture en pause pour décrire le temps — pendant qu'elle tourne, l'instant où ceci s'écrirait se déplace",weatherInferred:"Source",weatherInferredTitle:"La météo n'est pas un compte rendu : c'est un fait mesurable, relevé pour la date, l'heure et le lieu de l'observation. Décochez pour saisir les conditions rapportées par l'observateur, qui priment alors sur le relevé.",weatherLookingUp:"Recherche du relevé…",weatherNeedsDateAndPlace:"Date complète et lieu requis pour retrouver le relevé",weatherNeedsDate:"Une date complète (année, mois et jour) est requise pour retrouver les relevés météo",weatherNeedsPlace:"Un lieu avec ses coordonnées est requis pour retrouver les relevés météo",weatherNoRecord:"Aucun relevé pour cette date et ce lieu",weatherLookupFailed:"Relevés météo momentanément inaccessibles",lightPollutionLookingUp:"Consultation de l'atlas…",lightPollutionFound:"{artificial} µcd/m² de lumière artificielle,",lightPollutionNatural:"Aucune lumière artificielle ici,",lightPollutionOutside:"Hors de l'atlas (85°N à 60°S),",lightPollutionFailed:"Atlas momentanément inaccessible",lightPollutionTooEarly:"L'atlas décrit {atlasYear} ; le ciel de {year} était plus sombre, à indiquer s'il est connu",instrumentOutOfPeriod:"{name} — hors de son époque",instrumentCategoryEye:"Œil nu",instrumentCategoryCamera:"Appareils photo",instrumentCategoryDslr:"Reflex numériques",instrumentCategoryPhone:"Téléphones",instrumentCategoryBinoculars:"Jumelles",instrumentCategoryTelescope:"Télescopes",instrumentNotYetOnSale:"N'existait pas encore en {year} (en vente à partir de {from})",instrumentNoLongerOnSale:"N'existait plus en {year} (en vente jusqu'en {to})",filterNotForInstrument:"Inutilisable avec cet instrument",unitMillimetres:"mm",unitDegrees:"°",fieldOfViewReadout:"{deg}° de champ",soundSrcPlaceholder:"URL d'un enregistrement réel",referenceGroup:"Photos",reference:"Photo",referenceTitle:"Nom",referenceSrc:"Image",referenceSrcPlaceholder:"https://…/photo.jpg",referenceKind:"Type",referencePhoto:"Photo",referencePanorama:"Panorama (360°)",referenceCredit:"Crédit",referenceCreditUrl:"Lien du crédit",referenceT:"Prise à",referenceDrawing:"Dessin par-dessus",referenceOpacity:"Opacité",referenceHeading:"Cap",referencePitch:"Assiette",referenceRoll:"Roulis",referenceFov:"Champ vertical",referenceUsePose:"Prendre la pose de l'observateur",addReferenceUrl:"Depuis une adresse",addReferenceFile:"Depuis un fichier",deleteReference:"Supprimer la photo",referenceEmbedded:"{kb} ko embarqués dans l'enregistrement — une adresse le garderait léger",referenceUnreachable:"La photo n'a pas pu être chargée : vérifiez l'adresse, et que son site autorise les autres sites à la lire",referenceRegisterHint:"Glissez pour orienter la photo, molette pour son champ ; « Ajouter un repère » pour pointer un détail sur la photo, puis le même dans le rendu",referenceLandmarkPicture:"Repère {n} : cliquez le point sur la photo",referenceLandmarkScene:"Repère {n} : cliquez le même point dans le rendu",referenceLandmarkOffPicture:"Ce clic ne tombe pas sur la photo",referenceNotLoaded:"La photo n'est pas encore arrivée",referenceLandmarksFit:"{n} repères — écart moyen {deg}°",referenceLandmarks:"Repères",addReferenceLandmark:"Ajouter un repère",deleteReferenceLandmark:"Supprimer le repère",referenceLandmarkLabel:"Nom",referenceLandmarkLabelPlaceholder:"Arbre masquant, barrière…",referenceAdoptPose:"Adopter comme pose de l'observateur",referenceAdoptRationale:"Mesuré sur la photo « {title} » : {n} repères recalés, {deg}° d'écart résiduel",referenceStreetSearch:"Photos de rue à proximité",referenceStreetNoPlace:"Donnez d'abord un lieu à l'enregistrement : les photos sont cherchées autour",referenceStreetSearching:"Recherche de photos prises à proximité…",referenceStreetNone:"Aucune photo de rue à moins de {m} m (Panoramax)",referenceStreetFailed:"Panoramax est injoignable",referenceStreetAdd:"Ajouter",traceImport:"Tracés d'enquêteur (KML, KMZ)",trace:"Tracé",deleteTrace:"Supprimer le tracé",traceTitle:"Nom",traceSource:"Source",traceImported:"{n} importé(s) depuis {name}.",traceSkipped:"Écarté : {what}.",traceNone:"Aucune ligne, aucun lieu ni contour dans ce fichier.",traceFailed:"Ce fichier n'a pas pu être lu.",traceKindPoint:"lieu",traceKindLine:"ligne",traceKindPolygon:"contour",referenceStreetItem:"{distance} m au {bearing}°, {date}{panorama}",referenceStreetPanorama:" — 360°",referenceStreetTitle:"Photo de rue à {distance} m au {bearing}°, {date}",skyLine:"Ciel : {parts}",skyStarsEye:"étoiles jusqu'à la magnitude {limit}, ce que l'œil atteignait sous ce ciel",skyStarsDeeper:"étoiles jusqu'à la magnitude {limit} à travers un {device} — {gain} magnitudes au-delà des {eye} qu'atteignaient les yeux de l'observateur",skyStarsShallower:"étoiles jusqu'à la magnitude {limit} à travers un {device} — {gain} magnitudes en deçà des {eye} qu'atteignaient les yeux de l'observateur",skyStarsCatalogue:", dessinées jusqu'à {catalogue}, où s'arrête le catalogue de ce projet",skyStarsNone:"aucune étoile ne se détachait d'un ciel aussi clair",skyDetails:"Voir le détail des relevés",skyDetailsHide:"Masquer le détail des relevés",skyShowerActive:"{name} — radiant à {altitude}° de hauteur, {bearing} — environ {rate}/h sous ce ciel, sur un fond sporadique de {sporadic}/h",skyShowerBelowHorizon:"{name} est actif, mais son radiant est sous l'horizon — il n'a rien pu produire",skyNothingActive:"aucune pluie de météores active à cette date — un fond sporadique d'environ {sporadic}/h",showMeteor:"Montrer un météore",noMeteor:"Aucun météore visible",noComet:"Aucune comète visible",noNova:"Aucune étoile nouvelle visible",noSatellite:"Aucun satellite visible",noFireball:"Aucun bolide visible",skyComet:"La {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing}, queue longue de {tail}°",skyCometNoTail:"La {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing}",skyCometBelowHorizon:"La {name} était là, magnitude {magnitude}, mais sous l'horizon — personne ici ne l'a vue",skyCometInDaylight:"La {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing} — mais à {elongation}° du Soleil seulement",showComet:"Montrer la comète",skyNova:"La {name}, étoile nouvelle de magnitude {magnitude}, à {altitude}° de hauteur {bearing}",skyNovaBelowHorizon:"La {name} brillait, magnitude {magnitude}, mais sous l'horizon : personne ici ne l'a vue",showNova:"Montrer l'étoile nouvelle",skyEclipsePartial:"Éclipse de Soleil : la Lune cache {percent} % du Soleil à {time}, à {altitude}° de hauteur {bearing}",skyEclipseTotal:"Éclipse totale de Soleil : le Soleil est entièrement caché à partir de {time} pendant {duration}, à {altitude}° de hauteur {bearing}",skySupermoon:"Pleine Lune à {distance} km : {diameter}° de large, {percent} % de plus qu'à sa distance moyenne — une « super-lune », et pas plus grosse à l'horizon qu'au zénith",skyMicromoon:"Pleine Lune à {distance} km : {diameter}° de large, {percent} % de moins qu'à sa distance moyenne — une « micro-lune », et pas plus petite à l'horizon qu'au zénith",skyRedMoon:"La « lune rousse » : la pleine Lune de la lunaison qui suit Pâques, à {altitude}° de hauteur {bearing} — basse, donc rougie par l'air qu'elle traverse, et ni plus grosse ni plus brillante qu'une autre",skySatellitePasses:"{count} satellites ont traversé ce ciel assez brillants pour être vus, le plus brillant {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing} à {time}",skySatellitePassesOne:"un satellite a traversé ce ciel assez brillant pour être vu : {name}, magnitude {magnitude}, à {altitude}° de hauteur {bearing} à {time}",skySatelliteTrain:"dont un train de {count} Starlink lancés le {date}",skySatellitePassesNone:"d'après les éléments orbitaux archivés pour cette date, aucun satellite éclairé n'a traversé ce ciel assez brillant pour être vu",skySatelliteElementsGap:"aucun élément orbital archivé près de cette date",skyReentries:"rentrées au registre : {list}",skyReentriesMore:"{count} autres",skyReentrySeen:"{name} est retombé à {time}, vu depuis {place} (à {distance} km)",skyReentryObserved:"{name} est retombé à {time}, vu",skyReentryOffset:", à {minutes} min de l'observation",skyReentryPredicted:"{name} est retombé vers {time} ± {hours} h, on ne sait où",skyReentryDay:"{name} est retombé le {date} (UTC), ni l'heure ni le lieu connus",skyFireballs:"{count} bolides enregistrés par le Global Meteor Network, le plus brillant de magnitude {magnitude} à {time}, à {altitude}° de hauteur {bearing}, à {distance} km ({stations} stations)",skyFireballsOne:"un bolide enregistré par le Global Meteor Network : magnitude {magnitude} à {time}, à {altitude}° de hauteur {bearing}, à {distance} km ({stations} stations)",showFireball:"Montrer le bolide",showSatellite:"Montrer un satellite",skyOpticsPossible:"nuages de glace suffisants, autour {source}, pour {forms}",skyOpticsAlignment:" — tout sauf les halos exige des cristaux tombant à plat, ici supposés alignés à {alignment} %, qu'aucun relevé ne donne",skyOpticsHalo22:"un halo à {angle}°",skyOpticsHalo46:"un halo à {angle}°",skyOpticsParhelia:"des parhélies à {angle}° de part et d'autre",skyOpticsTangentArc:"un arc tangent au sommet",skyOpticsParhelicCircle:"un cercle parhélique blanc faisant le tour du ciel à sa hauteur",skyOpticsCircumzenithal:"un arc circumzénithal à {angle}° de hauteur",skyOpticsCircumhorizontal:"un arc circumhorizontal très au-dessous",skyOpticsPillar:"un pilier dressé au-dessus",skyOpticsNoIce:"aucun nuage de glace : ni halo ni parhélie",skyOpticsHidden:"des nuages de glace en altitude, mais une couche plus basse les cache",skyOpticsSun:"du Soleil",skyOpticsMoon:"de la Lune",skyBowPossible:"pluie et soleil suffisants pour {forms}",skyBowMoon:"pluie sous une Lune éclairée à {lit} %, de quoi former {forms} — un arc-en-ciel lunaire, que l'œil voit blanc",skyGlowBand:"la Voie lactée à {contrast}× le fond du ciel, à {altitude}° de hauteur {bearing}",skyGlowCone:"la lumière zodiacale à {contrast}× le fond du ciel, à {altitude}° de hauteur {bearing}, à {elongation}° du Soleil — une lueur en cône incliné, aux contours flous, disparue en moins d'une heure",skyGlowZodiacalBand:"la bande zodiacale à {contrast}× le fond du ciel, à {altitude}° de hauteur {bearing} — toute l'écliptique faiblement allumée, ce qui n'est pas ce que les gens rapportent",skyGlowMoon:"ni Voie lactée ni lumière zodiacale : une Lune éclairée à {lit} % tenait le ciel à {sky} magnitudes par seconde d'arc, là où il leur en faut 22",skyGlowTwilight:"ni Voie lactée ni lumière zodiacale : le crépuscule tenait encore le ciel à {sky} magnitudes par seconde d'arc, là où il leur en faut 22",skyGlowTowns:"ni Voie lactée ni lumière zodiacale : la lueur des villes tenait le ciel à {sky} magnitudes par seconde d'arc, là où il leur en faut 22",skyGlowNothingUp:"ciel assez noir ({sky} magnitudes par seconde d'arc), mais ni le plan de la Galaxie ni l'écliptique ne s'y tenaient assez haut",skyBowPrimary:"un arc de {radius}° de rayon, dont le sommet montait à {top}°",skyBowSecondary:"un second, plus pâle, à {radius}°, aux couleurs inversées",skyBowSourceTooHigh:"pluie, mais l'astre à {altitude}° de hauteur : aucun arc ne pouvait dépasser l'horizon, ils se tiennent à {radius}° du point opposé",skyBowHidden:"pluie, mais une couche continue entre elle et la lumière : aucun arc",skyBowNoSource:"pluie, et rien d'allumé pour en tirer un arc",skySatellitesLit:"l'ombre de la Terre montait à {height} km au-dessus de l'observateur, l'orbite basse était donc encore éclairée — {count} objets suivis étaient en orbite ce mois-là",skySatellitesLitWith:"l'ombre de la Terre montait à {height} km au-dessus de l'observateur, l'orbite basse était donc encore éclairée — {count} objets suivis étaient en orbite ce mois-là, dont {eras}",skySatellitesShadowed:"l'ombre de la Terre montait à {height} km au-dessus de l'observateur : sur les {count} objets suivis en orbite ce mois-là, rien en orbite basse n'était éclairé",skySatellitesNotYet:"rien n'était encore en orbite",skySatellitesDaylight:"tout ce qui est en orbite était éclairé, comme toujours de jour, et {eras} pouvaient l'emporter même sur ce ciel",skySatellitesDaylightOne:"tout ce qui est en orbite était éclairé, comme toujours de jour, et {eras} pouvait l'emporter même sur ce ciel",skyUnknown:"indéterminable sans date ni lieu",lookAtDecor:"Regarder cet élément",addDecor:"Ajouter",deleteDecor:"Supprimer l'élément de décor",undo:"Annuler",redo:"Rétablir",viewAccount:"Voir le compte rendu",noObserverRecording:"Aucune URL d'enregistrement définie pour cet observateur",masks:"Masque",masksNone:"Aucun phénomène à masquer pour l'instant",masksBodyFully:"masqué par cet objet",masksBodyPartly:"masqué à {share} % par cet objet",masksBodyNot:"non masqué par cet objet",modelPickerTitle:"Choisir un modèle 3D",modelPickerClose:"Fermer",modelPickerChoose:"Choisir un modèle 3D",modelPickerUse:"Utiliser ce modèle",modelPickerIncomplete:"Non dessiné tant que le nom et la licence du modèle ne sont pas donnés",addObserver:"Ajouter un observateur",surveyLabel:"Décor tiré d'un relevé",surveySource:"Décor tiré de",surveyDated:"Relevés du : {dates}.",surveyLaserLabel:"laser",surveyPhotoLabel:"photo aérienne",surveyMapLabel:"carte",surveyLampsLabel:"OpenStreetMap",surveyWarning:"⚠ Ce décor vient de relevés du {survey}, postérieurs à l'observation ({observation}) : ce n'est pas ce qui se tenait là alors. Gardez-le comme repère, ou supprimez-le.",surveyRadius:"Rayon",surveyRadiusTitle:"Jusqu'où autour de l'observateur le relevé est interrogé, en mètres. Un rayon plus large ramène des bâtiments, ponts et lignes plus éloignés ; les arbres viennent du laser, qui n'est interrogé que dans 150 m.",surveySourceTitle:"Le relevé d'où sont tirés, tout seuls, les arbres, bâtiments, ponts et lignes aériennes autour du lieu quand vous donnez un lieu à l'enregistrement : ils sont mis dans la liste, à leur place, leur hauteur et leur largeur mesurées. Les coordonnées du lieu sont envoyées à ce service. Aucun laisse le décor à vous seul. Ce que vous avez placé vous-même n'est jamais touché.",surveySourceNone:"Aucun (tout à la main)",surveyBusy:"Recherche du décor autour de l'observateur…",surveyDone:"D'après {source} : arbres {trees}, bâtiments {buildings}, ponts {bridges}, lignes électriques {lines}. Ce sont ceux du jour du relevé, pas ceux de l'enregistrement : gardez-les, déplacez-les ou supprimez-les.",surveyNone:"Aucun arbre, bâtiment, pont ni ligne électrique trouvé dans un rayon de {radius} m.",surveyKept:"Ce que vous avez placé vous-même reste tel quel.",surveyUnreachable:"Le relevé n'a pas pu être joint. Réessayez plus tard.",surveyFurniturePending:"Éclairage public et feux en attente d'OpenStreetMap…",surveyFurnitureDone:"D'après {source} : lampadaires {lamps}, feux {signals}, passages piétons {crossings}, panneaux {signs}.",surveyFurnitureUnavailable:"Éclairage public et feux non disponibles pour l'instant : OpenStreetMap ne répond pas.",surveyFurnitureRetry:"Réessayer",narrativePlaceholder:"Ce que l'observateur a rapporté, dans ses propres mots",narrativeSource:"Rédigé par",narrativeNeedsSetting:"Renseignez « {setting} » ({source}) pour générer la reconstitution d'après le récit",narrativeNeedsAsk:"Rien à envoyer pour l'instant",narrativeRemember:"Retenir sur cet appareil",narrativeDraft:"Générer la reconstitution",narrativeStop:"Arrêter",narrativeWorking:"Lecture du récit…",narrativeApplied:"{count} champs écrits dans l'éditeur",narrativeUnchanged:"Le récit n'énonce rien que l'enregistrement sache encore porter",narrativeStated:"Ce que l'observateur a dit",narrativeDerived:"Déduit du récit",narrativeAssumed:"Supposé, pour que la reconstitution tourne : à vérifier",narrativeGaps:"Ce que rien n'a pu trancher",narrativeErrorCredential:"Pas de clé, ou une clé refusée : vérifiez-la sur console.anthropic.com",narrativeErrorRateLimited:"Trop de requêtes sur votre compte : patientez un instant et redemandez",narrativeErrorRefused:"Le récit n'a pas reçu de réponse. Le reformuler peut aider, le redemander non",narrativeErrorMalformed:"La réponse n'était pas un brouillon exploitable : cela vaut la peine de redemander",narrativeErrorUnreachable:"Rien n'a répondu : vérifiez la connexion",narrativeErrorRejected:"Refusé : {detail}",observerAge:"Âge alors",observerBirth:"Né le",observerPerception:{"color-vision":"Vision des couleurs","color-vision.hint":"Comment les couleurs apparaissent à qui a des cônes différents (Machado et al. 2009). Ne fait que recolorer : luminosité et résolution inchangées.","color-vision.type":"Type","color-vision.type.normal":"Typique","color-vision.type.protan":"Protan (rouge faible ou aveugle)","color-vision.type.deutan":"Deutan (vert faible ou aveugle)","color-vision.type.tritan":"Tritan (bleu faible ou aveugle)","color-vision.severity":"Sévérité",intoxication:"Alcool","intoxication.hint":"Abaisse la sensibilité au contraste d'environ 0,9 dB à 0,08 % d'alcool dans le sang (une étude contrôlée ; les résultats varient), montré jusqu'à 0,1 % au plus : un taux supérieur est consigné mais montré comme 0,1 %, rien n'ayant été mesuré au-delà. Vision double, champ rétréci et autres drogues ne sont pas modélisés : aucune source ne les chiffre.","intoxication.bloodAlcohol":"Alcoolémie",fatigue:"Fatigue","fatigue.hint":"Énoncée seulement : le manque de sommeil n'a pas été montré comme changeant ce que reçoit un œil sain, l'image est donc inchangée. Il touche l'attention et la mémoire, pas la vue.","fatigue.hoursAwake":"Éveillé depuis"},observerOccupation:"Profession",accountSource:"Récit recueilli",accountUrl:"Source (URL)",accountSourceUnknown:"on ne sait pas",accountSourceOnSite:"enquête sur site",accountSourceInterview:"entretien en personne",accountSourceTelephone:"par téléphone",accountSourceQuestionnaire:"questionnaire",accountSourceLetter:"écrit par l'observateur",accountSourceSocialMedia:"publié en ligne par l'observateur",accountSourcePress:"presse ou radiodiffusion",accountFollowedUp:"Recontacté",accountUnknown:"on ne sait pas",accountYes:"oui",accountNo:"non",questionUnanswered:"Rien dans cet enregistrement ne répond à l'une des questions qu'une reconstitution doit trancher",durationRequired:"L'observation a besoin d'une longueur pour être rejouée — indiquez-la, ou une heure de fin, qui peut être approximative",questionsUnanswered:"{count} des questions auxquelles une reconstitution complète répond restent sans réponse ici",emptyDecor:"Aucun élément de décor",emptyMilestones:"Aucun moment",emptyReferences:"Aucune photo",emptyReferenceLandmarks:"Aucun repère",emptyTraces:"Aucun tracé d'enquêteur",emptyShapes:"Aucune forme",addReference:"Ajouter une photo",principalObserver:"Observateur de ce compte rendu",deleteObserver:"Supprimer l'observateur"};export{t as sightingEditorMessages_fr};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
const e={basisTitle:"Come è stato ottenuto questo valore",basisField:"Base",howField:"Come",rationaleField:"Giustificazione",basisReset:"Base riportata a «dichiarata»: il valore è stato riscritto (era: {basis}).",lawSources:"Fonti: {sources}",extrapolation:"Queste leggi sono misurate su osservazioni notturne: applicarle a un'osservazione diurna è un'estrapolazione.",sectionAccountConditions:"Condizioni della testimonianza",sectionViewing:"Condizioni di visione",sectionMoon:"Calibro Luna",sectionErrorParameters:"Parametri d'errore di questo testimone",errorModelField:"Modello d'errore",delayField:"Ritardo prima di questo racconto",delayUnit:"giorni",versionField:"Versione",wordField:"Parola usata",exposureField:"Esposizione",independenceField:"Indipendenza",independentYes:"senza aver parlato con gli altri testimoni",independentNo:"dopo aver parlato con gli altri testimoni",unknownChoice:"non si sa",darkAdapted:"Adattato al buio",correctedVision:"Vista corretta (occhiali, lenti)",glare:"Luce intensa poco prima",viewingNote:"Il vetro o il parabrezza e il binocolo si impostano in «Visione» qui sopra.",moonIntro:"Il testimone mostra la Luna piena come ha mostrato l'oggetto. Il rapporto dà il suo fattore di dimensione angolare: l'unica misura che rende individuale la legge generale. Da rilevare una volta per testimone.",moonField:"Luna come mostrata",moonHint:"A braccio teso, 1 cm ≈ 1°",moonNone:"Non ancora misurata: si applica la legge generale ({law}).",moonFactor:"Fattore ×{k}: sostituisce la legge generale in tutte le dimensioni angolari di questo testimone.",moonReal:"Luna reale · 0,52°",parametersIntro:"Gli errori di uno stesso testimone sono legati: lo stesso fattore su tutte le dimensioni, lo stesso scarto su tutte le ore. Calcolati, mai scritti: nessun margine «±» si inserisce a mano.",showMore:"Mostra",basis:{measured:"◆ misurata",stated:"dichiarata",derived:"dedotta",assumed:"supposta"},how:{clock:"letta su un orologio",anchored:"ancorata a un evento datato",estimated:"stimata","shown-on-the-spot":"mostrata sul posto","arm-length-gauge":"calibro a braccio teso","recalled-object":"riferita a un oggetto noto",instrument:"strumento",landmark:"riferimento del paesaggio",occlusion:"occultazione","known-size":"dimensione nota",triangulation:"triangolazione"},status:{consolidated:"consolidata",individual:"individuale",single:"studio unico",argued:"argomentata",contested:"contestata"},laws:{timeClock:"± {minutes} min (letta su un orologio)",timeAnchored:"± {minutes} min (ancorata a un evento datato)",timeEstimated:"± {minutes} min per 9 testimoni su 10 (stimata)",duration:"da {low} a {high}: ×/÷{factor} (log-normale)",elevationOver:"da {low} a {high}: altezza sovrastimata",measuredInstrument:"± {degrees}° (misurata)",measuredLandmark:"± {degrees}° (da un riferimento)",headingCross:"da {low} a {high}: ± {degrees}°, verso talvolta invertito",sizeMoon:"da {low} a {high}: fattore ×{factor} del calibro Luna",sizeShown:"da {low} a {high}: mostrata sul posto, da +2 a +17 %",sizeRecalled:"da {low} a {high}: riferita a un oggetto noto, ~30 % troppo grande",sizeArm:"da {low} a {high}: sovrastimata da ×{from} a ×{to} a braccio teso",sizeGauge:"da {low} a {high}: calibro, ± {percent} %",distanceAnchored:"Ancorata: il suo errore segue quello di ciò da cui è dedotta",distanceNotData:"Non è un dato: sbagliata di un fattore {factor} o più senza ancoraggio"},parameterNames:{clock:"Scarto dell'orologio",date:"Scarto di data",heading:"Rotazione della direzione",elevation:"Compressione delle altezze",size:"Fattore di dimensione angolare",duration:"Fattore di durata"},parameterScopes:{clock:"tutte le ore",date:"la data",heading:"tutte le direzioni",elevation:"tutte le altezze",size:"tutte le dimensioni angolari",duration:"la durata e la scala della timeline"},parameters:{clockClock:"± {minutes} min (orologio)",clockAnchored:"± {minutes} min (ancorata)",clockEstimated:"± {minutes} min (stimata)",dateShift:"±1 giorno, mese o anno; ora legale ({percent} % delle date)",headingRotation:"± {degrees}°, specchio possibile",elevationCompression:"sovrastimate, mai sottostimate",sizeMoon:"×{factor} (calibro Luna)",sizeArm:"da ×{from} a ×{to} a braccio teso",sizeShown:"da +2 a +17 % mostrata sul posto",durationFactor:"×/÷{factor} (log-normale)"},words:{light:"luce",object:"oggetto",craft:"velivolo",ufo:"ufo",other:"altro"},exposures:{none:"nessuna",press:"stampa",broadcast:"radio, televisione","other-witnesses":"altri testimoni",investigators:"investigatori"},models:{consolidated:"Letture consolidate (UFO@home)",keul:"Keul (dimensioni mostrate sul posto)"},candidates:{title:"Spiegazioni candidate",verdicts:{consolidated:"Compatibile con distorsioni consolidate",contested:"Solo invocando distorsioni contestate",incompatible:"Incompatibile anche ai limiti"},cost:"costo {x} σ",seeVariant:"Vedi questa variante",variantLabel:"Variante: {name}",backToAccount:"Torna al racconto",costNote:"Un costo non è una probabilità: dice quali distorsioni bisogna invocare, e di quanto.",scopeNote:"Matrice di Poher (1977) per la lista di partenza; la Luna, i pianeti, i passaggi di satelliti, i rientri, i bolidi registrati e gli aerei del tracciato sono calcolati e confrontati con il racconto.",fields:{time:"Ora",heading:"Azimut",elevation:"Altezza sull'orizzonte",size:"Larghezza apparente",duration:"Durata",sweep:"Percorso nel cielo"},biases:{clock:"scarto dell'orologio {x} min",heading:"rotazione della direzione {x}°",elevation:"altezza sovrastimata ×{x}",size:"dimensione sovrastimata ×{x}",duration:"durata stimata male ×{x}",sweep:"percorso stimato male {x}°"},reasons:{"never-seen":"Mai visibile da questo luogo nel margine dell'ora data.",direction:"Troppo lontano dalla direzione data, anche ai limiti delle leggi.",size:"Dimensione troppo diversa, anche ai limiti delle leggi.",motion:"Non si muove come dice il resoconto, e nulla fa leggere l'uno per l'altro.",growth:"Non cresce come dice il resoconto, né diventa più luminoso."},readingTitle:"Lettura",readings:{grouped:"luci lette come un solo corpo","still-seen-moving":"una luce ferma vista muoversi (effetto autocinetico, nuvole che scorrono)","moving-seen-still":"una luce in moto vista immobile (in arrivo di fronte)","brightening-as-approach":"una luminosità crescente letta come un avvicinamento"},notAgainst:"Non è un argomento contro il racconto.",noDirection:"Il racconto non colloca il fenomeno nel cielo: non c'è nulla da confrontare.",noSky:"Senza data, ora e luogo, nessun astro può essere collocato.",bodies:{Moon:"Luna",Venus:"Venere",Mars:"Marte",Jupiter:"Giove",Saturn:"Saturno"},aircraft:"Aeromobile {name}",interpretation:"Interpretazione: {name}",keepVariant:"Conserva questa variante",keptTitle:"Varianti conservate ({n})",seeKept:"Vedi",removeVariant:"Rimuovi",keptRecomputed:"ricalcolata: {verdict}, costo {x} σ",keptModel:"modello: {model}",reentry:"Rientro {name}",star:"Stella {name}",fireball:"Bolide {name}",poherLoading:"Caricamento della matrice di Poher…",poherFailed:"Non è stato possibile leggere la matrice di Poher: sono proposti solo gli astri.",poherTitle:"Secondo la matrice {version}",poherIntro:"Gli altri fenomeni noti della matrice, senza traiettoria calcolata qui: il loro punteggio è il giudizio di Poher, da confrontare a mano.",poherIntroRr0:"Gli altri fenomeni noti della matrice, senza traiettoria calcolata qui: ogni punteggio è quello di Poher, o quello di RR0 per ciò che RR0 aggiunge, con la sua ragione; da confrontare a mano.",poherVersion:"Matrice",poherVersions:{"poher-1977":"di Poher (1977)","rr0-2026":"di Poher estesa da RR0 (2026)"},poherAdded:"aggiunto da RR0",poherRr0Reason:"punteggio di RR0: {why}",poherPossible:"Possibili",poherExcluded:"Esclusi ({n})",poherExcludedBy:"escluso da: {list}",poherDoubted:"dubbio secondo stime: {list}",poherScore:"punteggio {x}",poherTag:"Poher: {state}",poherStatePossible:"possibile, punteggio {x}",poherStateExcluded:"escluso",answersTitle:"Risposte dedotte dalla registrazione ({n})",firm:"ferma",soft:"stima, da sola non esclude nulla"}},o={color:"Colore",transparency:"Trasparenza",halo:"Alone",blur:"Sfocatura",brightness:"Brillantezza",shapeTitle:"Nome",utcOffset:"Fuso orario",cloudBase:"Base delle nuvole",elevation:"Altitudine",heightAboveGround:"Altezza dal suolo",duration:"Durata",placeName:"Luogo",latitude:"Latitudine",longitude:"Longitudine",heading:"Orientamento",pitch:"Inclinazione",roll:"Rollio",sway:"Oscillazione a riposo",swayTitle:"Quanto il corpo che regge lo strumento muove la vista quando non cammina: 1 per una persona in piedi, 0 per un treppiede. Vuoto: 1 (0 se il resoconto dice che l'osservatore era paralizzato)",lightPollution:"Cielo notturno",lightPollutionTitle:"Lo zenit di una notte senza Luna in questo luogo, in magnitudini per secondo d'arco quadrato, come lo legge uno Sky Quality Meter o lo dà l'atlante mondiale della brillanza artificiale del cielo (Falchi et al. 2016, lightpollutionmap.info, «SQM»). 22 è un cielo naturale; una periferia è intorno a 19, un centro città a 17. Vuoto: un cielo naturale",observationTime:"Inizio dell'osservazione",observationEndTime:"Fine dell'osservazione",assessmentGroup:"Valutazione",assessmentNames:{coverage:"Dati dell'osservatore"},assessmentVerdicts:{"hynek.nl":"NL — luce notturna","hynek.dd":"DD — disco diurno","hynek.rv":"RV — radar-visivo","hynek.ce1":"IR1 — incontro ravvicinato","hynek.ce2":"IR2 — con traccia fisica","hynek.ce3":"IR3 — con entità"},timeQualifierApproximate:"Approssimativa",timeQualifierUncertain:"Incerta",timeQualifierBoth:"Incerta e approssimativa",timeSeasonSpring:"Primavera",timeSeasonSummer:"Estate",timeSeasonAutumn:"Autunno",timeSeasonWinter:"Inverno",summaryGroups:{observation:"Osservazione",location:"Posizione",temporal:"Tempo",weather:"Meteo",sound:"Suono"},summaryGroup:"Riepilogo",summaryDescription:"Descrizione",closeDescription:"Chiudi la descrizione",observerGroup:"Osservatore",observerId:"ID",observerTitle:"Titolo",observerLastName:"Cognome",observerFirstNames:"Nomi",sightingId:"ID",tags:"Etichette",cloudCover:"Copertura nuvolosa",highCloudCover:"Nubi di ghiaccio (cirri)",focalLength:"Lunghezza focale",fieldOfView:"Campo visivo",aperture:"Apertura",exposure:"Esposizione",focusDistance:"Messa a fuoco a",iceCrystalAlignment:"Allineamento dei cristalli",rareIceCrystals:"Cristalli rari",cloudDarkness:"Oscurità delle nuvole",precipitationType:"Precipitazioni",precipitationNone:"Nessuna",precipitationRain:"Pioggia",precipitationSnow:"Neve",precipitationHail:"Grandine",precipitationIntensity:"Intensità",windDirection:"Direzione del vento",windSpeed:"Velocità del vento",storm:"Temporale",cloudsGroup:"Nuvole",precipitationGroup:"Precipitazioni",windGroup:"Vento",soundKind:"Suono",soundNone:"Nessuno (silenzioso)",soundHum:"Ronzio",soundWhistle:"Fischio",soundRumble:"Rombo",soundCrackle:"Crepitio",soundVolume:"Volume",soundPitch:"Tono",soundSrc:"Registrazione",instrument:"Osservato con",filter:"Davanti",filterNone:"niente",filterSolarVisual:"un filtro solare per l'occhio (occhiali da eclissi, densità 5)",filterSolarPhoto:"una pellicola solare per fotocamera (densità 3,8)",decorAircraft:"Aeromobile",decorEntity:"Essere",decorAltitude:"Altitudine",decorLights:"Luci",decorLightsNone:"nessuna",decor:"Ambiente",decorBuilding:"Edificio",decorTree:"Albero",decorShrub:"Cespuglio",decorBridge:"Ponte",decorWire:"Linea aerea",decorCrop:"Filare di coltura",decorTerrace:"Terrazzamento",decorMound:"Mucchio di pietre",decorWall:"Muretto a secco",decorStreetlight:"Lampione",decorTrafficLight:"Semaforo",decorCrossing:"Attraversamento pedonale",decorRoadSign:"Segnale stradale",decorVehicle:"Veicolo",decorObserver:"Altro osservatore",decorEast:"Distanza a est",decorNorth:"Distanza a nord",decorHeading:"Orientamento",decorColor:"Colore",decorLit:"Acceso",decorTitle:"Nome",milestones:"Momenti",milestoneLabel:"Etichetta",milestoneNote:"Cosa succede",addMilestone:"Dai un nome a questo momento",deleteMilestone:"Elimina momento",goToMilestone:"Vai a questo momento",decorWidth:"Larghezza",decorLength:"Lunghezza",decorHeight:"Altezza",decorModel:"Modello 3D",decorModelAdvanced:"Modello da un indirizzo",decorModelUrl:"Indirizzo glTF/GLB",decorModelTitle:"Nome del modello",decorModelAuthor:"Autore",decorModelLicense:"Licenza",decorModelSource:"Provenienza",decorObserverSide:"Posizione dell'osservatore",decorObserverSideNone:"Non presente",decorSideFront:"Davanti",decorSideBehind:"Dietro",decorSideLeft:"Sinistra",decorSideRight:"Destra",decorSideFrontLeft:"Davanti a sinistra",decorSideFrontRight:"Davanti a destra",decorSideBehindLeft:"Dietro a sinistra",decorSideBehindRight:"Dietro a destra"},a={...o,oval:"Ovale",polygon:"Poligono",modelTriangle:"Triangolo",modelSaucer:"Disco volante",modelCigar:"Sigaro",modelChevron:"Chevron",modelLight:"Luce",modelPartDisc:"disco",modelPartDome:"cupola",addVertex:"Aggiungi vertice",deleteVertex:"Elimina vertice",notAPolygon:"Seleziona una sola forma poligonale",tooFewVertices:"Una forma ha bisogno di almeno 3 punti",shape:"Forma",apparentWidth:"Larghezza apparente",realWidth:"Larghezza reale",distance:"Distanza",shapeRotation:"Rotazione",shapeRotationTitle:"Di quanto la forma è ruotata nel disegno, in senso orario, in gradi: ciò che regola la sua maniglia di rotazione",sizeLock:"Mantieni",lockNone:"niente",lockApparent:"la larghezza apparente",lockReal:"la larghezza reale",lockDistance:"la distanza",apparentSize:"{moons}× la Luna",utcOffsetPlaceholder:"dalla longitudine",realSizeBetween:"La scena delimita quella larghezza: tra {min} e {max} m, in base a ciò che attraversa",realSizeAtLeast:"La scena delimita quella larghezza: almeno {min} m, in base a ciò dietro cui passa",realSizeAtMost:"La scena delimita quella larghezza: al massimo {max} m, in base a ciò davanti a cui passa",realSizeUnknown:"Nulla nella scena delimita quella larghezza: è solo ciò che la distanza implica",realSizeOutside:" — la larghezza qui sopra ne è fuori",blurBound:"Sfocato attraverso questo obiettivo: più vicino di {max} m",blurBoundNoInstrument:"La sfocatura a occhio nudo non delimita alcuna distanza — un occhio non ha un diaframma con cui andare fuori fuoco",blurBoundNotAtInfinity:"La sfocatura delimita una distanza solo per un obiettivo messo a fuoco all'infinito: questo è a fuoco a {focus} m, il che sfoca da entrambi i lati",realSizeContradiction:"Contraddizione: gli attraversamenti dichiarati non possono essere tutti veri",realDistanceHere:" — cioè qui tra {min} e {max} m",clearDistanceHypothesis:"Ritira l'ipotesi di distanza",clearDistanceHypothesisTitle:"Torna a ciò che la registrazione stabilisce",depthStated:"Disegnato a {m} m, come dichiara la registrazione",depthHypothesis:"Disegnato a {m} m: la tua ipotesi — ciò che la scenografia ne nasconde è ciò che perderebbe una cosa così lontana",depthDerived:"Disegnato a {m} m, in base alla camminata stessa dell'osservatore",depthBounded:"Disegnato a {m} m, in base a ciò dietro e davanti a cui passa",depthConventional:"Disegnato a {m} m per convenzione: nulla nella registrazione stabilisce una distanza",addShape:"Aggiungi forma",deleteShape:"Elimina forma",play:"Riproduci",pause:"Pausa",noDuration:"Nessuna durata di osservazione",previousKeyframe:"Fotogramma chiave precedente",nextKeyframe:"Fotogramma chiave successivo",keyframeMark:"Fotogramma chiave",shapesTrack:"forme",observerTrack:"osservatore",weatherTrack:"meteo",soundTrack:"suono",group:"Raggruppa",ungroup:"Separa",duplicate:"Duplica",bringToFront:"Porta in primo piano",sendToBack:"Porta in fondo",contextMenuDelete:"Elimina",onlyOneShape:"C'è una sola forma",alreadyAtFront:"Questa forma è già in primo piano",alreadyAtBack:"Questa forma è già in fondo",needTwoShapesToGroup:"Seleziona almeno due forme per raggrupparle",notGrouped:"Questa forma non fa parte di un gruppo",multipleShapesSelected:"Più forme selezionate — selezionane una sola per modificare questo",samplingRate:"Frequenza di campionamento",currentPosition:"Posizione attuale",switchToElapsed:"clicca per mostrare il tempo trascorso",switchToClockTime:"clicca per mostrare l'ora del giorno",durationPlaceholder:"durata dell'osservazione",durationImprecise:"Queste date non determinano con sufficiente precisione una durata — inseriscila manualmente.",export:"Salva",frozenTitle:"Dati congelati",frozenHint:"Ciò che la scena chiederebbe altrimenti a terzi a ogni riproduzione (rilievo, foto del suolo, strade, acqua, ferrovie, alta atmosfera), rilevato al salvataggio e conservato in file accanto alla registrazione, perché si riproduca uguale senza chiedere nulla a nessuno.",frozenLive:"Interrogare le fonti a ogni riproduzione (non congelare nulla)",frozenRelief:"Rilievo",frozenImagery:"Foto del suolo",frozenRoads:"Strade",frozenWater:"Acqua",frozenRailways:"Ferrovie",frozenUpperAir:"Alta atmosfera",frozenMap:"Foto della mappa",fileItemRecording:"Registrazione",fileItemWeather:"Meteo",fileItemPlace:"Luogo",fileItemLightPollution:"Inquinamento luminoso",fileItemDecor:"Scenografia",weatherStatedByObserver:"come l'ha data l'osservatore",annexSource:"File",annexStorageInline:"dentro la registrazione stessa",annexEditorLabel:"L'allegato come testo JSON",annexUnreadable:"Questo file non è un allegato di questo tipo: non è cambiato nulla.",frozenTakenOn:"rilevato il {date}",frozenPending:"rilevato al salvataggio",frozenLiveState:"chiesto in diretta",frozenRefresh:"Aggiorna",frozenTaking:"Rilevamento: {group}… {done}/{of}",frozenFailed:"{group}: la fonte non ha risposto, nulla è stato rilevato.",frozenMissing:"{file} illeggibile: lasciato fuori dall'archivio.",frozenExported:"Salvato con {count} allegati ({size}), in un archivio da decomprimere dove la registrazione è pubblicata.",identityHint:"Nomina qualcuno solo se vi ha acconsentito o ha pubblicato lui stesso la propria testimonianza; altrimenti bastano le iniziali.",identityAsk:"Questa registrazione nomina o colloca una persona. Rispondi di ciò che pubblichi: nomina qualcuno solo se vi ha acconsentito, o se ha pubblicato lui stesso la propria testimonianza. Altrimenti bastano le iniziali.",identityLastName:"Cognome: {value}",identityFirstNames:"Nome: {value}",identityNameInId:"Nome in un identificativo: {value}",identityNameInText:"Nome nel testo: {value}",identityAddress:"Indirizzo: {value}",identityEmail:"Indirizzo e-mail: {value}",identityPhone:"Numero di telefono: {value}",identityInitials:"Sostituisci con le iniziali",identityKeep:"Salva comunque",identityBack:"Torna indietro",importFile:"Carica un file di osservazione",paramSummaryTitle:"Ciò che indica la registrazione ({n})",wholeKeyframes:"Ogni fotogramma chiave per intero",wholeKeyframesHint:"Altrimenti un fotogramma chiave dice solo ciò che è cambiato dal precedente, come si scrive una registrazione a mano. Cambiare questa scelta svuota la cronologia di annullamento.",importUrlPlaceholder:"https://…/sighting.json",inputFileFromFile:"dal proprio disco",inputFileFromUrl:"da un indirizzo",inputFileModeHint:"Fare clic per darlo nell'altro modo: un proprio file o un indirizzo",inputFileLoad:"Carica",importError:"Impossibile caricare questa registrazione — controlla il file o l'URL e riprova.",importErrorCors:`Questo indirizzo risponde, ma il browser non ha il permesso di leggerlo da questa pagina. Il file in sé va bene: è il suo server che deve inviarlo con l'intestazione "Access-Control-Allow-Origin: *". Se il server non è tuo, è questo che devi chiedere al suo amministratore.`,importErrorMixedContent:"Una pagina sicura non può caricare un indirizzo che inizia con http://. Usa https:// se quel server lo offre.",importErrorUnreachable:"Nulla ha risposto a questo indirizzo. Controlla come è scritto e di essere connesso.",importErrorStatus:"Quel server ha risposto con un errore ({status}). Probabilmente l'indirizzo è sbagliato o il file è stato spostato.",importErrorMalformed:"Questo indirizzo ha risposto, ma ciò che è tornato non è una registrazione.",formatVersionError:"Questo file indica la versione {found} del suo formato; questo UFO@home legge fino alla versione {supported}. Lo apra con un UFO@home più recente.",record:"Registra",stop:"Ferma",according:"secondo",sourceElevation:"Rilievo",sourceImagery:"Immagini",sourceAircraft:"Traffico aereo",sourceFile:"File",sourceKind:"Dati",placeNamePlaceholder:"Valensole, Francia",searchPlace:"Localizza",placeMatch:"Corrispondenze",placeSearching:"Ricerca del luogo…",placeMatchFound:"luogo trovato",placeMatchesFound:"luoghi trovati",placeNotFound:"Nessun luogo con questo nome",placeSearchFailed:"Ricerca dei luoghi momentaneamente non disponibile",utcOffsetNoZone:"Nessun fuso indica questo scarto quel giorno",utcOffsetImplausible:"Questo fuso orario non corrisponde alla longitudine inserita, la cui ora solare è UTC{solar} — eppure la scena e il rilevamento meteo obbediscono a ciò che è dichiarato qui. Svuota il campo per ricavarlo dalla longitudine.",timeZoneManual:"sconosciuto",altitudeAboveSeaLevel:"Altitudine dell'osservatore sul livello del mare — il suolo del luogo inserito ne fissa il minimo: un osservatore sulle Alpi non è a 0 m.",groundAt:"suolo a {m} m",headingPlaceholder:"sconosciuto",edtfInvalid:"Data/ora EDTF non valida (es. 1965-07-01T05:00, 2025-06?, 2025~).",edtfPlaceholder:"AAAA-MM-GGThh:mm[?~%] o hh:mm",observationTimeHint:"EDTF — es. 1965-07-01T05:00, 2025-06? (incerto), 2025~ (approssimativo), o solo 05:00 se la data non è nota",observationEndTimeHint:"EDTF — es. 1965-07-01T05:10, 2025-06? (incerto), 2025~ (approssimativo), o solo 05:10 se la data non è nota",presetsGroupLabel:"Forma dell'UFO",description:"Descrizione",tagsPlaceholder:"separati da virgole",weather:"Meteo",shapeGroup:"Fenomeno",shapesSubgroup:"Forme",bodiesSubgroup:"Corpi",launchesSubgroup:"Lanci",sky:"Cielo",dataSources:"Fonti dei dati",beamsSubgroup:"Fasci",soundGroup:"Suono",close:"Chiudi",editorKicker:"Editor di avvistamento",witnessError:e,expandTracks:"Espandi le tracce",collapseTracks:"Comprimi le tracce",addKeyframeHere:"Aggiungi un fotogramma chiave qui",keyframeHere:"Qui c'è un fotogramma chiave: modificarlo lo cambia",overlayHorizon:"Orizzonte · inclinazione {deg}°",overlayFov:"Campo visivo {v}° × {h}°",overlayWind:"Soffia verso {point} · {speed} m/s",sectionIdentity:"Identità",sectionProfile:"Profilo",sectionTestimony:"Testimonianza",sectionVision:"Visione",sectionPerception:"Percezione",sectionCoordinates:"Coordinate",sectionGaze:"Sguardo",sectionNightSky:"Cielo notturno",sectionPeriod:"Periodo",sectionSurvey:"Scenario da un rilievo",sectionHeard:"Ciò che è stato udito",sectionSoundRecording:"Registrazione",sectionPicture:"Foto",sectionPose:"Posa",sectionAppearance:"Aspetto",sectionSize:"Dimensioni e distanza",sectionPath:"Traiettoria",moreSettings:"Altre impostazioni ({n})",lessSettings:"Meno impostazioni",showSettings:"Mostra ({n} impostazioni)",showSettingsOne:"Mostra (1 impostazione)",showSettingsAny:"Mostra",hideSettings:"Nascondi",save:"Salva",stateNew:"Nuova registrazione",panelIntroObservation:"Cosa è successo, in poche righe, e cosa resta da completare.",panelIntroObserver:"Chi ha visto, e con cosa. Ogni osservatore ha il proprio punto di vista nella scena.",panelIntroLocation:"Da dove guardava l'osservatore, e in quale direzione.",panelIntroTemporal:"Quando è iniziato, quanto è durato, e i momenti del racconto.",panelIntroDecor:"Ciò che circondava l'osservatore: veicoli, edifici, vegetazione.",panelIntroWeather:"Il tempo che faceva, e ciò che attraversava il cielo senza essere il fenomeno: lanci, fasci.",panelIntroShape:"Ciò che è stato visto, disegnato nella scena dal punto di vista dell'osservatore.",panelIntroSound:"Ciò che è stato udito.",panelIntroReference:"Foto e schizzi, allineati alla scena per confrontarla.",panelIntroFile:"La registrazione completa, da salvare o ricaricare.",temporalGroup:"Data",fileGroup:"File",fileLoading:"Caricamento dell'editor…",weatherEditedAsk:"Questa modifica tocca il meteo, un dato letto dinamicamente da {source}. Vuoi smettere di leggerlo da {source}?",weatherEditedStop:"Smetti di leggerlo",weatherEditedKeep:"Continua a leggerlo (annulla la mia modifica)",fileEditorLabel:"La registrazione come testo JSON",fileSearchPhrases:{Find:"Cerca",Replace:"Sostituisci",next:"successivo",previous:"precedente",all:"tutti","match case":"maiuscole","by word":"parola intera",regexp:"regexp",replace:"sostituisci","replace all":"sostituisci tutto",close:"chiudi","current match":"corrispondenza corrente","on line":"alla riga","replaced $ matches":"$ corrispondenze sostituite","replaced match on line $":"corrispondenza sostituita alla riga $","Go to line":"Vai alla riga",go:"vai"},timeQualifierExact:"Esatta",durationPrecise:"precisa",durationIso:"imprecisa",durationModeTitle:"Dire la durata esattamente, o come è stata enunciata: circa, tra due durate",durationInvalid:"Non è una durata: PT10M, PT1H30M, PT5M/PT10M…",durationHelpTitle:"Che cosa accetta il testo (EDTF)",durationHelpLines:`PT45S — 45 secondi
|
|
2
|
+
PT10M — 10 minuti
|
|
3
|
+
PT1H30M — 1 ora 30 minuti
|
|
4
|
+
PT5M/PT10M — tra 5 e 10 minuti
|
|
5
|
+
Terminare con ? se incerto, ~ se approssimativo, % per entrambi
|
|
6
|
+
1965-?07 — il dubbio può riguardare anche una parte`,durationChosen:"(simulata: {value})",accountView:"Resoconto",accountView2d:"2D · forme",accountView3d:"3D · corpi",accountViewHint:"Ciò che mostra il render e ciò che si modifica: le forme che l'osservatore ha disegnato, o i corpi che ha detto che fossero",datePrecise:"precisa",dateEdtf:"imprecisa",dateHelpTitle:"Che cosa accetta il testo (EDTF)",dateHelpLines:`1965 — un anno
|
|
7
|
+
1965-07 — un mese
|
|
8
|
+
1965-21 — una stagione (21 primavera, 22 estate, 23 autunno, 24 inverno)
|
|
9
|
+
1965-07-01 — un giorno
|
|
10
|
+
1965-07-01T05:00 — un giorno e un'ora
|
|
11
|
+
05:00 — un'ora, data sconosciuta
|
|
12
|
+
Terminare con ? se incerto, ~ se approssimativo, % per entrambi`,edtfModeTitle:"Scrivi invece una data imprecisa: solo un anno, un mese, un'ora senza data",locationGroup:"Luogo",observerTab:"Testimone",observationGroup:"Riepilogo",weatherWhilePlaying:"Metti in pausa la registrazione per indicare il tempo — mentre scorre, l'istante in cui verrebbe scritto si sposta",weatherInferred:"Fonte",weatherInferredTitle:"Il meteo non è un resoconto: è un fatto misurabile, rilevato per la data, l'ora e il luogo dell'osservazione. Deseleziona per indicare le condizioni riferite dall'osservatore, che allora prevalgono sul rilevamento.",weatherLookingUp:"Ricerca del rilevamento…",weatherNeedsDateAndPlace:"Servono una data completa e un luogo per cercare il rilevamento",weatherNeedsDate:"Serve una data completa (anno, mese e giorno) per cercare i rilevamenti meteo",weatherNeedsPlace:"Serve un luogo con coordinate per cercare i rilevamenti meteo",weatherNoRecord:"Nessun rilevamento per questa data e questo luogo",weatherLookupFailed:"Rilevamenti meteo momentaneamente irraggiungibili",lightPollutionLookingUp:"Consultazione dell'atlante…",lightPollutionFound:"{artificial} µcd/m² di luce artificiale,",lightPollutionNatural:"Nessuna luce artificiale qui,",lightPollutionOutside:"Fuori dall'atlante (da 85°N a 60°S),",lightPollutionFailed:"Atlante al momento irraggiungibile",lightPollutionTooEarly:"L'atlante descrive il {atlasYear}; il cielo del {year} era più buio, indicarlo se è noto",instrumentOutOfPeriod:"{name} — non di quest'epoca",instrumentCategoryEye:"Occhio nudo",instrumentCategoryCamera:"Fotocamere",instrumentCategoryDslr:"Reflex digitali",instrumentCategoryPhone:"Telefoni",instrumentCategoryBinoculars:"Binocoli",instrumentCategoryTelescope:"Telescopi",instrumentNotYetOnSale:"Non esisteva ancora nel {year} (in vendita dal {from})",instrumentNoLongerOnSale:"Non esisteva più nel {year} (in vendita fino al {to})",filterNotForInstrument:"Non utilizzabile con questo strumento",unitMillimetres:"mm",unitDegrees:"°",fieldOfViewReadout:"{deg}° di campo",soundSrcPlaceholder:"URL di una registrazione reale",referenceGroup:"Foto",reference:"Foto",referenceTitle:"Nome",referenceSrc:"Immagine",referenceSrcPlaceholder:"https://…/photo.jpg",referenceKind:"Tipo",referencePhoto:"Foto",referencePanorama:"Panorama (360°)",referenceCredit:"Crediti",referenceCreditUrl:"Link dei crediti",referenceT:"Scattata a",referenceDrawing:"Disegno sopra",referenceOpacity:"Opacità",referenceHeading:"Direzione",referencePitch:"Beccheggio",referenceRoll:"Rollio",referenceFov:"Campo verticale",referenceUsePose:"Usa la posa dell'osservatore",addReferenceUrl:"Da un indirizzo",addReferenceFile:"Da un file",deleteReference:"Elimina foto",referenceEmbedded:"{kb} kB incorporati nella registrazione — un indirizzo la terrebbe leggera",referenceUnreachable:"Impossibile caricare la foto: controlla l'indirizzo e che il suo sito permetta ad altri siti di leggerla",referenceRegisterHint:"Trascina per ruotare la foto, rotellina per cambiarne il campo; «Aggiungi un punto di riferimento» per indicare un dettaglio sulla foto, poi lo stesso nel rendering",referenceLandmarkPicture:"Punto di riferimento {n}: clicca il punto sulla foto",referenceLandmarkScene:"Punto di riferimento {n}: clicca lo stesso punto nel rendering",referenceLandmarkOffPicture:"Questo clic non cade sulla foto",referenceNotLoaded:"La foto non è ancora arrivata",referenceLandmarksFit:"{n} punti di riferimento — scarto medio di {deg}°",referenceLandmarks:"Punti di riferimento",addReferenceLandmark:"Aggiungi un punto di riferimento",deleteReferenceLandmark:"Elimina punto di riferimento",referenceLandmarkLabel:"Nome",referenceLandmarkLabelPlaceholder:"Albero che copre, recinzione…",referenceAdoptPose:"Adotta come posa dell'osservatore",referenceAdoptRationale:"Misurato sulla foto «{title}»: {n} punti di riferimento allineati, {deg}° di scarto residuo",referenceStreetSearch:"Foto stradali nei dintorni",referenceStreetNoPlace:"Dai prima un luogo alla registrazione: le foto si cercano intorno",referenceStreetSearching:"Ricerca di foto scattate nei dintorni…",referenceStreetNone:"Nessuna foto stradale entro {m} m (Panoramax)",referenceStreetFailed:"Impossibile raggiungere Panoramax",referenceStreetAdd:"Aggiungi",traceImport:"Tracciati dell'investigatore (KML, KMZ)",trace:"Tracciato",deleteTrace:"Elimina il tracciato",traceTitle:"Nome",traceSource:"Fonte",traceImported:"{n} importato/i da {name}.",traceSkipped:"Escluso: {what}.",traceNone:"Nessuna linea, luogo o contorno in questo file.",traceFailed:"Impossibile leggere questo file.",traceKindPoint:"luogo",traceKindLine:"linea",traceKindPolygon:"contorno",referenceStreetItem:"{distance} m a {bearing}°, {date}{panorama}",referenceStreetPanorama:" — 360°",referenceStreetTitle:"Foto stradale a {distance} m a {bearing}°, {date}",skyLine:"Cielo: {parts}",skyStarsEye:"stelle fino alla magnitudine {limit}, il limite che un occhio raggiungeva sotto questo cielo",skyStarsDeeper:"stelle fino alla magnitudine {limit} attraverso un {device} — {gain} magnitudini oltre le {eye} raggiunte dagli occhi dell'osservatore",skyStarsShallower:"stelle fino alla magnitudine {limit} attraverso un {device} — {gain} magnitudini al di qua delle {eye} raggiunte dagli occhi dell'osservatore",skyStarsCatalogue:", disegnate fino a {catalogue}, dove si ferma il catalogo di questo progetto",skyStarsNone:"nessuna stella si distingueva in un cielo così chiaro",skyDetails:"Mostra i rilevamenti completi",skyDetailsHide:"Nascondi i rilevamenti",skyShowerActive:"{name} — radiante a {altitude}° sopra l'orizzonte, {bearing} — circa {rate}/h sotto questo cielo, su un fondo sporadico di {sporadic}/h",skyShowerBelowHorizon:"{name} è attivo, ma il suo radiante è sotto l'orizzonte — non ha potuto produrre nulla",skyNothingActive:"nessuno sciame meteorico attivo in questa data — un fondo sporadico di circa {sporadic}/h",showMeteor:"Mostrami una meteora",noMeteor:"Nessuna meteora visibile",noComet:"Nessuna cometa visibile",noNova:"Nessuna stella nuova visibile",noSatellite:"Nessun satellite visibile",noFireball:"Nessun bolide visibile",skyComet:"La {name}, magnitudine {magnitude}, a {altitude}° sopra l'orizzonte {bearing}, coda lunga {tail}°",skyCometNoTail:"La {name}, magnitudine {magnitude}, a {altitude}° sopra l'orizzonte {bearing}",skyCometBelowHorizon:"La {name} c'era, di magnitudine {magnitude}, ma sotto l'orizzonte — nessuno qui l'ha vista",skyCometInDaylight:"La {name}, magnitudine {magnitude}, a {altitude}° sopra l'orizzonte {bearing} — ma a soli {elongation}° dal Sole",showComet:"Mostrami la cometa",skyNova:"La {name}, una stella nuova di magnitudine {magnitude}, a {altitude}° sopra l'orizzonte {bearing}",skyNovaBelowHorizon:"La {name} brillava di magnitudine {magnitude}, ma sotto l'orizzonte: nessuno qui l'ha vista",showNova:"Mostrami la stella nuova",skyEclipsePartial:"Eclissi di Sole: la Luna nasconde il {percent} % del Sole alle {time}, a {altitude}° sopra l'orizzonte {bearing}",skyEclipseTotal:"Eclissi totale di Sole: il Sole è interamente nascosto dalle {time} per {duration}, a {altitude}° sopra l'orizzonte {bearing}",skySupermoon:"Luna piena a {distance} km: {diameter}° di larghezza, il {percent} % in più che alla distanza media — una «superluna», e non più grande all'orizzonte che in alto",skyMicromoon:"Luna piena a {distance} km: {diameter}° di larghezza, il {percent} % in meno che alla distanza media — una «microluna», e non più piccola all'orizzonte che in alto",skyRedMoon:"La «lune rousse»: la Luna piena della lunazione che segue la Pasqua, a {altitude}° sopra l'orizzonte {bearing} — bassa, quindi arrossata dall'aria che attraversa, e né più grande né più luminosa di un'altra",skySatellitePasses:"{count} satelliti hanno attraversato questo cielo abbastanza luminosi da essere visti, il più luminoso {name}, magnitudine {magnitude}, a {altitude}° sopra l'orizzonte {bearing} alle {time}",skySatellitePassesOne:"un satellite ha attraversato questo cielo abbastanza luminoso da essere visto: {name}, magnitudine {magnitude}, a {altitude}° sopra l'orizzonte {bearing} alle {time}",skySatelliteTrain:"tra cui un treno di {count} Starlink lanciati il {date}",skySatellitePassesNone:"secondo gli elementi orbitali archiviati per quella data, nessun satellite illuminato ha attraversato questo cielo abbastanza luminoso da essere visto",skySatelliteElementsGap:"nessun elemento orbitale archiviato vicino a quella data",skyReentries:"rientri registrati: {list}",skyReentriesMore:"altri {count}",skyReentrySeen:"{name} è ricaduto alle {time}, visto da {place} (a {distance} km)",skyReentryObserved:"{name} è ricaduto alle {time}, visto",skyReentryOffset:", a {minutes} min dall'osservazione",skyReentryPredicted:"{name} è ricaduto verso le {time} ± {hours} h, non si sa dove",skyReentryDay:"{name} è ricaduto il {date} (UTC), senza ora né luogo noti",skyFireballs:"{count} bolidi registrati dalla Global Meteor Network, il più luminoso di magnitudine {magnitude} alle {time}, a {altitude}° di altezza {bearing}, a {distance} km ({stations} stazioni)",skyFireballsOne:"un bolide registrato dalla Global Meteor Network: magnitudine {magnitude} alle {time}, a {altitude}° di altezza {bearing}, a {distance} km ({stations} stazioni)",showFireball:"Mostrami il bolide",showSatellite:"Mostrami un satellite",skyOpticsPossible:"nubi di ghiaccio sufficienti, intorno {source}, per {forms}",skyOpticsAlignment:" — tutto tranne gli anelli richiede cristalli che cadono orizzontali, qui supposti allineati al {alignment}%, poiché nessun rilevamento lo indica",skyOpticsHalo22:"un anello di {angle}°",skyOpticsHalo46:"un anello di {angle}°",skyOpticsParhelia:"pareli a {angle}° da entrambi i lati",skyOpticsTangentArc:"un arco tangente sopra",skyOpticsParhelicCircle:"un cerchio bianco che fa il giro del cielo alla sua stessa altezza",skyOpticsCircumzenithal:"un arco circumzenitale a {angle}° di altezza",skyOpticsCircumhorizontal:"un arco circumorizzontale molto più in basso",skyOpticsPillar:"una colonna eretta sopra",skyOpticsNoIce:"nessuna nube di ghiaccio: né alone né pareli",skyOpticsHidden:"nubi di ghiaccio in quota, ma uno strato più basso tra loro e l'osservatore",skyOpticsSun:"al Sole",skyOpticsMoon:"alla Luna",skyBowPossible:"pioggia e sole sufficienti per {forms}",skyBowMoon:"pioggia sotto una Luna illuminata al {lit}%, sufficiente per {forms} — un arcobaleno lunare, che l'occhio vede come un arco bianco",skyGlowBand:"la Via Lattea a {contrast}× il fondo del cielo, a {altitude}° di altezza {bearing}",skyGlowCone:"la luce zodiacale a {contrast}× il fondo del cielo, a {altitude}° di altezza {bearing}, a {elongation}° dal Sole — un tenue cono di luce inclinato, dai bordi sfumati, svanito entro un'ora",skyGlowZodiacalBand:"la banda zodiacale a {contrast}× il fondo del cielo, a {altitude}° di altezza {bearing} — tutta l'eclittica debolmente accesa, che non è ciò che la gente riferisce",skyGlowMoon:"né Via Lattea né luce zodiacale: una Luna illuminata al {lit}% teneva il cielo a {sky} magnitudini per secondo d'arco quadrato, dove ne servono 22",skyGlowTwilight:"né Via Lattea né luce zodiacale: il crepuscolo teneva ancora il cielo a {sky} magnitudini per secondo d'arco quadrato, dove ne servono 22",skyGlowTowns:"né Via Lattea né luce zodiacale: il bagliore delle città teneva il cielo a {sky} magnitudini per secondo d'arco quadrato, dove ne servono 22",skyGlowNothingUp:"cielo abbastanza buio ({sky} magnitudini per secondo d'arco quadrato), ma né il piano galattico né l'eclittica vi stavano abbastanza in alto",skyBowPrimary:"un arco di {radius}° di raggio, con la sommità a {top}° di altezza",skyBowSecondary:"un secondo, più tenue, a {radius}°, con i colori invertiti",skyBowSourceTooHigh:"pioggia, ma con l'astro a {altitude}° di altezza nessun arco poteva superare l'orizzonte: si trovano a {radius}° dal punto opposto",skyBowHidden:"pioggia, ma uno strato continuo tra essa e la luce: nessun arco",skyBowNoSource:"pioggia, e niente di illuminato per farne un arco",skySatellitesLit:"l'ombra della Terra era a {height} km sopra l'osservatore, quindi l'orbita bassa era ancora al sole — {count} oggetti catalogati erano in orbita quel mese",skySatellitesLitWith:"l'ombra della Terra era a {height} km sopra l'osservatore, quindi l'orbita bassa era ancora al sole — {count} oggetti catalogati erano in orbita quel mese, tra cui {eras}",skySatellitesShadowed:"l'ombra della Terra era a {height} km sopra l'osservatore: dei {count} oggetti catalogati in orbita quel mese, niente in orbita bassa era illuminato",skySatellitesNotYet:"non era ancora stato messo niente in orbita",skySatellitesDaylight:"tutto ciò che era in orbita era illuminato, come sempre di giorno, e {eras} potevano superare in luminosità persino questo cielo",skySatellitesDaylightOne:"tutto ciò che era in orbita era illuminato, come sempre di giorno, e {eras} poteva superare in luminosità persino questo cielo",skyUnknown:"non determinabile senza una data e un luogo",lookAtDecor:"Guardalo",addDecor:"Aggiungi",deleteDecor:"Elimina elemento della scenografia",undo:"Annulla",redo:"Ripristina",viewAccount:"Vedi il resoconto",noObserverRecording:"Nessun URL di registrazione per questo osservatore",masks:"Nasconde",masksNone:"Nessun fenomeno da nascondere per ora",masksBodyFully:"nascosto da questo oggetto",masksBodyPartly:"nascosto al {share} % da questo oggetto",masksBodyNot:"non nascosto da questo oggetto",modelPickerTitle:"Scegliere un modello 3D",modelPickerClose:"Chiudere",modelPickerChoose:"Scegliere un modello 3D",modelPickerUse:"Usa questo modello",modelPickerIncomplete:"Non disegnato finché non sono indicati il nome e la licenza del modello",addObserver:"Aggiungi osservatore",surveyLabel:"Scenografia ricavata da un rilievo",surveySource:"Scenografia da",surveyDated:"Rilevato il: {dates}.",surveyLaserLabel:"laser",surveyPhotoLabel:"foto aerea",surveyMapLabel:"carta",surveyLampsLabel:"OpenStreetMap",surveyWarning:"⚠ Questa scenografia viene da rilievi del {survey}, successivi all'osservazione ({observation}): non è ciò che c'era allora. Teneteli come riferimento, o eliminateli.",surveyRadius:"Raggio",surveyRadiusTitle:"Fino a dove intorno all'osservatore si interroga il rilievo, in metri. Un raggio più ampio porta edifici, ponti e linee più lontani; gli alberi vengono dal laser, che si interroga solo entro 150 m.",surveySourceTitle:"Il rilievo da cui sono ricavati, da soli, gli alberi, gli edifici, i ponti e le linee aeree attorno al luogo quando date un luogo alla registrazione: sono messi nell'elenco, al loro posto, con altezza e larghezza misurate. Le coordinate del luogo sono inviate a quel servizio. Nessuno lascia la scenografia a voi soli. Ciò che avete collocato voi non viene mai toccato.",surveySourceNone:"Nessuno (tutto a mano)",surveyBusy:"Ricerca della scenografia attorno all'osservatore…",surveyDone:"Da {source}: alberi {trees}, edifici {buildings}, ponti {bridges}, linee elettriche {lines}. Sono quelli del giorno del rilievo, non della registrazione: teneteli, spostateli o eliminateli.",surveyNone:"Nessun albero, edificio, ponte né linea elettrica trovato entro {radius} m.",surveyKept:"Ciò che avete collocato voi resta com'è.",surveyUnreachable:"Impossibile raggiungere il rilievo. Riprovate più tardi.",surveyFurniturePending:"Illuminazione pubblica e semafori: in attesa di OpenStreetMap…",surveyFurnitureDone:"Da {source}: lampioni {lamps}, semafori {signals}, attraversamenti {crossings}, segnali {signs}.",surveyFurnitureUnavailable:"Illuminazione pubblica e semafori non disponibili per ora: OpenStreetMap non risponde.",surveyFurnitureRetry:"Riprova",narrativePlaceholder:"Ciò che l'osservatore ha riferito, con parole sue",narrativeSource:"Redatto da",narrativeNeedsSetting:'Compila "{setting}" ({source}) per generare una ricostruzione dal resoconto',narrativeNeedsAsk:"Ancora niente da inviare",narrativeRemember:"Ricorda su questo dispositivo",narrativeDraft:"Genera ricostruzione",narrativeStop:"Ferma",narrativeWorking:"Lettura del resoconto…",narrativeApplied:"{count} campi scritti nell'editor",narrativeUnchanged:"Il resoconto non dice ancora nulla che la registrazione possa contenere",narrativeStated:"Ciò che l'osservatore ha detto",narrativeDerived:"Ricavato dal resoconto",narrativeAssumed:"Supposto, perché la ricostruzione funzioni — da verificare",narrativeGaps:"Ciò che niente ha potuto stabilire",narrativeErrorCredential:"Nessuna chiave, o una chiave rifiutata — controllala su console.anthropic.com",narrativeErrorRateLimited:"Troppe richieste sul tuo account: aspetta un momento e richiedi",narrativeErrorRefused:"Il resoconto non ha avuto risposta. Riformularlo può aiutare; richiederlo no",narrativeErrorMalformed:"La risposta non era una bozza utilizzabile — vale la pena richiederla ancora una volta",narrativeErrorUnreachable:"Nulla ha risposto: controlla la connessione",narrativeErrorRejected:"Rifiutato: {detail}",observerAge:"Età allora",observerBirth:"Nato il",observerPerception:{"color-vision":"Visione dei colori","color-vision.hint":"Come appaiono i colori a chi ha coni diversi (Machado et al. 2009). Ricolora soltanto: luminosità e risoluzione restano uguali.","color-vision.type":"Tipo","color-vision.type.normal":"Tipica","color-vision.type.protan":"Protan (rosso debole o cieco)","color-vision.type.deutan":"Deutan (verde debole o cieco)","color-vision.type.tritan":"Tritan (blu debole o cieco)","color-vision.severity":"Gravità",intoxication:"Alcol","intoxication.hint":"Riduce la sensibilità al contrasto di circa 0,9 dB a 0,08 % di alcol nel sangue (uno studio controllato; i risultati variano), mostrato fino a 0,1 % al massimo: un livello più alto viene registrato ma mostrato come 0,1 %, poiché oltre non è stato misurato nulla. Visione doppia, campo ristretto e altre droghe non sono modellati: nessuna fonte li quantifica.","intoxication.bloodAlcohol":"Alcolemia",fatigue:"Stanchezza","fatigue.hint":"Solo dichiarata: non è dimostrato che la mancanza di sonno cambi ciò che riceve un occhio sano, quindi l'immagine non cambia. Riguarda attenzione e memoria, non la vista.","fatigue.hoursAwake":"Sveglio da"},observerOccupation:"Professione",accountSource:"Resoconto raccolto",accountUrl:"Fonte (URL)",accountSourceUnknown:"sconosciuto",accountSourceOnSite:"indagine sul posto",accountSourceInterview:"colloquio di persona",accountSourceTelephone:"per telefono",accountSourceQuestionnaire:"questionario",accountSourceLetter:"l'ha scritto l'osservatore",accountSourceSocialMedia:"l'ha pubblicato l'osservatore in rete",accountSourcePress:"stampa o radiotelevisione",accountFollowedUp:"Ricontattato",accountUnknown:"sconosciuto",accountYes:"sì",accountNo:"no",questionUnanswered:"Nulla in questa registrazione risponde a una delle domande che una ricostruzione deve risolvere",durationRequired:"L'osservazione ha bisogno di una durata per poter essere riprodotta — indicala, o un'ora di fine, che può essere approssimativa",questionsUnanswered:"{count} delle domande a cui risponde una ricostruzione completa restano qui senza risposta",emptyDecor:"Nessun elemento della scenografia",emptyMilestones:"Nessun momento",emptyReferences:"Nessuna foto",emptyReferenceLandmarks:"Nessun punto di riferimento",emptyTraces:"Nessun tracciato dell'investigatore",emptyShapes:"Nessuna forma",addReference:"Aggiungi una foto",principalObserver:"Osservatore di questo resoconto",deleteObserver:"Elimina l'osservatore"};export{a as sightingEditorMessages_it};
|
package/dist-embed-sighting-editor/{SightingFileEditor-DcOCyimm.js → SightingFileEditor-DkRqrb-a.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{S as T,g as de,E as M,a as it,s as rt,b as O,P as ot,c as V,d as Le,F as me,e as pe,f as lt,h as at,V as Qe,D as P,R as _,i as ce,j as ct,C as L,k as Ee,l as b,r as ht,L as ut,m as ft,t as w,n as dt,o as mt,p as pt,q as ke,u as gt,v as xt,w as vt,x as We,y as Ie,z as bt,A as yt,G as Ne,W as Ot,B as wt,H as kt,I as Ce,J as Ct,K as St,M as Mt,N as Pt,O as Rt,Q as Tt,T as At,U as Lt,X as Qt,Y as Et,Z as Wt,_ as It,$ as Nt,a0 as Dt,a1 as Bt,a2 as $t,a3 as qt,a4 as Vt,a5 as Ht,a6 as Kt,a7 as jt,a8 as Xt,a9 as Gt,aa as zt,ab as Ft}from"./index-DSNA74v6.js";import Yt from"./sightingSchema-
|
|
1
|
+
import{S as T,g as de,E as M,a as it,s as rt,b as O,P as ot,c as V,d as Le,F as me,e as pe,f as lt,h as at,V as Qe,D as P,R as _,i as ce,j as ct,C as L,k as Ee,l as b,r as ht,L as ut,m as ft,t as w,n as dt,o as mt,p as pt,q as ke,u as gt,v as xt,w as vt,x as We,y as Ie,z as bt,A as yt,G as Ne,W as Ot,B as wt,H as kt,I as Ce,J as Ct,K as St,M as Mt,N as Pt,O as Rt,Q as Tt,T as At,U as Lt,X as Qt,Y as Et,Z as Wt,_ as It,$ as Nt,a0 as Dt,a1 as Bt,a2 as $t,a3 as qt,a4 as Vt,a5 as Ht,a6 as Kt,a7 as jt,a8 as Xt,a9 as Gt,aa as zt,ab as Ft}from"./index-DSNA74v6.js";import Yt from"./sightingSchema-DT9g-OyF.js";const Se=typeof String.prototype.normalize=="function"?i=>i.normalize("NFKD"):i=>i;class K{constructor(e,n,t=0,s=e.length,r,l){this.test=l,this.value={from:0,to:0,precise:!1},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(t,s),this.bufferStart=t,this.normalize=r?o=>r(Se(o)):Se,this.query=this.normalize(n)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return lt(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let n=ct(e),t=this.bufferStart+this.bufferPos;this.bufferPos+=at(e);let s=this.normalize(n);if(s.length)for(let r=0,l=t,o=!0;;r++){let a=s.charCodeAt(r),c=this.match(a,l,o,this.bufferPos+this.bufferStart,r==s.length-1);if(c)return this.value=c,this;if(r==s.length-1)break;o&&r<n.length&&n.charCodeAt(r)==a?l++:o=!1}}}match(e,n,t,s,r){let l=null;for(let o=0;o<this.matches.length;){let a=this.matches[o],c=!1;this.query.charCodeAt(a.index)==e&&(a.index==this.query.length-1?l={from:a.from,to:s,precise:r&&a.precise}:(a.index++,c=!0)),c?o++:this.matches.splice(o,1)}return this.query.charCodeAt(0)==e&&(this.query.length==1?l={from:n,to:s,precise:t&&r}:this.matches.push({from:n,index:1,precise:t})),l&&this.test&&!this.test(l.from,l.to,this.buffer,this.bufferStart)&&(l=null),l}}typeof Symbol<"u"&&(K.prototype[Symbol.iterator]=function(){return this});const De={from:-1,to:-1,match:/.*/.exec(""),precise:!0},ge="gm"+(/x/.unicode==null?"":"u");class Be{constructor(e,n,t,s=0,r=e.length){if(this.text=e,this.to=r,this.curLine="",this.done=!1,this.value=De,/\\[sWDnr]|\n|\r|\[\^/.test(n))return new $e(e,n,t,s,r);this.re=new RegExp(n,ge+(t?.ignoreCase?"i":"")),this.test=t?.test,this.iter=e.iter();let l=e.lineAt(s);this.curLineStart=l.from,this.matchPos=ee(e,s),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let n=this.matchPos<=this.to&&this.re.exec(this.curLine);if(n){let t=this.curLineStart+n.index,s=t+n[0].length;if(this.matchPos=ee(this.text,s+(t==s?1:0)),t==this.curLineStart+this.curLine.length&&this.nextLine(),(t<s||t>this.value.to)&&(!this.test||this.test(t,s,n)))return this.value={from:t,to:s,precise:!0,match:n},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}}const le=new WeakMap;class ${constructor(e,n){this.from=e,this.text=n}get to(){return this.from+this.text.length}static get(e,n,t){let s=le.get(e);if(!s||s.from>=t||s.to<=n){let o=new $(n,e.sliceString(n,t));return le.set(e,o),o}if(s.from==n&&s.to==t)return s;let{text:r,from:l}=s;return l>n&&(r=e.sliceString(n,l)+r,l=n),s.to<t&&(r+=e.sliceString(s.to,t)),le.set(e,new $(l,r)),new $(n,r.slice(n-l,t-l))}}class $e{constructor(e,n,t,s,r){this.text=e,this.to=r,this.done=!1,this.value=De,this.matchPos=ee(e,s),this.re=new RegExp(n,ge+(t?.ignoreCase?"i":"")),this.test=t?.test,this.flat=$.get(e,s,this.chunkEnd(s+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,n=this.re.exec(this.flat.text);if(n&&!n[0]&&n.index==e&&(this.re.lastIndex=e+1,n=this.re.exec(this.flat.text)),n){let t=this.flat.from+n.index,s=t+n[0].length;if((this.flat.to>=this.to||n.index+n[0].length<=this.flat.text.length-10)&&(!this.test||this.test(t,s,n)))return this.value={from:t,to:s,precise:!0,match:n},this.matchPos=ee(this.text,s+(t==s?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=$.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(Be.prototype[Symbol.iterator]=$e.prototype[Symbol.iterator]=function(){return this});function Zt(i){try{return new RegExp(i,ge),!0}catch{return!1}}function ee(i,e){if(e>=i.length)return e;let n=i.lineAt(e),t;for(;e<n.to&&(t=n.text.charCodeAt(e-n.from))>=56320&&t<57344;)e++;return e}const Ut=i=>{let e=it(i,"cm-goto-line");if(e){let l=e.dom.querySelector("input[type=text]");return l&&l.select(),!0}let{state:n}=i,t=String(n.doc.lineAt(i.state.selection.main.head).number),{close:s,result:r}=rt(i,{class:"cm-goto-line",label:n.phrase("Go to line"),input:{type:"text",name:"line",value:t},focus:!0,submitLabel:n.phrase("go")});return r.then(l=>{let o=l&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(l.elements.line.value);if(!o){i.dispatch({effects:s});return}let a=n.doc.lineAt(n.selection.main.head),[,c,u,h,f]=o,d=h?+h.slice(1):0,m=u?+u:a.number;if(u&&f){let S=m/100;c&&(S=S*(c=="-"?-1:1)+a.number/n.doc.lines),m=Math.round(n.doc.lines*S)}else u&&c&&(m=m*(c=="-"?-1:1)+a.number);let g=n.doc.line(Math.max(1,Math.min(n.doc.lines,m))),x=M.cursor(g.from+Math.max(0,Math.min(d,g.length)));i.dispatch({effects:[s,O.scrollIntoView(x.from,{y:"center"})],selection:x})}),!0},Jt=({state:i,dispatch:e})=>{let{selection:n}=i,t=M.create(n.ranges.map(s=>i.wordAt(s.head)||M.cursor(s.head)),n.mainIndex);return t.eq(n)?!1:(e(i.update({selection:t})),!0)};function _t(i,e){let{main:n,ranges:t}=i.selection,s=i.wordAt(n.head),r=s&&s.from==n.from&&s.to==n.to;for(let l=!1,o=new K(i.doc,e,t[t.length-1].to);;)if(o.next(),o.done){if(l)return null;o=new K(i.doc,e,0,Math.max(0,t[t.length-1].from-1)),l=!0}else{if(l&&t.some(a=>a.from==o.value.from))continue;if(r){let a=i.wordAt(o.value.from);if(!a||a.from!=o.value.from||a.to!=o.value.to)continue}return o.value}}const en=({state:i,dispatch:e})=>{let{ranges:n}=i.selection;if(n.some(r=>r.from===r.to))return Jt({state:i,dispatch:e});let t=i.sliceDoc(n[0].from,n[0].to);if(i.selection.ranges.some(r=>i.sliceDoc(r.from,r.to)!=t))return!1;let s=_t(i,t);return s?(e(i.update({selection:i.selection.addRange(M.range(s.from,s.to),!1),effects:O.scrollIntoView(s.to)})),!0):!1},I=me.define({combine(i){return pe(i,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new gn(e),scrollToMatch:e=>O.scrollIntoView(e)})}});function tn(i){return i?[I.of(i),ue]:ue}class qe{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||Zt(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(n,t)=>t=="n"?`
|
|
2
2
|
`:t=="r"?"\r":t=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new an(this):new rn(this)}getCursor(e,n=0,t){let s=e.doc?e:ce.create({doc:e});return t==null&&(t=s.doc.length),this.regexp?B(this,s,n,t):D(this,s,n,t)}}class Ve{constructor(e){this.spec=e}}function nn(i,e,n){return(t,s,r,l)=>{if(n&&!n(t,s,r,l))return!1;let o=t>=l&&s<=l+r.length?r.slice(t-l,s-l):e.doc.sliceString(t,s);return i(o,e,t,s)}}function D(i,e,n,t){let s;return i.wholeWord&&(s=sn(e.doc,e.charCategorizer(e.selection.main.head))),i.test&&(s=nn(i.test,e,s)),new K(e.doc,i.unquoted,n,t,i.caseSensitive?void 0:r=>r.toLowerCase(),s)}function sn(i,e){return(n,t,s,r)=>((r>n||r+s.length<t)&&(r=Math.max(0,n-2),s=i.sliceString(r,Math.min(i.length,t+2))),(e(te(s,n-r))!=L.Word||e(ne(s,n-r))!=L.Word)&&(e(ne(s,t-r))!=L.Word||e(te(s,t-r))!=L.Word))}class rn extends Ve{constructor(e){super(e)}nextMatch(e,n,t){let s=D(this.spec,e,t,e.doc.length).nextOverlapping();if(s.done){let r=Math.min(e.doc.length,n+this.spec.unquoted.length);s=D(this.spec,e,0,r).nextOverlapping()}return s.done||s.value.from==n&&s.value.to==t?null:s.value}prevMatchInRange(e,n,t){for(let s=t;;){let r=Math.max(n,s-1e4-this.spec.unquoted.length),l=D(this.spec,e,r,s),o=null;for(;!l.nextOverlapping().done;)o=l.value;if(o)return o;if(r==n)return null;s-=1e4}}prevMatch(e,n,t){let s=this.prevMatchInRange(e,0,n);return s||(s=this.prevMatchInRange(e,Math.max(0,t-this.spec.unquoted.length),e.doc.length)),s&&(s.from!=n||s.to!=t)?s:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,n){let t=D(this.spec,e,0,e.doc.length),s=[];for(;!t.next().done;){if(s.length>=n)return null;s.push(t.value)}return s}highlight(e,n,t,s){let r=D(this.spec,e,Math.max(0,n-this.spec.unquoted.length),Math.min(t+this.spec.unquoted.length,e.doc.length));for(;!r.next().done;)s(r.value.from,r.value.to)}}function on(i,e,n){return(t,s,r)=>(!n||n(t,s,r))&&i(r[0],e,t,s)}function B(i,e,n,t){let s;return i.wholeWord&&(s=ln(e.charCategorizer(e.selection.main.head))),i.test&&(s=on(i.test,e,s)),new Be(e.doc,i.search,{ignoreCase:!i.caseSensitive,test:s},n,t)}function te(i,e){return i.slice(Ee(i,e,!1),e)}function ne(i,e){return i.slice(e,Ee(i,e))}function ln(i){return(e,n,t)=>!t[0].length||(i(te(t.input,t.index))!=L.Word||i(ne(t.input,t.index))!=L.Word)&&(i(ne(t.input,t.index+t[0].length))!=L.Word||i(te(t.input,t.index+t[0].length))!=L.Word)}class an extends Ve{nextMatch(e,n,t){let s=B(this.spec,e,t,e.doc.length).next();return s.done&&(s=B(this.spec,e,0,n).next()),s.done?null:s.value}prevMatchInRange(e,n,t){for(let s=1;;s++){let r=Math.max(n,t-s*1e4),l=B(this.spec,e,r,t),o=null;for(;!l.next().done;)o=l.value;if(o&&(r==n||o.from>r+10))return o;if(r==n)return null}}prevMatch(e,n,t){return this.prevMatchInRange(e,0,n)||this.prevMatchInRange(e,t,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(n,t)=>{if(t=="&")return e.match[0];if(t=="$")return"$";for(let s=t.length;s>0;s--){let r=+t.slice(0,s);if(r>0&&r<e.match.length)return e.match[r]+t.slice(s)}return n})}matchAll(e,n){let t=B(this.spec,e,0,e.doc.length),s=[];for(;!t.next().done;){if(s.length>=n)return null;s.push(t.value)}return s}highlight(e,n,t,s){let r=B(this.spec,e,Math.max(0,n-250),Math.min(t+250,e.doc.length));for(;!r.next().done;)s(r.value.from,r.value.to)}}const j=T.define(),xe=T.define(),Q=V.define({create(i){return new ae(he(i).create(),null)},update(i,e){for(let n of e.effects)n.is(j)?i=new ae(n.value.create(),i.panel):n.is(xe)&&(i=new ae(i.query,n.value?ve:null));return i},provide:i=>Le.from(i,e=>e.panel)});class ae{constructor(e,n){this.query=e,this.panel=n}}const cn=P.mark({class:"cm-searchMatch"}),hn=P.mark({class:"cm-searchMatch cm-searchMatch-selected"}),un=Qe.fromClass(class{constructor(i){this.view=i,this.decorations=this.highlight(i.state.field(Q))}update(i){let e=i.state.field(Q);(e!=i.startState.field(Q)||i.docChanged||i.selectionSet||i.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:i,panel:e}){if(!e||!i.spec.valid)return P.none;let{view:n}=this,t=new _;for(let s=0,r=n.visibleRanges,l=r.length;s<l;s++){let{from:o,to:a}=r[s];for(;s<l-1&&a>r[s+1].from-500;)a=r[++s].to;i.highlight(n.state,o,a,(c,u)=>{let h=n.state.selection.ranges.some(f=>f.from==c&&f.to==u);t.add(c,u,h?hn:cn)})}return t.finish()}},{decorations:i=>i.decorations});function z(i){return e=>{let n=e.state.field(Q,!1);return n&&n.query.spec.valid?i(e,n):be(e)}}const se=z((i,{query:e})=>{let{to:n}=i.state.selection.main,t=e.nextMatch(i.state,n,n);if(!t)return!1;let s=M.single(t.from,t.to),r=i.state.facet(I);return i.dispatch({selection:s,effects:[ye(i,t),r.scrollToMatch(s.main,i)],userEvent:"select.search"}),Ke(i),!0}),ie=z((i,{query:e})=>{let{state:n}=i,{from:t}=n.selection.main,s=e.prevMatch(n,t,t);if(!s)return!1;let r=M.single(s.from,s.to),l=i.state.facet(I);return i.dispatch({selection:r,effects:[ye(i,s),l.scrollToMatch(r.main,i)],userEvent:"select.search"}),Ke(i),!0}),fn=z((i,{query:e})=>{let n=e.matchAll(i.state,1e3);return!n||!n.length?!1:(i.dispatch({selection:M.create(n.map(t=>M.range(t.from,t.to))),userEvent:"select.search.matches"}),!0)}),dn=({state:i,dispatch:e})=>{let n=i.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:t,to:s}=n.main,r=[],l=0;for(let o=new K(i.doc,i.sliceDoc(t,s));!o.next().done;){if(r.length>1e3)return!1;o.value.from==t&&(l=r.length),r.push(M.range(o.value.from,o.value.to))}return e(i.update({selection:M.create(r,l),userEvent:"select.search.matches"})),!0},Me=z((i,{query:e})=>{let{state:n}=i,{from:t,to:s}=n.selection.main;if(n.readOnly)return!1;let r=e.nextMatch(n,t,t);if(!r)return!1;let l=r,o=[],a,c,u=[];l.precise?l.from==t&&l.to==s&&(c=n.toText(e.getReplacement(l)),o.push({from:l.from,to:l.to,insert:c}),l=e.nextMatch(n,l.from,l.to),u.push(O.announce.of(n.phrase("replaced match on line $",n.doc.lineAt(t).number)+"."))):l=e.nextMatch(n,l.from,l.to);let h=i.state.changes(o);return l&&(a=M.single(l.from,l.to).map(h),u.push(ye(i,l)),u.push(n.facet(I).scrollToMatch(a.main,i))),i.dispatch({changes:h,selection:a,effects:u,userEvent:"input.replace"}),!0}),mn=z((i,{query:e})=>{if(i.state.readOnly)return!1;let n=[];for(let s of e.matchAll(i.state,1e9)){let{from:r,to:l,precise:o}=s;o&&n.push({from:r,to:l,insert:e.getReplacement(s)})}if(!n.length)return!1;let t=i.state.phrase("replaced $ matches",n.length)+".";return i.dispatch({changes:n,effects:O.announce.of(t),userEvent:"input.replace.all"}),!0});function ve(i){return i.state.facet(I).createPanel(i)}function he(i,e){var n,t,s,r,l;let o=i.selection.main,a=o.empty||o.to>o.from+100?"":i.sliceDoc(o.from,o.to);if(e&&!a)return e;let c=i.facet(I);return new qe({search:((n=e?.literal)!==null&&n!==void 0?n:c.literal)?a:a.replace(/\n/g,"\\n"),caseSensitive:(t=e?.caseSensitive)!==null&&t!==void 0?t:c.caseSensitive,literal:(s=e?.literal)!==null&&s!==void 0?s:c.literal,regexp:(r=e?.regexp)!==null&&r!==void 0?r:c.regexp,wholeWord:(l=e?.wholeWord)!==null&&l!==void 0?l:c.wholeWord})}function He(i){let e=de(i,ve);return e&&e.dom.querySelector("[main-field]")}function Ke(i){let e=He(i);e&&e==i.root.activeElement&&e.select()}const be=i=>{let e=i.state.field(Q,!1);if(e&&e.panel){let n=He(i);if(n&&n!=i.root.activeElement){let t=he(i.state,e.query.spec);t.valid&&i.dispatch({effects:j.of(t)}),n.focus(),n.select()}}else i.dispatch({effects:[xe.of(!0),e?j.of(he(i.state,e.query.spec)):T.appendConfig.of(ue)]});return!0},je=i=>{let e=i.state.field(Q,!1);if(!e||!e.panel)return!1;let n=de(i,ve);return n&&n.dom.contains(i.root.activeElement)&&i.focus(),i.dispatch({effects:xe.of(!1)}),!0},pn=[{key:"Mod-f",run:be,scope:"editor search-panel"},{key:"F3",run:se,shift:ie,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:se,shift:ie,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:je,scope:"editor search-panel"},{key:"Mod-Shift-l",run:dn},{key:"Mod-Alt-g",run:Ut},{key:"Mod-d",run:en,preventDefault:!0}];class gn{constructor(e){this.view=e;let n=this.query=e.state.field(Q).query.spec;this.commit=this.commit.bind(this),this.searchField=b("input",{value:n.search,placeholder:k(e,"Find"),"aria-label":k(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=b("input",{value:n.replace,placeholder:k(e,"Replace"),"aria-label":k(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=b("input",{type:"checkbox",name:"case",form:"",checked:n.caseSensitive,onchange:this.commit}),this.reField=b("input",{type:"checkbox",name:"re",form:"",checked:n.regexp,onchange:this.commit}),this.wordField=b("input",{type:"checkbox",name:"word",form:"",checked:n.wholeWord,onchange:this.commit});function t(s,r,l){return b("button",{class:"cm-button",name:s,onclick:r,type:"button"},l)}this.dom=b("div",{onkeydown:s=>this.keydown(s),class:"cm-search"},[this.searchField,t("next",()=>se(e),[k(e,"next")]),t("prev",()=>ie(e),[k(e,"previous")]),t("select",()=>fn(e),[k(e,"all")]),b("label",null,[this.caseField,k(e,"match case")]),b("label",null,[this.reField,k(e,"regexp")]),b("label",null,[this.wordField,k(e,"by word")]),...e.state.readOnly?[]:[b("br"),this.replaceField,t("replace",()=>Me(e),[k(e,"replace")]),t("replaceAll",()=>mn(e),[k(e,"replace all")])],b("button",{name:"close",onclick:()=>je(e),"aria-label":k(e,"close"),type:"button"},["×"])])}commit(){let e=new qe({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:j.of(e)}))}keydown(e){ht(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?ie:se)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),Me(this.view))}update(e){for(let n of e.transactions)for(let t of n.effects)t.is(j)&&!t.value.eq(this.query)&&this.setQuery(t.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(I).top}}function k(i,e){return i.state.phrase(e)}const Y=30,Z=/[\s\.,:;?!]/;function ye(i,{from:e,to:n}){let t=i.state.doc.lineAt(e),s=i.state.doc.lineAt(n).to,r=Math.max(t.from,e-Y),l=Math.min(s,n+Y),o=i.state.sliceDoc(r,l);if(r!=t.from){for(let a=0;a<Y;a++)if(!Z.test(o[a+1])&&Z.test(o[a])){o=o.slice(a);break}}if(l!=s){for(let a=o.length-1;a>o.length-Y;a--)if(!Z.test(o[a-1])&&Z.test(o[a])){o=o.slice(0,a);break}}return O.announce.of(`${i.state.phrase("current match")}. ${o} ${i.state.phrase("on line")} ${t.number}.`)}const xn=O.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),ue=[Q,ot.low(un),xn],vn=ft({String:w.string,Number:w.number,"True False":w.bool,PropertyName:w.propertyName,Null:w.null,", :":w.separator,"[ ]":w.squareBracket,"{ }":w.brace}),bn=ut.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[vn],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),yn=()=>i=>{try{JSON.parse(i.state.doc.toString())}catch(e){if(!(e instanceof SyntaxError))throw e;const n=On(e,i.state.doc);return[{from:n,message:e.message,severity:"error",to:n}]}return[]};function On(i,e){let n;return(n=i.message.match(/at position (\d+)/))?Math.min(+n[1],e.length):(n=i.message.match(/at line (\d+) column (\d+)/))?Math.min(e.line(+n[1]).from+ +n[2]-1,e.length):0}const Xe=mt.define({name:"json",parser:bn.configure({props:[pt.add({Object:ke({except:/^\s*\}/}),Array:ke({except:/^\s*\]/})}),gt.add({"Object Array":xt})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function wn(){return new dt(Xe)}class Pe{constructor(e,n,t){this.from=e,this.to=n,this.diagnostic=t}}class W{constructor(e,n,t){this.diagnostics=e,this.panel=n,this.selected=t}static init(e,n,t){let s=t.facet(R).markerFilter;s&&(e=s(e,t));let r=e.slice().sort((d,m)=>d.from-m.from||d.to-m.to),l=new _,o=[],a=0,c=t.doc.iter(),u=0,h=t.doc.length;for(let d=0;;){let m=d==r.length?null:r[d];if(!m&&!o.length)break;let g,x;if(o.length)g=a,x=o.reduce((v,y)=>Math.min(v,y.to),m&&m.from>g?m.from:1e8);else{if(g=m.from,g>h)break;x=m.to,o.push(m),d++}for(;d<r.length;){let v=r[d];if(v.from==g&&(v.to>v.from||v.to==g))o.push(v),d++,x=Math.min(v.to,x);else{x=Math.min(v.from,x);break}}x=Math.min(x,h);let S=!1;if(o.some(v=>v.from==g&&(v.to==x||x==h))&&(S=g==x,!S&&x-g<10)){let v=g-(u+c.value.length);v>0&&(c.next(v),u=g);for(let y=g;;){if(y>=x){S=!0;break}if(!c.lineBreak&&u+c.value.length>y)break;y=u+c.value.length,u+=c.value.length,c.next()}}let N=_e(o);if(S)l.add(g,g,P.widget({widget:new Qn(N),diagnostics:o.slice()}));else{let v=o.reduce((y,F)=>F.markClass?y+" "+F.markClass:y,"");l.add(g,x,P.mark({class:"cm-lintRange cm-lintRange-"+N+v,diagnostics:o.slice(),inclusiveEnd:o.some(y=>y.to>x)}))}if(a=x,a==h)break;for(let v=0;v<o.length;v++)o[v].to<=a&&o.splice(v--,1)}let f=l.finish();return new W(f,n,E(f))}}function E(i,e=null,n=0){let t=null;return i.between(n,1e9,(s,r,{spec:l})=>{if(!(e&&l.diagnostics.indexOf(e)<0))if(!t)t=new Pe(s,r,e||l.diagnostics[0]);else{if(l.diagnostics.indexOf(t.diagnostic)<0)return!1;t=new Pe(t.from,r,t.diagnostic)}}),t}function Ge(i,e){let n=e.pos,t=e.end||n,s=i.state.facet(R).hideOn(i,n,t);if(s!=null)return s;let r=i.startState.doc.lineAt(e.pos);return!!(i.effects.some(l=>l.is(re))||i.changes.touchesRange(r.from,Math.max(r.to,t)))}function ze(i,e){return i.field(C,!1)?e:e.concat(T.appendConfig.of(st))}function kn(i,e){return{effects:ze(i,[re.of(e)])}}const re=T.define(),Oe=T.define(),Fe=T.define(),C=V.define({create(){return new W(P.none,null,null)},update(i,e){if(e.docChanged&&i.diagnostics.size){let n=i.diagnostics.map(e.changes),t=null,s=i.panel;if(i.selected){let r=e.changes.mapPos(i.selected.from,1);t=E(n,i.selected.diagnostic,r)||E(n,null,r)}!n.size&&s&&e.state.facet(R).autoPanel&&(s=null),i=new W(n,s,t)}for(let n of e.effects)if(n.is(re)){let t=e.state.facet(R).autoPanel?n.value.length?X.open:null:i.panel;i=W.init(n.value,t,e.state)}else n.is(Oe)?i=new W(i.diagnostics,n.value?X.open:null,i.selected):n.is(Fe)&&(i=new W(i.diagnostics,i.panel,n.value));return i},provide:i=>[Le.from(i,e=>e.panel),O.decorations.from(i,e=>e.diagnostics)]}),Cn=P.mark({class:"cm-lintRange cm-lintRange-active"});function Sn(i,e,n){let{diagnostics:t}=i.state.field(C),s,r=-1,l=-1;t.between(e-(n<0?1:0),e+(n>0?1:0),(a,c,{spec:u})=>{if(e>=a&&e<=c&&(a==c||(e>a||n>0)&&(e<c||n<0)))return s=u.diagnostics,r=a,l=c,!1});let o=i.state.facet(R).tooltipFilter;return s&&o&&(s=o(s,i.state)),s?{pos:r,end:l,above:!0,create(){return{dom:Ye(i,s)}}}:null}function Ye(i,e){return b("ul",{class:"cm-tooltip-lint"},e.map(n=>Je(i,n,!1)))}const Mn=i=>{let e=i.state.field(C,!1);(!e||!e.panel)&&i.dispatch({effects:ze(i.state,[Oe.of(!0)])});let n=de(i,X.open);return n&&n.dom.querySelector(".cm-panel-lint ul").focus(),!0},Re=i=>{let e=i.state.field(C,!1);return!e||!e.panel?!1:(i.dispatch({effects:Oe.of(!1)}),!0)},Pn=i=>{let e=i.state.field(C,!1);if(!e)return!1;let n=i.state.selection.main,t=E(e.diagnostics,null,n.to+1);return!t&&(t=E(e.diagnostics,null,0),!t||t.from==n.from&&t.to==n.to)?!1:(i.dispatch({selection:{anchor:t.from,head:t.to},scrollIntoView:!0}),vt(i,t.from,1,{tooltip:nt,until:s=>s.docChanged||s.newSelection.main.head<t.from||s.newSelection.main.head>t.to}),!0)},Rn=[{key:"Mod-Shift-m",run:Mn,preventDefault:!0},{key:"F8",run:Pn}],Ze=Qe.fromClass(class{constructor(i){this.view=i,this.timeout=-1,this.set=!0;let{delay:e}=i.state.facet(R);this.lintTime=Date.now()+e,this.run=this.run.bind(this),this.timeout=setTimeout(this.run,e)}run(){clearTimeout(this.timeout);let i=Date.now();if(i<this.lintTime-10)this.timeout=setTimeout(this.run,this.lintTime-i);else{this.set=!1;let{state:e}=this.view,{sources:n}=e.facet(R);n.length&&Tn(n.map(t=>Promise.resolve(t(this.view))),t=>{this.view.state.doc==e.doc&&this.view.dispatch(kn(this.view.state,t.reduce((s,r)=>s.concat(r))))},t=>{wt(this.view.state,t)})}}update(i){let e=i.state.facet(R);(i.docChanged||e!=i.startState.facet(R)||e.needsRefresh&&e.needsRefresh(i))&&(this.lintTime=Date.now()+e.delay,this.set||(this.set=!0,this.timeout=setTimeout(this.run,e.delay)))}force(){this.set&&(this.lintTime=Date.now(),this.run())}destroy(){clearTimeout(this.timeout)}});function Tn(i,e,n){let t=[],s=-1;for(let r of i)r.then(l=>{t.push(l),clearTimeout(s),t.length==i.length?e(t):s=setTimeout(()=>e(t),200)},n)}const R=me.define({combine(i){return{sources:i.map(e=>e.source).filter(e=>e!=null),...pe(i.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:Te,tooltipFilter:Te,needsRefresh:(e,n)=>e?n?t=>e(t)||n(t):e:n,hideOn:(e,n)=>e?n?(t,s,r)=>e(t,s,r)||n(t,s,r):e:n,autoPanel:(e,n)=>e||n})}}});function Te(i,e){return i?e?(n,t)=>e(i(n,t),t):i:e}function An(i,e={}){return[R.of({source:i,config:e}),Ze,st]}function Ln(i){let e=i.plugin(Ze);e&&e.force()}function Ue(i){let e=[];if(i)e:for(let{name:n}of i){for(let t=0;t<n.length;t++){let s=n[t];if(/[a-zA-Z]/.test(s)&&!e.some(r=>r.toLowerCase()==s.toLowerCase())){e.push(s);continue e}}e.push("")}return e}function Je(i,e,n){var t;let s=n?Ue(e.actions):[];return b("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},b("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage(i):e.message),(t=e.actions)===null||t===void 0?void 0:t.map((r,l)=>{let o=!1,a=d=>{if(d.preventDefault(),o)return;o=!0;let m=E(i.state.field(C).diagnostics,e);m&&r.apply(i,m.from,m.to)},{name:c}=r,u=s[l]?c.indexOf(s[l]):-1,h=u<0?c:[c.slice(0,u),b("u",c.slice(u,u+1)),c.slice(u+1)],f=r.markClass?" "+r.markClass:"";return b("button",{type:"button",class:"cm-diagnosticAction"+f,onclick:a,onmousedown:a,"aria-label":` Action: ${c}${u<0?"":` (access key "${s[l]})"`}.`},h)}),e.source&&b("div",{class:"cm-diagnosticSource"},e.source))}class Qn extends Ot{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return b("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class Ae{constructor(e,n){this.diagnostic=n,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=Je(e,n,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class X{constructor(e){this.view=e,this.items=[];let n=s=>{if(!(s.ctrlKey||s.altKey||s.metaKey)){if(s.keyCode==27)Re(this.view),this.view.focus();else if(s.keyCode==38||s.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(s.keyCode==40||s.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(s.keyCode==36)this.moveSelection(0);else if(s.keyCode==35)this.moveSelection(this.items.length-1);else if(s.keyCode==13)this.view.focus();else if(s.keyCode>=65&&s.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:r}=this.items[this.selectedIndex],l=Ue(r.actions);for(let o=0;o<l.length;o++)if(l[o].toUpperCase().charCodeAt(0)==s.keyCode){let a=E(this.view.state.field(C).diagnostics,r);a&&r.actions[o].apply(e,a.from,a.to)}}else return;s.preventDefault()}},t=s=>{for(let r=0;r<this.items.length;r++)this.items[r].dom.contains(s.target)&&this.moveSelection(r)};this.list=b("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:n,onclick:t}),this.dom=b("div",{class:"cm-panel-lint"},this.list,b("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>Re(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(C).selected;if(!e)return-1;for(let n=0;n<this.items.length;n++)if(this.items[n].diagnostic==e.diagnostic)return n;return-1}update(){let{diagnostics:e,selected:n}=this.view.state.field(C),t=0,s=!1,r=null,l=new Set;for(e.between(0,this.view.state.doc.length,(o,a,{spec:c})=>{for(let u of c.diagnostics){if(l.has(u))continue;l.add(u);let h=-1,f;for(let d=t;d<this.items.length;d++)if(this.items[d].diagnostic==u){h=d;break}h<0?(f=new Ae(this.view,u),this.items.splice(t,0,f),s=!0):(f=this.items[h],h>t&&(this.items.splice(t,h-t),s=!0)),n&&f.diagnostic==n.diagnostic?f.dom.hasAttribute("aria-selected")||(f.dom.setAttribute("aria-selected","true"),r=f):f.dom.hasAttribute("aria-selected")&&f.dom.removeAttribute("aria-selected"),t++}});t<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)s=!0,this.items.pop();this.items.length==0&&(this.items.push(new Ae(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),s=!0),r?(this.list.setAttribute("aria-activedescendant",r.id),this.view.requestMeasure({key:this,read:()=>({sel:r.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:o,panel:a})=>{let c=a.height/this.list.offsetHeight;o.top<a.top?this.list.scrollTop-=(a.top-o.top)/c:o.bottom>a.bottom&&(this.list.scrollTop+=(o.bottom-a.bottom)/c)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),s&&this.sync()}sync(){let e=this.list.firstChild;function n(){let t=e;e=t.nextSibling,t.remove()}for(let t of this.items)if(t.dom.parentNode==this.list){for(;e!=t.dom;)n();e=t.dom.nextSibling}else this.list.insertBefore(t.dom,e);for(;e;)n()}moveSelection(e){if(this.selectedIndex<0)return;let n=this.view.state.field(C),t=E(n.diagnostics,this.items[e].diagnostic);t&&this.view.dispatch({selection:{anchor:t.from,head:t.to},scrollIntoView:!0,effects:Fe.of(t)})}static open(e){return new X(e)}}function J(i,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${e}>${encodeURIComponent(i)}</svg>')`}function U(i){return J(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${i}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const En=O.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:U("#f11")},".cm-lintRange-warning":{backgroundImage:U("orange")},".cm-lintRange-info":{backgroundImage:U("#999")},".cm-lintRange-hint":{backgroundImage:U("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:"#86714a80"},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:"#2e343e"}}});function Wn(i){return i=="error"?4:i=="warning"?3:i=="info"?2:1}function _e(i){let e="hint",n=1;for(let t of i){let s=Wn(t.severity);s>n&&(n=s,e=t.severity)}return e}class et extends Ne{constructor(e){super(),this.diagnostics=e,this.severity=_e(e)}toDOM(e){let n=document.createElement("div");n.className="cm-lint-marker cm-lint-marker-"+this.severity;let t=this.diagnostics,s=e.state.facet(oe).tooltipFilter;return s&&(t=s(t,e.state)),t.length&&(n.onmouseover=()=>Nn(e,n,t)),n}}function In(i,e){let n=t=>{let s=e.getBoundingClientRect();if(!(t.clientX>s.left-10&&t.clientX<s.right+10&&t.clientY>s.top-10&&t.clientY<s.bottom+10)){for(let r=t.target;r;r=r.parentNode)if(r.nodeType==1&&r.classList.contains("cm-tooltip-lint"))return;window.removeEventListener("mousemove",n),i.state.field(tt)&&i.dispatch({effects:we.of(null)})}};window.addEventListener("mousemove",n)}function Nn(i,e,n){function t(){let l=i.elementAtHeight(e.getBoundingClientRect().top+5-i.documentTop);i.coordsAtPos(l.from)&&i.dispatch({effects:we.of({pos:l.from,above:!1,clip:!1,create(){return{dom:Ye(i,n),getCoords:()=>e.getBoundingClientRect()}}})}),e.onmouseout=e.onmousemove=null,In(i,e)}let{hoverTime:s}=i.state.facet(oe),r=setTimeout(t,s);e.onmouseout=()=>{clearTimeout(r),e.onmouseout=e.onmousemove=null},e.onmousemove=()=>{clearTimeout(r),r=setTimeout(t,s)}}function Dn(i,e){let n=Object.create(null);for(let s of e){let r=i.lineAt(s.from);(n[r.from]||(n[r.from]=[])).push(s)}let t=[];for(let s in n)t.push(new et(n[s]).range(+s));return We.of(t,!0)}const Bn=Ie({class:"cm-gutter-lint",markers:i=>i.state.field(fe),widgetMarker:(i,e,n)=>{let t=[];return i.state.field(fe).between(n.from,n.to,(s,r,l)=>{s>n.from&&s<n.to&&t.push(...l.diagnostics)}),t.length?new et(t):null}}),fe=V.define({create(){return We.empty},update(i,e){i=i.map(e.changes);let n=e.state.facet(oe).markerFilter;for(let t of e.effects)if(t.is(re)){let s=t.value;n&&(s=n(s||[],e.state)),i=Dn(e.state.doc,s.slice(0))}return i}}),we=T.define(),tt=V.define({create(){return null},update(i,e){return i&&e.docChanged&&(i=Ge(e,i)?null:{...i,pos:e.changes.mapPos(i.pos)}),e.effects.reduce((n,t)=>t.is(we)?t.value:n,i)},provide:i=>bt.from(i)}),$n=O.baseTheme({".cm-gutter-lint":{width:"1.4em","& .cm-gutterElement":{padding:".2em"}},".cm-lint-marker":{width:"1em",height:"1em"},".cm-lint-marker-info":{content:J('<path fill="#aaf" stroke="#77e" stroke-width="6" stroke-linejoin="round" d="M5 5L35 5L35 35L5 35Z"/>')},".cm-lint-marker-warning":{content:J('<path fill="#fe8" stroke="#fd7" stroke-width="6" stroke-linejoin="round" d="M20 6L37 35L3 35Z"/>')},".cm-lint-marker-error":{content:J('<circle cx="20" cy="20" r="15" fill="#f87" stroke="#f43" stroke-width="6"/>')}}),nt=yt(Sn,{hideOn:Ge}),st=[C,O.decorations.compute([C],i=>{let{selected:e,panel:n}=i.field(C);return!e||!n||e.from==e.to?P.none:P.set([Cn.range(e.from,e.to)])}),nt,En],oe=me.define({combine(i){return pe(i,{hoverTime:300,markerFilter:null,tooltipFilter:null})}});function qn(i={}){return[oe.of(i),fe,Bn,$n,tt]}class H{constructor(e=[],n=H.FIELDS){this.at=e,this.format=n}static FIELDS=Yt;fieldsAt(e){let n=this.format;for(const t of e)n=n?.[t]?.fields;return n}pathTo(e,n){const t=[];for(let s=e;s;s=s.parent)if(s.name==="Property"){const r=s.getChild("PropertyName");r&&t.unshift(n.slice(r.from,r.to).replace(/^"|"$/g,""))}return[...this.at,...t]}keyCompletions(e){return Object.entries(e).map(([n,t])=>({label:`"${n}"`,apply:`"${n}": `,type:t.type==="enum"?"enum":t.type==="object"||t.type==="array"?"class":"property",detail:t.type==="enum"?t.values?.join(" | "):t.type,...t.doc===void 0?{}:{info:t.doc}}))}valueCompletions(e){return(e.values??e.suggest??[]).map(n=>({label:`"${n}"`,apply:`"${n}"`,type:"enum"}))}get source(){return e=>{const n=e.state.doc.toString(),t=kt(e.state).resolveInner(e.pos,-1),s=n.slice(0,e.pos);if(t.name==="PropertyName")return this.keys(this.pathTo(t.parent?.parent??null,n),t.from,t.to);if(t.name==="String"&&t.parent?.name==="Property")return this.values(this.fieldAt(this.pathTo(t.parent,n)),t.from,t.to);if(/:\s*$/.test(s)){const l=t.name==="Property"?t:this.propertyBefore(t,e.pos);return this.values(l?this.fieldAt(this.pathTo(l,n)):void 0,e.pos)}if(!e.explicit&&!/[{,[]\s*$/.test(s))return null;const r=t.name==="Object"?t:t.parent?.name==="Object"?t.parent:t;return this.keys(this.pathTo(r,n),e.pos)}}keys(e,n,t){const s=this.fieldsAt(e);return s===void 0?null:{from:n,...t===void 0?{}:{to:t},options:this.keyCompletions(s),validFor:H.WORD}}values(e,n,t){return e?.values===void 0&&e?.suggest===void 0?null:{from:n,...t===void 0?{}:{to:t},options:this.valueCompletions(e),validFor:H.WORD}}static WORD=/^"?[\w-]*"?$/;fieldAt(e){return this.fieldsAt(e.slice(0,-1))?.[e[e.length-1]]}propertyBefore(e,n){let t;for(let s=e.firstChild;s;s=s.nextSibling)s.name==="Property"&&s.from<n&&(t=s);return t}}class q{static at(e,n){const t=Ce(e,e.doc.length,50);if(t===null)return[];const s=[];let r=null;for(let l=t.resolveInner(n,-1);l!==null;r=l,l=l.parent)if(l.name==="Property"){const o=l.getChild("PropertyName");o!==null&&s.unshift(JSON.parse(e.sliceDoc(o.from,o.to)))}else l.name==="Array"&&r!==null&&s.unshift(q.indexOf(l,r));return s}static range(e,n){const t=Ce(e,e.doc.length,50);if(t===null)return;let s=t.topNode.firstChild,r;for(const l of n){if(s===null)return;if(typeof l=="number"){if(s.name!=="Array"||(s=q.elements(s)[l]??null,s===null))return;r={from:s.from,to:s.to}}else{if(s.name!=="Object")return;let o=null;for(let a=s.firstChild;a!==null;a=a.nextSibling){if(a.name!=="Property")continue;const c=a.getChild("PropertyName");if(c!==null&&JSON.parse(e.sliceDoc(c.from,c.to))===l){o=a;break}}if(o===null)return;r={from:o.from,to:o.to},s=o.lastChild}}return r}static elements(e){const n=[];for(let t=e.firstChild;t!==null;t=t.nextSibling)["[","]",",","LineComment","BlockComment"].includes(t.name)||n.push(t);return n}static indexOf(e,n){return q.elements(e).findIndex(t=>t.from===n.from&&t.to===n.to)}}class A{static MAX_EDITS=1500;static MAX_WORK=1e6;static changed(e,n){return A.compare(e,n).changed}static compare(e,n){let t=0;for(;t<e.length&&t<n.length&&e[t]===n[t];)t++;let s=e.length,r=n.length;for(;s>t&&r>t&&e[s-1]===n[r-1];)s--,r--;const l=e.slice(t,s),o=n.slice(t,r),a=(g,x)=>Array.from({length:Math.max(0,x-g)},(S,N)=>g+N);if(l.length===0)return{changed:a(t,t+o.length),removed:[]};if(o.length===0)return{changed:[],removed:[t]};const c=A.matchedOf(l,o);if(c===void 0){const g=A.nearOf(l,o);return{changed:g.changed.map(x=>t+x),removed:g.removed.map(x=>t+x)}}const u=[],h=[];let f=-1,d=-1;const m=(g,x)=>{g-f-1>x-d-1&&h.push(t+x)};for(let g=0;g<o.length;g++){const x=c.get(g);if(x===void 0){u.push(t+g);continue}m(x,g),f=x,d=g}return m(l.length,o.length),{changed:u,removed:h}}static LOOKAHEAD=64;static nearOf(e,n){const t=[],s=[];let r=0,l=0;const o=(a,c,u)=>{for(let h=1;h<=A.LOOKAHEAD&&c+h<a.length;h++)if(a[c+h]===u)return h;return 0};for(;r<e.length&&l<n.length;){if(e[r]===n[l]){r++,l++;continue}const a=o(n,l,e[r]),c=o(e,r,n[l]);if(a>0&&(c===0||a<=c)){for(let u=0;u<a;u++)t.push(l+u);l+=a}else c>0?(s.push(l),r+=c):(t.push(l),r++,l++)}for(;l<n.length;l++)t.push(l);return r<e.length&&s.push(n.length),{changed:t,removed:s}}static matchedOf(e,n){const t=e.length,s=n.length,r=Math.min(t+s,A.MAX_EDITS),l=r+1,o=new Int32Array(2*r+3),a=[];let c=0;for(let u=0;u<=r;u++){a.push(o.slice());for(let h=-u;h<=u;h+=2){const f=h===-u||h!==u&&o[l+h-1]<o[l+h+1];let d=f?o[l+h+1]:o[l+h-1]+1,m=d-h;for(;d<t&&m<s&&e[d]===n[m];)d++,m++;if(c+=1+d-(f?o[l+h+1]:o[l+h-1]+1),c>A.MAX_WORK)return;if(o[l+h]=d,d>=t&&m>=s)return A.walkBack(a,u,t,s,l)}}}static walkBack(e,n,t,s,r){const l=new Map;let o=t,a=s;for(let c=n;c>0;c--){const u=e[c],h=o-a,d=h===-c||h!==c&&u[r+h-1]<u[r+h+1]?h+1:h-1,m=u[r+d],g=m-d;for(;o>m&&a>g;)o--,a--,l.set(a,o);o=m,a=g}for(;o>0&&a>0;)o--,a--,l.set(a,o);return l}}class G{static CHUNK=65536;static commonPrefix(e,n){const t=Math.min(e.length,n.length),s=G.CHUNK;let r=0;for(;r+s<=t&&e.slice(r,r+s)===n.slice(r,r+s);)r+=s;for(;r<t&&e.charCodeAt(r)===n.charCodeAt(r);)r++;return r}static commonSuffix(e,n,t){const s=G.CHUNK;let r=0;for(;r+s<=t&&e.slice(e.length-r-s,e.length-r)===n.slice(n.length-r-s,n.length-r);)r+=s;for(;r<t&&e.charCodeAt(e.length-1-r)===n.charCodeAt(n.length-1-r);)r++;return r}}class p{static COLOURS=Ct.define([{tag:w.propertyName,color:"var(--file-key)"},{tag:[w.string,w.attributeValue],color:"var(--file-string)"},{tag:[w.number,w.bool,w.null],color:"var(--file-literal)"},{tag:w.invalid,color:"var(--rr0-alert)"}]);view;placement;changing=!1;cachedText;editedSinceWritten=!1;changedField;silent=!1;static SET_BASELINE=T.define();static WHOLE_TEXT=St.define();static marker(e,n){return new class extends Ne{toDOM(){const t=document.createElement("div");if(t.className=e?"cm-changed-bar":"cm-changed-none",n){const s=document.createElement("div");s.className="cm-removed-tick",t.appendChild(s)}return t}}}static JSON_LINT=yn();static CHANGED_MARKER=p.marker(!0,!1);static REMOVED_MARKER=p.marker(!1,!0);static BOTH_MARKER=p.marker(!0,!0);static REVEAL=T.define();static revealed=V.define({create:()=>null,update:(e,n)=>{for(const t of n.effects)if(t.is(p.REVEAL))return t.value;return e===null?null:{from:n.changes.mapPos(e.from,1),to:n.changes.mapPos(e.to,-1)}},provide:e=>O.decorations.compute([e],n=>{const t=n.field(e),s=new _;if(t!==null)for(let r=n.doc.lineAt(t.from).number;r<=n.doc.lineAt(Math.min(t.to,n.doc.length)).number;r++)s.add(n.doc.line(r).from,n.doc.line(r).from,P.line({class:"cm-revealed-line"}));return s.finish()})});static removedLines(e,n){return new Set([...n].map(t=>Math.min(t,e.doc.lines-1)))}static changeMarks(e){const n=o=>({text:o,doc:Ft.of(o.split(`
|
|
3
3
|
`))}),t=(o,a,c)=>{const u=c??a.doc.toString(),h=p.commonPrefix(o.text,u);if(h===o.text.length&&h===u.length)return{baseline:o,changed:new Set,removed:new Set};const f=p.commonSuffix(o.text,u,Math.min(o.text.length,u.length)-h),d=a.doc.lineAt(h).number,m=o.doc.lineAt(o.text.length-f).number,g=a.doc.lineAt(u.length-f).number,x=(y,F)=>y.sliceString(y.line(d).from,y.line(F).to).split(`
|
|
4
4
|
`),{changed:S,removed:N}=A.compare(x(o.doc,m),x(a.doc,g)),v=d-1;return{baseline:o,changed:new Set(S.map(y=>y+v)),removed:new Set(N.map(y=>y+v))}},s=V.define({create:o=>t(n(e),o),update:(o,a)=>{let c=o.baseline;for(const u of a.effects)u.is(p.SET_BASELINE)&&(c=n(u.value));return!a.docChanged&&c===o.baseline?o:t(c,a.state,a.annotation(p.WHOLE_TEXT))}}),r=O.decorations.compute([s],o=>{const a=o.field(s),c=p.removedLines(o,a.removed),u=new Set([...a.changed,...c]),h=new _;for(const f of[...u].sort((d,m)=>d-m)){if(f>=o.doc.lines)continue;const d=[a.changed.has(f)?"cm-changed-line":"",[...a.removed].some(m=>m===f)?"cm-removed-above":"",[...a.removed].some(m=>m>=o.doc.lines)&&f===o.doc.lines-1?"cm-removed-below":""].filter(Boolean).join(" ");h.add(o.doc.line(f+1).from,o.doc.line(f+1).from,P.line({class:d}))}return h.finish()}),l=Ie({class:"cm-changed-gutter",lineMarker:(o,a)=>{const c=o.state.field(s),u=o.state.doc.lineAt(a.from).number-1,h=c.changed.has(u),f=p.removedLines(o.state,c.removed).has(u);return h&&f?p.BOTH_MARKER:h?p.CHANGED_MARKER:f?p.REMOVED_MARKER:null},lineMarkerChange:o=>o.docChanged||o.transactions.some(a=>a.effects.some(c=>c.is(p.SET_BASELINE))),initialSpacer:()=>p.CHANGED_MARKER});return{field:s,extensions:[s,r,l]}}constructor(e,n,t,s,r={}){const l=[...Nt,...Dt,...Bt,...$t,...qt,...Rn,...pn,Vt],o=p.changeMarks(r.baseline??n);this.changedField=o.field,l.unshift({key:"F7",run:()=>this.gotoChange(1),preventDefault:!0},{key:"Shift-F7",run:()=>this.gotoChange(-1),preventDefault:!0}),this.view=new O({...p.rootOf(e),doc:n,extensions:[...o.extensions,p.revealed,Mt(),tn({top:!0}),ce.phrases.of(r.phrases??{}),Pt(),Rt(),Tt(),At(),Lt(),Qt(),Et(),Wt(),It.of(l),ce.tabSize.of(2),Ht(p.COLOURS,{fallback:!0}),wn(),Xe.data.of({autocomplete:new H([],r.schema).source}),qn(),An(a=>a.dom.isConnected?p.JSON_LINT(a):[]),O.contentAttributes.of({"aria-label":s}),O.theme({"&":{maxHeight:"28rem",fontSize:"0.82em",border:"1px solid color-mix(in srgb, currentColor 25%, transparent)",borderRadius:"4px"},"&.cm-focused":{outline:"2px solid color-mix(in srgb, currentColor 45%, transparent)"},".cm-scroller":{overflow:"auto",fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace"},".cm-tooltip":{backgroundColor:"Canvas",color:"CanvasText",border:"1px solid color-mix(in srgb, CanvasText 30%, transparent)"},".cm-tooltip-autocomplete > ul > li[aria-selected]":{backgroundColor:"Highlight",color:"HighlightText"},".cm-cursor, .cm-dropCursor":{borderLeftColor:"currentColor"},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground":{backgroundColor:"color-mix(in srgb, currentColor 22%, transparent)"},".cm-gutters":{backgroundColor:"transparent",color:"color-mix(in srgb, currentColor 55%, transparent)",border:"none"},".cm-changed-gutter":{width:"4px"},".cm-changed-bar":{width:"3px",height:"100%",backgroundColor:"#2f81f7"},".cm-changed-gutter .cm-gutterElement":{position:"relative"},".cm-changed-none":{width:"3px",height:"100%"},".cm-removed-tick":{position:"absolute",left:"0",top:"0",width:"0",height:"0",borderTop:"4px solid transparent",borderBottom:"4px solid transparent",borderLeft:"6px solid #e5534b"},".cm-removed-above":{boxShadow:"inset 0 2px 0 #e5534b"},".cm-removed-below":{boxShadow:"inset 0 -2px 0 #e5534b"},".cm-changed-line":{backgroundColor:"color-mix(in srgb, #2f81f7 13%, transparent)"},".cm-revealed-line":{backgroundColor:"color-mix(in srgb, #f2cc60 30%, transparent)",boxShadow:"inset 3px 0 0 #f2cc60"},".cm-panels":{backgroundColor:"color-mix(in srgb, currentColor 6%, transparent)",color:"inherit",borderColor:"color-mix(in srgb, currentColor 25%, transparent)"},".cm-panel.cm-search input, .cm-panel.cm-search button":{fontSize:"inherit",color:"inherit"},".cm-panel.cm-search input[type=text], .cm-panel.cm-search input:not([type])":{backgroundColor:"color-mix(in srgb, currentColor 8%, transparent)",border:"1px solid color-mix(in srgb, currentColor 35%, transparent)",borderRadius:"3px",padding:"2px 5px"},".cm-panel.cm-search button":{backgroundImage:"none",backgroundColor:"color-mix(in srgb, currentColor 12%, transparent)",border:"1px solid color-mix(in srgb, currentColor 35%, transparent)",borderRadius:"3px"},".cm-panel.cm-search label, .cm-panel.cm-search [name=close]":{color:"inherit"},".cm-searchMatch":{backgroundColor:"color-mix(in srgb, #f2cc60 40%, transparent)"},".cm-searchMatch-selected":{backgroundColor:"color-mix(in srgb, #f2cc60 75%, transparent)"}}),O.updateListener.of(a=>{a.docChanged&&(this.cachedText=void 0),a.docChanged&&!this.changing&&(this.editedSinceWritten=!0,t(this.text)),a.selectionSet&&!this.silent&&!this.changing&&a.view.hasFocus&&(a.state.field(p.revealed)!==null&&queueMicrotask(()=>this.view.dispatch({effects:p.REVEAL.of(null)})),r.caretMoved?.(q.at(a.state,a.state.selection.main.head)))})]}),this.placement=this.placeWhileShown(e)}placeWhileShown(e){const n=()=>{e.append(this.view.dom),Ln(this.view);const{root:s}=p.rootOf(e);s&&s!==this.view.root&&this.view.setRoot(s)};if((typeof e.checkVisibility!="function"||e.checkVisibility())&&n(),typeof ResizeObserver>"u")return;const t=new ResizeObserver(s=>{const r=s[s.length-1].contentRect.width>0;r&&!this.view.dom.isConnected?(n(),this.view.requestMeasure()):!r&&this.view.dom.isConnected&&this.view.dom.remove()});return t.observe(e),t}get text(){return this.cachedText??=this.view.state.doc.toString()}get edited(){return this.editedSinceWritten}set text(e){this.replaceText(e,!1)}replaceText(e,n){const t=this.text;if(e!==t){this.changing=!0;try{const s=Math.min(this.view.state.selection.main.head,e.length);this.view.dispatch({changes:p.changesBetween(t,e),selection:{anchor:s},annotations:[Kt.of("full"),p.WHOLE_TEXT.of(e)]})}finally{this.changing=!1}this.cachedText=e,this.editedSinceWritten=!1,n&&this.revealChange(t,p.MOST_LINES_SHOWN)}}static rootOf(e){const n=e.getRootNode();return n instanceof Document||n instanceof ShadowRoot?{root:n}:{}}static changeBetween(e,n){const t=p.commonPrefix(e,n),s=p.commonSuffix(e,n,Math.min(e.length,n.length)-t);return{from:t,to:e.length-s,insert:n.slice(t,n.length-s)}}static changesBetween(e,n){const t=p.commonPrefix(e,n);if(t===e.length&&t===n.length)return[];const s=p.commonSuffix(e,n,Math.min(e.length,n.length)-t),r=e.lastIndexOf(`
|