@ketvietlab/ketsuite 0.1.24 → 0.1.29
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/cache.d.ts +23 -0
- package/dist/cache.d.ts.map +1 -0
- package/dist/cache.js +71 -0
- package/dist/cache.js.map +1 -0
- package/dist/cli-watch.d.ts +4 -0
- package/dist/cli-watch.d.ts.map +1 -0
- package/dist/cli-watch.js +52 -0
- package/dist/cli-watch.js.map +1 -0
- package/dist/cli.js +45 -17
- package/dist/cli.js.map +1 -1
- package/dist/deployment.d.ts +11 -0
- package/dist/deployment.d.ts.map +1 -1
- package/dist/deployment.js +49 -39
- package/dist/deployment.js.map +1 -1
- package/dist/deployments/commerce.d.ts +4 -0
- package/dist/deployments/commerce.d.ts.map +1 -0
- package/dist/deployments/commerce.js +34 -0
- package/dist/deployments/commerce.js.map +1 -0
- package/dist/deployments/common.d.ts +54 -0
- package/dist/deployments/common.d.ts.map +1 -0
- package/dist/deployments/common.js +112 -0
- package/dist/deployments/common.js.map +1 -0
- package/dist/deployments/hospitality.d.ts +4 -0
- package/dist/deployments/hospitality.d.ts.map +1 -0
- package/dist/deployments/hospitality.js +103 -0
- package/dist/deployments/hospitality.js.map +1 -0
- package/dist/deployments/office.d.ts +4 -0
- package/dist/deployments/office.d.ts.map +1 -0
- package/dist/deployments/office.js +31 -0
- package/dist/deployments/office.js.map +1 -0
- package/dist/development.d.ts +16 -0
- package/dist/development.d.ts.map +1 -1
- package/dist/development.js +31 -0
- package/dist/development.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/modules/account_backend/index.js +364 -871
- package/dist/modules/account_backend/index.js.map +1 -1
- package/dist/modules/account_backend/screens/accounts-list.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/accounts-list.js +5 -15
- package/dist/modules/account_backend/screens/accounts-list.js.map +1 -1
- package/dist/modules/account_backend/screens/customer-invoices-list.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/customer-invoices-list.js +5 -15
- package/dist/modules/account_backend/screens/customer-invoices-list.js.map +1 -1
- package/dist/modules/account_backend/screens/journal-entries-list.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/journal-entries-list.js +5 -15
- package/dist/modules/account_backend/screens/journal-entries-list.js.map +1 -1
- package/dist/modules/account_backend/screens/journals-list.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/journals-list.js +5 -15
- package/dist/modules/account_backend/screens/journals-list.js.map +1 -1
- package/dist/modules/account_backend/screens/opening-balances.d.ts +3 -1
- package/dist/modules/account_backend/screens/opening-balances.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/opening-balances.js +11 -5
- package/dist/modules/account_backend/screens/opening-balances.js.map +1 -1
- package/dist/modules/account_backend/screens/payment-terms-list.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/payment-terms-list.js +6 -17
- package/dist/modules/account_backend/screens/payment-terms-list.js.map +1 -1
- package/dist/modules/account_backend/screens/payments-list.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/payments-list.js +5 -15
- package/dist/modules/account_backend/screens/payments-list.js.map +1 -1
- package/dist/modules/account_backend/screens/period-closes.d.ts +3 -1
- package/dist/modules/account_backend/screens/period-closes.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/period-closes.js +40 -36
- package/dist/modules/account_backend/screens/period-closes.js.map +1 -1
- package/dist/modules/account_backend/screens/taxes-list.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/taxes-list.js +5 -15
- package/dist/modules/account_backend/screens/taxes-list.js.map +1 -1
- package/dist/modules/account_backend/screens/vendor-bills-list.d.ts.map +1 -1
- package/dist/modules/account_backend/screens/vendor-bills-list.js +5 -15
- package/dist/modules/account_backend/screens/vendor-bills-list.js.map +1 -1
- package/dist/modules/account_backend/search-functions.d.ts +4 -0
- package/dist/modules/account_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/account_backend/search-functions.js +5 -0
- package/dist/modules/account_backend/search-functions.js.map +1 -0
- package/dist/modules/account_backend/search.d.ts +774 -0
- package/dist/modules/account_backend/search.d.ts.map +1 -0
- package/dist/modules/account_backend/search.js +312 -0
- package/dist/modules/account_backend/search.js.map +1 -0
- package/dist/modules/address_backend/index.d.ts.map +1 -1
- package/dist/modules/address_backend/index.js +2 -0
- package/dist/modules/address_backend/index.js.map +1 -1
- package/dist/modules/address_backend/routes.d.ts.map +1 -1
- package/dist/modules/address_backend/routes.js +32 -7
- package/dist/modules/address_backend/routes.js.map +1 -1
- package/dist/modules/address_backend/screens/catalogs-list.d.ts +3 -1
- package/dist/modules/address_backend/screens/catalogs-list.d.ts.map +1 -1
- package/dist/modules/address_backend/screens/catalogs-list.js +15 -9
- package/dist/modules/address_backend/screens/catalogs-list.js.map +1 -1
- package/dist/modules/address_backend/screens/country-browser.d.ts.map +1 -1
- package/dist/modules/address_backend/screens/country-browser.js +7 -15
- package/dist/modules/address_backend/screens/country-browser.js.map +1 -1
- package/dist/modules/address_backend/search-functions.d.ts +4 -0
- package/dist/modules/address_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/address_backend/search-functions.js +7 -0
- package/dist/modules/address_backend/search-functions.js.map +1 -0
- package/dist/modules/address_backend/search.d.ts +38 -0
- package/dist/modules/address_backend/search.d.ts.map +1 -0
- package/dist/modules/address_backend/search.js +40 -0
- package/dist/modules/address_backend/search.js.map +1 -0
- package/dist/modules/backend/catalogue.d.ts.map +1 -1
- package/dist/modules/backend/catalogue.js +16 -13
- package/dist/modules/backend/catalogue.js.map +1 -1
- package/dist/modules/backend/collection-search.d.ts +16 -0
- package/dist/modules/backend/collection-search.d.ts.map +1 -0
- package/dist/modules/backend/collection-search.js +43 -0
- package/dist/modules/backend/collection-search.js.map +1 -0
- package/dist/modules/backend/design/HANDOFF.md +1 -1
- package/dist/modules/backend/design/auth.css +61 -0
- package/dist/modules/backend/design/brand/logo-dark.png +0 -0
- package/dist/modules/backend/design/brand/logo-light.png +0 -0
- package/dist/modules/backend/design/client/backend-shell.d.mts +2 -2
- package/dist/modules/backend/design/client/backend-shell.d.mts.map +1 -1
- package/dist/modules/backend/design/client/backend-shell.mjs +1 -1
- package/dist/modules/backend/design/client/backend-shell.mjs.map +4 -4
- package/dist/modules/backend/design/client/ket-table.d.mts +10 -0
- package/dist/modules/backend/design/client/ket-table.d.mts.map +1 -0
- package/dist/modules/backend/design/client/ket-table.mjs +2 -0
- package/dist/modules/backend/design/client/ket-table.mjs.map +7 -0
- package/dist/modules/backend/design/client/lightbox.d.mts +22 -0
- package/dist/modules/backend/design/client/lightbox.d.mts.map +1 -0
- package/dist/modules/backend/design/client/lightbox.mjs +2 -0
- package/dist/modules/backend/design/client/lightbox.mjs.map +7 -0
- package/dist/modules/backend/design/client/relation-select.d.mts +12 -3
- package/dist/modules/backend/design/client/relation-select.d.mts.map +1 -1
- package/dist/modules/backend/design/client/relation-select.mjs +1 -1
- package/dist/modules/backend/design/client/relation-select.mjs.map +4 -4
- package/dist/modules/backend/design/client/search-filter.d.mts +10 -0
- package/dist/modules/backend/design/client/search-filter.d.mts.map +1 -0
- package/dist/modules/backend/design/client/search-filter.mjs +2 -0
- package/dist/modules/backend/design/client/search-filter.mjs.map +7 -0
- package/dist/modules/backend/design/content.css +43 -5
- package/dist/modules/backend/design/forms.css +99 -229
- package/dist/modules/backend/design/foundation.css +0 -51
- package/dist/modules/backend/design/lists.css +79 -7
- package/dist/modules/backend/design/user-workflow.css +0 -20
- package/dist/modules/backend/global-search.d.ts +3 -0
- package/dist/modules/backend/global-search.d.ts.map +1 -0
- package/dist/modules/backend/global-search.js +82 -0
- package/dist/modules/backend/global-search.js.map +1 -0
- package/dist/modules/backend/index.d.ts +26 -0
- package/dist/modules/backend/index.d.ts.map +1 -1
- package/dist/modules/backend/index.js +23 -0
- package/dist/modules/backend/index.js.map +1 -1
- package/dist/modules/backend/islands.d.ts +44 -1
- package/dist/modules/backend/islands.d.ts.map +1 -1
- package/dist/modules/backend/islands.js +25 -1
- package/dist/modules/backend/islands.js.map +1 -1
- package/dist/modules/backend/joints.d.ts.map +1 -1
- package/dist/modules/backend/joints.js +12 -0
- package/dist/modules/backend/joints.js.map +1 -1
- package/dist/modules/backend/ket-table.d.ts +7 -0
- package/dist/modules/backend/ket-table.d.ts.map +1 -0
- package/dist/modules/backend/ket-table.js +2 -0
- package/dist/modules/backend/ket-table.js.map +1 -0
- package/dist/modules/backend/messages.d.ts.map +1 -1
- package/dist/modules/backend/messages.js +144 -0
- package/dist/modules/backend/messages.js.map +1 -1
- package/dist/modules/backend/paging.d.ts.map +1 -1
- package/dist/modules/backend/paging.js +2 -1
- package/dist/modules/backend/paging.js.map +1 -1
- package/dist/modules/backend/relation-select.d.ts +2 -2
- package/dist/modules/backend/relation-select.d.ts.map +1 -1
- package/dist/modules/backend/routes.d.ts.map +1 -1
- package/dist/modules/backend/routes.js +2 -0
- package/dist/modules/backend/routes.js.map +1 -1
- package/dist/modules/backend/row-list.d.ts +63 -0
- package/dist/modules/backend/row-list.d.ts.map +1 -0
- package/dist/modules/backend/row-list.js +252 -0
- package/dist/modules/backend/row-list.js.map +1 -0
- package/dist/modules/backend/screen.d.ts +3 -3
- package/dist/modules/backend/screen.d.ts.map +1 -1
- package/dist/modules/backend/screen.js +6 -7
- package/dist/modules/backend/screen.js.map +1 -1
- package/dist/modules/backend/search-filter-state.d.ts +42 -0
- package/dist/modules/backend/search-filter-state.d.ts.map +1 -0
- package/dist/modules/backend/search-filter-state.js +277 -0
- package/dist/modules/backend/search-filter-state.js.map +1 -0
- package/dist/modules/backend/search-filter.d.ts +77 -0
- package/dist/modules/backend/search-filter.d.ts.map +1 -0
- package/dist/modules/backend/search-filter.js +259 -0
- package/dist/modules/backend/search-filter.js.map +1 -0
- package/dist/modules/channel_api/core.d.ts +1 -0
- package/dist/modules/channel_api/core.d.ts.map +1 -1
- package/dist/modules/channel_api/core.js.map +1 -1
- package/dist/modules/channel_api/customer.d.ts.map +1 -1
- package/dist/modules/channel_api/customer.js +4 -5
- package/dist/modules/channel_api/customer.js.map +1 -1
- package/dist/modules/company_backend/index.d.ts.map +1 -1
- package/dist/modules/company_backend/index.js +2 -0
- package/dist/modules/company_backend/index.js.map +1 -1
- package/dist/modules/company_backend/routes.d.ts.map +1 -1
- package/dist/modules/company_backend/routes.js +33 -27
- package/dist/modules/company_backend/routes.js.map +1 -1
- package/dist/modules/company_backend/screens/companies-list.d.ts +3 -3
- package/dist/modules/company_backend/screens/companies-list.d.ts.map +1 -1
- package/dist/modules/company_backend/screens/companies-list.js +18 -18
- package/dist/modules/company_backend/screens/companies-list.js.map +1 -1
- package/dist/modules/company_backend/screens/hierarchy.d.ts.map +1 -1
- package/dist/modules/company_backend/screens/hierarchy.js +1 -2
- package/dist/modules/company_backend/screens/hierarchy.js.map +1 -1
- package/dist/modules/company_backend/search-functions.d.ts +4 -0
- package/dist/modules/company_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/company_backend/search-functions.js +7 -0
- package/dist/modules/company_backend/search-functions.js.map +1 -0
- package/dist/modules/company_backend/search.d.ts +24 -0
- package/dist/modules/company_backend/search.d.ts.map +1 -0
- package/dist/modules/company_backend/search.js +24 -0
- package/dist/modules/company_backend/search.js.map +1 -0
- package/dist/modules/crm/functions/activities.js +7 -10
- package/dist/modules/crm/functions/activities.js.map +1 -1
- package/dist/modules/crm/functions/case-modal-context.d.ts +3 -0
- package/dist/modules/crm/functions/case-modal-context.d.ts.map +1 -0
- package/dist/modules/crm/functions/case-modal-context.js +156 -0
- package/dist/modules/crm/functions/case-modal-context.js.map +1 -0
- package/dist/modules/crm/functions/cases.d.ts.map +1 -1
- package/dist/modules/crm/functions/cases.js +35 -2
- package/dist/modules/crm/functions/cases.js.map +1 -1
- package/dist/modules/crm/functions/configuration.js +1 -1
- package/dist/modules/crm/functions/configuration.js.map +1 -1
- package/dist/modules/crm/functions/gamification.d.ts.map +1 -1
- package/dist/modules/crm/functions/gamification.js +11 -7
- package/dist/modules/crm/functions/gamification.js.map +1 -1
- package/dist/modules/crm/functions/index.d.ts.map +1 -1
- package/dist/modules/crm/functions/index.js +4 -0
- package/dist/modules/crm/functions/index.js.map +1 -1
- package/dist/modules/crm/functions/reporting.d.ts +3 -0
- package/dist/modules/crm/functions/reporting.d.ts.map +1 -0
- package/dist/modules/crm/functions/reporting.js +140 -0
- package/dist/modules/crm/functions/reporting.js.map +1 -0
- package/dist/modules/crm/functions/shared.d.ts +1 -0
- package/dist/modules/crm/functions/shared.d.ts.map +1 -1
- package/dist/modules/crm/functions/shared.js +17 -9
- package/dist/modules/crm/functions/shared.js.map +1 -1
- package/dist/modules/crm/messages.d.ts +8 -1
- package/dist/modules/crm/messages.d.ts.map +1 -1
- package/dist/modules/crm/messages.js +14 -0
- package/dist/modules/crm/messages.js.map +1 -1
- package/dist/modules/crm/models.d.ts.map +1 -1
- package/dist/modules/crm/models.js +7 -0
- package/dist/modules/crm/models.js.map +1 -1
- package/dist/modules/crm/operations.d.ts +4 -1
- package/dist/modules/crm/operations.d.ts.map +1 -1
- package/dist/modules/crm/operations.js +39 -7
- package/dist/modules/crm/operations.js.map +1 -1
- package/dist/modules/crm/reporting.d.ts +115 -0
- package/dist/modules/crm/reporting.d.ts.map +1 -0
- package/dist/modules/crm/reporting.js +241 -0
- package/dist/modules/crm/reporting.js.map +1 -0
- package/dist/modules/crm_backend/client/crm-case-modal.d.mts +302 -0
- package/dist/modules/crm_backend/client/crm-case-modal.d.mts.map +1 -0
- package/dist/modules/crm_backend/client/crm-case-modal.mjs +2 -0
- package/dist/modules/crm_backend/client/crm-case-modal.mjs.map +7 -0
- package/dist/modules/crm_backend/client/crm-configuration-modal.d.mts +51 -51
- package/dist/modules/crm_backend/client/crm-configuration-modal.d.mts.map +1 -1
- package/dist/modules/crm_backend/client/crm-configuration-modal.mjs +1 -1
- package/dist/modules/crm_backend/client/crm-configuration-modal.mjs.map +4 -4
- package/dist/modules/crm_backend/client/crm-kanban-view.mjs +1 -1
- package/dist/modules/crm_backend/client/crm-kanban-view.mjs.map +1 -1
- package/dist/modules/crm_backend/collection-rows.d.ts +6 -0
- package/dist/modules/crm_backend/collection-rows.d.ts.map +1 -0
- package/dist/modules/crm_backend/collection-rows.js +15 -0
- package/dist/modules/crm_backend/collection-rows.js.map +1 -0
- package/dist/modules/crm_backend/index.d.ts.map +1 -1
- package/dist/modules/crm_backend/index.js +2 -15
- package/dist/modules/crm_backend/index.js.map +1 -1
- package/dist/modules/crm_backend/islands.d.ts +1 -0
- package/dist/modules/crm_backend/islands.d.ts.map +1 -1
- package/dist/modules/crm_backend/islands.js +5 -0
- package/dist/modules/crm_backend/islands.js.map +1 -1
- package/dist/modules/crm_backend/messages.d.ts +34 -0
- package/dist/modules/crm_backend/messages.d.ts.map +1 -1
- package/dist/modules/crm_backend/messages.js +34 -0
- package/dist/modules/crm_backend/messages.js.map +1 -1
- package/dist/modules/crm_backend/modal/case-modal-view.d.ts +23 -0
- package/dist/modules/crm_backend/modal/case-modal-view.d.ts.map +1 -0
- package/dist/modules/crm_backend/modal/case-modal-view.js +640 -0
- package/dist/modules/crm_backend/modal/case-modal-view.js.map +1 -0
- package/dist/modules/crm_backend/routes.d.ts.map +1 -1
- package/dist/modules/crm_backend/routes.js +71 -15
- package/dist/modules/crm_backend/routes.js.map +1 -1
- package/dist/modules/crm_backend/screens/activity-planner.d.ts +1 -0
- package/dist/modules/crm_backend/screens/activity-planner.d.ts.map +1 -1
- package/dist/modules/crm_backend/screens/activity-planner.js +15 -11
- package/dist/modules/crm_backend/screens/activity-planner.js.map +1 -1
- package/dist/modules/crm_backend/screens/cases-list.d.ts +1 -0
- package/dist/modules/crm_backend/screens/cases-list.d.ts.map +1 -1
- package/dist/modules/crm_backend/screens/cases-list.js +17 -26
- package/dist/modules/crm_backend/screens/cases-list.js.map +1 -1
- package/dist/modules/crm_backend/screens/configuration.d.ts.map +1 -1
- package/dist/modules/crm_backend/screens/configuration.js +18 -16
- package/dist/modules/crm_backend/screens/configuration.js.map +1 -1
- package/dist/modules/crm_backend/screens/leaderboard.d.ts +2 -0
- package/dist/modules/crm_backend/screens/leaderboard.d.ts.map +1 -1
- package/dist/modules/crm_backend/screens/leaderboard.js +12 -18
- package/dist/modules/crm_backend/screens/leaderboard.js.map +1 -1
- package/dist/modules/flow/functions.d.ts.map +1 -1
- package/dist/modules/flow/functions.js +20 -39
- package/dist/modules/flow/functions.js.map +1 -1
- package/dist/modules/flow_backend/index.js +2 -1
- package/dist/modules/flow_backend/index.js.map +1 -1
- package/dist/modules/flow_backend/routes.d.ts.map +1 -1
- package/dist/modules/flow_backend/routes.js +181 -126
- package/dist/modules/flow_backend/routes.js.map +1 -1
- package/dist/modules/flow_backend/screens/all-epics.d.ts.map +1 -1
- package/dist/modules/flow_backend/screens/all-epics.js +37 -45
- package/dist/modules/flow_backend/screens/all-epics.js.map +1 -1
- package/dist/modules/flow_backend/screens/all-pages.d.ts.map +1 -1
- package/dist/modules/flow_backend/screens/all-pages.js +43 -51
- package/dist/modules/flow_backend/screens/all-pages.js.map +1 -1
- package/dist/modules/flow_backend/screens/issues.d.ts.map +1 -1
- package/dist/modules/flow_backend/screens/issues.js +68 -82
- package/dist/modules/flow_backend/screens/issues.js.map +1 -1
- package/dist/modules/flow_backend/screens/my-work.d.ts.map +1 -1
- package/dist/modules/flow_backend/screens/my-work.js +63 -69
- package/dist/modules/flow_backend/screens/my-work.js.map +1 -1
- package/dist/modules/flow_backend/screens/project-pages.d.ts.map +1 -1
- package/dist/modules/flow_backend/screens/project-pages.js +1 -2
- package/dist/modules/flow_backend/screens/project-pages.js.map +1 -1
- package/dist/modules/flow_backend/screens/projects-list.d.ts.map +1 -1
- package/dist/modules/flow_backend/screens/projects-list.js +41 -64
- package/dist/modules/flow_backend/screens/projects-list.js.map +1 -1
- package/dist/modules/flow_backend/screens/sprints.d.ts +3 -1
- package/dist/modules/flow_backend/screens/sprints.d.ts.map +1 -1
- package/dist/modules/flow_backend/screens/sprints.js +77 -73
- package/dist/modules/flow_backend/screens/sprints.js.map +1 -1
- package/dist/modules/flow_backend/search-functions.d.ts +13 -0
- package/dist/modules/flow_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/flow_backend/search-functions.js +40 -0
- package/dist/modules/flow_backend/search-functions.js.map +1 -0
- package/dist/modules/flow_backend/search.d.ts +48 -0
- package/dist/modules/flow_backend/search.d.ts.map +1 -0
- package/dist/modules/flow_backend/search.js +57 -0
- package/dist/modules/flow_backend/search.js.map +1 -0
- package/dist/modules/hospitality_billing/index.js +2 -1
- package/dist/modules/hospitality_billing/index.js.map +1 -1
- package/dist/modules/hospitality_billing/menus.js +2 -2
- package/dist/modules/hospitality_billing/menus.js.map +1 -1
- package/dist/modules/hospitality_billing/messages.d.ts.map +1 -1
- package/dist/modules/hospitality_billing/messages.js +2 -0
- package/dist/modules/hospitality_billing/messages.js.map +1 -1
- package/dist/modules/hospitality_billing/routes.d.ts.map +1 -1
- package/dist/modules/hospitality_billing/routes.js +39 -5
- package/dist/modules/hospitality_billing/routes.js.map +1 -1
- package/dist/modules/hospitality_billing/screens/billing.d.ts.map +1 -1
- package/dist/modules/hospitality_billing/screens/billing.js +21 -17
- package/dist/modules/hospitality_billing/screens/billing.js.map +1 -1
- package/dist/modules/hospitality_billing/screens/charge-rules.d.ts +4 -2
- package/dist/modules/hospitality_billing/screens/charge-rules.d.ts.map +1 -1
- package/dist/modules/hospitality_billing/screens/charge-rules.js +14 -9
- package/dist/modules/hospitality_billing/screens/charge-rules.js.map +1 -1
- package/dist/modules/hospitality_billing/screens/page-frame.d.ts +3 -1
- package/dist/modules/hospitality_billing/screens/page-frame.d.ts.map +1 -1
- package/dist/modules/hospitality_billing/screens/page-frame.js +2 -4
- package/dist/modules/hospitality_billing/screens/page-frame.js.map +1 -1
- package/dist/modules/hospitality_billing/screens/shared.d.ts +4 -4
- package/dist/modules/hospitality_billing/screens/shared.d.ts.map +1 -1
- package/dist/modules/hospitality_billing/screens/shared.js +2 -2
- package/dist/modules/hospitality_billing/screens/shared.js.map +1 -1
- package/dist/modules/hospitality_billing/search-functions.d.ts +4 -0
- package/dist/modules/hospitality_billing/search-functions.d.ts.map +1 -0
- package/dist/modules/hospitality_billing/search-functions.js +16 -0
- package/dist/modules/hospitality_billing/search-functions.js.map +1 -0
- package/dist/modules/hospitality_billing/search.d.ts +66 -0
- package/dist/modules/hospitality_billing/search.d.ts.map +1 -0
- package/dist/modules/hospitality_billing/search.js +92 -0
- package/dist/modules/hospitality_billing/search.js.map +1 -0
- package/dist/modules/hospitality_core/content.d.ts.map +1 -1
- package/dist/modules/hospitality_core/content.js +3 -0
- package/dist/modules/hospitality_core/content.js.map +1 -1
- package/dist/modules/hospitality_core/housekeeping.d.ts.map +1 -1
- package/dist/modules/hospitality_core/housekeeping.js +13 -4
- package/dist/modules/hospitality_core/housekeeping.js.map +1 -1
- package/dist/modules/hospitality_core/index.d.ts.map +1 -1
- package/dist/modules/hospitality_core/index.js +2 -0
- package/dist/modules/hospitality_core/index.js.map +1 -1
- package/dist/modules/hospitality_core/menus.d.ts.map +1 -1
- package/dist/modules/hospitality_core/menus.js +27 -30
- package/dist/modules/hospitality_core/menus.js.map +1 -1
- package/dist/modules/hospitality_core/messages.d.ts.map +1 -1
- package/dist/modules/hospitality_core/messages.js +4 -0
- package/dist/modules/hospitality_core/messages.js.map +1 -1
- package/dist/modules/hospitality_core/routes.d.ts.map +1 -1
- package/dist/modules/hospitality_core/routes.js +135 -47
- package/dist/modules/hospitality_core/routes.js.map +1 -1
- package/dist/modules/hospitality_core/screens/amenities.d.ts +4 -2
- package/dist/modules/hospitality_core/screens/amenities.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/amenities.js +9 -5
- package/dist/modules/hospitality_core/screens/amenities.js.map +1 -1
- package/dist/modules/hospitality_core/screens/cleaning-tasks.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/cleaning-tasks.js +45 -30
- package/dist/modules/hospitality_core/screens/cleaning-tasks.js.map +1 -1
- package/dist/modules/hospitality_core/screens/folios.d.ts +4 -2
- package/dist/modules/hospitality_core/screens/folios.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/folios.js +10 -4
- package/dist/modules/hospitality_core/screens/folios.js.map +1 -1
- package/dist/modules/hospitality_core/screens/page-frame.d.ts +3 -1
- package/dist/modules/hospitality_core/screens/page-frame.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/page-frame.js +4 -7
- package/dist/modules/hospitality_core/screens/page-frame.js.map +1 -1
- package/dist/modules/hospitality_core/screens/policies.d.ts +4 -2
- package/dist/modules/hospitality_core/screens/policies.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/policies.js +9 -5
- package/dist/modules/hospitality_core/screens/policies.js.map +1 -1
- package/dist/modules/hospitality_core/screens/properties.d.ts +4 -2
- package/dist/modules/hospitality_core/screens/properties.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/properties.js +49 -42
- package/dist/modules/hospitality_core/screens/properties.js.map +1 -1
- package/dist/modules/hospitality_core/screens/rate-plans.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/rate-plans.js +19 -15
- package/dist/modules/hospitality_core/screens/rate-plans.js.map +1 -1
- package/dist/modules/hospitality_core/screens/reservations.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/reservations.js +26 -19
- package/dist/modules/hospitality_core/screens/reservations.js.map +1 -1
- package/dist/modules/hospitality_core/screens/room-types.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/room-types.js +23 -19
- package/dist/modules/hospitality_core/screens/room-types.js.map +1 -1
- package/dist/modules/hospitality_core/screens/rooms.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/rooms.js +26 -19
- package/dist/modules/hospitality_core/screens/rooms.js.map +1 -1
- package/dist/modules/hospitality_core/screens/shared.d.ts +4 -4
- package/dist/modules/hospitality_core/screens/shared.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/shared.js +2 -2
- package/dist/modules/hospitality_core/screens/shared.js.map +1 -1
- package/dist/modules/hospitality_core/screens/stays.d.ts +4 -2
- package/dist/modules/hospitality_core/screens/stays.d.ts.map +1 -1
- package/dist/modules/hospitality_core/screens/stays.js +10 -4
- package/dist/modules/hospitality_core/screens/stays.js.map +1 -1
- package/dist/modules/hospitality_core/search-functions.d.ts +10 -0
- package/dist/modules/hospitality_core/search-functions.d.ts.map +1 -0
- package/dist/modules/hospitality_core/search-functions.js +17 -0
- package/dist/modules/hospitality_core/search-functions.js.map +1 -0
- package/dist/modules/hospitality_core/search.d.ts +218 -0
- package/dist/modules/hospitality_core/search.d.ts.map +1 -0
- package/dist/modules/hospitality_core/search.js +201 -0
- package/dist/modules/hospitality_core/search.js.map +1 -0
- package/dist/modules/hr_backend/index.d.ts.map +1 -1
- package/dist/modules/hr_backend/index.js +2 -0
- package/dist/modules/hr_backend/index.js.map +1 -1
- package/dist/modules/hr_backend/routes.d.ts.map +1 -1
- package/dist/modules/hr_backend/routes.js +55 -71
- package/dist/modules/hr_backend/routes.js.map +1 -1
- package/dist/modules/hr_backend/screens/employees-list.d.ts +3 -1
- package/dist/modules/hr_backend/screens/employees-list.d.ts.map +1 -1
- package/dist/modules/hr_backend/screens/employees-list.js +14 -12
- package/dist/modules/hr_backend/screens/employees-list.js.map +1 -1
- package/dist/modules/hr_backend/screens/leaves-list.d.ts +3 -1
- package/dist/modules/hr_backend/screens/leaves-list.d.ts.map +1 -1
- package/dist/modules/hr_backend/screens/leaves-list.js +11 -10
- package/dist/modules/hr_backend/screens/leaves-list.js.map +1 -1
- package/dist/modules/hr_backend/search-functions.d.ts +4 -0
- package/dist/modules/hr_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/hr_backend/search-functions.js +8 -0
- package/dist/modules/hr_backend/search-functions.js.map +1 -0
- package/dist/modules/hr_backend/search.d.ts +73 -0
- package/dist/modules/hr_backend/search.d.ts.map +1 -0
- package/dist/modules/hr_backend/search.js +67 -0
- package/dist/modules/hr_backend/search.js.map +1 -0
- package/dist/modules/livedoc/islands.d.ts +1 -0
- package/dist/modules/livedoc/islands.d.ts.map +1 -1
- package/dist/modules/loyalty_backend/index.js +176 -215
- package/dist/modules/loyalty_backend/index.js.map +1 -1
- package/dist/modules/loyalty_backend/screens/index.d.ts.map +1 -1
- package/dist/modules/loyalty_backend/screens/index.js +321 -326
- package/dist/modules/loyalty_backend/screens/index.js.map +1 -1
- package/dist/modules/loyalty_backend/screens/page-frame.d.ts +6 -3
- package/dist/modules/loyalty_backend/screens/page-frame.d.ts.map +1 -1
- package/dist/modules/loyalty_backend/screens/page-frame.js +3 -3
- package/dist/modules/loyalty_backend/screens/page-frame.js.map +1 -1
- package/dist/modules/loyalty_backend/search-functions.d.ts +4 -0
- package/dist/modules/loyalty_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/loyalty_backend/search-functions.js +11 -0
- package/dist/modules/loyalty_backend/search-functions.js.map +1 -0
- package/dist/modules/loyalty_backend/search.d.ts +33 -0
- package/dist/modules/loyalty_backend/search.d.ts.map +1 -0
- package/dist/modules/loyalty_backend/search.js +85 -0
- package/dist/modules/loyalty_backend/search.js.map +1 -0
- package/dist/modules/manufacturing_backend/index.d.ts.map +1 -1
- package/dist/modules/manufacturing_backend/index.js +14 -0
- package/dist/modules/manufacturing_backend/index.js.map +1 -1
- package/dist/modules/manufacturing_backend/routes.d.ts.map +1 -1
- package/dist/modules/manufacturing_backend/routes.js +74 -20
- package/dist/modules/manufacturing_backend/routes.js.map +1 -1
- package/dist/modules/manufacturing_backend/screens/boms-list.d.ts +3 -1
- package/dist/modules/manufacturing_backend/screens/boms-list.d.ts.map +1 -1
- package/dist/modules/manufacturing_backend/screens/boms-list.js +12 -11
- package/dist/modules/manufacturing_backend/screens/boms-list.js.map +1 -1
- package/dist/modules/manufacturing_backend/screens/orders-list.d.ts +3 -1
- package/dist/modules/manufacturing_backend/screens/orders-list.d.ts.map +1 -1
- package/dist/modules/manufacturing_backend/screens/orders-list.js +13 -12
- package/dist/modules/manufacturing_backend/screens/orders-list.js.map +1 -1
- package/dist/modules/manufacturing_backend/screens/work-centers-list.d.ts +3 -1
- package/dist/modules/manufacturing_backend/screens/work-centers-list.d.ts.map +1 -1
- package/dist/modules/manufacturing_backend/screens/work-centers-list.js +13 -12
- package/dist/modules/manufacturing_backend/screens/work-centers-list.js.map +1 -1
- package/dist/modules/manufacturing_backend/search-functions.d.ts +4 -0
- package/dist/modules/manufacturing_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/manufacturing_backend/search-functions.js +9 -0
- package/dist/modules/manufacturing_backend/search-functions.js.map +1 -0
- package/dist/modules/manufacturing_backend/search.d.ts +99 -0
- package/dist/modules/manufacturing_backend/search.d.ts.map +1 -0
- package/dist/modules/manufacturing_backend/search.js +75 -0
- package/dist/modules/manufacturing_backend/search.js.map +1 -0
- package/dist/modules/oauth_backend/index.d.ts.map +1 -1
- package/dist/modules/oauth_backend/index.js +2 -0
- package/dist/modules/oauth_backend/index.js.map +1 -1
- package/dist/modules/oauth_backend/routes.d.ts.map +1 -1
- package/dist/modules/oauth_backend/routes.js +33 -2
- package/dist/modules/oauth_backend/routes.js.map +1 -1
- package/dist/modules/oauth_backend/screens/index.d.ts +7 -3
- package/dist/modules/oauth_backend/screens/index.d.ts.map +1 -1
- package/dist/modules/oauth_backend/screens/index.js +113 -103
- package/dist/modules/oauth_backend/screens/index.js.map +1 -1
- package/dist/modules/oauth_backend/search-functions.d.ts +4 -0
- package/dist/modules/oauth_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/oauth_backend/search-functions.js +8 -0
- package/dist/modules/oauth_backend/search-functions.js.map +1 -0
- package/dist/modules/oauth_backend/search.d.ts +68 -0
- package/dist/modules/oauth_backend/search.d.ts.map +1 -0
- package/dist/modules/oauth_backend/search.js +69 -0
- package/dist/modules/oauth_backend/search.js.map +1 -0
- package/dist/modules/partner/functions.d.ts.map +1 -1
- package/dist/modules/partner/functions.js +121 -23
- package/dist/modules/partner/functions.js.map +1 -1
- package/dist/modules/partner_backend/functions.d.ts +13 -0
- package/dist/modules/partner_backend/functions.d.ts.map +1 -0
- package/dist/modules/partner_backend/functions.js +56 -0
- package/dist/modules/partner_backend/functions.js.map +1 -0
- package/dist/modules/partner_backend/index.d.ts.map +1 -1
- package/dist/modules/partner_backend/index.js +28 -6
- package/dist/modules/partner_backend/index.js.map +1 -1
- package/dist/modules/partner_backend/routes.d.ts.map +1 -1
- package/dist/modules/partner_backend/routes.js +269 -86
- package/dist/modules/partner_backend/routes.js.map +1 -1
- package/dist/modules/partner_backend/screens/index.d.ts +1 -1
- package/dist/modules/partner_backend/screens/index.d.ts.map +1 -1
- package/dist/modules/partner_backend/screens/list.d.ts +3 -4
- package/dist/modules/partner_backend/screens/list.d.ts.map +1 -1
- package/dist/modules/partner_backend/screens/list.js +13 -92
- package/dist/modules/partner_backend/screens/list.js.map +1 -1
- package/dist/modules/partner_backend/screens/types.d.ts +0 -11
- package/dist/modules/partner_backend/screens/types.d.ts.map +1 -1
- package/dist/modules/pos_backend/index.js +34 -9
- package/dist/modules/pos_backend/index.js.map +1 -1
- package/dist/modules/pos_backend/screens.d.ts +4 -2
- package/dist/modules/pos_backend/screens.d.ts.map +1 -1
- package/dist/modules/pos_backend/screens.js +105 -96
- package/dist/modules/pos_backend/screens.js.map +1 -1
- package/dist/modules/pos_backend/search-functions.d.ts +4 -0
- package/dist/modules/pos_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/pos_backend/search-functions.js +7 -0
- package/dist/modules/pos_backend/search-functions.js.map +1 -0
- package/dist/modules/pos_backend/search.d.ts +41 -0
- package/dist/modules/pos_backend/search.d.ts.map +1 -0
- package/dist/modules/pos_backend/search.js +33 -0
- package/dist/modules/pos_backend/search.js.map +1 -0
- package/dist/modules/pricing_backend/index.js +31 -2
- package/dist/modules/pricing_backend/index.js.map +1 -1
- package/dist/modules/pricing_backend/screens/pricelists-list.d.ts +3 -1
- package/dist/modules/pricing_backend/screens/pricelists-list.d.ts.map +1 -1
- package/dist/modules/pricing_backend/screens/pricelists-list.js +14 -12
- package/dist/modules/pricing_backend/screens/pricelists-list.js.map +1 -1
- package/dist/modules/pricing_backend/search-functions.d.ts +4 -0
- package/dist/modules/pricing_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/pricing_backend/search-functions.js +11 -0
- package/dist/modules/pricing_backend/search-functions.js.map +1 -0
- package/dist/modules/pricing_backend/search.d.ts +41 -0
- package/dist/modules/pricing_backend/search.d.ts.map +1 -0
- package/dist/modules/pricing_backend/search.js +34 -0
- package/dist/modules/pricing_backend/search.js.map +1 -0
- package/dist/modules/product/attribute-draft.d.ts +3 -0
- package/dist/modules/product/attribute-draft.d.ts.map +1 -0
- package/dist/modules/product/attribute-draft.js +126 -0
- package/dist/modules/product/attribute-draft.js.map +1 -0
- package/dist/modules/product/attribute-modal-context.d.ts +4 -0
- package/dist/modules/product/attribute-modal-context.d.ts.map +1 -0
- package/dist/modules/product/attribute-modal-context.js +57 -0
- package/dist/modules/product/attribute-modal-context.js.map +1 -0
- package/dist/modules/product/attribute-modal-labels.d.ts +3 -0
- package/dist/modules/product/attribute-modal-labels.d.ts.map +1 -0
- package/dist/modules/product/attribute-modal-labels.js +30 -0
- package/dist/modules/product/attribute-modal-labels.js.map +1 -0
- package/dist/modules/product/functions.d.ts.map +1 -1
- package/dist/modules/product/functions.js +7 -1
- package/dist/modules/product/functions.js.map +1 -1
- package/dist/modules/product/messages.d.ts.map +1 -1
- package/dist/modules/product/messages.js +24 -0
- package/dist/modules/product/messages.js.map +1 -1
- package/dist/modules/product/models.d.ts.map +1 -1
- package/dist/modules/product/models.js +14 -2
- package/dist/modules/product/models.js.map +1 -1
- package/dist/modules/product/product-modal-context.d.ts.map +1 -1
- package/dist/modules/product/product-modal-context.js +22 -30
- package/dist/modules/product/product-modal-context.js.map +1 -1
- package/dist/modules/product/product-record-tabs.d.ts +14 -0
- package/dist/modules/product/product-record-tabs.d.ts.map +1 -0
- package/dist/modules/product/product-record-tabs.js +23 -0
- package/dist/modules/product/product-record-tabs.js.map +1 -0
- package/dist/modules/product/record-images.d.ts +12 -0
- package/dist/modules/product/record-images.d.ts.map +1 -0
- package/dist/modules/product/record-images.js +37 -0
- package/dist/modules/product/record-images.js.map +1 -0
- package/dist/modules/product/search.d.ts +3 -0
- package/dist/modules/product/search.d.ts.map +1 -1
- package/dist/modules/product/search.js +4 -0
- package/dist/modules/product/search.js.map +1 -1
- package/dist/modules/product/variant-setup.d.ts +46 -0
- package/dist/modules/product/variant-setup.d.ts.map +1 -0
- package/dist/modules/product/variant-setup.js +444 -0
- package/dist/modules/product/variant-setup.js.map +1 -0
- package/dist/modules/product_backend/attribute-search-state.d.ts +22 -0
- package/dist/modules/product_backend/attribute-search-state.d.ts.map +1 -0
- package/dist/modules/product_backend/attribute-search-state.js +62 -0
- package/dist/modules/product_backend/attribute-search-state.js.map +1 -0
- package/dist/modules/product_backend/attributes-search.d.ts +10 -0
- package/dist/modules/product_backend/attributes-search.d.ts.map +1 -0
- package/dist/modules/product_backend/attributes-search.js +67 -0
- package/dist/modules/product_backend/attributes-search.js.map +1 -0
- package/dist/modules/product_backend/client/attribute-modal.d.mts +62 -0
- package/dist/modules/product_backend/client/attribute-modal.d.mts.map +1 -0
- package/dist/modules/product_backend/client/attribute-modal.mjs +2 -0
- package/dist/modules/product_backend/client/attribute-modal.mjs.map +7 -0
- package/dist/modules/product_backend/client/product-modal.d.mts +46 -44
- package/dist/modules/product_backend/client/product-modal.d.mts.map +1 -1
- package/dist/modules/product_backend/client/product-modal.mjs +1 -1
- package/dist/modules/product_backend/client/product-modal.mjs.map +4 -4
- package/dist/modules/product_backend/client/product.css +262 -0
- package/dist/modules/product_backend/client/variant-editor.d.mts +16 -0
- package/dist/modules/product_backend/client/variant-editor.d.mts.map +1 -0
- package/dist/modules/product_backend/client/variant-editor.mjs +2 -0
- package/dist/modules/product_backend/client/variant-editor.mjs.map +7 -0
- package/dist/modules/product_backend/functions.d.ts +3 -0
- package/dist/modules/product_backend/functions.d.ts.map +1 -0
- package/dist/modules/product_backend/functions.js +29 -0
- package/dist/modules/product_backend/functions.js.map +1 -0
- package/dist/modules/product_backend/index.d.ts.map +1 -1
- package/dist/modules/product_backend/index.js +236 -5
- package/dist/modules/product_backend/index.js.map +1 -1
- package/dist/modules/product_backend/islands.d.ts +20 -0
- package/dist/modules/product_backend/islands.d.ts.map +1 -1
- package/dist/modules/product_backend/islands.js +25 -0
- package/dist/modules/product_backend/islands.js.map +1 -1
- package/dist/modules/product_backend/menus.d.ts.map +1 -1
- package/dist/modules/product_backend/menus.js +4 -5
- package/dist/modules/product_backend/menus.js.map +1 -1
- package/dist/modules/product_backend/modal/attribute-modal-view.d.ts +25 -0
- package/dist/modules/product_backend/modal/attribute-modal-view.d.ts.map +1 -0
- package/dist/modules/product_backend/modal/attribute-modal-view.js +180 -0
- package/dist/modules/product_backend/modal/attribute-modal-view.js.map +1 -0
- package/dist/modules/product_backend/modal/product-modal-view.d.ts +31 -6
- package/dist/modules/product_backend/modal/product-modal-view.d.ts.map +1 -1
- package/dist/modules/product_backend/modal/product-modal-view.js +342 -252
- package/dist/modules/product_backend/modal/product-modal-view.js.map +1 -1
- package/dist/modules/product_backend/routes.d.ts.map +1 -1
- package/dist/modules/product_backend/routes.js +159 -200
- package/dist/modules/product_backend/routes.js.map +1 -1
- package/dist/modules/product_backend/screens/attributes.d.ts +18 -4
- package/dist/modules/product_backend/screens/attributes.d.ts.map +1 -1
- package/dist/modules/product_backend/screens/attributes.js +71 -63
- package/dist/modules/product_backend/screens/attributes.js.map +1 -1
- package/dist/modules/product_backend/screens/list.d.ts +13 -7
- package/dist/modules/product_backend/screens/list.d.ts.map +1 -1
- package/dist/modules/product_backend/screens/list.js +38 -57
- package/dist/modules/product_backend/screens/list.js.map +1 -1
- package/dist/modules/product_media/functions.d.ts.map +1 -1
- package/dist/modules/product_media/functions.js +2 -0
- package/dist/modules/product_media/functions.js.map +1 -1
- package/dist/modules/purchase_backend/index.js +116 -208
- package/dist/modules/purchase_backend/index.js.map +1 -1
- package/dist/modules/purchase_backend/screens/order-list-shared.js +2 -2
- package/dist/modules/purchase_backend/screens/order-list-shared.js.map +1 -1
- package/dist/modules/purchase_backend/screens/purchase-orders-list.d.ts.map +1 -1
- package/dist/modules/purchase_backend/screens/purchase-orders-list.js +11 -13
- package/dist/modules/purchase_backend/screens/purchase-orders-list.js.map +1 -1
- package/dist/modules/purchase_backend/screens/rfqs-list.d.ts.map +1 -1
- package/dist/modules/purchase_backend/screens/rfqs-list.js +10 -15
- package/dist/modules/purchase_backend/screens/rfqs-list.js.map +1 -1
- package/dist/modules/purchase_backend/screens/vendor-pricelists-list.d.ts.map +1 -1
- package/dist/modules/purchase_backend/screens/vendor-pricelists-list.js +11 -21
- package/dist/modules/purchase_backend/screens/vendor-pricelists-list.js.map +1 -1
- package/dist/modules/purchase_backend/search-functions.d.ts +4 -0
- package/dist/modules/purchase_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/purchase_backend/search-functions.js +9 -0
- package/dist/modules/purchase_backend/search-functions.js.map +1 -0
- package/dist/modules/purchase_backend/search.d.ts +128 -0
- package/dist/modules/purchase_backend/search.d.ts.map +1 -0
- package/dist/modules/purchase_backend/search.js +106 -0
- package/dist/modules/purchase_backend/search.js.map +1 -0
- package/dist/modules/sale_backend/index.js +83 -32
- package/dist/modules/sale_backend/index.js.map +1 -1
- package/dist/modules/sale_backend/order-collection.d.ts +7 -0
- package/dist/modules/sale_backend/order-collection.d.ts.map +1 -0
- package/dist/modules/sale_backend/order-collection.js +27 -0
- package/dist/modules/sale_backend/order-collection.js.map +1 -0
- package/dist/modules/sale_backend/screens/invoicing-policies-list.d.ts.map +1 -1
- package/dist/modules/sale_backend/screens/invoicing-policies-list.js +10 -14
- package/dist/modules/sale_backend/screens/invoicing-policies-list.js.map +1 -1
- package/dist/modules/sale_backend/screens/overview.js +2 -2
- package/dist/modules/sale_backend/screens/overview.js.map +1 -1
- package/dist/modules/sale_backend/screens/quotations-list.d.ts.map +1 -1
- package/dist/modules/sale_backend/screens/quotations-list.js +12 -23
- package/dist/modules/sale_backend/screens/quotations-list.js.map +1 -1
- package/dist/modules/sale_backend/screens/sales-orders-list.d.ts.map +1 -1
- package/dist/modules/sale_backend/screens/sales-orders-list.js +11 -20
- package/dist/modules/sale_backend/screens/sales-orders-list.js.map +1 -1
- package/dist/modules/sale_backend/search-functions.d.ts +4 -0
- package/dist/modules/sale_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/sale_backend/search-functions.js +9 -0
- package/dist/modules/sale_backend/search-functions.js.map +1 -0
- package/dist/modules/sale_backend/search.d.ts +146 -0
- package/dist/modules/sale_backend/search.d.ts.map +1 -0
- package/dist/modules/sale_backend/search.js +112 -0
- package/dist/modules/sale_backend/search.js.map +1 -0
- package/dist/modules/stock_backend/functions.d.ts +10 -0
- package/dist/modules/stock_backend/functions.d.ts.map +1 -0
- package/dist/modules/stock_backend/functions.js +19 -0
- package/dist/modules/stock_backend/functions.js.map +1 -0
- package/dist/modules/stock_backend/index.js +33 -10
- package/dist/modules/stock_backend/index.js.map +1 -1
- package/dist/modules/stock_backend/routes.d.ts.map +1 -1
- package/dist/modules/stock_backend/routes.js +168 -59
- package/dist/modules/stock_backend/routes.js.map +1 -1
- package/dist/modules/stock_backend/screens/locations-list.d.ts.map +1 -1
- package/dist/modules/stock_backend/screens/locations-list.js +11 -22
- package/dist/modules/stock_backend/screens/locations-list.js.map +1 -1
- package/dist/modules/stock_backend/screens/lots-list.d.ts.map +1 -1
- package/dist/modules/stock_backend/screens/lots-list.js +11 -13
- package/dist/modules/stock_backend/screens/lots-list.js.map +1 -1
- package/dist/modules/stock_backend/screens/picking-types-list.d.ts.map +1 -1
- package/dist/modules/stock_backend/screens/picking-types-list.js +11 -22
- package/dist/modules/stock_backend/screens/picking-types-list.js.map +1 -1
- package/dist/modules/stock_backend/screens/replenishment-list.d.ts.map +1 -1
- package/dist/modules/stock_backend/screens/replenishment-list.js +11 -22
- package/dist/modules/stock_backend/screens/replenishment-list.js.map +1 -1
- package/dist/modules/stock_backend/screens/stock-routes-list.d.ts.map +1 -1
- package/dist/modules/stock_backend/screens/stock-routes-list.js +12 -23
- package/dist/modules/stock_backend/screens/stock-routes-list.js.map +1 -1
- package/dist/modules/stock_backend/screens/transfers-list.d.ts.map +1 -1
- package/dist/modules/stock_backend/screens/transfers-list.js +12 -23
- package/dist/modules/stock_backend/screens/transfers-list.js.map +1 -1
- package/dist/modules/stock_backend/screens/warehouses-list.d.ts.map +1 -1
- package/dist/modules/stock_backend/screens/warehouses-list.js +11 -22
- package/dist/modules/stock_backend/screens/warehouses-list.js.map +1 -1
- package/dist/modules/stock_backend/search.d.ts +257 -0
- package/dist/modules/stock_backend/search.d.ts.map +1 -0
- package/dist/modules/stock_backend/search.js +349 -0
- package/dist/modules/stock_backend/search.js.map +1 -0
- package/dist/modules/storage/functions.d.ts.map +1 -1
- package/dist/modules/storage/functions.js +28 -5
- package/dist/modules/storage/functions.js.map +1 -1
- package/dist/modules/storage/jobs.d.ts.map +1 -1
- package/dist/modules/storage/jobs.js +120 -2
- package/dist/modules/storage/jobs.js.map +1 -1
- package/dist/modules/storage/models.d.ts.map +1 -1
- package/dist/modules/storage/models.js +21 -0
- package/dist/modules/storage/models.js.map +1 -1
- package/dist/modules/storage/policy.d.ts +27 -0
- package/dist/modules/storage/policy.d.ts.map +1 -1
- package/dist/modules/storage/policy.js +14 -0
- package/dist/modules/storage/policy.js.map +1 -1
- package/dist/modules/storage/routes.d.ts +1 -0
- package/dist/modules/storage/routes.d.ts.map +1 -1
- package/dist/modules/storage/routes.js +36 -10
- package/dist/modules/storage/routes.js.map +1 -1
- package/dist/modules/user/access-denial.d.ts +3 -0
- package/dist/modules/user/access-denial.d.ts.map +1 -0
- package/dist/modules/user/access-denial.js +34 -0
- package/dist/modules/user/access-denial.js.map +1 -0
- package/dist/modules/user/access-policy.d.ts +16 -0
- package/dist/modules/user/access-policy.d.ts.map +1 -0
- package/dist/modules/user/access-policy.js +455 -0
- package/dist/modules/user/access-policy.js.map +1 -0
- package/dist/modules/user/access-surfaces.d.ts +26 -0
- package/dist/modules/user/access-surfaces.d.ts.map +1 -0
- package/dist/modules/user/access-surfaces.js +76 -0
- package/dist/modules/user/access-surfaces.js.map +1 -0
- package/dist/modules/user/authorization.d.ts +12 -1
- package/dist/modules/user/authorization.d.ts.map +1 -1
- package/dist/modules/user/authorization.js +342 -36
- package/dist/modules/user/authorization.js.map +1 -1
- package/dist/modules/user/functions.d.ts.map +1 -1
- package/dist/modules/user/functions.js +26 -3
- package/dist/modules/user/functions.js.map +1 -1
- package/dist/modules/user/index.d.ts.map +1 -1
- package/dist/modules/user/index.js +13 -1
- package/dist/modules/user/index.js.map +1 -1
- package/dist/modules/user/modal-labels.d.ts +3 -0
- package/dist/modules/user/modal-labels.d.ts.map +1 -0
- package/dist/modules/user/modal-labels.js +30 -0
- package/dist/modules/user/modal-labels.js.map +1 -0
- package/dist/modules/user/modal-messages.d.ts +4 -0
- package/dist/modules/user/modal-messages.d.ts.map +1 -0
- package/dist/modules/user/modal-messages.js +15 -0
- package/dist/modules/user/modal-messages.js.map +1 -0
- package/dist/modules/user/models.d.ts.map +1 -1
- package/dist/modules/user/models.js +48 -0
- package/dist/modules/user/models.js.map +1 -1
- package/dist/modules/user/permission-areas.d.ts +20 -0
- package/dist/modules/user/permission-areas.d.ts.map +1 -0
- package/dist/modules/user/permission-areas.js +89 -0
- package/dist/modules/user/permission-areas.js.map +1 -0
- package/dist/modules/user/policy-jobs.d.ts +4 -0
- package/dist/modules/user/policy-jobs.d.ts.map +1 -0
- package/dist/modules/user/policy-jobs.js +15 -0
- package/dist/modules/user/policy-jobs.js.map +1 -0
- package/dist/modules/user/role-modal-context.d.ts +3 -0
- package/dist/modules/user/role-modal-context.d.ts.map +1 -0
- package/dist/modules/user/role-modal-context.js +264 -0
- package/dist/modules/user/role-modal-context.js.map +1 -0
- package/dist/modules/user/roles.d.ts.map +1 -1
- package/dist/modules/user/roles.js +2 -0
- package/dist/modules/user/roles.js.map +1 -1
- package/dist/modules/user/user-modal-context.d.ts +5 -1
- package/dist/modules/user/user-modal-context.d.ts.map +1 -1
- package/dist/modules/user/user-modal-context.js +227 -31
- package/dist/modules/user/user-modal-context.js.map +1 -1
- package/dist/modules/user_backend/access-options.d.ts +25 -0
- package/dist/modules/user_backend/access-options.d.ts.map +1 -0
- package/dist/modules/user_backend/access-options.js +38 -0
- package/dist/modules/user_backend/access-options.js.map +1 -0
- package/dist/modules/user_backend/access-policy-routes.d.ts +3 -0
- package/dist/modules/user_backend/access-policy-routes.d.ts.map +1 -0
- package/dist/modules/user_backend/access-policy-routes.js +76 -0
- package/dist/modules/user_backend/access-policy-routes.js.map +1 -0
- package/dist/modules/user_backend/client/access-policy-modal.d.mts +123 -0
- package/dist/modules/user_backend/client/access-policy-modal.d.mts.map +1 -0
- package/dist/modules/user_backend/client/access-policy-modal.mjs +2 -0
- package/dist/modules/user_backend/client/access-policy-modal.mjs.map +7 -0
- package/dist/modules/user_backend/client/role-modal.d.mts +103 -0
- package/dist/modules/user_backend/client/role-modal.d.mts.map +1 -0
- package/dist/modules/user_backend/client/role-modal.mjs +2 -0
- package/dist/modules/user_backend/client/role-modal.mjs.map +7 -0
- package/dist/modules/user_backend/client/user-modal.d.mts +160 -7
- package/dist/modules/user_backend/client/user-modal.d.mts.map +1 -1
- package/dist/modules/user_backend/client/user-modal.mjs +1 -1
- package/dist/modules/user_backend/client/user-modal.mjs.map +4 -4
- package/dist/modules/user_backend/index.d.ts +2 -2
- package/dist/modules/user_backend/index.d.ts.map +1 -1
- package/dist/modules/user_backend/index.js +4 -2
- package/dist/modules/user_backend/index.js.map +1 -1
- package/dist/modules/user_backend/islands.d.ts +14 -1
- package/dist/modules/user_backend/islands.d.ts.map +1 -1
- package/dist/modules/user_backend/islands.js +11 -3
- package/dist/modules/user_backend/islands.js.map +1 -1
- package/dist/modules/user_backend/managed-role-routes.d.ts +3 -0
- package/dist/modules/user_backend/managed-role-routes.d.ts.map +1 -0
- package/dist/modules/user_backend/managed-role-routes.js +44 -0
- package/dist/modules/user_backend/managed-role-routes.js.map +1 -0
- package/dist/modules/user_backend/menus.d.ts.map +1 -1
- package/dist/modules/user_backend/menus.js +9 -7
- package/dist/modules/user_backend/menus.js.map +1 -1
- package/dist/modules/user_backend/messages.d.ts +510 -2
- package/dist/modules/user_backend/messages.d.ts.map +1 -1
- package/dist/modules/user_backend/messages.js +552 -44
- package/dist/modules/user_backend/messages.js.map +1 -1
- package/dist/modules/user_backend/modal/access-policy-modal-view.d.ts +43 -0
- package/dist/modules/user_backend/modal/access-policy-modal-view.d.ts.map +1 -0
- package/dist/modules/user_backend/modal/access-policy-modal-view.js +384 -0
- package/dist/modules/user_backend/modal/access-policy-modal-view.js.map +1 -0
- package/dist/modules/user_backend/modal/access-surfaces.d.ts +51 -0
- package/dist/modules/user_backend/modal/access-surfaces.d.ts.map +1 -0
- package/dist/modules/user_backend/modal/access-surfaces.js +138 -0
- package/dist/modules/user_backend/modal/access-surfaces.js.map +1 -0
- package/dist/modules/user_backend/modal/role-modal-view.d.ts +48 -0
- package/dist/modules/user_backend/modal/role-modal-view.d.ts.map +1 -0
- package/dist/modules/user_backend/modal/role-modal-view.js +488 -0
- package/dist/modules/user_backend/modal/role-modal-view.js.map +1 -0
- package/dist/modules/user_backend/modal/user-modal-view.d.ts +45 -0
- package/dist/modules/user_backend/modal/user-modal-view.d.ts.map +1 -1
- package/dist/modules/user_backend/modal/user-modal-view.js +1317 -71
- package/dist/modules/user_backend/modal/user-modal-view.js.map +1 -1
- package/dist/modules/user_backend/routes.d.ts.map +1 -1
- package/dist/modules/user_backend/routes.js +109 -571
- package/dist/modules/user_backend/routes.js.map +1 -1
- package/dist/modules/user_backend/screens/access-policies-list.d.ts +31 -0
- package/dist/modules/user_backend/screens/access-policies-list.d.ts.map +1 -0
- package/dist/modules/user_backend/screens/access-policies-list.js +54 -0
- package/dist/modules/user_backend/screens/access-policies-list.js.map +1 -0
- package/dist/modules/user_backend/screens/index.d.ts +1 -3
- package/dist/modules/user_backend/screens/index.d.ts.map +1 -1
- package/dist/modules/user_backend/screens/index.js +2 -3
- package/dist/modules/user_backend/screens/index.js.map +1 -1
- package/dist/modules/user_backend/screens/roles-list.d.ts +9 -3
- package/dist/modules/user_backend/screens/roles-list.d.ts.map +1 -1
- package/dist/modules/user_backend/screens/roles-list.js +15 -23
- package/dist/modules/user_backend/screens/roles-list.js.map +1 -1
- package/dist/modules/user_backend/screens/users-list.d.ts +7 -5
- package/dist/modules/user_backend/screens/users-list.d.ts.map +1 -1
- package/dist/modules/user_backend/screens/users-list.js +29 -21
- package/dist/modules/user_backend/screens/users-list.js.map +1 -1
- package/dist/modules/user_backend/search-functions.d.ts +4 -0
- package/dist/modules/user_backend/search-functions.d.ts.map +1 -0
- package/dist/modules/user_backend/search-functions.js +13 -0
- package/dist/modules/user_backend/search-functions.js.map +1 -0
- package/dist/modules/user_backend/search.d.ts +128 -0
- package/dist/modules/user_backend/search.d.ts.map +1 -0
- package/dist/modules/user_backend/search.js +131 -0
- package/dist/modules/user_backend/search.js.map +1 -0
- package/dist/modules/website/cms.d.ts.map +1 -1
- package/dist/modules/website/cms.js +17 -7
- package/dist/modules/website/cms.js.map +1 -1
- package/dist/modules/website/customer.d.ts +61 -1
- package/dist/modules/website/customer.d.ts.map +1 -1
- package/dist/modules/website/customer.js +197 -15
- package/dist/modules/website/customer.js.map +1 -1
- package/dist/modules/website/index.d.ts.map +1 -1
- package/dist/modules/website/index.js +16 -2
- package/dist/modules/website/index.js.map +1 -1
- package/dist/modules/website/models.d.ts.map +1 -1
- package/dist/modules/website/models.js +15 -0
- package/dist/modules/website/models.js.map +1 -1
- package/dist/modules/website/publication.d.ts.map +1 -1
- package/dist/modules/website/publication.js +11 -5
- package/dist/modules/website/publication.js.map +1 -1
- package/dist/modules/website_backend/collection.d.ts +12 -0
- package/dist/modules/website_backend/collection.d.ts.map +1 -0
- package/dist/modules/website_backend/collection.js +17 -0
- package/dist/modules/website_backend/collection.js.map +1 -0
- package/dist/modules/website_backend/functions.d.ts +10 -0
- package/dist/modules/website_backend/functions.d.ts.map +1 -0
- package/dist/modules/website_backend/functions.js +37 -0
- package/dist/modules/website_backend/functions.js.map +1 -0
- package/dist/modules/website_backend/index.js +2 -0
- package/dist/modules/website_backend/index.js.map +1 -1
- package/dist/modules/website_backend/routes.d.ts.map +1 -1
- package/dist/modules/website_backend/routes.js +124 -29
- package/dist/modules/website_backend/routes.js.map +1 -1
- package/dist/modules/website_backend/screens/index.d.ts +4 -8
- package/dist/modules/website_backend/screens/index.d.ts.map +1 -1
- package/dist/modules/website_backend/screens/index.js +685 -666
- package/dist/modules/website_backend/screens/index.js.map +1 -1
- package/dist/modules/website_backend/screens/page-frame.d.ts +6 -3
- package/dist/modules/website_backend/screens/page-frame.d.ts.map +1 -1
- package/dist/modules/website_backend/screens/page-frame.js +3 -3
- package/dist/modules/website_backend/screens/page-frame.js.map +1 -1
- package/dist/modules/website_backend/search.d.ts +125 -0
- package/dist/modules/website_backend/search.d.ts.map +1 -0
- package/dist/modules/website_backend/search.js +135 -0
- package/dist/modules/website_backend/search.js.map +1 -0
- package/dist/permission-catalogue.d.ts.map +1 -1
- package/dist/permission-catalogue.js +178 -24
- package/dist/permission-catalogue.js.map +1 -1
- package/dist/phone.d.ts +32 -0
- package/dist/phone.d.ts.map +1 -0
- package/dist/phone.js +101 -0
- package/dist/phone.js.map +1 -0
- package/dist/role-templates.d.ts +79 -0
- package/dist/role-templates.d.ts.map +1 -0
- package/dist/role-templates.js +192 -0
- package/dist/role-templates.js.map +1 -0
- package/dist/scaffold/index.d.ts +1 -1
- package/dist/scaffold/index.d.ts.map +1 -1
- package/dist/scaffold/index.js +10 -5
- package/dist/scaffold/index.js.map +1 -1
- package/dist/scaffold/templates/README.md.tmpl +2 -1
- package/dist/scaffold/templates/ket.workspace.mjs.tmpl +4 -1
- package/dist/scaffold/templates/package.json.tmpl +2 -2
- package/dist/ui/actions.d.ts +2 -0
- package/dist/ui/actions.d.ts.map +1 -1
- package/dist/ui/actions.js +1 -1
- package/dist/ui/actions.js.map +1 -1
- package/dist/ui/chrome.d.ts +19 -6
- package/dist/ui/chrome.d.ts.map +1 -1
- package/dist/ui/chrome.js +12 -7
- package/dist/ui/chrome.js.map +1 -1
- package/dist/ui/client/bulk-selection.d.ts +7 -0
- package/dist/ui/client/bulk-selection.d.ts.map +1 -0
- package/dist/ui/client/bulk-selection.js +67 -0
- package/dist/ui/client/bulk-selection.js.map +1 -0
- package/dist/ui/client/ket-table-view.d.ts +3 -0
- package/dist/ui/client/ket-table-view.d.ts.map +1 -0
- package/dist/ui/client/ket-table-view.js +27 -0
- package/dist/ui/client/ket-table-view.js.map +1 -0
- package/dist/ui/client/live-doc-shell.d.ts +39 -1
- package/dist/ui/client/live-doc-shell.d.ts.map +1 -1
- package/dist/ui/client/live-doc-shell.js +41 -2
- package/dist/ui/client/live-doc-shell.js.map +1 -1
- package/dist/ui/client/live-doc-view.d.ts +29 -1
- package/dist/ui/client/live-doc-view.d.ts.map +1 -1
- package/dist/ui/client/live-doc-view.js +138 -4
- package/dist/ui/client/live-doc-view.js.map +1 -1
- package/dist/ui/client/live-doc.d.mts +8 -4
- package/dist/ui/client/live-doc.d.mts.map +1 -1
- package/dist/ui/client/live-doc.mjs +10 -10
- package/dist/ui/client/live-doc.mjs.map +3 -3
- package/dist/ui/client/record-modal-form.d.ts +34 -0
- package/dist/ui/client/record-modal-form.d.ts.map +1 -1
- package/dist/ui/client/record-modal-form.js +17 -1
- package/dist/ui/client/record-modal-form.js.map +1 -1
- package/dist/ui/client/record-modal.d.ts +62 -6
- package/dist/ui/client/record-modal.d.ts.map +1 -1
- package/dist/ui/client/record-modal.js +237 -39
- package/dist/ui/client/record-modal.js.map +1 -1
- package/dist/ui/client/search-filter-view.d.ts +2 -0
- package/dist/ui/client/search-filter-view.d.ts.map +1 -0
- package/dist/ui/client/search-filter-view.js +6 -0
- package/dist/ui/client/search-filter-view.js.map +1 -0
- package/dist/ui/client/table-selection-view.d.ts.map +1 -1
- package/dist/ui/client/table-selection-view.js +33 -16
- package/dist/ui/client/table-selection-view.js.map +1 -1
- package/dist/ui/client/user-modal-client.d.ts +6 -0
- package/dist/ui/client/user-modal-client.d.ts.map +1 -0
- package/dist/ui/client/user-modal-client.js +4 -0
- package/dist/ui/client/user-modal-client.js.map +1 -0
- package/dist/ui/client/user-workflow.d.ts.map +1 -1
- package/dist/ui/client/user-workflow.js +4 -3
- package/dist/ui/client/user-workflow.js.map +1 -1
- package/dist/ui/client/variant-attribute-create.d.ts +19 -0
- package/dist/ui/client/variant-attribute-create.d.ts.map +1 -0
- package/dist/ui/client/variant-attribute-create.js +177 -0
- package/dist/ui/client/variant-attribute-create.js.map +1 -0
- package/dist/ui/client/variant-editor-view.d.ts +72 -0
- package/dist/ui/client/variant-editor-view.d.ts.map +1 -0
- package/dist/ui/client/variant-editor-view.js +943 -0
- package/dist/ui/client/variant-editor-view.js.map +1 -0
- package/dist/ui/collection-state.d.ts +11 -0
- package/dist/ui/collection-state.d.ts.map +1 -0
- package/dist/ui/collection-state.js +45 -0
- package/dist/ui/collection-state.js.map +1 -0
- package/dist/ui/collection.d.ts +23 -0
- package/dist/ui/collection.d.ts.map +1 -0
- package/dist/ui/collection.js +118 -0
- package/dist/ui/collection.js.map +1 -0
- package/dist/ui/form.d.ts +1 -1
- package/dist/ui/form.d.ts.map +1 -1
- package/dist/ui/form.js +1 -1
- package/dist/ui/form.js.map +1 -1
- package/dist/ui/index.d.ts +3 -1
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +3 -1
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/layout.d.ts +6 -7
- package/dist/ui/layout.d.ts.map +1 -1
- package/dist/ui/layout.js +25 -10
- package/dist/ui/layout.js.map +1 -1
- package/dist/ui/list-page.d.ts +4 -2
- package/dist/ui/list-page.d.ts.map +1 -1
- package/dist/ui/list-page.js +29 -4
- package/dist/ui/list-page.js.map +1 -1
- package/dist/ui/nav.d.ts +2 -3
- package/dist/ui/nav.d.ts.map +1 -1
- package/dist/ui/nav.js +4 -8
- package/dist/ui/nav.js.map +1 -1
- package/dist/ui/navigation.d.ts +1 -0
- package/dist/ui/navigation.d.ts.map +1 -1
- package/dist/ui/navigation.js +3 -3
- package/dist/ui/navigation.js.map +1 -1
- package/dist/ui/table.d.ts +2 -0
- package/dist/ui/table.d.ts.map +1 -1
- package/dist/ui/table.js +24 -0
- package/dist/ui/table.js.map +1 -1
- package/dist/ui/user-workflow.d.ts +2 -1
- package/dist/ui/user-workflow.d.ts.map +1 -1
- package/dist/ui/user-workflow.js +44 -29
- package/dist/ui/user-workflow.js.map +1 -1
- package/package.json +14 -4
- package/dist/modules/user_backend/access-routes.d.ts +0 -31
- package/dist/modules/user_backend/access-routes.d.ts.map +0 -1
- package/dist/modules/user_backend/access-routes.js +0 -447
- package/dist/modules/user_backend/access-routes.js.map +0 -1
- package/dist/modules/user_backend/screens/presets-form.d.ts +0 -16
- package/dist/modules/user_backend/screens/presets-form.d.ts.map +0 -1
- package/dist/modules/user_backend/screens/presets-form.js +0 -37
- package/dist/modules/user_backend/screens/presets-form.js.map +0 -1
- package/dist/modules/user_backend/screens/role-form.d.ts +0 -21
- package/dist/modules/user_backend/screens/role-form.d.ts.map +0 -1
- package/dist/modules/user_backend/screens/role-form.js +0 -93
- package/dist/modules/user_backend/screens/role-form.js.map +0 -1
- package/dist/modules/user_backend/screens/user-form.d.ts +0 -56
- package/dist/modules/user_backend/screens/user-form.d.ts.map +0 -1
- package/dist/modules/user_backend/screens/user-form.js +0 -202
- package/dist/modules/user_backend/screens/user-form.js.map +0 -1
- package/dist/ui/client/relation-select-view.d.ts +0 -77
- package/dist/ui/client/relation-select-view.d.ts.map +0 -1
- package/dist/ui/client/relation-select-view.js +0 -216
- package/dist/ui/client/relation-select-view.js.map +0 -1
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { jsx as _jsx } from "@ketvietlab/ketjs-view/jsx-runtime";
|
|
2
|
+
import { withParam } from '../../backend/paging.js';
|
|
3
|
+
import { collectionQueryKeep, prepareCollectionTable } from '../../../ui/index.js';
|
|
4
|
+
import { badge, code, columns, ContentCard, dataTable, collectionTable, emptyState, RecordScreen, inline, linkButton, Notice, RecordActions, RecordForm, Section, stack, Surface, } from '../../../ui/index.js';
|
|
3
5
|
import { FormScreenFrame, ListScreenFrame } from './page-frame.js';
|
|
4
6
|
const statusTone = (status) => status === 'published'
|
|
5
7
|
? 'positive'
|
|
@@ -137,61 +139,62 @@ const domainInstructions = (_, site, row) => (_jsx(Surface, { body: siteFacts(_,
|
|
|
137
139
|
[_('website_backend.domains.challenge'), _('website_backend.domains.challengeHint')],
|
|
138
140
|
[_('website_backend.domains.nextStep'), _('website_backend.domains.nextStepHint')],
|
|
139
141
|
]) }));
|
|
140
|
-
export const sitesScreen = (_, rows, frame, locale = '', active = 'all') =>
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
142
|
+
export const sitesScreen = (_, rows, frame, locale = '', active = 'all') => {
|
|
143
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
144
|
+
rows,
|
|
145
|
+
id: (row) => row.id,
|
|
146
|
+
rowHref: (row) => `/admin/website/sites/${row.id}${locale}`,
|
|
147
|
+
columns: [
|
|
148
|
+
{
|
|
149
|
+
key: 'site',
|
|
150
|
+
label: _('website_backend.sites.site'),
|
|
151
|
+
priority: 'primary',
|
|
152
|
+
cell: (row) => `${row.title} · ${companyLabel(_, frame, row)}`,
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
key: 'primaryHost',
|
|
156
|
+
label: _('website_backend.sites.primaryHost'),
|
|
157
|
+
priority: 'primary',
|
|
158
|
+
cell: (row) => primaryHost(_, row),
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
key: 'locale',
|
|
162
|
+
label: _('website_backend.field.locale'),
|
|
163
|
+
cell: (row) => code(row.defaultLocale),
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
key: 'state',
|
|
167
|
+
label: _('website_backend.field.status'),
|
|
168
|
+
kind: 'status',
|
|
169
|
+
cell: (row) => row.active ? domainEvidenceBadge(_, row) : badge(_('website_backend.state.inactive'), 'neutral'),
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
key: 'role',
|
|
173
|
+
label: _('website_backend.sites.yourRole'),
|
|
174
|
+
cell: (row) => roleLabel(_, row.role),
|
|
175
|
+
},
|
|
176
|
+
],
|
|
177
|
+
responsive: 'stack',
|
|
178
|
+
}, {
|
|
179
|
+
paginate: true,
|
|
180
|
+
searchText: (row) => `${row.name} ${row.title} ${row.primaryHost ?? ''} ${row.defaultLocale}`,
|
|
181
|
+
});
|
|
182
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.sites.title'), frame: collection.frame, controls: activeFilter(_, (state) => withParam(new URL(frame.collectionUrl ?? `/admin/website/sites${locale}`, 'http://collection.local'), 'state', state), active), headerActions: linkButton({
|
|
183
|
+
label: _('website_backend.action.newSite'),
|
|
184
|
+
href: `/admin/website/sites/new${locale}`,
|
|
185
|
+
variant: 'primary',
|
|
186
|
+
}), actions: inline([
|
|
147
187
|
linkButton({
|
|
148
188
|
label: _('website_backend.action.pages'),
|
|
149
189
|
href: `/admin/website/pages${locale}`,
|
|
150
190
|
variant: 'secondary',
|
|
151
191
|
}),
|
|
152
|
-
]),
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
id: (row) => row.id,
|
|
159
|
-
rowHref: (row) => `/admin/website/sites/${row.id}${locale}`,
|
|
160
|
-
columns: [
|
|
161
|
-
{
|
|
162
|
-
key: 'site',
|
|
163
|
-
label: _('website_backend.sites.site'),
|
|
164
|
-
priority: 'primary',
|
|
165
|
-
cell: (row) => `${row.title} · ${companyLabel(_, frame, row)}`,
|
|
166
|
-
},
|
|
167
|
-
{
|
|
168
|
-
key: 'primaryHost',
|
|
169
|
-
label: _('website_backend.sites.primaryHost'),
|
|
170
|
-
priority: 'primary',
|
|
171
|
-
cell: (row) => primaryHost(_, row),
|
|
172
|
-
},
|
|
173
|
-
{
|
|
174
|
-
key: 'locale',
|
|
175
|
-
label: _('website_backend.field.locale'),
|
|
176
|
-
cell: (row) => code(row.defaultLocale),
|
|
177
|
-
},
|
|
178
|
-
{
|
|
179
|
-
key: 'state',
|
|
180
|
-
label: _('website_backend.field.status'),
|
|
181
|
-
kind: 'status',
|
|
182
|
-
cell: (row) => row.active
|
|
183
|
-
? domainEvidenceBadge(_, row)
|
|
184
|
-
: badge(_('website_backend.state.inactive'), 'neutral'),
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
key: 'role',
|
|
188
|
-
label: _('website_backend.sites.yourRole'),
|
|
189
|
-
cell: (row) => roleLabel(_, row.role),
|
|
190
|
-
},
|
|
191
|
-
],
|
|
192
|
-
responsive: 'stack',
|
|
193
|
-
}),
|
|
194
|
-
]) }));
|
|
192
|
+
]), body: stack([
|
|
193
|
+
rows.length === 0
|
|
194
|
+
? emptyState(_('website_backend.sites.empty'), _('website_backend.sites.emptyHint'))
|
|
195
|
+
: collectionTable(_, collection.table),
|
|
196
|
+
]) }));
|
|
197
|
+
};
|
|
195
198
|
export const siteFormScreen = (_, row, themes, frame, options = {}) => {
|
|
196
199
|
const existing = !!row.id;
|
|
197
200
|
const locale = options.locale ?? '';
|
|
@@ -310,44 +313,49 @@ export const siteFormScreen = (_, row, themes, frame, options = {}) => {
|
|
|
310
313
|
]),
|
|
311
314
|
]) }));
|
|
312
315
|
};
|
|
313
|
-
export const contentScreen = (_, rows, sites, siteId, frame, locale = '', kind = { basePath: '/admin/website/pages', titleKey: 'pages' }, pager = null
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
316
|
+
export const contentScreen = (_, rows, sites, siteId, frame, locale = '', kind = { basePath: '/admin/website/pages', titleKey: 'pages' }, pager = null) => {
|
|
317
|
+
const collection = prepareCollectionTable(_, { ...frame, chrome: { ...frame.chrome, pager: pager ?? frame.chrome?.pager } }, {
|
|
318
|
+
rows,
|
|
319
|
+
id: (row) => row.id,
|
|
320
|
+
rowHref: (row) => `${kind.basePath}/${row.id}${locale}`,
|
|
321
|
+
columns: [
|
|
322
|
+
{
|
|
323
|
+
key: 'title',
|
|
324
|
+
label: _('website_backend.field.title'),
|
|
325
|
+
priority: 'primary',
|
|
326
|
+
cell: (row) => row.title,
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
key: 'path',
|
|
330
|
+
label: _('website_backend.field.path'),
|
|
331
|
+
kind: 'identifier',
|
|
332
|
+
cell: (row) => code(row.path),
|
|
333
|
+
},
|
|
334
|
+
{
|
|
335
|
+
key: 'status',
|
|
336
|
+
label: _('website_backend.field.status'),
|
|
337
|
+
kind: 'status',
|
|
338
|
+
cell: (row) => badge(_(`website_backend.state.${row.status}`), statusTone(row.status)),
|
|
339
|
+
},
|
|
340
|
+
],
|
|
341
|
+
}, { paginate: false });
|
|
342
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _(`website_backend.${kind.titleKey}.title`), frame: collection.frame, controls: _jsx(RecordForm, { action: `${kind.basePath}${locale}`, method: "get",
|
|
343
|
+
// The bar owns the query and the publication state now; what is
|
|
344
|
+
// left is which site's content this is, which is not a filter. The
|
|
345
|
+
// chrome draws the panel, so the form brings no card of its own.
|
|
346
|
+
hidden: collectionQueryKeep(new URL(frame.collectionUrl ?? `${kind.basePath}${locale}`, 'http://collection.local'), ['site']), layout: "inline", fields: [
|
|
347
|
+
{
|
|
348
|
+
name: 'site',
|
|
349
|
+
label: _('website_backend.field.site'),
|
|
350
|
+
type: 'select',
|
|
351
|
+
value: siteId,
|
|
352
|
+
options: sites,
|
|
353
|
+
},
|
|
354
|
+
], submit: _('website_backend.action.apply'), submitVariant: "secondary" }), headerActions: linkButton({
|
|
355
|
+
label: _(`website_backend.action.new${kind.titleKey === 'pages' ? 'Page' : 'Post'}`),
|
|
356
|
+
href: `${kind.basePath}/new?site=${encodeURIComponent(siteId ?? '')}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
357
|
+
variant: 'primary',
|
|
358
|
+
}), actions: inline([
|
|
351
359
|
linkButton({
|
|
352
360
|
label: _('website_backend.action.taxonomies'),
|
|
353
361
|
href: `/admin/website/taxonomies?site=${encodeURIComponent(siteId ?? '')}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
@@ -356,37 +364,16 @@ query = {}) => (_jsx(ListScreenFrame, { translator: _, title: _(`website_backend
|
|
|
356
364
|
label: _('website_backend.action.preflight'),
|
|
357
365
|
href: `/admin/website/preflight?site=${encodeURIComponent(siteId ?? '')}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
358
366
|
}),
|
|
359
|
-
]),
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
? emptyState(_('website_backend.content.
|
|
364
|
-
:
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
{
|
|
370
|
-
key: 'title',
|
|
371
|
-
label: _('website_backend.field.title'),
|
|
372
|
-
priority: 'primary',
|
|
373
|
-
cell: (row) => row.title,
|
|
374
|
-
},
|
|
375
|
-
{
|
|
376
|
-
key: 'path',
|
|
377
|
-
label: _('website_backend.field.path'),
|
|
378
|
-
kind: 'identifier',
|
|
379
|
-
cell: (row) => code(row.path),
|
|
380
|
-
},
|
|
381
|
-
{
|
|
382
|
-
key: 'status',
|
|
383
|
-
label: _('website_backend.field.status'),
|
|
384
|
-
kind: 'status',
|
|
385
|
-
cell: (row) => badge(_(`website_backend.state.${row.status}`), statusTone(row.status)),
|
|
386
|
-
},
|
|
387
|
-
],
|
|
388
|
-
}),
|
|
389
|
-
]) }));
|
|
367
|
+
]), body: stack([
|
|
368
|
+
// One GET form for all three, because they are one question - which
|
|
369
|
+
// pages am I looking at - and three forms would each drop the other two.
|
|
370
|
+
!siteId
|
|
371
|
+
? emptyState(_('website_backend.content.noSite'), _('website_backend.content.noSiteHint'))
|
|
372
|
+
: rows.length === 0
|
|
373
|
+
? emptyState(_('website_backend.content.empty'), _('website_backend.content.emptyHint'))
|
|
374
|
+
: collectionTable(_, collection.table),
|
|
375
|
+
]) }));
|
|
376
|
+
};
|
|
390
377
|
/**
|
|
391
378
|
* Which taxonomy terms this entry carries.
|
|
392
379
|
*
|
|
@@ -595,13 +582,13 @@ export const entryFormScreen = (_, detail, siteId, kind, frame, options = {}) =>
|
|
|
595
582
|
* written and nothing asked it. It defaults to the newest two, because "what
|
|
596
583
|
* changed?" is the question people arrive at this screen holding.
|
|
597
584
|
*/
|
|
598
|
-
const revisionCompare = (_, entry, rows, diff, basePath, locale) => {
|
|
585
|
+
const revisionCompare = (_, entry, rows, diff, basePath, locale, frame) => {
|
|
599
586
|
const options = rows.map((row) => ({
|
|
600
587
|
value: row.id,
|
|
601
588
|
label: `${_('website_backend.field.version')} ${row.version} · ${row.kind}`,
|
|
602
589
|
}));
|
|
603
590
|
return (_jsx(Section, { title: _('website_backend.revisions.compare'), description: _('website_backend.revisions.compareHint'), body: stack([
|
|
604
|
-
_jsx(Surface, { padding: "compact", body: _jsx(RecordForm, { action: `${basePath}/${entry.id}/revisions${locale}`, method: "get", layout: "inline", fields: [
|
|
591
|
+
_jsx(Surface, { padding: "compact", body: _jsx(RecordForm, { action: `${basePath}/${entry.id}/revisions${locale}`, method: "get", hidden: collectionQueryKeep(new URL(frame.collectionUrl ?? `${basePath}/${entry.id}/revisions${locale}`, 'http://collection.local'), ['from', 'to']), layout: "inline", fields: [
|
|
605
592
|
{
|
|
606
593
|
name: 'from',
|
|
607
594
|
label: _('website_backend.revisions.from'),
|
|
@@ -663,50 +650,54 @@ const revisionCompare = (_, entry, rows, diff, basePath, locale) => {
|
|
|
663
650
|
: []),
|
|
664
651
|
]) }));
|
|
665
652
|
};
|
|
666
|
-
export const revisionsScreen = (_, entry, rows, frame, locale = '', basePath = '/admin/website/pages', diff = null
|
|
667
|
-
|
|
653
|
+
export const revisionsScreen = (_, entry, rows, frame, locale = '', basePath = '/admin/website/pages', diff = null, tableRows = rows) => {
|
|
654
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
655
|
+
rows: tableRows,
|
|
656
|
+
id: (row) => row.id,
|
|
657
|
+
columns: [
|
|
658
|
+
{
|
|
659
|
+
key: 'version',
|
|
660
|
+
label: _('website_backend.field.version'),
|
|
661
|
+
kind: 'number',
|
|
662
|
+
cell: (row) => String(row.version),
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
key: 'kind',
|
|
666
|
+
label: _('website_backend.field.kind'),
|
|
667
|
+
cell: (row) => badge(row.kind, 'neutral'),
|
|
668
|
+
},
|
|
669
|
+
{ key: 'author', label: _('website_backend.field.author'), cell: (row) => row.authorId ?? '—' },
|
|
670
|
+
{
|
|
671
|
+
key: 'created',
|
|
672
|
+
label: _('website_backend.field.createdAt'),
|
|
673
|
+
kind: 'date',
|
|
674
|
+
cell: (row) => row.createdAt,
|
|
675
|
+
},
|
|
676
|
+
{
|
|
677
|
+
// A restore makes a draft; it does not change what a visitor
|
|
678
|
+
// reads. That is why it is offered on every row, including a
|
|
679
|
+
// revision the current deployment can no longer draw - getting
|
|
680
|
+
// the content back is how it gets repaired.
|
|
681
|
+
key: 'restore',
|
|
682
|
+
label: _('website_backend.action.restore'),
|
|
683
|
+
cell: (row) => (_jsx(RecordActions, { action: `${basePath}/${entry.id}/revisions/${row.id}/restore${locale}`, size: "compact", actions: [{ value: 'restore', label: _('website_backend.action.restore') }] })),
|
|
684
|
+
},
|
|
685
|
+
],
|
|
686
|
+
}, { paginate: true });
|
|
687
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.revisions.title'), frame: collection.frame, actions: inline([
|
|
668
688
|
linkButton({
|
|
669
689
|
label: _('website_backend.action.backToEntry'),
|
|
670
690
|
href: `${basePath}/${entry.id}${locale}`,
|
|
671
691
|
}),
|
|
672
|
-
]),
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
key: 'version',
|
|
682
|
-
label: _('website_backend.field.version'),
|
|
683
|
-
kind: 'number',
|
|
684
|
-
cell: (row) => String(row.version),
|
|
685
|
-
},
|
|
686
|
-
{
|
|
687
|
-
key: 'kind',
|
|
688
|
-
label: _('website_backend.field.kind'),
|
|
689
|
-
cell: (row) => badge(row.kind, 'neutral'),
|
|
690
|
-
},
|
|
691
|
-
{ key: 'author', label: _('website_backend.field.author'), cell: (row) => row.authorId ?? '—' },
|
|
692
|
-
{
|
|
693
|
-
key: 'created',
|
|
694
|
-
label: _('website_backend.field.createdAt'),
|
|
695
|
-
kind: 'date',
|
|
696
|
-
cell: (row) => row.createdAt,
|
|
697
|
-
},
|
|
698
|
-
{
|
|
699
|
-
// A restore makes a draft; it does not change what a visitor
|
|
700
|
-
// reads. That is why it is offered on every row, including a
|
|
701
|
-
// revision the current deployment can no longer draw - getting
|
|
702
|
-
// the content back is how it gets repaired.
|
|
703
|
-
key: 'restore',
|
|
704
|
-
label: _('website_backend.action.restore'),
|
|
705
|
-
cell: (row) => (_jsx(RecordActions, { action: `${basePath}/${entry.id}/revisions/${row.id}/restore${locale}`, size: "compact", actions: [{ value: 'restore', label: _('website_backend.action.restore') }] })),
|
|
706
|
-
},
|
|
707
|
-
],
|
|
708
|
-
}),
|
|
709
|
-
]) }));
|
|
692
|
+
]), body: stack([
|
|
693
|
+
...(rows.length > 1
|
|
694
|
+
? [revisionCompare(_, entry, rows, diff, basePath, locale, collection.frame)]
|
|
695
|
+
: []),
|
|
696
|
+
rows.length === 0
|
|
697
|
+
? emptyState(_('website_backend.revisions.empty'), _('website_backend.revisions.emptyHint'))
|
|
698
|
+
: collectionTable(_, collection.table),
|
|
699
|
+
]) }));
|
|
700
|
+
};
|
|
710
701
|
/**
|
|
711
702
|
* One preview link, and the way to withdraw all of them.
|
|
712
703
|
*
|
|
@@ -766,47 +757,46 @@ export const previewScreen = (_, entry, minted, frame, basePath = '/admin/websit
|
|
|
766
757
|
},
|
|
767
758
|
] }) }) }),
|
|
768
759
|
]) }));
|
|
769
|
-
const siteSwitcher = (_, action, sites, siteId, locale) => (_jsx(
|
|
760
|
+
const siteSwitcher = (_, action, sites, siteId, locale, frame = {}) => (_jsx(RecordForm, { action: `${action}${locale}`, method: "get", hidden: collectionQueryKeep(new URL(frame.collectionUrl ?? `${action}${locale}`, 'http://collection.local'), ['site']), layout: "inline", fields: [
|
|
761
|
+
{
|
|
762
|
+
name: 'site',
|
|
763
|
+
label: _('website_backend.field.site'),
|
|
764
|
+
type: 'select',
|
|
765
|
+
value: siteId,
|
|
766
|
+
options: sites,
|
|
767
|
+
},
|
|
768
|
+
], submit: _('website_backend.action.switchSite'), submitVariant: "secondary" }));
|
|
769
|
+
export const taxonomyScreen = (_, rows, sites, siteId, frame, locale = '') => {
|
|
770
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
771
|
+
rows,
|
|
772
|
+
id: (row) => row.id,
|
|
773
|
+
rowHref: (row) => `/admin/website/taxonomies/${row.id}${locale}`,
|
|
774
|
+
columns: [
|
|
770
775
|
{
|
|
771
|
-
|
|
772
|
-
label: _('website_backend.field.
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
options: sites,
|
|
776
|
+
key: 'name',
|
|
777
|
+
label: _('website_backend.field.name'),
|
|
778
|
+
priority: 'primary',
|
|
779
|
+
cell: (row) => row.name,
|
|
776
780
|
},
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
?
|
|
789
|
-
:
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
label: _('website_backend.field.name'),
|
|
797
|
-
priority: 'primary',
|
|
798
|
-
cell: (row) => row.name,
|
|
799
|
-
},
|
|
800
|
-
{
|
|
801
|
-
key: 'taxonomy',
|
|
802
|
-
label: _('website_backend.field.taxonomy'),
|
|
803
|
-
cell: (row) => code(row.taxonomy),
|
|
804
|
-
},
|
|
805
|
-
{ key: 'slug', label: _('website_backend.field.slug'), cell: (row) => code(row.slug) },
|
|
806
|
-
{ key: 'parent', label: _('website_backend.field.parent'), cell: (row) => row.parentId ?? '—' },
|
|
807
|
-
],
|
|
808
|
-
}),
|
|
809
|
-
]) }));
|
|
781
|
+
{
|
|
782
|
+
key: 'taxonomy',
|
|
783
|
+
label: _('website_backend.field.taxonomy'),
|
|
784
|
+
cell: (row) => code(row.taxonomy),
|
|
785
|
+
},
|
|
786
|
+
{ key: 'slug', label: _('website_backend.field.slug'), cell: (row) => code(row.slug) },
|
|
787
|
+
{ key: 'parent', label: _('website_backend.field.parent'), cell: (row) => row.parentId ?? '—' },
|
|
788
|
+
],
|
|
789
|
+
}, { paginate: true, searchText: (row) => `${row.name} ${row.taxonomy} ${row.slug}` });
|
|
790
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.taxonomies.title'), frame: collection.frame, controls: siteSwitcher(_, '/admin/website/taxonomies', sites, siteId, locale, collection.frame), headerActions: linkButton({
|
|
791
|
+
label: _('website_backend.action.newTerm'),
|
|
792
|
+
href: `/admin/website/taxonomies/new?site=${encodeURIComponent(siteId ?? '')}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
793
|
+
variant: 'primary',
|
|
794
|
+
}), body: stack([
|
|
795
|
+
rows.length === 0
|
|
796
|
+
? emptyState(_('website_backend.taxonomies.empty'), _('website_backend.taxonomies.emptyHint'))
|
|
797
|
+
: collectionTable(_, collection.table),
|
|
798
|
+
]) }));
|
|
799
|
+
};
|
|
810
800
|
export const taxonomyFormScreen = (_, row, taxonomies, parents, frame, options = {}) => {
|
|
811
801
|
const existing = !!row.id;
|
|
812
802
|
return (_jsx(FormScreenFrame, { translator: _, title: existing ? String(row.name) : _('website_backend.taxonomies.newTitle'), frame: frame, body: stack([
|
|
@@ -852,37 +842,39 @@ export const taxonomyFormScreen = (_, row, taxonomies, parents, frame, options =
|
|
|
852
842
|
: []),
|
|
853
843
|
]) }));
|
|
854
844
|
};
|
|
855
|
-
export const mediaScreen = (_, rows, sites, siteId, frame, locale = '') =>
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
845
|
+
export const mediaScreen = (_, rows, sites, siteId, frame, locale = '') => {
|
|
846
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
847
|
+
rows,
|
|
848
|
+
id: (row) => row.id,
|
|
849
|
+
rowHref: (row) => `/admin/website/media/${row.id}${locale}`,
|
|
850
|
+
columns: [
|
|
851
|
+
{
|
|
852
|
+
key: 'attachment',
|
|
853
|
+
label: _('website_backend.field.attachment'),
|
|
854
|
+
priority: 'primary',
|
|
855
|
+
cell: (row) => code(row.attachmentId),
|
|
856
|
+
},
|
|
857
|
+
{ key: 'alt', label: _('website_backend.field.alt'), cell: (row) => row.alt ?? '—' },
|
|
858
|
+
{
|
|
859
|
+
key: 'size',
|
|
860
|
+
label: _('website_backend.field.size'),
|
|
861
|
+
cell: (row) => (row.width && row.height ? `${row.width} × ${row.height}` : '—'),
|
|
862
|
+
},
|
|
863
|
+
],
|
|
864
|
+
}, {
|
|
865
|
+
paginate: true,
|
|
866
|
+
searchText: (row) => `${row.attachmentId} ${row.alt ?? ''} ${row.width ?? ''} ${row.height ?? ''}`,
|
|
867
|
+
});
|
|
868
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.media.title'), frame: collection.frame, controls: siteSwitcher(_, '/admin/website/media', sites, siteId, locale, collection.frame), headerActions: linkButton({
|
|
869
|
+
label: _('website_backend.action.newMedia'),
|
|
870
|
+
href: `/admin/website/media/new?site=${encodeURIComponent(siteId ?? '')}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
871
|
+
variant: 'primary',
|
|
872
|
+
}), body: stack([
|
|
873
|
+
rows.length === 0
|
|
874
|
+
? emptyState(_('website_backend.media.empty'), _('website_backend.media.emptyHint'))
|
|
875
|
+
: collectionTable(_, collection.table),
|
|
876
|
+
]) }));
|
|
877
|
+
};
|
|
886
878
|
export const mediaFormScreen = (_, row, frame, options = {}) => {
|
|
887
879
|
const existing = !!row.id;
|
|
888
880
|
const usage = options.usage ?? null;
|
|
@@ -1035,50 +1027,49 @@ const danglingNotice = (_, dangling) => dangling.length === 0
|
|
|
1035
1027
|
.map((item) => `${item.label} (${item.href})`)
|
|
1036
1028
|
.join(' · ')}` }),
|
|
1037
1029
|
];
|
|
1038
|
-
export const menusScreen = (_, rows, sites, siteId, frame, locale = '', dangling = []) =>
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
:
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
label: _('website_backend.
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
]) }));
|
|
1030
|
+
export const menusScreen = (_, rows, sites, siteId, frame, locale = '', dangling = []) => {
|
|
1031
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
1032
|
+
rows,
|
|
1033
|
+
id: (row) => row.id,
|
|
1034
|
+
rowHref: (row) => `/admin/website/menus/${row.id}?site=${encodeURIComponent(row.siteId)}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
1035
|
+
columns: [
|
|
1036
|
+
{
|
|
1037
|
+
key: 'label',
|
|
1038
|
+
label: _('website_backend.field.label'),
|
|
1039
|
+
priority: 'primary',
|
|
1040
|
+
cell: (row) => row.label,
|
|
1041
|
+
},
|
|
1042
|
+
{ key: 'href', label: _('website_backend.field.href'), cell: (row) => code(row.href) },
|
|
1043
|
+
{
|
|
1044
|
+
key: 'position',
|
|
1045
|
+
label: _('website_backend.field.position'),
|
|
1046
|
+
kind: 'number',
|
|
1047
|
+
cell: (row) => String(row.position),
|
|
1048
|
+
},
|
|
1049
|
+
{
|
|
1050
|
+
// Buttons, so the order is editable from a keyboard without
|
|
1051
|
+
// anything having to be dragged - and without an editor doing
|
|
1052
|
+
// arithmetic in the position box, which was the only way.
|
|
1053
|
+
key: 'move',
|
|
1054
|
+
label: _('website_backend.menus.move'),
|
|
1055
|
+
cell: (row) => (_jsx(RecordActions, { action: `/admin/website/menus/${row.id}/move${locale}`, hidden: { site: row.siteId }, size: "compact", actions: [
|
|
1056
|
+
{ value: 'up', label: _('website_backend.menus.up') },
|
|
1057
|
+
{ value: 'down', label: _('website_backend.menus.down') },
|
|
1058
|
+
] })),
|
|
1059
|
+
},
|
|
1060
|
+
],
|
|
1061
|
+
}, { paginate: true, searchText: (row) => `${row.label} ${row.href}` });
|
|
1062
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.menus.title'), frame: collection.frame, controls: siteSwitcher(_, '/admin/website/menus', sites, siteId, locale, collection.frame), headerActions: linkButton({
|
|
1063
|
+
label: _('website_backend.action.newMenuItem'),
|
|
1064
|
+
href: `/admin/website/menus/new?site=${encodeURIComponent(siteId ?? '')}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
1065
|
+
variant: 'primary',
|
|
1066
|
+
}), body: stack([
|
|
1067
|
+
...danglingNotice(_, dangling),
|
|
1068
|
+
rows.length === 0
|
|
1069
|
+
? emptyState(_('website_backend.menus.empty'), _('website_backend.menus.emptyHint'))
|
|
1070
|
+
: collectionTable(_, collection.table),
|
|
1071
|
+
]) }));
|
|
1072
|
+
};
|
|
1082
1073
|
export const menuFormScreen = (_, row, parents, frame, options = {}) => {
|
|
1083
1074
|
const existing = !!row.id;
|
|
1084
1075
|
return (_jsx(FormScreenFrame, { translator: _, title: existing ? String(row.label) : _('website_backend.menus.newTitle'), frame: frame, body: stack([
|
|
@@ -1120,55 +1111,55 @@ export const menuFormScreen = (_, row, parents, frame, options = {}) => {
|
|
|
1120
1111
|
: []),
|
|
1121
1112
|
]) }));
|
|
1122
1113
|
};
|
|
1123
|
-
export const formsScreen = (_, rows, siteId, frame, locale = '', active = 'all') =>
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1114
|
+
export const formsScreen = (_, rows, siteId, frame, locale = '', active = 'all') => {
|
|
1115
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
1116
|
+
rows,
|
|
1117
|
+
id: (row) => row.id,
|
|
1118
|
+
// The row opens the form, the way a row opens the record on every
|
|
1119
|
+
// other list here. Submissions were the row's destination only
|
|
1120
|
+
// because there was nothing else to open.
|
|
1121
|
+
rowHref: (row) => `/admin/website/forms/${row.id}${locale}`,
|
|
1122
|
+
columns: [
|
|
1123
|
+
{
|
|
1124
|
+
key: 'name',
|
|
1125
|
+
label: _('website_backend.field.name'),
|
|
1126
|
+
priority: 'primary',
|
|
1127
|
+
cell: (row) => row.name,
|
|
1128
|
+
},
|
|
1129
|
+
{
|
|
1130
|
+
key: 'status',
|
|
1131
|
+
label: _('website_backend.field.status'),
|
|
1132
|
+
cell: (row) => badge(row.active ? _('website_backend.state.active') : _('website_backend.state.inactive'), row.active ? 'positive' : 'neutral'),
|
|
1133
|
+
},
|
|
1134
|
+
{
|
|
1135
|
+
key: 'retention',
|
|
1136
|
+
label: _('website_backend.field.retentionDays'),
|
|
1137
|
+
cell: (row) => row.retentionDays == null
|
|
1138
|
+
? badge(_('website_backend.state.kept'), 'neutral')
|
|
1139
|
+
: String(row.retentionDays),
|
|
1140
|
+
},
|
|
1141
|
+
{
|
|
1142
|
+
key: 'submissions',
|
|
1143
|
+
label: _('website_backend.submissions.title'),
|
|
1144
|
+
cell: (row) => linkButton({
|
|
1145
|
+
label: _('website_backend.action.open'),
|
|
1146
|
+
href: `/admin/website/forms/${row.id}/submissions${locale}`,
|
|
1147
|
+
size: 'compact',
|
|
1148
|
+
}),
|
|
1149
|
+
},
|
|
1150
|
+
],
|
|
1151
|
+
}, { paginate: true, searchText: (row) => `${row.name}` });
|
|
1152
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.forms.title'), frame: collection.frame, controls: activeFilter(_, (state) => withParam(new URL(frame.collectionUrl ??
|
|
1153
|
+
`/admin/website/forms?site=${encodeURIComponent(siteId ?? '')}${locale ? `&${locale.slice(1)}` : ''}`, 'http://collection.local'), 'state', state), active), headerActions: linkButton({
|
|
1154
|
+
label: _('website_backend.action.newForm'),
|
|
1155
|
+
href: `/admin/website/forms/new?site=${encodeURIComponent(siteId ?? '')}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
1156
|
+
variant: 'primary',
|
|
1157
|
+
}), body: stack([
|
|
1158
|
+
rows.length === 0
|
|
1159
|
+
? emptyState(_('website_backend.forms.empty'), _('website_backend.forms.emptyHint'))
|
|
1160
|
+
: collectionTable(_, collection.table),
|
|
1161
|
+
]) }));
|
|
1162
|
+
};
|
|
1172
1163
|
/**
|
|
1173
1164
|
* One editor, for a new form and an existing one.
|
|
1174
1165
|
*
|
|
@@ -1366,13 +1357,52 @@ const submissionActions = (_, formId, fields, retentionDays, locale, status = 'a
|
|
|
1366
1357
|
], submit: _('website_backend.submissions.purge'), submitVariant: "secondary" }) }) }),
|
|
1367
1358
|
]),
|
|
1368
1359
|
];
|
|
1369
|
-
export const submissionsScreen = (_, rows, frame, options = {}) =>
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1360
|
+
export const submissionsScreen = (_, rows, frame, options = {}) => {
|
|
1361
|
+
const collection = prepareCollectionTable(_, { ...frame, chrome: { ...frame.chrome, pager: options.pager ?? frame.chrome?.pager } }, {
|
|
1362
|
+
rows,
|
|
1363
|
+
id: (row) => row.id,
|
|
1364
|
+
rowHref: (row) => `/admin/website/forms/${row.formId}/submissions/${row.id}`,
|
|
1365
|
+
columns: [
|
|
1366
|
+
{
|
|
1367
|
+
key: 'created',
|
|
1368
|
+
label: _('website_backend.field.createdAt'),
|
|
1369
|
+
kind: 'date',
|
|
1370
|
+
priority: 'primary',
|
|
1371
|
+
cell: (row) => row.createdAt,
|
|
1372
|
+
},
|
|
1373
|
+
{
|
|
1374
|
+
key: 'summary',
|
|
1375
|
+
label: _('website_backend.field.summary'),
|
|
1376
|
+
cell: (row) => row.purgedAt
|
|
1377
|
+
? badge(_('website_backend.state.purged'), 'neutral')
|
|
1378
|
+
: Object.keys(row.summary ?? {}).length
|
|
1379
|
+
? code(JSON.stringify(row.summary))
|
|
1380
|
+
: badge(_('website_backend.state.noPreview'), 'neutral'),
|
|
1381
|
+
},
|
|
1382
|
+
{
|
|
1383
|
+
key: 'hold',
|
|
1384
|
+
label: _('website_backend.field.hold'),
|
|
1385
|
+
cell: (row) => row.held
|
|
1386
|
+
? badge(row.holdReason ?? _('website_backend.state.yes'), 'warning')
|
|
1387
|
+
: badge(_('website_backend.state.no'), 'neutral'),
|
|
1388
|
+
},
|
|
1389
|
+
{
|
|
1390
|
+
key: 'consent',
|
|
1391
|
+
label: _('website_backend.field.consent'),
|
|
1392
|
+
cell: (row) => badge(row.consent ? _('website_backend.state.yes') : _('website_backend.state.no'), row.consent ? 'positive' : 'neutral'),
|
|
1393
|
+
},
|
|
1394
|
+
{
|
|
1395
|
+
key: 'status',
|
|
1396
|
+
label: _('website_backend.field.status'),
|
|
1397
|
+
cell: (row) => badge(row.status, 'info'),
|
|
1398
|
+
},
|
|
1399
|
+
],
|
|
1400
|
+
}, { paginate: false });
|
|
1401
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.submissions.title'), frame: collection.frame, controls: stack([
|
|
1402
|
+
...(options.formId
|
|
1403
|
+
? [
|
|
1404
|
+
_jsx(RecordForm, { action: `/admin/website/forms/${options.formId}/submissions${options.locale ?? ''}`, method: "get", hidden: collectionQueryKeep(new URL(frame.collectionUrl ??
|
|
1405
|
+
`/admin/website/forms/${options.formId}/submissions${options.locale ?? ''}`, 'http://collection.local'), ['status']), layout: "inline", fields: [
|
|
1376
1406
|
{
|
|
1377
1407
|
name: 'status',
|
|
1378
1408
|
label: _('website_backend.field.status'),
|
|
@@ -1384,55 +1414,21 @@ export const submissionsScreen = (_, rows, frame, options = {}) => (_jsx(ListScr
|
|
|
1384
1414
|
{ value: 'purged', label: _('website_backend.state.purged') },
|
|
1385
1415
|
],
|
|
1386
1416
|
},
|
|
1387
|
-
], submit: _('website_backend.action.apply'), submitVariant: "secondary" })
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
label: _('website_backend.field.createdAt'),
|
|
1403
|
-
kind: 'date',
|
|
1404
|
-
priority: 'primary',
|
|
1405
|
-
cell: (row) => row.createdAt,
|
|
1406
|
-
},
|
|
1407
|
-
{
|
|
1408
|
-
key: 'summary',
|
|
1409
|
-
label: _('website_backend.field.summary'),
|
|
1410
|
-
cell: (row) => row.purgedAt
|
|
1411
|
-
? badge(_('website_backend.state.purged'), 'neutral')
|
|
1412
|
-
: Object.keys(row.summary ?? {}).length
|
|
1413
|
-
? code(JSON.stringify(row.summary))
|
|
1414
|
-
: badge(_('website_backend.state.noPreview'), 'neutral'),
|
|
1415
|
-
},
|
|
1416
|
-
{
|
|
1417
|
-
key: 'hold',
|
|
1418
|
-
label: _('website_backend.field.hold'),
|
|
1419
|
-
cell: (row) => row.held
|
|
1420
|
-
? badge(row.holdReason ?? _('website_backend.state.yes'), 'warning')
|
|
1421
|
-
: badge(_('website_backend.state.no'), 'neutral'),
|
|
1422
|
-
},
|
|
1423
|
-
{
|
|
1424
|
-
key: 'consent',
|
|
1425
|
-
label: _('website_backend.field.consent'),
|
|
1426
|
-
cell: (row) => badge(row.consent ? _('website_backend.state.yes') : _('website_backend.state.no'), row.consent ? 'positive' : 'neutral'),
|
|
1427
|
-
},
|
|
1428
|
-
{
|
|
1429
|
-
key: 'status',
|
|
1430
|
-
label: _('website_backend.field.status'),
|
|
1431
|
-
cell: (row) => badge(row.status, 'info'),
|
|
1432
|
-
},
|
|
1433
|
-
],
|
|
1434
|
-
}),
|
|
1435
|
-
]) }));
|
|
1417
|
+
], submit: _('website_backend.action.apply'), submitVariant: "secondary" }),
|
|
1418
|
+
]
|
|
1419
|
+
: []),
|
|
1420
|
+
]), body: stack([
|
|
1421
|
+
// `listSubmissions` and `countSubmissions` have both taken this since
|
|
1422
|
+
// they were written. Without it a form with a year of entries is read
|
|
1423
|
+
// thirty at a time and the erased rows sit among the live ones.
|
|
1424
|
+
...(options.formId
|
|
1425
|
+
? submissionActions(_, options.formId, options.fields ?? [], options.retentionDays ?? null, options.locale ?? '', options.status ?? 'all')
|
|
1426
|
+
: []),
|
|
1427
|
+
rows.length === 0
|
|
1428
|
+
? emptyState(_('website_backend.submissions.empty'), _('website_backend.submissions.emptyHint'))
|
|
1429
|
+
: collectionTable(_, collection.table),
|
|
1430
|
+
]) }));
|
|
1431
|
+
};
|
|
1436
1432
|
/** The four site roles the access layer recognises, in the order they widen. */
|
|
1437
1433
|
const SITE_ROLES = ['contributor', 'author', 'editor', 'administrator'];
|
|
1438
1434
|
/**
|
|
@@ -1442,62 +1438,64 @@ const SITE_ROLES = ['contributor', 'author', 'editor', 'administrator'];
|
|
|
1442
1438
|
* changed by calling the function directly. A permission that can be granted
|
|
1443
1439
|
* and never reviewed is the kind that quietly outlives the reason for it.
|
|
1444
1440
|
*/
|
|
1445
|
-
export const siteMembersScreen = (_, site, rows, frame, options = {}) =>
|
|
1446
|
-
|
|
1441
|
+
export const siteMembersScreen = (_, site, rows, frame, options = {}) => {
|
|
1442
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
1443
|
+
rows,
|
|
1444
|
+
id: (row) => row.id,
|
|
1445
|
+
columns: [
|
|
1446
|
+
{
|
|
1447
|
+
key: 'user',
|
|
1448
|
+
label: _('website_backend.members.user'),
|
|
1449
|
+
priority: 'primary',
|
|
1450
|
+
cell: (row) => row.userId,
|
|
1451
|
+
},
|
|
1452
|
+
{
|
|
1453
|
+
key: 'role',
|
|
1454
|
+
label: _('website_backend.members.role'),
|
|
1455
|
+
cell: (row) => badge(_(`website_backend.role.${row.role}`), 'info'),
|
|
1456
|
+
},
|
|
1457
|
+
{
|
|
1458
|
+
key: 'remove',
|
|
1459
|
+
label: _('website_backend.action.remove'),
|
|
1460
|
+
cell: (row) => (_jsx(RecordActions, { action: `/admin/website/sites/${site.id}/members/${row.id}/remove${options.locale ?? ''}`, size: "compact", actions: [
|
|
1461
|
+
{
|
|
1462
|
+
value: 'remove',
|
|
1463
|
+
label: _('website_backend.action.remove'),
|
|
1464
|
+
variant: 'destructive',
|
|
1465
|
+
},
|
|
1466
|
+
] })),
|
|
1467
|
+
},
|
|
1468
|
+
],
|
|
1469
|
+
}, { paginate: true });
|
|
1470
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.members.title'), frame: collection.frame, actions: inline([
|
|
1447
1471
|
linkButton({
|
|
1448
1472
|
label: _('website_backend.action.backToSite'),
|
|
1449
1473
|
href: `/admin/website/sites/${site.id}${options.locale ?? ''}`,
|
|
1450
1474
|
}),
|
|
1451
|
-
]),
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
columns: [
|
|
1476
|
-
{
|
|
1477
|
-
key: 'user',
|
|
1478
|
-
label: _('website_backend.members.user'),
|
|
1479
|
-
priority: 'primary',
|
|
1480
|
-
cell: (row) => row.userId,
|
|
1481
|
-
},
|
|
1482
|
-
{
|
|
1483
|
-
key: 'role',
|
|
1484
|
-
label: _('website_backend.members.role'),
|
|
1485
|
-
cell: (row) => badge(_(`website_backend.role.${row.role}`), 'info'),
|
|
1486
|
-
},
|
|
1487
|
-
{
|
|
1488
|
-
key: 'remove',
|
|
1489
|
-
label: _('website_backend.action.remove'),
|
|
1490
|
-
cell: (row) => (_jsx(RecordActions, { action: `/admin/website/sites/${site.id}/members/${row.id}/remove${options.locale ?? ''}`, size: "compact", actions: [
|
|
1491
|
-
{
|
|
1492
|
-
value: 'remove',
|
|
1493
|
-
label: _('website_backend.action.remove'),
|
|
1494
|
-
variant: 'destructive',
|
|
1495
|
-
},
|
|
1496
|
-
] })),
|
|
1497
|
-
},
|
|
1498
|
-
],
|
|
1499
|
-
}),
|
|
1500
|
-
]) }));
|
|
1475
|
+
]), body: stack([
|
|
1476
|
+
_jsx(Section, { title: _('website_backend.members.add'), description: _('website_backend.members.addHint'), body: _jsx(Surface, { padding: "compact", body: _jsx(RecordForm, { action: `/admin/website/sites/${site.id}/members${options.locale ?? ''}`, layout: "inline", fields: [
|
|
1477
|
+
{
|
|
1478
|
+
name: 'userId',
|
|
1479
|
+
label: _('website_backend.members.user'),
|
|
1480
|
+
value: options.values?.userId,
|
|
1481
|
+
required: true,
|
|
1482
|
+
},
|
|
1483
|
+
{
|
|
1484
|
+
name: 'role',
|
|
1485
|
+
label: _('website_backend.members.role'),
|
|
1486
|
+
type: 'select',
|
|
1487
|
+
value: options.values?.role ?? 'editor',
|
|
1488
|
+
options: SITE_ROLES.map((role) => ({
|
|
1489
|
+
value: role,
|
|
1490
|
+
label: _(`website_backend.role.${role}`),
|
|
1491
|
+
})),
|
|
1492
|
+
},
|
|
1493
|
+
], submit: _('website_backend.action.save'), submitVariant: "primary", errors: options.errors }) }) }),
|
|
1494
|
+
rows.length === 0
|
|
1495
|
+
? emptyState(_('website_backend.members.empty'), _('website_backend.members.emptyHint'))
|
|
1496
|
+
: collectionTable(_, collection.table),
|
|
1497
|
+
]) }));
|
|
1498
|
+
};
|
|
1501
1499
|
/**
|
|
1502
1500
|
* Which hosts answer for this site, and which one the others defer to.
|
|
1503
1501
|
*
|
|
@@ -1523,21 +1521,72 @@ export const siteDomainsScreen = (_, site, rows, frame, options = {}) => {
|
|
|
1523
1521
|
size: 'compact',
|
|
1524
1522
|
}),
|
|
1525
1523
|
]) })));
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1524
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
1525
|
+
rows: options.tableRows ?? rows,
|
|
1526
|
+
id: (row) => row.id,
|
|
1527
|
+
columns: [
|
|
1528
|
+
{
|
|
1529
|
+
key: 'host',
|
|
1530
|
+
label: _('website_backend.domains.host'),
|
|
1531
|
+
priority: 'primary',
|
|
1532
|
+
cell: (row) => row.host,
|
|
1533
|
+
},
|
|
1534
|
+
{
|
|
1535
|
+
key: 'evidence',
|
|
1536
|
+
label: _('website_backend.domains.evidence'),
|
|
1537
|
+
kind: 'status',
|
|
1538
|
+
cell: () => badge(_('website_backend.domains.pendingEvidence'), 'warning'),
|
|
1539
|
+
},
|
|
1540
|
+
{
|
|
1541
|
+
key: 'tls',
|
|
1542
|
+
label: _('website_backend.domains.tls'),
|
|
1543
|
+
kind: 'status',
|
|
1544
|
+
cell: () => badge(_('website_backend.domains.pendingEvidence'), 'warning'),
|
|
1545
|
+
},
|
|
1546
|
+
{
|
|
1547
|
+
key: 'primary',
|
|
1548
|
+
label: _('website_backend.domains.primary'),
|
|
1549
|
+
cell: (row) => row.primary
|
|
1550
|
+
? badge(_('website_backend.state.yes'), 'positive')
|
|
1551
|
+
: badge(_('website_backend.state.no'), 'neutral'),
|
|
1552
|
+
},
|
|
1553
|
+
{
|
|
1554
|
+
key: 'edit',
|
|
1555
|
+
label: _('website_backend.action.edit'),
|
|
1556
|
+
cell: (row) => linkButton({
|
|
1557
|
+
label: _('website_backend.action.edit'),
|
|
1558
|
+
href: `/admin/website/sites/${site.id}/domains?edit=${encodeURIComponent(row.id)}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
1559
|
+
size: 'compact',
|
|
1531
1560
|
}),
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1561
|
+
},
|
|
1562
|
+
{
|
|
1563
|
+
key: 'remove',
|
|
1564
|
+
label: _('website_backend.action.remove'),
|
|
1565
|
+
cell: (row) => (_jsx(RecordActions, { action: `/admin/website/sites/${site.id}/domains/${row.id}/remove${locale}`, size: "compact", actions: [
|
|
1566
|
+
{
|
|
1567
|
+
value: 'remove',
|
|
1568
|
+
label: _('website_backend.action.remove'),
|
|
1569
|
+
variant: 'destructive',
|
|
1570
|
+
},
|
|
1571
|
+
] })),
|
|
1572
|
+
},
|
|
1573
|
+
],
|
|
1574
|
+
responsive: 'stack',
|
|
1575
|
+
}, { paginate: true });
|
|
1576
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.domains.title'), frame: collection.frame, actions: inline([
|
|
1577
|
+
linkButton({
|
|
1578
|
+
label: _('website_backend.action.backToSite'),
|
|
1579
|
+
href: `/admin/website/sites/${site.id}${locale}`,
|
|
1580
|
+
}),
|
|
1581
|
+
...(editing
|
|
1582
|
+
? [
|
|
1583
|
+
linkButton({
|
|
1584
|
+
label: _('website_backend.action.cancel'),
|
|
1585
|
+
href: `/admin/website/sites/${site.id}/domains${locale}`,
|
|
1586
|
+
}),
|
|
1587
|
+
]
|
|
1588
|
+
: []),
|
|
1589
|
+
]), body: stack([
|
|
1541
1590
|
rows.length === 0
|
|
1542
1591
|
? Notice({
|
|
1543
1592
|
tone: 'warning',
|
|
@@ -1605,58 +1654,7 @@ export const siteDomainsScreen = (_, site, rows, frame, options = {}) => {
|
|
|
1605
1654
|
}),
|
|
1606
1655
|
]) }),
|
|
1607
1656
|
], 'loose'),
|
|
1608
|
-
rows.length === 0 ?
|
|
1609
|
-
rows,
|
|
1610
|
-
id: (row) => row.id,
|
|
1611
|
-
columns: [
|
|
1612
|
-
{
|
|
1613
|
-
key: 'host',
|
|
1614
|
-
label: _('website_backend.domains.host'),
|
|
1615
|
-
priority: 'primary',
|
|
1616
|
-
cell: (row) => row.host,
|
|
1617
|
-
},
|
|
1618
|
-
{
|
|
1619
|
-
key: 'evidence',
|
|
1620
|
-
label: _('website_backend.domains.evidence'),
|
|
1621
|
-
kind: 'status',
|
|
1622
|
-
cell: () => badge(_('website_backend.domains.pendingEvidence'), 'warning'),
|
|
1623
|
-
},
|
|
1624
|
-
{
|
|
1625
|
-
key: 'tls',
|
|
1626
|
-
label: _('website_backend.domains.tls'),
|
|
1627
|
-
kind: 'status',
|
|
1628
|
-
cell: () => badge(_('website_backend.domains.pendingEvidence'), 'warning'),
|
|
1629
|
-
},
|
|
1630
|
-
{
|
|
1631
|
-
key: 'primary',
|
|
1632
|
-
label: _('website_backend.domains.primary'),
|
|
1633
|
-
cell: (row) => row.primary
|
|
1634
|
-
? badge(_('website_backend.state.yes'), 'positive')
|
|
1635
|
-
: badge(_('website_backend.state.no'), 'neutral'),
|
|
1636
|
-
},
|
|
1637
|
-
{
|
|
1638
|
-
key: 'edit',
|
|
1639
|
-
label: _('website_backend.action.edit'),
|
|
1640
|
-
cell: (row) => linkButton({
|
|
1641
|
-
label: _('website_backend.action.edit'),
|
|
1642
|
-
href: `/admin/website/sites/${site.id}/domains?edit=${encodeURIComponent(row.id)}${locale ? `&${locale.slice(1)}` : ''}`,
|
|
1643
|
-
size: 'compact',
|
|
1644
|
-
}),
|
|
1645
|
-
},
|
|
1646
|
-
{
|
|
1647
|
-
key: 'remove',
|
|
1648
|
-
label: _('website_backend.action.remove'),
|
|
1649
|
-
cell: (row) => (_jsx(RecordActions, { action: `/admin/website/sites/${site.id}/domains/${row.id}/remove${locale}`, size: "compact", actions: [
|
|
1650
|
-
{
|
|
1651
|
-
value: 'remove',
|
|
1652
|
-
label: _('website_backend.action.remove'),
|
|
1653
|
-
variant: 'destructive',
|
|
1654
|
-
},
|
|
1655
|
-
] })),
|
|
1656
|
-
},
|
|
1657
|
-
],
|
|
1658
|
-
responsive: 'stack',
|
|
1659
|
-
})),
|
|
1657
|
+
rows.length === 0 ? null : collectionTable(_, collection.table),
|
|
1660
1658
|
]) }));
|
|
1661
1659
|
};
|
|
1662
1660
|
/**
|
|
@@ -1669,14 +1667,77 @@ export const siteDomainsScreen = (_, site, rows, frame, options = {}) => {
|
|
|
1669
1667
|
export const redirectsScreen = (_, rows, sites, siteId, frame, options = {}) => {
|
|
1670
1668
|
const editing = options.editing ?? null;
|
|
1671
1669
|
const values = options.values ?? {};
|
|
1670
|
+
// Two callers with two questions: the state links set `state`, the row's
|
|
1671
|
+
// edit button sets `edit`. Forwarding only one of them left the edit button
|
|
1672
|
+
// pointing back at the plain list.
|
|
1672
1673
|
const query = (params) => {
|
|
1673
|
-
const
|
|
1674
|
-
|
|
1675
|
-
|
|
1676
|
-
|
|
1674
|
+
const url = new URL(frame.collectionUrl ?? `/admin/website/redirects${options.locale ?? ''}`, 'http://collection.local');
|
|
1675
|
+
url.searchParams.set('site', siteId ?? '');
|
|
1676
|
+
if (params.edit)
|
|
1677
|
+
return withParam(url, 'edit', params.edit, false);
|
|
1678
|
+
url.searchParams.delete('edit');
|
|
1679
|
+
return withParam(url, 'state', params.state ?? null);
|
|
1677
1680
|
};
|
|
1678
|
-
|
|
1679
|
-
|
|
1681
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
1682
|
+
rows,
|
|
1683
|
+
id: (row) => row.id,
|
|
1684
|
+
columns: [
|
|
1685
|
+
{
|
|
1686
|
+
key: 'from',
|
|
1687
|
+
label: _('website_backend.redirects.from'),
|
|
1688
|
+
priority: 'primary',
|
|
1689
|
+
cell: (row) => row.fromPath,
|
|
1690
|
+
},
|
|
1691
|
+
{ key: 'to', label: _('website_backend.redirects.to'), cell: (row) => row.toPath },
|
|
1692
|
+
{
|
|
1693
|
+
key: 'kind',
|
|
1694
|
+
label: _('website_backend.redirects.permanent'),
|
|
1695
|
+
cell: (row) => badge(row.permanent ? _('website_backend.redirects.p301') : _('website_backend.redirects.p302'), row.permanent ? 'info' : 'neutral'),
|
|
1696
|
+
},
|
|
1697
|
+
{
|
|
1698
|
+
key: 'status',
|
|
1699
|
+
label: _('website_backend.field.status'),
|
|
1700
|
+
cell: (row) => badge(row.active ? _('website_backend.state.active') : _('website_backend.state.inactive'), row.active ? 'positive' : 'neutral'),
|
|
1701
|
+
},
|
|
1702
|
+
{
|
|
1703
|
+
key: 'edit',
|
|
1704
|
+
label: _('website_backend.action.edit'),
|
|
1705
|
+
cell: (row) => linkButton({
|
|
1706
|
+
label: _('website_backend.action.edit'),
|
|
1707
|
+
href: query({ edit: row.id }),
|
|
1708
|
+
size: 'compact',
|
|
1709
|
+
}),
|
|
1710
|
+
},
|
|
1711
|
+
{
|
|
1712
|
+
// Off rather than deleted: the unique index holds one row per
|
|
1713
|
+
// `fromPath`, so deleting to "free" the path and deactivating
|
|
1714
|
+
// to stop it are the same reversible act, and one of them
|
|
1715
|
+
// keeps the history of what that address used to do.
|
|
1716
|
+
key: 'state',
|
|
1717
|
+
label: _('website_backend.redirects.state'),
|
|
1718
|
+
cell: (row) => (_jsx(RecordActions, { action: `/admin/website/redirects/${row.id}/state${options.locale ?? ''}`, size: "compact", actions: [
|
|
1719
|
+
row.active
|
|
1720
|
+
? { value: 'deactivate', label: _('website_backend.action.deactivate') }
|
|
1721
|
+
: { value: 'activate', label: _('website_backend.action.activate') },
|
|
1722
|
+
] })),
|
|
1723
|
+
},
|
|
1724
|
+
],
|
|
1725
|
+
}, { paginate: true, searchText: (row) => `${row.fromPath} ${row.toPath}` });
|
|
1726
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.redirects.title'), frame: collection.frame, controls: stack([
|
|
1727
|
+
siteSwitcher(_, '/admin/website/redirects', sites, siteId, options.locale ?? '', collection.frame),
|
|
1728
|
+
...(siteId
|
|
1729
|
+
? [
|
|
1730
|
+
inline([
|
|
1731
|
+
linkButton({ label: _('website_backend.redirects.all'), href: query({}) }),
|
|
1732
|
+
linkButton({ label: _('website_backend.state.active'), href: query({ state: 'active' }) }),
|
|
1733
|
+
linkButton({
|
|
1734
|
+
label: _('website_backend.state.inactive'),
|
|
1735
|
+
href: query({ state: 'inactive' }),
|
|
1736
|
+
}),
|
|
1737
|
+
]),
|
|
1738
|
+
]
|
|
1739
|
+
: []),
|
|
1740
|
+
]), body: stack([
|
|
1680
1741
|
...(siteId
|
|
1681
1742
|
? [
|
|
1682
1743
|
_jsx(Section, { title: editing ? _('website_backend.redirects.edit') : _('website_backend.redirects.add'), description: _('website_backend.redirects.addHint'), body: _jsx(Surface, { padding: "compact", body: _jsx(RecordForm, { action: `/admin/website/redirects${editing ? `/${editing.id}` : ''}${options.locale ?? ''}`, hidden: { siteId }, layout: "inline", fields: [
|
|
@@ -1705,70 +1766,13 @@ export const redirectsScreen = (_, rows, sites, siteId, frame, options = {}) =>
|
|
|
1705
1766
|
// The list already had a column for a state nothing could produce:
|
|
1706
1767
|
// the route wrote `active: true` every time, so every row read
|
|
1707
1768
|
// "active" for ever and the off switch on the contract was unreachable.
|
|
1708
|
-
inline([
|
|
1709
|
-
linkButton({ label: _('website_backend.redirects.all'), href: query({}) }),
|
|
1710
|
-
linkButton({
|
|
1711
|
-
label: _('website_backend.state.active'),
|
|
1712
|
-
href: query({ state: 'active' }),
|
|
1713
|
-
}),
|
|
1714
|
-
linkButton({
|
|
1715
|
-
label: _('website_backend.state.inactive'),
|
|
1716
|
-
href: query({ state: 'inactive' }),
|
|
1717
|
-
}),
|
|
1718
|
-
]),
|
|
1719
1769
|
]
|
|
1720
1770
|
: []),
|
|
1721
1771
|
!siteId
|
|
1722
1772
|
? emptyState(_('website_backend.content.noSite'), _('website_backend.content.noSiteHint'))
|
|
1723
1773
|
: rows.length === 0
|
|
1724
1774
|
? emptyState(_('website_backend.redirects.empty'), _('website_backend.redirects.emptyHint'))
|
|
1725
|
-
:
|
|
1726
|
-
rows,
|
|
1727
|
-
id: (row) => row.id,
|
|
1728
|
-
columns: [
|
|
1729
|
-
{
|
|
1730
|
-
key: 'from',
|
|
1731
|
-
label: _('website_backend.redirects.from'),
|
|
1732
|
-
priority: 'primary',
|
|
1733
|
-
cell: (row) => row.fromPath,
|
|
1734
|
-
},
|
|
1735
|
-
{ key: 'to', label: _('website_backend.redirects.to'), cell: (row) => row.toPath },
|
|
1736
|
-
{
|
|
1737
|
-
key: 'kind',
|
|
1738
|
-
label: _('website_backend.redirects.permanent'),
|
|
1739
|
-
cell: (row) => badge(row.permanent
|
|
1740
|
-
? _('website_backend.redirects.p301')
|
|
1741
|
-
: _('website_backend.redirects.p302'), row.permanent ? 'info' : 'neutral'),
|
|
1742
|
-
},
|
|
1743
|
-
{
|
|
1744
|
-
key: 'status',
|
|
1745
|
-
label: _('website_backend.field.status'),
|
|
1746
|
-
cell: (row) => badge(row.active ? _('website_backend.state.active') : _('website_backend.state.inactive'), row.active ? 'positive' : 'neutral'),
|
|
1747
|
-
},
|
|
1748
|
-
{
|
|
1749
|
-
key: 'edit',
|
|
1750
|
-
label: _('website_backend.action.edit'),
|
|
1751
|
-
cell: (row) => linkButton({
|
|
1752
|
-
label: _('website_backend.action.edit'),
|
|
1753
|
-
href: query({ edit: row.id }),
|
|
1754
|
-
size: 'compact',
|
|
1755
|
-
}),
|
|
1756
|
-
},
|
|
1757
|
-
{
|
|
1758
|
-
// Off rather than deleted: the unique index holds one row per
|
|
1759
|
-
// `fromPath`, so deleting to "free" the path and deactivating
|
|
1760
|
-
// to stop it are the same reversible act, and one of them
|
|
1761
|
-
// keeps the history of what that address used to do.
|
|
1762
|
-
key: 'state',
|
|
1763
|
-
label: _('website_backend.redirects.state'),
|
|
1764
|
-
cell: (row) => (_jsx(RecordActions, { action: `/admin/website/redirects/${row.id}/state${options.locale ?? ''}`, size: "compact", actions: [
|
|
1765
|
-
row.active
|
|
1766
|
-
? { value: 'deactivate', label: _('website_backend.action.deactivate') }
|
|
1767
|
-
: { value: 'activate', label: _('website_backend.action.activate') },
|
|
1768
|
-
] })),
|
|
1769
|
-
},
|
|
1770
|
-
],
|
|
1771
|
-
}),
|
|
1775
|
+
: collectionTable(_, collection.table),
|
|
1772
1776
|
]) }));
|
|
1773
1777
|
};
|
|
1774
1778
|
/**
|
|
@@ -1819,86 +1823,100 @@ const publicationTone = (state) => state === 'active' ? 'positive' : state === '
|
|
|
1819
1823
|
* only by an agent, so the atomic path existed and the one-page-at-a-time path
|
|
1820
1824
|
* was the only one a person could take.
|
|
1821
1825
|
*/
|
|
1822
|
-
export const publicationsScreen = (_, rows, entries, sites, siteId, frame, options = {}) =>
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
_jsx(Section, { title: _('website_backend.publications.prepare'), description: _('website_backend.publications.prepareHint'), body: _jsx(Surface, { body: _jsx(RecordForm, { action: `/admin/website/publications${options.locale ?? ''}`, hidden: { siteId }, fields: [
|
|
1850
|
-
{
|
|
1851
|
-
name: 'entryIds',
|
|
1852
|
-
label: _('website_backend.publications.entries'),
|
|
1853
|
-
type: 'textarea',
|
|
1854
|
-
value: entries.map((entry) => entry.id).join('\n'),
|
|
1855
|
-
help: _('website_backend.publications.entriesHint'),
|
|
1856
|
-
span: 'full',
|
|
1857
|
-
required: true,
|
|
1858
|
-
},
|
|
1859
|
-
], submit: _('website_backend.publications.prepare'), submitVariant: "primary", errors: options.errors }) }) }),
|
|
1860
|
-
]
|
|
1861
|
-
: []),
|
|
1862
|
-
!siteId
|
|
1863
|
-
? emptyState(_('website_backend.content.noSite'), _('website_backend.content.noSiteHint'))
|
|
1864
|
-
: rows.length === 0
|
|
1865
|
-
? emptyState(_('website_backend.publications.empty'), _('website_backend.publications.emptyHint'))
|
|
1866
|
-
: dataTable(_, {
|
|
1867
|
-
rows,
|
|
1868
|
-
id: (row) => row.id,
|
|
1869
|
-
columns: [
|
|
1870
|
-
{
|
|
1871
|
-
key: 'prepared',
|
|
1872
|
-
label: _('website_backend.publications.preparedAt'),
|
|
1873
|
-
kind: 'date',
|
|
1874
|
-
priority: 'primary',
|
|
1875
|
-
cell: (row) => row.preparedAt,
|
|
1876
|
-
},
|
|
1877
|
-
{
|
|
1878
|
-
key: 'state',
|
|
1879
|
-
label: _('website_backend.field.status'),
|
|
1880
|
-
cell: (row) => badge(_(`website_backend.pubstate.${row.state}`), publicationTone(row.state)),
|
|
1881
|
-
},
|
|
1826
|
+
export const publicationsScreen = (_, rows, entries, sites, siteId, frame, options = {}) => {
|
|
1827
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
1828
|
+
rows,
|
|
1829
|
+
id: (row) => row.id,
|
|
1830
|
+
columns: [
|
|
1831
|
+
{
|
|
1832
|
+
key: 'prepared',
|
|
1833
|
+
label: _('website_backend.publications.preparedAt'),
|
|
1834
|
+
kind: 'date',
|
|
1835
|
+
priority: 'primary',
|
|
1836
|
+
cell: (row) => row.preparedAt,
|
|
1837
|
+
},
|
|
1838
|
+
{
|
|
1839
|
+
key: 'state',
|
|
1840
|
+
label: _('website_backend.field.status'),
|
|
1841
|
+
cell: (row) => badge(_(`website_backend.pubstate.${row.state}`), publicationTone(row.state)),
|
|
1842
|
+
},
|
|
1843
|
+
{
|
|
1844
|
+
key: 'count',
|
|
1845
|
+
label: _('website_backend.publications.entryCount'),
|
|
1846
|
+
kind: 'number',
|
|
1847
|
+
cell: (row) => String(row.entryCount),
|
|
1848
|
+
},
|
|
1849
|
+
{
|
|
1850
|
+
key: 'act',
|
|
1851
|
+
label: _('website_backend.publications.action'),
|
|
1852
|
+
cell: (row) => row.state === 'prepared' ? (_jsx(RecordActions, { action: `/admin/website/publications/${row.id}/activate${options.locale ?? ''}`, hidden: { expectedPublicationId: options.activeId ?? '' }, size: "compact", actions: [
|
|
1882
1853
|
{
|
|
1883
|
-
|
|
1884
|
-
label: _('website_backend.
|
|
1885
|
-
|
|
1886
|
-
cell: (row) => String(row.entryCount),
|
|
1854
|
+
value: 'activate',
|
|
1855
|
+
label: _('website_backend.action.activate'),
|
|
1856
|
+
variant: 'primary',
|
|
1887
1857
|
},
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1858
|
+
] })) : row.state === 'active' ? (_jsx(RecordActions, { action: `/admin/website/publications/${row.id}/rollback${options.locale ?? ''}`, size: "compact", actions: [{ value: 'rollback', label: _('website_backend.action.rollback') }] })) : (''),
|
|
1859
|
+
},
|
|
1860
|
+
],
|
|
1861
|
+
}, {
|
|
1862
|
+
paginate: true,
|
|
1863
|
+
searchText: (row) => `${row.preparedAt} ${_(`website_backend.pubstate.${row.state}`)} ${row.entryCount}`,
|
|
1864
|
+
});
|
|
1865
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.publications.title'), frame: collection.frame, controls: stack([
|
|
1866
|
+
siteSwitcher(_, '/admin/website/publications', sites, siteId, options.locale ?? '', collection.frame),
|
|
1867
|
+
stack([
|
|
1868
|
+
...(siteId
|
|
1869
|
+
? [
|
|
1870
|
+
_jsx(RecordForm, { action: `/admin/website/publications${options.locale ?? ''}`, method: "get", layout: "inline", hidden: {
|
|
1871
|
+
...collectionQueryKeep(new URL(frame.collectionUrl ?? `/admin/website/publications${options.locale ?? ''}`, 'http://collection.local'), ['state', 'site']),
|
|
1872
|
+
site: siteId,
|
|
1873
|
+
}, fields: [
|
|
1874
|
+
{
|
|
1875
|
+
name: 'state',
|
|
1876
|
+
label: _('website_backend.field.status'),
|
|
1877
|
+
type: 'select',
|
|
1878
|
+
value: options.state ?? 'all',
|
|
1879
|
+
options: [
|
|
1880
|
+
{ value: 'all', label: _('website_backend.state.all') },
|
|
1881
|
+
{ value: 'prepared', label: _('website_backend.pubstate.prepared') },
|
|
1882
|
+
{ value: 'active', label: _('website_backend.pubstate.active') },
|
|
1883
|
+
{ value: 'superseded', label: _('website_backend.pubstate.superseded') },
|
|
1884
|
+
],
|
|
1885
|
+
},
|
|
1886
|
+
], submit: _('website_backend.action.apply'), submitVariant: "secondary" }),
|
|
1887
|
+
]
|
|
1888
|
+
: []),
|
|
1889
|
+
]),
|
|
1890
|
+
]), body: stack([
|
|
1891
|
+
// Superseded sets accumulate one per activation and are the majority of
|
|
1892
|
+
// the list within a week, which buries the two rows anybody came to see.
|
|
1893
|
+
...(options.notice
|
|
1894
|
+
? [
|
|
1895
|
+
_jsx(Notice, { tone: "positive", title: _('website_backend.publications.done'), message: options.notice }),
|
|
1896
|
+
]
|
|
1897
|
+
: []),
|
|
1898
|
+
...(siteId && entries.length
|
|
1899
|
+
? [
|
|
1900
|
+
_jsx(Section, { title: _('website_backend.publications.prepare'), description: _('website_backend.publications.prepareHint'), body: _jsx(Surface, { body: _jsx(RecordForm, { action: `/admin/website/publications${options.locale ?? ''}`, hidden: { siteId }, fields: [
|
|
1892
1901
|
{
|
|
1893
|
-
|
|
1894
|
-
label: _('website_backend.
|
|
1895
|
-
|
|
1902
|
+
name: 'entryIds',
|
|
1903
|
+
label: _('website_backend.publications.entries'),
|
|
1904
|
+
type: 'textarea',
|
|
1905
|
+
value: entries.map((entry) => entry.id).join('\n'),
|
|
1906
|
+
help: _('website_backend.publications.entriesHint'),
|
|
1907
|
+
span: 'full',
|
|
1908
|
+
required: true,
|
|
1896
1909
|
},
|
|
1897
|
-
]
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1910
|
+
], submit: _('website_backend.publications.prepare'), submitVariant: "primary", errors: options.errors }) }) }),
|
|
1911
|
+
]
|
|
1912
|
+
: []),
|
|
1913
|
+
!siteId
|
|
1914
|
+
? emptyState(_('website_backend.content.noSite'), _('website_backend.content.noSiteHint'))
|
|
1915
|
+
: rows.length === 0
|
|
1916
|
+
? emptyState(_('website_backend.publications.empty'), _('website_backend.publications.emptyHint'))
|
|
1917
|
+
: collectionTable(_, collection.table),
|
|
1918
|
+
]) }));
|
|
1919
|
+
};
|
|
1902
1920
|
/**
|
|
1903
1921
|
* The head tags for one page, on the page's own screen.
|
|
1904
1922
|
*
|
|
@@ -1964,33 +1982,34 @@ export const concernsOf = (_, health) => {
|
|
|
1964
1982
|
* Read-only and built from reads that already existed. It is a place to notice,
|
|
1965
1983
|
* and every row leads to the screen that fixes the thing.
|
|
1966
1984
|
*/
|
|
1967
|
-
export const siteHealthScreen = (_, rows, frame, locale = '') => {
|
|
1985
|
+
export const siteHealthScreen = (_, rows, frame, locale = '', tableRows = rows) => {
|
|
1968
1986
|
const troubled = rows.filter((row) => concernsOf(_, row).length > 0);
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
|
|
1979
|
-
|
|
1980
|
-
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1987
|
+
const collection = prepareCollectionTable(_, frame, {
|
|
1988
|
+
rows: tableRows.filter((row) => concernsOf(_, row).length > 0),
|
|
1989
|
+
id: (row) => row.siteId,
|
|
1990
|
+
rowHref: (row) => `/admin/website/sites/${row.siteId}${locale}`,
|
|
1991
|
+
columns: [
|
|
1992
|
+
{
|
|
1993
|
+
key: 'site',
|
|
1994
|
+
label: _('website_backend.field.site'),
|
|
1995
|
+
priority: 'primary',
|
|
1996
|
+
cell: (row) => row.title,
|
|
1997
|
+
},
|
|
1998
|
+
{
|
|
1999
|
+
key: 'host',
|
|
2000
|
+
label: _('website_backend.domains.host'),
|
|
2001
|
+
kind: 'identifier',
|
|
2002
|
+
cell: (row) => row.primaryHost ? code(row.primaryHost) : badge(_('website_backend.health.none'), 'danger'),
|
|
2003
|
+
},
|
|
2004
|
+
{
|
|
2005
|
+
key: 'concerns',
|
|
2006
|
+
label: _('website_backend.health.concerns'),
|
|
2007
|
+
cell: (row) => inline(concernsOf(_, row).map((concern) => badge(concern.label, concern.tone))),
|
|
2008
|
+
},
|
|
2009
|
+
],
|
|
2010
|
+
}, { paginate: true });
|
|
2011
|
+
return (_jsx(ListScreenFrame, { translator: _, title: _('website_backend.health.title'), frame: collection.frame, body: stack([
|
|
2012
|
+
rows.length === 0 ? (emptyState(_('website_backend.sites.empty'), _('website_backend.sites.emptyHint'))) : troubled.length === 0 ? (_jsx(Notice, { tone: "positive", title: _('website_backend.health.allWell'), message: _('website_backend.health.allWellHint') })) : (collectionTable(_, collection.table)),
|
|
1994
2013
|
// The quiet sites are worth showing too: a list that only ever holds
|
|
1995
2014
|
// problems cannot tell "nothing is wrong" from "nothing was checked".
|
|
1996
2015
|
...(rows.length
|