@inlang/sdk 0.36.4 → 2.0.0-beta.1
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 +1 -1
- package/dist/database/initDb.d.ts +7 -0
- package/dist/database/initDb.d.ts.map +1 -0
- package/dist/database/initDb.js +36 -0
- package/dist/database/initDb.js.map +1 -0
- package/dist/database/initDbAndSchema.test.d.ts +2 -0
- package/dist/database/initDbAndSchema.test.d.ts.map +1 -0
- package/dist/database/initDbAndSchema.test.js +110 -0
- package/dist/database/initDbAndSchema.test.js.map +1 -0
- package/dist/database/jsonbPlugin.d.ts +20 -0
- package/dist/database/jsonbPlugin.d.ts.map +1 -0
- package/dist/database/jsonbPlugin.js +183 -0
- package/dist/database/jsonbPlugin.js.map +1 -0
- package/dist/database/jsonbPlugin.test.d.ts +2 -0
- package/dist/database/jsonbPlugin.test.d.ts.map +1 -0
- package/dist/database/jsonbPlugin.test.js +119 -0
- package/dist/database/jsonbPlugin.test.js.map +1 -0
- package/dist/database/schema.d.ts +74 -0
- package/dist/database/schema.d.ts.map +1 -0
- package/dist/database/schema.js +45 -0
- package/dist/database/schema.js.map +1 -0
- package/dist/helper.d.ts +71 -0
- package/dist/helper.d.ts.map +1 -0
- package/dist/helper.js +91 -0
- package/dist/helper.js.map +1 -0
- package/dist/human-id/human-id.d.ts +3 -0
- package/dist/human-id/human-id.d.ts.map +1 -0
- package/dist/human-id/human-id.js +12 -0
- package/dist/human-id/human-id.js.map +1 -0
- package/dist/human-id/words.d.ts.map +1 -0
- package/dist/{storage/human-id → human-id}/words.js +4 -0
- package/dist/human-id/words.js.map +1 -0
- package/dist/human-id/words.test.d.ts.map +1 -0
- package/dist/{storage/human-id → human-id}/words.test.js +4 -0
- package/dist/human-id/words.test.js.map +1 -0
- package/dist/import-export/exportFiles.d.ts +11 -0
- package/dist/import-export/exportFiles.d.ts.map +1 -0
- package/dist/import-export/exportFiles.js +26 -0
- package/dist/import-export/exportFiles.js.map +1 -0
- package/dist/import-export/importFiles.d.ts +13 -0
- package/dist/import-export/importFiles.d.ts.map +1 -0
- package/dist/import-export/importFiles.js +124 -0
- package/dist/import-export/importFiles.js.map +1 -0
- package/dist/import-export/importFiles.test.d.ts +2 -0
- package/dist/import-export/importFiles.test.d.ts.map +1 -0
- package/dist/import-export/importFiles.test.js +179 -0
- package/dist/import-export/importFiles.test.js.map +1 -0
- package/dist/import-export/roundtrip.test.d.ts +2 -0
- package/dist/import-export/roundtrip.test.d.ts.map +1 -0
- package/dist/import-export/roundtrip.test.js +273 -0
- package/dist/import-export/roundtrip.test.js.map +1 -0
- package/dist/import-export/upsertBundleNestedMatchByProperties.d.ts +4 -0
- package/dist/import-export/upsertBundleNestedMatchByProperties.d.ts.map +1 -0
- package/dist/import-export/upsertBundleNestedMatchByProperties.js +58 -0
- package/dist/import-export/upsertBundleNestedMatchByProperties.js.map +1 -0
- package/dist/index.d.ts +21 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -17
- package/dist/index.js.map +1 -0
- package/dist/json-schema/old-v1-message/fromMessageV1.d.ts +9 -0
- package/dist/json-schema/old-v1-message/fromMessageV1.d.ts.map +1 -0
- package/dist/json-schema/old-v1-message/fromMessageV1.js +84 -0
- package/dist/json-schema/old-v1-message/fromMessageV1.js.map +1 -0
- package/dist/json-schema/old-v1-message/fromMessageV1.test.d.ts +2 -0
- package/dist/json-schema/old-v1-message/fromMessageV1.test.d.ts.map +1 -0
- package/dist/json-schema/old-v1-message/fromMessageV1.test.js +85 -0
- package/dist/json-schema/old-v1-message/fromMessageV1.test.js.map +1 -0
- package/dist/json-schema/old-v1-message/schemaV1.d.ts +86 -0
- package/dist/json-schema/old-v1-message/schemaV1.d.ts.map +1 -0
- package/dist/json-schema/old-v1-message/schemaV1.js +35 -0
- package/dist/json-schema/old-v1-message/schemaV1.js.map +1 -0
- package/dist/json-schema/old-v1-message/toMessageV1.d.ts +9 -0
- package/dist/json-schema/old-v1-message/toMessageV1.d.ts.map +1 -0
- package/dist/json-schema/old-v1-message/toMessageV1.js +67 -0
- package/dist/json-schema/old-v1-message/toMessageV1.js.map +1 -0
- package/dist/json-schema/old-v1-message/toMessageV1.test.d.ts +2 -0
- package/dist/json-schema/old-v1-message/toMessageV1.test.d.ts.map +1 -0
- package/dist/json-schema/old-v1-message/toMessageV1.test.js +85 -0
- package/dist/json-schema/old-v1-message/toMessageV1.test.js.map +1 -0
- package/dist/json-schema/pattern.d.ts +190 -0
- package/dist/json-schema/pattern.d.ts.map +1 -0
- package/dist/json-schema/pattern.js +43 -0
- package/dist/json-schema/pattern.js.map +1 -0
- package/dist/json-schema/settings.d.ts +31 -0
- package/dist/json-schema/settings.d.ts.map +1 -0
- package/dist/json-schema/settings.js +96 -0
- package/dist/json-schema/settings.js.map +1 -0
- package/dist/json-schema/settings.test-d.d.ts +2 -0
- package/dist/json-schema/settings.test-d.d.ts.map +1 -0
- package/dist/json-schema/settings.test-d.js +20 -0
- package/dist/json-schema/settings.test-d.js.map +1 -0
- package/dist/lix-plugin/applyChanges.d.ts +3 -0
- package/dist/lix-plugin/applyChanges.d.ts.map +1 -0
- package/dist/lix-plugin/applyChanges.js +127 -0
- package/dist/lix-plugin/applyChanges.js.map +1 -0
- package/dist/lix-plugin/applyChanges.test.d.ts +2 -0
- package/dist/lix-plugin/applyChanges.test.d.ts.map +1 -0
- package/dist/lix-plugin/applyChanges.test.js +135 -0
- package/dist/lix-plugin/applyChanges.test.js.map +1 -0
- package/dist/lix-plugin/detectConflicts.d.ts +3 -0
- package/dist/lix-plugin/detectConflicts.d.ts.map +1 -0
- package/dist/lix-plugin/detectConflicts.js +47 -0
- package/dist/lix-plugin/detectConflicts.js.map +1 -0
- package/dist/lix-plugin/detectConflicts.test.d.ts +2 -0
- package/dist/lix-plugin/detectConflicts.test.d.ts.map +1 -0
- package/dist/lix-plugin/detectConflicts.test.js +251 -0
- package/dist/lix-plugin/detectConflicts.test.js.map +1 -0
- package/dist/lix-plugin/inlangLixPluginV1.d.ts +8 -0
- package/dist/lix-plugin/inlangLixPluginV1.d.ts.map +1 -0
- package/dist/lix-plugin/inlangLixPluginV1.js +109 -0
- package/dist/lix-plugin/inlangLixPluginV1.js.map +1 -0
- package/dist/lix-plugin/inlangLixPluginV1.test.d.ts +2 -0
- package/dist/lix-plugin/inlangLixPluginV1.test.d.ts.map +1 -0
- package/dist/lix-plugin/inlangLixPluginV1.test.js +418 -0
- package/dist/lix-plugin/inlangLixPluginV1.test.js.map +1 -0
- package/dist/lix-plugin/merge.test.d.ts +2 -0
- package/dist/lix-plugin/merge.test.d.ts.map +1 -0
- package/dist/lix-plugin/merge.test.js +120 -0
- package/dist/lix-plugin/merge.test.js.map +1 -0
- package/dist/lix-plugin/resolveConflictBySelecting.test.d.ts +2 -0
- package/dist/lix-plugin/resolveConflictBySelecting.test.d.ts.map +1 -0
- package/dist/lix-plugin/resolveConflictBySelecting.test.js +176 -0
- package/dist/lix-plugin/resolveConflictBySelecting.test.js.map +1 -0
- package/dist/migrations/v2/createMessageV1.d.ts +28 -0
- package/dist/migrations/v2/createMessageV1.d.ts.map +1 -0
- package/dist/migrations/v2/createMessageV1.js +31 -0
- package/dist/migrations/v2/createMessageV1.js.map +1 -0
- package/dist/migrations/v2/withLanguageTagToLocaleMigration.d.ts +9 -0
- package/dist/migrations/v2/withLanguageTagToLocaleMigration.d.ts.map +1 -0
- package/dist/migrations/v2/withLanguageTagToLocaleMigration.js +31 -0
- package/dist/migrations/v2/withLanguageTagToLocaleMigration.js.map +1 -0
- package/dist/migrations/v2/withLanguageTagToLocaleMigration.test.d.ts +2 -0
- package/dist/migrations/v2/withLanguageTagToLocaleMigration.test.d.ts.map +1 -0
- package/dist/migrations/v2/withLanguageTagToLocaleMigration.test.js +45 -0
- package/dist/migrations/v2/withLanguageTagToLocaleMigration.test.js.map +1 -0
- package/dist/plugin/cache.d.ts +6 -0
- package/dist/plugin/cache.d.ts.map +1 -0
- package/dist/plugin/cache.js +59 -0
- package/dist/plugin/cache.js.map +1 -0
- package/dist/plugin/cache.test.d.ts +2 -0
- package/dist/plugin/cache.test.d.ts.map +1 -0
- package/dist/plugin/cache.test.js +61 -0
- package/dist/plugin/cache.test.js.map +1 -0
- package/dist/plugin/errors.d.ts +41 -0
- package/dist/plugin/errors.d.ts.map +1 -0
- package/dist/plugin/errors.js +48 -0
- package/dist/plugin/errors.js.map +1 -0
- package/dist/plugin/importPlugins.d.ts +19 -0
- package/dist/plugin/importPlugins.d.ts.map +1 -0
- package/dist/plugin/importPlugins.js +43 -0
- package/dist/plugin/importPlugins.js.map +1 -0
- package/dist/plugin/importPlugins.test.d.ts +2 -0
- package/dist/plugin/importPlugins.test.d.ts.map +1 -0
- package/dist/plugin/importPlugins.test.js +95 -0
- package/dist/plugin/importPlugins.test.js.map +1 -0
- package/dist/plugin/meta/ideExtension.d.ts +54 -0
- package/dist/plugin/meta/ideExtension.d.ts.map +1 -0
- package/dist/plugin/meta/ideExtension.js +5 -0
- package/dist/plugin/meta/ideExtension.js.map +1 -0
- package/dist/plugin/schema.d.ts +152 -0
- package/dist/plugin/schema.d.ts.map +1 -0
- package/dist/plugin/schema.js +5 -0
- package/dist/plugin/schema.js.map +1 -0
- package/dist/project/api.d.ts +74 -0
- package/dist/project/api.d.ts.map +1 -0
- package/dist/project/api.js +5 -0
- package/dist/project/api.js.map +1 -0
- package/dist/project/initHandleSaveToLixOnChange.d.ts +14 -0
- package/dist/project/initHandleSaveToLixOnChange.d.ts.map +1 -0
- package/dist/project/initHandleSaveToLixOnChange.js +87 -0
- package/dist/project/initHandleSaveToLixOnChange.js.map +1 -0
- package/dist/project/loadProject.d.ts +53 -0
- package/dist/project/loadProject.d.ts.map +1 -0
- package/dist/project/loadProject.js +167 -0
- package/dist/project/loadProject.js.map +1 -0
- package/dist/project/loadProject.test.d.ts.map +1 -0
- package/dist/project/loadProject.test.js +146 -0
- package/dist/project/loadProject.test.js.map +1 -0
- package/dist/project/loadProjectFromDirectory.d.ts +77 -0
- package/dist/project/loadProjectFromDirectory.d.ts.map +1 -0
- package/dist/project/loadProjectFromDirectory.js +584 -0
- package/dist/project/loadProjectFromDirectory.js.map +1 -0
- package/dist/project/loadProjectFromDirectory.test.d.ts +2 -0
- package/dist/project/loadProjectFromDirectory.test.d.ts.map +1 -0
- package/dist/project/loadProjectFromDirectory.test.js +663 -0
- package/dist/project/loadProjectFromDirectory.test.js.map +1 -0
- package/dist/project/loadProjectInMemory.d.ts +8 -0
- package/dist/project/loadProjectInMemory.d.ts.map +1 -0
- package/dist/project/loadProjectInMemory.js +32 -0
- package/dist/project/loadProjectInMemory.js.map +1 -0
- package/dist/project/loadProjectInMemory.test.d.ts +2 -0
- package/dist/project/loadProjectInMemory.test.d.ts.map +1 -0
- package/dist/project/loadProjectInMemory.test.js +27 -0
- package/dist/project/loadProjectInMemory.test.js.map +1 -0
- package/dist/project/maybeCaptureTelemetry.d.ts +13 -0
- package/dist/project/maybeCaptureTelemetry.d.ts.map +1 -0
- package/dist/project/maybeCaptureTelemetry.js +53 -0
- package/dist/project/maybeCaptureTelemetry.js.map +1 -0
- package/dist/project/maybeCaptureTelemetry.test.d.ts +2 -0
- package/dist/project/maybeCaptureTelemetry.test.d.ts.map +1 -0
- package/dist/project/maybeCaptureTelemetry.test.js +65 -0
- package/dist/project/maybeCaptureTelemetry.test.js.map +1 -0
- package/dist/project/newProject.d.ts +17 -0
- package/dist/project/newProject.d.ts.map +1 -0
- package/dist/project/newProject.js +71 -0
- package/dist/project/newProject.js.map +1 -0
- package/dist/project/newProject.test.d.ts +2 -0
- package/dist/project/newProject.test.d.ts.map +1 -0
- package/dist/project/newProject.test.js +37 -0
- package/dist/project/newProject.test.js.map +1 -0
- package/dist/project/saveProjectToDirectory.d.ts +8 -0
- package/dist/project/saveProjectToDirectory.d.ts.map +1 -0
- package/dist/project/saveProjectToDirectory.js +86 -0
- package/dist/project/saveProjectToDirectory.js.map +1 -0
- package/dist/project/saveProjectToDirectory.test.d.ts +2 -0
- package/dist/project/saveProjectToDirectory.test.d.ts.map +1 -0
- package/dist/project/saveProjectToDirectory.test.js +245 -0
- package/dist/project/saveProjectToDirectory.test.js.map +1 -0
- package/dist/project/state/id$.d.ts +6 -0
- package/dist/project/state/id$.d.ts.map +1 -0
- package/dist/project/state/id$.js +19 -0
- package/dist/project/state/id$.js.map +1 -0
- package/dist/project/state/id$.test.d.ts +2 -0
- package/dist/project/state/id$.test.d.ts.map +1 -0
- package/dist/project/state/id$.test.js +36 -0
- package/dist/project/state/id$.test.js.map +1 -0
- package/dist/project/state/setSettings.d.ts +7 -0
- package/dist/project/state/setSettings.d.ts.map +1 -0
- package/dist/project/state/setSettings.js +16 -0
- package/dist/project/state/setSettings.js.map +1 -0
- package/dist/project/state/setSettings.test.d.ts +2 -0
- package/dist/project/state/setSettings.test.d.ts.map +1 -0
- package/dist/project/state/setSettings.test.js +58 -0
- package/dist/project/state/setSettings.test.js.map +1 -0
- package/dist/project/state/settings$.d.ts +7 -0
- package/dist/project/state/settings$.d.ts.map +1 -0
- package/dist/project/state/settings$.js +21 -0
- package/dist/project/state/settings$.js.map +1 -0
- package/dist/project/state/settings$.test.d.ts +2 -0
- package/dist/project/state/settings$.test.d.ts.map +1 -0
- package/dist/project/state/settings$.test.js +51 -0
- package/dist/project/state/settings$.test.js.map +1 -0
- package/dist/project/state/state.d.ts +58 -0
- package/dist/project/state/state.d.ts.map +1 -0
- package/dist/project/state/state.js +67 -0
- package/dist/project/state/state.js.map +1 -0
- package/dist/project/state/state.test.d.ts +2 -0
- package/dist/project/state/state.test.d.ts.map +1 -0
- package/dist/project/state/state.test.js +103 -0
- package/dist/project/state/state.test.js.map +1 -0
- package/dist/query-utilities/index.d.ts +5 -0
- package/dist/query-utilities/index.d.ts.map +1 -0
- package/dist/query-utilities/index.js +8 -0
- package/dist/query-utilities/index.js.map +1 -0
- package/dist/query-utilities/insertBundleNested.d.ts +4 -0
- package/dist/query-utilities/insertBundleNested.d.ts.map +1 -0
- package/dist/query-utilities/insertBundleNested.js +39 -0
- package/dist/query-utilities/insertBundleNested.js.map +1 -0
- package/dist/query-utilities/pollQuery.d.ts +14 -0
- package/dist/query-utilities/pollQuery.d.ts.map +1 -0
- package/dist/query-utilities/pollQuery.js +22 -0
- package/dist/query-utilities/pollQuery.js.map +1 -0
- package/dist/query-utilities/pollQuery.test.d.ts +2 -0
- package/dist/query-utilities/pollQuery.test.d.ts.map +1 -0
- package/dist/query-utilities/pollQuery.test.js +67 -0
- package/dist/query-utilities/pollQuery.test.js.map +1 -0
- package/dist/query-utilities/selectBundleNested.d.ts +107 -0
- package/dist/query-utilities/selectBundleNested.d.ts.map +1 -0
- package/dist/query-utilities/selectBundleNested.js +43 -0
- package/dist/query-utilities/selectBundleNested.js.map +1 -0
- package/dist/query-utilities/updateBundleNested.d.ts +12 -0
- package/dist/query-utilities/updateBundleNested.d.ts.map +1 -0
- package/dist/query-utilities/updateBundleNested.js +25 -0
- package/dist/query-utilities/updateBundleNested.js.map +1 -0
- package/dist/query-utilities/upsertBundleNested.d.ts +4 -0
- package/dist/query-utilities/upsertBundleNested.d.ts.map +1 -0
- package/dist/query-utilities/upsertBundleNested.js +50 -0
- package/dist/query-utilities/upsertBundleNested.js.map +1 -0
- package/dist/services/env-variables/index.d.ts +6 -0
- package/dist/services/env-variables/index.d.ts.map +1 -0
- package/dist/services/env-variables/index.js +9 -0
- package/dist/services/env-variables/index.js.map +1 -0
- package/dist/services/error-reporting/index.d.ts +15 -0
- package/dist/services/error-reporting/index.d.ts.map +1 -0
- package/dist/services/error-reporting/index.js +30 -0
- package/dist/services/error-reporting/index.js.map +1 -0
- package/dist/{telemetry → services/telemetry}/capture.d.ts +4 -2
- package/dist/services/telemetry/capture.d.ts.map +1 -0
- package/dist/services/telemetry/capture.js +77 -0
- package/dist/services/telemetry/capture.js.map +1 -0
- package/dist/services/telemetry/capture.test.d.ts +2 -0
- package/dist/services/telemetry/capture.test.d.ts.map +1 -0
- package/dist/services/telemetry/capture.test.js +44 -0
- package/dist/services/telemetry/capture.test.js.map +1 -0
- package/dist/utilities/detectJsonFormatting.d.ts +11 -0
- package/dist/utilities/detectJsonFormatting.d.ts.map +1 -0
- package/dist/utilities/detectJsonFormatting.js +83 -0
- package/dist/utilities/detectJsonFormatting.js.map +1 -0
- package/dist/utilities/detectJsonFormatting.test.d.ts +2 -0
- package/dist/utilities/detectJsonFormatting.test.d.ts.map +1 -0
- package/dist/utilities/detectJsonFormatting.test.js +33 -0
- package/dist/utilities/detectJsonFormatting.test.js.map +1 -0
- package/package.json +32 -40
- package/src/database/initDb.ts +34 -0
- package/src/database/initDbAndSchema.test.ts +125 -0
- package/src/database/jsonbPlugin.test.ts +154 -0
- package/src/database/jsonbPlugin.ts +215 -0
- package/src/database/schema.ts +127 -0
- package/src/helper.ts +113 -0
- package/src/human-id/human-id.ts +14 -0
- package/src/{storage/human-id → human-id}/words.test.ts +14 -14
- package/src/{storage/human-id → human-id}/words.ts +4 -4
- package/src/import-export/exportFiles.ts +36 -0
- package/src/import-export/importFiles.test.ts +211 -0
- package/src/import-export/importFiles.ts +142 -0
- package/src/import-export/roundtrip.test.ts +313 -0
- package/src/import-export/upsertBundleNestedMatchByProperties.ts +74 -0
- package/src/index.ts +29 -37
- package/src/json-schema/old-v1-message/README.md +1 -0
- package/src/json-schema/old-v1-message/fromMessageV1.test.ts +87 -0
- package/src/json-schema/old-v1-message/fromMessageV1.ts +99 -0
- package/src/json-schema/old-v1-message/schemaV1.ts +66 -0
- package/src/json-schema/old-v1-message/toMessageV1.test.ts +87 -0
- package/src/json-schema/old-v1-message/toMessageV1.ts +79 -0
- package/src/json-schema/pattern.ts +59 -0
- package/src/json-schema/settings.test-d.ts +21 -0
- package/src/json-schema/settings.ts +138 -0
- package/src/lix-plugin/applyChanges.test.ts +150 -0
- package/src/lix-plugin/applyChanges.ts +171 -0
- package/src/lix-plugin/detectConflicts.test.ts +286 -0
- package/src/lix-plugin/detectConflicts.ts +62 -0
- package/src/lix-plugin/inlangLixPluginV1.test.ts +439 -0
- package/src/lix-plugin/inlangLixPluginV1.ts +132 -0
- package/src/lix-plugin/merge.test.ts +133 -0
- package/src/lix-plugin/resolveConflictBySelecting.test.ts +188 -0
- package/src/migrations/v2/createMessageV1.ts +37 -0
- package/src/migrations/v2/withLanguageTagToLocaleMigration.test.ts +51 -0
- package/src/migrations/v2/withLanguageTagToLocaleMigration.ts +31 -0
- package/src/plugin/cache.test.ts +83 -0
- package/src/plugin/cache.ts +79 -0
- package/src/plugin/errors.ts +67 -0
- package/src/plugin/importPlugins.test.ts +107 -0
- package/src/plugin/importPlugins.ts +60 -0
- package/src/plugin/meta/ideExtension.ts +56 -0
- package/src/plugin/schema.ts +165 -0
- package/src/project/api.ts +77 -0
- package/src/project/initHandleSaveToLixOnChange.ts +93 -0
- package/src/project/loadProject.test.ts +177 -0
- package/src/project/loadProject.ts +245 -0
- package/src/project/loadProjectFromDirectory.test.ts +854 -0
- package/src/project/loadProjectFromDirectory.ts +752 -0
- package/src/project/loadProjectInMemory.test.ts +29 -0
- package/src/project/loadProjectInMemory.ts +36 -0
- package/src/project/maybeCaptureTelemetry.test.ts +72 -0
- package/src/project/maybeCaptureTelemetry.ts +61 -0
- package/src/project/newProject.test.ts +36 -0
- package/src/project/newProject.ts +78 -0
- package/src/project/saveProjectToDirectory.test.ts +310 -0
- package/src/project/saveProjectToDirectory.ts +100 -0
- package/src/query-utilities/index.ts +4 -0
- package/src/query-utilities/insertBundleNested.ts +46 -0
- package/src/query-utilities/selectBundleNested.ts +46 -0
- package/src/query-utilities/updateBundleNested.ts +35 -0
- package/src/query-utilities/upsertBundleNested.ts +61 -0
- package/src/services/env-variables/createIndexFile.js +40 -0
- package/src/{env-variables → services/env-variables}/index.d.ts +8 -5
- package/src/services/error-reporting/index.ts +28 -0
- package/src/services/telemetry/capture.test.ts +48 -0
- package/src/services/telemetry/capture.ts +98 -0
- package/src/utilities/detectJsonFormatting.test.ts +38 -0
- package/src/utilities/detectJsonFormatting.ts +109 -0
- package/dist/adapter/solidAdapter.d.ts +0 -33
- package/dist/adapter/solidAdapter.d.ts.map +0 -1
- package/dist/adapter/solidAdapter.js +0 -40
- package/dist/adapter/solidAdapter.test.d.ts +0 -2
- package/dist/adapter/solidAdapter.test.d.ts.map +0 -1
- package/dist/adapter/solidAdapter.test.js +0 -356
- package/dist/api.d.ts +0 -113
- package/dist/api.d.ts.map +0 -1
- package/dist/api.js +0 -1
- package/dist/api.test-d.d.ts +0 -2
- package/dist/api.test-d.d.ts.map +0 -1
- package/dist/api.test-d.js +0 -4
- package/dist/createMessageLintReportsQuery.d.ts +0 -12
- package/dist/createMessageLintReportsQuery.d.ts.map +0 -1
- package/dist/createMessageLintReportsQuery.js +0 -176
- package/dist/createMessagesQuery.d.ts +0 -19
- package/dist/createMessagesQuery.d.ts.map +0 -1
- package/dist/createMessagesQuery.js +0 -451
- package/dist/createMessagesQuery.test.d.ts +0 -2
- package/dist/createMessagesQuery.test.d.ts.map +0 -1
- package/dist/createMessagesQuery.test.js +0 -402
- package/dist/createNewProject.d.ts +0 -12
- package/dist/createNewProject.d.ts.map +0 -1
- package/dist/createNewProject.js +0 -38
- package/dist/createNewProject.test.d.ts +0 -2
- package/dist/createNewProject.test.d.ts.map +0 -1
- package/dist/createNewProject.test.js +0 -91
- package/dist/createNodeishFsWithAbsolutePaths.d.ts +0 -12
- package/dist/createNodeishFsWithAbsolutePaths.d.ts.map +0 -1
- package/dist/createNodeishFsWithAbsolutePaths.js +0 -38
- package/dist/createNodeishFsWithAbsolutePaths.test.d.ts +0 -2
- package/dist/createNodeishFsWithAbsolutePaths.test.d.ts.map +0 -1
- package/dist/createNodeishFsWithAbsolutePaths.test.js +0 -44
- package/dist/createNodeishFsWithWatcher.d.ts +0 -14
- package/dist/createNodeishFsWithWatcher.d.ts.map +0 -1
- package/dist/createNodeishFsWithWatcher.js +0 -75
- package/dist/createNodeishFsWithWatcher.test.d.ts +0 -2
- package/dist/createNodeishFsWithWatcher.test.d.ts.map +0 -1
- package/dist/createNodeishFsWithWatcher.test.js +0 -38
- package/dist/defaultProjectSettings.d.ts +0 -14
- package/dist/defaultProjectSettings.d.ts.map +0 -1
- package/dist/defaultProjectSettings.js +0 -22
- package/dist/env-variables/index.d.ts +0 -4
- package/dist/env-variables/index.d.ts.map +0 -1
- package/dist/env-variables/index.js +0 -3
- package/dist/errors.d.ts +0 -48
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js +0 -62
- package/dist/lint/index.d.ts +0 -3
- package/dist/lint/index.d.ts.map +0 -1
- package/dist/lint/index.js +0 -2
- package/dist/lint/message/errors.d.ts +0 -7
- package/dist/lint/message/errors.d.ts.map +0 -1
- package/dist/lint/message/errors.js +0 -9
- package/dist/lint/message/lintMessages.d.ts +0 -13
- package/dist/lint/message/lintMessages.d.ts.map +0 -1
- package/dist/lint/message/lintMessages.js +0 -12
- package/dist/lint/message/lintMessages.test.d.ts +0 -2
- package/dist/lint/message/lintMessages.test.d.ts.map +0 -1
- package/dist/lint/message/lintMessages.test.js +0 -107
- package/dist/lint/message/lintSingleMessage.d.ts +0 -19
- package/dist/lint/message/lintSingleMessage.d.ts.map +0 -1
- package/dist/lint/message/lintSingleMessage.js +0 -38
- package/dist/lint/message/lintSingleMessage.test.d.ts +0 -2
- package/dist/lint/message/lintSingleMessage.test.d.ts.map +0 -1
- package/dist/lint/message/lintSingleMessage.test.js +0 -161
- package/dist/listProjects.d.ts +0 -5
- package/dist/listProjects.d.ts.map +0 -1
- package/dist/listProjects.js +0 -38
- package/dist/listProjects.test.d.ts +0 -2
- package/dist/listProjects.test.d.ts.map +0 -1
- package/dist/listProjects.test.js +0 -72
- package/dist/loadProject.d.ts +0 -19
- package/dist/loadProject.d.ts.map +0 -1
- package/dist/loadProject.js +0 -343
- package/dist/loadProject.test.d.ts.map +0 -1
- package/dist/loadProject.test.js +0 -975
- package/dist/messages/errors.d.ts +0 -13
- package/dist/messages/errors.d.ts.map +0 -1
- package/dist/messages/errors.js +0 -18
- package/dist/messages/index.d.ts +0 -3
- package/dist/messages/index.d.ts.map +0 -1
- package/dist/messages/index.js +0 -2
- package/dist/messages/variant.d.ts +0 -46
- package/dist/messages/variant.d.ts.map +0 -1
- package/dist/messages/variant.js +0 -176
- package/dist/messages/variant.test.d.ts +0 -2
- package/dist/messages/variant.test.d.ts.map +0 -1
- package/dist/messages/variant.test.js +0 -439
- package/dist/migrations/maybeAddModuleCache.d.ts +0 -6
- package/dist/migrations/maybeAddModuleCache.d.ts.map +0 -1
- package/dist/migrations/maybeAddModuleCache.js +0 -62
- package/dist/migrations/maybeCreateFirstProjectId.d.ts +0 -16
- package/dist/migrations/maybeCreateFirstProjectId.d.ts.map +0 -1
- package/dist/migrations/maybeCreateFirstProjectId.js +0 -46
- package/dist/migrations/maybeCreateFirstProjectId.test.d.ts +0 -2
- package/dist/migrations/maybeCreateFirstProjectId.test.d.ts.map +0 -1
- package/dist/migrations/maybeCreateFirstProjectId.test.js +0 -24
- package/dist/migrations/migrateToDirectory.d.ts +0 -10
- package/dist/migrations/migrateToDirectory.d.ts.map +0 -1
- package/dist/migrations/migrateToDirectory.js +0 -48
- package/dist/migrations/migrateToDirectory.test.d.ts +0 -2
- package/dist/migrations/migrateToDirectory.test.d.ts.map +0 -1
- package/dist/migrations/migrateToDirectory.test.js +0 -48
- package/dist/parseConfig.d.ts +0 -8
- package/dist/parseConfig.d.ts.map +0 -1
- package/dist/parseConfig.js +0 -26
- package/dist/persistence/batchedIO.d.ts +0 -11
- package/dist/persistence/batchedIO.d.ts.map +0 -1
- package/dist/persistence/batchedIO.js +0 -49
- package/dist/persistence/batchedIO.test.d.ts +0 -2
- package/dist/persistence/batchedIO.test.d.ts.map +0 -1
- package/dist/persistence/batchedIO.test.js +0 -56
- package/dist/persistence/filelock/acquireFileLock.d.ts +0 -3
- package/dist/persistence/filelock/acquireFileLock.d.ts.map +0 -1
- package/dist/persistence/filelock/acquireFileLock.js +0 -111
- package/dist/persistence/filelock/releaseLock.d.ts +0 -3
- package/dist/persistence/filelock/releaseLock.d.ts.map +0 -1
- package/dist/persistence/filelock/releaseLock.js +0 -24
- package/dist/persistence/store.d.ts +0 -107
- package/dist/persistence/store.d.ts.map +0 -1
- package/dist/persistence/store.js +0 -99
- package/dist/persistence/store.test.d.ts +0 -2
- package/dist/persistence/store.test.d.ts.map +0 -1
- package/dist/persistence/store.test.js +0 -79
- package/dist/persistence/storeApi.d.ts +0 -22
- package/dist/persistence/storeApi.d.ts.map +0 -1
- package/dist/persistence/storeApi.js +0 -1
- package/dist/reactivity/map.d.ts +0 -67
- package/dist/reactivity/map.d.ts.map +0 -1
- package/dist/reactivity/map.js +0 -143
- package/dist/reactivity/solid.d.ts +0 -14
- package/dist/reactivity/solid.d.ts.map +0 -1
- package/dist/reactivity/solid.js +0 -15
- package/dist/reactivity/solid.test.d.ts +0 -2
- package/dist/reactivity/solid.test.d.ts.map +0 -1
- package/dist/reactivity/solid.test.js +0 -189
- package/dist/reactivity/trigger.d.ts +0 -11
- package/dist/reactivity/trigger.d.ts.map +0 -1
- package/dist/reactivity/trigger.js +0 -46
- package/dist/resolve-modules/cache.d.ts +0 -6
- package/dist/resolve-modules/cache.d.ts.map +0 -1
- package/dist/resolve-modules/cache.js +0 -58
- package/dist/resolve-modules/errors.d.ts +0 -41
- package/dist/resolve-modules/errors.d.ts.map +0 -1
- package/dist/resolve-modules/errors.js +0 -45
- package/dist/resolve-modules/import.d.ts +0 -19
- package/dist/resolve-modules/import.d.ts.map +0 -1
- package/dist/resolve-modules/import.js +0 -102
- package/dist/resolve-modules/import.test.d.ts +0 -2
- package/dist/resolve-modules/import.test.d.ts.map +0 -1
- package/dist/resolve-modules/import.test.js +0 -47
- package/dist/resolve-modules/index.d.ts +0 -3
- package/dist/resolve-modules/index.d.ts.map +0 -1
- package/dist/resolve-modules/index.js +0 -2
- package/dist/resolve-modules/message-lint-rules/errors.d.ts +0 -9
- package/dist/resolve-modules/message-lint-rules/errors.d.ts.map +0 -1
- package/dist/resolve-modules/message-lint-rules/errors.js +0 -6
- package/dist/resolve-modules/message-lint-rules/resolveMessageLintRules.d.ts +0 -9
- package/dist/resolve-modules/message-lint-rules/resolveMessageLintRules.d.ts.map +0 -1
- package/dist/resolve-modules/message-lint-rules/resolveMessageLintRules.js +0 -24
- package/dist/resolve-modules/plugins/errors.d.ts +0 -33
- package/dist/resolve-modules/plugins/errors.d.ts.map +0 -1
- package/dist/resolve-modules/plugins/errors.js +0 -38
- package/dist/resolve-modules/plugins/resolvePlugins.d.ts +0 -3
- package/dist/resolve-modules/plugins/resolvePlugins.d.ts.map +0 -1
- package/dist/resolve-modules/plugins/resolvePlugins.js +0 -92
- package/dist/resolve-modules/plugins/resolvePlugins.test.d.ts +0 -2
- package/dist/resolve-modules/plugins/resolvePlugins.test.d.ts.map +0 -1
- package/dist/resolve-modules/plugins/resolvePlugins.test.js +0 -252
- package/dist/resolve-modules/plugins/types.d.ts +0 -57
- package/dist/resolve-modules/plugins/types.d.ts.map +0 -1
- package/dist/resolve-modules/plugins/types.js +0 -1
- package/dist/resolve-modules/plugins/types.test.d.ts +0 -2
- package/dist/resolve-modules/plugins/types.test.d.ts.map +0 -1
- package/dist/resolve-modules/plugins/types.test.js +0 -45
- package/dist/resolve-modules/resolveModules.d.ts +0 -3
- package/dist/resolve-modules/resolveModules.d.ts.map +0 -1
- package/dist/resolve-modules/resolveModules.js +0 -80
- package/dist/resolve-modules/resolveModules.test.d.ts +0 -2
- package/dist/resolve-modules/resolveModules.test.d.ts.map +0 -1
- package/dist/resolve-modules/resolveModules.test.js +0 -185
- package/dist/resolve-modules/types.d.ts +0 -63
- package/dist/resolve-modules/types.d.ts.map +0 -1
- package/dist/resolve-modules/types.js +0 -1
- package/dist/resolve-modules/validateModuleSettings.test.d.ts +0 -2
- package/dist/resolve-modules/validateModuleSettings.test.d.ts.map +0 -1
- package/dist/resolve-modules/validateModuleSettings.test.js +0 -71
- package/dist/resolve-modules/validatedModuleSettings.d.ts +0 -7
- package/dist/resolve-modules/validatedModuleSettings.d.ts.map +0 -1
- package/dist/resolve-modules/validatedModuleSettings.js +0 -11
- package/dist/storage/helper.d.ts +0 -11
- package/dist/storage/helper.d.ts.map +0 -1
- package/dist/storage/helper.js +0 -63
- package/dist/storage/helpers.test.d.ts +0 -2
- package/dist/storage/helpers.test.d.ts.map +0 -1
- package/dist/storage/helpers.test.js +0 -84
- package/dist/storage/human-id/human-readable-id.d.ts +0 -3
- package/dist/storage/human-id/human-readable-id.d.ts.map +0 -1
- package/dist/storage/human-id/human-readable-id.js +0 -20
- package/dist/storage/human-id/words.d.ts.map +0 -1
- package/dist/storage/human-id/words.test.d.ts.map +0 -1
- package/dist/telemetry/capture.d.ts.map +0 -1
- package/dist/telemetry/capture.js +0 -39
- package/dist/telemetry/groupIdentify.d.ts +0 -13
- package/dist/telemetry/groupIdentify.d.ts.map +0 -1
- package/dist/telemetry/groupIdentify.js +0 -35
- package/dist/test-utilities/createMessage.d.ts +0 -18
- package/dist/test-utilities/createMessage.d.ts.map +0 -1
- package/dist/test-utilities/createMessage.js +0 -17
- package/dist/test-utilities/createMessage.test.d.ts +0 -2
- package/dist/test-utilities/createMessage.test.d.ts.map +0 -1
- package/dist/test-utilities/createMessage.test.js +0 -106
- package/dist/test-utilities/index.d.ts +0 -3
- package/dist/test-utilities/index.d.ts.map +0 -1
- package/dist/test-utilities/index.js +0 -2
- package/dist/test-utilities/sleep.d.ts +0 -4
- package/dist/test-utilities/sleep.d.ts.map +0 -1
- package/dist/test-utilities/sleep.js +0 -9
- package/dist/v2/helper.d.ts +0 -43
- package/dist/v2/helper.d.ts.map +0 -1
- package/dist/v2/helper.js +0 -75
- package/dist/v2/helper.test.d.ts +0 -2
- package/dist/v2/helper.test.d.ts.map +0 -1
- package/dist/v2/helper.test.js +0 -92
- package/dist/v2/index.d.ts +0 -4
- package/dist/v2/index.d.ts.map +0 -1
- package/dist/v2/index.js +0 -2
- package/dist/v2/mocks/index.d.ts +0 -3
- package/dist/v2/mocks/index.d.ts.map +0 -1
- package/dist/v2/mocks/index.js +0 -2
- package/dist/v2/mocks/multipleMatcher/bundle.d.ts +0 -3
- package/dist/v2/mocks/multipleMatcher/bundle.d.ts.map +0 -1
- package/dist/v2/mocks/multipleMatcher/bundle.js +0 -194
- package/dist/v2/mocks/multipleMatcher/bundle.test.d.ts +0 -2
- package/dist/v2/mocks/multipleMatcher/bundle.test.d.ts.map +0 -1
- package/dist/v2/mocks/multipleMatcher/bundle.test.js +0 -10
- package/dist/v2/mocks/plural/bundle.d.ts +0 -3
- package/dist/v2/mocks/plural/bundle.d.ts.map +0 -1
- package/dist/v2/mocks/plural/bundle.js +0 -162
- package/dist/v2/mocks/plural/bundle.test.d.ts +0 -2
- package/dist/v2/mocks/plural/bundle.test.d.ts.map +0 -1
- package/dist/v2/mocks/plural/bundle.test.js +0 -15
- package/dist/v2/shim.d.ts +0 -12
- package/dist/v2/shim.d.ts.map +0 -1
- package/dist/v2/shim.js +0 -151
- package/dist/v2/shim.test.d.ts +0 -2
- package/dist/v2/shim.test.d.ts.map +0 -1
- package/dist/v2/shim.test.js +0 -49
- package/dist/v2/stubQueryApi.d.ts +0 -9
- package/dist/v2/stubQueryApi.d.ts.map +0 -1
- package/dist/v2/stubQueryApi.js +0 -38
- package/dist/v2/types.d.ts +0 -521
- package/dist/v2/types.d.ts.map +0 -1
- package/dist/v2/types.js +0 -78
- package/dist/validateProjectPath.d.ts +0 -17
- package/dist/validateProjectPath.d.ts.map +0 -1
- package/dist/validateProjectPath.js +0 -31
- package/dist/validateProjectPath.test.d.ts +0 -2
- package/dist/validateProjectPath.test.d.ts.map +0 -1
- package/dist/validateProjectPath.test.js +0 -40
- package/dist/versionedInterfaces.d.ts +0 -8
- package/dist/versionedInterfaces.d.ts.map +0 -1
- package/dist/versionedInterfaces.js +0 -8
- package/src/adapter/solidAdapter.test.ts +0 -472
- package/src/adapter/solidAdapter.ts +0 -79
- package/src/api.test-d.ts +0 -8
- package/src/api.ts +0 -116
- package/src/createMessageLintReportsQuery.ts +0 -225
- package/src/createMessagesQuery.test.ts +0 -538
- package/src/createMessagesQuery.ts +0 -635
- package/src/createNewProject.test.ts +0 -105
- package/src/createNewProject.ts +0 -46
- package/src/createNodeishFsWithAbsolutePaths.test.ts +0 -55
- package/src/createNodeishFsWithAbsolutePaths.ts +0 -52
- package/src/createNodeishFsWithWatcher.test.ts +0 -50
- package/src/createNodeishFsWithWatcher.ts +0 -85
- package/src/defaultProjectSettings.ts +0 -26
- package/src/env-variables/.prettierignore +0 -1
- package/src/env-variables/createIndexFile.js +0 -28
- package/src/errors.ts +0 -84
- package/src/lint/index.ts +0 -2
- package/src/lint/message/errors.ts +0 -9
- package/src/lint/message/lintMessages.test.ts +0 -126
- package/src/lint/message/lintMessages.ts +0 -25
- package/src/lint/message/lintSingleMessage.test.ts +0 -191
- package/src/lint/message/lintSingleMessage.ts +0 -57
- package/src/listProjects.test.ts +0 -91
- package/src/listProjects.ts +0 -48
- package/src/loadProject.test.ts +0 -1173
- package/src/loadProject.ts +0 -460
- package/src/messages/errors.ts +0 -25
- package/src/messages/index.ts +0 -2
- package/src/messages/variant.test.ts +0 -511
- package/src/messages/variant.ts +0 -247
- package/src/migrations/maybeAddModuleCache.ts +0 -68
- package/src/migrations/maybeCreateFirstProjectId.test.ts +0 -31
- package/src/migrations/maybeCreateFirstProjectId.ts +0 -51
- package/src/migrations/migrateToDirectory.test.ts +0 -54
- package/src/migrations/migrateToDirectory.ts +0 -62
- package/src/parseConfig.ts +0 -35
- package/src/persistence/batchedIO.test.ts +0 -63
- package/src/persistence/batchedIO.ts +0 -64
- package/src/persistence/filelock/acquireFileLock.ts +0 -129
- package/src/persistence/filelock/releaseLock.ts +0 -29
- package/src/persistence/store.test.ts +0 -102
- package/src/persistence/store.ts +0 -119
- package/src/persistence/storeApi.ts +0 -19
- package/src/reactivity/map.ts +0 -135
- package/src/reactivity/solid.test.ts +0 -222
- package/src/reactivity/solid.ts +0 -42
- package/src/reactivity/trigger.ts +0 -46
- package/src/resolve-modules/cache.ts +0 -89
- package/src/resolve-modules/errors.ts +0 -69
- package/src/resolve-modules/import.test.ts +0 -62
- package/src/resolve-modules/import.ts +0 -133
- package/src/resolve-modules/index.ts +0 -2
- package/src/resolve-modules/message-lint-rules/errors.ts +0 -9
- package/src/resolve-modules/message-lint-rules/resolveMessageLintRules.ts +0 -27
- package/src/resolve-modules/plugins/errors.ts +0 -56
- package/src/resolve-modules/plugins/resolvePlugins.test.ts +0 -301
- package/src/resolve-modules/plugins/resolvePlugins.ts +0 -129
- package/src/resolve-modules/plugins/types.test.ts +0 -53
- package/src/resolve-modules/plugins/types.ts +0 -76
- package/src/resolve-modules/resolveModules.test.ts +0 -224
- package/src/resolve-modules/resolveModules.ts +0 -113
- package/src/resolve-modules/types.ts +0 -72
- package/src/resolve-modules/validateModuleSettings.test.ts +0 -85
- package/src/resolve-modules/validatedModuleSettings.ts +0 -19
- package/src/storage/helper.ts +0 -74
- package/src/storage/helpers.test.ts +0 -95
- package/src/storage/human-id/human-readable-id.ts +0 -27
- package/src/telemetry/capture.ts +0 -49
- package/src/telemetry/groupIdentify.ts +0 -41
- package/src/test-utilities/createMessage.test.ts +0 -118
- package/src/test-utilities/createMessage.ts +0 -21
- package/src/test-utilities/index.ts +0 -2
- package/src/test-utilities/sleep.ts +0 -11
- package/src/v2/helper.test.ts +0 -95
- package/src/v2/helper.ts +0 -98
- package/src/v2/index.ts +0 -3
- package/src/v2/mocks/index.ts +0 -2
- package/src/v2/mocks/multipleMatcher/bundle.test.ts +0 -11
- package/src/v2/mocks/multipleMatcher/bundle.ts +0 -196
- package/src/v2/mocks/plural/bundle.test.ts +0 -18
- package/src/v2/mocks/plural/bundle.ts +0 -164
- package/src/v2/shim.test.ts +0 -56
- package/src/v2/shim.ts +0 -173
- package/src/v2/stubQueryApi.ts +0 -43
- package/src/v2/types.ts +0 -159
- package/src/validateProjectPath.test.ts +0 -50
- package/src/validateProjectPath.ts +0 -38
- package/src/versionedInterfaces.ts +0 -9
- /package/dist/{storage/human-id → human-id}/words.d.ts +0 -0
- /package/dist/{storage/human-id → human-id}/words.test.d.ts +0 -0
- /package/dist/{loadProject.test.d.ts → project/loadProject.test.d.ts} +0 -0
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { tryCatch } from "@inlang/result";
|
|
2
|
-
function escape(url) {
|
|
3
|
-
const bytes = new TextEncoder().encode(url);
|
|
4
|
-
// 64-bit FNV1a hash to make the file-names shorter
|
|
5
|
-
// https://en.wikipedia.org/wiki/FNV-1a
|
|
6
|
-
const hash = bytes.reduce((hash, byte) => BigInt.asUintN(64, (hash ^ BigInt(byte)) * 1099511628211n), 14695981039346656037n);
|
|
7
|
-
return hash.toString(36);
|
|
8
|
-
}
|
|
9
|
-
async function readModuleFromCache(moduleURI, projectPath, readFile) {
|
|
10
|
-
const moduleHash = escape(moduleURI);
|
|
11
|
-
const filePath = projectPath + `/cache/modules/${moduleHash}`;
|
|
12
|
-
return await tryCatch(async () => await readFile(filePath, { encoding: "utf-8" }));
|
|
13
|
-
}
|
|
14
|
-
async function writeModuleToCache(moduleURI, moduleContent, projectPath, writeFile, mkdir) {
|
|
15
|
-
const moduleHash = escape(moduleURI);
|
|
16
|
-
const filePath = projectPath + `/cache/modules/${moduleHash}`;
|
|
17
|
-
const writeFileResult = await tryCatch(() => writeFile(filePath, moduleContent));
|
|
18
|
-
if (writeFileResult.error) {
|
|
19
|
-
const dirPath = projectPath + `/cache/modules`;
|
|
20
|
-
const createDirResult = await tryCatch(() => mkdir(dirPath, { recursive: true }));
|
|
21
|
-
// @ts-ignore - If the directory exists we can ignore this error
|
|
22
|
-
if (createDirResult.error && createDirResult.error.code !== "EEXIST")
|
|
23
|
-
throw new Error("[sdk:module-cacke] failed to create cache-directory. Path: " + dirPath, {
|
|
24
|
-
cause: createDirResult.error,
|
|
25
|
-
});
|
|
26
|
-
const writeFileResult = await tryCatch(() => writeFile(filePath, moduleContent));
|
|
27
|
-
if (writeFileResult.error)
|
|
28
|
-
throw new Error("[sdk:module-cacke] failed to write cache-file. Path: " + filePath, {
|
|
29
|
-
cause: writeFileResult.error,
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Implements a "Network-First" caching strategy.
|
|
35
|
-
*/
|
|
36
|
-
export function withCache(moduleLoader, projectPath, nodeishFs) {
|
|
37
|
-
return async (uri) => {
|
|
38
|
-
const cachePromise = readModuleFromCache(uri, projectPath, nodeishFs.readFile);
|
|
39
|
-
const loaderResult = await tryCatch(async () => await moduleLoader(uri));
|
|
40
|
-
if (loaderResult.error) {
|
|
41
|
-
const cacheResult = await cachePromise;
|
|
42
|
-
if (!cacheResult.error)
|
|
43
|
-
return cacheResult.data;
|
|
44
|
-
else
|
|
45
|
-
throw loaderResult.error;
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
const moduleAsText = loaderResult.data;
|
|
49
|
-
try {
|
|
50
|
-
await writeModuleToCache(uri, moduleAsText, projectPath, nodeishFs.writeFile, nodeishFs.mkdir);
|
|
51
|
-
}
|
|
52
|
-
catch (error) {
|
|
53
|
-
// TODO trigger a warning
|
|
54
|
-
}
|
|
55
|
-
return moduleAsText;
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import type { ValueError } from "@sinclair/typebox/errors";
|
|
2
|
-
export * from "./plugins/errors.js";
|
|
3
|
-
export * from "./message-lint-rules/errors.js";
|
|
4
|
-
export declare class ModuleError extends Error {
|
|
5
|
-
readonly module: string;
|
|
6
|
-
constructor(message: string, options: {
|
|
7
|
-
module: string;
|
|
8
|
-
cause?: Error;
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Error when a Module does not export any plugins or lint rules.
|
|
13
|
-
*/
|
|
14
|
-
export declare class ModuleHasNoExportsError extends ModuleError {
|
|
15
|
-
constructor(options: {
|
|
16
|
-
module: string;
|
|
17
|
-
cause?: Error;
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Error when a Module cannot be imported.
|
|
22
|
-
*/
|
|
23
|
-
export declare class ModuleImportError extends ModuleError {
|
|
24
|
-
constructor(options: {
|
|
25
|
-
module: string;
|
|
26
|
-
cause: Error;
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
export declare class ModuleExportIsInvalidError extends ModuleError {
|
|
30
|
-
constructor(options: {
|
|
31
|
-
module: string;
|
|
32
|
-
errors: ValueError[];
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
export declare class ModuleSettingsAreInvalidError extends ModuleError {
|
|
36
|
-
constructor(options: {
|
|
37
|
-
module: string;
|
|
38
|
-
errors: ValueError[];
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/resolve-modules/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,cAAc,qBAAqB,CAAA;AACnC,cAAc,gCAAgC,CAAA;AAE9C,qBAAa,WAAY,SAAQ,KAAK;IACrC,SAAgB,MAAM,EAAE,MAAM,CAAA;gBAElB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAMvE;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,WAAW;gBAC3C,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAOtD;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;gBACrC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE;CAIrD;AAED,qBAAa,0BAA2B,SAAQ,WAAW;gBAC9C,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,EAAE,CAAA;KAAE;CAY7D;AAED,qBAAa,6BAA8B,SAAQ,WAAW;gBACjD,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,EAAE,CAAA;KAAE;CAc7D"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
export * from "./plugins/errors.js";
|
|
2
|
-
export * from "./message-lint-rules/errors.js";
|
|
3
|
-
export class ModuleError extends Error {
|
|
4
|
-
module;
|
|
5
|
-
constructor(message, options) {
|
|
6
|
-
super(message);
|
|
7
|
-
this.name = "ModuleError";
|
|
8
|
-
this.module = options.module;
|
|
9
|
-
this.cause = options.cause;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Error when a Module does not export any plugins or lint rules.
|
|
14
|
-
*/
|
|
15
|
-
export class ModuleHasNoExportsError extends ModuleError {
|
|
16
|
-
constructor(options) {
|
|
17
|
-
super(`Module "${options.module}" has no exports. Every module must have an "export default".`, options);
|
|
18
|
-
this.name = "ModuleHasNoExportsError";
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Error when a Module cannot be imported.
|
|
23
|
-
*/
|
|
24
|
-
export class ModuleImportError extends ModuleError {
|
|
25
|
-
constructor(options) {
|
|
26
|
-
super(`Couldn't import the plugin "${options.module}":\n\n${options.cause}`, options);
|
|
27
|
-
this.name = "ModuleImportError";
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
export class ModuleExportIsInvalidError extends ModuleError {
|
|
31
|
-
constructor(options) {
|
|
32
|
-
super(`The export(s) of "${options.module}" are invalid:\n\n${options.errors
|
|
33
|
-
.map((error) => `"${error.path}" "${JSON.stringify(error.value, undefined, 2)}": "${error.message}"`)
|
|
34
|
-
.join("\n")}`, options);
|
|
35
|
-
this.name = "ModuleExportIsInvalidError";
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
export class ModuleSettingsAreInvalidError extends ModuleError {
|
|
39
|
-
constructor(options) {
|
|
40
|
-
super(`The settings are invalid of "${options.module}" are invalid:\n\n${options.errors
|
|
41
|
-
.map((error) => `Path "${error.path}" with value "${JSON.stringify(error.value, undefined, 2)}": "${error.message}"`)
|
|
42
|
-
.join("\n")}`, options);
|
|
43
|
-
this.name = "ModuleSettingsAreInvalidError";
|
|
44
|
-
}
|
|
45
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { NodeishFilesystemSubset } from "@inlang/plugin";
|
|
2
|
-
/**
|
|
3
|
-
* Importing ES modules either from a local path, or from a url.
|
|
4
|
-
*
|
|
5
|
-
* - Name the import function `_import` to avoid shadowing the
|
|
6
|
-
* native import function.
|
|
7
|
-
*/
|
|
8
|
-
export type ImportFunction = (uri: string) => Promise<any>;
|
|
9
|
-
/**
|
|
10
|
-
* Creates the import function.
|
|
11
|
-
*
|
|
12
|
-
* This function is required to import modules from a local path.
|
|
13
|
-
*
|
|
14
|
-
* @example
|
|
15
|
-
* const $import = createImport({ readFile: fs.readFile, fetch });
|
|
16
|
-
* const module = await _import('./some-module.js');
|
|
17
|
-
*/
|
|
18
|
-
export declare function createImport(projectPath: string, nodeishFs: Pick<NodeishFilesystemSubset, "readFile" | "writeFile" | "mkdir">): (uri: string) => Promise<any>;
|
|
19
|
-
//# sourceMappingURL=import.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/resolve-modules/import.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAK7D;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;AAE1D;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC3B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,IAAI,CAAC,uBAAuB,EAAE,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,SAE/D,MAAM,kBACnB"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import dedent from "dedent";
|
|
2
|
-
import { ModuleImportError } from "./errors.js";
|
|
3
|
-
import { withCache } from "./cache.js";
|
|
4
|
-
import { tryCatch } from "@inlang/result";
|
|
5
|
-
/**
|
|
6
|
-
* Creates the import function.
|
|
7
|
-
*
|
|
8
|
-
* This function is required to import modules from a local path.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* const $import = createImport({ readFile: fs.readFile, fetch });
|
|
12
|
-
* const module = await _import('./some-module.js');
|
|
13
|
-
*/
|
|
14
|
-
export function createImport(projectPath, nodeishFs) {
|
|
15
|
-
return (uri) => $import(uri, projectPath, nodeishFs);
|
|
16
|
-
}
|
|
17
|
-
async function $import(uri, projectPath, nodeishFs) {
|
|
18
|
-
const moduleAsText = uri.startsWith("http")
|
|
19
|
-
? await withCache(readModuleFromCDN, projectPath, nodeishFs)(uri)
|
|
20
|
-
: await readModulefromDisk(uri, nodeishFs.readFile);
|
|
21
|
-
const moduleWithMimeType = "data:application/javascript," + encodeURIComponent(moduleAsText);
|
|
22
|
-
try {
|
|
23
|
-
return await import(/* @vite-ignore */ moduleWithMimeType);
|
|
24
|
-
}
|
|
25
|
-
catch (error) {
|
|
26
|
-
if (error instanceof SyntaxError && uri.includes("jsdelivr")) {
|
|
27
|
-
error.message += dedent `\n\n
|
|
28
|
-
Are you sure that the file exists on JSDelivr?
|
|
29
|
-
|
|
30
|
-
The error indicates that the imported file does not exist on JSDelivr. For non-existent files, JSDelivr returns a 404 text that JS cannot parse as a module and throws a SyntaxError.`;
|
|
31
|
-
}
|
|
32
|
-
throw new ModuleImportError({ module: uri, cause: error });
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Tries to read the module from disk
|
|
37
|
-
* @throws {ModuleImportError}
|
|
38
|
-
*/
|
|
39
|
-
async function readModulefromDisk(uri, readFile) {
|
|
40
|
-
try {
|
|
41
|
-
return await readFile(uri, { encoding: "utf-8" });
|
|
42
|
-
}
|
|
43
|
-
catch (error) {
|
|
44
|
-
throw new ModuleImportError({ module: uri, cause: error });
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Reads a module from a CDN.
|
|
49
|
-
* Tries to read local cache first.
|
|
50
|
-
*
|
|
51
|
-
* @param uri A valid URL
|
|
52
|
-
* @throws {ModuleImportError}
|
|
53
|
-
*/
|
|
54
|
-
async function readModuleFromCDN(uri) {
|
|
55
|
-
if (!isValidUrl(uri))
|
|
56
|
-
throw new ModuleImportError({ module: uri, cause: new Error("Malformed URL") });
|
|
57
|
-
const result = await tryCatch(async () => await fetch(uri));
|
|
58
|
-
if (result.error) {
|
|
59
|
-
throw new ModuleImportError({
|
|
60
|
-
module: uri,
|
|
61
|
-
cause: result.error,
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
const response = result.data;
|
|
65
|
-
if (!response.ok) {
|
|
66
|
-
throw new ModuleImportError({
|
|
67
|
-
module: uri,
|
|
68
|
-
cause: new Error(`Failed to fetch module. HTTP status: ${response.status}, Message: ${response.statusText}`),
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
const JS_CONTENT_TYPES = [
|
|
72
|
-
"application/javascript",
|
|
73
|
-
"text/javascript",
|
|
74
|
-
"application/x-javascript",
|
|
75
|
-
"text/x-javascript",
|
|
76
|
-
];
|
|
77
|
-
// if there is no content-type header, assume it's a JavaScript module & hope for the best
|
|
78
|
-
const contentType = response.headers.get("content-type")?.toLowerCase();
|
|
79
|
-
if (contentType && !JS_CONTENT_TYPES.some((knownType) => contentType.includes(knownType))) {
|
|
80
|
-
throw new ModuleImportError({
|
|
81
|
-
module: uri,
|
|
82
|
-
cause: new Error(`Server responded with ${contentType} insetad of a JavaScript module`),
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
return await response.text();
|
|
86
|
-
}
|
|
87
|
-
function isValidUrl(url) {
|
|
88
|
-
// This dance is necessary to both support a fallback in case URL.canParse
|
|
89
|
-
// is not present (like in vitest), and also appease typescript
|
|
90
|
-
const URLConstructor = URL;
|
|
91
|
-
if ("canParse" in URL) {
|
|
92
|
-
return URL.canParse(url);
|
|
93
|
-
}
|
|
94
|
-
try {
|
|
95
|
-
new URLConstructor(url);
|
|
96
|
-
return true;
|
|
97
|
-
}
|
|
98
|
-
catch (e) {
|
|
99
|
-
console.warn(`Invalid URL: ${url}`);
|
|
100
|
-
return false;
|
|
101
|
-
}
|
|
102
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"import.test.d.ts","sourceRoot":"","sources":["../../src/resolve-modules/import.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
// @vitest-environment jsdom
|
|
2
|
-
import { createNodeishMemoryFs } from "@lix-js/fs";
|
|
3
|
-
import { describe, expect, it } from "vitest";
|
|
4
|
-
import { createImport } from "./import.js";
|
|
5
|
-
describe("$import", async () => {
|
|
6
|
-
const fs = createNodeishMemoryFs();
|
|
7
|
-
await fs.mkdir("./project.inlang/cache/modules", { recursive: true });
|
|
8
|
-
await fs.writeFile("./mock-module.js", `
|
|
9
|
-
export function hello() {
|
|
10
|
-
return "hello";
|
|
11
|
-
}
|
|
12
|
-
`);
|
|
13
|
-
// mock module in a directory
|
|
14
|
-
await fs.mkdir("./nested");
|
|
15
|
-
await fs.writeFile("./nested/mock-module-two.js", `
|
|
16
|
-
export function hello() {
|
|
17
|
-
return "world";
|
|
18
|
-
}
|
|
19
|
-
`);
|
|
20
|
-
const _import = createImport("/project.inlang", {
|
|
21
|
-
writeFile: fs.writeFile,
|
|
22
|
-
readFile: fs.readFile,
|
|
23
|
-
mkdir: fs.mkdir,
|
|
24
|
-
});
|
|
25
|
-
it("should import a module from a local path", async () => {
|
|
26
|
-
const module = await _import("./mock-module.js");
|
|
27
|
-
expect(module.hello()).toBe("hello");
|
|
28
|
-
});
|
|
29
|
-
it("should import a module from a nested local path", async () => {
|
|
30
|
-
const module = await _import("./nested/mock-module-two.js");
|
|
31
|
-
expect(module.hello()).toBe("world");
|
|
32
|
-
});
|
|
33
|
-
it("should import an ES module from a url", async () => {
|
|
34
|
-
const module = await _import("https://cdn.jsdelivr.net/npm/normalize-url@7.2.0/index.js");
|
|
35
|
-
const normalizeUrl = module.default;
|
|
36
|
-
expect(normalizeUrl("inlang.com")).toBe("http://inlang.com");
|
|
37
|
-
});
|
|
38
|
-
it("should throw if a module is loaded that is not an ES module", async () => {
|
|
39
|
-
try {
|
|
40
|
-
await _import("https://cdn.jsdelivr.net/npm/lodash@4.17.21");
|
|
41
|
-
throw "function did not throw";
|
|
42
|
-
}
|
|
43
|
-
catch {
|
|
44
|
-
expect(true).toBe(true);
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resolve-modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,KAAK,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { MessageLintRule } from "@inlang/message-lint-rule";
|
|
2
|
-
import type { ValueError } from "@sinclair/typebox/errors";
|
|
3
|
-
export declare class MessageLintRuleIsInvalidError extends Error {
|
|
4
|
-
constructor(options: {
|
|
5
|
-
id: MessageLintRule["id"];
|
|
6
|
-
errors: ValueError[];
|
|
7
|
-
});
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/resolve-modules/message-lint-rules/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAE1D,qBAAa,6BAA8B,SAAQ,KAAK;gBAC3C,OAAO,EAAE;QAAE,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;QAAC,MAAM,EAAE,UAAU,EAAE,CAAA;KAAE;CAIxE"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { MessageLintRule } from "@inlang/message-lint-rule";
|
|
2
|
-
import { MessageLintRuleIsInvalidError } from "./errors.js";
|
|
3
|
-
export declare const resolveMessageLintRules: (args: {
|
|
4
|
-
messageLintRules: Array<MessageLintRule>;
|
|
5
|
-
}) => {
|
|
6
|
-
data: Array<MessageLintRule>;
|
|
7
|
-
errors: MessageLintRuleIsInvalidError[];
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=resolveMessageLintRules.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolveMessageLintRules.d.ts","sourceRoot":"","sources":["../../../src/resolve-modules/message-lint-rules/resolveMessageLintRules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAA;AAE3D,eAAO,MAAM,uBAAuB,SAAU;IAAE,gBAAgB,EAAE,KAAK,CAAC,eAAe,CAAC,CAAA;CAAE;UAE5E,KAAK,CAAC,eAAe,CAAC;YACpB,6BAA6B,EAAE;CAmB9C,CAAA"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Value } from "@sinclair/typebox/value";
|
|
2
|
-
import { MessageLintRule } from "@inlang/message-lint-rule";
|
|
3
|
-
import { MessageLintRuleIsInvalidError } from "./errors.js";
|
|
4
|
-
export const resolveMessageLintRules = (args) => {
|
|
5
|
-
const result = {
|
|
6
|
-
data: [],
|
|
7
|
-
errors: [],
|
|
8
|
-
};
|
|
9
|
-
for (const rule of args.messageLintRules) {
|
|
10
|
-
if (Value.Check(MessageLintRule, rule) === false) {
|
|
11
|
-
const errors = [...Value.Errors(MessageLintRule, rule)];
|
|
12
|
-
result.errors.push(new MessageLintRuleIsInvalidError({
|
|
13
|
-
// @ts-ignore
|
|
14
|
-
id: rule.id,
|
|
15
|
-
errors,
|
|
16
|
-
}));
|
|
17
|
-
continue;
|
|
18
|
-
}
|
|
19
|
-
else {
|
|
20
|
-
result.data.push(rule);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { Plugin } from "@inlang/plugin";
|
|
2
|
-
import type { ValueError } from "@sinclair/typebox/errors";
|
|
3
|
-
export declare class PluginHasInvalidIdError extends Error {
|
|
4
|
-
constructor(options: {
|
|
5
|
-
id: Plugin["id"];
|
|
6
|
-
});
|
|
7
|
-
}
|
|
8
|
-
export declare class PluginHasInvalidSchemaError extends Error {
|
|
9
|
-
constructor(options: {
|
|
10
|
-
id: Plugin["id"];
|
|
11
|
-
errors: ValueError[];
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
export declare class PluginLoadMessagesFunctionAlreadyDefinedError extends Error {
|
|
15
|
-
constructor(options: {
|
|
16
|
-
id: Plugin["id"];
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
export declare class PluginSaveMessagesFunctionAlreadyDefinedError extends Error {
|
|
20
|
-
constructor(options: {
|
|
21
|
-
id: Plugin["id"];
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
export declare class PluginReturnedInvalidCustomApiError extends Error {
|
|
25
|
-
constructor(options: {
|
|
26
|
-
id: Plugin["id"];
|
|
27
|
-
cause: ErrorOptions["cause"];
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
export declare class PluginsDoNotProvideLoadOrSaveMessagesError extends Error {
|
|
31
|
-
constructor();
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/resolve-modules/plugins/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAE1D,qBAAa,uBAAwB,SAAQ,KAAK;gBACrC,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;KAAE;CAMzC;AAED,qBAAa,2BAA4B,SAAQ,KAAK;gBACzC,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAAC,MAAM,EAAE,UAAU,EAAE,CAAA;KAAE;CAQ/D;AAED,qBAAa,6CAA8C,SAAQ,KAAK;gBAC3D,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;KAAE;CAMzC;AAED,qBAAa,6CAA8C,SAAQ,KAAK;gBAC3D,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;KAAE;CAMzC;AAED,qBAAa,mCAAoC,SAAQ,KAAK;gBACjD,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;KAAE;CAIvE;AAED,qBAAa,0CAA2C,SAAQ,KAAK;;CAOpE"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
export class PluginHasInvalidIdError extends Error {
|
|
2
|
-
constructor(options) {
|
|
3
|
-
super(`Plugin "${options.id}" has an invalid id. The id must:\n1) Start with "plugin."\n2) camelCase\n3) Contain a namespace.\nAn example would be "plugin.namespace.myPlugin".`);
|
|
4
|
-
this.name = "PluginHasInvalidIdError";
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
export class PluginHasInvalidSchemaError extends Error {
|
|
8
|
-
constructor(options) {
|
|
9
|
-
super(`Plugin "${options.id}" has an invalid schema:\n\n${options.errors
|
|
10
|
-
.map((error) => `Path "${error.path}" with value "${error.value}": "${error.message}"`)
|
|
11
|
-
.join("\n")})}\n\nPlease refer to the documentation for the correct schema.`);
|
|
12
|
-
this.name = "PluginHasInvalidSchemaError";
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
export class PluginLoadMessagesFunctionAlreadyDefinedError extends Error {
|
|
16
|
-
constructor(options) {
|
|
17
|
-
super(`Plugin "${options.id}" defines the \`loadMessages()\` function, but it was already defined by another plugin.\n\nInlang only allows one plugin to define the \`loadMessages()\` function.`);
|
|
18
|
-
this.name = "PluginLoadMessagesFunctionAlreadyDefinedError";
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
export class PluginSaveMessagesFunctionAlreadyDefinedError extends Error {
|
|
22
|
-
constructor(options) {
|
|
23
|
-
super(`Plugin "${options.id}" defines the \`saveMessages()\` function, but it was already defined by another plugin.\n\nInlang only allows one plugin to define the \`saveMessages()\` function.`);
|
|
24
|
-
this.name = "PluginSaveMessagesFunctionAlreadyDefinedError";
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
export class PluginReturnedInvalidCustomApiError extends Error {
|
|
28
|
-
constructor(options) {
|
|
29
|
-
super(`Plugin "${options.id}" returned an invalid custom API:\n\n${options.cause}`, options);
|
|
30
|
-
this.name = "PluginReturnedInvalidCustomApiError";
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
export class PluginsDoNotProvideLoadOrSaveMessagesError extends Error {
|
|
34
|
-
constructor() {
|
|
35
|
-
super(`No plugin provides a \`loadMessages()\` or \`saveMessages()\` function\n\nIn case no plugin threw an error, you likely forgot to add a plugin that handles the loading and saving of messages. Refer to the marketplace for available plugins https://inlang.com/marketplace.`);
|
|
36
|
-
this.name = "PluginsDoNotProvideLoadOrSaveMessagesError";
|
|
37
|
-
}
|
|
38
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolvePlugins.d.ts","sourceRoot":"","sources":["../../../src/resolve-modules/plugins/resolvePlugins.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAoBxD,eAAO,MAAM,cAAc,EAAE,sBA2G5B,CAAA"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { Plugin } from "@inlang/plugin";
|
|
2
|
-
import { PluginReturnedInvalidCustomApiError, PluginLoadMessagesFunctionAlreadyDefinedError, PluginSaveMessagesFunctionAlreadyDefinedError, PluginsDoNotProvideLoadOrSaveMessagesError, PluginHasInvalidIdError, PluginHasInvalidSchemaError, } from "./errors.js";
|
|
3
|
-
import { deepmerge } from "deepmerge-ts";
|
|
4
|
-
import { TypeCompiler } from "@sinclair/typebox/compiler";
|
|
5
|
-
import { tryCatch } from "@inlang/result";
|
|
6
|
-
import _debug from "debug";
|
|
7
|
-
const debug = _debug("sdk:resolvePlugins");
|
|
8
|
-
// @ts-ignore - type mismatch error
|
|
9
|
-
const PluginCompiler = TypeCompiler.Compile(Plugin);
|
|
10
|
-
export const resolvePlugins = async (args) => {
|
|
11
|
-
const result = {
|
|
12
|
-
data: {
|
|
13
|
-
loadMessages: undefined,
|
|
14
|
-
saveMessages: undefined,
|
|
15
|
-
customApi: {},
|
|
16
|
-
},
|
|
17
|
-
errors: [],
|
|
18
|
-
};
|
|
19
|
-
const experimentalPersistence = !!args.settings.experimental?.persistence;
|
|
20
|
-
if (experimentalPersistence) {
|
|
21
|
-
debug("Using experimental persistence");
|
|
22
|
-
}
|
|
23
|
-
for (const plugin of args.plugins) {
|
|
24
|
-
const errors = [...PluginCompiler.Errors(plugin)];
|
|
25
|
-
/**
|
|
26
|
-
* -------------- RESOLVE PLUGIN --------------
|
|
27
|
-
*/
|
|
28
|
-
// -- INVALID ID in META --
|
|
29
|
-
const hasInvalidId = errors.some((error) => error.path === "/id");
|
|
30
|
-
if (hasInvalidId) {
|
|
31
|
-
result.errors.push(new PluginHasInvalidIdError({ id: plugin.id }));
|
|
32
|
-
}
|
|
33
|
-
// -- USES INVALID SCHEMA --
|
|
34
|
-
if (errors.length > 0) {
|
|
35
|
-
result.errors.push(new PluginHasInvalidSchemaError({
|
|
36
|
-
id: plugin.id,
|
|
37
|
-
errors: errors,
|
|
38
|
-
}));
|
|
39
|
-
}
|
|
40
|
-
// -- ALREADY DEFINED LOADMESSAGES / SAVEMESSAGES / DETECTEDLANGUAGETAGS --
|
|
41
|
-
if (typeof plugin.loadMessages === "function" && result.data.loadMessages !== undefined) {
|
|
42
|
-
result.errors.push(new PluginLoadMessagesFunctionAlreadyDefinedError({ id: plugin.id }));
|
|
43
|
-
}
|
|
44
|
-
if (typeof plugin.saveMessages === "function" && result.data.saveMessages !== undefined) {
|
|
45
|
-
result.errors.push(new PluginSaveMessagesFunctionAlreadyDefinedError({ id: plugin.id }));
|
|
46
|
-
}
|
|
47
|
-
// --- ADD APP SPECIFIC API ---
|
|
48
|
-
if (typeof plugin.addCustomApi === "function") {
|
|
49
|
-
// TODO: why do we call this function 2 times (here for validation and later for retrieving the actual value)?
|
|
50
|
-
const { data: customApi, error } = tryCatch(() => plugin.addCustomApi({
|
|
51
|
-
settings: args.settings,
|
|
52
|
-
}));
|
|
53
|
-
if (error) {
|
|
54
|
-
result.errors.push(new PluginReturnedInvalidCustomApiError({ id: plugin.id, cause: error }));
|
|
55
|
-
}
|
|
56
|
-
else if (typeof customApi !== "object") {
|
|
57
|
-
result.errors.push(new PluginReturnedInvalidCustomApiError({
|
|
58
|
-
id: plugin.id,
|
|
59
|
-
cause: new Error(`The return value must be an object. Received "${typeof customApi}".`),
|
|
60
|
-
}));
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
// -- CONTINUE IF ERRORS --
|
|
64
|
-
if (result.errors.length > 0) {
|
|
65
|
-
continue;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* -------------- BEGIN ADDING TO RESULT --------------
|
|
69
|
-
*/
|
|
70
|
-
if (typeof plugin.loadMessages === "function") {
|
|
71
|
-
result.data.loadMessages = plugin.loadMessages;
|
|
72
|
-
}
|
|
73
|
-
if (typeof plugin.saveMessages === "function") {
|
|
74
|
-
result.data.saveMessages = plugin.saveMessages;
|
|
75
|
-
}
|
|
76
|
-
if (typeof plugin.addCustomApi === "function") {
|
|
77
|
-
const { data: customApi } = tryCatch(() => plugin.addCustomApi({
|
|
78
|
-
settings: args.settings,
|
|
79
|
-
}));
|
|
80
|
-
if (customApi) {
|
|
81
|
-
result.data.customApi = deepmerge(result.data.customApi, customApi);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
// --- LOADMESSAGE / SAVEMESSAGE NOT DEFINED ---
|
|
86
|
-
if (!experimentalPersistence &&
|
|
87
|
-
(typeof result.data.loadMessages !== "function" ||
|
|
88
|
-
typeof result.data.saveMessages !== "function")) {
|
|
89
|
-
result.errors.push(new PluginsDoNotProvideLoadOrSaveMessagesError());
|
|
90
|
-
}
|
|
91
|
-
return result;
|
|
92
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolvePlugins.test.d.ts","sourceRoot":"","sources":["../../../src/resolve-modules/plugins/resolvePlugins.test.ts"],"names":[],"mappings":""}
|