Add pageCount to crawls and uploads and use in frontend for page counts (#2315)
Fixes #2257 This is a follow-up to the public collections work, which adds pages to the database for uploads. All crawls and uploads now have a `pageCount` field which is populated when the item is successfully added. A new migration is also added to populate the field for existing archived items that don't have it set yet. OrgMetrics have also been modified to include `crawlPageCount` and `uploadPageCount`, and to include the total of both in `pageCount`, and all three included in the frontend org dashboard. The frontend has been updated to use `pageCount` rather than `stats.done` wherever appropriate, meaning that in archived item lists and details we now have a consistent page count for both crawls and uploads. ### New functionality - Deploy this branch - Create new crawls and uploads and verify that page count appears correctly throughout the frontend for all new crawls and uploads ### Migration - Deploy from latest main - Create some crawls and uploads - Change to this branch and re-deploy - Verify migration ran without errors in backend logs - Verify that page count has been populated successfully by checking archived items lists, crawl and upload detail pages, and dashboard to ensure there are no longer any missing page counts. --------- Co-authored-by: emma <hi@emma.cafe>
This commit is contained in:
parent
5684e896af
commit
6797b41de0
@ -17,7 +17,7 @@ from pymongo.errors import InvalidName
|
|||||||
from .migrations import BaseMigration
|
from .migrations import BaseMigration
|
||||||
|
|
||||||
|
|
||||||
CURR_DB_VERSION = "0039"
|
CURR_DB_VERSION = "0040"
|
||||||
|
|
||||||
|
|
||||||
# ============================================================================
|
# ============================================================================
|
||||||
|
|||||||
@ -0,0 +1,43 @@
|
|||||||
|
"""
|
||||||
|
Migration 0040 -- archived item pageCount
|
||||||
|
"""
|
||||||
|
|
||||||
|
from btrixcloud.migrations import BaseMigration
|
||||||
|
|
||||||
|
|
||||||
|
MIGRATION_VERSION = "0040"
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(BaseMigration):
|
||||||
|
"""Migration class."""
|
||||||
|
|
||||||
|
# pylint: disable=unused-argument
|
||||||
|
def __init__(self, mdb, **kwargs):
|
||||||
|
super().__init__(mdb, migration_version=MIGRATION_VERSION)
|
||||||
|
|
||||||
|
self.page_ops = kwargs.get("page_ops")
|
||||||
|
|
||||||
|
async def migrate_up(self):
|
||||||
|
"""Perform migration up.
|
||||||
|
|
||||||
|
Calculate and store pageCount for archived items that don't have it yet
|
||||||
|
"""
|
||||||
|
crawls_mdb = self.mdb["crawls"]
|
||||||
|
|
||||||
|
if self.page_ops is None:
|
||||||
|
print(
|
||||||
|
"Unable to set pageCount for archived items, missing page_ops",
|
||||||
|
flush=True,
|
||||||
|
)
|
||||||
|
return
|
||||||
|
|
||||||
|
async for crawl_raw in crawls_mdb.find({"pageCount": None}):
|
||||||
|
crawl_id = crawl_raw["_id"]
|
||||||
|
try:
|
||||||
|
await self.page_ops.set_archived_item_page_count(crawl_id)
|
||||||
|
# pylint: disable=broad-exception-caught
|
||||||
|
except Exception as err:
|
||||||
|
print(
|
||||||
|
f"Error saving pageCount for archived item {crawl_id}: {err}",
|
||||||
|
flush=True,
|
||||||
|
)
|
||||||
@ -797,6 +797,8 @@ class BaseCrawl(CoreCrawlable, BaseMongoModel):
|
|||||||
|
|
||||||
reviewStatus: ReviewStatus = None
|
reviewStatus: ReviewStatus = None
|
||||||
|
|
||||||
|
pageCount: Optional[int] = 0
|
||||||
|
|
||||||
filePageCount: Optional[int] = 0
|
filePageCount: Optional[int] = 0
|
||||||
errorPageCount: Optional[int] = 0
|
errorPageCount: Optional[int] = 0
|
||||||
|
|
||||||
@ -872,6 +874,7 @@ class CrawlOut(BaseMongoModel):
|
|||||||
lastQAState: Optional[str] = None
|
lastQAState: Optional[str] = None
|
||||||
lastQAStarted: Optional[datetime] = None
|
lastQAStarted: Optional[datetime] = None
|
||||||
|
|
||||||
|
pageCount: Optional[int] = 0
|
||||||
filePageCount: Optional[int] = 0
|
filePageCount: Optional[int] = 0
|
||||||
errorPageCount: Optional[int] = 0
|
errorPageCount: Optional[int] = 0
|
||||||
|
|
||||||
@ -1914,6 +1917,8 @@ class OrgMetrics(BaseModel):
|
|||||||
crawlCount: int
|
crawlCount: int
|
||||||
uploadCount: int
|
uploadCount: int
|
||||||
pageCount: int
|
pageCount: int
|
||||||
|
crawlPageCount: int
|
||||||
|
uploadPageCount: int
|
||||||
profileCount: int
|
profileCount: int
|
||||||
workflowsRunningCount: int
|
workflowsRunningCount: int
|
||||||
maxConcurrentCrawls: int
|
maxConcurrentCrawls: int
|
||||||
|
|||||||
@ -1534,6 +1534,7 @@ class CrawlOperator(BaseOperator):
|
|||||||
)
|
)
|
||||||
|
|
||||||
if state in SUCCESSFUL_STATES and crawl.oid:
|
if state in SUCCESSFUL_STATES and crawl.oid:
|
||||||
|
await self.page_ops.set_archived_item_page_count(crawl.id)
|
||||||
await self.org_ops.inc_org_bytes_stored(
|
await self.org_ops.inc_org_bytes_stored(
|
||||||
crawl.oid, status.filesAddedSize, "crawl"
|
crawl.oid, status.filesAddedSize, "crawl"
|
||||||
)
|
)
|
||||||
|
|||||||
@ -939,7 +939,10 @@ class OrgOps:
|
|||||||
archived_item_count = 0
|
archived_item_count = 0
|
||||||
crawl_count = 0
|
crawl_count = 0
|
||||||
upload_count = 0
|
upload_count = 0
|
||||||
|
|
||||||
page_count = 0
|
page_count = 0
|
||||||
|
crawl_page_count = 0
|
||||||
|
upload_page_count = 0
|
||||||
|
|
||||||
async for item_data in self.crawls_db.find({"oid": org.id}):
|
async for item_data in self.crawls_db.find({"oid": org.id}):
|
||||||
item = BaseCrawl.from_dict(item_data)
|
item = BaseCrawl.from_dict(item_data)
|
||||||
@ -948,10 +951,12 @@ class OrgOps:
|
|||||||
archived_item_count += 1
|
archived_item_count += 1
|
||||||
if item.type == "crawl":
|
if item.type == "crawl":
|
||||||
crawl_count += 1
|
crawl_count += 1
|
||||||
|
crawl_page_count += item.pageCount or 0
|
||||||
if item.type == "upload":
|
if item.type == "upload":
|
||||||
upload_count += 1
|
upload_count += 1
|
||||||
if item.stats:
|
upload_page_count += item.pageCount or 0
|
||||||
page_count += item.stats.done
|
if item.pageCount:
|
||||||
|
page_count += item.pageCount
|
||||||
|
|
||||||
profile_count = await self.profiles_db.count_documents({"oid": org.id})
|
profile_count = await self.profiles_db.count_documents({"oid": org.id})
|
||||||
workflows_running_count = await self.crawls_db.count_documents(
|
workflows_running_count = await self.crawls_db.count_documents(
|
||||||
@ -975,6 +980,8 @@ class OrgOps:
|
|||||||
"crawlCount": crawl_count,
|
"crawlCount": crawl_count,
|
||||||
"uploadCount": upload_count,
|
"uploadCount": upload_count,
|
||||||
"pageCount": page_count,
|
"pageCount": page_count,
|
||||||
|
"crawlPageCount": crawl_page_count,
|
||||||
|
"uploadPageCount": upload_page_count,
|
||||||
"profileCount": profile_count,
|
"profileCount": profile_count,
|
||||||
"workflowsRunningCount": workflows_running_count,
|
"workflowsRunningCount": workflows_running_count,
|
||||||
"maxConcurrentCrawls": max_concurrent_crawls,
|
"maxConcurrentCrawls": max_concurrent_crawls,
|
||||||
|
|||||||
@ -92,6 +92,8 @@ class PageOps:
|
|||||||
if pages_buffer:
|
if pages_buffer:
|
||||||
await self._add_pages_to_db(crawl_id, pages_buffer)
|
await self._add_pages_to_db(crawl_id, pages_buffer)
|
||||||
|
|
||||||
|
await self.set_archived_item_page_count(crawl_id)
|
||||||
|
|
||||||
print(f"Added pages for crawl {crawl_id} to db", flush=True)
|
print(f"Added pages for crawl {crawl_id} to db", flush=True)
|
||||||
# pylint: disable=broad-exception-caught, raise-missing-from
|
# pylint: disable=broad-exception-caught, raise-missing-from
|
||||||
except Exception as err:
|
except Exception as err:
|
||||||
@ -661,6 +663,14 @@ class PageOps:
|
|||||||
|
|
||||||
return crawl_type
|
return crawl_type
|
||||||
|
|
||||||
|
async def set_archived_item_page_count(self, crawl_id: str):
|
||||||
|
"""Store archived item page count in crawl document"""
|
||||||
|
_, page_count = await self.list_pages(crawl_id)
|
||||||
|
|
||||||
|
await self.crawls.find_one_and_update(
|
||||||
|
{"_id": crawl_id}, {"$set": {"pageCount": page_count}}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
# ============================================================================
|
# ============================================================================
|
||||||
# pylint: disable=too-many-arguments, too-many-locals, invalid-name, fixme
|
# pylint: disable=too-many-arguments, too-many-locals, invalid-name, fixme
|
||||||
|
|||||||
@ -877,6 +877,14 @@ def test_re_add_crawl_pages(crawler_auth_headers, default_org_id, crawler_crawl_
|
|||||||
)
|
)
|
||||||
assert r.status_code == 403
|
assert r.status_code == 403
|
||||||
|
|
||||||
|
# Check that pageCount was stored on crawl
|
||||||
|
r = requests.get(
|
||||||
|
f"{API_PREFIX}/orgs/{default_org_id}/crawls/{crawler_crawl_id}",
|
||||||
|
headers=crawler_auth_headers,
|
||||||
|
)
|
||||||
|
assert r.status_code == 200
|
||||||
|
assert r.json()["pageCount"] > 0
|
||||||
|
|
||||||
|
|
||||||
def test_crawl_page_notes(crawler_auth_headers, default_org_id, crawler_crawl_id):
|
def test_crawl_page_notes(crawler_auth_headers, default_org_id, crawler_crawl_id):
|
||||||
note_text = "testing"
|
note_text = "testing"
|
||||||
|
|||||||
@ -274,6 +274,14 @@ def test_get_upload_pages(admin_auth_headers, default_org_id, upload_id):
|
|||||||
assert page.get("modified") is None
|
assert page.get("modified") is None
|
||||||
assert page.get("approved") is None
|
assert page.get("approved") is None
|
||||||
|
|
||||||
|
# Check that pageCount was stored on upload
|
||||||
|
r = requests.get(
|
||||||
|
f"{API_PREFIX}/orgs/{default_org_id}/uploads/{upload_id}",
|
||||||
|
headers=admin_auth_headers,
|
||||||
|
)
|
||||||
|
assert r.status_code == 200
|
||||||
|
assert r.json()["pageCount"] > 0
|
||||||
|
|
||||||
|
|
||||||
def test_replace_upload(
|
def test_replace_upload(
|
||||||
admin_auth_headers, default_org_id, uploads_collection_id, upload_id
|
admin_auth_headers, default_org_id, uploads_collection_id, upload_id
|
||||||
|
|||||||
@ -252,7 +252,24 @@ export class ArchivedItemListItem extends BtrixElement {
|
|||||||
</btrix-table-cell>
|
</btrix-table-cell>
|
||||||
<btrix-table-cell class="tabular-nums">
|
<btrix-table-cell class="tabular-nums">
|
||||||
${isUpload
|
${isUpload
|
||||||
? notApplicable
|
? html`<sl-tooltip
|
||||||
|
hoist
|
||||||
|
@click=${this.onTooltipClick}
|
||||||
|
content=${msg(
|
||||||
|
str`${this.localize.number(
|
||||||
|
this.item.pageCount ? +this.item.pageCount : 0,
|
||||||
|
)}`,
|
||||||
|
)}
|
||||||
|
>
|
||||||
|
<div class="min-w-4">
|
||||||
|
${this.localize.number(
|
||||||
|
this.item.pageCount ? +this.item.pageCount : 0,
|
||||||
|
{
|
||||||
|
notation: "compact",
|
||||||
|
},
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
</sl-tooltip>`
|
||||||
: html`<sl-tooltip
|
: html`<sl-tooltip
|
||||||
hoist
|
hoist
|
||||||
@click=${this.onTooltipClick}
|
@click=${this.onTooltipClick}
|
||||||
|
|||||||
@ -191,12 +191,13 @@ export class CrawlListItem extends BtrixElement {
|
|||||||
</btrix-table-cell>
|
</btrix-table-cell>
|
||||||
<btrix-table-cell>
|
<btrix-table-cell>
|
||||||
${this.safeRender((crawl) => {
|
${this.safeRender((crawl) => {
|
||||||
const pagesComplete = +(crawl.stats?.done || 0);
|
|
||||||
const pagesFound = +(crawl.stats?.found || 0);
|
const pagesFound = +(crawl.stats?.found || 0);
|
||||||
if (crawl.finished) {
|
if (crawl.finished) {
|
||||||
|
const pagesComplete = crawl.pageCount ? +crawl.pageCount : 0;
|
||||||
return `${this.localize.number(pagesComplete, { notation: "compact" })} ${pluralOf("pages", pagesComplete)}`;
|
return `${this.localize.number(pagesComplete, { notation: "compact" })} ${pluralOf("pages", pagesComplete)}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const pagesComplete = +(crawl.stats?.done || 0);
|
||||||
return `${this.localize.number(pagesComplete, { notation: "compact" })} / ${this.localize.number(pagesFound, { notation: "compact" })} ${pluralOf("pages", pagesFound)}`;
|
return `${this.localize.number(pagesComplete, { notation: "compact" })} / ${this.localize.number(pagesFound, { notation: "compact" })} ${pluralOf("pages", pagesFound)}`;
|
||||||
})}
|
})}
|
||||||
</btrix-table-cell>
|
</btrix-table-cell>
|
||||||
|
|||||||
@ -859,7 +859,7 @@ export class ArchivedItemDetail extends BtrixElement {
|
|||||||
? html`${this.item.fileSize
|
? html`${this.item.fileSize
|
||||||
? html`${this.localize.bytes(this.item.fileSize || 0, {
|
? html`${this.localize.bytes(this.item.fileSize || 0, {
|
||||||
unitDisplay: "narrow",
|
unitDisplay: "narrow",
|
||||||
})}${this.item.stats
|
})}${this.item.stats?.done
|
||||||
? html`<span>,</span
|
? html`<span>,</span
|
||||||
><span
|
><span
|
||||||
class="tracking-tighter${this.isActive
|
class="tracking-tighter${this.isActive
|
||||||
@ -873,7 +873,18 @@ export class ArchivedItemDetail extends BtrixElement {
|
|||||||
<span
|
<span
|
||||||
>${pluralOf("pages", +this.item.stats.found)}</span
|
>${pluralOf("pages", +this.item.stats.found)}</span
|
||||||
>`
|
>`
|
||||||
: ""}`
|
: html`<span>,</span
|
||||||
|
><span>
|
||||||
|
${this.localize.number(
|
||||||
|
this.item.pageCount ? +this.item.pageCount : 0,
|
||||||
|
)}
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
>${pluralOf(
|
||||||
|
"pages",
|
||||||
|
this.item.pageCount ? +this.item.pageCount : 0,
|
||||||
|
)}</span
|
||||||
|
>`}`
|
||||||
: html`<span class="text-0-400">${msg("Unknown")}</span>`}`
|
: html`<span class="text-0-400">${msg("Unknown")}</span>`}`
|
||||||
: html`<sl-skeleton class="h-[16px] w-24"></sl-skeleton>`}
|
: html`<sl-skeleton class="h-[16px] w-24"></sl-skeleton>`}
|
||||||
</btrix-desc-list-item>
|
</btrix-desc-list-item>
|
||||||
|
|||||||
@ -28,6 +28,8 @@ type Metrics = {
|
|||||||
crawlCount: number;
|
crawlCount: number;
|
||||||
uploadCount: number;
|
uploadCount: number;
|
||||||
pageCount: number;
|
pageCount: number;
|
||||||
|
crawlPageCount: number;
|
||||||
|
uploadPageCount: number;
|
||||||
profileCount: number;
|
profileCount: number;
|
||||||
workflowsRunningCount: number;
|
workflowsRunningCount: number;
|
||||||
maxConcurrentCrawls: number;
|
maxConcurrentCrawls: number;
|
||||||
@ -236,10 +238,31 @@ export class Dashboard extends BtrixElement {
|
|||||||
pluralLabel: msg("Crawl Workflows Waiting"),
|
pluralLabel: msg("Crawl Workflows Waiting"),
|
||||||
iconProps: { name: "hourglass-split", color: "violet" },
|
iconProps: { name: "hourglass-split", color: "violet" },
|
||||||
})}
|
})}
|
||||||
|
<sl-divider
|
||||||
|
style="--spacing:var(--sl-spacing-small)"
|
||||||
|
></sl-divider>
|
||||||
${this.renderStat({
|
${this.renderStat({
|
||||||
value: metrics.pageCount,
|
value: metrics.crawlPageCount,
|
||||||
singleLabel: msg("Page Crawled"),
|
singleLabel: msg("Page Crawled"),
|
||||||
pluralLabel: msg("Pages Crawled"),
|
pluralLabel: msg("Pages Crawled"),
|
||||||
|
iconProps: {
|
||||||
|
name: "file-richtext-fill",
|
||||||
|
color: this.colors.crawls,
|
||||||
|
},
|
||||||
|
})}
|
||||||
|
${this.renderStat({
|
||||||
|
value: metrics.uploadPageCount,
|
||||||
|
singleLabel: msg("Page Uploaded"),
|
||||||
|
pluralLabel: msg("Pages Uploaded"),
|
||||||
|
iconProps: {
|
||||||
|
name: "file-richtext-fill",
|
||||||
|
color: this.colors.uploads,
|
||||||
|
},
|
||||||
|
})}
|
||||||
|
${this.renderStat({
|
||||||
|
value: metrics.pageCount,
|
||||||
|
singleLabel: msg("Page Total"),
|
||||||
|
pluralLabel: msg("Pages Total"),
|
||||||
iconProps: { name: "file-richtext-fill" },
|
iconProps: { name: "file-richtext-fill" },
|
||||||
})}
|
})}
|
||||||
</dl>
|
</dl>
|
||||||
|
|||||||
@ -164,6 +164,7 @@ type ArchivedItemBase = {
|
|||||||
activeQAStats: { done: number; found: number } | null;
|
activeQAStats: { done: number; found: number } | null;
|
||||||
lastQAState: CrawlState | null;
|
lastQAState: CrawlState | null;
|
||||||
lastQAStarted: string | null;
|
lastQAStarted: string | null;
|
||||||
|
pageCount?: number;
|
||||||
filePageCount?: number;
|
filePageCount?: number;
|
||||||
errorPageCount?: number;
|
errorPageCount?: number;
|
||||||
};
|
};
|
||||||
|
|||||||
@ -5,7 +5,6 @@ const childProcess = require("child_process");
|
|||||||
const fs = require("fs");
|
const fs = require("fs");
|
||||||
const path = require("path");
|
const path = require("path");
|
||||||
|
|
||||||
|
|
||||||
const CopyPlugin = require("copy-webpack-plugin");
|
const CopyPlugin = require("copy-webpack-plugin");
|
||||||
const ForkTsCheckerWebpackPlugin = require("fork-ts-checker-webpack-plugin");
|
const ForkTsCheckerWebpackPlugin = require("fork-ts-checker-webpack-plugin");
|
||||||
const HtmlWebpackPlugin = require("html-webpack-plugin");
|
const HtmlWebpackPlugin = require("html-webpack-plugin");
|
||||||
|
|||||||
98
frontend/xliff/de.xlf
generated
98
frontend/xliff/de.xlf
generated
@ -1597,18 +1597,6 @@
|
|||||||
<source>Are you sure you want to delete
|
<source>Are you sure you want to delete
|
||||||
<x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</source>
|
<x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s777098c61f6b518a">
|
|
||||||
<source>Start building your Collection.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s04200a50c7577767">
|
|
||||||
<source>No Collections Found</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s9f8154ea8167f3f7">
|
|
||||||
<source>Organize your crawls into a Collection to easily replay them together.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s15aac264eaeac4fc">
|
|
||||||
<source>Your organization doesn't have any Collections, yet.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s7be481b712fcb089">
|
<trans-unit id="s7be481b712fcb089">
|
||||||
<source>Search by Name</source>
|
<source>Search by Name</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -1624,9 +1612,6 @@
|
|||||||
<trans-unit id="sa3242c7021e01280">
|
<trans-unit id="sa3242c7021e01280">
|
||||||
<source>Row Actions</source>
|
<source>Row Actions</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="sf0c64ac402e1e0b9">
|
|
||||||
<source>No Collections Yet.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s5ac7d4f485d82e8c">
|
<trans-unit id="s5ac7d4f485d82e8c">
|
||||||
<source>Shareable Collection</source>
|
<source>Shareable Collection</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -3018,7 +3003,7 @@
|
|||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="saf63d34c8601dd41">
|
<trans-unit id="saf63d34c8601dd41">
|
||||||
<source>
|
<source>
|
||||||
<x id="0" equiv-text="${humanizeSchedule(workflow.schedule, { length: "short", })}"/>
|
<x id="0" equiv-text="${this.localize.number(this.item.pageCount ? +this.item.pageCount : 0)}"/>
|
||||||
</source>
|
</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s136b21dec9a221bd">
|
<trans-unit id="s136b21dec9a221bd">
|
||||||
@ -3861,9 +3846,6 @@
|
|||||||
<trans-unit id="s66da7b7937e76a3a">
|
<trans-unit id="s66da7b7937e76a3a">
|
||||||
<source>Start typing a URL...</source>
|
<source>Start typing a URL...</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="sfedd97f6911305d1">
|
|
||||||
<source>No matching pages found.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s7bec6de4e84e7519">
|
<trans-unit id="s7bec6de4e84e7519">
|
||||||
<source>ReplayWeb.Page default view</source>
|
<source>ReplayWeb.Page default view</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -3873,9 +3855,6 @@
|
|||||||
<trans-unit id="s5d948bb5f9f0a378">
|
<trans-unit id="s5d948bb5f9f0a378">
|
||||||
<source>Show a single URL snapshot</source>
|
<source>Show a single URL snapshot</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s7cdd26a53c30f8c5">
|
|
||||||
<source>Configure Replay Home</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s417b90913e05bc17">
|
<trans-unit id="s417b90913e05bc17">
|
||||||
<source>Preview</source>
|
<source>Preview</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -3992,9 +3971,6 @@
|
|||||||
<trans-unit id="s1cb226f223599f56">
|
<trans-unit id="s1cb226f223599f56">
|
||||||
<source>Add items to select a home page</source>
|
<source>Add items to select a home page</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s3879a0e50452a712">
|
|
||||||
<source>Configure Home</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s1f45d250722817c7">
|
<trans-unit id="s1f45d250722817c7">
|
||||||
<source>Edit About Section</source>
|
<source>Edit About Section</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -4166,6 +4142,78 @@
|
|||||||
<source><x id="0" equiv-text="${dateEarliest}"/> to <x id="1" equiv-text="${dateLatest}"/></source>
|
<source><x id="0" equiv-text="${dateEarliest}"/> to <x id="1" equiv-text="${dateLatest}"/></source>
|
||||||
<note from="lit-localize">Date range formatted to show full month name and year</note>
|
<note from="lit-localize">Date range formatted to show full month name and year</note>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
|
<trans-unit id="s2428027aa3e49f16">
|
||||||
|
<source>Last Crawl</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sb9e424bd9e3e2723">
|
||||||
|
<source>No Subscription</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s7da138cc56abec6c">
|
||||||
|
<source>Active Subscription</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="se3d7a30d5e45c393">
|
||||||
|
<source>Trial</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s5aff130b6d78c668">
|
||||||
|
<source>Trial Cancelled</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s2e515f3ca456f9c6">
|
||||||
|
<source>Trial Canceled</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s31e12850da47731e">
|
||||||
|
<source>Payment Failed</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1ebb825e892a8359">
|
||||||
|
<source>Choose a snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s6e8c186600b4f8a6">
|
||||||
|
<source>Enter a page URL to choose snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s537d04835ef62b2b">
|
||||||
|
<source>Search for a page in this collection</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sb48ebdd9325e370b">
|
||||||
|
<source>Page exists in collection</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s485d151771b0a33c">
|
||||||
|
<source>Page not found in collection. Please check the URL and try again</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sd632247a75e16736">
|
||||||
|
<source>No matching page found.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s6bea976384dcc959">
|
||||||
|
<source>Couldn't load preview. Try another snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1b5466748e5d9733">
|
||||||
|
<source>Configure Replay View</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s8df0435252529c62">
|
||||||
|
<source>Choose a page snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s7239e04f3953266c">
|
||||||
|
<source>Configure View</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s9b649a5c57384213">
|
||||||
|
<source>Your org doesn’t have any collections yet.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sa35d8dcb231a2c75">
|
||||||
|
<source>Collections let you easily organize, replay, and share multiple crawls.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sd42ed7f1a573d096">
|
||||||
|
<source>Page Uploaded</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s8a3aa1db56f18c55">
|
||||||
|
<source>Pages Uploaded</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="saff358234fee600c">
|
||||||
|
<source>Page Total</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1fda6e1bbcd65195">
|
||||||
|
<source>Pages Total</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s2f8856b910d3ebf8">
|
||||||
|
<source>Copy Link to Profile</source>
|
||||||
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
</xliff>
|
</xliff>
|
||||||
|
|||||||
100
frontend/xliff/es.xlf
generated
100
frontend/xliff/es.xlf
generated
@ -1766,19 +1766,6 @@
|
|||||||
<x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</source>
|
<x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</source>
|
||||||
<target state="translated">¿Está seguro que desea eliminar <x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</target>
|
<target state="translated">¿Está seguro que desea eliminar <x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s777098c61f6b518a">
|
|
||||||
<source>Start building your Collection.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit xml:space="preserve" id="s04200a50c7577767">
|
|
||||||
<source>No Collections Found</source>
|
|
||||||
<target state="translated">No se han encontrado colecciones</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s9f8154ea8167f3f7">
|
|
||||||
<source>Organize your crawls into a Collection to easily replay them together.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s15aac264eaeac4fc">
|
|
||||||
<source>Your organization doesn't have any Collections, yet.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit xml:space="preserve" id="s7be481b712fcb089">
|
<trans-unit xml:space="preserve" id="s7be481b712fcb089">
|
||||||
<source>Search by Name</source>
|
<source>Search by Name</source>
|
||||||
<target state="translated">Buscar por nombre</target>
|
<target state="translated">Buscar por nombre</target>
|
||||||
@ -1797,10 +1784,6 @@
|
|||||||
<trans-unit id="sa3242c7021e01280">
|
<trans-unit id="sa3242c7021e01280">
|
||||||
<source>Row Actions</source>
|
<source>Row Actions</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit xml:space="preserve" id="sf0c64ac402e1e0b9">
|
|
||||||
<source>No Collections Yet.</source>
|
|
||||||
<target state="translated">Aún no hay colecciones.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit xml:space="preserve" id="s5ac7d4f485d82e8c">
|
<trans-unit xml:space="preserve" id="s5ac7d4f485d82e8c">
|
||||||
<source>Shareable Collection</source>
|
<source>Shareable Collection</source>
|
||||||
<target state="translated">Colección compartible</target>
|
<target state="translated">Colección compartible</target>
|
||||||
@ -3273,7 +3256,7 @@
|
|||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit xml:space="preserve" id="saf63d34c8601dd41">
|
<trans-unit xml:space="preserve" id="saf63d34c8601dd41">
|
||||||
<source>
|
<source>
|
||||||
<x id="0" equiv-text="${humanizeSchedule(workflow.schedule, { length: "short", })}"/>
|
<x id="0" equiv-text="${this.localize.number(this.item.pageCount ? +this.item.pageCount : 0)}"/>
|
||||||
</source>
|
</source>
|
||||||
<target state="translated">
|
<target state="translated">
|
||||||
<x id="0" equiv-text="${humanizeSchedule(workflow.schedule, { length: "short", })}"/>
|
<x id="0" equiv-text="${humanizeSchedule(workflow.schedule, { length: "short", })}"/>
|
||||||
@ -4501,9 +4484,6 @@
|
|||||||
<trans-unit id="s66da7b7937e76a3a">
|
<trans-unit id="s66da7b7937e76a3a">
|
||||||
<source>Start typing a URL...</source>
|
<source>Start typing a URL...</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="sfedd97f6911305d1">
|
|
||||||
<source>No matching pages found.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s7bec6de4e84e7519">
|
<trans-unit id="s7bec6de4e84e7519">
|
||||||
<source>ReplayWeb.Page default view</source>
|
<source>ReplayWeb.Page default view</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -4513,9 +4493,6 @@
|
|||||||
<trans-unit id="s5d948bb5f9f0a378">
|
<trans-unit id="s5d948bb5f9f0a378">
|
||||||
<source>Show a single URL snapshot</source>
|
<source>Show a single URL snapshot</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s7cdd26a53c30f8c5">
|
|
||||||
<source>Configure Replay Home</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s417b90913e05bc17">
|
<trans-unit id="s417b90913e05bc17">
|
||||||
<source>Preview</source>
|
<source>Preview</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -4632,9 +4609,6 @@
|
|||||||
<trans-unit id="s1cb226f223599f56">
|
<trans-unit id="s1cb226f223599f56">
|
||||||
<source>Add items to select a home page</source>
|
<source>Add items to select a home page</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s3879a0e50452a712">
|
|
||||||
<source>Configure Home</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s1f45d250722817c7">
|
<trans-unit id="s1f45d250722817c7">
|
||||||
<source>Edit About Section</source>
|
<source>Edit About Section</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -4806,6 +4780,78 @@
|
|||||||
<source><x id="0" equiv-text="${dateEarliest}"/> to <x id="1" equiv-text="${dateLatest}"/></source>
|
<source><x id="0" equiv-text="${dateEarliest}"/> to <x id="1" equiv-text="${dateLatest}"/></source>
|
||||||
<note from="lit-localize">Date range formatted to show full month name and year</note>
|
<note from="lit-localize">Date range formatted to show full month name and year</note>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
|
<trans-unit id="s2428027aa3e49f16">
|
||||||
|
<source>Last Crawl</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sb9e424bd9e3e2723">
|
||||||
|
<source>No Subscription</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s7da138cc56abec6c">
|
||||||
|
<source>Active Subscription</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="se3d7a30d5e45c393">
|
||||||
|
<source>Trial</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s5aff130b6d78c668">
|
||||||
|
<source>Trial Cancelled</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s2e515f3ca456f9c6">
|
||||||
|
<source>Trial Canceled</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s31e12850da47731e">
|
||||||
|
<source>Payment Failed</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1ebb825e892a8359">
|
||||||
|
<source>Choose a snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s6e8c186600b4f8a6">
|
||||||
|
<source>Enter a page URL to choose snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s537d04835ef62b2b">
|
||||||
|
<source>Search for a page in this collection</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sb48ebdd9325e370b">
|
||||||
|
<source>Page exists in collection</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s485d151771b0a33c">
|
||||||
|
<source>Page not found in collection. Please check the URL and try again</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sd632247a75e16736">
|
||||||
|
<source>No matching page found.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s6bea976384dcc959">
|
||||||
|
<source>Couldn't load preview. Try another snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1b5466748e5d9733">
|
||||||
|
<source>Configure Replay View</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s8df0435252529c62">
|
||||||
|
<source>Choose a page snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s7239e04f3953266c">
|
||||||
|
<source>Configure View</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s9b649a5c57384213">
|
||||||
|
<source>Your org doesn’t have any collections yet.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sa35d8dcb231a2c75">
|
||||||
|
<source>Collections let you easily organize, replay, and share multiple crawls.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sd42ed7f1a573d096">
|
||||||
|
<source>Page Uploaded</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s8a3aa1db56f18c55">
|
||||||
|
<source>Pages Uploaded</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="saff358234fee600c">
|
||||||
|
<source>Page Total</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1fda6e1bbcd65195">
|
||||||
|
<source>Pages Total</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s2f8856b910d3ebf8">
|
||||||
|
<source>Copy Link to Profile</source>
|
||||||
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
</xliff>
|
</xliff>
|
||||||
|
|||||||
103
frontend/xliff/fr.xlf
generated
103
frontend/xliff/fr.xlf
generated
@ -2125,22 +2125,6 @@
|
|||||||
<x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</source>
|
<x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</source>
|
||||||
<target state="translated">Êtes-vous certain de vouloir supprimer <x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</target>
|
<target state="translated">Êtes-vous certain de vouloir supprimer <x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s777098c61f6b518a" xml:space="preserve">
|
|
||||||
<source>Start building your Collection.</source>
|
|
||||||
<target state="translated">Démarrer la création de la collection.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s04200a50c7577767" xml:space="preserve">
|
|
||||||
<source>No Collections Found</source>
|
|
||||||
<target state="translated">Aucune collection trouvée</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s9f8154ea8167f3f7" xml:space="preserve">
|
|
||||||
<source>Organize your crawls into a Collection to easily replay them together.</source>
|
|
||||||
<target state="translated">Organiser vos collectes en collection pour pouvoir les rejouer ensemble.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s15aac264eaeac4fc" xml:space="preserve">
|
|
||||||
<source>Your organization doesn't have any Collections, yet.</source>
|
|
||||||
<target state="translated">Votre organisation ne détient aucune collection présentement.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s7be481b712fcb089" xml:space="preserve">
|
<trans-unit id="s7be481b712fcb089" xml:space="preserve">
|
||||||
<source>Search by Name</source>
|
<source>Search by Name</source>
|
||||||
<target state="translated">Rechercher par nom</target>
|
<target state="translated">Rechercher par nom</target>
|
||||||
@ -2161,10 +2145,6 @@
|
|||||||
<source>Row Actions</source>
|
<source>Row Actions</source>
|
||||||
<target state="translated">Rangée actions</target>
|
<target state="translated">Rangée actions</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="sf0c64ac402e1e0b9" xml:space="preserve">
|
|
||||||
<source>No Collections Yet.</source>
|
|
||||||
<target state="translated">Aucune collection jusqu'à présent.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s5ac7d4f485d82e8c" xml:space="preserve">
|
<trans-unit id="s5ac7d4f485d82e8c" xml:space="preserve">
|
||||||
<source>Shareable Collection</source>
|
<source>Shareable Collection</source>
|
||||||
<target state="translated">Collection partageable</target>
|
<target state="translated">Collection partageable</target>
|
||||||
@ -3782,7 +3762,7 @@
|
|||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="saf63d34c8601dd41">
|
<trans-unit id="saf63d34c8601dd41">
|
||||||
<source>
|
<source>
|
||||||
<x id="0" equiv-text="${humanizeSchedule(workflow.schedule, { length: "short", })}"/>
|
<x id="0" equiv-text="${this.localize.number(this.item.pageCount ? +this.item.pageCount : 0)}"/>
|
||||||
</source>
|
</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s136b21dec9a221bd">
|
<trans-unit id="s136b21dec9a221bd">
|
||||||
@ -4625,9 +4605,6 @@
|
|||||||
<trans-unit id="s66da7b7937e76a3a">
|
<trans-unit id="s66da7b7937e76a3a">
|
||||||
<source>Start typing a URL...</source>
|
<source>Start typing a URL...</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="sfedd97f6911305d1">
|
|
||||||
<source>No matching pages found.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s7bec6de4e84e7519">
|
<trans-unit id="s7bec6de4e84e7519">
|
||||||
<source>ReplayWeb.Page default view</source>
|
<source>ReplayWeb.Page default view</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -4637,9 +4614,6 @@
|
|||||||
<trans-unit id="s5d948bb5f9f0a378">
|
<trans-unit id="s5d948bb5f9f0a378">
|
||||||
<source>Show a single URL snapshot</source>
|
<source>Show a single URL snapshot</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s7cdd26a53c30f8c5">
|
|
||||||
<source>Configure Replay Home</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s417b90913e05bc17">
|
<trans-unit id="s417b90913e05bc17">
|
||||||
<source>Preview</source>
|
<source>Preview</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -4756,9 +4730,6 @@
|
|||||||
<trans-unit id="s1cb226f223599f56">
|
<trans-unit id="s1cb226f223599f56">
|
||||||
<source>Add items to select a home page</source>
|
<source>Add items to select a home page</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s3879a0e50452a712">
|
|
||||||
<source>Configure Home</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s1f45d250722817c7">
|
<trans-unit id="s1f45d250722817c7">
|
||||||
<source>Edit About Section</source>
|
<source>Edit About Section</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -4930,6 +4901,78 @@
|
|||||||
<source><x id="0" equiv-text="${dateEarliest}"/> to <x id="1" equiv-text="${dateLatest}"/></source>
|
<source><x id="0" equiv-text="${dateEarliest}"/> to <x id="1" equiv-text="${dateLatest}"/></source>
|
||||||
<note from="lit-localize">Date range formatted to show full month name and year</note>
|
<note from="lit-localize">Date range formatted to show full month name and year</note>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
|
<trans-unit id="s2428027aa3e49f16">
|
||||||
|
<source>Last Crawl</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sb9e424bd9e3e2723">
|
||||||
|
<source>No Subscription</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s7da138cc56abec6c">
|
||||||
|
<source>Active Subscription</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="se3d7a30d5e45c393">
|
||||||
|
<source>Trial</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s5aff130b6d78c668">
|
||||||
|
<source>Trial Cancelled</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s2e515f3ca456f9c6">
|
||||||
|
<source>Trial Canceled</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s31e12850da47731e">
|
||||||
|
<source>Payment Failed</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1ebb825e892a8359">
|
||||||
|
<source>Choose a snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s6e8c186600b4f8a6">
|
||||||
|
<source>Enter a page URL to choose snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s537d04835ef62b2b">
|
||||||
|
<source>Search for a page in this collection</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sb48ebdd9325e370b">
|
||||||
|
<source>Page exists in collection</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s485d151771b0a33c">
|
||||||
|
<source>Page not found in collection. Please check the URL and try again</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sd632247a75e16736">
|
||||||
|
<source>No matching page found.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s6bea976384dcc959">
|
||||||
|
<source>Couldn't load preview. Try another snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1b5466748e5d9733">
|
||||||
|
<source>Configure Replay View</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s8df0435252529c62">
|
||||||
|
<source>Choose a page snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s7239e04f3953266c">
|
||||||
|
<source>Configure View</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s9b649a5c57384213">
|
||||||
|
<source>Your org doesn’t have any collections yet.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sa35d8dcb231a2c75">
|
||||||
|
<source>Collections let you easily organize, replay, and share multiple crawls.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sd42ed7f1a573d096">
|
||||||
|
<source>Page Uploaded</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s8a3aa1db56f18c55">
|
||||||
|
<source>Pages Uploaded</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="saff358234fee600c">
|
||||||
|
<source>Page Total</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1fda6e1bbcd65195">
|
||||||
|
<source>Pages Total</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s2f8856b910d3ebf8">
|
||||||
|
<source>Copy Link to Profile</source>
|
||||||
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
</xliff>
|
</xliff>
|
||||||
|
|||||||
98
frontend/xliff/pt.xlf
generated
98
frontend/xliff/pt.xlf
generated
@ -1597,18 +1597,6 @@
|
|||||||
<source>Are you sure you want to delete
|
<source>Are you sure you want to delete
|
||||||
<x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</source>
|
<x id="0" equiv-text="<strong>${this.selectedCollection?.name}</strong>"/>?</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s777098c61f6b518a">
|
|
||||||
<source>Start building your Collection.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s04200a50c7577767">
|
|
||||||
<source>No Collections Found</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s9f8154ea8167f3f7">
|
|
||||||
<source>Organize your crawls into a Collection to easily replay them together.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s15aac264eaeac4fc">
|
|
||||||
<source>Your organization doesn't have any Collections, yet.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s7be481b712fcb089">
|
<trans-unit id="s7be481b712fcb089">
|
||||||
<source>Search by Name</source>
|
<source>Search by Name</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -1624,9 +1612,6 @@
|
|||||||
<trans-unit id="sa3242c7021e01280">
|
<trans-unit id="sa3242c7021e01280">
|
||||||
<source>Row Actions</source>
|
<source>Row Actions</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="sf0c64ac402e1e0b9">
|
|
||||||
<source>No Collections Yet.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s5ac7d4f485d82e8c">
|
<trans-unit id="s5ac7d4f485d82e8c">
|
||||||
<source>Shareable Collection</source>
|
<source>Shareable Collection</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -3018,7 +3003,7 @@
|
|||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="saf63d34c8601dd41">
|
<trans-unit id="saf63d34c8601dd41">
|
||||||
<source>
|
<source>
|
||||||
<x id="0" equiv-text="${humanizeSchedule(workflow.schedule, { length: "short", })}"/>
|
<x id="0" equiv-text="${this.localize.number(this.item.pageCount ? +this.item.pageCount : 0)}"/>
|
||||||
</source>
|
</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s136b21dec9a221bd">
|
<trans-unit id="s136b21dec9a221bd">
|
||||||
@ -3861,9 +3846,6 @@
|
|||||||
<trans-unit id="s66da7b7937e76a3a">
|
<trans-unit id="s66da7b7937e76a3a">
|
||||||
<source>Start typing a URL...</source>
|
<source>Start typing a URL...</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="sfedd97f6911305d1">
|
|
||||||
<source>No matching pages found.</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s7bec6de4e84e7519">
|
<trans-unit id="s7bec6de4e84e7519">
|
||||||
<source>ReplayWeb.Page default view</source>
|
<source>ReplayWeb.Page default view</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -3873,9 +3855,6 @@
|
|||||||
<trans-unit id="s5d948bb5f9f0a378">
|
<trans-unit id="s5d948bb5f9f0a378">
|
||||||
<source>Show a single URL snapshot</source>
|
<source>Show a single URL snapshot</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s7cdd26a53c30f8c5">
|
|
||||||
<source>Configure Replay Home</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s417b90913e05bc17">
|
<trans-unit id="s417b90913e05bc17">
|
||||||
<source>Preview</source>
|
<source>Preview</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -3992,9 +3971,6 @@
|
|||||||
<trans-unit id="s1cb226f223599f56">
|
<trans-unit id="s1cb226f223599f56">
|
||||||
<source>Add items to select a home page</source>
|
<source>Add items to select a home page</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="s3879a0e50452a712">
|
|
||||||
<source>Configure Home</source>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="s1f45d250722817c7">
|
<trans-unit id="s1f45d250722817c7">
|
||||||
<source>Edit About Section</source>
|
<source>Edit About Section</source>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
@ -4166,6 +4142,78 @@
|
|||||||
<source><x id="0" equiv-text="${dateEarliest}"/> to <x id="1" equiv-text="${dateLatest}"/></source>
|
<source><x id="0" equiv-text="${dateEarliest}"/> to <x id="1" equiv-text="${dateLatest}"/></source>
|
||||||
<note from="lit-localize">Date range formatted to show full month name and year</note>
|
<note from="lit-localize">Date range formatted to show full month name and year</note>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
|
<trans-unit id="s2428027aa3e49f16">
|
||||||
|
<source>Last Crawl</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sb9e424bd9e3e2723">
|
||||||
|
<source>No Subscription</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s7da138cc56abec6c">
|
||||||
|
<source>Active Subscription</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="se3d7a30d5e45c393">
|
||||||
|
<source>Trial</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s5aff130b6d78c668">
|
||||||
|
<source>Trial Cancelled</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s2e515f3ca456f9c6">
|
||||||
|
<source>Trial Canceled</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s31e12850da47731e">
|
||||||
|
<source>Payment Failed</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1ebb825e892a8359">
|
||||||
|
<source>Choose a snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s6e8c186600b4f8a6">
|
||||||
|
<source>Enter a page URL to choose snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s537d04835ef62b2b">
|
||||||
|
<source>Search for a page in this collection</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sb48ebdd9325e370b">
|
||||||
|
<source>Page exists in collection</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s485d151771b0a33c">
|
||||||
|
<source>Page not found in collection. Please check the URL and try again</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sd632247a75e16736">
|
||||||
|
<source>No matching page found.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s6bea976384dcc959">
|
||||||
|
<source>Couldn't load preview. Try another snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1b5466748e5d9733">
|
||||||
|
<source>Configure Replay View</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s8df0435252529c62">
|
||||||
|
<source>Choose a page snapshot</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s7239e04f3953266c">
|
||||||
|
<source>Configure View</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s9b649a5c57384213">
|
||||||
|
<source>Your org doesn’t have any collections yet.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sa35d8dcb231a2c75">
|
||||||
|
<source>Collections let you easily organize, replay, and share multiple crawls.</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="sd42ed7f1a573d096">
|
||||||
|
<source>Page Uploaded</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s8a3aa1db56f18c55">
|
||||||
|
<source>Pages Uploaded</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="saff358234fee600c">
|
||||||
|
<source>Page Total</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s1fda6e1bbcd65195">
|
||||||
|
<source>Pages Total</source>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="s2f8856b910d3ebf8">
|
||||||
|
<source>Copy Link to Profile</source>
|
||||||
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
</xliff>
|
</xliff>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user