optimizely-opal.opal-tools-sdk 0.1.37.dev0__tar.gz → 0.1.39.dev0__tar.gz
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.
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/PKG-INFO +1 -1
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/opal_tools_sdk/proteus.py +98 -6
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/optimizely_opal.opal_tools_sdk.egg-info/PKG-INFO +1 -1
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/pyproject.toml +1 -1
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/setup.py +1 -1
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/README.md +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/opal_tools_sdk/__init__.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/opal_tools_sdk/_registry.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/opal_tools_sdk/auth.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/opal_tools_sdk/decorators.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/opal_tools_sdk/logging.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/opal_tools_sdk/models.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/opal_tools_sdk/service.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/opal_tools_sdk/ui.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/optimizely_opal.opal_tools_sdk.egg-info/SOURCES.txt +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/optimizely_opal.opal_tools_sdk.egg-info/dependency_links.txt +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/optimizely_opal.opal_tools_sdk.egg-info/requires.txt +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/optimizely_opal.opal_tools_sdk.egg-info/top_level.txt +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/setup.cfg +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/tests/test_integration.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/tests/test_nested_schema.py +0 -0
- {optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/tests/test_proteus.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
2
|
# filename: proteus-document-spec.json
|
|
3
|
-
# timestamp: 2026-06-
|
|
3
|
+
# timestamp: 2026-06-05T01:46:03+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
@@ -2237,6 +2237,10 @@ class ProteusQuestion(BaseModel):
|
|
|
2237
2237
|
extra="forbid",
|
|
2238
2238
|
)
|
|
2239
2239
|
field_type: Literal["Question"] = Field(default="Question", alias="$type")
|
|
2240
|
+
interaction: str | ProteusExpression | None = Field(
|
|
2241
|
+
default=None,
|
|
2242
|
+
description="Name of the interaction to fire when the user finishes or cancels. When set, submit and cancel send a structured `{ questions, answers }` payload via the named interaction so a calling tool can read the answers programmatically. When omitted, a human-readable transcript is sent via the `message` event instead.",
|
|
2243
|
+
)
|
|
2240
2244
|
questions: ProteusExpression = Field(..., description="Array of questions data")
|
|
2241
2245
|
|
|
2242
2246
|
|
|
@@ -2316,6 +2320,81 @@ class ProteusRange(BaseModel):
|
|
|
2316
2320
|
z: SprinklePropZ | None = None
|
|
2317
2321
|
|
|
2318
2322
|
|
|
2323
|
+
class ProteusRichTextEditor(BaseModel):
|
|
2324
|
+
model_config = ConfigDict(
|
|
2325
|
+
extra="forbid",
|
|
2326
|
+
)
|
|
2327
|
+
field_type: Literal["RichTextEditor"] = Field(default="RichTextEditor", alias="$type")
|
|
2328
|
+
alignItems: SprinklePropAlignItems | None = None
|
|
2329
|
+
alignSelf: SprinklePropAlignSelf | None = None
|
|
2330
|
+
animation: SprinklePropAnimation | None = None
|
|
2331
|
+
backgroundImage: SprinklePropBackgroundImage | None = None
|
|
2332
|
+
bg: SprinklePropBg | None = None
|
|
2333
|
+
border: SprinklePropBorder | None = None
|
|
2334
|
+
borderB: SprinklePropBorderB | None = None
|
|
2335
|
+
borderColor: SprinklePropBorderColor | None = None
|
|
2336
|
+
borderL: SprinklePropBorderL | None = None
|
|
2337
|
+
borderR: SprinklePropBorderR | None = None
|
|
2338
|
+
borderT: SprinklePropBorderT | None = None
|
|
2339
|
+
color: SprinklePropColor | None = None
|
|
2340
|
+
cursor: SprinklePropCursor | None = None
|
|
2341
|
+
display: SprinklePropDisplay | None = None
|
|
2342
|
+
flex: SprinklePropFlex | None = None
|
|
2343
|
+
flexDirection: SprinklePropFlexDirection | None = None
|
|
2344
|
+
flexWrap: SprinklePropFlexWrap | None = None
|
|
2345
|
+
fontFamily: SprinklePropFontFamily | None = None
|
|
2346
|
+
fontSize: SprinklePropFontSize | None = None
|
|
2347
|
+
fontWeight: SprinklePropFontWeight | None = None
|
|
2348
|
+
gap: SprinklePropGap | None = None
|
|
2349
|
+
gridAutoRows: SprinklePropGridAutoRows | None = None
|
|
2350
|
+
gridColumn: SprinklePropGridColumn | None = None
|
|
2351
|
+
gridTemplateColumns: SprinklePropGridTemplateColumns | None = None
|
|
2352
|
+
h: SprinklePropH | None = None
|
|
2353
|
+
justifyContent: SprinklePropJustifyContent | None = None
|
|
2354
|
+
justifyItems: SprinklePropJustifyItems | None = None
|
|
2355
|
+
m: SprinklePropM | None = None
|
|
2356
|
+
maxH: SprinklePropMaxH | None = None
|
|
2357
|
+
maxW: SprinklePropMaxW | None = None
|
|
2358
|
+
mb: SprinklePropMb | None = None
|
|
2359
|
+
ml: SprinklePropMl | None = None
|
|
2360
|
+
mr: SprinklePropMr | None = None
|
|
2361
|
+
mt: SprinklePropMt | None = None
|
|
2362
|
+
mx: SprinklePropMx | None = None
|
|
2363
|
+
my: SprinklePropMy | None = None
|
|
2364
|
+
name: str | ProteusExpression | None = Field(
|
|
2365
|
+
default=None,
|
|
2366
|
+
description="Name of the form control element. Used by form-data integrations.",
|
|
2367
|
+
)
|
|
2368
|
+
objectFit: SprinklePropObjectFit | None = None
|
|
2369
|
+
overflow: SprinklePropOverflow | None = None
|
|
2370
|
+
overflowX: SprinklePropOverflowX | None = None
|
|
2371
|
+
overflowY: SprinklePropOverflowY | None = None
|
|
2372
|
+
p: SprinklePropP | None = None
|
|
2373
|
+
pb: SprinklePropPb | None = None
|
|
2374
|
+
pl: SprinklePropPl | None = None
|
|
2375
|
+
placeholder: str | ProteusExpression | None = Field(
|
|
2376
|
+
default=None, description="Placeholder text shown when the editor is empty."
|
|
2377
|
+
)
|
|
2378
|
+
placeItems: SprinklePropPlaceItems | None = None
|
|
2379
|
+
pointerEvents: SprinklePropPointerEvents | None = None
|
|
2380
|
+
pr: SprinklePropPr | None = None
|
|
2381
|
+
pt: SprinklePropPt | None = None
|
|
2382
|
+
px: SprinklePropPx | None = None
|
|
2383
|
+
py: SprinklePropPy | None = None
|
|
2384
|
+
readOnly: bool | ProteusExpression | None = Field(
|
|
2385
|
+
default=None, description="Whether the editor is read-only."
|
|
2386
|
+
)
|
|
2387
|
+
rounded: SprinklePropRounded | None = None
|
|
2388
|
+
shadow: SprinklePropShadow | None = None
|
|
2389
|
+
size: SprinklePropSize | None = None
|
|
2390
|
+
textAlign: SprinklePropTextAlign | None = None
|
|
2391
|
+
textTransform: SprinklePropTextTransform | None = None
|
|
2392
|
+
transition: SprinklePropTransition | None = None
|
|
2393
|
+
w: SprinklePropW | None = None
|
|
2394
|
+
whiteSpace: SprinklePropWhiteSpace | None = None
|
|
2395
|
+
z: SprinklePropZ | None = None
|
|
2396
|
+
|
|
2397
|
+
|
|
2319
2398
|
class ProteusSelect(BaseModel):
|
|
2320
2399
|
model_config = ConfigDict(
|
|
2321
2400
|
extra="forbid",
|
|
@@ -2946,6 +3025,7 @@ class ProteusElement(
|
|
|
2946
3025
|
| ProteusPillMenu
|
|
2947
3026
|
| ProteusQuestion
|
|
2948
3027
|
| ProteusRange
|
|
3028
|
+
| ProteusRichTextEditor
|
|
2949
3029
|
| ProteusSelect
|
|
2950
3030
|
| ProteusSelectContent
|
|
2951
3031
|
| ProteusSelectTrigger
|
|
@@ -2993,6 +3073,7 @@ class ProteusElement(
|
|
|
2993
3073
|
| ProteusPillMenu
|
|
2994
3074
|
| ProteusQuestion
|
|
2995
3075
|
| ProteusRange
|
|
3076
|
+
| ProteusRichTextEditor
|
|
2996
3077
|
| ProteusSelect
|
|
2997
3078
|
| ProteusSelectContent
|
|
2998
3079
|
| ProteusSelectTrigger
|
|
@@ -3365,7 +3446,10 @@ class SprinklePropFlex(
|
|
|
3365
3446
|
):
|
|
3366
3447
|
root: (
|
|
3367
3448
|
Literal["initial"] | Literal["none"] | Literal["auto"] | Literal["1"] | ProteusExpression
|
|
3368
|
-
) = Field(
|
|
3449
|
+
) = Field(
|
|
3450
|
+
...,
|
|
3451
|
+
description="Set the element's `flex` CSS property. `1` grows to fill available\nspace; `auto` grows and shrinks to fit content; `initial` shrinks but\ndoes not grow; `none` neither grows nor shrinks (use this instead of\n`flex-shrink: 0`).",
|
|
3452
|
+
)
|
|
3369
3453
|
|
|
3370
3454
|
|
|
3371
3455
|
class SprinklePropFlexDirection(
|
|
@@ -3491,7 +3575,8 @@ class SprinklePropGap(
|
|
|
3491
3575
|
|
|
3492
3576
|
class SprinklePropGridAutoRows(RootModel[Literal["fr"] | ProteusExpression]):
|
|
3493
3577
|
root: Literal["fr"] | ProteusExpression = Field(
|
|
3494
|
-
...,
|
|
3578
|
+
...,
|
|
3579
|
+
description="Set the element's `grid-auto-rows` CSS property. The only value `fr`\nsizes implicit rows to `minmax(0, 1fr)` (equal-height rows that can\nshrink below their content).",
|
|
3495
3580
|
)
|
|
3496
3581
|
|
|
3497
3582
|
|
|
@@ -3499,7 +3584,8 @@ class SprinklePropGridColumn(
|
|
|
3499
3584
|
RootModel[Literal["2"] | Literal["4"] | Literal["1"] | Literal["3"] | ProteusExpression]
|
|
3500
3585
|
):
|
|
3501
3586
|
root: Literal["2"] | Literal["4"] | Literal["1"] | Literal["3"] | ProteusExpression = Field(
|
|
3502
|
-
...,
|
|
3587
|
+
...,
|
|
3588
|
+
description="Set how many columns the element spans in a grid (`grid-column`). The\nvalue is the span count, e.g. `2` spans 2 columns — NOT the column it\nstarts at.",
|
|
3503
3589
|
)
|
|
3504
3590
|
|
|
3505
3591
|
|
|
@@ -3507,7 +3593,8 @@ class SprinklePropGridTemplateColumns(
|
|
|
3507
3593
|
RootModel[Literal["2"] | Literal["4"] | Literal["1"] | Literal["3"] | ProteusExpression]
|
|
3508
3594
|
):
|
|
3509
3595
|
root: Literal["2"] | Literal["4"] | Literal["1"] | Literal["3"] | ProteusExpression = Field(
|
|
3510
|
-
...,
|
|
3596
|
+
...,
|
|
3597
|
+
description='Control number of columns in a grid layout (`grid-template-columns`).\nThe value is the number of equal columns, e.g. `2` creates two equal\ncolumns (`repeat(2, minmax(0, 1fr))`) — use this instead of a raw\n`style={{ gridTemplateColumns: "1fr 1fr" }}`.',
|
|
3511
3598
|
)
|
|
3512
3599
|
|
|
3513
3600
|
|
|
@@ -4508,7 +4595,10 @@ class SprinklePropTransition(
|
|
|
4508
4595
|
| Literal["none"]
|
|
4509
4596
|
| Literal["colors"]
|
|
4510
4597
|
| ProteusExpression
|
|
4511
|
-
) = Field(
|
|
4598
|
+
) = Field(
|
|
4599
|
+
...,
|
|
4600
|
+
description="Control which CSS properties should transition. Each value is a preset:\n`colors` transitions color-related properties (background, border,\ncolor, fill, stroke, text-decoration); `opacity` and `transform`\ntransition just that property; `all` transitions everything; `none`\ndisables transitions.",
|
|
4601
|
+
)
|
|
4512
4602
|
|
|
4513
4603
|
|
|
4514
4604
|
class SprinklePropW(
|
|
@@ -4683,6 +4773,7 @@ ProteusMap.model_rebuild()
|
|
|
4683
4773
|
ProteusPillMenu.model_rebuild()
|
|
4684
4774
|
ProteusQuestion.model_rebuild()
|
|
4685
4775
|
ProteusRange.model_rebuild()
|
|
4776
|
+
ProteusRichTextEditor.model_rebuild()
|
|
4686
4777
|
ProteusSelect.model_rebuild()
|
|
4687
4778
|
ProteusSelectContent.model_rebuild()
|
|
4688
4779
|
ProteusSelectTrigger.model_rebuild()
|
|
@@ -4741,6 +4832,7 @@ class UI:
|
|
|
4741
4832
|
PillMenu = ProteusPillMenu
|
|
4742
4833
|
Question = ProteusQuestion
|
|
4743
4834
|
Range = ProteusRange
|
|
4835
|
+
RichTextEditor = ProteusRichTextEditor
|
|
4744
4836
|
Select = ProteusSelect
|
|
4745
4837
|
SelectContent = ProteusSelectContent
|
|
4746
4838
|
SelectTrigger = ProteusSelectTrigger
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "optimizely-opal.opal-tools-sdk"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.39-dev"
|
|
8
8
|
description = "SDK for creating Opal-compatible tools services"
|
|
9
9
|
authors = [{ name = "Optimizely", email = "opal-team@optimizely.com" }]
|
|
10
10
|
readme = "README.md"
|
{optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/README.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{optimizely_opal_opal_tools_sdk-0.1.37.dev0 → optimizely_opal_opal_tools_sdk-0.1.39.dev0}/setup.cfg
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|