@baseplate-dev/plugin-auth 2.0.5 → 2.0.6

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.
Files changed (37) hide show
  1. package/dist/web/assets/__federation_expose_auth0CoreCommon-zQL4xAil.js.map +1 -1
  2. package/dist/web/assets/__federation_expose_auth0CoreWeb-BQJHnPPM.js.map +1 -1
  3. package/dist/web/assets/__federation_expose_authCoreCommon-hEy5zrff.js.map +1 -1
  4. package/dist/web/assets/__federation_expose_authCoreWeb-UlIYc0cq.js.map +1 -1
  5. package/dist/web/assets/__federation_expose_local-authAdminCommon-DyMAwXJ7.js.map +1 -1
  6. package/dist/web/assets/__federation_expose_local-authAdminWeb-B6PdHqzu.js.map +1 -1
  7. package/dist/web/assets/__federation_expose_local-authCoreCommon-BtQr1I4Q.js.map +1 -1
  8. package/dist/web/assets/__federation_expose_local-authCoreWeb-DsK2Dfpr.js.map +1 -1
  9. package/dist/web/assets/__federation_expose_placeholder-authCoreCommon-BZy2rgIt.js.map +1 -1
  10. package/dist/web/assets/__federation_expose_placeholder-authCoreWeb-OEDsMJ_b.js.map +1 -1
  11. package/dist/web/assets/__federation_fn_import-v1QB_w7U.js.map +1 -1
  12. package/dist/web/assets/__federation_shared_@baseplate-dev/project-builder-lib/web-Cb2knzA_.js.map +1 -1
  13. package/dist/web/assets/__federation_shared_@baseplate-dev/project-builder-lib-CJdJXC1f.js.map +1 -1
  14. package/dist/web/assets/__federation_shared_@baseplate-dev/ui-components-CrL3nReP.js.map +1 -1
  15. package/dist/web/assets/__federation_shared_@baseplate-dev/utils-CJgKqZu4.js.map +1 -1
  16. package/dist/web/assets/__federation_shared_@tanstack/react-router-DdszvTPE.js.map +1 -1
  17. package/dist/web/assets/__federation_shared_react-dom-B4vgf5Ln.js.map +1 -1
  18. package/dist/web/assets/__federation_shared_zod-BGUJlEOa.js.map +1 -1
  19. package/dist/web/assets/get-auth-plugin-definition-Qo_0oJFS.js.map +1 -1
  20. package/dist/web/assets/index-DUwCgkeV.js.map +1 -1
  21. package/dist/web/assets/index-KXYo3x9T.js.map +1 -1
  22. package/dist/web/assets/index.esm-BsVb2e-m.js.map +1 -1
  23. package/dist/web/assets/isEqual-DAXqKRba.js.map +1 -1
  24. package/dist/web/assets/jsx-runtime-XI9uIe3W.js.map +1 -1
  25. package/dist/web/assets/model-merger-BeuqGz00.js.map +1 -1
  26. package/dist/web/assets/model-names-CEoSIalq.js.map +1 -1
  27. package/dist/web/assets/plugin-definition-C1FCvorP.js.map +1 -1
  28. package/dist/web/assets/plugin-definition-CeI3VlQi.js.map +1 -1
  29. package/dist/web/assets/plugin-definition-CpmhXG71.js.map +1 -1
  30. package/dist/web/assets/plugin-definition-p6J3lSNe.js.map +1 -1
  31. package/dist/web/assets/react-BUJ02Ozg.js.map +1 -1
  32. package/dist/web/assets/remoteEntry.js +10 -10
  33. package/dist/web/assets/sortBy-BPH_zRB8.js.map +1 -1
  34. package/dist/web/assets/{style-Cu4lNOci.css → style-DZ-aOCkd.css} +1 -1
  35. package/dist/web/assets/styles-DMYfkBXJ.js.map +1 -1
  36. package/dist/web/index.html +1 -1
  37. package/package.json +15 -15
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_auth0CoreCommon-zQL4xAil.js","sources":["../../../src/auth0/core/schema/migrations.ts","../../../src/auth0/core/common.ts"],"sourcesContent":["import type { PluginConfigMigration } from '@baseplate-dev/project-builder-lib';\n\nexport const AUTH0_PLUGIN_CONFIG_MIGRATIONS: PluginConfigMigration[] = [\n {\n name: 'move-models',\n version: 1,\n migrate: (config) => {\n const typedConfig = config as { userAccountModelRef: string };\n return {\n updatedConfig: {\n ...typedConfig,\n userAccountModelRef: undefined,\n modelRefs: {\n user: typedConfig.userAccountModelRef,\n },\n },\n };\n },\n },\n];\n","import {\n authModelConfigSpec,\n createPlatformPluginExport,\n ModelUtils,\n pluginConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { AUTH0_MODELS } from '../constants/model-names.js';\nimport { AUTH0_PLUGIN_CONFIG_MIGRATIONS } from './schema/migrations.js';\nimport { createAuth0PluginDefinitionSchema } from './schema/plugin-definition.js';\n\n// necessary for Typescript to infer the return type of the initialize function\nexport type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nexport default createPlatformPluginExport({\n dependencies: {\n config: pluginConfigSpec,\n },\n exports: {\n authModelConfig: authModelConfigSpec,\n },\n initialize: ({ config }, { pluginKey }) => {\n config.registerSchemaCreator(pluginKey, createAuth0PluginDefinitionSchema);\n config.registerMigrations(pluginKey, AUTH0_PLUGIN_CONFIG_MIGRATIONS);\n return {\n authModelConfig: {\n getUserModel: (definition) =>\n ModelUtils.byNameOrThrow(definition, AUTH0_MODELS.user),\n },\n };\n },\n});\n"],"names":[],"mappings":";;;AAEO,MAAM,8BAA0D,GAAA;AAAA,EACrE;AAAA,IACE,IAAM,EAAA,aAAA;AAAA,IACN,OAAS,EAAA,CAAA;AAAA,IACT,OAAA,EAAS,CAAC,MAAW,KAAA;AACnB,MAAA,MAAM,WAAc,GAAA,MAAA;AACpB,MAAO,OAAA;AAAA,QACL,aAAe,EAAA;AAAA,UACb,GAAG,WAAA;AAAA,UACH,mBAAqB,EAAA,MAAA;AAAA,UACrB,SAAW,EAAA;AAAA,YACT,MAAM,WAAY,CAAA;AAAA;AACpB;AACF,OACF;AAAA;AACF;AAEJ,CAAA;;ACnBA,MAAA,CAAA,mBAAA,CAAA,0BAAA,CAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAcA,eAAe,0BAA2B,CAAA;AAAA,EACxC,YAAc,EAAA;AAAA,IACZ,MAAQ,EAAA;AAAA,GACV;AAAA,EACA,OAAS,EAAA;AAAA,IACP,eAAiB,EAAA;AAAA,GACnB;AAAA,EACA,YAAY,CAAC,EAAE,QAAU,EAAA,EAAE,WAAgB,KAAA;AACzC,IAAO,MAAA,CAAA,qBAAA,CAAsB,WAAW,iCAAiC,CAAA;AACzE,IAAO,MAAA,CAAA,kBAAA,CAAmB,WAAW,8BAA8B,CAAA;AACnE,IAAO,OAAA;AAAA,MACL,eAAiB,EAAA;AAAA,QACf,cAAc,CAAC,UAAA,KACb,WAAW,aAAc,CAAA,UAAA,EAAY,aAAa,IAAI;AAAA;AAC1D,KACF;AAAA;AAEJ,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"__federation_expose_auth0CoreCommon-zQL4xAil.js","sources":["../../../src/auth0/core/schema/migrations.ts","../../../src/auth0/core/common.ts"],"sourcesContent":["import type { PluginConfigMigration } from '@baseplate-dev/project-builder-lib';\n\nexport const AUTH0_PLUGIN_CONFIG_MIGRATIONS: PluginConfigMigration[] = [\n {\n name: 'move-models',\n version: 1,\n migrate: (config) => {\n const typedConfig = config as { userAccountModelRef: string };\n return {\n updatedConfig: {\n ...typedConfig,\n userAccountModelRef: undefined,\n modelRefs: {\n user: typedConfig.userAccountModelRef,\n },\n },\n };\n },\n },\n];\n","import {\n authModelConfigSpec,\n createPlatformPluginExport,\n ModelUtils,\n pluginConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { AUTH0_MODELS } from '../constants/model-names.js';\nimport { AUTH0_PLUGIN_CONFIG_MIGRATIONS } from './schema/migrations.js';\nimport { createAuth0PluginDefinitionSchema } from './schema/plugin-definition.js';\n\n// necessary for Typescript to infer the return type of the initialize function\nexport type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nexport default createPlatformPluginExport({\n dependencies: {\n config: pluginConfigSpec,\n },\n exports: {\n authModelConfig: authModelConfigSpec,\n },\n initialize: ({ config }, { pluginKey }) => {\n config.registerSchemaCreator(pluginKey, createAuth0PluginDefinitionSchema);\n config.registerMigrations(pluginKey, AUTH0_PLUGIN_CONFIG_MIGRATIONS);\n return {\n authModelConfig: {\n getUserModel: (definition) =>\n ModelUtils.byNameOrThrow(definition, AUTH0_MODELS.user),\n },\n };\n },\n});\n"],"names":[],"mappings":";;;AAEO,MAAM,8BAAA,GAA0D;AAAA,EACrE;AAAA,IACE,IAAA,EAAM,aAAA;AAAA,IACN,OAAA,EAAS,CAAA;AAAA,IACT,OAAA,EAAS,CAAC,MAAA,KAAW;AACnB,MAAA,MAAM,WAAA,GAAc,MAAA;AACpB,MAAA,OAAO;AAAA,QACL,aAAA,EAAe;AAAA,UACb,GAAG,WAAA;AAAA,UACH,mBAAA,EAAqB,MAAA;AAAA,UACrB,SAAA,EAAW;AAAA,YACT,MAAM,WAAA,CAAY;AAAA;AACpB;AACF,OACF;AAAA,IACF;AAAA;AAEJ,CAAA;;ACnBA,MAAA,CAAA,mBAAA,CAAA,0BAAA,CAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAcA,eAAe,0BAAA,CAA2B;AAAA,EACxC,YAAA,EAAc;AAAA,IACZ,MAAA,EAAQ;AAAA,GACV;AAAA,EACA,OAAA,EAAS;AAAA,IACP,eAAA,EAAiB;AAAA,GACnB;AAAA,EACA,YAAY,CAAC,EAAE,QAAO,EAAG,EAAE,WAAU,KAAM;AACzC,IAAA,MAAA,CAAO,qBAAA,CAAsB,WAAW,iCAAiC,CAAA;AACzE,IAAA,MAAA,CAAO,kBAAA,CAAmB,WAAW,8BAA8B,CAAA;AACnE,IAAA,OAAO;AAAA,MACL,eAAA,EAAiB;AAAA,QACf,cAAc,CAAC,UAAA,KACb,WAAW,aAAA,CAAc,UAAA,EAAY,aAAa,IAAI;AAAA;AAC1D,KACF;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_auth0CoreWeb-BQJHnPPM.js","sources":["../../../src/auth0/core/schema/models.ts","../../../src/auth0/core/components/auth0-definition-editor.tsx","../../../src/auth0/core/web.ts"],"sourcesContent":["import type { ModelMergerModelInput } from '@baseplate-dev/project-builder-lib';\n\nimport type { AuthPluginDefinition } from '#src/auth/core/schema/plugin-definition.js';\n\nimport { AUTH0_MODELS } from '#src/auth0/constants/model-names.js';\n\nexport function createAuth0Models({\n authFeatureRef,\n}: AuthPluginDefinition): Record<\n keyof typeof AUTH0_MODELS,\n ModelMergerModelInput\n> {\n return {\n user: {\n name: AUTH0_MODELS.user,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'email',\n type: 'string',\n },\n {\n name: 'auth0Id',\n type: 'string',\n isOptional: true,\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'auth0Id' }],\n },\n ],\n },\n graphql: {\n objectType: {\n enabled: true,\n fields: ['id', 'email'],\n },\n },\n },\n };\n}\n","import type { WebConfigProps } from '@baseplate-dev/project-builder-lib';\nimport type React from 'react';\n\nimport {\n createAndApplyModelMergerResults,\n createModelMergerResults,\n doesModelMergerResultsHaveChanges,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n ModelMergerResultAlert,\n useBlockUnsavedChangesNavigate,\n useDefinitionSchema,\n useProjectDefinition,\n useResettableForm,\n} from '@baseplate-dev/project-builder-lib/web';\nimport {\n FormActionBar,\n SectionList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { useMemo } from 'react';\n\nimport { getAuthPluginDefinition } from '#src/auth/utils/get-auth-plugin-definition.js';\nimport { AUTH0_MODELS } from '#src/auth0/constants/model-names.js';\nimport { AuthConfigTabs } from '#src/common/components/auth-config-tabs.js';\n\nimport type { Auth0PluginDefinitionInput } from '../schema/plugin-definition.js';\n\nimport { createAuth0Models } from '../schema/models.js';\nimport { createAuth0PluginDefinitionSchema } from '../schema/plugin-definition.js';\n\nimport '#src/styles.css';\n\nexport function Auth0DefinitionEditor({\n definition: pluginMetadata,\n metadata,\n onSave,\n}: WebConfigProps): React.JSX.Element {\n const { definition, definitionContainer, saveDefinitionWithFeedback } =\n useProjectDefinition();\n\n const auth0PluginDefinitionSchema = useDefinitionSchema(\n createAuth0PluginDefinitionSchema,\n );\n\n const defaultValues = useMemo(() => {\n if (pluginMetadata?.config) {\n return pluginMetadata.config as Auth0PluginDefinitionInput;\n }\n\n return {} satisfies Auth0PluginDefinitionInput;\n }, [pluginMetadata?.config]);\n\n const form = useResettableForm({\n resolver: zodResolver(auth0PluginDefinitionSchema),\n defaultValues,\n });\n const { control, reset, handleSubmit } = form;\n\n const authDefinition = getAuthPluginDefinition(definition);\n\n const pendingModelChanges = useMemo(() => {\n const desiredModels = createAuth0Models(authDefinition);\n\n return createModelMergerResults(\n AUTH0_MODELS,\n desiredModels,\n definitionContainer,\n );\n }, [definitionContainer, authDefinition]);\n\n const onSubmit = handleSubmit((data) =>\n saveDefinitionWithFeedback(\n (draftConfig) => {\n const updatedData = {\n ...data,\n };\n createAndApplyModelMergerResults(\n draftConfig,\n AUTH0_MODELS,\n createAuth0Models(authDefinition),\n definitionContainer,\n );\n PluginUtils.setPluginConfig(\n draftConfig,\n metadata,\n updatedData,\n definitionContainer.pluginStore,\n );\n },\n {\n successMessage: 'Successfully saved Auth0 plugin!',\n onSuccess: () => {\n onSave();\n },\n },\n ),\n );\n\n useBlockUnsavedChangesNavigate({ control, reset, onSubmit });\n\n return (\n <div className=\"auth:relative auth:flex auth:h-full auth:flex-1 auth:flex-col auth:gap-4 auth:overflow-hidden\">\n <AuthConfigTabs />\n <div\n className=\"auth:mb-[--action-bar-height] auth:flex auth:flex-1 auth:overflow-y-auto\"\n style={\n {\n '--action-bar-height': '52px',\n } as React.CSSProperties\n }\n >\n <form onSubmit={onSubmit} className=\"auth:max-w-6xl auth:flex-1\">\n <div className=\"auth:pb-16\">\n <SectionList>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n Auth0 Configuration\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n The plugin will automatically configure the models it needs.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <ModelMergerResultAlert\n pendingModelChanges={pendingModelChanges}\n />\n </SectionListSectionContent>\n </SectionListSection>\n </SectionList>\n </div>\n\n <FormActionBar\n form={form}\n allowSaveWithoutDirty={\n !pluginMetadata ||\n doesModelMergerResultsHaveChanges(pendingModelChanges)\n }\n />\n </form>\n </div>\n </div>\n );\n}\n","import {\n createPlatformPluginExport,\n webConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { Auth0DefinitionEditor } from './components/auth0-definition-editor.js';\n\nimport '../../styles.css';\n\nexport default createPlatformPluginExport({\n dependencies: {\n webConfig: webConfigSpec,\n },\n exports: {},\n initialize: ({ webConfig }, { pluginKey }) => {\n webConfig.registerWebConfigComponent(pluginKey, Auth0DefinitionEditor);\n return {};\n },\n});\n"],"names":["zodResolver","jsxs","jsx"],"mappings":"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"}
1
+ {"version":3,"file":"__federation_expose_auth0CoreWeb-BQJHnPPM.js","sources":["../../../src/auth0/core/schema/models.ts","../../../src/auth0/core/components/auth0-definition-editor.tsx","../../../src/auth0/core/web.ts"],"sourcesContent":["import type { ModelMergerModelInput } from '@baseplate-dev/project-builder-lib';\n\nimport type { AuthPluginDefinition } from '#src/auth/core/schema/plugin-definition.js';\n\nimport { AUTH0_MODELS } from '#src/auth0/constants/model-names.js';\n\nexport function createAuth0Models({\n authFeatureRef,\n}: AuthPluginDefinition): Record<\n keyof typeof AUTH0_MODELS,\n ModelMergerModelInput\n> {\n return {\n user: {\n name: AUTH0_MODELS.user,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'email',\n type: 'string',\n },\n {\n name: 'auth0Id',\n type: 'string',\n isOptional: true,\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'auth0Id' }],\n },\n ],\n },\n graphql: {\n objectType: {\n enabled: true,\n fields: ['id', 'email'],\n },\n },\n },\n };\n}\n","import type { WebConfigProps } from '@baseplate-dev/project-builder-lib';\nimport type React from 'react';\n\nimport {\n createAndApplyModelMergerResults,\n createModelMergerResults,\n doesModelMergerResultsHaveChanges,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n ModelMergerResultAlert,\n useBlockUnsavedChangesNavigate,\n useDefinitionSchema,\n useProjectDefinition,\n useResettableForm,\n} from '@baseplate-dev/project-builder-lib/web';\nimport {\n FormActionBar,\n SectionList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { useMemo } from 'react';\n\nimport { getAuthPluginDefinition } from '#src/auth/utils/get-auth-plugin-definition.js';\nimport { AUTH0_MODELS } from '#src/auth0/constants/model-names.js';\nimport { AuthConfigTabs } from '#src/common/components/auth-config-tabs.js';\n\nimport type { Auth0PluginDefinitionInput } from '../schema/plugin-definition.js';\n\nimport { createAuth0Models } from '../schema/models.js';\nimport { createAuth0PluginDefinitionSchema } from '../schema/plugin-definition.js';\n\nimport '#src/styles.css';\n\nexport function Auth0DefinitionEditor({\n definition: pluginMetadata,\n metadata,\n onSave,\n}: WebConfigProps): React.JSX.Element {\n const { definition, definitionContainer, saveDefinitionWithFeedback } =\n useProjectDefinition();\n\n const auth0PluginDefinitionSchema = useDefinitionSchema(\n createAuth0PluginDefinitionSchema,\n );\n\n const defaultValues = useMemo(() => {\n if (pluginMetadata?.config) {\n return pluginMetadata.config as Auth0PluginDefinitionInput;\n }\n\n return {} satisfies Auth0PluginDefinitionInput;\n }, [pluginMetadata?.config]);\n\n const form = useResettableForm({\n resolver: zodResolver(auth0PluginDefinitionSchema),\n defaultValues,\n });\n const { control, reset, handleSubmit } = form;\n\n const authDefinition = getAuthPluginDefinition(definition);\n\n const pendingModelChanges = useMemo(() => {\n const desiredModels = createAuth0Models(authDefinition);\n\n return createModelMergerResults(\n AUTH0_MODELS,\n desiredModels,\n definitionContainer,\n );\n }, [definitionContainer, authDefinition]);\n\n const onSubmit = handleSubmit((data) =>\n saveDefinitionWithFeedback(\n (draftConfig) => {\n const updatedData = {\n ...data,\n };\n createAndApplyModelMergerResults(\n draftConfig,\n AUTH0_MODELS,\n createAuth0Models(authDefinition),\n definitionContainer,\n );\n PluginUtils.setPluginConfig(\n draftConfig,\n metadata,\n updatedData,\n definitionContainer.pluginStore,\n );\n },\n {\n successMessage: 'Successfully saved Auth0 plugin!',\n onSuccess: () => {\n onSave();\n },\n },\n ),\n );\n\n useBlockUnsavedChangesNavigate({ control, reset, onSubmit });\n\n return (\n <div className=\"auth:relative auth:flex auth:h-full auth:flex-1 auth:flex-col auth:gap-4 auth:overflow-hidden\">\n <AuthConfigTabs />\n <div\n className=\"auth:mb-[--action-bar-height] auth:flex auth:flex-1 auth:overflow-y-auto\"\n style={\n {\n '--action-bar-height': '52px',\n } as React.CSSProperties\n }\n >\n <form onSubmit={onSubmit} className=\"auth:max-w-6xl auth:flex-1\">\n <div className=\"auth:pb-16\">\n <SectionList>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n Auth0 Configuration\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n The plugin will automatically configure the models it needs.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <ModelMergerResultAlert\n pendingModelChanges={pendingModelChanges}\n />\n </SectionListSectionContent>\n </SectionListSection>\n </SectionList>\n </div>\n\n <FormActionBar\n form={form}\n allowSaveWithoutDirty={\n !pluginMetadata ||\n doesModelMergerResultsHaveChanges(pendingModelChanges)\n }\n />\n </form>\n </div>\n </div>\n );\n}\n","import {\n createPlatformPluginExport,\n webConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { Auth0DefinitionEditor } from './components/auth0-definition-editor.js';\n\nimport '../../styles.css';\n\nexport default createPlatformPluginExport({\n dependencies: {\n webConfig: webConfigSpec,\n },\n exports: {},\n initialize: ({ webConfig }, { pluginKey }) => {\n webConfig.registerWebConfigComponent(pluginKey, Auth0DefinitionEditor);\n return {};\n },\n});\n"],"names":["zodResolver","jsxs","jsx"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_authCoreCommon-hEy5zrff.js","sources":["../../../src/auth/core/common.ts"],"sourcesContent":["import {\n authConfigSpec,\n createPlatformPluginExport,\n pluginConfigSpec,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\n\nimport type { AuthPluginDefinition } from './schema/plugin-definition.js';\n\nimport { createAuthPluginDefinitionSchema } from './schema/plugin-definition.js';\n\n// necessary for Typescript to infer the return type of the initialize function\nexport type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nexport default createPlatformPluginExport({\n dependencies: {\n config: pluginConfigSpec,\n },\n exports: {\n authConfig: authConfigSpec,\n },\n initialize: ({ config }, { pluginKey }) => {\n config.registerSchemaCreator(pluginKey, createAuthPluginDefinitionSchema);\n return {\n authConfig: {\n getAuthRoles: (definition) => {\n const pluginConfig = PluginUtils.configByKeyOrThrow(\n definition,\n pluginKey,\n ) as AuthPluginDefinition;\n return pluginConfig.roles;\n },\n },\n };\n },\n});\n"],"names":[],"mappings":";;;AAAA,MAAA,CAAA,cAAA,CAAA,0BAAA,CAAA,gBAAA,CAAA,WAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAcA,eAAe,0BAA2B,CAAA;AAAA,EACxC,YAAc,EAAA;AAAA,IACZ,MAAQ,EAAA;AAAA,GACV;AAAA,EACA,OAAS,EAAA;AAAA,IACP,UAAY,EAAA;AAAA,GACd;AAAA,EACA,YAAY,CAAC,EAAE,QAAU,EAAA,EAAE,WAAgB,KAAA;AACzC,IAAO,MAAA,CAAA,qBAAA,CAAsB,WAAW,gCAAgC,CAAA;AACxE,IAAO,OAAA;AAAA,MACL,UAAY,EAAA;AAAA,QACV,YAAA,EAAc,CAAC,UAAe,KAAA;AAC5B,UAAA,MAAM,eAAe,WAAY,CAAA,kBAAA;AAAA,YAC/B,UAAA;AAAA,YACA;AAAA,WACF;AACA,UAAA,OAAO,YAAa,CAAA,KAAA;AAAA;AACtB;AACF,KACF;AAAA;AAEJ,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"__federation_expose_authCoreCommon-hEy5zrff.js","sources":["../../../src/auth/core/common.ts"],"sourcesContent":["import {\n authConfigSpec,\n createPlatformPluginExport,\n pluginConfigSpec,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\n\nimport type { AuthPluginDefinition } from './schema/plugin-definition.js';\n\nimport { createAuthPluginDefinitionSchema } from './schema/plugin-definition.js';\n\n// necessary for Typescript to infer the return type of the initialize function\nexport type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nexport default createPlatformPluginExport({\n dependencies: {\n config: pluginConfigSpec,\n },\n exports: {\n authConfig: authConfigSpec,\n },\n initialize: ({ config }, { pluginKey }) => {\n config.registerSchemaCreator(pluginKey, createAuthPluginDefinitionSchema);\n return {\n authConfig: {\n getAuthRoles: (definition) => {\n const pluginConfig = PluginUtils.configByKeyOrThrow(\n definition,\n pluginKey,\n ) as AuthPluginDefinition;\n return pluginConfig.roles;\n },\n },\n };\n },\n});\n"],"names":[],"mappings":";;;AAAA,MAAA,CAAA,cAAA,CAAA,0BAAA,CAAA,gBAAA,CAAA,WAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAcA,eAAe,0BAAA,CAA2B;AAAA,EACxC,YAAA,EAAc;AAAA,IACZ,MAAA,EAAQ;AAAA,GACV;AAAA,EACA,OAAA,EAAS;AAAA,IACP,UAAA,EAAY;AAAA,GACd;AAAA,EACA,YAAY,CAAC,EAAE,QAAO,EAAG,EAAE,WAAU,KAAM;AACzC,IAAA,MAAA,CAAO,qBAAA,CAAsB,WAAW,gCAAgC,CAAA;AACxE,IAAA,OAAO;AAAA,MACL,UAAA,EAAY;AAAA,QACV,YAAA,EAAc,CAAC,UAAA,KAAe;AAC5B,UAAA,MAAM,eAAe,WAAA,CAAY,kBAAA;AAAA,YAC/B,UAAA;AAAA,YACA;AAAA,WACF;AACA,UAAA,OAAO,YAAA,CAAa,KAAA;AAAA,QACtB;AAAA;AACF,KACF;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_authCoreWeb-UlIYc0cq.js","sources":["../../../../../node_modules/.pnpm/@hookform+lenses@0.8.1_react-hook-form@7.60.0_react@19.1.0__react@19.1.0/node_modules/@hookform/lenses/dist/rhf/index.js","../../../src/auth/core/components/role-editor-form/role-dialog.tsx","../../../src/auth/core/components/role-editor-form/role-editor-form.tsx","../../../src/auth/core/components/auth-definition-editor.tsx","../../../src/auth/core/web.ts"],"sourcesContent":["// src/rhf/useFieldArray.ts\nimport { useMemo } from \"react\";\nimport {\n useFieldArray as useFieldArrayOriginal\n} from \"react-hook-form\";\nfunction useFieldArray(props) {\n const original = useFieldArrayOriginal(props);\n const newFields = useMemo(() => {\n if (!props.getTransformer) {\n return original.fields;\n }\n return original.fields.map(props.getTransformer);\n }, [original.fields, props.getTransformer]);\n return {\n fields: newFields,\n move: original.move,\n remove: original.remove,\n swap: original.swap,\n prepend: (value, options) => {\n if (!props.setTransformer) {\n return original.prepend(value, options);\n }\n const newValue = Array.isArray(value) ? value.map(props.setTransformer) : props.setTransformer(value);\n original.prepend(newValue, options);\n },\n append: (value, options) => {\n if (!props.setTransformer) {\n return original.append(value, options);\n }\n const newValue = Array.isArray(value) ? value.map(props.setTransformer) : props.setTransformer(value);\n original.append(newValue, options);\n },\n insert: (index, value, options) => {\n if (!props.setTransformer) {\n return original.insert(index, value, options);\n }\n const newValue = Array.isArray(value) ? value.map(props.setTransformer) : props.setTransformer(value);\n original.insert(index, newValue, options);\n },\n update: (index, value) => {\n if (!props.setTransformer) {\n return original.update(index, value);\n }\n const newValue = props.setTransformer(value);\n original.update(index, newValue);\n },\n replace: (value) => {\n if (!props.setTransformer) {\n return original.replace(value);\n }\n const newValue = props.setTransformer(value);\n original.replace(newValue);\n }\n };\n}\nexport {\n useFieldArray\n};\n//# sourceMappingURL=index.js.map","import type React from 'react';\n\nimport { useDefinitionSchema } from '@baseplate-dev/project-builder-lib/web';\nimport {\n Button,\n Dialog,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n InputFieldController,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { useId } from 'react';\nimport { useForm } from 'react-hook-form';\n\nimport type { AuthRoleInput } from '../../schema/roles/schema.js';\n\nimport { createAuthRoleSchema } from '../../schema/roles/schema.js';\n\ninterface RoleDialogProps {\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n role?: AuthRoleInput;\n isNew?: boolean;\n onSave: (role: AuthRoleInput) => void;\n asChild?: boolean;\n children?: React.ReactNode;\n}\n\nexport function RoleDialog({\n open,\n onOpenChange,\n role,\n isNew = false,\n onSave,\n asChild,\n children,\n}: RoleDialogProps): React.JSX.Element {\n const authRoleSchema = useDefinitionSchema(createAuthRoleSchema);\n const form = useForm({\n resolver: zodResolver(authRoleSchema),\n values: role,\n });\n\n const { control, handleSubmit } = form;\n\n const onSubmit = handleSubmit((data) => {\n onSave(data);\n onOpenChange?.(false);\n });\n\n const formId = useId();\n\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n <DialogTrigger asChild={asChild}>{children}</DialogTrigger>\n <DialogContent>\n <form\n id={formId}\n onSubmit={(e) => {\n e.stopPropagation();\n return onSubmit(e);\n }}\n >\n <DialogHeader>\n <DialogTitle>{isNew ? 'Add Role' : 'Edit Role'}</DialogTitle>\n <DialogDescription>\n {isNew\n ? 'Enter the details for the new role.'\n : 'Update the role details below.'}\n </DialogDescription>\n </DialogHeader>\n <div className=\"auth:space-y-4 auth:py-4\">\n <InputFieldController\n label=\"Role Name\"\n name=\"name\"\n control={control}\n placeholder=\"Enter role name\"\n />\n <InputFieldController\n label=\"Description\"\n name=\"comment\"\n control={control}\n placeholder=\"Describe this role's purpose\"\n />\n </div>\n <DialogFooter>\n <Button\n type=\"button\"\n variant=\"outline\"\n onClick={() => {\n onOpenChange?.(false);\n }}\n >\n Cancel\n </Button>\n <Button form={formId} type=\"submit\">\n {isNew ? 'Add' : 'Update'} Role\n </Button>\n </DialogFooter>\n </form>\n </DialogContent>\n </Dialog>\n );\n}\n","import type React from 'react';\nimport type { Control } from 'react-hook-form';\n\nimport { authRoleEntityType } from '@baseplate-dev/project-builder-lib';\nimport {\n Badge,\n Button,\n RecordView,\n RecordViewActions,\n RecordViewItem,\n RecordViewItemList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n useConfirmDialog,\n} from '@baseplate-dev/ui-components';\nimport { useFieldArray } from '@hookform/lenses/rhf';\nimport { useState } from 'react';\nimport { useWatch } from 'react-hook-form';\nimport { MdAdd, MdDeleteOutline, MdEdit } from 'react-icons/md';\n\nimport type { AuthPluginDefinitionInput } from '../../schema/plugin-definition.js';\nimport type { AuthRoleInput } from '../../schema/roles/schema.js';\n\nimport { RoleDialog } from './role-dialog.js';\n\ninterface Props {\n className?: string;\n control: Control<AuthPluginDefinitionInput>;\n}\n\nexport function RoleEditorForm({\n className,\n control,\n}: Props): React.JSX.Element {\n const { requestConfirm } = useConfirmDialog();\n const { append, update, remove } = useFieldArray({\n control,\n name: 'roles',\n });\n const [roleToEdit, setRoleToEdit] = useState<AuthRoleInput | undefined>();\n const [isEditing, setIsEditing] = useState(false);\n\n const roles = useWatch({ control, name: 'roles' });\n\n function handleSaveRole(newRole: AuthRoleInput): void {\n const existingIndex = roles.findIndex((role) => role.id === newRole.id);\n if (existingIndex === -1) {\n append(newRole);\n } else {\n update(existingIndex, newRole);\n }\n }\n\n function handleDeleteRole(roleIdx: number): void {\n const role = roles[roleIdx];\n requestConfirm({\n title: 'Delete Role',\n content: `Are you sure you want to delete the role \"${role.name}\"?`,\n onConfirm: () => {\n remove(roleIdx);\n },\n });\n }\n\n return (\n <SectionListSection className={className}>\n <SectionListSectionHeader>\n <SectionListSectionTitle>User Roles</SectionListSectionTitle>\n <SectionListSectionDescription>\n Define roles for your application. Default roles are protected and\n cannot be removed.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-4\">\n {roles.map((role, roleIdx) => (\n <RecordView key={role.id}>\n <RecordViewItemList>\n <RecordViewItem title=\"Name\">\n <div className=\"auth:flex auth:items-center auth:gap-2\">\n <span>{role.name}</span>\n </div>\n </RecordViewItem>\n <RecordViewItem title=\"Description\">\n {role.comment.trim() || (\n <span className=\"auth:text-muted-foreground\">\n No description\n </span>\n )}\n </RecordViewItem>\n </RecordViewItemList>\n <RecordViewActions>\n {role.builtIn && <Badge variant=\"secondary\">Default Role</Badge>}\n {!role.builtIn && (\n <>\n <Button\n variant=\"ghost\"\n size=\"icon\"\n title=\"Edit\"\n aria-label=\"Edit role\"\n onClick={() => {\n setRoleToEdit(role);\n setIsEditing(true);\n }}\n >\n <MdEdit />\n </Button>\n <Button\n variant=\"ghostDestructive\"\n size=\"icon\"\n title=\"Delete\"\n aria-label=\"Delete role\"\n onClick={() => {\n handleDeleteRole(roleIdx);\n }}\n >\n <MdDeleteOutline />\n </Button>\n </>\n )}\n </RecordViewActions>\n </RecordView>\n ))}\n <RoleDialog\n open={isEditing}\n onOpenChange={setIsEditing}\n role={roleToEdit}\n isNew={roleToEdit ? !roles.some((r) => r.id === roleToEdit.id) : true}\n onSave={handleSaveRole}\n />\n <Button\n variant=\"secondary\"\n size=\"sm\"\n onClick={() => {\n setRoleToEdit({\n id: authRoleEntityType.generateNewId(),\n name: '',\n comment: '',\n builtIn: false,\n });\n setIsEditing(true);\n }}\n >\n <MdAdd />\n Add Role\n </Button>\n </SectionListSectionContent>\n </SectionListSection>\n );\n}\n","import type { WebConfigProps } from '@baseplate-dev/project-builder-lib';\nimport type React from 'react';\n\nimport {\n FeatureUtils,\n getManagedPluginsForPlugin,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n FeatureComboboxFieldController,\n useBlockUnsavedChangesNavigate,\n useDefinitionSchema,\n useProjectDefinition,\n useResettableForm,\n} from '@baseplate-dev/project-builder-lib/web';\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n FormActionBar,\n SectionList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n SelectFieldController,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { Link, useNavigate } from '@tanstack/react-router';\nimport { useMemo } from 'react';\n\nimport { AuthConfigTabs } from '#src/common/components/auth-config-tabs.js';\n\nimport type { AuthPluginDefinitionInput } from '../schema/plugin-definition.js';\n\nimport { createAuthPluginDefinitionSchema } from '../schema/plugin-definition.js';\nimport { createDefaultAuthRoles } from '../schema/roles/constants.js';\nimport { RoleEditorForm } from './role-editor-form/role-editor-form.js';\n\nimport '#src/styles.css';\n\nexport function AuthDefinitionEditor({\n definition: pluginMetadata,\n metadata,\n onSave,\n}: WebConfigProps): React.JSX.Element {\n const {\n definition,\n definitionContainer,\n schemaParserContext,\n saveDefinitionWithFeedback,\n } = useProjectDefinition();\n\n const authPluginDefinitionSchema = useDefinitionSchema(\n createAuthPluginDefinitionSchema,\n );\n\n const availableImplementations = getManagedPluginsForPlugin(\n schemaParserContext.pluginStore,\n metadata.key,\n );\n // Use local auth by default\n const defaultImplementation =\n availableImplementations.find(\n (i) => i.fullyQualifiedName === '@baseplate-dev/plugin-auth:local-auth',\n ) ?? availableImplementations[0];\n\n const defaultValues = useMemo(() => {\n if (pluginMetadata?.config) {\n return pluginMetadata.config as AuthPluginDefinitionInput;\n }\n\n const defaultAuthFeatureRef = FeatureUtils.getFeatureIdByNameOrDefault(\n definition,\n 'auth',\n );\n\n return {\n implementationPluginKey: defaultImplementation.key,\n authFeatureRef: defaultAuthFeatureRef,\n roles: createDefaultAuthRoles(),\n } satisfies AuthPluginDefinitionInput;\n }, [definition, pluginMetadata?.config, defaultImplementation]);\n\n const form = useResettableForm({\n resolver: zodResolver(authPluginDefinitionSchema),\n defaultValues,\n });\n const { control, reset, handleSubmit, watch } = form;\n\n const implementationPluginKey = watch('implementationPluginKey');\n const selectedPlugin =\n implementationPluginKey &&\n availableImplementations.find((i) => i.key === implementationPluginKey);\n const isSelectedImplementationActive = !!PluginUtils.byKey(\n definitionContainer.definition,\n implementationPluginKey,\n );\n const hasSelectedImplementationChanged =\n implementationPluginKey !==\n (pluginMetadata?.config as AuthPluginDefinitionInput | undefined)\n ?.implementationPluginKey;\n\n const selectedImplementationUrl = selectedPlugin\n ? `/plugins/edit/${selectedPlugin.key}`\n : undefined;\n const navigate = useNavigate();\n\n const onSubmit = handleSubmit((data) =>\n saveDefinitionWithFeedback(\n (draftConfig) => {\n const featureRef = FeatureUtils.ensureFeatureByNameRecursively(\n draftConfig,\n data.authFeatureRef,\n );\n PluginUtils.setPluginConfig(\n draftConfig,\n metadata,\n {\n ...data,\n authFeatureRef: featureRef,\n },\n definitionContainer.pluginStore,\n );\n\n // Make sure we disable other plugins that are not the selected implementation\n const otherPlugins = availableImplementations.filter(\n (i) => i.key !== implementationPluginKey,\n );\n for (const plugin of otherPlugins) {\n PluginUtils.disablePlugin(\n draftConfig,\n plugin.key,\n definitionContainer.parserContext,\n );\n }\n },\n {\n successMessage: `Successfully saved auth plugin! ${selectedImplementationUrl && !isSelectedImplementationActive ? `Please configure the provider plugin before syncing.` : ''}`,\n onSuccess: () => {\n onSave();\n\n if (selectedImplementationUrl && !isSelectedImplementationActive) {\n setTimeout(() => {\n navigate({ to: selectedImplementationUrl });\n }, 100);\n }\n },\n },\n ),\n );\n\n useBlockUnsavedChangesNavigate({ control, reset, onSubmit });\n\n return (\n <div className=\"auth:relative auth:flex auth:h-full auth:flex-1 auth:flex-col auth:gap-4 auth:overflow-hidden\">\n <AuthConfigTabs />\n <div\n className=\"auth:mb-[--action-bar-height] auth:flex auth:flex-1 auth:overflow-y-auto\"\n style={\n {\n '--action-bar-height': '52px',\n } as React.CSSProperties\n }\n >\n <form onSubmit={onSubmit} className=\"auth:max-w-6xl auth:flex-1\">\n <div className=\"auth:pb-16\">\n {!isSelectedImplementationActive &&\n selectedPlugin &&\n !hasSelectedImplementationChanged && (\n <Alert variant=\"warning\">\n <AlertTitle>Implementation Provider Not Active</AlertTitle>\n <AlertDescription>\n <p>\n The selected implementation provider is not active. Please\n make sure{' '}\n <Link\n to={selectedImplementationUrl}\n className=\"auth:inline-block auth:font-medium\"\n >\n configure the provider\n </Link>{' '}\n before syncing.\n </p>\n </AlertDescription>\n </Alert>\n )}\n <SectionList>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n General Settings\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n Configure the general settings for the auth plugin.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <FeatureComboboxFieldController\n label=\"Auth Feature Path\"\n name=\"authFeatureRef\"\n control={control}\n canCreate\n description=\"Specify the feature path where auth functionality will be generated\"\n />\n <SelectFieldController\n label=\"Authentication Provider\"\n name=\"implementationPluginKey\"\n control={control}\n options={availableImplementations}\n renderItemLabel={(item) => (\n <div className=\"auth:flex auth:flex-col auth:gap-2\">\n <div className=\"auth:text-sm auth:font-medium\">\n {item.displayName}\n </div>\n <div className=\"auth:text-sm auth:text-muted-foreground\">\n {item.description}\n </div>\n </div>\n )}\n getOptionLabel={(item) => item.displayName}\n getOptionValue={(item) => item.key}\n description=\"The authentication provider to use for your project\"\n />\n </SectionListSectionContent>\n </SectionListSection>\n\n <RoleEditorForm control={control} />\n </SectionList>\n </div>\n\n <FormActionBar form={form} allowSaveWithoutDirty={!pluginMetadata} />\n </form>\n </div>\n </div>\n );\n}\n","import {\n createPlatformPluginExport,\n webConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { AuthDefinitionEditor } from './components/auth-definition-editor.js';\n\nimport '../../styles.css';\n\nexport default createPlatformPluginExport({\n dependencies: {\n webConfig: webConfigSpec,\n },\n exports: {},\n initialize: ({ webConfig }, { pluginKey }) => {\n webConfig.registerWebConfigComponent(pluginKey, AuthDefinitionEditor);\n return {};\n },\n});\n"],"names":["useMemo","useFieldArrayOriginal","useDefinitionSchema","Button","zodResolver","jsxs","jsx","SectionListSection","SectionListSectionContent","SectionListSectionDescription","SectionListSectionHeader","SectionListSectionTitle","Fragment"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"__federation_expose_authCoreWeb-UlIYc0cq.js","sources":["../../../../../node_modules/.pnpm/@hookform+lenses@0.8.1_react-hook-form@7.60.0_react@19.1.0__react@19.1.0/node_modules/@hookform/lenses/dist/rhf/index.js","../../../src/auth/core/components/role-editor-form/role-dialog.tsx","../../../src/auth/core/components/role-editor-form/role-editor-form.tsx","../../../src/auth/core/components/auth-definition-editor.tsx","../../../src/auth/core/web.ts"],"sourcesContent":["// src/rhf/useFieldArray.ts\nimport { useMemo } from \"react\";\nimport {\n useFieldArray as useFieldArrayOriginal\n} from \"react-hook-form\";\nfunction useFieldArray(props) {\n const original = useFieldArrayOriginal(props);\n const newFields = useMemo(() => {\n if (!props.getTransformer) {\n return original.fields;\n }\n return original.fields.map(props.getTransformer);\n }, [original.fields, props.getTransformer]);\n return {\n fields: newFields,\n move: original.move,\n remove: original.remove,\n swap: original.swap,\n prepend: (value, options) => {\n if (!props.setTransformer) {\n return original.prepend(value, options);\n }\n const newValue = Array.isArray(value) ? value.map(props.setTransformer) : props.setTransformer(value);\n original.prepend(newValue, options);\n },\n append: (value, options) => {\n if (!props.setTransformer) {\n return original.append(value, options);\n }\n const newValue = Array.isArray(value) ? value.map(props.setTransformer) : props.setTransformer(value);\n original.append(newValue, options);\n },\n insert: (index, value, options) => {\n if (!props.setTransformer) {\n return original.insert(index, value, options);\n }\n const newValue = Array.isArray(value) ? value.map(props.setTransformer) : props.setTransformer(value);\n original.insert(index, newValue, options);\n },\n update: (index, value) => {\n if (!props.setTransformer) {\n return original.update(index, value);\n }\n const newValue = props.setTransformer(value);\n original.update(index, newValue);\n },\n replace: (value) => {\n if (!props.setTransformer) {\n return original.replace(value);\n }\n const newValue = props.setTransformer(value);\n original.replace(newValue);\n }\n };\n}\nexport {\n useFieldArray\n};\n//# sourceMappingURL=index.js.map","import type React from 'react';\n\nimport { useDefinitionSchema } from '@baseplate-dev/project-builder-lib/web';\nimport {\n Button,\n Dialog,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n InputFieldController,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { useId } from 'react';\nimport { useForm } from 'react-hook-form';\n\nimport type { AuthRoleInput } from '../../schema/roles/schema.js';\n\nimport { createAuthRoleSchema } from '../../schema/roles/schema.js';\n\ninterface RoleDialogProps {\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n role?: AuthRoleInput;\n isNew?: boolean;\n onSave: (role: AuthRoleInput) => void;\n asChild?: boolean;\n children?: React.ReactNode;\n}\n\nexport function RoleDialog({\n open,\n onOpenChange,\n role,\n isNew = false,\n onSave,\n asChild,\n children,\n}: RoleDialogProps): React.JSX.Element {\n const authRoleSchema = useDefinitionSchema(createAuthRoleSchema);\n const form = useForm({\n resolver: zodResolver(authRoleSchema),\n values: role,\n });\n\n const { control, handleSubmit } = form;\n\n const onSubmit = handleSubmit((data) => {\n onSave(data);\n onOpenChange?.(false);\n });\n\n const formId = useId();\n\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n <DialogTrigger asChild={asChild}>{children}</DialogTrigger>\n <DialogContent>\n <form\n id={formId}\n onSubmit={(e) => {\n e.stopPropagation();\n return onSubmit(e);\n }}\n >\n <DialogHeader>\n <DialogTitle>{isNew ? 'Add Role' : 'Edit Role'}</DialogTitle>\n <DialogDescription>\n {isNew\n ? 'Enter the details for the new role.'\n : 'Update the role details below.'}\n </DialogDescription>\n </DialogHeader>\n <div className=\"auth:space-y-4 auth:py-4\">\n <InputFieldController\n label=\"Role Name\"\n name=\"name\"\n control={control}\n placeholder=\"Enter role name\"\n />\n <InputFieldController\n label=\"Description\"\n name=\"comment\"\n control={control}\n placeholder=\"Describe this role's purpose\"\n />\n </div>\n <DialogFooter>\n <Button\n type=\"button\"\n variant=\"outline\"\n onClick={() => {\n onOpenChange?.(false);\n }}\n >\n Cancel\n </Button>\n <Button form={formId} type=\"submit\">\n {isNew ? 'Add' : 'Update'} Role\n </Button>\n </DialogFooter>\n </form>\n </DialogContent>\n </Dialog>\n );\n}\n","import type React from 'react';\nimport type { Control } from 'react-hook-form';\n\nimport { authRoleEntityType } from '@baseplate-dev/project-builder-lib';\nimport {\n Badge,\n Button,\n RecordView,\n RecordViewActions,\n RecordViewItem,\n RecordViewItemList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n useConfirmDialog,\n} from '@baseplate-dev/ui-components';\nimport { useFieldArray } from '@hookform/lenses/rhf';\nimport { useState } from 'react';\nimport { useWatch } from 'react-hook-form';\nimport { MdAdd, MdDeleteOutline, MdEdit } from 'react-icons/md';\n\nimport type { AuthPluginDefinitionInput } from '../../schema/plugin-definition.js';\nimport type { AuthRoleInput } from '../../schema/roles/schema.js';\n\nimport { RoleDialog } from './role-dialog.js';\n\ninterface Props {\n className?: string;\n control: Control<AuthPluginDefinitionInput>;\n}\n\nexport function RoleEditorForm({\n className,\n control,\n}: Props): React.JSX.Element {\n const { requestConfirm } = useConfirmDialog();\n const { append, update, remove } = useFieldArray({\n control,\n name: 'roles',\n });\n const [roleToEdit, setRoleToEdit] = useState<AuthRoleInput | undefined>();\n const [isEditing, setIsEditing] = useState(false);\n\n const roles = useWatch({ control, name: 'roles' });\n\n function handleSaveRole(newRole: AuthRoleInput): void {\n const existingIndex = roles.findIndex((role) => role.id === newRole.id);\n if (existingIndex === -1) {\n append(newRole);\n } else {\n update(existingIndex, newRole);\n }\n }\n\n function handleDeleteRole(roleIdx: number): void {\n const role = roles[roleIdx];\n requestConfirm({\n title: 'Delete Role',\n content: `Are you sure you want to delete the role \"${role.name}\"?`,\n onConfirm: () => {\n remove(roleIdx);\n },\n });\n }\n\n return (\n <SectionListSection className={className}>\n <SectionListSectionHeader>\n <SectionListSectionTitle>User Roles</SectionListSectionTitle>\n <SectionListSectionDescription>\n Define roles for your application. Default roles are protected and\n cannot be removed.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-4\">\n {roles.map((role, roleIdx) => (\n <RecordView key={role.id}>\n <RecordViewItemList>\n <RecordViewItem title=\"Name\">\n <div className=\"auth:flex auth:items-center auth:gap-2\">\n <span>{role.name}</span>\n </div>\n </RecordViewItem>\n <RecordViewItem title=\"Description\">\n {role.comment.trim() || (\n <span className=\"auth:text-muted-foreground\">\n No description\n </span>\n )}\n </RecordViewItem>\n </RecordViewItemList>\n <RecordViewActions>\n {role.builtIn && <Badge variant=\"secondary\">Default Role</Badge>}\n {!role.builtIn && (\n <>\n <Button\n variant=\"ghost\"\n size=\"icon\"\n title=\"Edit\"\n aria-label=\"Edit role\"\n onClick={() => {\n setRoleToEdit(role);\n setIsEditing(true);\n }}\n >\n <MdEdit />\n </Button>\n <Button\n variant=\"ghostDestructive\"\n size=\"icon\"\n title=\"Delete\"\n aria-label=\"Delete role\"\n onClick={() => {\n handleDeleteRole(roleIdx);\n }}\n >\n <MdDeleteOutline />\n </Button>\n </>\n )}\n </RecordViewActions>\n </RecordView>\n ))}\n <RoleDialog\n open={isEditing}\n onOpenChange={setIsEditing}\n role={roleToEdit}\n isNew={roleToEdit ? !roles.some((r) => r.id === roleToEdit.id) : true}\n onSave={handleSaveRole}\n />\n <Button\n variant=\"secondary\"\n size=\"sm\"\n onClick={() => {\n setRoleToEdit({\n id: authRoleEntityType.generateNewId(),\n name: '',\n comment: '',\n builtIn: false,\n });\n setIsEditing(true);\n }}\n >\n <MdAdd />\n Add Role\n </Button>\n </SectionListSectionContent>\n </SectionListSection>\n );\n}\n","import type { WebConfigProps } from '@baseplate-dev/project-builder-lib';\nimport type React from 'react';\n\nimport {\n FeatureUtils,\n getManagedPluginsForPlugin,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n FeatureComboboxFieldController,\n useBlockUnsavedChangesNavigate,\n useDefinitionSchema,\n useProjectDefinition,\n useResettableForm,\n} from '@baseplate-dev/project-builder-lib/web';\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n FormActionBar,\n SectionList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n SelectFieldController,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { Link, useNavigate } from '@tanstack/react-router';\nimport { useMemo } from 'react';\n\nimport { AuthConfigTabs } from '#src/common/components/auth-config-tabs.js';\n\nimport type { AuthPluginDefinitionInput } from '../schema/plugin-definition.js';\n\nimport { createAuthPluginDefinitionSchema } from '../schema/plugin-definition.js';\nimport { createDefaultAuthRoles } from '../schema/roles/constants.js';\nimport { RoleEditorForm } from './role-editor-form/role-editor-form.js';\n\nimport '#src/styles.css';\n\nexport function AuthDefinitionEditor({\n definition: pluginMetadata,\n metadata,\n onSave,\n}: WebConfigProps): React.JSX.Element {\n const {\n definition,\n definitionContainer,\n schemaParserContext,\n saveDefinitionWithFeedback,\n } = useProjectDefinition();\n\n const authPluginDefinitionSchema = useDefinitionSchema(\n createAuthPluginDefinitionSchema,\n );\n\n const availableImplementations = getManagedPluginsForPlugin(\n schemaParserContext.pluginStore,\n metadata.key,\n );\n // Use local auth by default\n const defaultImplementation =\n availableImplementations.find(\n (i) => i.fullyQualifiedName === '@baseplate-dev/plugin-auth:local-auth',\n ) ?? availableImplementations[0];\n\n const defaultValues = useMemo(() => {\n if (pluginMetadata?.config) {\n return pluginMetadata.config as AuthPluginDefinitionInput;\n }\n\n const defaultAuthFeatureRef = FeatureUtils.getFeatureIdByNameOrDefault(\n definition,\n 'auth',\n );\n\n return {\n implementationPluginKey: defaultImplementation.key,\n authFeatureRef: defaultAuthFeatureRef,\n roles: createDefaultAuthRoles(),\n } satisfies AuthPluginDefinitionInput;\n }, [definition, pluginMetadata?.config, defaultImplementation]);\n\n const form = useResettableForm({\n resolver: zodResolver(authPluginDefinitionSchema),\n defaultValues,\n });\n const { control, reset, handleSubmit, watch } = form;\n\n const implementationPluginKey = watch('implementationPluginKey');\n const selectedPlugin =\n implementationPluginKey &&\n availableImplementations.find((i) => i.key === implementationPluginKey);\n const isSelectedImplementationActive = !!PluginUtils.byKey(\n definitionContainer.definition,\n implementationPluginKey,\n );\n const hasSelectedImplementationChanged =\n implementationPluginKey !==\n (pluginMetadata?.config as AuthPluginDefinitionInput | undefined)\n ?.implementationPluginKey;\n\n const selectedImplementationUrl = selectedPlugin\n ? `/plugins/edit/${selectedPlugin.key}`\n : undefined;\n const navigate = useNavigate();\n\n const onSubmit = handleSubmit((data) =>\n saveDefinitionWithFeedback(\n (draftConfig) => {\n const featureRef = FeatureUtils.ensureFeatureByNameRecursively(\n draftConfig,\n data.authFeatureRef,\n );\n PluginUtils.setPluginConfig(\n draftConfig,\n metadata,\n {\n ...data,\n authFeatureRef: featureRef,\n },\n definitionContainer.pluginStore,\n );\n\n // Make sure we disable other plugins that are not the selected implementation\n const otherPlugins = availableImplementations.filter(\n (i) => i.key !== implementationPluginKey,\n );\n for (const plugin of otherPlugins) {\n PluginUtils.disablePlugin(\n draftConfig,\n plugin.key,\n definitionContainer.parserContext,\n );\n }\n },\n {\n successMessage: `Successfully saved auth plugin! ${selectedImplementationUrl && !isSelectedImplementationActive ? `Please configure the provider plugin before syncing.` : ''}`,\n onSuccess: () => {\n onSave();\n\n if (selectedImplementationUrl && !isSelectedImplementationActive) {\n setTimeout(() => {\n navigate({ to: selectedImplementationUrl });\n }, 100);\n }\n },\n },\n ),\n );\n\n useBlockUnsavedChangesNavigate({ control, reset, onSubmit });\n\n return (\n <div className=\"auth:relative auth:flex auth:h-full auth:flex-1 auth:flex-col auth:gap-4 auth:overflow-hidden\">\n <AuthConfigTabs />\n <div\n className=\"auth:mb-[--action-bar-height] auth:flex auth:flex-1 auth:overflow-y-auto\"\n style={\n {\n '--action-bar-height': '52px',\n } as React.CSSProperties\n }\n >\n <form onSubmit={onSubmit} className=\"auth:max-w-6xl auth:flex-1\">\n <div className=\"auth:pb-16\">\n {!isSelectedImplementationActive &&\n selectedPlugin &&\n !hasSelectedImplementationChanged && (\n <Alert variant=\"warning\">\n <AlertTitle>Implementation Provider Not Active</AlertTitle>\n <AlertDescription>\n <p>\n The selected implementation provider is not active. Please\n make sure{' '}\n <Link\n to={selectedImplementationUrl}\n className=\"auth:inline-block auth:font-medium\"\n >\n configure the provider\n </Link>{' '}\n before syncing.\n </p>\n </AlertDescription>\n </Alert>\n )}\n <SectionList>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n General Settings\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n Configure the general settings for the auth plugin.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <FeatureComboboxFieldController\n label=\"Auth Feature Path\"\n name=\"authFeatureRef\"\n control={control}\n canCreate\n description=\"Specify the feature path where auth functionality will be generated\"\n />\n <SelectFieldController\n label=\"Authentication Provider\"\n name=\"implementationPluginKey\"\n control={control}\n options={availableImplementations}\n renderItemLabel={(item) => (\n <div className=\"auth:flex auth:flex-col auth:gap-2\">\n <div className=\"auth:text-sm auth:font-medium\">\n {item.displayName}\n </div>\n <div className=\"auth:text-sm auth:text-muted-foreground\">\n {item.description}\n </div>\n </div>\n )}\n getOptionLabel={(item) => item.displayName}\n getOptionValue={(item) => item.key}\n description=\"The authentication provider to use for your project\"\n />\n </SectionListSectionContent>\n </SectionListSection>\n\n <RoleEditorForm control={control} />\n </SectionList>\n </div>\n\n <FormActionBar form={form} allowSaveWithoutDirty={!pluginMetadata} />\n </form>\n </div>\n </div>\n );\n}\n","import {\n createPlatformPluginExport,\n webConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { AuthDefinitionEditor } from './components/auth-definition-editor.js';\n\nimport '../../styles.css';\n\nexport default createPlatformPluginExport({\n dependencies: {\n webConfig: webConfigSpec,\n },\n exports: {},\n initialize: ({ webConfig }, { pluginKey }) => {\n webConfig.registerWebConfigComponent(pluginKey, AuthDefinitionEditor);\n return {};\n },\n});\n"],"names":["useMemo","useFieldArrayOriginal","useDefinitionSchema","Button","zodResolver","jsxs","jsx","SectionListSection","SectionListSectionContent","SectionListSectionDescription","SectionListSectionHeader","SectionListSectionTitle","Fragment"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_local-authAdminCommon-DyMAwXJ7.js","sources":["../../../src/local-auth/admin/schema/manage-role-action.ts","../../../src/local-auth/admin/schema/reset-password-action.ts","../../../src/local-auth/admin/schema/roles-column.ts","../../../src/local-auth/admin/common.ts"],"sourcesContent":["import type { def } from '@baseplate-dev/project-builder-lib';\n\nimport {\n baseAdminCrudActionSchema,\n definitionSchema,\n} from '@baseplate-dev/project-builder-lib';\nimport { z } from 'zod';\n\nexport const createAdminCrudManageRolesActionSchema = definitionSchema(() =>\n baseAdminCrudActionSchema.extend({\n type: z.literal('manage-roles'),\n }),\n);\n\nexport type AdminCrudManageRolesActionDefinition = def.InferOutput<\n typeof createAdminCrudManageRolesActionSchema\n>;\n","import type { def } from '@baseplate-dev/project-builder-lib';\n\nimport {\n baseAdminCrudActionSchema,\n definitionSchema,\n} from '@baseplate-dev/project-builder-lib';\nimport { z } from 'zod';\n\nexport const createAdminCrudResetPasswordActionSchema = definitionSchema(() =>\n baseAdminCrudActionSchema.extend({\n type: z.literal('reset-password'),\n }),\n);\n\nexport type AdminCrudResetPasswordActionDefinition = def.InferOutput<\n typeof createAdminCrudResetPasswordActionSchema\n>;\n","import type { def } from '@baseplate-dev/project-builder-lib';\n\nimport {\n baseAdminCrudColumnSchema,\n definitionSchema,\n} from '@baseplate-dev/project-builder-lib';\nimport { z } from 'zod';\n\nexport const createAdminCrudRolesColumnSchema = definitionSchema(() =>\n baseAdminCrudColumnSchema.extend({\n type: z.literal('roles'),\n }),\n);\n\nexport type AdminCrudRolesColumnDefinition = def.InferOutput<\n typeof createAdminCrudRolesColumnSchema\n>;\n","import type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nimport {\n adminCrudActionSpec,\n adminCrudColumnSpec,\n createAdminCrudActionType,\n createAdminCrudColumnType,\n createPlatformPluginExport,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { createAdminCrudManageRolesActionSchema } from './schema/manage-role-action.js';\nimport { createAdminCrudResetPasswordActionSchema } from './schema/reset-password-action.js';\nimport { createAdminCrudRolesColumnSchema } from './schema/roles-column.js';\n\nexport default createPlatformPluginExport({\n dependencies: {\n adminCrudAction: adminCrudActionSpec,\n adminCrudColumn: adminCrudColumnSpec,\n },\n exports: {},\n initialize: ({ adminCrudAction, adminCrudColumn }) => {\n // Register the manage-roles action type\n adminCrudAction.registerAdminCrudAction(\n createAdminCrudActionType({\n name: 'manage-roles',\n createSchema: createAdminCrudManageRolesActionSchema,\n }),\n );\n\n // Register the reset-password action type\n adminCrudAction.registerAdminCrudAction(\n createAdminCrudActionType({\n name: 'reset-password',\n createSchema: createAdminCrudResetPasswordActionSchema,\n }),\n );\n\n // Register the roles column type\n adminCrudColumn.registerAdminCrudColumn(\n createAdminCrudColumnType({\n name: 'roles',\n createSchema: createAdminCrudRolesColumnSchema,\n }),\n );\n\n return {};\n },\n}) as PluginPlatformModule;\n"],"names":["baseAdminCrudActionSchema","definitionSchema","z"],"mappings":";;AAEA,MAAA,4BAAAA,2BAAA,mBAAAC,kBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;;AAIA,MAAA,IAAAC,GAAA,CAAA,GAAA,MAAA,YAAA,CAAA,KAAA,CAAA;;AAEO,MAAM,sCAAyC,GAAAD,kBAAA;AAAA,EAAiB,MACrED,4BAA0B,MAAO,CAAA;AAAA,IAC/B,IAAA,EAAME,GAAE,CAAA,OAAA,CAAQ,cAAc;AAAA,GAC/B;AACH,CAAA;;ACVA,MAAA,CAAA,yBAAA,mBAAAD,kBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;;AAIA,MAAA,IAAAC,GAAA,CAAA,GAAA,MAAA,YAAA,CAAA,KAAA,CAAA;;AAEO,MAAM,wCAA2C,GAAAD,kBAAA;AAAA,EAAiB,MACvE,0BAA0B,MAAO,CAAA;AAAA,IAC/B,IAAA,EAAMC,GAAE,CAAA,OAAA,CAAQ,gBAAgB;AAAA,GACjC;AACH,CAAA;;ACVA,MAAA,CAAA,yBAAA,CAAA,gBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;;AAIA,MAAA,CAAA,CAAA,CAAA,GAAA,MAAA,YAAA,CAAA,KAAA,CAAA;;AAEO,MAAM,gCAAmC,GAAA,gBAAA;AAAA,EAAiB,MAC/D,0BAA0B,MAAO,CAAA;AAAA,IAC/B,IAAA,EAAM,CAAE,CAAA,OAAA,CAAQ,OAAO;AAAA,GACxB;AACH,CAAA;;ACVA,MAAA,CAAA,mBAAA,CAAA,mBAAA,CAAA,yBAAA,CAAA,yBAAA,CAAA,0BAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAYA,eAAe,0BAA2B,CAAA;AAAA,EACxC,YAAc,EAAA;AAAA,IACZ,eAAiB,EAAA,mBAAA;AAAA,IACjB,eAAiB,EAAA;AAAA,GACnB;AAAA,EACA,SAAS,EAAC;AAAA,EACV,UAAY,EAAA,CAAC,EAAE,eAAA,EAAiB,iBAAsB,KAAA;AAEpD,IAAgB,eAAA,CAAA,uBAAA;AAAA,MACd,yBAA0B,CAAA;AAAA,QACxB,IAAM,EAAA,cAAA;AAAA,QACN,YAAc,EAAA;AAAA,OACf;AAAA,KACH;AAGA,IAAgB,eAAA,CAAA,uBAAA;AAAA,MACd,yBAA0B,CAAA;AAAA,QACxB,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OACf;AAAA,KACH;AAGA,IAAgB,eAAA,CAAA,uBAAA;AAAA,MACd,yBAA0B,CAAA;AAAA,QACxB,IAAM,EAAA,OAAA;AAAA,QACN,YAAc,EAAA;AAAA,OACf;AAAA,KACH;AAEA,IAAA,OAAO,EAAC;AAAA;AAEZ,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"__federation_expose_local-authAdminCommon-DyMAwXJ7.js","sources":["../../../src/local-auth/admin/schema/manage-role-action.ts","../../../src/local-auth/admin/schema/reset-password-action.ts","../../../src/local-auth/admin/schema/roles-column.ts","../../../src/local-auth/admin/common.ts"],"sourcesContent":["import type { def } from '@baseplate-dev/project-builder-lib';\n\nimport {\n baseAdminCrudActionSchema,\n definitionSchema,\n} from '@baseplate-dev/project-builder-lib';\nimport { z } from 'zod';\n\nexport const createAdminCrudManageRolesActionSchema = definitionSchema(() =>\n baseAdminCrudActionSchema.extend({\n type: z.literal('manage-roles'),\n }),\n);\n\nexport type AdminCrudManageRolesActionDefinition = def.InferOutput<\n typeof createAdminCrudManageRolesActionSchema\n>;\n","import type { def } from '@baseplate-dev/project-builder-lib';\n\nimport {\n baseAdminCrudActionSchema,\n definitionSchema,\n} from '@baseplate-dev/project-builder-lib';\nimport { z } from 'zod';\n\nexport const createAdminCrudResetPasswordActionSchema = definitionSchema(() =>\n baseAdminCrudActionSchema.extend({\n type: z.literal('reset-password'),\n }),\n);\n\nexport type AdminCrudResetPasswordActionDefinition = def.InferOutput<\n typeof createAdminCrudResetPasswordActionSchema\n>;\n","import type { def } from '@baseplate-dev/project-builder-lib';\n\nimport {\n baseAdminCrudColumnSchema,\n definitionSchema,\n} from '@baseplate-dev/project-builder-lib';\nimport { z } from 'zod';\n\nexport const createAdminCrudRolesColumnSchema = definitionSchema(() =>\n baseAdminCrudColumnSchema.extend({\n type: z.literal('roles'),\n }),\n);\n\nexport type AdminCrudRolesColumnDefinition = def.InferOutput<\n typeof createAdminCrudRolesColumnSchema\n>;\n","import type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nimport {\n adminCrudActionSpec,\n adminCrudColumnSpec,\n createAdminCrudActionType,\n createAdminCrudColumnType,\n createPlatformPluginExport,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { createAdminCrudManageRolesActionSchema } from './schema/manage-role-action.js';\nimport { createAdminCrudResetPasswordActionSchema } from './schema/reset-password-action.js';\nimport { createAdminCrudRolesColumnSchema } from './schema/roles-column.js';\n\nexport default createPlatformPluginExport({\n dependencies: {\n adminCrudAction: adminCrudActionSpec,\n adminCrudColumn: adminCrudColumnSpec,\n },\n exports: {},\n initialize: ({ adminCrudAction, adminCrudColumn }) => {\n // Register the manage-roles action type\n adminCrudAction.registerAdminCrudAction(\n createAdminCrudActionType({\n name: 'manage-roles',\n createSchema: createAdminCrudManageRolesActionSchema,\n }),\n );\n\n // Register the reset-password action type\n adminCrudAction.registerAdminCrudAction(\n createAdminCrudActionType({\n name: 'reset-password',\n createSchema: createAdminCrudResetPasswordActionSchema,\n }),\n );\n\n // Register the roles column type\n adminCrudColumn.registerAdminCrudColumn(\n createAdminCrudColumnType({\n name: 'roles',\n createSchema: createAdminCrudRolesColumnSchema,\n }),\n );\n\n return {};\n },\n}) as PluginPlatformModule;\n"],"names":["baseAdminCrudActionSchema","definitionSchema","z"],"mappings":";;AAEA,MAAA,4BAAAA,2BAAA,mBAAAC,kBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;;AAIA,MAAA,IAAAC,GAAA,CAAA,GAAA,MAAA,YAAA,CAAA,KAAA,CAAA;;AAEO,MAAM,sCAAA,GAAyCD,kBAAA;AAAA,EAAiB,MACrED,4BAA0B,MAAA,CAAO;AAAA,IAC/B,IAAA,EAAME,GAAA,CAAE,OAAA,CAAQ,cAAc;AAAA,GAC/B;AACH,CAAA;;ACVA,MAAA,CAAA,yBAAA,mBAAAD,kBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;;AAIA,MAAA,IAAAC,GAAA,CAAA,GAAA,MAAA,YAAA,CAAA,KAAA,CAAA;;AAEO,MAAM,wCAAA,GAA2CD,kBAAA;AAAA,EAAiB,MACvE,0BAA0B,MAAA,CAAO;AAAA,IAC/B,IAAA,EAAMC,GAAA,CAAE,OAAA,CAAQ,gBAAgB;AAAA,GACjC;AACH,CAAA;;ACVA,MAAA,CAAA,yBAAA,CAAA,gBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;;AAIA,MAAA,CAAA,CAAA,CAAA,GAAA,MAAA,YAAA,CAAA,KAAA,CAAA;;AAEO,MAAM,gCAAA,GAAmC,gBAAA;AAAA,EAAiB,MAC/D,0BAA0B,MAAA,CAAO;AAAA,IAC/B,IAAA,EAAM,CAAA,CAAE,OAAA,CAAQ,OAAO;AAAA,GACxB;AACH,CAAA;;ACVA,MAAA,CAAA,mBAAA,CAAA,mBAAA,CAAA,yBAAA,CAAA,yBAAA,CAAA,0BAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAYA,eAAe,0BAAA,CAA2B;AAAA,EACxC,YAAA,EAAc;AAAA,IACZ,eAAA,EAAiB,mBAAA;AAAA,IACjB,eAAA,EAAiB;AAAA,GACnB;AAAA,EACA,SAAS,EAAC;AAAA,EACV,UAAA,EAAY,CAAC,EAAE,eAAA,EAAiB,iBAAgB,KAAM;AAEpD,IAAA,eAAA,CAAgB,uBAAA;AAAA,MACd,yBAAA,CAA0B;AAAA,QACxB,IAAA,EAAM,cAAA;AAAA,QACN,YAAA,EAAc;AAAA,OACf;AAAA,KACH;AAGA,IAAA,eAAA,CAAgB,uBAAA;AAAA,MACd,yBAAA,CAA0B;AAAA,QACxB,IAAA,EAAM,gBAAA;AAAA,QACN,YAAA,EAAc;AAAA,OACf;AAAA,KACH;AAGA,IAAA,eAAA,CAAgB,uBAAA;AAAA,MACd,yBAAA,CAA0B;AAAA,QACxB,IAAA,EAAM,OAAA;AAAA,QACN,YAAA,EAAc;AAAA,OACf;AAAA,KACH;AAEA,IAAA,OAAO,EAAC;AAAA,EACV;AACF,CAAC,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_local-authAdminWeb-B6PdHqzu.js","sources":["../../../src/local-auth/admin/web.ts"],"sourcesContent":["import {\n createPlatformPluginExport,\n ModelUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n adminCrudActionWebSpec,\n adminCrudColumnWebSpec,\n} from '@baseplate-dev/project-builder-lib/web';\n\nimport { LOCAL_AUTH_MODELS } from '#src/local-auth/constants/model-names.js';\n\nexport default createPlatformPluginExport({\n dependencies: {\n adminCrudActionWeb: adminCrudActionWebSpec,\n adminCrudColumnWeb: adminCrudColumnWebSpec,\n },\n exports: {},\n initialize: ({ adminCrudActionWeb, adminCrudColumnWeb }, { pluginKey }) => {\n adminCrudActionWeb.registerActionWebConfig({\n pluginKey,\n name: 'manage-roles',\n label: 'Manage Roles',\n isAvailableForModel: (definition, modelId) =>\n ModelUtils.byIdOrThrow(definition, modelId).name ===\n LOCAL_AUTH_MODELS.user,\n getNewAction: () => ({ type: 'manage-roles', position: 'dropdown' }),\n });\n\n adminCrudActionWeb.registerActionWebConfig({\n pluginKey,\n name: 'reset-password',\n label: 'Reset Password',\n isAvailableForModel: (definition, modelId) =>\n ModelUtils.byIdOrThrow(definition, modelId).name ===\n LOCAL_AUTH_MODELS.user,\n getNewAction: () => ({ type: 'reset-password', position: 'dropdown' }),\n });\n\n adminCrudColumnWeb.registerColumnWebConfig({\n pluginKey,\n name: 'roles',\n label: 'Roles',\n isAvailableForModel: (definition, modelId) =>\n ModelUtils.byIdOrThrow(definition, modelId).name ===\n LOCAL_AUTH_MODELS.user,\n getNewColumn: () => ({ type: 'roles', label: 'Roles' }),\n });\n return {};\n },\n});\n"],"names":[],"mappings":";;;AAAA,MAAA,CAAA,0BAAA,CAAA,UAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;;AAIA,MAAA,CAAA,sBAAA,CAAA,sBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,wCAAA,CAAA;AAOA,YAAe,0BAA2B,CAAA;AAAA,EACxC,YAAc,EAAA;AAAA,IACZ,kBAAoB,EAAA,sBAAA;AAAA,IACpB,kBAAoB,EAAA;AAAA,GACtB;AAAA,EACA,SAAS,EAAC;AAAA,EACV,UAAA,EAAY,CAAC,EAAE,kBAAA,EAAoB,oBAAsB,EAAA,EAAE,WAAgB,KAAA;AACzE,IAAA,kBAAA,CAAmB,uBAAwB,CAAA;AAAA,MACzC,SAAA;AAAA,MACA,IAAM,EAAA,cAAA;AAAA,MACN,KAAO,EAAA,cAAA;AAAA,MACP,mBAAA,EAAqB,CAAC,UAAA,EAAY,OAChC,KAAA,UAAA,CAAW,YAAY,UAAY,EAAA,OAAO,CAAE,CAAA,IAAA,KAC5C,iBAAkB,CAAA,IAAA;AAAA,MACpB,cAAc,OAAO,EAAE,IAAM,EAAA,cAAA,EAAgB,UAAU,UAAW,EAAA;AAAA,KACnE,CAAA;AAED,IAAA,kBAAA,CAAmB,uBAAwB,CAAA;AAAA,MACzC,SAAA;AAAA,MACA,IAAM,EAAA,gBAAA;AAAA,MACN,KAAO,EAAA,gBAAA;AAAA,MACP,mBAAA,EAAqB,CAAC,UAAA,EAAY,OAChC,KAAA,UAAA,CAAW,YAAY,UAAY,EAAA,OAAO,CAAE,CAAA,IAAA,KAC5C,iBAAkB,CAAA,IAAA;AAAA,MACpB,cAAc,OAAO,EAAE,IAAM,EAAA,gBAAA,EAAkB,UAAU,UAAW,EAAA;AAAA,KACrE,CAAA;AAED,IAAA,kBAAA,CAAmB,uBAAwB,CAAA;AAAA,MACzC,SAAA;AAAA,MACA,IAAM,EAAA,OAAA;AAAA,MACN,KAAO,EAAA,OAAA;AAAA,MACP,mBAAA,EAAqB,CAAC,UAAA,EAAY,OAChC,KAAA,UAAA,CAAW,YAAY,UAAY,EAAA,OAAO,CAAE,CAAA,IAAA,KAC5C,iBAAkB,CAAA,IAAA;AAAA,MACpB,cAAc,OAAO,EAAE,IAAM,EAAA,OAAA,EAAS,OAAO,OAAQ,EAAA;AAAA,KACtD,CAAA;AACD,IAAA,OAAO,EAAC;AAAA;AAEZ,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"__federation_expose_local-authAdminWeb-B6PdHqzu.js","sources":["../../../src/local-auth/admin/web.ts"],"sourcesContent":["import {\n createPlatformPluginExport,\n ModelUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n adminCrudActionWebSpec,\n adminCrudColumnWebSpec,\n} from '@baseplate-dev/project-builder-lib/web';\n\nimport { LOCAL_AUTH_MODELS } from '#src/local-auth/constants/model-names.js';\n\nexport default createPlatformPluginExport({\n dependencies: {\n adminCrudActionWeb: adminCrudActionWebSpec,\n adminCrudColumnWeb: adminCrudColumnWebSpec,\n },\n exports: {},\n initialize: ({ adminCrudActionWeb, adminCrudColumnWeb }, { pluginKey }) => {\n adminCrudActionWeb.registerActionWebConfig({\n pluginKey,\n name: 'manage-roles',\n label: 'Manage Roles',\n isAvailableForModel: (definition, modelId) =>\n ModelUtils.byIdOrThrow(definition, modelId).name ===\n LOCAL_AUTH_MODELS.user,\n getNewAction: () => ({ type: 'manage-roles', position: 'dropdown' }),\n });\n\n adminCrudActionWeb.registerActionWebConfig({\n pluginKey,\n name: 'reset-password',\n label: 'Reset Password',\n isAvailableForModel: (definition, modelId) =>\n ModelUtils.byIdOrThrow(definition, modelId).name ===\n LOCAL_AUTH_MODELS.user,\n getNewAction: () => ({ type: 'reset-password', position: 'dropdown' }),\n });\n\n adminCrudColumnWeb.registerColumnWebConfig({\n pluginKey,\n name: 'roles',\n label: 'Roles',\n isAvailableForModel: (definition, modelId) =>\n ModelUtils.byIdOrThrow(definition, modelId).name ===\n LOCAL_AUTH_MODELS.user,\n getNewColumn: () => ({ type: 'roles', label: 'Roles' }),\n });\n return {};\n },\n});\n"],"names":[],"mappings":";;;AAAA,MAAA,CAAA,0BAAA,CAAA,UAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;;AAIA,MAAA,CAAA,sBAAA,CAAA,sBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,wCAAA,CAAA;AAOA,YAAe,0BAAA,CAA2B;AAAA,EACxC,YAAA,EAAc;AAAA,IACZ,kBAAA,EAAoB,sBAAA;AAAA,IACpB,kBAAA,EAAoB;AAAA,GACtB;AAAA,EACA,SAAS,EAAC;AAAA,EACV,UAAA,EAAY,CAAC,EAAE,kBAAA,EAAoB,oBAAmB,EAAG,EAAE,WAAU,KAAM;AACzE,IAAA,kBAAA,CAAmB,uBAAA,CAAwB;AAAA,MACzC,SAAA;AAAA,MACA,IAAA,EAAM,cAAA;AAAA,MACN,KAAA,EAAO,cAAA;AAAA,MACP,mBAAA,EAAqB,CAAC,UAAA,EAAY,OAAA,KAChC,UAAA,CAAW,YAAY,UAAA,EAAY,OAAO,CAAA,CAAE,IAAA,KAC5C,iBAAA,CAAkB,IAAA;AAAA,MACpB,cAAc,OAAO,EAAE,IAAA,EAAM,cAAA,EAAgB,UAAU,UAAA,EAAW;AAAA,KACnE,CAAA;AAED,IAAA,kBAAA,CAAmB,uBAAA,CAAwB;AAAA,MACzC,SAAA;AAAA,MACA,IAAA,EAAM,gBAAA;AAAA,MACN,KAAA,EAAO,gBAAA;AAAA,MACP,mBAAA,EAAqB,CAAC,UAAA,EAAY,OAAA,KAChC,UAAA,CAAW,YAAY,UAAA,EAAY,OAAO,CAAA,CAAE,IAAA,KAC5C,iBAAA,CAAkB,IAAA;AAAA,MACpB,cAAc,OAAO,EAAE,IAAA,EAAM,gBAAA,EAAkB,UAAU,UAAA,EAAW;AAAA,KACrE,CAAA;AAED,IAAA,kBAAA,CAAmB,uBAAA,CAAwB;AAAA,MACzC,SAAA;AAAA,MACA,IAAA,EAAM,OAAA;AAAA,MACN,KAAA,EAAO,OAAA;AAAA,MACP,mBAAA,EAAqB,CAAC,UAAA,EAAY,OAAA,KAChC,UAAA,CAAW,YAAY,UAAA,EAAY,OAAO,CAAA,CAAE,IAAA,KAC5C,iBAAA,CAAkB,IAAA;AAAA,MACpB,cAAc,OAAO,EAAE,IAAA,EAAM,OAAA,EAAS,OAAO,OAAA,EAAQ;AAAA,KACtD,CAAA;AACD,IAAA,OAAO,EAAC;AAAA,EACV;AACF,CAAC,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_local-authCoreCommon-BtQr1I4Q.js","sources":["../../../src/local-auth/core/common.ts"],"sourcesContent":["import {\n authModelConfigSpec,\n createPlatformPluginExport,\n ModelUtils,\n pluginConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { LOCAL_AUTH_MODELS } from '#src/local-auth/constants/model-names.js';\n\nimport { createLocalAuthPluginDefinitionSchema } from './schema/plugin-definition.js';\n\n// necessary for Typescript to infer the return type of the initialize function\nexport type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nexport default createPlatformPluginExport({\n dependencies: {\n config: pluginConfigSpec,\n },\n exports: {\n authModelConfig: authModelConfigSpec,\n },\n initialize: ({ config }, { pluginKey }) => {\n config.registerSchemaCreator(\n pluginKey,\n createLocalAuthPluginDefinitionSchema,\n );\n return {\n authModelConfig: {\n getUserModel: (definition) =>\n ModelUtils.byNameOrThrow(definition, LOCAL_AUTH_MODELS.user),\n },\n };\n },\n});\n"],"names":[],"mappings":";;;;AAAA,MAAA,CAAA,mBAAA,CAAA,0BAAA,CAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAcA,eAAe,0BAA2B,CAAA;AAAA,EACxC,YAAc,EAAA;AAAA,IACZ,MAAQ,EAAA;AAAA,GACV;AAAA,EACA,OAAS,EAAA;AAAA,IACP,eAAiB,EAAA;AAAA,GACnB;AAAA,EACA,YAAY,CAAC,EAAE,QAAU,EAAA,EAAE,WAAgB,KAAA;AACzC,IAAO,MAAA,CAAA,qBAAA;AAAA,MACL,SAAA;AAAA,MACA;AAAA,KACF;AACA,IAAO,OAAA;AAAA,MACL,eAAiB,EAAA;AAAA,QACf,cAAc,CAAC,UAAA,KACb,WAAW,aAAc,CAAA,UAAA,EAAY,kBAAkB,IAAI;AAAA;AAC/D,KACF;AAAA;AAEJ,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"__federation_expose_local-authCoreCommon-BtQr1I4Q.js","sources":["../../../src/local-auth/core/common.ts"],"sourcesContent":["import {\n authModelConfigSpec,\n createPlatformPluginExport,\n ModelUtils,\n pluginConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { LOCAL_AUTH_MODELS } from '#src/local-auth/constants/model-names.js';\n\nimport { createLocalAuthPluginDefinitionSchema } from './schema/plugin-definition.js';\n\n// necessary for Typescript to infer the return type of the initialize function\nexport type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nexport default createPlatformPluginExport({\n dependencies: {\n config: pluginConfigSpec,\n },\n exports: {\n authModelConfig: authModelConfigSpec,\n },\n initialize: ({ config }, { pluginKey }) => {\n config.registerSchemaCreator(\n pluginKey,\n createLocalAuthPluginDefinitionSchema,\n );\n return {\n authModelConfig: {\n getUserModel: (definition) =>\n ModelUtils.byNameOrThrow(definition, LOCAL_AUTH_MODELS.user),\n },\n };\n },\n});\n"],"names":[],"mappings":";;;;AAAA,MAAA,CAAA,mBAAA,CAAA,0BAAA,CAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAcA,eAAe,0BAAA,CAA2B;AAAA,EACxC,YAAA,EAAc;AAAA,IACZ,MAAA,EAAQ;AAAA,GACV;AAAA,EACA,OAAA,EAAS;AAAA,IACP,eAAA,EAAiB;AAAA,GACnB;AAAA,EACA,YAAY,CAAC,EAAE,QAAO,EAAG,EAAE,WAAU,KAAM;AACzC,IAAA,MAAA,CAAO,qBAAA;AAAA,MACL,SAAA;AAAA,MACA;AAAA,KACF;AACA,IAAA,OAAO;AAAA,MACL,eAAA,EAAiB;AAAA,QACf,cAAc,CAAC,UAAA,KACb,WAAW,aAAA,CAAc,UAAA,EAAY,kBAAkB,IAAI;AAAA;AAC/D,KACF;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_local-authCoreWeb-DsK2Dfpr.js","sources":["../../../src/local-auth/core/schema/models.ts","../../../src/local-auth/core/components/local-auth-definition-editor.tsx","../../../src/local-auth/core/web.ts"],"sourcesContent":["import type { ModelMergerModelInput } from '@baseplate-dev/project-builder-lib';\n\nimport type { AuthPluginDefinition } from '#src/auth/core/schema/plugin-definition.js';\n\nimport { LOCAL_AUTH_MODELS } from '#src/local-auth/constants/model-names.js';\n\nexport function createAuthModels({\n authFeatureRef,\n}: AuthPluginDefinition): Record<\n keyof typeof LOCAL_AUTH_MODELS,\n ModelMergerModelInput\n> {\n return {\n user: {\n name: LOCAL_AUTH_MODELS.user,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'name',\n type: 'string',\n isOptional: true,\n },\n {\n name: 'email',\n type: 'string',\n },\n {\n name: 'emailVerified',\n type: 'boolean',\n options: { default: 'false' },\n },\n {\n name: 'updatedAt',\n type: 'dateTime',\n options: { defaultToNow: true, updatedAt: true },\n },\n {\n name: 'createdAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'email' }],\n },\n ],\n },\n graphql: {\n objectType: {\n enabled: true,\n fields: ['id', 'email'],\n },\n },\n },\n userAccount: {\n name: LOCAL_AUTH_MODELS.userAccount,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'userId',\n type: 'uuid',\n },\n {\n name: 'accountId',\n type: 'string',\n },\n {\n name: 'providerId',\n type: 'string',\n },\n {\n name: 'password',\n type: 'string',\n isOptional: true,\n },\n {\n name: 'createdAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n {\n name: 'updatedAt',\n type: 'dateTime',\n options: { defaultToNow: true, updatedAt: true },\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'accountId' }, { fieldRef: 'providerId' }],\n },\n ],\n relations: [\n {\n name: 'user',\n references: [{ localRef: 'userId', foreignRef: 'id' }],\n modelRef: LOCAL_AUTH_MODELS.user,\n foreignRelationName: 'accounts',\n onDelete: 'Cascade',\n onUpdate: 'Restrict',\n },\n ],\n },\n },\n userRole: {\n name: LOCAL_AUTH_MODELS.userRole,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'userId',\n type: 'uuid',\n },\n {\n name: 'role',\n type: 'string',\n },\n {\n name: 'updatedAt',\n type: 'dateTime',\n options: { defaultToNow: true, updatedAt: true },\n },\n {\n name: 'createdAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n ],\n primaryKeyFieldRefs: ['userId', 'role'],\n relations: [\n {\n name: 'user',\n references: [{ localRef: 'userId', foreignRef: 'id' }],\n modelRef: LOCAL_AUTH_MODELS.user,\n foreignRelationName: 'roles',\n onDelete: 'Cascade',\n onUpdate: 'Restrict',\n },\n ],\n },\n },\n userSession: {\n name: LOCAL_AUTH_MODELS.userSession,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'userId',\n type: 'uuid',\n },\n {\n name: 'token',\n type: 'string',\n },\n {\n name: 'expiresAt',\n type: 'dateTime',\n },\n {\n name: 'renewedAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n {\n name: 'createdAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n {\n name: 'updatedAt',\n type: 'dateTime',\n options: { defaultToNow: true, updatedAt: true },\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'token' }],\n },\n ],\n relations: [\n {\n name: 'user',\n references: [{ localRef: 'userId', foreignRef: 'id' }],\n modelRef: LOCAL_AUTH_MODELS.user,\n foreignRelationName: 'sessions',\n onDelete: 'Cascade',\n onUpdate: 'Restrict',\n },\n ],\n },\n },\n };\n}\n","import type { WebConfigProps } from '@baseplate-dev/project-builder-lib';\nimport type React from 'react';\n\nimport {\n createAndApplyModelMergerResults,\n createModelMergerResults,\n doesModelMergerResultsHaveChanges,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n ModelMergerResultAlert,\n useBlockUnsavedChangesNavigate,\n useDefinitionSchema,\n useProjectDefinition,\n useResettableForm,\n} from '@baseplate-dev/project-builder-lib/web';\nimport {\n FormActionBar,\n MultiComboboxFieldController,\n SectionList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { useMemo } from 'react';\n\nimport { getAuthPluginDefinition } from '#src/auth/utils/get-auth-plugin-definition.js';\nimport { AuthConfigTabs } from '#src/common/components/auth-config-tabs.js';\nimport { LOCAL_AUTH_MODELS } from '#src/local-auth/constants/model-names.js';\n\nimport type { LocalAuthPluginDefinitionInput } from '../schema/plugin-definition.js';\n\nimport { createAuthModels } from '../schema/models.js';\nimport { createLocalAuthPluginDefinitionSchema } from '../schema/plugin-definition.js';\n\nimport '#src/styles.css';\n\nexport function LocalAuthDefinitionEditor({\n definition: pluginMetadata,\n metadata,\n onSave,\n}: WebConfigProps): React.JSX.Element {\n const { definition, definitionContainer, saveDefinitionWithFeedback } =\n useProjectDefinition();\n\n const authPluginDefinitionSchema = useDefinitionSchema(\n createLocalAuthPluginDefinitionSchema,\n );\n const authDefinition = getAuthPluginDefinition(definition);\n const roles = authDefinition.roles\n .filter((role) => !role.builtIn)\n .map((role) => ({\n label: role.name,\n value: role.id,\n }));\n\n const defaultValues = useMemo(() => {\n if (pluginMetadata?.config) {\n return pluginMetadata.config as LocalAuthPluginDefinitionInput;\n }\n\n return {\n initialUserRoles: [],\n userAdminRoles: [],\n } satisfies LocalAuthPluginDefinitionInput;\n }, [pluginMetadata?.config]);\n\n const form = useResettableForm({\n resolver: zodResolver(authPluginDefinitionSchema),\n defaultValues,\n });\n const { control, reset, handleSubmit } = form;\n\n const pendingModelChanges = useMemo(() => {\n const desiredModels = createAuthModels(authDefinition);\n\n return createModelMergerResults(\n LOCAL_AUTH_MODELS,\n desiredModels,\n definitionContainer,\n );\n }, [definitionContainer, authDefinition]);\n\n const onSubmit = handleSubmit((data) =>\n saveDefinitionWithFeedback(\n (draftConfig) => {\n const updatedData = {\n ...data,\n };\n createAndApplyModelMergerResults(\n draftConfig,\n LOCAL_AUTH_MODELS,\n createAuthModels(authDefinition),\n definitionContainer,\n );\n PluginUtils.setPluginConfig(\n draftConfig,\n metadata,\n updatedData,\n definitionContainer.pluginStore,\n );\n },\n {\n successMessage: 'Successfully saved auth plugin!',\n onSuccess: () => {\n onSave();\n },\n },\n ),\n );\n\n useBlockUnsavedChangesNavigate({ control, reset, onSubmit });\n\n return (\n <div className=\"auth:relative auth:flex auth:h-full auth:flex-1 auth:flex-col auth:gap-4 auth:overflow-hidden\">\n <AuthConfigTabs />\n <div\n className=\"auth:mb-[--action-bar-height] auth:flex auth:flex-1 auth:overflow-y-auto\"\n style={\n {\n '--action-bar-height': '52px',\n } as React.CSSProperties\n }\n >\n <form onSubmit={onSubmit} className=\"auth:max-w-6xl auth:flex-1\">\n <div className=\"auth:pb-16\">\n <SectionList>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n Local Auth User Models\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n The plugin will automatically configure the models it needs.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <ModelMergerResultAlert\n pendingModelChanges={pendingModelChanges}\n />\n </SectionListSectionContent>\n </SectionListSection>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n Initial User Setup\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n In order to access the admin panel, an initial user must be\n created. To make it easier, the plugin will automatically\n add a seed script to create the initial user provided a\n .seed.env exists with the INTIIAL_USER_EMAIL and\n INTIIAL_USER_PASSWORD variables.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <MultiComboboxFieldController\n label=\"Initial User Roles\"\n name=\"initialUserRoles\"\n control={control}\n options={roles}\n description=\"The roles that will be assigned to the initial user.\"\n />\n </SectionListSectionContent>\n </SectionListSection>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n User Management Permissions\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n Configure which roles can manage users and assign roles to\n other users in the admin interface.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <MultiComboboxFieldController\n label=\"User Admin Roles\"\n name=\"userAdminRoles\"\n control={control}\n options={roles}\n description=\"Roles that can manage users and assign roles to other users.\"\n />\n </SectionListSectionContent>\n </SectionListSection>\n </SectionList>\n </div>\n\n <FormActionBar\n form={form}\n allowSaveWithoutDirty={\n !pluginMetadata ||\n doesModelMergerResultsHaveChanges(pendingModelChanges)\n }\n />\n </form>\n </div>\n </div>\n );\n}\n","import {\n createPlatformPluginExport,\n webConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { LocalAuthDefinitionEditor } from './components/local-auth-definition-editor.js';\n\nimport '../../styles.css';\n\nexport default createPlatformPluginExport({\n dependencies: {\n webConfig: webConfigSpec,\n },\n exports: {},\n initialize: ({ webConfig }, { pluginKey }) => {\n webConfig.registerWebConfigComponent(pluginKey, LocalAuthDefinitionEditor);\n return {};\n },\n});\n"],"names":["zodResolver","jsxs","jsx"],"mappings":"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"}
1
+ {"version":3,"file":"__federation_expose_local-authCoreWeb-DsK2Dfpr.js","sources":["../../../src/local-auth/core/schema/models.ts","../../../src/local-auth/core/components/local-auth-definition-editor.tsx","../../../src/local-auth/core/web.ts"],"sourcesContent":["import type { ModelMergerModelInput } from '@baseplate-dev/project-builder-lib';\n\nimport type { AuthPluginDefinition } from '#src/auth/core/schema/plugin-definition.js';\n\nimport { LOCAL_AUTH_MODELS } from '#src/local-auth/constants/model-names.js';\n\nexport function createAuthModels({\n authFeatureRef,\n}: AuthPluginDefinition): Record<\n keyof typeof LOCAL_AUTH_MODELS,\n ModelMergerModelInput\n> {\n return {\n user: {\n name: LOCAL_AUTH_MODELS.user,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'name',\n type: 'string',\n isOptional: true,\n },\n {\n name: 'email',\n type: 'string',\n },\n {\n name: 'emailVerified',\n type: 'boolean',\n options: { default: 'false' },\n },\n {\n name: 'updatedAt',\n type: 'dateTime',\n options: { defaultToNow: true, updatedAt: true },\n },\n {\n name: 'createdAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'email' }],\n },\n ],\n },\n graphql: {\n objectType: {\n enabled: true,\n fields: ['id', 'email'],\n },\n },\n },\n userAccount: {\n name: LOCAL_AUTH_MODELS.userAccount,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'userId',\n type: 'uuid',\n },\n {\n name: 'accountId',\n type: 'string',\n },\n {\n name: 'providerId',\n type: 'string',\n },\n {\n name: 'password',\n type: 'string',\n isOptional: true,\n },\n {\n name: 'createdAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n {\n name: 'updatedAt',\n type: 'dateTime',\n options: { defaultToNow: true, updatedAt: true },\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'accountId' }, { fieldRef: 'providerId' }],\n },\n ],\n relations: [\n {\n name: 'user',\n references: [{ localRef: 'userId', foreignRef: 'id' }],\n modelRef: LOCAL_AUTH_MODELS.user,\n foreignRelationName: 'accounts',\n onDelete: 'Cascade',\n onUpdate: 'Restrict',\n },\n ],\n },\n },\n userRole: {\n name: LOCAL_AUTH_MODELS.userRole,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'userId',\n type: 'uuid',\n },\n {\n name: 'role',\n type: 'string',\n },\n {\n name: 'updatedAt',\n type: 'dateTime',\n options: { defaultToNow: true, updatedAt: true },\n },\n {\n name: 'createdAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n ],\n primaryKeyFieldRefs: ['userId', 'role'],\n relations: [\n {\n name: 'user',\n references: [{ localRef: 'userId', foreignRef: 'id' }],\n modelRef: LOCAL_AUTH_MODELS.user,\n foreignRelationName: 'roles',\n onDelete: 'Cascade',\n onUpdate: 'Restrict',\n },\n ],\n },\n },\n userSession: {\n name: LOCAL_AUTH_MODELS.userSession,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'userId',\n type: 'uuid',\n },\n {\n name: 'token',\n type: 'string',\n },\n {\n name: 'expiresAt',\n type: 'dateTime',\n },\n {\n name: 'renewedAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n {\n name: 'createdAt',\n type: 'dateTime',\n options: { defaultToNow: true },\n },\n {\n name: 'updatedAt',\n type: 'dateTime',\n options: { defaultToNow: true, updatedAt: true },\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'token' }],\n },\n ],\n relations: [\n {\n name: 'user',\n references: [{ localRef: 'userId', foreignRef: 'id' }],\n modelRef: LOCAL_AUTH_MODELS.user,\n foreignRelationName: 'sessions',\n onDelete: 'Cascade',\n onUpdate: 'Restrict',\n },\n ],\n },\n },\n };\n}\n","import type { WebConfigProps } from '@baseplate-dev/project-builder-lib';\nimport type React from 'react';\n\nimport {\n createAndApplyModelMergerResults,\n createModelMergerResults,\n doesModelMergerResultsHaveChanges,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n ModelMergerResultAlert,\n useBlockUnsavedChangesNavigate,\n useDefinitionSchema,\n useProjectDefinition,\n useResettableForm,\n} from '@baseplate-dev/project-builder-lib/web';\nimport {\n FormActionBar,\n MultiComboboxFieldController,\n SectionList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { useMemo } from 'react';\n\nimport { getAuthPluginDefinition } from '#src/auth/utils/get-auth-plugin-definition.js';\nimport { AuthConfigTabs } from '#src/common/components/auth-config-tabs.js';\nimport { LOCAL_AUTH_MODELS } from '#src/local-auth/constants/model-names.js';\n\nimport type { LocalAuthPluginDefinitionInput } from '../schema/plugin-definition.js';\n\nimport { createAuthModels } from '../schema/models.js';\nimport { createLocalAuthPluginDefinitionSchema } from '../schema/plugin-definition.js';\n\nimport '#src/styles.css';\n\nexport function LocalAuthDefinitionEditor({\n definition: pluginMetadata,\n metadata,\n onSave,\n}: WebConfigProps): React.JSX.Element {\n const { definition, definitionContainer, saveDefinitionWithFeedback } =\n useProjectDefinition();\n\n const authPluginDefinitionSchema = useDefinitionSchema(\n createLocalAuthPluginDefinitionSchema,\n );\n const authDefinition = getAuthPluginDefinition(definition);\n const roles = authDefinition.roles\n .filter((role) => !role.builtIn)\n .map((role) => ({\n label: role.name,\n value: role.id,\n }));\n\n const defaultValues = useMemo(() => {\n if (pluginMetadata?.config) {\n return pluginMetadata.config as LocalAuthPluginDefinitionInput;\n }\n\n return {\n initialUserRoles: [],\n userAdminRoles: [],\n } satisfies LocalAuthPluginDefinitionInput;\n }, [pluginMetadata?.config]);\n\n const form = useResettableForm({\n resolver: zodResolver(authPluginDefinitionSchema),\n defaultValues,\n });\n const { control, reset, handleSubmit } = form;\n\n const pendingModelChanges = useMemo(() => {\n const desiredModels = createAuthModels(authDefinition);\n\n return createModelMergerResults(\n LOCAL_AUTH_MODELS,\n desiredModels,\n definitionContainer,\n );\n }, [definitionContainer, authDefinition]);\n\n const onSubmit = handleSubmit((data) =>\n saveDefinitionWithFeedback(\n (draftConfig) => {\n const updatedData = {\n ...data,\n };\n createAndApplyModelMergerResults(\n draftConfig,\n LOCAL_AUTH_MODELS,\n createAuthModels(authDefinition),\n definitionContainer,\n );\n PluginUtils.setPluginConfig(\n draftConfig,\n metadata,\n updatedData,\n definitionContainer.pluginStore,\n );\n },\n {\n successMessage: 'Successfully saved auth plugin!',\n onSuccess: () => {\n onSave();\n },\n },\n ),\n );\n\n useBlockUnsavedChangesNavigate({ control, reset, onSubmit });\n\n return (\n <div className=\"auth:relative auth:flex auth:h-full auth:flex-1 auth:flex-col auth:gap-4 auth:overflow-hidden\">\n <AuthConfigTabs />\n <div\n className=\"auth:mb-[--action-bar-height] auth:flex auth:flex-1 auth:overflow-y-auto\"\n style={\n {\n '--action-bar-height': '52px',\n } as React.CSSProperties\n }\n >\n <form onSubmit={onSubmit} className=\"auth:max-w-6xl auth:flex-1\">\n <div className=\"auth:pb-16\">\n <SectionList>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n Local Auth User Models\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n The plugin will automatically configure the models it needs.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <ModelMergerResultAlert\n pendingModelChanges={pendingModelChanges}\n />\n </SectionListSectionContent>\n </SectionListSection>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n Initial User Setup\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n In order to access the admin panel, an initial user must be\n created. To make it easier, the plugin will automatically\n add a seed script to create the initial user provided a\n .seed.env exists with the INTIIAL_USER_EMAIL and\n INTIIAL_USER_PASSWORD variables.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <MultiComboboxFieldController\n label=\"Initial User Roles\"\n name=\"initialUserRoles\"\n control={control}\n options={roles}\n description=\"The roles that will be assigned to the initial user.\"\n />\n </SectionListSectionContent>\n </SectionListSection>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n User Management Permissions\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n Configure which roles can manage users and assign roles to\n other users in the admin interface.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <MultiComboboxFieldController\n label=\"User Admin Roles\"\n name=\"userAdminRoles\"\n control={control}\n options={roles}\n description=\"Roles that can manage users and assign roles to other users.\"\n />\n </SectionListSectionContent>\n </SectionListSection>\n </SectionList>\n </div>\n\n <FormActionBar\n form={form}\n allowSaveWithoutDirty={\n !pluginMetadata ||\n doesModelMergerResultsHaveChanges(pendingModelChanges)\n }\n />\n </form>\n </div>\n </div>\n );\n}\n","import {\n createPlatformPluginExport,\n webConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { LocalAuthDefinitionEditor } from './components/local-auth-definition-editor.js';\n\nimport '../../styles.css';\n\nexport default createPlatformPluginExport({\n dependencies: {\n webConfig: webConfigSpec,\n },\n exports: {},\n initialize: ({ webConfig }, { pluginKey }) => {\n webConfig.registerWebConfigComponent(pluginKey, LocalAuthDefinitionEditor);\n return {};\n },\n});\n"],"names":["zodResolver","jsxs","jsx"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_placeholder-authCoreCommon-BZy2rgIt.js","sources":["../../../src/placeholder-auth/core/common.ts"],"sourcesContent":["import {\n authModelConfigSpec,\n createPlatformPluginExport,\n ModelUtils,\n pluginConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { PLACEHOLDER_AUTH_MODELS } from '#src/placeholder-auth/constants/model-names.js';\n\nimport { createPlaceholderAuthPluginDefinitionSchema } from './schema/plugin-definition.js';\n\n// necessary for Typescript to infer the return type of the initialize function\nexport type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nexport default createPlatformPluginExport({\n dependencies: {\n config: pluginConfigSpec,\n },\n exports: {\n authModelConfig: authModelConfigSpec,\n },\n initialize: ({ config }, { pluginKey }) => {\n config.registerSchemaCreator(\n pluginKey,\n createPlaceholderAuthPluginDefinitionSchema,\n );\n return {\n authModelConfig: {\n getUserModel: (definition) =>\n ModelUtils.byNameOrThrow(definition, PLACEHOLDER_AUTH_MODELS.user),\n },\n };\n },\n});\n"],"names":[],"mappings":";;;AAAA,MAAA,CAAA,mBAAA,CAAA,0BAAA,CAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAcA,eAAe,0BAA2B,CAAA;AAAA,EACxC,YAAc,EAAA;AAAA,IACZ,MAAQ,EAAA;AAAA,GACV;AAAA,EACA,OAAS,EAAA;AAAA,IACP,eAAiB,EAAA;AAAA,GACnB;AAAA,EACA,YAAY,CAAC,EAAE,QAAU,EAAA,EAAE,WAAgB,KAAA;AACzC,IAAO,MAAA,CAAA,qBAAA;AAAA,MACL,SAAA;AAAA,MACA;AAAA,KACF;AACA,IAAO,OAAA;AAAA,MACL,eAAiB,EAAA;AAAA,QACf,cAAc,CAAC,UAAA,KACb,WAAW,aAAc,CAAA,UAAA,EAAY,wBAAwB,IAAI;AAAA;AACrE,KACF;AAAA;AAEJ,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"__federation_expose_placeholder-authCoreCommon-BZy2rgIt.js","sources":["../../../src/placeholder-auth/core/common.ts"],"sourcesContent":["import {\n authModelConfigSpec,\n createPlatformPluginExport,\n ModelUtils,\n pluginConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { PLACEHOLDER_AUTH_MODELS } from '#src/placeholder-auth/constants/model-names.js';\n\nimport { createPlaceholderAuthPluginDefinitionSchema } from './schema/plugin-definition.js';\n\n// necessary for Typescript to infer the return type of the initialize function\nexport type { PluginPlatformModule } from '@baseplate-dev/project-builder-lib';\n\nexport default createPlatformPluginExport({\n dependencies: {\n config: pluginConfigSpec,\n },\n exports: {\n authModelConfig: authModelConfigSpec,\n },\n initialize: ({ config }, { pluginKey }) => {\n config.registerSchemaCreator(\n pluginKey,\n createPlaceholderAuthPluginDefinitionSchema,\n );\n return {\n authModelConfig: {\n getUserModel: (definition) =>\n ModelUtils.byNameOrThrow(definition, PLACEHOLDER_AUTH_MODELS.user),\n },\n };\n },\n});\n"],"names":[],"mappings":";;;AAAA,MAAA,CAAA,mBAAA,CAAA,0BAAA,CAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AAcA,eAAe,0BAAA,CAA2B;AAAA,EACxC,YAAA,EAAc;AAAA,IACZ,MAAA,EAAQ;AAAA,GACV;AAAA,EACA,OAAA,EAAS;AAAA,IACP,eAAA,EAAiB;AAAA,GACnB;AAAA,EACA,YAAY,CAAC,EAAE,QAAO,EAAG,EAAE,WAAU,KAAM;AACzC,IAAA,MAAA,CAAO,qBAAA;AAAA,MACL,SAAA;AAAA,MACA;AAAA,KACF;AACA,IAAA,OAAO;AAAA,MACL,eAAA,EAAiB;AAAA,QACf,cAAc,CAAC,UAAA,KACb,WAAW,aAAA,CAAc,UAAA,EAAY,wBAAwB,IAAI;AAAA;AACrE,KACF;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"__federation_expose_placeholder-authCoreWeb-OEDsMJ_b.js","sources":["../../../src/placeholder-auth/core/schema/models.ts","../../../src/placeholder-auth/core/components/placeholder-auth-definition-editor.tsx","../../../src/placeholder-auth/core/web.ts"],"sourcesContent":["import type { ModelMergerModelInput } from '@baseplate-dev/project-builder-lib';\n\nimport type { AuthPluginDefinition } from '#src/auth/core/schema/plugin-definition.js';\n\nimport { PLACEHOLDER_AUTH_MODELS } from '#src/placeholder-auth/constants/model-names.js';\n\nexport function createAuthModels({\n authFeatureRef,\n}: AuthPluginDefinition): Record<\n keyof typeof PLACEHOLDER_AUTH_MODELS,\n ModelMergerModelInput\n> {\n return {\n user: {\n name: PLACEHOLDER_AUTH_MODELS.user,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'email',\n type: 'string',\n isOptional: true,\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'email' }],\n },\n ],\n },\n graphql: {\n objectType: {\n enabled: true,\n fields: ['id', 'email'],\n },\n },\n },\n };\n}\n","import type { WebConfigProps } from '@baseplate-dev/project-builder-lib';\nimport type React from 'react';\n\nimport {\n createAndApplyModelMergerResults,\n createModelMergerResults,\n doesModelMergerResultsHaveChanges,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n ModelMergerResultAlert,\n useBlockUnsavedChangesNavigate,\n useDefinitionSchema,\n useProjectDefinition,\n useResettableForm,\n} from '@baseplate-dev/project-builder-lib/web';\nimport {\n FormActionBar,\n SectionList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { useMemo } from 'react';\n\nimport { getAuthPluginDefinition } from '#src/auth/index.js';\nimport { AuthConfigTabs } from '#src/common/components/auth-config-tabs.js';\nimport { PLACEHOLDER_AUTH_MODELS } from '#src/placeholder-auth/constants/model-names.js';\n\nimport type { PlaceholderAuthPluginDefinitionInput } from '../schema/plugin-definition.js';\n\nimport { createAuthModels } from '../schema/models.js';\nimport { createPlaceholderAuthPluginDefinitionSchema } from '../schema/plugin-definition.js';\n\nimport '#src/styles.css';\n\nexport function PlaceholderAuthDefinitionEditor({\n definition: pluginMetadata,\n metadata,\n onSave,\n}: WebConfigProps): React.JSX.Element {\n const { definition, definitionContainer, saveDefinitionWithFeedback } =\n useProjectDefinition();\n\n const authDefinition = getAuthPluginDefinition(definition);\n\n const authPluginDefinitionSchema = useDefinitionSchema(\n createPlaceholderAuthPluginDefinitionSchema,\n );\n\n const defaultValues = useMemo(() => {\n if (pluginMetadata?.config) {\n return pluginMetadata.config as PlaceholderAuthPluginDefinitionInput;\n }\n\n return {} satisfies PlaceholderAuthPluginDefinitionInput;\n }, [pluginMetadata?.config]);\n\n const form = useResettableForm({\n resolver: zodResolver(authPluginDefinitionSchema),\n defaultValues,\n });\n const { control, reset, handleSubmit } = form;\n\n const pendingModelChanges = useMemo(() => {\n const desiredModels = createAuthModels(authDefinition);\n\n return createModelMergerResults(\n PLACEHOLDER_AUTH_MODELS,\n desiredModels,\n definitionContainer,\n );\n }, [definitionContainer, authDefinition]);\n\n const onSubmit = handleSubmit((data) =>\n saveDefinitionWithFeedback(\n (draftConfig) => {\n const updatedData = {\n ...data,\n };\n createAndApplyModelMergerResults(\n draftConfig,\n PLACEHOLDER_AUTH_MODELS,\n createAuthModels(authDefinition),\n definitionContainer,\n );\n PluginUtils.setPluginConfig(\n draftConfig,\n metadata,\n updatedData,\n definitionContainer.pluginStore,\n );\n },\n {\n successMessage: 'Successfully saved placeholder auth plugin!',\n onSuccess: () => {\n onSave();\n },\n },\n ),\n );\n\n useBlockUnsavedChangesNavigate({ control, reset, onSubmit });\n\n return (\n <div className=\"auth:relative auth:flex auth:h-full auth:flex-1 auth:flex-col auth:gap-4 auth:overflow-hidden\">\n <AuthConfigTabs />\n <div\n className=\"auth:mb-[--action-bar-height] auth:flex auth:flex-1 auth:overflow-y-auto\"\n style={\n {\n '--action-bar-height': '52px',\n } as React.CSSProperties\n }\n >\n <form onSubmit={onSubmit} className=\"auth:max-w-6xl auth:flex-1\">\n <div className=\"auth:pb-16\">\n <SectionList>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n Placeholder Auth Configuration\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n The plugin will automatically configure the models it needs.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <ModelMergerResultAlert\n pendingModelChanges={pendingModelChanges}\n />\n </SectionListSectionContent>\n </SectionListSection>\n </SectionList>\n </div>\n\n <FormActionBar\n form={form}\n allowSaveWithoutDirty={\n !pluginMetadata ||\n doesModelMergerResultsHaveChanges(pendingModelChanges)\n }\n />\n </form>\n </div>\n </div>\n );\n}\n","import {\n createPlatformPluginExport,\n webConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { PlaceholderAuthDefinitionEditor } from './components/placeholder-auth-definition-editor.js';\n\nimport '../../styles.css';\n\nexport default createPlatformPluginExport({\n dependencies: {\n webConfig: webConfigSpec,\n },\n exports: {},\n initialize: ({ webConfig }, { pluginKey }) => {\n webConfig.registerWebConfigComponent(\n pluginKey,\n PlaceholderAuthDefinitionEditor,\n );\n return {};\n },\n});\n"],"names":["zodResolver","jsxs","jsx"],"mappings":"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"}
1
+ {"version":3,"file":"__federation_expose_placeholder-authCoreWeb-OEDsMJ_b.js","sources":["../../../src/placeholder-auth/core/schema/models.ts","../../../src/placeholder-auth/core/components/placeholder-auth-definition-editor.tsx","../../../src/placeholder-auth/core/web.ts"],"sourcesContent":["import type { ModelMergerModelInput } from '@baseplate-dev/project-builder-lib';\n\nimport type { AuthPluginDefinition } from '#src/auth/core/schema/plugin-definition.js';\n\nimport { PLACEHOLDER_AUTH_MODELS } from '#src/placeholder-auth/constants/model-names.js';\n\nexport function createAuthModels({\n authFeatureRef,\n}: AuthPluginDefinition): Record<\n keyof typeof PLACEHOLDER_AUTH_MODELS,\n ModelMergerModelInput\n> {\n return {\n user: {\n name: PLACEHOLDER_AUTH_MODELS.user,\n featureRef: authFeatureRef,\n model: {\n fields: [\n {\n name: 'id',\n type: 'uuid',\n options: { genUuid: true },\n },\n {\n name: 'email',\n type: 'string',\n isOptional: true,\n },\n ],\n primaryKeyFieldRefs: ['id'],\n uniqueConstraints: [\n {\n fields: [{ fieldRef: 'email' }],\n },\n ],\n },\n graphql: {\n objectType: {\n enabled: true,\n fields: ['id', 'email'],\n },\n },\n },\n };\n}\n","import type { WebConfigProps } from '@baseplate-dev/project-builder-lib';\nimport type React from 'react';\n\nimport {\n createAndApplyModelMergerResults,\n createModelMergerResults,\n doesModelMergerResultsHaveChanges,\n PluginUtils,\n} from '@baseplate-dev/project-builder-lib';\nimport {\n ModelMergerResultAlert,\n useBlockUnsavedChangesNavigate,\n useDefinitionSchema,\n useProjectDefinition,\n useResettableForm,\n} from '@baseplate-dev/project-builder-lib/web';\nimport {\n FormActionBar,\n SectionList,\n SectionListSection,\n SectionListSectionContent,\n SectionListSectionDescription,\n SectionListSectionHeader,\n SectionListSectionTitle,\n} from '@baseplate-dev/ui-components';\nimport { zodResolver } from '@hookform/resolvers/zod';\nimport { useMemo } from 'react';\n\nimport { getAuthPluginDefinition } from '#src/auth/index.js';\nimport { AuthConfigTabs } from '#src/common/components/auth-config-tabs.js';\nimport { PLACEHOLDER_AUTH_MODELS } from '#src/placeholder-auth/constants/model-names.js';\n\nimport type { PlaceholderAuthPluginDefinitionInput } from '../schema/plugin-definition.js';\n\nimport { createAuthModels } from '../schema/models.js';\nimport { createPlaceholderAuthPluginDefinitionSchema } from '../schema/plugin-definition.js';\n\nimport '#src/styles.css';\n\nexport function PlaceholderAuthDefinitionEditor({\n definition: pluginMetadata,\n metadata,\n onSave,\n}: WebConfigProps): React.JSX.Element {\n const { definition, definitionContainer, saveDefinitionWithFeedback } =\n useProjectDefinition();\n\n const authDefinition = getAuthPluginDefinition(definition);\n\n const authPluginDefinitionSchema = useDefinitionSchema(\n createPlaceholderAuthPluginDefinitionSchema,\n );\n\n const defaultValues = useMemo(() => {\n if (pluginMetadata?.config) {\n return pluginMetadata.config as PlaceholderAuthPluginDefinitionInput;\n }\n\n return {} satisfies PlaceholderAuthPluginDefinitionInput;\n }, [pluginMetadata?.config]);\n\n const form = useResettableForm({\n resolver: zodResolver(authPluginDefinitionSchema),\n defaultValues,\n });\n const { control, reset, handleSubmit } = form;\n\n const pendingModelChanges = useMemo(() => {\n const desiredModels = createAuthModels(authDefinition);\n\n return createModelMergerResults(\n PLACEHOLDER_AUTH_MODELS,\n desiredModels,\n definitionContainer,\n );\n }, [definitionContainer, authDefinition]);\n\n const onSubmit = handleSubmit((data) =>\n saveDefinitionWithFeedback(\n (draftConfig) => {\n const updatedData = {\n ...data,\n };\n createAndApplyModelMergerResults(\n draftConfig,\n PLACEHOLDER_AUTH_MODELS,\n createAuthModels(authDefinition),\n definitionContainer,\n );\n PluginUtils.setPluginConfig(\n draftConfig,\n metadata,\n updatedData,\n definitionContainer.pluginStore,\n );\n },\n {\n successMessage: 'Successfully saved placeholder auth plugin!',\n onSuccess: () => {\n onSave();\n },\n },\n ),\n );\n\n useBlockUnsavedChangesNavigate({ control, reset, onSubmit });\n\n return (\n <div className=\"auth:relative auth:flex auth:h-full auth:flex-1 auth:flex-col auth:gap-4 auth:overflow-hidden\">\n <AuthConfigTabs />\n <div\n className=\"auth:mb-[--action-bar-height] auth:flex auth:flex-1 auth:overflow-y-auto\"\n style={\n {\n '--action-bar-height': '52px',\n } as React.CSSProperties\n }\n >\n <form onSubmit={onSubmit} className=\"auth:max-w-6xl auth:flex-1\">\n <div className=\"auth:pb-16\">\n <SectionList>\n <SectionListSection>\n <SectionListSectionHeader>\n <SectionListSectionTitle>\n Placeholder Auth Configuration\n </SectionListSectionTitle>\n <SectionListSectionDescription>\n The plugin will automatically configure the models it needs.\n </SectionListSectionDescription>\n </SectionListSectionHeader>\n <SectionListSectionContent className=\"auth:space-y-6\">\n <ModelMergerResultAlert\n pendingModelChanges={pendingModelChanges}\n />\n </SectionListSectionContent>\n </SectionListSection>\n </SectionList>\n </div>\n\n <FormActionBar\n form={form}\n allowSaveWithoutDirty={\n !pluginMetadata ||\n doesModelMergerResultsHaveChanges(pendingModelChanges)\n }\n />\n </form>\n </div>\n </div>\n );\n}\n","import {\n createPlatformPluginExport,\n webConfigSpec,\n} from '@baseplate-dev/project-builder-lib';\n\nimport { PlaceholderAuthDefinitionEditor } from './components/placeholder-auth-definition-editor.js';\n\nimport '../../styles.css';\n\nexport default createPlatformPluginExport({\n dependencies: {\n webConfig: webConfigSpec,\n },\n exports: {},\n initialize: ({ webConfig }, { pluginKey }) => {\n webConfig.registerWebConfigComponent(\n pluginKey,\n PlaceholderAuthDefinitionEditor,\n );\n return {};\n },\n});\n"],"names":["zodResolver","jsxs","jsx"],"mappings":";;;;;;AAMO,SAAS,gBAAA,CAAiB;AAAA,EAC/B;AACF,CAAA,EAGE;AACA,EAAA,OAAO;AAAA,IACL,IAAA,EAAM;AAAA,MACJ,MAAM,uBAAA,CAAwB,IAAA;AAAA,MAC9B,UAAA,EAAY,cAAA;AAAA,MACZ,KAAA,EAAO;AAAA,QACL,MAAA,EAAQ;AAAA,UACN;AAAA,YACE,IAAA,EAAM,IAAA;AAAA,YACN,IAAA,EAAM,MAAA;AAAA,YACN,OAAA,EAAS,EAAE,OAAA,EAAS,IAAA;AAAK,WAC3B;AAAA,UACA;AAAA,YACE,IAAA,EAAM,OAAA;AAAA,YACN,IAAA,EAAM,QAAA;AAAA,YACN,UAAA,EAAY;AAAA;AACd,SACF;AAAA,QACA,mBAAA,EAAqB,CAAC,IAAI,CAAA;AAAA,QAC1B,iBAAA,EAAmB;AAAA,UACjB;AAAA,YACE,MAAA,EAAQ,CAAC,EAAE,QAAA,EAAU,SAAS;AAAA;AAChC;AACF,OACF;AAAA,MACA,OAAA,EAAS;AAAA,QACP,UAAA,EAAY;AAAA,UACV,OAAA,EAAS,IAAA;AAAA,UACT,MAAA,EAAQ,CAAC,IAAA,EAAM,OAAO;AAAA;AACxB;AACF;AACF,GACF;AACF;;ACzCA,MAAA,CAAA,gCAAA,CAAA,wBAAA,CAAA,iCAAA,CAAA,WAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;;AAMA,MAAA,CAAA,sBAAA,CAAA,8BAAA,CAAA,mBAAA,CAAA,oBAAA,CAAA,iBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,wCAAA,CAAA;;AAOA,MAAA,CAAA,aAAA,CAAA,WAAA,CAAA,kBAAA,CAAA,yBAAA,CAAA,6BAAA,CAAA,wBAAA,CAAA,uBAAA,CAAA,GAAA,MAAA,YAAA,CAAA,8BAAA,CAAA;AAUA,MAAA,CAAA,OAAA,CAAA,GAAA,MAAA,YAAA,CAAA,OAAA,CAAA;AAaO,SAAS,+BAAA,CAAgC;AAAA,EAC9C,UAAA,EAAY,cAAA;AAAA,EACZ,QAAA;AAAA,EACA;AACF,CAAA,EAAsC;AACpC,EAAA,MAAM,EAAE,UAAA,EAAY,mBAAA,EAAqB,0BAAA,KACvC,oBAAA,EAAqB;AAEvB,EAAA,MAAM,cAAA,GAAiB,wBAAwB,UAAU,CAAA;AAEzD,EAAA,MAAM,0BAAA,GAA6B,mBAAA;AAAA,IACjC;AAAA,GACF;AAEA,EAAA,MAAM,aAAA,GAAgB,QAAQ,MAAM;AAClC,IAAA,IAAI,gBAAgB,MAAA,EAAQ;AAC1B,MAAA,OAAO,cAAA,CAAe,MAAA;AAAA,IACxB;AAEA,IAAA,OAAO,EAAC;AAAA,EACV,CAAA,EAAG,CAAC,cAAA,EAAgB,MAAM,CAAC,CAAA;AAE3B,EAAA,MAAM,OAAO,iBAAA,CAAkB;AAAA,IAC7B,QAAA,EAAUA,EAAY,0BAA0B,CAAA;AAAA,IAChD;AAAA,GACD,CAAA;AACD,EAAA,MAAM,EAAE,OAAA,EAAS,KAAA,EAAO,YAAA,EAAa,GAAI,IAAA;AAEzC,EAAA,MAAM,mBAAA,GAAsB,QAAQ,MAAM;AACxC,IAAA,MAAM,aAAA,GAAgB,iBAAiB,cAAc,CAAA;AAErD,IAAA,OAAO,wBAAA;AAAA,MACL,uBAAA;AAAA,MACA,aAAA;AAAA,MACA;AAAA,KACF;AAAA,EACF,CAAA,EAAG,CAAC,mBAAA,EAAqB,cAAc,CAAC,CAAA;AAExC,EAAA,MAAM,QAAA,GAAW,YAAA;AAAA,IAAa,CAAC,IAAA,KAC7B,0BAAA;AAAA,MACE,CAAC,WAAA,KAAgB;AACf,QAAA,MAAM,WAAA,GAAc;AAAA,UAClB,GAAG;AAAA,SACL;AACA,QAAA,gCAAA;AAAA,UACE,WAAA;AAAA,UACA,uBAAA;AAAA,UACA,iBAAiB,cAAc,CAAA;AAAA,UAC/B;AAAA,SACF;AACA,QAAA,WAAA,CAAY,eAAA;AAAA,UACV,WAAA;AAAA,UACA,QAAA;AAAA,UACA,WAAA;AAAA,UACA,mBAAA,CAAoB;AAAA,SACtB;AAAA,MACF,CAAA;AAAA,MACA;AAAA,QACE,cAAA,EAAgB,6CAAA;AAAA,QAChB,WAAW,MAAM;AACf,UAAA,MAAA,EAAO;AAAA,QACT;AAAA;AACF;AACF,GACF;AAEA,EAAA,8BAAA,CAA+B,EAAE,OAAA,EAAS,KAAA,EAAO,QAAA,EAAU,CAAA;AAE3D,EAAA,uBACEC,sBAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,+FAAA,EACb,QAAA,EAAA;AAAA,oBAAAC,qBAAA,CAAC,cAAA,EAAA,EAAe,CAAA;AAAA,oBAChBA,qBAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,0EAAA;AAAA,QACV,KAAA,EACE;AAAA,UACE,qBAAA,EAAuB;AAAA,SACzB;AAAA,QAGF,QAAA,kBAAAD,sBAAA,CAAC,MAAA,EAAA,EAAK,QAAA,EAAoB,SAAA,EAAU,4BAAA,EAClC,QAAA,EAAA;AAAA,0BAAAC,qBAAA,CAAC,SAAI,SAAA,EAAU,YAAA,EACb,QAAA,kBAAAA,qBAAA,CAAC,WAAA,EAAA,EACC,iDAAC,kBAAA,EAAA,EACC,QAAA,EAAA;AAAA,4BAAAD,sBAAA,CAAC,wBAAA,EAAA,EACC,QAAA,EAAA;AAAA,8BAAAC,qBAAA,CAAC,2BAAwB,QAAA,EAAA,gCAAA,EAEzB,CAAA;AAAA,8BACAA,qBAAA,CAAC,iCAA8B,QAAA,EAAA,8DAAA,EAE/B;AAAA,aAAA,EACF,CAAA;AAAA,4BACAA,qBAAA,CAAC,yBAAA,EAAA,EAA0B,SAAA,EAAU,gBAAA,EACnC,QAAA,kBAAAA,qBAAA;AAAA,cAAC,sBAAA;AAAA,cAAA;AAAA,gBACC;AAAA;AAAA,aACF,EACF;AAAA,WAAA,EACF,GACF,CAAA,EACF,CAAA;AAAA,0BAEAA,qBAAA;AAAA,YAAC,aAAA;AAAA,YAAA;AAAA,cACC,IAAA;AAAA,cACA,qBAAA,EACE,CAAC,cAAA,IACD,iCAAA,CAAkC,mBAAmB;AAAA;AAAA;AAEzD,SAAA,EACF;AAAA;AAAA;AACF,GAAA,EACF,CAAA;AAEJ;;ACtJA,MAAA,CAAA,0BAAA,CAAA,aAAA,CAAA,GAAA,MAAA,YAAA,CAAA,oCAAA,CAAA;AASA,YAAe,0BAAA,CAA2B;AAAA,EACxC,YAAA,EAAc;AAAA,IACZ,SAAA,EAAW;AAAA,GACb;AAAA,EACA,SAAS,EAAC;AAAA,EACV,YAAY,CAAC,EAAE,WAAU,EAAG,EAAE,WAAU,KAAM;AAC5C,IAAA,SAAA,CAAU,0BAAA;AAAA,MACR,SAAA;AAAA,MACA;AAAA,KACF;AACA,IAAA,OAAO,EAAC;AAAA,EACV;AACF,CAAC,CAAA;;;;"}