@dxos/plugin-script 0.7.5-labs.071a3e2 → 0.7.5-labs.401163d
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/{ScriptContainer-LGW52UAJ.mjs → ScriptContainer-JHAVO2KA.mjs} +36 -11
- package/dist/lib/browser/ScriptContainer-JHAVO2KA.mjs.map +7 -0
- package/dist/lib/browser/artifact-YCIVHFSS.mjs +243 -0
- package/dist/lib/browser/artifact-YCIVHFSS.mjs.map +7 -0
- package/dist/lib/browser/{chunk-VIX22OMB.mjs → chunk-UDLKK74O.mjs} +13 -4
- package/dist/lib/browser/chunk-UDLKK74O.mjs.map +7 -0
- package/dist/lib/browser/{chunk-2UXYECEH.mjs → chunk-WAXHENSY.mjs} +4 -4
- package/dist/lib/browser/{chunk-2UXYECEH.mjs.map → chunk-WAXHENSY.mjs.map} +2 -2
- package/dist/lib/browser/{compiler-K3FNRDDN.mjs → compiler-YY2XSKHQ.mjs} +2 -4
- package/dist/lib/browser/compiler-YY2XSKHQ.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +10 -10
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-CMKQTLBG.mjs → intent-resolver-RV3YXIVN.mjs} +2 -2
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-XACNR5NR.mjs → react-surface-ETY4XKFG.mjs} +2 -2
- package/dist/lib/node/{ScriptContainer-UI2MDBYG.cjs → ScriptContainer-EBIT6CT4.cjs} +41 -14
- package/dist/lib/node/ScriptContainer-EBIT6CT4.cjs.map +7 -0
- package/dist/lib/node/artifact-IPGGY2Z2.cjs +262 -0
- package/dist/lib/node/artifact-IPGGY2Z2.cjs.map +7 -0
- package/dist/lib/node/{chunk-73345ZL6.cjs → chunk-3VDHZ54A.cjs} +6 -6
- package/dist/lib/node/{chunk-73345ZL6.cjs.map → chunk-3VDHZ54A.cjs.map} +2 -2
- package/dist/lib/node/{chunk-PKT5DD3O.cjs → chunk-JKPNBFU2.cjs} +12 -5
- package/dist/lib/node/chunk-JKPNBFU2.cjs.map +7 -0
- package/dist/lib/node/{compiler-P2HQB22H.cjs → compiler-UIBLKJKG.cjs} +6 -6
- package/dist/lib/node/compiler-UIBLKJKG.cjs.map +7 -0
- package/dist/lib/node/index.cjs +14 -13
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-V5ASU5DW.cjs → intent-resolver-WFLQNAID.cjs} +6 -6
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-Y3RD5FW7.cjs → react-surface-OIQJFA7P.cjs} +9 -9
- package/dist/lib/node-esm/{ScriptContainer-F7SNP53Z.mjs → ScriptContainer-QVFTCAML.mjs} +36 -11
- package/dist/lib/node-esm/ScriptContainer-QVFTCAML.mjs.map +7 -0
- package/dist/lib/node-esm/artifact-7H4HGX5W.mjs +245 -0
- package/dist/lib/node-esm/artifact-7H4HGX5W.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-NBAL5DXN.mjs → chunk-5CEKSMA5.mjs} +13 -4
- package/dist/lib/node-esm/chunk-5CEKSMA5.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-PRGBYF4B.mjs → chunk-WCAUDRF4.mjs} +4 -4
- package/dist/lib/node-esm/{chunk-PRGBYF4B.mjs.map → chunk-WCAUDRF4.mjs.map} +2 -2
- package/dist/lib/node-esm/{compiler-PDN46H4Y.mjs → compiler-XTXFGZJM.mjs} +2 -4
- package/dist/lib/node-esm/compiler-XTXFGZJM.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +10 -10
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-75BHFRUK.mjs → intent-resolver-CYT6IYYH.mjs} +2 -2
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-PKUVZH4S.mjs → react-surface-N67GNKC2.mjs} +2 -2
- package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/artifact.d.ts +11 -0
- package/dist/types/src/capabilities/artifact.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +1 -0
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/components/FrameContainer/FrameContainer.d.ts +2 -2
- package/dist/types/src/components/FrameContainer/FrameContainer.d.ts.map +1 -1
- package/dist/types/src/hooks/deploy.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +0 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/templates/discord.d.ts +3 -0
- package/dist/types/src/templates/discord.d.ts.map +1 -0
- package/dist/types/src/templates/forex-effect.d.ts.map +1 -1
- package/dist/types/src/templates/index.d.ts.map +1 -1
- package/package.json +41 -42
- package/src/ScriptPlugin.tsx +6 -1
- package/src/capabilities/artifact.ts +219 -0
- package/src/capabilities/compiler.ts +1 -1
- package/src/capabilities/index.ts +1 -0
- package/src/components/FrameContainer/FrameContainer.tsx +4 -3
- package/src/components/ScriptSettingsPanel.tsx +2 -2
- package/src/components/TypescriptEditor/TypescriptEditor.tsx +2 -2
- package/src/hooks/deploy.ts +15 -4
- package/src/index.ts +0 -1
- package/src/templates/discord.ts +88 -0
- package/src/templates/forex-effect.ts +16 -14
- package/src/templates/index.ts +10 -2
- package/dist/lib/browser/ScriptContainer-LGW52UAJ.mjs.map +0 -7
- package/dist/lib/browser/chunk-SDHKTS6H.mjs +0 -237
- package/dist/lib/browser/chunk-SDHKTS6H.mjs.map +0 -7
- package/dist/lib/browser/chunk-VIX22OMB.mjs.map +0 -7
- package/dist/lib/browser/compiler-K3FNRDDN.mjs.map +0 -7
- package/dist/lib/node/ScriptContainer-UI2MDBYG.cjs.map +0 -7
- package/dist/lib/node/chunk-PKT5DD3O.cjs.map +0 -7
- package/dist/lib/node/chunk-T4TXCRN5.cjs +0 -260
- package/dist/lib/node/chunk-T4TXCRN5.cjs.map +0 -7
- package/dist/lib/node/compiler-P2HQB22H.cjs.map +0 -7
- package/dist/lib/node-esm/ScriptContainer-F7SNP53Z.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-G76M6O46.mjs +0 -239
- package/dist/lib/node-esm/chunk-G76M6O46.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-NBAL5DXN.mjs.map +0 -7
- package/dist/lib/node-esm/compiler-PDN46H4Y.mjs.map +0 -7
- package/dist/types/src/bundler/bundler.d.ts +0 -39
- package/dist/types/src/bundler/bundler.d.ts.map +0 -1
- package/dist/types/src/bundler/bundler.test.d.ts +0 -2
- package/dist/types/src/bundler/bundler.test.d.ts.map +0 -1
- package/dist/types/src/bundler/index.d.ts +0 -2
- package/dist/types/src/bundler/index.d.ts.map +0 -1
- package/src/bundler/bundler.test.ts +0 -55
- package/src/bundler/bundler.ts +0 -250
- package/src/bundler/index.ts +0 -5
- /package/dist/lib/browser/{intent-resolver-CMKQTLBG.mjs.map → intent-resolver-RV3YXIVN.mjs.map} +0 -0
- /package/dist/lib/browser/{react-surface-XACNR5NR.mjs.map → react-surface-ETY4XKFG.mjs.map} +0 -0
- /package/dist/lib/node/{intent-resolver-V5ASU5DW.cjs.map → intent-resolver-WFLQNAID.cjs.map} +0 -0
- /package/dist/lib/node/{react-surface-Y3RD5FW7.cjs.map → react-surface-OIQJFA7P.cjs.map} +0 -0
- /package/dist/lib/node-esm/{intent-resolver-75BHFRUK.mjs.map → intent-resolver-CYT6IYYH.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-surface-PKUVZH4S.mjs.map → react-surface-N67GNKC2.mjs.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/ScriptSettings/ScriptSettings.tsx", "../../../src/components/ScriptSettingsPanel.tsx", "../../../src/components/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';\nimport { useClient } from '@dxos/react-client';\nimport { Button, Select, useTranslation } from '@dxos/react-ui';\nimport { type EditorInputMode, EditorInputModes } from '@dxos/react-ui-editor';\nimport { DeprecatedFormContainer, DeprecatedFormInput } from '@dxos/react-ui-form';\n\nimport { SCRIPT_PLUGIN } from '../../meta';\nimport { type ScriptSettingsProps } from '../../types';\n\nexport const ScriptSettings = ({ settings }: { settings: ScriptSettingsProps }) => {\n const { t } = useTranslation(SCRIPT_PLUGIN);\n const client = useClient();\n\n // TODO(burdon): Check token.\n const handleAuthenticate = async () => {\n const { identityKey } = client.halo.identity.get()!;\n await client.halo.writeCredentials([\n {\n issuer: identityKey,\n issuanceDate: new Date(),\n subject: {\n id: identityKey,\n assertion: {\n '@type': 'dxos.halo.credentials.ServiceAccess',\n serverName: 'hub.dxos.network',\n serverKey: identityKey,\n identityKey,\n capabilities: ['composer:beta'],\n },\n },\n } satisfies Credential,\n ]);\n };\n\n return (\n <DeprecatedFormContainer>\n {/* TODO(wittjosiah): Hide outside of dev environments. */}\n <DeprecatedFormInput label={t('authenticate action label')}>\n <Button onClick={handleAuthenticate}>{t('authenticate button label')}</Button>\n </DeprecatedFormInput>\n\n <DeprecatedFormInput label={t('editor input mode label')}>\n <Select.Root\n value={settings.editorInputMode ?? 'default'}\n onValueChange={(value) => {\n settings.editorInputMode = value as EditorInputMode;\n }}\n >\n <Select.TriggerButton placeholder={t('select editor input mode placeholder')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {EditorInputModes.map((mode) => (\n <Select.Option key={mode} value={mode}>\n {t(`settings editor input mode ${mode} label`)}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </DeprecatedFormInput>\n </DeprecatedFormContainer>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Octokit } from '@octokit/core';\nimport React, { type ChangeEvent, useCallback, useEffect, useState } from 'react';\n\nimport { createIntent, SettingsAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { FunctionType, type ScriptType, getInvocationUrl, getUserFunctionUrlInMetadata } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { useClient } from '@dxos/react-client';\nimport { Filter, getMeta, getSpace, useQuery } from '@dxos/react-client/echo';\nimport { Button, Clipboard, Input, Separator,
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';\nimport { useClient } from '@dxos/react-client';\nimport { Button, Select, useTranslation } from '@dxos/react-ui';\nimport { type EditorInputMode, EditorInputModes } from '@dxos/react-ui-editor';\nimport { DeprecatedFormContainer, DeprecatedFormInput } from '@dxos/react-ui-form';\n\nimport { SCRIPT_PLUGIN } from '../../meta';\nimport { type ScriptSettingsProps } from '../../types';\n\nexport const ScriptSettings = ({ settings }: { settings: ScriptSettingsProps }) => {\n const { t } = useTranslation(SCRIPT_PLUGIN);\n const client = useClient();\n\n // TODO(burdon): Check token.\n const handleAuthenticate = async () => {\n const { identityKey } = client.halo.identity.get()!;\n await client.halo.writeCredentials([\n {\n issuer: identityKey,\n issuanceDate: new Date(),\n subject: {\n id: identityKey,\n assertion: {\n '@type': 'dxos.halo.credentials.ServiceAccess',\n serverName: 'hub.dxos.network',\n serverKey: identityKey,\n identityKey,\n capabilities: ['composer:beta'],\n },\n },\n } satisfies Credential,\n ]);\n };\n\n return (\n <DeprecatedFormContainer>\n {/* TODO(wittjosiah): Hide outside of dev environments. */}\n <DeprecatedFormInput label={t('authenticate action label')}>\n <Button onClick={handleAuthenticate}>{t('authenticate button label')}</Button>\n </DeprecatedFormInput>\n\n <DeprecatedFormInput label={t('editor input mode label')}>\n <Select.Root\n value={settings.editorInputMode ?? 'default'}\n onValueChange={(value) => {\n settings.editorInputMode = value as EditorInputMode;\n }}\n >\n <Select.TriggerButton placeholder={t('select editor input mode placeholder')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {EditorInputModes.map((mode) => (\n <Select.Option key={mode} value={mode}>\n {t(`settings editor input mode ${mode} label`)}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </DeprecatedFormInput>\n </DeprecatedFormContainer>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Octokit } from '@octokit/core';\nimport React, { type ChangeEvent, useCallback, useEffect, useState } from 'react';\n\nimport { createIntent, SettingsAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { FunctionType, type ScriptType, getInvocationUrl, getUserFunctionUrlInMetadata } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { useClient } from '@dxos/react-client';\nimport { Filter, getMeta, getSpace, useQuery } from '@dxos/react-client/echo';\nimport { Button, Clipboard, Input, Separator, useControlledState, useTranslation } from '@dxos/react-ui';\nimport { AccessTokenType } from '@dxos/schema';\n\nimport { SCRIPT_PLUGIN } from '../meta';\n\n// TODO(wittjosiah): Factor out.\n// From https://stackoverflow.com/a/67243723/2804332\nconst kebabize = (str: string) => str.replace(/[A-Z]+(?![a-z])|[A-Z]/g, ($, ofs) => (ofs ? '-' : '') + $.toLowerCase());\n\nexport type ScriptSettingsPanelProps = {\n script: ScriptType;\n};\n\nexport const ScriptSettingsPanel = ({ script }: ScriptSettingsPanelProps) => {\n const { t } = useTranslation(SCRIPT_PLUGIN);\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const client = useClient();\n const space = getSpace(script);\n const [fn] = useQuery(space, Filter.schema(FunctionType, { source: script }));\n const [githubToken] = useQuery(space, Filter.schema(AccessTokenType, { source: 'github.com' }));\n const gistKey = getMeta(script).keys.find(({ source }) => source === 'github.com');\n const [gistUrl, setGistUrl] = useState<string | undefined>();\n\n useEffect(() => {\n const token = githubToken?.token;\n const gistId = gistKey?.id;\n if (!token || !gistId) {\n setGistUrl(undefined);\n return;\n }\n\n const timeout = setTimeout(async () => {\n try {\n const octokit = new Octokit({ auth: githubToken.token });\n const response = await octokit.request('GET /gists/{gist_id}', {\n gist_id: gistId,\n });\n setGistUrl(response.data.html_url);\n } catch (err) {\n log.catch(err);\n setGistUrl(undefined);\n }\n });\n\n return () => clearTimeout(timeout);\n }, [githubToken, gistKey]);\n\n const [binding, setBinding] = useControlledState(fn?.binding ?? '');\n const handleBindingChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n setBinding(event.target.value);\n },\n [setBinding],\n );\n const handleBindingBlur = useCallback(() => {\n fn.binding = binding;\n }, [fn, binding]);\n\n const functionPath = fn && getUserFunctionUrlInMetadata(getMeta(fn));\n const functionUrl =\n functionPath &&\n getInvocationUrl(functionPath, client.config.values.runtime?.services?.edge?.url ?? '', {\n spaceId: space?.id,\n });\n\n const handleOpenTokenManager = useCallback(\n () => dispatch(createIntent(SettingsAction.Open, { plugin: 'dxos.org/plugin/token-manager' })),\n [],\n );\n\n const [publishing, setPublishing] = useState(false);\n const handlePublish = useCallback(async () => {\n setPublishing(true);\n const octokit = new Octokit({ auth: githubToken.token });\n const source = await script.source.load();\n const filename = script.name ? kebabize(script.name) : 'composer-script';\n const files = { [`${filename}.ts`]: { content: source.content } };\n\n try {\n // TODO(wittjosiah): Factor out to intent.\n const meta = getMeta(script);\n const githubKey = meta.keys.find(({ source }) => source === 'github.com');\n const gistId = githubKey?.id;\n if (gistId) {\n await octokit.request('PATCH /gists/{gist_id}', {\n gist_id: gistId,\n files,\n });\n } else {\n const response = await octokit.request('POST /gists', {\n public: true,\n files,\n });\n if (response.data.id) {\n meta.keys.push({ source: 'github.com', id: response.data.id });\n }\n }\n } finally {\n setPublishing(false);\n }\n }, [script, githubToken]);\n\n return (\n <>\n <div role='form' className='flex flex-col w-full p-2 gap-4'>\n <Input.Root>\n <div role='none' className='flex flex-col gap-1'>\n <Input.Label>{t('description label')}</Input.Label>\n <Input.TextInput\n placeholder={t('description placeholder')}\n value={script.description ?? ''}\n onChange={(event) => {\n script.description = event.target.value;\n }}\n />\n </div>\n </Input.Root>\n </div>\n {fn && functionUrl && (\n <>\n <Separator />\n <div role='form' className='flex flex-col w-full p-2 gap-4'>\n <h2>{t('remote function settings heading')}</h2>\n <Input.Root>\n <div role='none' className='flex flex-col gap-1'>\n <Input.Label>{t('function url label')}</Input.Label>\n <div role='none' className='flex gap-1'>\n <Input.TextInput\n disabled\n value={functionUrl}\n onChange={(event) => {\n fn.name = event.target.value;\n }}\n />\n <Clipboard.IconButton value={functionUrl} />\n </div>\n </div>\n </Input.Root>\n <Input.Root>\n <div role='none' className='flex flex-col gap-1'>\n <Input.Label>{t('function binding label')}</Input.Label>\n <Input.TextInput\n placeholder={t('function binding placeholder')}\n value={binding}\n onChange={handleBindingChange}\n onBlur={handleBindingBlur}\n />\n </div>\n </Input.Root>\n </div>\n </>\n )}\n <Separator />\n <div className='flex flex-col w-full p-2 gap-4'>\n <div>\n <h2>{t('script publish settings label')}</h2>\n <p className='text-description text-sm'>{t('script publish settings description')}</p>\n </div>\n {!githubToken && (\n <div className='flex flex-col items-center justify-center gap-2'>\n <span>{t('no github token label')}</span>\n <Button onClick={handleOpenTokenManager}>{t('open token manager label')}</Button>\n </div>\n )}\n {githubToken && (\n <div className='flex justify-end gap-2'>\n {gistUrl && <Clipboard.IconButton value={gistUrl} />}\n <Button disabled={publishing} onClick={handlePublish}>\n {t(publishing ? 'publishing label' : 'publish label')}\n </Button>\n </div>\n )}\n </div>\n </>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport * from './ScriptSettings';\nexport * from './ScriptSettingsPanel';\n\nexport const AutomationPanel = lazy(() => import('./AutomationPanel'));\nexport const ScriptContainer = lazy(() => import('./ScriptContainer'));\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
|
-
"names": ["import_react", "import_react_client", "import_react_ui", "ScriptSettings", "settings", "t", "useTranslation", "SCRIPT_PLUGIN", "client", "useClient", "handleAuthenticate", "identityKey", "halo", "identity", "get", "writeCredentials", "issuer", "issuanceDate", "Date", "subject", "id", "assertion", "serverName", "serverKey", "capabilities", "React", "DeprecatedFormContainer", "DeprecatedFormInput", "label", "Button", "onClick", "Select", "Root", "value", "editorInputMode", "onValueChange", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "EditorInputModes", "map", "mode", "Option", "key", "kebabize", "str", "replace", "$", "ofs", "toLowerCase", "ScriptSettingsPanel", "script", "dispatchPromise", "dispatch", "useIntentDispatcher", "space", "getSpace", "fn", "useQuery", "Filter", "schema", "FunctionType", "source", "githubToken", "AccessTokenType", "gistKey", "getMeta", "keys", "find", "gistUrl", "setGistUrl", "useState", "useEffect", "token", "gistId", "undefined", "timeout", "setTimeout", "octokit", "Octokit", "auth", "response", "request", "gist_id", "data", "html_url", "err", "log", "catch", "clearTimeout", "binding", "setBinding", "
|
|
6
|
+
"names": ["import_react", "import_react_client", "import_react_ui", "ScriptSettings", "settings", "t", "useTranslation", "SCRIPT_PLUGIN", "client", "useClient", "handleAuthenticate", "identityKey", "halo", "identity", "get", "writeCredentials", "issuer", "issuanceDate", "Date", "subject", "id", "assertion", "serverName", "serverKey", "capabilities", "React", "DeprecatedFormContainer", "DeprecatedFormInput", "label", "Button", "onClick", "Select", "Root", "value", "editorInputMode", "onValueChange", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "EditorInputModes", "map", "mode", "Option", "key", "kebabize", "str", "replace", "$", "ofs", "toLowerCase", "ScriptSettingsPanel", "script", "dispatchPromise", "dispatch", "useIntentDispatcher", "space", "getSpace", "fn", "useQuery", "Filter", "schema", "FunctionType", "source", "githubToken", "AccessTokenType", "gistKey", "getMeta", "keys", "find", "gistUrl", "setGistUrl", "useState", "useEffect", "token", "gistId", "undefined", "timeout", "setTimeout", "octokit", "Octokit", "auth", "response", "request", "gist_id", "data", "html_url", "err", "log", "catch", "clearTimeout", "binding", "setBinding", "useControlledState", "handleBindingChange", "useCallback", "event", "target", "handleBindingBlur", "functionPath", "getUserFunctionUrlInMetadata", "functionUrl", "getInvocationUrl", "config", "values", "runtime", "services", "edge", "url", "spaceId", "handleOpenTokenManager", "createIntent", "SettingsAction", "Open", "plugin", "publishing", "setPublishing", "handlePublish", "load", "filename", "name", "files", "content", "meta", "githubKey", "public", "push", "div", "role", "className", "Input", "Label", "TextInput", "description", "onChange", "Separator", "h2", "disabled", "Clipboard", "IconButton", "onBlur", "p", "span", "AutomationPanel", "lazy", "ScriptContainer"]
|
|
7
7
|
}
|
|
@@ -16,17 +16,18 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var chunk_JKPNBFU2_exports = {};
|
|
20
|
+
__export(chunk_JKPNBFU2_exports, {
|
|
21
21
|
templates: () => templates
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
23
|
+
module.exports = __toCommonJS(chunk_JKPNBFU2_exports);
|
|
24
24
|
var chat_default = "//\n// Copyright 2024 DXOS.org\n//\n\n// @ts-ignore\nimport { transformServerSentEvents } from 'https://esm.sh/@dxos/script-toolbox';\n\n/**\n * Chatbot that answers questions based on the context data.\n */\nexport default async ({\n event: {\n data: { request },\n },\n context: { space, ai },\n}: any) => {\n const textBody = await request.text();\n let parsedRequest: any;\n try {\n parsedRequest = JSON.parse(textBody);\n } catch (err) {\n const answer = await ai.run('@cf/meta/llama-3.1-8b-instruct', {\n stream: true,\n prompt: `\n Using only the context data below to answer the user's question.\n If you cannot answer the question from the provided content, then reply with \"I don't know.\"\n\n CONTEXT:\n ${await getContext({ space })}\n\n QUESTION:\n ${textBody}\n `,\n });\n return new Response(transformServerSentEvents(answer));\n }\n\n const promptId = parsedRequest.trigger.promptId;\n const promptObject = await space.crud.query({ id: promptId }).first();\n\n if (parsedRequest.data.objects.length !== 1) {\n return new Response('Message batches not supported.');\n }\n\n const messageId = parsedRequest.data.objects[0];\n let message;\n try {\n message = await space.crud.query({ id: messageId }).first();\n } catch (err) {\n return new Response('Message not replicated yet.', { status: 409 });\n }\n\n if (message.text.includes('--------')) {\n return new Response('Message was already processed.');\n }\n\n let prompt = promptObject.template;\n for (const input of promptObject.inputs) {\n let value: string | null = null;\n if (input.type === ChainInputType.VALUE) {\n value = String(input.value);\n } else if (input.type === ChainInputType.RETRIEVER) {\n value = await getContext({ space });\n } else if (input.type === ChainInputType.PASS_THROUGH) {\n value = message.text;\n }\n if (value) {\n prompt = prompt.replaceAll(`{${input.name}}`, value);\n }\n }\n\n const answer = await ai.run('@cf/meta/llama-3.1-8b-instruct', {\n stream: false,\n prompt,\n });\n const response = { response: answer.response, prompt, message };\n const textWithAnswer = message.text + '\\n--------\\n\\n' + answer.response;\n await space.crud.update({ id: messageId }, { text: textWithAnswer });\n\n return new Response(JSON.stringify(response));\n};\n\nconst getContext = async ({ space }: any) => {\n let context = '';\n const { objects: docs } = await space.crud.query({ __typename: 'dxos.org/type/Document' }).run();\n for (const doc of docs) {\n const { content } = await space.crud.query({ id: doc.content }).first();\n context += content + '\\n\\n';\n }\n return context;\n};\n\nenum ChainInputType {\n VALUE = 0,\n PASS_THROUGH = 1,\n RETRIEVER = 2,\n FUNCTION = 3,\n QUERY = 4,\n RESOLVER = 5,\n CONTEXT = 6,\n SCHEMA = 7,\n}\n";
|
|
25
25
|
var chess_default = "//\n// Copyright 2024 DXOS.org\n//\n\n// @ts-ignore\nimport { Chess } from 'https://esm.sh/chess.js@0.13.1';\n\n/**\n * Plays a random move in a chess game.\n */\nexport default async ({\n event: {\n data: { request },\n },\n context: { space },\n}: any) => {\n const {\n data: {\n objects: [gameId],\n player = 'b',\n },\n } = await request.json();\n\n const { pgn } = await space.crud.query({ id: gameId }).first();\n const game = new Chess();\n game.load_pgn(pgn);\n if (game.turn() !== player) {\n return new Response('Invalid turn', { status: 409 });\n }\n\n const moves = game.moves();\n const move = moves[Math.floor(Math.random() * moves.length)];\n if (!move) {\n return new Response('No legal moves', { status: 406 });\n }\n\n game.move(move);\n const newPgn = game.pgn();\n await space.crud.update({ id: gameId }, { pgn: newPgn });\n return new Response(game.ascii());\n};\n";
|
|
26
|
+
var discord_default = "//\n// Copyright 2025 DXOS.org\n//\n\n// @ts-ignore\nimport { createStatic, EchoObject, defineFunction, DXN, Filter, ObjectId, S } from 'dxos:functions';\nimport {\n FetchHttpClient,\n // @ts-ignore\n} from 'https://esm.sh/@effect/platform@0.77.2?deps=effect@3.13.3';\n// @ts-ignore\nimport { DiscordConfig, DiscordREST, DiscordRESTMemoryLive } from 'https://esm.sh/dfx@0.113.0?deps=effect@3.13.3';\n// @ts-ignore\nimport { Effect, Config, Redacted } from 'https://esm.sh/effect@3.13.3';\n\nconst MessageSchema = S.Struct({\n id: S.String,\n foreignId: S.Number,\n content: S.String,\n}).pipe(EchoObject('example.com/type/Message', '0.1.0'));\n\nexport default defineFunction({\n inputSchema: S.Struct({\n // TODO(wittjosiah): Remove. This is used to provide a terminal for a cron trigger.\n tick: S.optional(S.String),\n channelId: S.String,\n pageSize: S.optional(S.Number),\n queueId: S.String,\n }),\n\n outputSchema: S.Struct({\n newMessages: S.Number,\n }),\n\n handler: ({\n event: {\n data: { channelId, queueId, pageSize = 5 },\n },\n context: { space },\n }: any) =>\n Effect.gen(function* () {\n const { token } = yield* Effect.tryPromise(() =>\n space.db.query(Filter.typename('dxos.org/type/AccessToken', { source: 'discord.com' })).first(),\n );\n\n const enqueueMessages = Effect.gen(function* () {\n const rest = yield* DiscordREST;\n const { objects } = yield* Effect.tryPromise(() => space.queues.queryQueue(DXN.parse(queueId)));\n\n let newMessages = 0;\n let lastMessage = objects.at(-1);\n while (true) {\n // NOTE: If `after` is specified, the specified message is included in the results.\n const messages = yield* rest\n .getChannelMessages(channelId, { after: lastMessage?.foreignId, limit: pageSize })\n .pipe((res: any) => res.json);\n if (messages.length === 1) {\n break;\n }\n const queueMessages = messages\n .map((message: any) =>\n createStatic(MessageSchema, {\n id: ObjectId.random(),\n foreignId: parseInt(message.id),\n content: message.content,\n }),\n )\n .slice(lastMessage ? 1 : 0)\n .toReversed();\n yield* Effect.tryPromise(() => space.queues.insertIntoQueue(DXN.parse(queueId), queueMessages));\n newMessages += queueMessages.length;\n lastMessage = queueMessages.at(-1);\n }\n\n return { newMessages };\n }).pipe(\n Effect.provide(DiscordRESTMemoryLive),\n Effect.provide(\n DiscordConfig.layerConfig({\n token: Config.succeed(Redacted.make(token)),\n }),\n ),\n Effect.provide(FetchHttpClient.layer),\n );\n\n return yield* enqueueMessages;\n }),\n});\n";
|
|
26
27
|
var echo_default = "//\n// Copyright 2024 DXOS.org\n//\n\n/**\n * Echos the request data.\n */\nexport default async ({\n event: {\n data: { request },\n },\n}: any) => {\n const data = await request.json();\n return new Response(JSON.stringify(data ?? {}), {\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n};\n";
|
|
27
28
|
var email_default = "//\n// Copyright 2024 DXOS.org\n//\n\n/**\n * Appends a message to the end of a Document configured through a trigger.\n * Trigger must have a targetDocumentId field set in Meta.\n */\nexport default async ({\n event: {\n data: { request },\n },\n context: { space },\n}: any) => {\n const { data, trigger } = (await request.json()) as RequestPayload;\n\n const documentId = trigger.meta.targetDocumentId;\n const document = await space.db.query({ id: documentId }, { format: 'plain' }).first();\n\n const contentId = document.content['/'].split(':')[3];\n const documentContent = await space.db.query({ id: contentId }, { format: 'plain' }).first();\n const modifiedContent = [\n documentContent.content,\n '',\n '---',\n `**From:** ${data.from}`,\n `**Subject:** ${data.subject}`,\n `**Date:** ${data.created}`,\n '',\n data.body,\n ].join('\\n');\n\n await space.db.update({ id: contentId }, { content: modifiedContent });\n\n return new Response(JSON.stringify({ success: true }));\n};\n\ntype RequestPayload = {\n data: { from: string; subject: string; created: string; body: string };\n trigger: { meta: { targetDocumentId: string } };\n};\n";
|
|
29
|
+
var forex_effect_default = "//\n// Copyright 2025 DXOS.org\n//\n\n// @ts-ignore\nimport { defineFunction, S } from 'dxos:functions';\nimport {\n HttpClient,\n HttpClientRequest,\n FetchHttpClient,\n // @ts-ignore\n} from 'https://esm.sh/@effect/platform@0.77.2?deps=effect@3.13.3';\n// @ts-ignore\nimport { Effect, Schedule } from 'https://esm.sh/effect@3.13.3';\n\n/**\n * Returns the exchange rate between two currencies.\n */\nexport default defineFunction({\n inputSchema: S.Struct({\n from: S.String.annotations({ description: 'The source currency' }),\n to: S.String.annotations({ description: 'The target currency' }),\n }),\n\n outputSchema: S.Struct({\n rate: S.Number,\n }),\n\n handler: async ({\n event: {\n data: { from, to },\n },\n }: any) =>\n Effect.gen(function* () {\n const res = yield* HttpClientRequest.get(`https://free.ratesdb.com/v1/rates?from=${from}&to=${to}`).pipe(\n HttpClient.execute,\n Effect.flatMap((res: any) => res.json),\n Effect.timeout('1 second'),\n Effect.retry(Schedule.exponential(1000).pipe(Schedule.compose(Schedule.recurs(3)))),\n Effect.scoped,\n );\n return { rate: res.data.rates[to].toString() };\n }).pipe(Effect.provide(FetchHttpClient.layer)),\n});\n";
|
|
28
30
|
var forex_default = "//\n// Copyright 2025 DXOS.org\n//\n\n// @ts-ignore\nimport { defineFunction, S } from 'dxos:functions';\n\n/**\n * Returns the exchange rate between two currencies.\n */\nexport default defineFunction({\n inputSchema: S.Struct({\n from: S.String.annotations({ description: 'The source currency' }),\n to: S.String.annotations({ description: 'The target currency' }),\n }),\n\n handler: async ({\n event: {\n data: { from, to },\n },\n }: any) => {\n const res = await fetch(`https://free.ratesdb.com/v1/rates?from=${from}&to=${to}`);\n const {\n data: { rates },\n } = await res.json();\n\n return rates[to].toString();\n },\n});\n";
|
|
29
|
-
var forex_effect_default = "//\n// Copyright 2025 DXOS.org\n//\n\n// @ts-ignore\nimport { defineFunction, S } from 'dxos:functions';\nimport {\n HttpClient,\n HttpClientRequest,\n HttpClientResponse,\n HttpClientError,\n // @ts-ignore\n} from 'https://esm.sh/@effect/platform@0.61.0?deps=effect@3.6.0';\n// @ts-ignore\nimport type { Cause } from 'https://esm.sh/effect@3.6.0';\n// @ts-ignore\nimport { Effect, Schedule } from 'https://esm.sh/effect@3.6.0';\n\n/**\n * Returns the exchange rate between two currencies.\n */\nexport default defineFunction({\n inputSchema: S.Struct({\n from: S.String.annotations({ description: 'The source currency' }),\n to: S.String.annotations({ description: 'The target currency' }),\n }),\n\n outputSchema: S.String,\n\n handler: async ({\n event: {\n data: { from, to },\n },\n }: any) =>\n HttpClientRequest.get(`https://free.ratesdb.com/v1/rates?from=${from}&to=${to}`).pipe(\n HttpClient.fetchOk,\n HttpClientResponse.json,\n Effect.timeout('1 second'),\n Effect.retry(Schedule.exponential(1000).pipe(Schedule.compose(Schedule.recurs(3)))),\n Effect.map(({ data: { rates } }: any) => rates[to].toString()),\n ),\n});\n";
|
|
30
31
|
var removeHeader = (str) => str.split("\n").slice(4).join("\n");
|
|
31
32
|
var templates = [
|
|
32
33
|
{
|
|
@@ -61,10 +62,16 @@ var templates = [
|
|
|
61
62
|
name: "Email",
|
|
62
63
|
source: removeHeader(email_default),
|
|
63
64
|
presetId: "dxos.org/function/email"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
id: "dxos.org/script/discord",
|
|
68
|
+
name: "Discord",
|
|
69
|
+
source: removeHeader(discord_default),
|
|
70
|
+
presetId: "dxos.org/function/discord"
|
|
64
71
|
}
|
|
65
72
|
];
|
|
66
73
|
// Annotate the CommonJS export names for ESM import in node:
|
|
67
74
|
0 && (module.exports = {
|
|
68
75
|
templates
|
|
69
76
|
});
|
|
70
|
-
//# sourceMappingURL=chunk-
|
|
77
|
+
//# sourceMappingURL=chunk-JKPNBFU2.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["raw-loader:./chat.ts?raw", "raw-loader:./chess.ts?raw", "raw-loader:./discord.ts?raw", "raw-loader:./echo.ts?raw", "raw-loader:./email.ts?raw", "raw-loader:./forex-effect.ts?raw", "raw-loader:./forex.ts?raw", "../../../src/templates/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\n// @ts-ignore\nimport { transformServerSentEvents } from 'https://esm.sh/@dxos/script-toolbox';\n\n/**\n * Chatbot that answers questions based on the context data.\n */\nexport default async ({\n event: {\n data: { request },\n },\n context: { space, ai },\n}: any) => {\n const textBody = await request.text();\n let parsedRequest: any;\n try {\n parsedRequest = JSON.parse(textBody);\n } catch (err) {\n const answer = await ai.run('@cf/meta/llama-3.1-8b-instruct', {\n stream: true,\n prompt: `\n Using only the context data below to answer the user's question.\n If you cannot answer the question from the provided content, then reply with \"I don't know.\"\n\n CONTEXT:\n ${await getContext({ space })}\n\n QUESTION:\n ${textBody}\n `,\n });\n return new Response(transformServerSentEvents(answer));\n }\n\n const promptId = parsedRequest.trigger.promptId;\n const promptObject = await space.crud.query({ id: promptId }).first();\n\n if (parsedRequest.data.objects.length !== 1) {\n return new Response('Message batches not supported.');\n }\n\n const messageId = parsedRequest.data.objects[0];\n let message;\n try {\n message = await space.crud.query({ id: messageId }).first();\n } catch (err) {\n return new Response('Message not replicated yet.', { status: 409 });\n }\n\n if (message.text.includes('--------')) {\n return new Response('Message was already processed.');\n }\n\n let prompt = promptObject.template;\n for (const input of promptObject.inputs) {\n let value: string | null = null;\n if (input.type === ChainInputType.VALUE) {\n value = String(input.value);\n } else if (input.type === ChainInputType.RETRIEVER) {\n value = await getContext({ space });\n } else if (input.type === ChainInputType.PASS_THROUGH) {\n value = message.text;\n }\n if (value) {\n prompt = prompt.replaceAll(`{${input.name}}`, value);\n }\n }\n\n const answer = await ai.run('@cf/meta/llama-3.1-8b-instruct', {\n stream: false,\n prompt,\n });\n const response = { response: answer.response, prompt, message };\n const textWithAnswer = message.text + '\\n--------\\n\\n' + answer.response;\n await space.crud.update({ id: messageId }, { text: textWithAnswer });\n\n return new Response(JSON.stringify(response));\n};\n\nconst getContext = async ({ space }: any) => {\n let context = '';\n const { objects: docs } = await space.crud.query({ __typename: 'dxos.org/type/Document' }).run();\n for (const doc of docs) {\n const { content } = await space.crud.query({ id: doc.content }).first();\n context += content + '\\n\\n';\n }\n return context;\n};\n\nenum ChainInputType {\n VALUE = 0,\n PASS_THROUGH = 1,\n RETRIEVER = 2,\n FUNCTION = 3,\n QUERY = 4,\n RESOLVER = 5,\n CONTEXT = 6,\n SCHEMA = 7,\n}\n", "//\n// Copyright 2024 DXOS.org\n//\n\n// @ts-ignore\nimport { Chess } from 'https://esm.sh/chess.js@0.13.1';\n\n/**\n * Plays a random move in a chess game.\n */\nexport default async ({\n event: {\n data: { request },\n },\n context: { space },\n}: any) => {\n const {\n data: {\n objects: [gameId],\n player = 'b',\n },\n } = await request.json();\n\n const { pgn } = await space.crud.query({ id: gameId }).first();\n const game = new Chess();\n game.load_pgn(pgn);\n if (game.turn() !== player) {\n return new Response('Invalid turn', { status: 409 });\n }\n\n const moves = game.moves();\n const move = moves[Math.floor(Math.random() * moves.length)];\n if (!move) {\n return new Response('No legal moves', { status: 406 });\n }\n\n game.move(move);\n const newPgn = game.pgn();\n await space.crud.update({ id: gameId }, { pgn: newPgn });\n return new Response(game.ascii());\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\n// @ts-ignore\nimport { createStatic, EchoObject, defineFunction, DXN, Filter, ObjectId, S } from 'dxos:functions';\nimport {\n FetchHttpClient,\n // @ts-ignore\n} from 'https://esm.sh/@effect/platform@0.77.2?deps=effect@3.13.3';\n// @ts-ignore\nimport { DiscordConfig, DiscordREST, DiscordRESTMemoryLive } from 'https://esm.sh/dfx@0.113.0?deps=effect@3.13.3';\n// @ts-ignore\nimport { Effect, Config, Redacted } from 'https://esm.sh/effect@3.13.3';\n\nconst MessageSchema = S.Struct({\n id: S.String,\n foreignId: S.Number,\n content: S.String,\n}).pipe(EchoObject('example.com/type/Message', '0.1.0'));\n\nexport default defineFunction({\n inputSchema: S.Struct({\n // TODO(wittjosiah): Remove. This is used to provide a terminal for a cron trigger.\n tick: S.optional(S.String),\n channelId: S.String,\n pageSize: S.optional(S.Number),\n queueId: S.String,\n }),\n\n outputSchema: S.Struct({\n newMessages: S.Number,\n }),\n\n handler: ({\n event: {\n data: { channelId, queueId, pageSize = 5 },\n },\n context: { space },\n }: any) =>\n Effect.gen(function* () {\n const { token } = yield* Effect.tryPromise(() =>\n space.db.query(Filter.typename('dxos.org/type/AccessToken', { source: 'discord.com' })).first(),\n );\n\n const enqueueMessages = Effect.gen(function* () {\n const rest = yield* DiscordREST;\n const { objects } = yield* Effect.tryPromise(() => space.queues.queryQueue(DXN.parse(queueId)));\n\n let newMessages = 0;\n let lastMessage = objects.at(-1);\n while (true) {\n // NOTE: If `after` is specified, the specified message is included in the results.\n const messages = yield* rest\n .getChannelMessages(channelId, { after: lastMessage?.foreignId, limit: pageSize })\n .pipe((res: any) => res.json);\n if (messages.length === 1) {\n break;\n }\n const queueMessages = messages\n .map((message: any) =>\n createStatic(MessageSchema, {\n id: ObjectId.random(),\n foreignId: parseInt(message.id),\n content: message.content,\n }),\n )\n .slice(lastMessage ? 1 : 0)\n .toReversed();\n yield* Effect.tryPromise(() => space.queues.insertIntoQueue(DXN.parse(queueId), queueMessages));\n newMessages += queueMessages.length;\n lastMessage = queueMessages.at(-1);\n }\n\n return { newMessages };\n }).pipe(\n Effect.provide(DiscordRESTMemoryLive),\n Effect.provide(\n DiscordConfig.layerConfig({\n token: Config.succeed(Redacted.make(token)),\n }),\n ),\n Effect.provide(FetchHttpClient.layer),\n );\n\n return yield* enqueueMessages;\n }),\n});\n", "//\n// Copyright 2024 DXOS.org\n//\n\n/**\n * Echos the request data.\n */\nexport default async ({\n event: {\n data: { request },\n },\n}: any) => {\n const data = await request.json();\n return new Response(JSON.stringify(data ?? {}), {\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\n/**\n * Appends a message to the end of a Document configured through a trigger.\n * Trigger must have a targetDocumentId field set in Meta.\n */\nexport default async ({\n event: {\n data: { request },\n },\n context: { space },\n}: any) => {\n const { data, trigger } = (await request.json()) as RequestPayload;\n\n const documentId = trigger.meta.targetDocumentId;\n const document = await space.db.query({ id: documentId }, { format: 'plain' }).first();\n\n const contentId = document.content['/'].split(':')[3];\n const documentContent = await space.db.query({ id: contentId }, { format: 'plain' }).first();\n const modifiedContent = [\n documentContent.content,\n '',\n '---',\n `**From:** ${data.from}`,\n `**Subject:** ${data.subject}`,\n `**Date:** ${data.created}`,\n '',\n data.body,\n ].join('\\n');\n\n await space.db.update({ id: contentId }, { content: modifiedContent });\n\n return new Response(JSON.stringify({ success: true }));\n};\n\ntype RequestPayload = {\n data: { from: string; subject: string; created: string; body: string };\n trigger: { meta: { targetDocumentId: string } };\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\n// @ts-ignore\nimport { defineFunction, S } from 'dxos:functions';\nimport {\n HttpClient,\n HttpClientRequest,\n FetchHttpClient,\n // @ts-ignore\n} from 'https://esm.sh/@effect/platform@0.77.2?deps=effect@3.13.3';\n// @ts-ignore\nimport { Effect, Schedule } from 'https://esm.sh/effect@3.13.3';\n\n/**\n * Returns the exchange rate between two currencies.\n */\nexport default defineFunction({\n inputSchema: S.Struct({\n from: S.String.annotations({ description: 'The source currency' }),\n to: S.String.annotations({ description: 'The target currency' }),\n }),\n\n outputSchema: S.Struct({\n rate: S.Number,\n }),\n\n handler: async ({\n event: {\n data: { from, to },\n },\n }: any) =>\n Effect.gen(function* () {\n const res = yield* HttpClientRequest.get(`https://free.ratesdb.com/v1/rates?from=${from}&to=${to}`).pipe(\n HttpClient.execute,\n Effect.flatMap((res: any) => res.json),\n Effect.timeout('1 second'),\n Effect.retry(Schedule.exponential(1000).pipe(Schedule.compose(Schedule.recurs(3)))),\n Effect.scoped,\n );\n return { rate: res.data.rates[to].toString() };\n }).pipe(Effect.provide(FetchHttpClient.layer)),\n});\n", "//\n// Copyright 2025 DXOS.org\n//\n\n// @ts-ignore\nimport { defineFunction, S } from 'dxos:functions';\n\n/**\n * Returns the exchange rate between two currencies.\n */\nexport default defineFunction({\n inputSchema: S.Struct({\n from: S.String.annotations({ description: 'The source currency' }),\n to: S.String.annotations({ description: 'The target currency' }),\n }),\n\n handler: async ({\n event: {\n data: { from, to },\n },\n }: any) => {\n const res = await fetch(`https://free.ratesdb.com/v1/rates?from=${from}&to=${to}`);\n const {\n data: { rates },\n } = await res.json();\n\n return rates[to].toString();\n },\n});\n", "//\n// Copyright 2024 DXOS.org\n//\n\n// @ts-ignore\nimport chat from './chat.ts?raw';\n// @ts-ignore\nimport chess from './chess.ts?raw';\n// @ts-ignore\nimport discord from './discord.ts?raw';\n// @ts-ignore\nimport echo from './echo.ts?raw';\n// @ts-ignore\nimport email from './email.ts?raw';\n// @ts-ignore\nimport forexEffect from './forex-effect.ts?raw';\n// @ts-ignore\nimport forex from './forex.ts?raw';\n\nconst removeHeader = (str: string) => str.split('\\n').slice(4).join('\\n');\n\nexport type Template = {\n id: string;\n name: string;\n source: string;\n presetId?: string;\n};\n\nexport const templates: Template[] = [\n {\n id: 'dxos.org/script/echo',\n name: 'Echo',\n source: removeHeader(echo),\n },\n {\n id: 'dxos.org/script/forex',\n name: 'Forex',\n source: removeHeader(forex),\n },\n {\n id: 'dxos.org/script/forex-effect',\n name: 'Forex (Effect)',\n source: removeHeader(forexEffect),\n },\n {\n id: 'dxos.org/script/gpt',\n name: 'Gpt',\n source: removeHeader(chat),\n presetId: 'dxos.org/function/gpt',\n },\n {\n id: 'dxos.org/script/chess',\n name: 'Chess',\n source: removeHeader(chess),\n presetId: 'dxos.org/function/chess',\n },\n {\n id: 'dxos.org/script/email',\n name: 'Email',\n source: removeHeader(email),\n presetId: 'dxos.org/function/email',\n },\n {\n id: 'dxos.org/script/discord',\n name: 'Discord',\n source: removeHeader(discord),\n presetId: 'dxos.org/function/discord',\n },\n];\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAA,eAAA;ACAA,IAAA,gBAAA;ACAA,IAAA,kBAAA;ACAA,IAAA,eAAA;ACAA,IAAA,gBAAA;ACAA,IAAA,uBAAA;ACAA,IAAA,gBAAA;ACmBA,IAAMA,eAAe,CAACC,QAAgBA,IAAIC,MAAM,IAAA,EAAMC,MAAM,CAAA,EAAGC,KAAK,IAAA;AAS7D,IAAMC,YAAwB;EACnC;IACEC,IAAI;IACJC,MAAM;IACNC,QAAQR,aAAaS,YAAAA;EACvB;EACA;IACEH,IAAI;IACJC,MAAM;IACNC,QAAQR,aAAaU,aAAAA;EACvB;EACA;IACEJ,IAAI;IACJC,MAAM;IACNC,QAAQR,aAAaW,oBAAAA;EACvB;EACA;IACEL,IAAI;IACJC,MAAM;IACNC,QAAQR,aAAaY,YAAAA;IACrBC,UAAU;EACZ;EACA;IACEP,IAAI;IACJC,MAAM;IACNC,QAAQR,aAAac,aAAAA;IACrBD,UAAU;EACZ;EACA;IACEP,IAAI;IACJC,MAAM;IACNC,QAAQR,aAAae,aAAAA;IACrBF,UAAU;EACZ;EACA;IACEP,IAAI;IACJC,MAAM;IACNC,QAAQR,aAAagB,eAAAA;IACrBH,UAAU;EACZ;;",
|
|
6
|
+
"names": ["removeHeader", "str", "split", "slice", "join", "templates", "id", "name", "source", "echo", "forex", "forexEffect", "chat", "presetId", "chess", "email", "discord"]
|
|
7
|
+
}
|
|
@@ -26,16 +26,16 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var compiler_UIBLKJKG_exports = {};
|
|
30
|
+
__export(compiler_UIBLKJKG_exports, {
|
|
31
31
|
default: () => compiler_default
|
|
32
32
|
});
|
|
33
|
-
module.exports = __toCommonJS(
|
|
34
|
-
var import_chunk_T4TXCRN5 = require("./chunk-T4TXCRN5.cjs");
|
|
33
|
+
module.exports = __toCommonJS(compiler_UIBLKJKG_exports);
|
|
35
34
|
var import_chunk_ALY3N6PW = require("./chunk-ALY3N6PW.cjs");
|
|
36
35
|
var import_chunk_5UH3F7TA = require("./chunk-5UH3F7TA.cjs");
|
|
37
36
|
var import_esbuild = __toESM(require("esbuild-wasm/esbuild.wasm?url"));
|
|
38
37
|
var import_app_framework = require("@dxos/app-framework");
|
|
38
|
+
var import_bundler = require("@dxos/functions/bundler");
|
|
39
39
|
var import_vfs = require("@typescript/vfs");
|
|
40
40
|
var import_typescript = __toESM(require("typescript"));
|
|
41
41
|
var import_invariant = require("@dxos/invariant");
|
|
@@ -96,9 +96,9 @@ var compiler_default = async () => {
|
|
|
96
96
|
export type FunctionHandler = ({ event, context }: { event: any; context: any }) => Promise<Response>;
|
|
97
97
|
export const functionHandler = (handler: FunctionHandler) => handler;
|
|
98
98
|
`);
|
|
99
|
-
await (0,
|
|
99
|
+
await (0, import_bundler.initializeBundler)({
|
|
100
100
|
wasmUrl: import_esbuild.default
|
|
101
101
|
});
|
|
102
102
|
return (0, import_app_framework.contributes)(import_chunk_ALY3N6PW.ScriptCapabilities.Compiler, compiler);
|
|
103
103
|
};
|
|
104
|
-
//# sourceMappingURL=compiler-
|
|
104
|
+
//# sourceMappingURL=compiler-UIBLKJKG.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/compiler.ts", "../../../src/compiler/compiler.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\n// @ts-ignore\nimport wasmUrl from 'esbuild-wasm/esbuild.wasm?url';\n\nimport { contributes } from '@dxos/app-framework';\nimport { initializeBundler } from '@dxos/functions/bundler';\n\nimport { ScriptCapabilities } from './capabilities';\nimport { Compiler } from '../compiler';\n\nexport default async () => {\n const compiler = new Compiler();\n\n await compiler.initialize();\n // TODO(wittjosiah): Fetch types for https modules.\n compiler.setFile('/src/typings.d.ts', \"declare module 'https://*';\");\n // TODO(wittjosiah): Proper function handler types.\n // TODO(wittjosiah): Remove.\n compiler.setFile(\n '/src/runtime.ts',\n `\n export const Filter: any = {};\n export type FunctionHandler = ({ event, context }: { event: any; context: any }) => Promise<Response>;\n export const functionHandler = (handler: FunctionHandler) => handler;\n `,\n );\n await initializeBundler({ wasmUrl });\n\n return contributes(ScriptCapabilities.Compiler, compiler);\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport {\n createDefaultMapFromCDN,\n createSystem,\n createVirtualTypeScriptEnvironment,\n type VirtualTypeScriptEnvironment,\n} from '@typescript/vfs';\nimport ts from 'typescript';\n\nimport { invariant } from '@dxos/invariant';\n\nconst defaultOptions: ts.CompilerOptions = {\n lib: ['DOM', 'es2022'],\n target: ts.ScriptTarget.ES2022,\n};\n\nexport class Compiler {\n private _env: VirtualTypeScriptEnvironment | undefined;\n private _fsMap: Map<string, string> | undefined;\n\n constructor(private readonly _options: ts.CompilerOptions = defaultOptions) {}\n\n async initialize() {\n if (this._env) {\n return;\n }\n\n // TODO(wittjosiah): Figure out how to get workers working in plugin packages.\n // https://github.com/val-town/codemirror-ts?tab=readme-ov-file#setup-worker\n this._fsMap = await createDefaultMapFromCDN(this._options, '5.5.4', true, ts);\n const system = createSystem(this._fsMap);\n this._env = createVirtualTypeScriptEnvironment(system, [], ts, this._options);\n }\n\n get environment() {\n invariant(this._env, 'Compiler environment not initialized.');\n return this._env;\n }\n\n setFile(fileName: string, content: string) {\n invariant(this._fsMap, 'File system map not initialized.');\n this.environment.createFile(fileName, content);\n }\n\n compile(fileName: string) {\n return this.environment.languageService.getEmitOutput(fileName);\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,qBAAoB;AAEpB,2BAA4B;AAC5B,qBAAkC;ACJlC,iBAKO;AACP,wBAAe;AAEf,uBAA0B;;AAE1B,IAAMA,iBAAqC;EACzCC,KAAK;IAAC;IAAO;;EACbC,QAAQC,kBAAAA,QAAGC,aAAaC;AAC1B;AAEO,IAAMC,WAAN,MAAMA;EAIXC,YAA6BC,WAA+BR,gBAAgB;SAA/CQ,WAAAA;EAAgD;EAE7E,MAAMC,aAAa;AACjB,QAAI,KAAKC,MAAM;AACb;IACF;AAIA,SAAKC,SAAS,UAAMC,oCAAwB,KAAKJ,UAAU,SAAS,MAAML,kBAAAA,OAAAA;AAC1E,UAAMU,aAASC,yBAAa,KAAKH,MAAM;AACvC,SAAKD,WAAOK,+CAAmCF,QAAQ,CAAA,GAAIV,kBAAAA,SAAI,KAAKK,QAAQ;EAC9E;EAEA,IAAIQ,cAAc;AAChBC,oCAAU,KAAKP,MAAM,yCAAA;;;;;;;;;AACrB,WAAO,KAAKA;EACd;EAEAQ,QAAQC,UAAkBC,SAAiB;AACzCH,oCAAU,KAAKN,QAAQ,oCAAA;;;;;;;;;AACvB,SAAKK,YAAYK,WAAWF,UAAUC,OAAAA;EACxC;EAEAE,QAAQH,UAAkB;AACxB,WAAO,KAAKH,YAAYO,gBAAgBC,cAAcL,QAAAA;EACxD;AACF;ADrCA,IAAA,mBAAe,YAAA;AACb,QAAMM,WAAW,IAAInB,SAAAA;AAErB,QAAMmB,SAAShB,WAAU;AAEzBgB,WAASP,QAAQ,qBAAqB,6BAAA;AAGtCO,WAASP,QACP,mBACA;;;;OAIG;AAEL,YAAMQ,kCAAkB;IAAEC,wBAAAA;EAAQ,CAAA;AAElC,aAAOC,kCAAYC,yCAAmBvB,UAAUmB,QAAAA;AAClD;",
|
|
6
|
+
"names": ["defaultOptions", "lib", "target", "ts", "ScriptTarget", "ES2022", "Compiler", "constructor", "_options", "initialize", "_env", "_fsMap", "createDefaultMapFromCDN", "system", "createSystem", "createVirtualTypeScriptEnvironment", "environment", "invariant", "setFile", "fileName", "content", "createFile", "compile", "languageService", "getEmitOutput", "compiler", "initializeBundler", "wasmUrl", "contributes", "ScriptCapabilities"]
|
|
7
|
+
}
|
package/dist/lib/node/index.cjs
CHANGED
|
@@ -28,20 +28,17 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
29
|
var node_exports = {};
|
|
30
30
|
__export(node_exports, {
|
|
31
|
-
AutomationPanel: () =>
|
|
32
|
-
Bundler: () => import_chunk_T4TXCRN5.Bundler,
|
|
31
|
+
AutomationPanel: () => import_chunk_3VDHZ54A.AutomationPanel,
|
|
33
32
|
SCRIPT_PLUGIN: () => import_chunk_5UH3F7TA.SCRIPT_PLUGIN,
|
|
34
33
|
ScriptCapabilities: () => import_chunk_ALY3N6PW.ScriptCapabilities,
|
|
35
|
-
ScriptContainer: () =>
|
|
34
|
+
ScriptContainer: () => import_chunk_3VDHZ54A.ScriptContainer,
|
|
36
35
|
ScriptPlugin: () => ScriptPlugin,
|
|
37
|
-
ScriptSettings: () =>
|
|
38
|
-
ScriptSettingsPanel: () =>
|
|
39
|
-
initializeBundler: () => import_chunk_T4TXCRN5.initializeBundler,
|
|
36
|
+
ScriptSettings: () => import_chunk_3VDHZ54A.ScriptSettings,
|
|
37
|
+
ScriptSettingsPanel: () => import_chunk_3VDHZ54A.ScriptSettingsPanel,
|
|
40
38
|
meta: () => import_chunk_5UH3F7TA.meta
|
|
41
39
|
});
|
|
42
40
|
module.exports = __toCommonJS(node_exports);
|
|
43
|
-
var
|
|
44
|
-
var import_chunk_73345ZL6 = require("./chunk-73345ZL6.cjs");
|
|
41
|
+
var import_chunk_3VDHZ54A = require("./chunk-3VDHZ54A.cjs");
|
|
45
42
|
var import_chunk_ALY3N6PW = require("./chunk-ALY3N6PW.cjs");
|
|
46
43
|
var import_chunk_DJGLGRQV = require("./chunk-DJGLGRQV.cjs");
|
|
47
44
|
var import_chunk_5UH3F7TA = require("./chunk-5UH3F7TA.cjs");
|
|
@@ -51,10 +48,11 @@ var import_functions = require("@dxos/functions");
|
|
|
51
48
|
var import_live_object = require("@dxos/live-object");
|
|
52
49
|
var import_plugin_client = require("@dxos/plugin-client");
|
|
53
50
|
var import_functions2 = require("@dxos/functions");
|
|
54
|
-
var Compiler = (0, import_app_framework.lazy)(() => import("./compiler-
|
|
55
|
-
var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-
|
|
56
|
-
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-
|
|
51
|
+
var Compiler = (0, import_app_framework.lazy)(() => import("./compiler-UIBLKJKG.cjs"));
|
|
52
|
+
var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-WFLQNAID.cjs"));
|
|
53
|
+
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-OIQJFA7P.cjs"));
|
|
57
54
|
var ScriptSettings2 = (0, import_app_framework.lazy)(() => import("./settings-SZFSMSKM.cjs"));
|
|
55
|
+
var Artifact = (0, import_app_framework.lazy)(() => import("./artifact-IPGGY2Z2.cjs"));
|
|
58
56
|
var translations_default = [
|
|
59
57
|
{
|
|
60
58
|
"en-US": {
|
|
@@ -165,19 +163,22 @@ var ScriptPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_5U
|
|
|
165
163
|
id: `${import_chunk_5UH3F7TA.meta.id}/module/intent-resolver`,
|
|
166
164
|
activatesOn: import_app_framework2.Events.SetupIntents,
|
|
167
165
|
activate: IntentResolver
|
|
166
|
+
}),
|
|
167
|
+
(0, import_app_framework2.defineModule)({
|
|
168
|
+
id: `${import_chunk_5UH3F7TA.meta.id}/module/artifact`,
|
|
169
|
+
activatesOn: import_app_framework2.Events.Startup,
|
|
170
|
+
activate: Artifact
|
|
168
171
|
})
|
|
169
172
|
]);
|
|
170
173
|
// Annotate the CommonJS export names for ESM import in node:
|
|
171
174
|
0 && (module.exports = {
|
|
172
175
|
AutomationPanel,
|
|
173
|
-
Bundler,
|
|
174
176
|
SCRIPT_PLUGIN,
|
|
175
177
|
ScriptCapabilities,
|
|
176
178
|
ScriptContainer,
|
|
177
179
|
ScriptPlugin,
|
|
178
180
|
ScriptSettings,
|
|
179
181
|
ScriptSettingsPanel,
|
|
180
|
-
initializeBundler,
|
|
181
182
|
meta
|
|
182
183
|
});
|
|
183
184
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/capabilities/index.ts", "../../../src/ScriptPlugin.tsx", "../../../src/translations.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const Compiler = lazy(() => import('./compiler'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\nexport const ScriptSettings = lazy(() => import('./settings'));\n\nexport * from './capabilities';\n", "//\n// Copyright 2023 DXOS.org\n//\n\n// @ts-ignore\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { type Space } from '@dxos/client/echo';\nimport { FunctionType, ScriptType } from '@dxos/functions';\nimport { RefArray } from '@dxos/live-object';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\n\nimport { Compiler, IntentResolver, ReactSurface, ScriptSettings } from './capabilities';\nimport { meta, SCRIPT_PLUGIN } from './meta';\nimport translations from './translations';\nimport { ScriptAction } from './types';\n\nexport const ScriptPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: ScriptSettings,\n }),\n defineModule({\n id: `${meta.id}/module/compiler`,\n activatesOn: Events.Startup,\n activate: Compiler,\n }),\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: ScriptType.typename,\n metadata: {\n creationSchema: ScriptAction.CreateScriptSchema,\n createObject: (props: ScriptAction.CreateScriptProps, { space }: { space: Space }) =>\n createIntent(ScriptAction.Create, { ...props, space }),\n placeholder: ['object title placeholder', { ns: SCRIPT_PLUGIN }],\n icon: 'ph--code--regular',\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (script: ScriptType) => await RefArray.loadAll([script.source]),\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => [\n contributes(ClientCapabilities.SystemSchema, [FunctionType]),\n contributes(ClientCapabilities.Schema, [ScriptType]),\n ],\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupSurfaces,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntents,\n activate: IntentResolver,\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { ScriptType } from '@dxos/functions';\n\nimport { SCRIPT_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [ScriptType.typename]: {\n 'typename label': 'Script',\n },\n [SCRIPT_PLUGIN]: {\n 'plugin name': 'Scripts',\n 'object title placeholder': 'New script',\n 'create object label': 'Create script',\n 'create stack section label': 'Create script',\n 'description label': 'Description',\n 'description placeholder': 'Describe what the script does.',\n 'binding placeholder': 'Function name',\n 'function request placeholder': 'Function request',\n 'deploy label': 'Deploy',\n 'deployed label': 'Current version of the script is deployed',\n 'upload failed label': 'Upload failed',\n 'copy link label': 'Copy function link',\n 'format label': 'Format',\n 'toggle details label': 'Toggle details panel',\n 'authenticate action label': 'Authenticate functions service',\n 'authenticate button label': 'Authenticate',\n 'name label': 'Name',\n 'remote function settings heading': 'Remote Function',\n 'function url label': 'Invocation URL',\n 'function binding label': 'Function binding',\n 'function binding placeholder': 'BINDING',\n 'script publish settings label': 'Publishing',\n 'script publish settings description': 'Scripts can be shared publicly as Github gists.',\n 'no github token label': 'This space has no Github access token available.',\n 'open token manager label': 'Open Token Manager',\n 'publish label': 'Publish',\n 'publishing label': 'Publishing',\n 'editor input mode label': 'Editor input mode',\n 'select editor input mode placeholder': 'Select editor input mode…',\n 'settings editor input mode default label': 'Default',\n 'settings editor input mode vim label': 'Vim',\n 'settings editor input mode vscode label': 'VS Code',\n 'view group label': 'View',\n 'view editor label': 'Editor',\n 'view split label': 'Split',\n 'view debug label': 'Debug',\n 'template select group label': 'Select template',\n },\n },\n },\n];\n"],
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["import_app_framework", "import_functions", "Compiler", "lazy", "IntentResolver", "ReactSurface", "ScriptSettings", "ScriptType", "typename", "SCRIPT_PLUGIN", "ScriptPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupSettings", "activate", "Startup", "SetupTranslations", "contributes", "Capabilities", "Translations", "translations", "SetupMetadata", "Metadata", "metadata", "creationSchema", "ScriptAction", "CreateScriptSchema", "createObject", "props", "space", "createIntent", "Create", "placeholder", "ns", "icon", "loadReferences", "script", "RefArray", "loadAll", "source", "ClientEvents", "SetupSchema", "ClientCapabilities", "SystemSchema", "FunctionType", "Schema", "SetupSurfaces", "SetupIntents"]
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const Compiler = lazy(() => import('./compiler'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\nexport const ScriptSettings = lazy(() => import('./settings'));\nexport const Artifact = lazy(() => import('./artifact'));\n\nexport * from './capabilities';\n", "//\n// Copyright 2023 DXOS.org\n//\n\n// @ts-ignore\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { type Space } from '@dxos/client/echo';\nimport { FunctionType, ScriptType } from '@dxos/functions';\nimport { RefArray } from '@dxos/live-object';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\n\nimport { Artifact, Compiler, IntentResolver, ReactSurface, ScriptSettings } from './capabilities';\nimport { meta, SCRIPT_PLUGIN } from './meta';\nimport translations from './translations';\nimport { ScriptAction } from './types';\n\nexport const ScriptPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: ScriptSettings,\n }),\n defineModule({\n id: `${meta.id}/module/compiler`,\n activatesOn: Events.Startup,\n activate: Compiler,\n }),\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: ScriptType.typename,\n metadata: {\n creationSchema: ScriptAction.CreateScriptSchema,\n createObject: (props: ScriptAction.CreateScriptProps, { space }: { space: Space }) =>\n createIntent(ScriptAction.Create, { ...props, space }),\n placeholder: ['object title placeholder', { ns: SCRIPT_PLUGIN }],\n icon: 'ph--code--regular',\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (script: ScriptType) => await RefArray.loadAll([script.source]),\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => [\n contributes(ClientCapabilities.SystemSchema, [FunctionType]),\n contributes(ClientCapabilities.Schema, [ScriptType]),\n ],\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupSurfaces,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntents,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/artifact`,\n activatesOn: Events.Startup,\n activate: Artifact,\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { ScriptType } from '@dxos/functions';\n\nimport { SCRIPT_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [ScriptType.typename]: {\n 'typename label': 'Script',\n },\n [SCRIPT_PLUGIN]: {\n 'plugin name': 'Scripts',\n 'object title placeholder': 'New script',\n 'create object label': 'Create script',\n 'create stack section label': 'Create script',\n 'description label': 'Description',\n 'description placeholder': 'Describe what the script does.',\n 'binding placeholder': 'Function name',\n 'function request placeholder': 'Function request',\n 'deploy label': 'Deploy',\n 'deployed label': 'Current version of the script is deployed',\n 'upload failed label': 'Upload failed',\n 'copy link label': 'Copy function link',\n 'format label': 'Format',\n 'toggle details label': 'Toggle details panel',\n 'authenticate action label': 'Authenticate functions service',\n 'authenticate button label': 'Authenticate',\n 'name label': 'Name',\n 'remote function settings heading': 'Remote Function',\n 'function url label': 'Invocation URL',\n 'function binding label': 'Function binding',\n 'function binding placeholder': 'BINDING',\n 'script publish settings label': 'Publishing',\n 'script publish settings description': 'Scripts can be shared publicly as Github gists.',\n 'no github token label': 'This space has no Github access token available.',\n 'open token manager label': 'Open Token Manager',\n 'publish label': 'Publish',\n 'publishing label': 'Publishing',\n 'editor input mode label': 'Editor input mode',\n 'select editor input mode placeholder': 'Select editor input mode…',\n 'settings editor input mode default label': 'Default',\n 'settings editor input mode vim label': 'Vim',\n 'settings editor input mode vscode label': 'VS Code',\n 'view group label': 'View',\n 'view editor label': 'Editor',\n 'view split label': 'Split',\n 'view debug label': 'Debug',\n 'template select group label': 'Select template',\n },\n },\n },\n];\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_app_framework", "import_functions", "Compiler", "lazy", "IntentResolver", "ReactSurface", "ScriptSettings", "Artifact", "ScriptType", "typename", "SCRIPT_PLUGIN", "ScriptPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupSettings", "activate", "Startup", "SetupTranslations", "contributes", "Capabilities", "Translations", "translations", "SetupMetadata", "Metadata", "metadata", "creationSchema", "ScriptAction", "CreateScriptSchema", "createObject", "props", "space", "createIntent", "Create", "placeholder", "ns", "icon", "loadReferences", "script", "RefArray", "loadAll", "source", "ClientEvents", "SetupSchema", "ClientCapabilities", "SystemSchema", "FunctionType", "Schema", "SetupSurfaces", "SetupIntents"]
|
|
7
7
|
}
|
|
@@ -16,12 +16,12 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var intent_resolver_WFLQNAID_exports = {};
|
|
20
|
+
__export(intent_resolver_WFLQNAID_exports, {
|
|
21
21
|
default: () => intent_resolver_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
23
|
+
module.exports = __toCommonJS(intent_resolver_WFLQNAID_exports);
|
|
24
|
+
var import_chunk_JKPNBFU2 = require("./chunk-JKPNBFU2.cjs");
|
|
25
25
|
var import_chunk_DJGLGRQV = require("./chunk-DJGLGRQV.cjs");
|
|
26
26
|
var import_chunk_5UH3F7TA = require("./chunk-5UH3F7TA.cjs");
|
|
27
27
|
var import_core = require("@octokit/core");
|
|
@@ -32,7 +32,7 @@ var import_schema = require("@dxos/schema");
|
|
|
32
32
|
var intent_resolver_default = () => (0, import_app_framework.contributes)(import_app_framework.Capabilities.IntentResolver, (0, import_app_framework.createResolver)({
|
|
33
33
|
intent: import_chunk_DJGLGRQV.ScriptAction.Create,
|
|
34
34
|
resolve: async ({ name, gistUrl }) => {
|
|
35
|
-
let content =
|
|
35
|
+
let content = import_chunk_JKPNBFU2.templates[0].source;
|
|
36
36
|
const gistId = gistUrl?.split("/").at(-1);
|
|
37
37
|
if (gistId) {
|
|
38
38
|
const octokit = new import_core.Octokit();
|
|
@@ -56,4 +56,4 @@ var intent_resolver_default = () => (0, import_app_framework.contributes)(import
|
|
|
56
56
|
};
|
|
57
57
|
}
|
|
58
58
|
}));
|
|
59
|
-
//# sourceMappingURL=intent-resolver-
|
|
59
|
+
//# sourceMappingURL=intent-resolver-WFLQNAID.cjs.map
|