@omega.js/desktop 0.50.0 → 0.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/assets/css/tokens/_index.scss +1 -1
- package/dist/assets/themes/base/_includes/frontend/sections/account-section-header.html +4 -1
- package/dist/assets/themes/base/_includes/frontend/sections/footer.html +13 -6
- package/dist/assets/themes/base/_includes/frontend/sections/nav.html +10 -8
- package/dist/assets/themes/base/_includes/global/sections/account.html +3 -1
- package/dist/assets/themes/base/_includes/global/sections/app-sidebar.html +12 -8
- package/dist/assets/themes/base/_includes/global/sections/app-topbar.html +10 -6
- package/dist/assets/themes/base/_includes/global/sections/page-header.html +8 -4
- package/dist/assets/themes/base/_layouts/backend/pages/dashboard/index.html +24 -24
- package/dist/assets/themes/base/_layouts/frontend/pages/about.html +10 -10
- package/dist/assets/themes/base/_layouts/frontend/pages/account/index.html +35 -35
- package/dist/assets/themes/base/_layouts/frontend/pages/alternatives/index.html +4 -4
- package/dist/assets/themes/base/_layouts/frontend/pages/auth/signin.html +1 -1
- package/dist/assets/themes/base/_layouts/frontend/pages/auth/signup.html +4 -4
- package/dist/assets/themes/base/_layouts/frontend/pages/contact.html +3 -3
- package/dist/assets/themes/base/_layouts/frontend/pages/download.html +34 -33
- package/dist/assets/themes/base/_layouts/frontend/pages/extension/index.html +11 -11
- package/dist/assets/themes/base/_layouts/frontend/pages/legal/document.html +1 -1
- package/dist/assets/themes/base/_layouts/frontend/pages/status.html +1 -1
- package/dist/assets/themes/base/_layouts/frontend/pages/team/index.html +9 -7
- package/dist/assets/themes/base/_layouts/frontend/pages/team/member.html +5 -3
- package/dist/assets/themes/base/_sections/about/letter/section.html +1 -1
- package/dist/assets/themes/base/_sections/about/letter/section.json5 +4 -4
- package/dist/assets/themes/base/_sections/marketing/bento/section.html +1 -1
- package/dist/assets/themes/base/_sections/marketing/bento/section.json5 +15 -15
- package/dist/assets/themes/base/_sections/marketing/cta/section.json5 +1 -1
- package/dist/assets/themes/base/_sections/marketing/hero/section.html +6 -6
- package/dist/assets/themes/base/_sections/marketing/hero/section.json5 +10 -10
- package/dist/assets/themes/base/_sections/marketing/product-demo/section.html +1 -1
- package/dist/assets/themes/base/_sections/marketing/product-demo/section.json5 +2 -2
- package/dist/assets/themes/base/_sections/marketing/stats/section.html +1 -1
- package/dist/assets/themes/base/_sections/marketing/stats/section.json5 +5 -5
- package/dist/assets/themes/base/_sections/marketing/trusted-by/section.html +1 -1
- package/dist/assets/themes/base/_sections/marketing/trusted-by/section.json5 +2 -2
- package/dist/assets/themes/neobrutalism/_layouts/frontend/pages/index.html +10 -10
- package/dist/assets/themes/newsflash/_layouts/frontend/pages/index.html +10 -10
- package/dist/assets/themes/newsflash/_sections/marketing/desks/section.html +2 -2
- package/dist/assets/themes/newsflash/_sections/marketing/desks/section.json5 +4 -4
- package/dist/build.js +69 -28
- package/dist/cli-run.js +20 -13
- package/dist/cli.js +12 -7
- package/dist/commands/build.js +0 -2
- package/dist/commands/deploy.js +116 -44
- package/dist/commands/finalize-release.js +5 -4
- package/dist/commands/launch.js +12 -7
- package/dist/commands/lib/deploy-precheck.js +66 -34
- package/dist/commands/lib/ensure-target.js +71 -11
- package/dist/commands/package.js +0 -1
- package/dist/commands/publish.js +11 -4
- package/dist/commands/release.js +99 -252
- package/dist/commands/runner.js +176 -42
- package/dist/commands/sign-windows.js +46 -15
- package/dist/commands/test.js +4 -3
- package/dist/commands/validate-certs.js +291 -115
- package/dist/config/page-template.html +4 -0
- package/dist/defaults/.github/workflows/build.yml +146 -64
- package/dist/defaults/AGENTS.md +3 -2
- package/dist/defaults/_.gitignore +4 -2
- package/dist/defaults/config/certs/README.md +25 -45
- package/dist/defaults/config/omega.json5 +66 -32
- package/dist/defaults/hooks/deploy/pre.js +10 -0
- package/dist/defaults/src/assets/scss/main.scss +12 -2
- package/dist/defaults/src/integrations/tray/index.js +1 -1
- package/dist/gulp/main.js +13 -25
- package/dist/gulp/tasks/audit.js +18 -6
- package/dist/gulp/tasks/build-config.js +181 -60
- package/dist/gulp/tasks/bundle.js +108 -36
- package/dist/gulp/tasks/release.js +86 -4
- package/dist/gulp/tasks/sass.js +11 -0
- package/dist/hooks/lib/notarize-tools.js +137 -0
- package/dist/hooks/notarize-artifacts.js +57 -0
- package/dist/hooks/notarize.js +59 -8
- package/dist/lib/auth-persistence.js +25 -0
- package/dist/lib/client-bridge.js +11 -8
- package/dist/lib/deep-link.js +15 -8
- package/dist/lib/protocol.js +7 -1
- package/dist/lib/restart-manager/install.js +6 -3
- package/dist/lib/sign-helpers/auto-unlock.js +65 -27
- package/dist/lib/sign-helpers/console-lock.js +34 -0
- package/dist/lib/sign-helpers/exec-with-limit.js +68 -0
- package/dist/lib/sign-helpers/resolve-icons.js +6 -4
- package/dist/lib/tray.js +7 -6
- package/dist/main.js +16 -0
- package/dist/preload.js +8 -0
- package/dist/renderer.js +16 -4
- package/dist/runner/job-started.js +104 -0
- package/dist/test/fixtures/consumer-app/config/omega.json5 +7 -0
- package/dist/test/fixtures/consumer-app/package.json +1 -1
- package/dist/test/fixtures/consumer-app/src/assets/js/components/main/index.js +7 -1
- package/dist/test/harness/main-entry.js +2 -1
- package/dist/test/harness/renderer-preload.js +12 -3
- package/dist/test/runners/boot.js +101 -11
- package/dist/test/runners/electron.js +1 -1
- package/dist/test/suites/boot/consumer-app-boots.test.js +54 -0
- package/dist/test/suites/build/audit.test.js +45 -6
- package/dist/test/suites/build/auth-persistence-resolve.test.js +119 -0
- package/dist/test/suites/build/auto-unlock.test.js +105 -0
- package/dist/test/suites/build/boot-runner-timeout.test.js +253 -0
- package/dist/test/suites/build/brand-scss.test.js +106 -0
- package/dist/test/suites/build/build-config.test.js +146 -36
- package/dist/test/suites/build/build-json-bake.test.js +245 -0
- package/dist/test/suites/build/build-verbs.test.js +48 -15
- package/dist/test/suites/build/build-workflow-jobs.test.js +190 -0
- package/dist/test/suites/build/cli.test.js +32 -10
- package/dist/test/suites/build/config-schema.test.js +4 -4
- package/dist/test/suites/build/console-lock.test.js +51 -0
- package/dist/test/suites/build/defaults-scaffold.test.js +71 -2
- package/dist/test/suites/build/deploy-direct.test.js +241 -0
- package/dist/test/suites/build/deploy-dispatch.test.js +287 -0
- package/dist/test/suites/build/deploy-hook.test.js +169 -0
- package/dist/test/suites/build/ensure-target.test.js +14 -2
- package/dist/test/suites/build/env-delivery.test.js +19 -10
- package/dist/test/suites/build/env-watch.test.js +18 -7
- package/dist/test/suites/build/esm-only-dependency.test.js +127 -0
- package/dist/test/suites/build/exec-with-limit.test.js +53 -0
- package/dist/test/suites/build/finalize-release.test.js +2 -2
- package/dist/test/suites/build/get-config.test.js +120 -8
- package/dist/test/suites/build/github-utils.test.js +12 -6
- package/dist/test/suites/build/license-stamp.test.js +6 -4
- package/dist/test/suites/build/manager.test.js +88 -68
- package/dist/test/suites/build/manifest-deps.test.js +116 -0
- package/dist/test/suites/build/merge-line-files.test.js +27 -4
- package/dist/test/suites/build/notarize-artifacts.test.js +135 -0
- package/dist/test/suites/build/notarize-tools.test.js +38 -0
- package/dist/test/suites/build/notarize.test.js +207 -0
- package/dist/test/suites/build/release-pipeline.test.js +38 -60
- package/dist/test/suites/build/release-skipped-upload.test.js +107 -0
- package/dist/test/suites/build/resolve-icons.test.js +35 -35
- package/dist/test/suites/build/runner-job-guard.test.js +182 -0
- package/dist/test/suites/build/runner.test.js +635 -5
- package/dist/test/suites/build/sentry.test.js +8 -3
- package/dist/test/suites/build/setup-scripts.test.js +3 -0
- package/dist/test/suites/build/sign-windows.test.js +92 -8
- package/dist/test/suites/build/test-stealth.test.js +17 -11
- package/dist/test/suites/build/url-helpers.test.js +37 -17
- package/dist/test/suites/build/validate-certs.test.js +428 -55
- package/dist/test/suites/build/validate-config.test.js +3 -3
- package/dist/test/suites/main/auth-flow.test.js +12 -0
- package/dist/test/suites/main/auth-persistence.test.js +14 -17
- package/dist/test/suites/main/auto-updater.test.js +2 -2
- package/dist/test/suites/main/boot-sequence.test.js +1 -1
- package/dist/test/suites/main/client-bridge.integration.test.js +5 -82
- package/dist/test/suites/main/client-bridge.test.js +19 -6
- package/dist/test/suites/main/deep-link.test.js +54 -0
- package/dist/test/suites/main/startup-paths-and-ua.test.js +1 -1
- package/dist/test/suites/main/url-helpers.test.js +81 -72
- package/dist/test/suites/renderer/cross-context-helpers.test.js +19 -16
- package/dist/utils/build-pipeline.js +10 -10
- package/dist/utils/github.js +12 -51
- package/dist/utils/load-env.js +66 -0
- package/dist/utils/mode-helpers.js +43 -111
- package/dist/utils/platform.js +37 -0
- package/dist/utils/runner-env.js +2 -1
- package/dist/utils/runner-job-guard.js +149 -0
- package/dist/utils/ship-keys.js +52 -0
- package/dist/utils/test-stealth.js +5 -3
- package/dist/utils/url-helpers.js +33 -17
- package/dist/vendor/config/bundle-id.js +53 -0
- package/dist/vendor/config/client-config.js +141 -0
- package/dist/vendor/config/company.js +334 -15
- package/dist/vendor/config/dev-facts.js +48 -0
- package/dist/vendor/config/env-delivery.js +231 -9
- package/dist/vendor/config/env-retired.js +137 -0
- package/dist/vendor/config/env-rules.js +22 -3
- package/dist/vendor/config/env-schema.js +234 -117
- package/dist/vendor/config/env.js +55 -26
- package/dist/vendor/config/environment.js +189 -0
- package/dist/vendor/config/hooks.js +13 -11
- package/dist/vendor/config/index.js +125 -44
- package/dist/vendor/config/load.js +366 -115
- package/dist/vendor/config/merge.js +2 -2
- package/dist/vendor/config/order.js +3 -3
- package/dist/vendor/config/platforms.js +276 -0
- package/dist/vendor/config/repo.js +249 -103
- package/dist/vendor/config/retired-keys.js +232 -27
- package/dist/vendor/config/schema.js +525 -99
- package/dist/vendor/config/site-global.js +63 -53
- package/dist/vendor/config/targets.js +187 -0
- package/dist/vendor/config/validate.js +119 -59
- package/dist/vendor/devkit/argv.js +118 -0
- package/dist/vendor/devkit/attach-log-file.js +21 -13
- package/dist/vendor/devkit/brand-tokens.js +278 -0
- package/dist/vendor/devkit/brand-version.js +425 -0
- package/dist/vendor/devkit/build-json.js +91 -0
- package/dist/vendor/devkit/bundle.js +48 -0
- package/dist/vendor/devkit/certificate-expiry.js +108 -0
- package/dist/vendor/devkit/certs.js +16 -194
- package/dist/vendor/devkit/ci-workflows.js +124 -8
- package/dist/vendor/devkit/cli-router.js +3 -3
- package/dist/vendor/devkit/defaults-engine.js +69 -7
- package/dist/vendor/devkit/deploy-follow.js +297 -0
- package/dist/vendor/devkit/deploy-precheck.js +23 -8
- package/dist/vendor/devkit/deploy-record.js +11 -27
- package/dist/vendor/devkit/deploy-snapshot.js +661 -0
- package/dist/vendor/devkit/deploy.js +505 -75
- package/dist/vendor/devkit/git-auth.js +73 -0
- package/dist/vendor/devkit/git-remote.js +172 -0
- package/dist/vendor/devkit/github-repo.js +290 -0
- package/dist/vendor/devkit/local.js +98 -3
- package/dist/vendor/devkit/lockfile.js +127 -0
- package/dist/vendor/devkit/merge-line-files.js +23 -16
- package/dist/vendor/devkit/omega-bin.js +18 -3
- package/dist/vendor/devkit/pack-local.js +388 -0
- package/dist/vendor/devkit/preludes/index.js +120 -0
- package/dist/vendor/devkit/preludes/origin-heal.js +142 -0
- package/dist/vendor/devkit/service-account.js +43 -0
- package/dist/vendor/devkit/ship-plan.js +112 -0
- package/dist/vendor/devkit/signing-env.js +180 -0
- package/dist/vendor/devkit/signing-tree.js +92 -0
- package/dist/vendor/devkit/target-seams.js +142 -0
- package/dist/vendor/devkit/target-secrets.js +231 -57
- package/dist/vendor/devkit/test/esm-only-fixture.js +48 -0
- package/dist/vendor/devkit/test/fixtures/esm-only-package/browser.js +19 -0
- package/dist/vendor/devkit/test/fixtures/esm-only-package/index.js +20 -0
- package/dist/vendor/devkit/test/fixtures/esm-only-package/package.json +13 -0
- package/dist/vendor/monitoring/env.js +20 -10
- package/dist/vendor/monitoring/main.js +1 -1
- package/dist/vendor/monitoring/preload.js +1 -1
- package/dist/vendor/monitoring/renderer.js +1 -1
- package/docs/analytics.md +1 -1
- package/docs/auto-updater.md +5 -5
- package/docs/boot-sequence.md +1 -1
- package/docs/build-system.md +15 -7
- package/docs/client-bridge.md +9 -7
- package/docs/config-schema.md +4 -4
- package/docs/css.md +8 -2
- package/docs/deep-link.md +12 -4
- package/docs/environment-detection.md +32 -24
- package/docs/hooks.md +3 -1
- package/docs/icons.md +7 -7
- package/docs/index.md +61 -23
- package/docs/installer-options.md +24 -21
- package/docs/logging.md +5 -5
- package/docs/releasing.md +29 -19
- package/docs/runner.md +51 -14
- package/docs/shared/brands.md +12 -6
- package/docs/shared/breaking-changes.md +375 -21
- package/docs/shared/config.md +764 -199
- package/docs/shared/deploys.md +217 -91
- package/docs/shared/icons.md +18 -0
- package/docs/shared/local-dev.md +28 -8
- package/docs/shared/logging.md +9 -6
- package/docs/shared/monitoring.md +27 -13
- package/docs/shared/publishing.md +3 -3
- package/docs/shared/rulings.md +2 -2
- package/docs/shared/testing.md +1 -1
- package/docs/shared/theming.md +26 -1
- package/docs/shared/translation.md +49 -7
- package/docs/shared/updates.md +1 -1
- package/docs/signing.md +60 -34
- package/docs/test-framework.md +10 -5
- package/docs/themes.md +15 -1
- package/package.json +18 -12
- package/bin/omega-desktop +0 -2
- package/dist/commands/push-secrets.js +0 -141
- package/dist/test/suites/build/deliver-certs.test.js +0 -95
- package/dist/test/suites/build/derive-signing-env.test.js +0 -122
- package/dist/test/suites/build/push-secrets.test.js +0 -226
- package/dist/test/suites/build/resolve-signing-cert.test.js +0 -342
- package/dist/utils/deliver-certs.js +0 -69
- package/dist/utils/derive-signing-env.js +0 -56
- package/dist/utils/resolve-signing-cert.js +0 -175
- package/dist/vendor/config/desktop-artifacts.js +0 -110
- package/dist/vendor/config/instances.js +0 -208
- /package/dist/defaults/config/icons/{macos → mac}/dmg.png +0 -0
- /package/dist/defaults/config/icons/{macos → mac}/icon.png +0 -0
- /package/dist/defaults/config/icons/{macos → mac}/tray.png +0 -0
|
@@ -4,9 +4,10 @@
|
|
|
4
4
|
* One file, config/omega.json5 (functions/config/omega.json5 for standalone
|
|
5
5
|
* backends), identical shape everywhere: shared sections (brand,
|
|
6
6
|
* cloud, analytics, payment, monitoring, connections, theme) + a `targets`
|
|
7
|
-
* object whose KEY PRESENCE says which targets a brand enables
|
|
8
|
-
*
|
|
9
|
-
*
|
|
7
|
+
* object whose KEY PRESENCE says which targets a brand enables: every key is a
|
|
8
|
+
* target NAME (the folder under targets/), every entry declares its framework
|
|
9
|
+
* `type`, and any shared key inside a target entry overrides the shared value
|
|
10
|
+
* for that surface (one agnostic deep merge).
|
|
10
11
|
*
|
|
11
12
|
* Replaces the per-framework config zoo (UJM's _config.yml + JSON split,
|
|
12
13
|
* EM's config/electron-manager.json, @omega.js/backend's backend-manager-config.json,
|
|
@@ -19,30 +20,35 @@
|
|
|
19
20
|
* at prepare time, never published on its own.
|
|
20
21
|
*/
|
|
21
22
|
|
|
22
|
-
const { TARGETS, CUSTOM_TARGET_TYPE, isCustomTargetEntry, BACKEND_PROJECT_TYPES, backendProjectType, SHARED_SECTIONS, SHARED_SCHEMA, TARGET_SCHEMAS, BRAND_ID_PATTERN } = require('./schema.js');
|
|
23
|
+
const { TARGETS, CUSTOM_TARGET_TYPE, isCustomTargetEntry, BACKEND_PROJECT_TYPES, backendProjectType, SHARED_SECTIONS, CLIENT_SECTIONS, SHARED_SCHEMA, TARGET_SCHEMAS, BRAND_ID_PATTERN, AMO_CATEGORIES } = require('./schema.js');
|
|
24
|
+
const { clientConfig, CLIENT_FACT_KEYS } = require('./client-config.js');
|
|
23
25
|
const { deepMerge } = require('./merge.js');
|
|
24
26
|
const { findSecretKeys, SECRET_KEY_PATTERN } = require('./secrets.js');
|
|
25
27
|
const { findRetiredKeys, RETIRED_KEYS, RETIRED_PATHS } = require('./retired-keys.js');
|
|
26
28
|
const { chosenProvider } = require('./providers.js');
|
|
27
29
|
const { validateConfig, runSchema, formatErrors, resolvedBrandHost } = require('./validate.js');
|
|
28
30
|
const { loadConfig, composeTargetConfig, hasOmegaConfig, resolveConfigPath, getEnabledTargets, findBrandRoot, findBrandConfigPath, resolveBrandRoot, FILE_NAME, CONFIG_LOCATIONS } = require('./load.js');
|
|
29
|
-
const {
|
|
31
|
+
const { ENV_ENVIRONMENTS, ENVIRONMENT_VAR, getEnvironment, isDevelopment, isProduction, isTesting, setEnvironment, buildLaneEnvironment, attachTo: attachEnvironment } = require('./environment.js');
|
|
32
|
+
const { loadEnv, reloadEnv, envEnvironment, resolveEnvChain, envLayerFiles, loadEnvChain, loadEnvRoots, applyDeliverAs, composeTargetEnv, envLine, serializeEnv } = require('./env.js');
|
|
30
33
|
const { ENV_SCHEMA, ENV_GROUPS, DELIVERY_MODES, envFileGroups, envSchemaEntry, envKeysForTarget, generatedEnvKeys, requiredEnvKeys, envKeysByGroup } = require('./env-schema.js');
|
|
31
|
-
const { WORKFLOW_OWNED_KEYS, workflowSecretKeys, bakeKeys, publishSecretKeys, renderSecretsBlock } = require('./env-delivery.js');
|
|
34
|
+
const { WORKFLOW_OWNED_KEYS, deliveredKeys, workflowSecretKeys, envFileKeys, artifactEnvValues, bakeKeys, bakeSourceKeys, publishSecretKeys, renderSecretsBlock, renderEnvFileKeys } = require('./env-delivery.js');
|
|
32
35
|
const { checkEnvRules } = require('./env-rules.js');
|
|
33
|
-
const {
|
|
36
|
+
const { RETIRED_ENV_KEYS, findRetiredEnvKeys, assertNoRetiredEnvKeys } = require('./env-retired.js');
|
|
37
|
+
const { resolveCompany, recordBrand, readRegistry, registryFile, COMPANY_DIR, COMPANY_RESOLVED_FILE, COMPANY_SELF } = require('./company.js');
|
|
34
38
|
const { applyConfigEdits, writeConfigValues, applyConfigRemovals, removeConfigValues } = require('./edit.js');
|
|
35
39
|
const { schemaDefaults, missingDefaults, defaultComments } = require('./defaults.js');
|
|
36
40
|
const { applyCanonicalOrder, CANONICAL_TOP_LEVEL_ORDER } = require('./order.js');
|
|
37
41
|
const { resolveSeedMode } = require('./seed.js');
|
|
38
42
|
const { resolveHook, loadHook } = require('./hooks.js');
|
|
39
43
|
const { toSiteGlobal } = require('./site-global.js');
|
|
40
|
-
const {
|
|
44
|
+
const { PLATFORMS, FORMATS, enabledFormats, formatKeys, desktopProductName, sanitizeProductName, desktopArtifactName, desktopArtifactNames } = require('./platforms.js');
|
|
41
45
|
const { resolveWinbackOffer, WINBACK_OFFER_DEFAULTS, WINBACK_DURATIONS } = require('./winback.js');
|
|
42
|
-
const {
|
|
46
|
+
const { REPO_PROVIDERS, HOSTING_PROVIDERS, repoBlock, sourceRepo, repoDrift, releasesRepo, websiteRepo, hostingProvider, pagesHost, brandVisibility } = require('./repo.js');
|
|
43
47
|
const { isDemoProject } = require('./demo.js');
|
|
48
|
+
const { deriveBundleIdPrefix, composeBundleId } = require('./bundle-id.js');
|
|
49
|
+
const { DEV_FACT_CHANNEL, devFactMissing } = require('./dev-facts.js');
|
|
44
50
|
const { CLASSIC_PORTS, CLASSIC_DEV_ORIGIN, isPortFree, resolvePorts, writePortsFile, readPortsFile, clearPortsFile, readSiblingPorts, readSiblingOrigin, envName, portsToEnv, envPort, envPorts } = require('./ports.js');
|
|
45
|
-
const {
|
|
51
|
+
const { TARGET_NAME_PATTERN, TARGET_TYPES, targetEntries, targetsOfType, hasTargetOfType, targetPath, targetNameFromDir, targetUrl, targetPortOffset, brandHost } = require('./targets.js');
|
|
46
52
|
|
|
47
53
|
module.exports = {
|
|
48
54
|
// Loading
|
|
@@ -68,9 +74,25 @@ module.exports = {
|
|
|
68
74
|
loadEnvChain,
|
|
69
75
|
loadEnvRoots,
|
|
70
76
|
|
|
71
|
-
// The ONE environment vocabulary ('development' | 'testing' | 'production')
|
|
77
|
+
// The ONE environment vocabulary ('development' | 'testing' | 'production'):
|
|
72
78
|
// the overlay's file suffix and every framework's own environment answer
|
|
73
79
|
ENV_ENVIRONMENTS,
|
|
80
|
+
// The ONE environment module every target answers from (#817): one input
|
|
81
|
+
// (OMEGA_ENVIRONMENT on Node, the baked config.environment in a browser),
|
|
82
|
+
// no per-surface default, a missing input is a loud error. `attachEnvironment`
|
|
83
|
+
// is its attachTo(), named for what it mixes in.
|
|
84
|
+
ENVIRONMENT_VAR,
|
|
85
|
+
getEnvironment,
|
|
86
|
+
isDevelopment,
|
|
87
|
+
isProduction,
|
|
88
|
+
isTesting,
|
|
89
|
+
setEnvironment,
|
|
90
|
+
// The word a node BUILD LANE is for, from its build-mode flag and whatever a
|
|
91
|
+
// parent lane named: the desktop and extension build Managers set this
|
|
92
|
+
buildLaneEnvironment,
|
|
93
|
+
attachEnvironment,
|
|
94
|
+
// The AMBIENT answer a lane resolves when nothing named one for it, and the
|
|
95
|
+
// producer of the input above
|
|
74
96
|
envEnvironment,
|
|
75
97
|
|
|
76
98
|
// The schema's `deliverAs` rename (#678) — the ONE place a brand-level name
|
|
@@ -103,19 +125,42 @@ module.exports = {
|
|
|
103
125
|
// bake list, and the set a push-secrets publisher sends. No framework keeps
|
|
104
126
|
// a hand-written list, and a secret can never bake into an artifact
|
|
105
127
|
WORKFLOW_OWNED_KEYS,
|
|
128
|
+
deliveredKeys,
|
|
106
129
|
workflowSecretKeys,
|
|
130
|
+
envFileKeys,
|
|
131
|
+
artifactEnvValues,
|
|
107
132
|
bakeKeys,
|
|
133
|
+
bakeSourceKeys,
|
|
108
134
|
publishSecretKeys,
|
|
109
135
|
renderSecretsBlock,
|
|
136
|
+
renderEnvFileKeys,
|
|
110
137
|
|
|
111
138
|
// The env presence checker (#626) — the ONE evaluator of `required` and
|
|
112
139
|
// `requiredWhen`; every consumer calls it, none keeps its own if
|
|
113
140
|
checkEnvRules,
|
|
114
141
|
|
|
115
|
-
//
|
|
116
|
-
// config
|
|
117
|
-
|
|
118
|
-
|
|
142
|
+
// The .env half of the retired-key register (#893): a key that moved into
|
|
143
|
+
// config fails the layer that still declares it, naming the move. Every
|
|
144
|
+
// `.env` read goes through parseEnvFile, so nothing can miss the check
|
|
145
|
+
RETIRED_ENV_KEYS,
|
|
146
|
+
findRetiredEnvKeys,
|
|
147
|
+
assertNoRetiredEnvKeys,
|
|
148
|
+
|
|
149
|
+
// The ONE company resolver (#677): `company: { id }` in, the company's public
|
|
150
|
+
// facts plus its tree on this machine out. The config chain, the .env chain,
|
|
151
|
+
// owner hooks and the desktop signing tree all inherit through its `file()`,
|
|
152
|
+
// so a new kind of inherited file needs no code anywhere
|
|
153
|
+
resolveCompany,
|
|
154
|
+
// The machine registry `~/.omega/brands.json` every loadConfig refreshes its
|
|
155
|
+
// own line in, which is what makes a sibling's `company: { id }` resolvable
|
|
156
|
+
recordBrand,
|
|
157
|
+
readRegistry,
|
|
158
|
+
registryFile,
|
|
159
|
+
COMPANY_DIR,
|
|
160
|
+
COMPANY_SELF,
|
|
161
|
+
// The generated layer a deploy hands a runner, which has no registry and no
|
|
162
|
+
// company tree to resolve from
|
|
163
|
+
COMPANY_RESOLVED_FILE,
|
|
119
164
|
|
|
120
165
|
// Writeback (comment-preserving edits + canonical top-level key order)
|
|
121
166
|
applyConfigEdits,
|
|
@@ -141,9 +186,18 @@ module.exports = {
|
|
|
141
186
|
// Template surface
|
|
142
187
|
toSiteGlobal,
|
|
143
188
|
|
|
144
|
-
// The
|
|
145
|
-
//
|
|
146
|
-
|
|
189
|
+
// The ONE browser-safe subset (#894): what web's page chrome, desktop's
|
|
190
|
+
// renderer bundle and every extension bundle bake as OMEGA_BUILD_JSON.config
|
|
191
|
+
clientConfig,
|
|
192
|
+
CLIENT_FACT_KEYS,
|
|
193
|
+
|
|
194
|
+
// The ONE shipping vocabulary and format table (#867): what each target can
|
|
195
|
+
// ship, what each format needs, and the versionless asset names (#620)
|
|
196
|
+
// @omega.js/desktop packages under and the site links straight at
|
|
197
|
+
PLATFORMS,
|
|
198
|
+
FORMATS,
|
|
199
|
+
enabledFormats,
|
|
200
|
+
formatKeys,
|
|
147
201
|
desktopProductName,
|
|
148
202
|
sanitizeProductName,
|
|
149
203
|
desktopArtifactName,
|
|
@@ -155,29 +209,48 @@ module.exports = {
|
|
|
155
209
|
WINBACK_OFFER_DEFAULTS,
|
|
156
210
|
WINBACK_DURATIONS,
|
|
157
211
|
|
|
158
|
-
// Brand repo derivation from the shared repo.providers.github block, overlaid
|
|
159
|
-
// by a target's own github entry (backend: targets.backend.github.repo slug —
|
|
160
|
-
// "owner/name" or bare name; name → `<brand.id>-omega`, owner → repo.providers.github.org)
|
|
161
|
-
parseRepoSlug,
|
|
162
212
|
// demo-* project ids are emulator-only (Firebase's convention) — cloud
|
|
163
213
|
// surfaces short-circuit on this instead of 403ing at Google
|
|
164
214
|
isDemoProject,
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
//
|
|
168
|
-
//
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
//
|
|
215
|
+
|
|
216
|
+
// The repo derivations (#883): ONE `repo: { provider, org }` block, and every
|
|
217
|
+
// repo a brand owns derives its name from `<brand.id>-<role>` (#809), so no
|
|
218
|
+
// name, owner or visibility is ever configured
|
|
219
|
+
REPO_PROVIDERS,
|
|
220
|
+
HOSTING_PROVIDERS,
|
|
221
|
+
repoBlock,
|
|
222
|
+
// The SOURCE monorepo `<brand.id>-omega`: the dispatch, the repo secrets, the
|
|
223
|
+
// scaffolded workflows and the CMS commits all address this one
|
|
224
|
+
sourceRepo,
|
|
225
|
+
// Whether the repo `origin` names IS that source repo (#934): the one
|
|
226
|
+
// comparison and the one drift line, stated at boot and refused on by the
|
|
227
|
+
// verbs that act on the derived repo
|
|
228
|
+
repoDrift,
|
|
229
|
+
// The brand's ONE public releases repo `<brand.id>-releases`, always public:
|
|
230
|
+
// the one home every release reader takes its address from
|
|
173
231
|
releasesRepo,
|
|
232
|
+
// A web target's own repo `<brand.id>-<name>`, holding the BUILT site so the
|
|
233
|
+
// source monorepo can stay private, plus where that target is served from
|
|
234
|
+
websiteRepo,
|
|
235
|
+
hostingProvider,
|
|
236
|
+
// The Pages custom domain of a web target: the manage walk sets it on the
|
|
237
|
+
// repo, the deploy writes it into the CNAME, from this ONE derivation
|
|
238
|
+
pagesHost,
|
|
239
|
+
// Visibility has ONE statement, the brand root's package.json `private`
|
|
240
|
+
brandVisibility,
|
|
241
|
+
|
|
242
|
+
// The bundle-identifier policy ([#909](https://github.com/Omega-JS-Stack/omega/issues/909)):
|
|
243
|
+
// ONE derivation for the id the certificates service registers and the id the
|
|
244
|
+
// desktop build signs under
|
|
245
|
+
deriveBundleIdPrefix,
|
|
246
|
+
composeBundleId,
|
|
174
247
|
|
|
175
248
|
// Validation
|
|
176
249
|
validateConfig,
|
|
177
250
|
runSchema,
|
|
178
251
|
formatErrors,
|
|
179
252
|
|
|
180
|
-
// The brand's own HOST, resolved from
|
|
253
|
+
// The brand's own HOST, resolved from a target `url` or `brand.url`, the
|
|
181
254
|
// ONE derivation of it ([#708](https://github.com/Omega-JS-Stack/omega/issues/708)):
|
|
182
255
|
// authDomain validation, and every lane that composes a test persona's email
|
|
183
256
|
resolvedBrandHost,
|
|
@@ -196,6 +269,12 @@ module.exports = {
|
|
|
196
269
|
deepMerge,
|
|
197
270
|
|
|
198
271
|
// Port auto-allocation (N7 — dev/emulator only)
|
|
272
|
+
// The ONE missing-dev-fact error (#834): no surface carries a browser-side
|
|
273
|
+
// copy of the classic numbers any more, so a read that finds no baked map
|
|
274
|
+
// throws this instead of assuming one
|
|
275
|
+
DEV_FACT_CHANNEL,
|
|
276
|
+
devFactMissing,
|
|
277
|
+
|
|
199
278
|
CLASSIC_PORTS,
|
|
200
279
|
CLASSIC_DEV_ORIGIN,
|
|
201
280
|
isPortFree,
|
|
@@ -210,19 +289,19 @@ module.exports = {
|
|
|
210
289
|
envPort,
|
|
211
290
|
envPorts,
|
|
212
291
|
|
|
213
|
-
//
|
|
214
|
-
//
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
292
|
+
// The targets map (#886): every key is a NAME, every entry declares its
|
|
293
|
+
// `type`, and the name IS the folder, so this is the ONE derivation of a
|
|
294
|
+
// target's path, its dir walk, its public url, and its dev-port offset
|
|
295
|
+
TARGET_NAME_PATTERN,
|
|
296
|
+
TARGET_TYPES,
|
|
297
|
+
targetEntries,
|
|
298
|
+
targetsOfType,
|
|
299
|
+
hasTargetOfType,
|
|
300
|
+
targetPath,
|
|
301
|
+
targetNameFromDir,
|
|
302
|
+
targetUrl,
|
|
303
|
+
targetPortOffset,
|
|
304
|
+
brandHost,
|
|
226
305
|
|
|
227
306
|
// Schema (pure data)
|
|
228
307
|
TARGETS,
|
|
@@ -231,7 +310,9 @@ module.exports = {
|
|
|
231
310
|
BACKEND_PROJECT_TYPES,
|
|
232
311
|
backendProjectType,
|
|
233
312
|
SHARED_SECTIONS,
|
|
313
|
+
CLIENT_SECTIONS,
|
|
234
314
|
SHARED_SCHEMA,
|
|
235
315
|
TARGET_SCHEMAS,
|
|
236
316
|
BRAND_ID_PATTERN,
|
|
317
|
+
AMO_CATEGORIES,
|
|
237
318
|
};
|