houdini 2.0.0-next.8 → 2.0.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/build/adapter/index.d.ts +2 -2
- package/build/adapter/index.js +6 -0
- package/build/cmd/generate.d.ts +5 -0
- package/build/cmd/generate.js +77 -0
- package/build/cmd/index.js +32 -0
- package/build/cmd/init.js +565 -0
- package/build/cmd/pullSchema.js +26 -0
- package/build/lib/ast.js +71 -0
- package/build/lib/codegen.d.ts +57 -0
- package/build/lib/codegen.js +617 -0
- package/build/lib/config.d.ts +240 -177
- package/build/lib/config.js +143 -0
- package/build/lib/constants.js +14 -0
- package/build/lib/database.d.ts +7 -0
- package/build/lib/database.js +624 -0
- package/build/lib/db.d.ts +13 -0
- package/build/lib/db.js +135 -0
- package/build/lib/deepMerge.js +23 -0
- package/build/lib/error.d.ts +16 -0
- package/build/lib/error.js +115 -0
- package/build/lib/fs.d.ts +9 -11
- package/build/lib/fs.js +245 -0
- package/build/lib/graphql.d.ts +5 -32
- package/build/lib/graphql.js +36 -0
- package/build/lib/imports.d.ts +29 -14
- package/build/lib/imports.js +66 -0
- package/build/lib/index.d.ts +17 -24
- package/build/lib/index.js +21 -0
- package/build/lib/logger.d.ts +12 -0
- package/build/lib/logger.js +45 -0
- package/build/lib/parse.d.ts +1 -2
- package/build/lib/parse.js +32 -0
- package/build/lib/path.d.ts +0 -1
- package/build/lib/path.js +44 -0
- package/build/lib/pipeline.d.ts +1 -1
- package/build/lib/pipeline.js +8 -0
- package/build/lib/plugins.d.ts +4 -0
- package/build/lib/plugins.js +88 -0
- package/build/lib/project.d.ts +19 -0
- package/build/lib/project.js +296 -0
- package/build/lib/schema.d.ts +1 -0
- package/build/lib/schema.js +61 -0
- package/build/lib/sleep.d.ts +1 -0
- package/build/lib/sleep.js +8 -0
- package/build/lib/types.d.ts +92 -303
- package/build/lib/types.js +37 -0
- package/build/lib/walk.d.ts +11 -6
- package/build/lib/walk.js +138 -0
- package/build/node/index.d.ts +44 -0
- package/build/node/index.js +402 -0
- package/build/oauth/index.d.ts +41 -0
- package/build/oauth/index.js +108 -0
- package/build/package.json +212 -0
- package/build/router/auth-token.d.ts +29 -0
- package/build/router/auth-token.js +168 -0
- package/build/{lib/router → router}/conventions.d.ts +10 -1
- package/build/router/conventions.js +165 -0
- package/build/{runtime-esm/router → router}/cookies.js +21 -21
- package/build/{runtime-esm/router → router}/jwt.js +8 -6
- package/build/{lib/router → router}/manifest.d.ts +2 -2
- package/build/router/manifest.js +279 -0
- package/build/{runtime/router → router}/match.d.ts +10 -10
- package/build/router/match.js +219 -0
- package/build/router/server.d.ts +57 -0
- package/build/router/server.js +500 -0
- package/build/{runtime/router → router}/session.d.ts +8 -3
- package/build/router/session.js +338 -0
- package/build/router/types.d.ts +44 -0
- package/build/runtime/cache/benchmarks/cache.bench.d.ts +1 -0
- package/build/runtime/cache/benchmarks/cache.bench.js +943 -0
- package/build/runtime/cache/gc.d.ts +2 -1
- package/build/{runtime-esm → runtime}/cache/gc.js +4 -1
- package/build/runtime/cache/index.d.ts +173 -3
- package/build/{runtime-esm/cache/cache.js → runtime/cache/index.js} +197 -70
- package/build/runtime/cache/lists.d.ts +9 -4
- package/build/{runtime-esm → runtime}/cache/lists.js +116 -27
- package/build/runtime/cache/staleManager.d.ts +2 -1
- package/build/{runtime-esm → runtime}/cache/staleManager.js +6 -2
- package/build/runtime/cache/storage.d.ts +5 -2
- package/build/{runtime-esm → runtime}/cache/storage.js +126 -54
- package/build/{runtime-esm → runtime}/cache/stuff.js +4 -3
- package/build/runtime/cache/subscription.d.ts +23 -9
- package/build/{runtime-esm → runtime}/cache/subscription.js +103 -65
- package/build/runtime/{client/index.d.ts → client.d.ts} +15 -22
- package/build/runtime/client.js +86 -0
- package/build/runtime/coerce.d.ts +4 -0
- package/build/runtime/coerce.js +31 -0
- package/build/runtime/config.d.ts +20 -0
- package/build/runtime/config.js +88 -0
- package/build/runtime/{lib/constants.d.ts → constants.d.ts} +1 -1
- package/build/runtime/{client/documentStore.d.ts → documentStore.d.ts} +18 -11
- package/build/{runtime-esm/client → runtime}/documentStore.js +53 -56
- package/build/runtime/endpoint.d.ts +14 -0
- package/build/runtime/endpoint.js +29 -0
- package/build/{runtime-cjs/lib → runtime}/flatten.d.ts +1 -1
- package/build/runtime/formData.d.ts +24 -0
- package/build/runtime/formData.js +93 -0
- package/build/runtime/index.d.ts +16 -8
- package/build/runtime/index.js +54 -0
- package/build/{runtime-cjs/lib → runtime}/key.d.ts +1 -1
- package/build/{runtime-esm/lib → runtime}/key.js +4 -4
- package/build/{runtime-esm/lib → runtime}/log.js +3 -3
- package/build/runtime/multipart.d.ts +8 -0
- package/build/runtime/multipart.js +49 -0
- package/build/{runtime-cjs/lib → runtime}/pageInfo.d.ts +3 -3
- package/build/{runtime-esm/lib → runtime}/pageInfo.js +2 -2
- package/build/{runtime-cjs/lib → runtime}/pagination.d.ts +12 -8
- package/build/{runtime-esm/lib → runtime}/pagination.js +157 -21
- package/build/{runtime-cjs/lib → runtime}/scalars.d.ts +6 -6
- package/build/{runtime-esm/lib → runtime}/scalars.js +10 -43
- package/build/{runtime-cjs/lib → runtime}/selection.d.ts +1 -1
- package/build/{runtime-esm/lib → runtime}/selection.js +17 -2
- package/build/runtime/{lib/store.d.ts → store.d.ts} +1 -1
- package/build/{runtime-esm/lib → runtime}/store.js +2 -3
- package/build/runtime/{lib/types.d.ts → types.d.ts} +102 -101
- package/build/{runtime-esm/lib → runtime}/types.js +9 -14
- package/build/test/index.d.ts +6 -25
- package/build/test/index.js +329 -0
- package/build/test/package.json +1 -0
- package/build/vite/hmr.d.ts +26 -3
- package/build/vite/hmr.js +431 -0
- package/build/vite/houdini.d.ts +4 -10
- package/build/vite/houdini.js +134 -0
- package/build/vite/index.d.ts +13 -7
- package/build/vite/index.js +104 -0
- package/build/vite/package.json +1 -0
- package/build/vite/schema.d.ts +5 -3
- package/build/vite/schema.js +193 -0
- package/package.json +148 -57
- package/build/adapter-cjs/index.js +0 -33
- package/build/adapter-cjs/package.json +0 -1
- package/build/adapter-esm/index.js +0 -9
- package/build/cmd-cjs/index.js +0 -89304
- package/build/cmd-cjs/package.json +0 -1
- package/build/cmd-esm/index.js +0 -89308
- package/build/codegen/generators/artifacts/fieldKey.d.ts +0 -3
- package/build/codegen/generators/artifacts/index.d.ts +0 -17
- package/build/codegen/generators/artifacts/indexFile.d.ts +0 -2
- package/build/codegen/generators/artifacts/inputs.d.ts +0 -4
- package/build/codegen/generators/artifacts/operations.d.ts +0 -11
- package/build/codegen/generators/artifacts/selection.d.ts +0 -20
- package/build/codegen/generators/artifacts/utils.d.ts +0 -8
- package/build/codegen/generators/comments/jsdoc.d.ts +0 -2
- package/build/codegen/generators/definitions/enums.d.ts +0 -2
- package/build/codegen/generators/definitions/index.d.ts +0 -2
- package/build/codegen/generators/index.d.ts +0 -6
- package/build/codegen/generators/indexFile/index.d.ts +0 -2
- package/build/codegen/generators/persistedQueries/index.d.ts +0 -2
- package/build/codegen/generators/runtime/graphqlFunction.d.ts +0 -2
- package/build/codegen/generators/runtime/index.d.ts +0 -3
- package/build/codegen/generators/runtime/injectPlugins.d.ts +0 -7
- package/build/codegen/generators/runtime/pluginIndex.d.ts +0 -5
- package/build/codegen/generators/runtime/pluginRuntime.d.ts +0 -15
- package/build/codegen/generators/runtime/runtimeConfig.d.ts +0 -7
- package/build/codegen/generators/typescript/addReferencedInputTypes.d.ts +0 -4
- package/build/codegen/generators/typescript/documentTypes.d.ts +0 -2
- package/build/codegen/generators/typescript/imperativeTypeDef.d.ts +0 -2
- package/build/codegen/generators/typescript/index.d.ts +0 -2
- package/build/codegen/generators/typescript/inlineType.d.ts +0 -29
- package/build/codegen/generators/typescript/loadingState.d.ts +0 -8
- package/build/codegen/index.d.ts +0 -8
- package/build/codegen/transforms/addFields.d.ts +0 -2
- package/build/codegen/transforms/collectDefinitions.d.ts +0 -9
- package/build/codegen/transforms/componentFields.d.ts +0 -8
- package/build/codegen/transforms/fragmentVariables.d.ts +0 -17
- package/build/codegen/transforms/index.d.ts +0 -9
- package/build/codegen/transforms/list.d.ts +0 -9
- package/build/codegen/transforms/paginate.d.ts +0 -4
- package/build/codegen/transforms/runtimeScalars.d.ts +0 -2
- package/build/codegen/transforms/schema.d.ts +0 -2
- package/build/codegen/transforms/typename.d.ts +0 -2
- package/build/codegen/utils/commonjs.d.ts +0 -5
- package/build/codegen/utils/flattenSelections.d.ts +0 -11
- package/build/codegen/utils/index.d.ts +0 -4
- package/build/codegen/utils/moduleExport.d.ts +0 -4
- package/build/codegen/utils/murmur.d.ts +0 -9
- package/build/codegen/utils/objectIdentificationSelection.d.ts +0 -3
- package/build/codegen/utils/stripLoc.d.ts +0 -3
- package/build/codegen/validators/componentFields.d.ts +0 -2
- package/build/codegen/validators/index.d.ts +0 -5
- package/build/codegen/validators/noIDAlias.d.ts +0 -2
- package/build/codegen/validators/plugins.d.ts +0 -3
- package/build/codegen/validators/typeCheck.d.ts +0 -5
- package/build/codegen/validators/uniqueNames.d.ts +0 -2
- package/build/codegen-cjs/index.js +0 -74661
- package/build/codegen-cjs/package.json +0 -1
- package/build/codegen-esm/index.js +0 -74660
- package/build/lib/cleanupFiles.d.ts +0 -1
- package/build/lib/detectTools.d.ts +0 -16
- package/build/lib/introspection.d.ts +0 -3
- package/build/lib/plugin.d.ts +0 -2
- package/build/lib/router/index.d.ts +0 -9
- package/build/lib/router/server.d.ts +0 -7
- package/build/lib/router/types.d.ts +0 -23
- package/build/lib/typescript.d.ts +0 -20
- package/build/lib/watchAndRun.d.ts +0 -61
- package/build/lib-cjs/index.js +0 -79736
- package/build/lib-cjs/package.json +0 -1
- package/build/lib-esm/index.js +0 -79645
- package/build/runtime/cache/cache.d.ts +0 -169
- package/build/runtime/client/plugins/cache.d.ts +0 -9
- package/build/runtime/client/plugins/fetch.d.ts +0 -38
- package/build/runtime/client/plugins/fetchParams.d.ts +0 -9
- package/build/runtime/client/plugins/fragment.d.ts +0 -2
- package/build/runtime/client/plugins/index.d.ts +0 -9
- package/build/runtime/client/plugins/injectedPlugins.d.ts +0 -4
- package/build/runtime/client/plugins/mutation.d.ts +0 -2
- package/build/runtime/client/plugins/optimisticKeys.d.ts +0 -7
- package/build/runtime/client/plugins/query.d.ts +0 -2
- package/build/runtime/client/plugins/subscription.d.ts +0 -20
- package/build/runtime/client/plugins/test.d.ts +0 -15
- package/build/runtime/client/plugins/throwOnError.d.ts +0 -8
- package/build/runtime/client/utils/documentPlugins.d.ts +0 -3
- package/build/runtime/client/utils/index.d.ts +0 -1
- package/build/runtime/generated.d.ts +0 -5
- package/build/runtime/imports/config.d.ts +0 -3
- package/build/runtime/imports/pluginConfig.d.ts +0 -3
- package/build/runtime/lib/config.d.ts +0 -216
- package/build/runtime/lib/deepEquals.d.ts +0 -1
- package/build/runtime/lib/flatten.d.ts +0 -2
- package/build/runtime/lib/index.d.ts +0 -10
- package/build/runtime/lib/key.d.ts +0 -6
- package/build/runtime/lib/log.d.ts +0 -6
- package/build/runtime/lib/lru.d.ts +0 -52
- package/build/runtime/lib/pageInfo.d.ts +0 -7
- package/build/runtime/lib/pagination.d.ts +0 -27
- package/build/runtime/lib/scalars.d.ts +0 -14
- package/build/runtime/lib/selection.d.ts +0 -2
- package/build/runtime/public/cache.d.ts +0 -43
- package/build/runtime/public/index.d.ts +0 -1
- package/build/runtime/public/list.d.ts +0 -18
- package/build/runtime/public/record.d.ts +0 -40
- package/build/runtime/public/tests/test.d.ts +0 -156
- package/build/runtime/public/types.d.ts +0 -62
- package/build/runtime/router/cookies.d.ts +0 -41
- package/build/runtime/router/jwt.d.ts +0 -117
- package/build/runtime/router/server.d.ts +0 -24
- package/build/runtime/router/types.d.ts +0 -26
- package/build/runtime-cjs/cache/cache.d.ts +0 -169
- package/build/runtime-cjs/cache/cache.js +0 -1077
- package/build/runtime-cjs/cache/constants.d.ts +0 -1
- package/build/runtime-cjs/cache/constants.js +0 -28
- package/build/runtime-cjs/cache/gc.d.ts +0 -10
- package/build/runtime-cjs/cache/gc.js +0 -74
- package/build/runtime-cjs/cache/index.d.ts +0 -3
- package/build/runtime-cjs/cache/index.js +0 -25
- package/build/runtime-cjs/cache/lists.d.ts +0 -89
- package/build/runtime-cjs/cache/lists.js +0 -467
- package/build/runtime-cjs/cache/staleManager.d.ts +0 -31
- package/build/runtime-cjs/cache/staleManager.js +0 -123
- package/build/runtime-cjs/cache/storage.d.ts +0 -110
- package/build/runtime-cjs/cache/storage.js +0 -451
- package/build/runtime-cjs/cache/stuff.d.ts +0 -2
- package/build/runtime-cjs/cache/stuff.js +0 -56
- package/build/runtime-cjs/cache/subscription.d.ts +0 -52
- package/build/runtime-cjs/cache/subscription.js +0 -349
- package/build/runtime-cjs/client/documentStore.d.ts +0 -107
- package/build/runtime-cjs/client/documentStore.js +0 -487
- package/build/runtime-cjs/client/index.d.ts +0 -50
- package/build/runtime-cjs/client/index.js +0 -162
- package/build/runtime-cjs/client/plugins/cache.d.ts +0 -9
- package/build/runtime-cjs/client/plugins/cache.js +0 -138
- package/build/runtime-cjs/client/plugins/fetch.d.ts +0 -38
- package/build/runtime-cjs/client/plugins/fetch.js +0 -210
- package/build/runtime-cjs/client/plugins/fetchParams.d.ts +0 -9
- package/build/runtime-cjs/client/plugins/fetchParams.js +0 -47
- package/build/runtime-cjs/client/plugins/fragment.d.ts +0 -2
- package/build/runtime-cjs/client/plugins/fragment.js +0 -77
- package/build/runtime-cjs/client/plugins/index.d.ts +0 -9
- package/build/runtime-cjs/client/plugins/index.js +0 -45
- package/build/runtime-cjs/client/plugins/injectedPlugins.d.ts +0 -4
- package/build/runtime-cjs/client/plugins/injectedPlugins.js +0 -25
- package/build/runtime-cjs/client/plugins/mutation.d.ts +0 -2
- package/build/runtime-cjs/client/plugins/mutation.js +0 -89
- package/build/runtime-cjs/client/plugins/optimisticKeys.d.ts +0 -7
- package/build/runtime-cjs/client/plugins/optimisticKeys.js +0 -324
- package/build/runtime-cjs/client/plugins/query.d.ts +0 -2
- package/build/runtime-cjs/client/plugins/query.js +0 -93
- package/build/runtime-cjs/client/plugins/subscription.d.ts +0 -20
- package/build/runtime-cjs/client/plugins/subscription.js +0 -114
- package/build/runtime-cjs/client/plugins/test.d.ts +0 -15
- package/build/runtime-cjs/client/plugins/test.js +0 -118
- package/build/runtime-cjs/client/plugins/throwOnError.d.ts +0 -8
- package/build/runtime-cjs/client/plugins/throwOnError.js +0 -47
- package/build/runtime-cjs/client/utils/documentPlugins.d.ts +0 -3
- package/build/runtime-cjs/client/utils/documentPlugins.js +0 -57
- package/build/runtime-cjs/client/utils/index.d.ts +0 -1
- package/build/runtime-cjs/client/utils/index.js +0 -22
- package/build/runtime-cjs/generated.d.ts +0 -5
- package/build/runtime-cjs/generated.js +0 -16
- package/build/runtime-cjs/imports/config.d.ts +0 -3
- package/build/runtime-cjs/imports/config.js +0 -24
- package/build/runtime-cjs/imports/pluginConfig.d.ts +0 -3
- package/build/runtime-cjs/imports/pluginConfig.js +0 -25
- package/build/runtime-cjs/index.d.ts +0 -8
- package/build/runtime-cjs/index.js +0 -61
- package/build/runtime-cjs/lib/config.d.ts +0 -216
- package/build/runtime-cjs/lib/config.js +0 -110
- package/build/runtime-cjs/lib/constants.d.ts +0 -6
- package/build/runtime-cjs/lib/constants.js +0 -38
- package/build/runtime-cjs/lib/deepEquals.js +0 -52
- package/build/runtime-cjs/lib/flatten.js +0 -41
- package/build/runtime-cjs/lib/index.d.ts +0 -10
- package/build/runtime-cjs/lib/index.js +0 -40
- package/build/runtime-cjs/lib/key.js +0 -41
- package/build/runtime-cjs/lib/log.js +0 -72
- package/build/runtime-cjs/lib/lru.js +0 -73
- package/build/runtime-cjs/lib/pageInfo.js +0 -79
- package/build/runtime-cjs/lib/pagination.js +0 -240
- package/build/runtime-cjs/lib/scalars.js +0 -147
- package/build/runtime-cjs/lib/selection.js +0 -66
- package/build/runtime-cjs/lib/store.d.ts +0 -19
- package/build/runtime-cjs/lib/store.js +0 -81
- package/build/runtime-cjs/lib/types.d.ts +0 -417
- package/build/runtime-cjs/lib/types.js +0 -104
- package/build/runtime-cjs/package.json +0 -1
- package/build/runtime-cjs/public/cache.d.ts +0 -43
- package/build/runtime-cjs/public/cache.js +0 -112
- package/build/runtime-cjs/public/index.d.ts +0 -1
- package/build/runtime-cjs/public/index.js +0 -28
- package/build/runtime-cjs/public/list.d.ts +0 -18
- package/build/runtime-cjs/public/list.js +0 -151
- package/build/runtime-cjs/public/record.d.ts +0 -40
- package/build/runtime-cjs/public/record.js +0 -94
- package/build/runtime-cjs/public/tests/test.d.ts +0 -156
- package/build/runtime-cjs/public/tests/test.js +0 -60
- package/build/runtime-cjs/public/types.d.ts +0 -62
- package/build/runtime-cjs/public/types.js +0 -16
- package/build/runtime-cjs/router/cookies.js +0 -168
- package/build/runtime-cjs/router/jwt.js +0 -168
- package/build/runtime-cjs/router/match.d.ts +0 -39
- package/build/runtime-cjs/router/match.js +0 -158
- package/build/runtime-cjs/router/server.d.ts +0 -24
- package/build/runtime-cjs/router/server.js +0 -112
- package/build/runtime-cjs/router/session.d.ts +0 -22
- package/build/runtime-cjs/router/session.js +0 -97
- package/build/runtime-cjs/router/types.d.ts +0 -26
- package/build/runtime-cjs/router/types.js +0 -16
- package/build/runtime-esm/cache/cache.d.ts +0 -169
- package/build/runtime-esm/cache/constants.d.ts +0 -1
- package/build/runtime-esm/cache/gc.d.ts +0 -10
- package/build/runtime-esm/cache/index.d.ts +0 -3
- package/build/runtime-esm/cache/index.js +0 -5
- package/build/runtime-esm/cache/lists.d.ts +0 -89
- package/build/runtime-esm/cache/staleManager.d.ts +0 -31
- package/build/runtime-esm/cache/storage.d.ts +0 -110
- package/build/runtime-esm/cache/stuff.d.ts +0 -2
- package/build/runtime-esm/cache/subscription.d.ts +0 -52
- package/build/runtime-esm/client/documentStore.d.ts +0 -107
- package/build/runtime-esm/client/index.d.ts +0 -50
- package/build/runtime-esm/client/index.js +0 -130
- package/build/runtime-esm/client/plugins/cache.d.ts +0 -9
- package/build/runtime-esm/client/plugins/cache.js +0 -104
- package/build/runtime-esm/client/plugins/fetch.d.ts +0 -38
- package/build/runtime-esm/client/plugins/fetch.js +0 -184
- package/build/runtime-esm/client/plugins/fetchParams.d.ts +0 -9
- package/build/runtime-esm/client/plugins/fetchParams.js +0 -23
- package/build/runtime-esm/client/plugins/fragment.d.ts +0 -2
- package/build/runtime-esm/client/plugins/fragment.js +0 -53
- package/build/runtime-esm/client/plugins/index.d.ts +0 -9
- package/build/runtime-esm/client/plugins/index.js +0 -12
- package/build/runtime-esm/client/plugins/injectedPlugins.d.ts +0 -4
- package/build/runtime-esm/client/plugins/injectedPlugins.js +0 -5
- package/build/runtime-esm/client/plugins/mutation.d.ts +0 -2
- package/build/runtime-esm/client/plugins/mutation.js +0 -65
- package/build/runtime-esm/client/plugins/optimisticKeys.d.ts +0 -7
- package/build/runtime-esm/client/plugins/optimisticKeys.js +0 -290
- package/build/runtime-esm/client/plugins/query.d.ts +0 -2
- package/build/runtime-esm/client/plugins/query.js +0 -69
- package/build/runtime-esm/client/plugins/subscription.d.ts +0 -20
- package/build/runtime-esm/client/plugins/subscription.js +0 -90
- package/build/runtime-esm/client/plugins/test.d.ts +0 -15
- package/build/runtime-esm/client/plugins/test.js +0 -93
- package/build/runtime-esm/client/plugins/throwOnError.d.ts +0 -8
- package/build/runtime-esm/client/plugins/throwOnError.js +0 -23
- package/build/runtime-esm/client/utils/documentPlugins.d.ts +0 -3
- package/build/runtime-esm/client/utils/documentPlugins.js +0 -33
- package/build/runtime-esm/client/utils/index.d.ts +0 -1
- package/build/runtime-esm/client/utils/index.js +0 -1
- package/build/runtime-esm/generated.d.ts +0 -5
- package/build/runtime-esm/generated.js +0 -0
- package/build/runtime-esm/imports/config.d.ts +0 -3
- package/build/runtime-esm/imports/config.js +0 -4
- package/build/runtime-esm/imports/pluginConfig.d.ts +0 -3
- package/build/runtime-esm/imports/pluginConfig.js +0 -5
- package/build/runtime-esm/index.d.ts +0 -8
- package/build/runtime-esm/index.js +0 -22
- package/build/runtime-esm/lib/config.d.ts +0 -216
- package/build/runtime-esm/lib/config.js +0 -69
- package/build/runtime-esm/lib/constants.d.ts +0 -6
- package/build/runtime-esm/lib/deepEquals.d.ts +0 -1
- package/build/runtime-esm/lib/flatten.d.ts +0 -2
- package/build/runtime-esm/lib/index.d.ts +0 -10
- package/build/runtime-esm/lib/index.js +0 -10
- package/build/runtime-esm/lib/key.d.ts +0 -6
- package/build/runtime-esm/lib/log.d.ts +0 -6
- package/build/runtime-esm/lib/lru.d.ts +0 -52
- package/build/runtime-esm/lib/pageInfo.d.ts +0 -7
- package/build/runtime-esm/lib/pagination.d.ts +0 -27
- package/build/runtime-esm/lib/scalars.d.ts +0 -14
- package/build/runtime-esm/lib/selection.d.ts +0 -2
- package/build/runtime-esm/lib/store.d.ts +0 -19
- package/build/runtime-esm/lib/types.d.ts +0 -417
- package/build/runtime-esm/public/cache.d.ts +0 -43
- package/build/runtime-esm/public/cache.js +0 -88
- package/build/runtime-esm/public/index.d.ts +0 -1
- package/build/runtime-esm/public/index.js +0 -4
- package/build/runtime-esm/public/list.d.ts +0 -18
- package/build/runtime-esm/public/list.js +0 -127
- package/build/runtime-esm/public/record.d.ts +0 -40
- package/build/runtime-esm/public/record.js +0 -70
- package/build/runtime-esm/public/tests/test.d.ts +0 -156
- package/build/runtime-esm/public/tests/test.js +0 -36
- package/build/runtime-esm/public/types.d.ts +0 -62
- package/build/runtime-esm/router/cookies.d.ts +0 -41
- package/build/runtime-esm/router/jwt.d.ts +0 -117
- package/build/runtime-esm/router/match.d.ts +0 -39
- package/build/runtime-esm/router/match.js +0 -131
- package/build/runtime-esm/router/server.d.ts +0 -24
- package/build/runtime-esm/router/server.js +0 -87
- package/build/runtime-esm/router/session.d.ts +0 -22
- package/build/runtime-esm/router/session.js +0 -71
- package/build/runtime-esm/router/types.d.ts +0 -26
- package/build/runtime-esm/router/types.js +0 -0
- package/build/test-cjs/index.js +0 -75254
- package/build/test-cjs/package.json +0 -1
- package/build/test-esm/index.js +0 -75249
- package/build/vite/imports.d.ts +0 -40
- package/build/vite-cjs/index.js +0 -86271
- package/build/vite-cjs/package.json +0 -1
- package/build/vite-esm/index.js +0 -86263
- /package/build/{adapter-esm → adapter}/package.json +0 -0
- /package/build/{cmd-esm → cmd}/package.json +0 -0
- /package/build/{vite → lib}/ast.d.ts +0 -0
- /package/build/{codegen-esm → lib}/package.json +0 -0
- /package/build/{lib-esm → node}/package.json +0 -0
- /package/build/{runtime-esm → oauth}/package.json +0 -0
- /package/build/{runtime-cjs/router → router}/cookies.d.ts +0 -0
- /package/build/{runtime-cjs/router → router}/jwt.d.ts +0 -0
- /package/build/{test-esm → router}/package.json +0 -0
- /package/build/{runtime-esm/public → router}/types.js +0 -0
- /package/build/{runtime-esm → runtime}/cache/constants.js +0 -0
- /package/build/{runtime-esm/lib → runtime}/constants.js +0 -0
- /package/build/{runtime-cjs/lib → runtime}/deepEquals.d.ts +0 -0
- /package/build/{runtime-esm/lib → runtime}/deepEquals.js +0 -0
- /package/build/{runtime-esm/lib → runtime}/flatten.js +0 -0
- /package/build/{runtime-cjs/lib → runtime}/log.d.ts +0 -0
- /package/build/{runtime-cjs/lib → runtime}/lru.d.ts +0 -0
- /package/build/{runtime-esm/lib → runtime}/lru.js +0 -0
- /package/build/{vite-esm → runtime}/package.json +0 -0
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "houdini",
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"description": "The disappearing GraphQL clients",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"typescript",
|
|
7
|
+
"graphql",
|
|
8
|
+
"graphql-client"
|
|
9
|
+
],
|
|
10
|
+
"homepage": "https://github.com/HoudiniGraphql/houdini",
|
|
11
|
+
"funding": "https://github.com/sponsors/HoudiniGraphql",
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "https://github.com/HoudiniGraphql/houdini.git"
|
|
15
|
+
},
|
|
16
|
+
"license": "MIT",
|
|
17
|
+
"type": "module",
|
|
18
|
+
"scripts": {
|
|
19
|
+
"build": "scripts build-node",
|
|
20
|
+
"compile": "scripts build-node",
|
|
21
|
+
"sync-schema": "node scripts/sync-schema.mjs",
|
|
22
|
+
"typedefs": "scripts typedefs"
|
|
23
|
+
},
|
|
24
|
+
"devDependencies": {
|
|
25
|
+
"@babel/types": "^7.29.7",
|
|
26
|
+
"@types/node": "^25.9.1",
|
|
27
|
+
"@types/sql.js": "^1.4.11",
|
|
28
|
+
"@types/ungap__structured-clone": "^1.2.0",
|
|
29
|
+
"@types/ws": "^8.18.1",
|
|
30
|
+
"prettier": "^3.8.3",
|
|
31
|
+
"rollup": "^4.61.1",
|
|
32
|
+
"scripts": "workspace:^",
|
|
33
|
+
"vite": "^8.0.16",
|
|
34
|
+
"vitest": "^4.1.8"
|
|
35
|
+
},
|
|
36
|
+
"dependencies": {
|
|
37
|
+
"@babel/parser": "^7.29.7",
|
|
38
|
+
"@clack/prompts": "^1.5.1",
|
|
39
|
+
"@graphql-tools/merge": "^9.1.9",
|
|
40
|
+
"@graphql-tools/schema": "^10.0.33",
|
|
41
|
+
"@types/estree": "^1.0.9",
|
|
42
|
+
"@types/fs-extra": "^11.0.4",
|
|
43
|
+
"@ungap/structured-clone": "^1.3.1",
|
|
44
|
+
"@whatwg-node/server": "^0.11.0",
|
|
45
|
+
"ast-types": "^0.16.1",
|
|
46
|
+
"commander": "^15.0.0",
|
|
47
|
+
"deepmerge": "^4.3.1",
|
|
48
|
+
"esbuild": "0.28.0",
|
|
49
|
+
"estree-walker": "^3.0.3",
|
|
50
|
+
"fs-extra": "^11.3.5",
|
|
51
|
+
"glob": "^13.0.0",
|
|
52
|
+
"graphql-yoga": "^5.21.1",
|
|
53
|
+
"houdini-core": "workspace:^",
|
|
54
|
+
"kleur": "^4.1.5",
|
|
55
|
+
"memfs": "^4.17.2",
|
|
56
|
+
"minimatch": "^10.2.5",
|
|
57
|
+
"npx-import": "^1.1.4",
|
|
58
|
+
"oauth4webapi": "^3.8.6",
|
|
59
|
+
"recast": "^0.23.11",
|
|
60
|
+
"sql.js": "^1.14.1",
|
|
61
|
+
"ws": "^8.21.0"
|
|
62
|
+
},
|
|
63
|
+
"peerDependencies": {
|
|
64
|
+
"graphql": ">=16",
|
|
65
|
+
"vite": "^8.0.0"
|
|
66
|
+
},
|
|
67
|
+
"files": [
|
|
68
|
+
"adapter",
|
|
69
|
+
"cmd",
|
|
70
|
+
"lib",
|
|
71
|
+
"node",
|
|
72
|
+
"oauth",
|
|
73
|
+
"router",
|
|
74
|
+
"runtime",
|
|
75
|
+
"test",
|
|
76
|
+
"vite",
|
|
77
|
+
"package.json"
|
|
78
|
+
],
|
|
79
|
+
"exports": {
|
|
80
|
+
"./package.json": "./package.json",
|
|
81
|
+
".": {
|
|
82
|
+
"types": "./lib/index.d.ts",
|
|
83
|
+
"import": "./lib/index.js"
|
|
84
|
+
},
|
|
85
|
+
"./*": {
|
|
86
|
+
"types": "./lib/*",
|
|
87
|
+
"import": "./lib/index.js"
|
|
88
|
+
},
|
|
89
|
+
"./adapter": {
|
|
90
|
+
"types": "./adapter/index.d.ts",
|
|
91
|
+
"import": "./adapter/index.js"
|
|
92
|
+
},
|
|
93
|
+
"./adapter/*": {
|
|
94
|
+
"types": "./adapter/*.d.ts",
|
|
95
|
+
"import": "./adapter/*.js"
|
|
96
|
+
},
|
|
97
|
+
"./cmd": {
|
|
98
|
+
"types": "./cmd/index.d.ts",
|
|
99
|
+
"import": "./cmd/index.js"
|
|
100
|
+
},
|
|
101
|
+
"./lib": {
|
|
102
|
+
"types": "./lib/index.d.ts",
|
|
103
|
+
"import": "./lib/index.js"
|
|
104
|
+
},
|
|
105
|
+
"./lib/config": {
|
|
106
|
+
"types": "./lib/config.d.ts",
|
|
107
|
+
"import": "./lib/config.js"
|
|
108
|
+
},
|
|
109
|
+
"./lib/constants": {
|
|
110
|
+
"types": "./lib/constants.d.ts",
|
|
111
|
+
"import": "./lib/constants.js"
|
|
112
|
+
},
|
|
113
|
+
"./lib/types": {
|
|
114
|
+
"types": "./lib/types.d.ts",
|
|
115
|
+
"import": "./lib/types.js"
|
|
116
|
+
},
|
|
117
|
+
"./node": {
|
|
118
|
+
"types": "./node/index.d.ts",
|
|
119
|
+
"import": "./node/index.js"
|
|
120
|
+
},
|
|
121
|
+
"./node/*": {
|
|
122
|
+
"types": "./node/*.d.ts",
|
|
123
|
+
"import": "./node/*.js"
|
|
124
|
+
},
|
|
125
|
+
"./oauth": {
|
|
126
|
+
"types": "./oauth/index.d.ts",
|
|
127
|
+
"import": "./oauth/index.js"
|
|
128
|
+
},
|
|
129
|
+
"./oauth/*": {
|
|
130
|
+
"types": "./oauth/*.d.ts",
|
|
131
|
+
"import": "./oauth/*.js"
|
|
132
|
+
},
|
|
133
|
+
"./router": {
|
|
134
|
+
"types": "./router/index.d.ts",
|
|
135
|
+
"import": "./router/index.js"
|
|
136
|
+
},
|
|
137
|
+
"./router/*": {
|
|
138
|
+
"types": "./router/*.d.ts",
|
|
139
|
+
"import": "./router/*.js"
|
|
140
|
+
},
|
|
141
|
+
"./runtime": {
|
|
142
|
+
"types": "./runtime/index.d.ts",
|
|
143
|
+
"import": "./runtime/index.js"
|
|
144
|
+
},
|
|
145
|
+
"./runtime/*": {
|
|
146
|
+
"types": "./runtime/*.d.ts",
|
|
147
|
+
"import": "./runtime/*.js"
|
|
148
|
+
},
|
|
149
|
+
"./runtime/cache": {
|
|
150
|
+
"types": "./runtime/cache/index.d.ts",
|
|
151
|
+
"import": "./runtime/cache/index.js"
|
|
152
|
+
},
|
|
153
|
+
"./runtime/config": {
|
|
154
|
+
"types": "./runtime/config.d.ts",
|
|
155
|
+
"import": "./runtime/config.js"
|
|
156
|
+
},
|
|
157
|
+
"./runtime/constants": {
|
|
158
|
+
"types": "./runtime/constants.d.ts",
|
|
159
|
+
"import": "./runtime/constants.js"
|
|
160
|
+
},
|
|
161
|
+
"./runtime/types": {
|
|
162
|
+
"types": "./runtime/types.d.ts",
|
|
163
|
+
"import": "./runtime/types.js"
|
|
164
|
+
},
|
|
165
|
+
"./test": {
|
|
166
|
+
"types": "./test/index.d.ts",
|
|
167
|
+
"import": "./test/index.js"
|
|
168
|
+
},
|
|
169
|
+
"./test/*": {
|
|
170
|
+
"types": "./test/*.d.ts",
|
|
171
|
+
"import": "./test/*.js"
|
|
172
|
+
},
|
|
173
|
+
"./vite": {
|
|
174
|
+
"types": "./vite/index.d.ts",
|
|
175
|
+
"import": "./vite/index.js"
|
|
176
|
+
},
|
|
177
|
+
"./vite/*": {
|
|
178
|
+
"types": "./vite/*.d.ts",
|
|
179
|
+
"import": "./vite/*.js"
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
"typesVersions": {
|
|
183
|
+
"*": {
|
|
184
|
+
"adapter": [
|
|
185
|
+
"./adapter/index.d.ts"
|
|
186
|
+
],
|
|
187
|
+
".": [
|
|
188
|
+
"./lib/index.d.ts"
|
|
189
|
+
],
|
|
190
|
+
"node": [
|
|
191
|
+
"./node/index.d.ts"
|
|
192
|
+
],
|
|
193
|
+
"oauth": [
|
|
194
|
+
"./oauth/index.d.ts"
|
|
195
|
+
],
|
|
196
|
+
"router": [
|
|
197
|
+
"./router/index.d.ts"
|
|
198
|
+
],
|
|
199
|
+
"runtime": [
|
|
200
|
+
"./runtime/index.d.ts"
|
|
201
|
+
],
|
|
202
|
+
"test": [
|
|
203
|
+
"./test/index.d.ts"
|
|
204
|
+
],
|
|
205
|
+
"vite": [
|
|
206
|
+
"./vite/index.d.ts"
|
|
207
|
+
]
|
|
208
|
+
}
|
|
209
|
+
},
|
|
210
|
+
"bin": "./build/cmd/index.js",
|
|
211
|
+
"types": "./lib/index.d.ts"
|
|
212
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export declare const CSRF_FIELD = "__houdini_csrf";
|
|
2
|
+
export declare const REDIRECT_TXN_TTL_SECONDS: number;
|
|
3
|
+
export declare function timingSafeEqual(a: string, b: string): boolean;
|
|
4
|
+
export declare function signFormToken(session: App.Session, sessionKeys: string[]): Promise<string>;
|
|
5
|
+
export declare function verifyFormToken(token: unknown, session: App.Session, sessionKeys: string[]): Promise<boolean>;
|
|
6
|
+
export type RedirectTxn = {
|
|
7
|
+
nonce: string;
|
|
8
|
+
redirectTo: string;
|
|
9
|
+
provider?: string;
|
|
10
|
+
codeVerifier?: string;
|
|
11
|
+
oidcNonce?: string;
|
|
12
|
+
};
|
|
13
|
+
export declare function signRedirectTxn(txn: RedirectTxn, sessionKeys: string[]): Promise<string>;
|
|
14
|
+
export declare function verifyRedirectTxn(cookie: unknown, sessionKeys: string[]): Promise<RedirectTxn | null>;
|
|
15
|
+
export declare function randomToken(bytes?: number): string;
|
|
16
|
+
type SessionAction = {
|
|
17
|
+
session: App.Session;
|
|
18
|
+
merge: boolean;
|
|
19
|
+
} | {
|
|
20
|
+
clear: true;
|
|
21
|
+
};
|
|
22
|
+
export type SessionTokenResult = SessionAction & {
|
|
23
|
+
sid: string;
|
|
24
|
+
jti: string;
|
|
25
|
+
};
|
|
26
|
+
export declare function sessionTokenFingerprint(session: App.Session, sessionKeys: string[]): Promise<string>;
|
|
27
|
+
export declare function signSessionToken(payload: App.Session | null, sessionKeys: string[], merge?: boolean, priorSession?: App.Session): Promise<string>;
|
|
28
|
+
export declare function verifySessionToken(token: unknown, sessionKeys: string[]): Promise<SessionTokenResult | null>;
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import { encode as encodeJWT, verify as verifyJWT, decode as decodeJWT } from "./jwt.js";
|
|
2
|
+
const CSRF_FIELD = "__houdini_csrf";
|
|
3
|
+
const CSRF_TTL_SECONDS = 60 * 60 * 2;
|
|
4
|
+
const SESSION_TTL_SECONDS = 60;
|
|
5
|
+
function formTokenKey(sessionKeys) {
|
|
6
|
+
return sessionKeys[0] + "|houdini-form-csrf";
|
|
7
|
+
}
|
|
8
|
+
function sessionTokenKey(sessionKeys) {
|
|
9
|
+
return sessionKeys[0] + "|houdini-session-mint";
|
|
10
|
+
}
|
|
11
|
+
function redirectTxnKey(sessionKeys) {
|
|
12
|
+
return sessionKeys[0] + "|houdini-redirect-txn";
|
|
13
|
+
}
|
|
14
|
+
const REDIRECT_TXN_TTL_SECONDS = 60 * 10;
|
|
15
|
+
function timingSafeEqual(a, b) {
|
|
16
|
+
if (a.length !== b.length) {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
let mismatch = 0;
|
|
20
|
+
for (let i = 0; i < a.length; i++) {
|
|
21
|
+
mismatch |= a.charCodeAt(i) ^ b.charCodeAt(i);
|
|
22
|
+
}
|
|
23
|
+
return mismatch === 0;
|
|
24
|
+
}
|
|
25
|
+
function stableStringify(value) {
|
|
26
|
+
if (value && typeof value === "object" && !Array.isArray(value)) {
|
|
27
|
+
return "{" + Object.keys(value).sort().map((k) => JSON.stringify(k) + ":" + stableStringify(value[k])).join(",") + "}";
|
|
28
|
+
}
|
|
29
|
+
return JSON.stringify(value ?? null);
|
|
30
|
+
}
|
|
31
|
+
async function sessionFingerprint(session, key) {
|
|
32
|
+
const enc = new TextEncoder();
|
|
33
|
+
const cryptoKey = await crypto.subtle.importKey(
|
|
34
|
+
"raw",
|
|
35
|
+
enc.encode(key),
|
|
36
|
+
{ name: "HMAC", hash: "SHA-256" },
|
|
37
|
+
false,
|
|
38
|
+
["sign"]
|
|
39
|
+
);
|
|
40
|
+
const sig = await crypto.subtle.sign("HMAC", cryptoKey, enc.encode(stableStringify(session)));
|
|
41
|
+
return [...new Uint8Array(sig)].map((b) => b.toString(16).padStart(2, "0")).join("");
|
|
42
|
+
}
|
|
43
|
+
async function signFormToken(session, sessionKeys) {
|
|
44
|
+
const key = formTokenKey(sessionKeys);
|
|
45
|
+
const sid = await sessionFingerprint(session, key);
|
|
46
|
+
return encodeJWT(
|
|
47
|
+
{ houdiniForm: true, sid, exp: Math.floor(Date.now() / 1e3) + CSRF_TTL_SECONDS },
|
|
48
|
+
key
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
async function verifyFormToken(token, session, sessionKeys) {
|
|
52
|
+
if (typeof token !== "string") {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
const key = formTokenKey(sessionKeys);
|
|
56
|
+
try {
|
|
57
|
+
if (!await verifyJWT(token, key)) {
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
const payload = decodeJWT(token).payload;
|
|
61
|
+
if (!payload || payload.houdiniForm !== true || typeof payload.sid !== "string") {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
return timingSafeEqual(payload.sid, await sessionFingerprint(session, key));
|
|
65
|
+
} catch {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
async function signRedirectTxn(txn, sessionKeys) {
|
|
70
|
+
return encodeJWT(
|
|
71
|
+
{
|
|
72
|
+
houdiniRedirect: true,
|
|
73
|
+
...txn,
|
|
74
|
+
exp: Math.floor(Date.now() / 1e3) + REDIRECT_TXN_TTL_SECONDS
|
|
75
|
+
},
|
|
76
|
+
redirectTxnKey(sessionKeys)
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
async function verifyRedirectTxn(cookie, sessionKeys) {
|
|
80
|
+
if (typeof cookie !== "string") {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
try {
|
|
84
|
+
if (!await verifyJWT(cookie, redirectTxnKey(sessionKeys))) {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
const payload = decodeJWT(cookie).payload;
|
|
88
|
+
if (!payload || payload.houdiniRedirect !== true) {
|
|
89
|
+
return null;
|
|
90
|
+
}
|
|
91
|
+
if (typeof payload.nonce !== "string" || typeof payload.redirectTo !== "string") {
|
|
92
|
+
return null;
|
|
93
|
+
}
|
|
94
|
+
const txn = { nonce: payload.nonce, redirectTo: payload.redirectTo };
|
|
95
|
+
if (typeof payload.provider === "string") txn.provider = payload.provider;
|
|
96
|
+
if (typeof payload.codeVerifier === "string") txn.codeVerifier = payload.codeVerifier;
|
|
97
|
+
if (typeof payload.oidcNonce === "string") txn.oidcNonce = payload.oidcNonce;
|
|
98
|
+
return txn;
|
|
99
|
+
} catch {
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
function base64url(bytes) {
|
|
104
|
+
let binary = "";
|
|
105
|
+
for (const byte of bytes) {
|
|
106
|
+
binary += String.fromCharCode(byte);
|
|
107
|
+
}
|
|
108
|
+
return btoa(binary).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
|
|
109
|
+
}
|
|
110
|
+
function randomToken(bytes = 32) {
|
|
111
|
+
return base64url(crypto.getRandomValues(new Uint8Array(bytes)));
|
|
112
|
+
}
|
|
113
|
+
function sessionTokenFingerprint(session, sessionKeys) {
|
|
114
|
+
return sessionFingerprint(session, sessionTokenKey(sessionKeys));
|
|
115
|
+
}
|
|
116
|
+
async function signSessionToken(payload, sessionKeys, merge = false, priorSession = {}) {
|
|
117
|
+
const claims = payload == null ? { houdiniSession: true, clear: true } : { houdiniSession: true, payload, merge };
|
|
118
|
+
return encodeJWT(
|
|
119
|
+
{
|
|
120
|
+
...claims,
|
|
121
|
+
sid: await sessionTokenFingerprint(priorSession, sessionKeys),
|
|
122
|
+
jti: crypto.randomUUID(),
|
|
123
|
+
exp: Math.floor(Date.now() / 1e3) + SESSION_TTL_SECONDS
|
|
124
|
+
},
|
|
125
|
+
sessionTokenKey(sessionKeys)
|
|
126
|
+
);
|
|
127
|
+
}
|
|
128
|
+
async function verifySessionToken(token, sessionKeys) {
|
|
129
|
+
if (typeof token !== "string") {
|
|
130
|
+
return null;
|
|
131
|
+
}
|
|
132
|
+
try {
|
|
133
|
+
if (!await verifyJWT(token, sessionTokenKey(sessionKeys))) {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
const payload = decodeJWT(token).payload;
|
|
137
|
+
if (!payload || payload.houdiniSession !== true) {
|
|
138
|
+
return null;
|
|
139
|
+
}
|
|
140
|
+
if (typeof payload.sid !== "string" || typeof payload.jti !== "string") {
|
|
141
|
+
return null;
|
|
142
|
+
}
|
|
143
|
+
const binding = { sid: payload.sid, jti: payload.jti };
|
|
144
|
+
if (payload.clear === true) {
|
|
145
|
+
return { clear: true, ...binding };
|
|
146
|
+
}
|
|
147
|
+
return {
|
|
148
|
+
session: payload.payload ?? {},
|
|
149
|
+
merge: payload.merge === true,
|
|
150
|
+
...binding
|
|
151
|
+
};
|
|
152
|
+
} catch {
|
|
153
|
+
return null;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
export {
|
|
157
|
+
CSRF_FIELD,
|
|
158
|
+
REDIRECT_TXN_TTL_SECONDS,
|
|
159
|
+
randomToken,
|
|
160
|
+
sessionTokenFingerprint,
|
|
161
|
+
signFormToken,
|
|
162
|
+
signRedirectTxn,
|
|
163
|
+
signSessionToken,
|
|
164
|
+
timingSafeEqual,
|
|
165
|
+
verifyFormToken,
|
|
166
|
+
verifyRedirectTxn,
|
|
167
|
+
verifySessionToken
|
|
168
|
+
};
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
import type { Config } from '../config';
|
|
1
|
+
import type { Config } from '../lib/config.js';
|
|
2
2
|
/** The location of the project's router */
|
|
3
3
|
export declare function router_path(config: Config): string;
|
|
4
4
|
/** The location of the page component */
|
|
5
5
|
export declare function page_entry_path(config: Config, id: string, base?: string): string;
|
|
6
6
|
export declare function server_adapter_path(config: Config, base?: string): string;
|
|
7
|
+
export declare function src_dir(config: Config, base?: string): string;
|
|
8
|
+
export declare function local_server_dir(config: Config, base?: string): string;
|
|
7
9
|
export declare function adapter_config_path(config: Config, base?: string): string;
|
|
10
|
+
export declare function router_build_directory(config: Config): string;
|
|
11
|
+
/** Intermediate directory where the primary client build is assembled before deployment packaging */
|
|
12
|
+
export declare function client_build_directory(config: Config): string;
|
|
8
13
|
export declare function vite_render_path(config: Config, base?: string): string;
|
|
9
14
|
export declare function app_component_path(config: Config, base?: string): string;
|
|
10
15
|
export declare function page_unit_path(config: Config, id: string, base?: string): string;
|
|
@@ -19,11 +24,15 @@ export declare function read_pageView(base: string): Promise<string[] | null[]>;
|
|
|
19
24
|
export declare function read_layoutQuery(base: string): Promise<(string | null)[]>;
|
|
20
25
|
/** Load the layout view for the given route from disk */
|
|
21
26
|
export declare function read_layoutView(base: string): Promise<string[] | null[]>;
|
|
27
|
+
export declare function houdini_root(config: Config): string;
|
|
22
28
|
export declare function temp_dir(config: Config, key: string): string;
|
|
29
|
+
export declare function routes_dir(config: Config): string;
|
|
23
30
|
export declare function router_index_path(config: Config): string;
|
|
24
31
|
export declare function is_layout(path: string): boolean;
|
|
25
32
|
/** Transforms paths to ids */
|
|
26
33
|
export declare function page_id(path: string): string;
|
|
27
34
|
export declare function page_entries_dir(config: Config, base?: string): string;
|
|
35
|
+
export declare function db_path(config: Config): string;
|
|
28
36
|
export declare function units_dir(config: Config, base?: string): string;
|
|
37
|
+
export declare function plugin_dir(config: Config, name: string): string;
|
|
29
38
|
export declare function serialized_manifest_path(config: Config, base?: string): string;
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import * as fs from "../lib/fs.js";
|
|
2
|
+
import * as path from "../lib/path.js";
|
|
3
|
+
function router_path(config) {
|
|
4
|
+
return path.join(base_dir(config), "Router.jsx");
|
|
5
|
+
}
|
|
6
|
+
function page_entry_path(config, id, base) {
|
|
7
|
+
return path.join(page_entries_dir(config, base), `${id}.jsx`);
|
|
8
|
+
}
|
|
9
|
+
function server_adapter_path(config, base) {
|
|
10
|
+
return path.join(units_dir(config, base), "render", "server.js");
|
|
11
|
+
}
|
|
12
|
+
function src_dir(config, base = config?.root_dir) {
|
|
13
|
+
return path.join(base, "src");
|
|
14
|
+
}
|
|
15
|
+
function local_server_dir(config, base) {
|
|
16
|
+
return path.join(src_dir(config, base), "server");
|
|
17
|
+
}
|
|
18
|
+
function adapter_config_path(config, base) {
|
|
19
|
+
return path.join(units_dir(config, base), "render", "config.js");
|
|
20
|
+
}
|
|
21
|
+
function router_build_directory(config) {
|
|
22
|
+
return path.join(config.root_dir, "build");
|
|
23
|
+
}
|
|
24
|
+
function client_build_directory(config) {
|
|
25
|
+
return path.join(base_dir(config), "dist");
|
|
26
|
+
}
|
|
27
|
+
function vite_render_path(config, base) {
|
|
28
|
+
return path.join(units_dir(config, base), "render", "vite.js");
|
|
29
|
+
}
|
|
30
|
+
function app_component_path(config, base) {
|
|
31
|
+
return path.join(units_dir(config, base), "render", "App.jsx");
|
|
32
|
+
}
|
|
33
|
+
function page_unit_path(config, id, base) {
|
|
34
|
+
return path.join(page_units_dir(config, base), `${id}.jsx`);
|
|
35
|
+
}
|
|
36
|
+
function layout_unit_path(config, id, base) {
|
|
37
|
+
return path.join(layout_units_dir(config, base), `${id}.jsx`);
|
|
38
|
+
}
|
|
39
|
+
function componentField_unit_path(config, id, base) {
|
|
40
|
+
return path.join(units_dir(config, base), "componentFields", `wrapper_${id}.jsx`);
|
|
41
|
+
}
|
|
42
|
+
function fallback_unit_path(config, which, id, base) {
|
|
43
|
+
return path.join(fallbacks_units_dir(config, which, base), `${id}.jsx`);
|
|
44
|
+
}
|
|
45
|
+
async function read_pageQuery(base) {
|
|
46
|
+
const target = path.join(base, "+page.gql");
|
|
47
|
+
return [target, await fs.readFile(target)];
|
|
48
|
+
}
|
|
49
|
+
async function read_pageView(base) {
|
|
50
|
+
for (const name of ["+page.tsx", "+page.jsx"]) {
|
|
51
|
+
const target = path.join(base, name);
|
|
52
|
+
const result = await fs.readFile(target);
|
|
53
|
+
if (result) {
|
|
54
|
+
return [target, result];
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return [null, null];
|
|
58
|
+
}
|
|
59
|
+
async function read_layoutQuery(base) {
|
|
60
|
+
const target = path.join(base, "+layout.gql");
|
|
61
|
+
return [target, await fs.readFile(target)];
|
|
62
|
+
}
|
|
63
|
+
async function read_layoutView(base) {
|
|
64
|
+
for (const name of ["+layout.tsx", "+layout.jsx"]) {
|
|
65
|
+
const target = path.join(base, name);
|
|
66
|
+
const result = await fs.readFile(target);
|
|
67
|
+
if (result) {
|
|
68
|
+
return [target, result];
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return [null, null];
|
|
72
|
+
}
|
|
73
|
+
function houdini_root(config) {
|
|
74
|
+
return path.join(config.root_dir, config.config_file.runtimeDir ?? ".houdini");
|
|
75
|
+
}
|
|
76
|
+
function temp_dir(config, key) {
|
|
77
|
+
return path.join(houdini_root(config), "temp", key);
|
|
78
|
+
}
|
|
79
|
+
function routes_dir(config) {
|
|
80
|
+
return path.join(src_dir(config), "routes");
|
|
81
|
+
}
|
|
82
|
+
function router_index_path(config) {
|
|
83
|
+
return path.join(src_dir(config), "+index.jsx");
|
|
84
|
+
}
|
|
85
|
+
function is_layout(path2) {
|
|
86
|
+
return path2.endsWith("+layout.tsx") || path2.endsWith("+layout.jsx");
|
|
87
|
+
}
|
|
88
|
+
function page_id(path2) {
|
|
89
|
+
if (path2.endsWith("/") && path2.length > 1) {
|
|
90
|
+
path2 = path2.substring(0, path2.length - 1);
|
|
91
|
+
}
|
|
92
|
+
const special_chars = ["/", "]", "[", "(", ")", "-"];
|
|
93
|
+
const mask = "_";
|
|
94
|
+
let copy = "";
|
|
95
|
+
for (const char of path2) {
|
|
96
|
+
const match = special_chars.indexOf(char);
|
|
97
|
+
if (match !== -1) {
|
|
98
|
+
copy += mask;
|
|
99
|
+
} else {
|
|
100
|
+
copy += char;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
return copy;
|
|
104
|
+
}
|
|
105
|
+
function page_entries_dir(config, base) {
|
|
106
|
+
return path.join(units_dir(config, base), "entries");
|
|
107
|
+
}
|
|
108
|
+
function page_units_dir(config, base) {
|
|
109
|
+
return path.join(units_dir(config, base), "pages");
|
|
110
|
+
}
|
|
111
|
+
function layout_units_dir(config, base) {
|
|
112
|
+
return path.join(units_dir(config, base), "layouts");
|
|
113
|
+
}
|
|
114
|
+
function fallbacks_units_dir(config, which, base) {
|
|
115
|
+
return path.join(units_dir(config, base), "fallbacks", which);
|
|
116
|
+
}
|
|
117
|
+
function db_path(config) {
|
|
118
|
+
return path.join(houdini_root(config), "db.sqlite");
|
|
119
|
+
}
|
|
120
|
+
function units_dir(config, base = base_dir(config)) {
|
|
121
|
+
return path.join(base, "units");
|
|
122
|
+
}
|
|
123
|
+
function base_dir(config) {
|
|
124
|
+
return plugin_dir(config, "houdini-react");
|
|
125
|
+
}
|
|
126
|
+
function root_plugin_dir(config) {
|
|
127
|
+
return path.join(houdini_root(config), "plugins");
|
|
128
|
+
}
|
|
129
|
+
function plugin_dir(config, name) {
|
|
130
|
+
return path.join(root_plugin_dir(config), name);
|
|
131
|
+
}
|
|
132
|
+
function serialized_manifest_path(config, base = base_dir(config)) {
|
|
133
|
+
return path.join(base, "manifest.json");
|
|
134
|
+
}
|
|
135
|
+
export {
|
|
136
|
+
adapter_config_path,
|
|
137
|
+
app_component_path,
|
|
138
|
+
client_build_directory,
|
|
139
|
+
componentField_unit_path,
|
|
140
|
+
db_path,
|
|
141
|
+
fallback_unit_path,
|
|
142
|
+
houdini_root,
|
|
143
|
+
is_layout,
|
|
144
|
+
layout_unit_path,
|
|
145
|
+
local_server_dir,
|
|
146
|
+
page_entries_dir,
|
|
147
|
+
page_entry_path,
|
|
148
|
+
page_id,
|
|
149
|
+
page_unit_path,
|
|
150
|
+
plugin_dir,
|
|
151
|
+
read_layoutQuery,
|
|
152
|
+
read_layoutView,
|
|
153
|
+
read_pageQuery,
|
|
154
|
+
read_pageView,
|
|
155
|
+
router_build_directory,
|
|
156
|
+
router_index_path,
|
|
157
|
+
router_path,
|
|
158
|
+
routes_dir,
|
|
159
|
+
serialized_manifest_path,
|
|
160
|
+
server_adapter_path,
|
|
161
|
+
src_dir,
|
|
162
|
+
temp_dir,
|
|
163
|
+
units_dir,
|
|
164
|
+
vite_render_path
|
|
165
|
+
};
|