@lowdefy/docs-content 0.0.0-experimental-20260710073520
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/LICENSE +201 -0
- package/README.md +20 -0
- package/content/actions/callapi.md +66 -0
- package/content/actions/callmethod.md +41 -0
- package/content/actions/copytoclipboard.md +32 -0
- package/content/actions/displaymessage.md +53 -0
- package/content/actions/downloadcsv.md +89 -0
- package/content/actions/fetch.md +50 -0
- package/content/actions/geolocationcurrentposition.md +56 -0
- package/content/actions/link.md +104 -0
- package/content/actions/login.md +85 -0
- package/content/actions/logout.md +56 -0
- package/content/actions/pdfmake.md +304 -0
- package/content/actions/request.md +67 -0
- package/content/actions/reset.md +27 -0
- package/content/actions/resetvalidation.md +85 -0
- package/content/actions/scrollto.md +85 -0
- package/content/actions/setdarkmode.md +62 -0
- package/content/actions/setfocus.md +33 -0
- package/content/actions/setglobal.md +63 -0
- package/content/actions/setlocale.md +69 -0
- package/content/actions/setstate.md +70 -0
- package/content/actions/throw.md +72 -0
- package/content/actions/validate.md +87 -0
- package/content/actions/wait.md +24 -0
- package/content/agents/agent-endpoint-tools.md +190 -0
- package/content/agents/agent-mcp-tools.md +124 -0
- package/content/agents/agent-multi-agent.md +136 -0
- package/content/agents/agent-properties.md +174 -0
- package/content/agents/agent-server-hooks.md +336 -0
- package/content/agents/agentchat.md +515 -0
- package/content/agents/agentconversations.md +148 -0
- package/content/concepts/ai-agent-docs.md +190 -0
- package/content/concepts/cli.md +213 -0
- package/content/concepts/connections-and-requests.md +7 -0
- package/content/concepts/custom-html.md +3 -0
- package/content/concepts/custom-styling.md +161 -0
- package/content/concepts/events-and-actions.md +271 -0
- package/content/concepts/hosting-files.md +18 -0
- package/content/concepts/i18n.md +320 -0
- package/content/concepts/keyboard-shortcuts.md +218 -0
- package/content/concepts/layout-overview.md +478 -0
- package/content/concepts/lists.md +144 -0
- package/content/concepts/logger.md +43 -0
- package/content/concepts/lowdefy-schema.md +365 -0
- package/content/concepts/menus.md +144 -0
- package/content/concepts/module-authoring.md +564 -0
- package/content/concepts/modules.md +338 -0
- package/content/concepts/operators.md +45 -0
- package/content/concepts/overview.md +19 -0
- package/content/concepts/references-and-templates.md +207 -0
- package/content/concepts/secrets.md +24 -0
- package/content/concepts/selectors.md +143 -0
- package/content/connections/amazonredshift.md +176 -0
- package/content/connections/anthropic.md +232 -0
- package/content/connections/awss3.md +313 -0
- package/content/connections/azureblobstorage.md +133 -0
- package/content/connections/elasticsearch.md +371 -0
- package/content/connections/google.md +228 -0
- package/content/connections/googlecloudstorage.md +139 -0
- package/content/connections/googlesheet.md +313 -0
- package/content/connections/knex.md +206 -0
- package/content/connections/mariadb.md +177 -0
- package/content/connections/mcp.md +134 -0
- package/content/connections/mongodb.md +739 -0
- package/content/connections/mssql.md +191 -0
- package/content/connections/mysql.md +192 -0
- package/content/connections/openai-connection.md +228 -0
- package/content/connections/postgresql.md +200 -0
- package/content/connections/redis.md +116 -0
- package/content/connections/sendgridmail.md +94 -0
- package/content/connections/smtp.md +149 -0
- package/content/connections/sqlite.md +187 -0
- package/content/connections/stripe.md +115 -0
- package/content/container-blocks/affix.md +413 -0
- package/content/container-blocks/alert.md +937 -0
- package/content/container-blocks/badge.md +1222 -0
- package/content/container-blocks/box.md +1453 -0
- package/content/container-blocks/card.md +1200 -0
- package/content/container-blocks/carousel.md +2247 -0
- package/content/container-blocks/collapse.md +1335 -0
- package/content/container-blocks/configprovider.md +1070 -0
- package/content/container-blocks/confirmmodal.md +1159 -0
- package/content/container-blocks/content.md +597 -0
- package/content/container-blocks/descriptions.md +870 -0
- package/content/container-blocks/drawer.md +1379 -0
- package/content/container-blocks/dropdownmenu.md +643 -0
- package/content/container-blocks/flex.md +1510 -0
- package/content/container-blocks/footer.md +380 -0
- package/content/container-blocks/googlemaps.md +546 -0
- package/content/container-blocks/googlemapsheatmap.md +607 -0
- package/content/container-blocks/googlemapsscript.md +61 -0
- package/content/container-blocks/header.md +302 -0
- package/content/container-blocks/label.md +739 -0
- package/content/container-blocks/layout.md +604 -0
- package/content/container-blocks/masonry.md +1090 -0
- package/content/container-blocks/mobilemenu.md +1244 -0
- package/content/container-blocks/modal.md +1180 -0
- package/content/container-blocks/pageheadermenu.md +614 -0
- package/content/container-blocks/pagesidebarlayout.md +438 -0
- package/content/container-blocks/pagesidermenu.md +651 -0
- package/content/container-blocks/popover.md +1421 -0
- package/content/container-blocks/result.md +972 -0
- package/content/container-blocks/sider.md +1064 -0
- package/content/container-blocks/span.md +747 -0
- package/content/container-blocks/spinner.md +267 -0
- package/content/container-blocks/splitter.md +1735 -0
- package/content/container-blocks/tabs.md +1718 -0
- package/content/container-blocks/tooltip.md +1274 -0
- package/content/container-blocks/watermark.md +515 -0
- package/content/controls/for.md +103 -0
- package/content/controls/if.md +107 -0
- package/content/controls/log.md +50 -0
- package/content/controls/parallel.md +71 -0
- package/content/controls/parallel_for.md +36 -0
- package/content/controls/reject.md +56 -0
- package/content/controls/return.md +66 -0
- package/content/controls/set_state.md +98 -0
- package/content/controls/switch.md +90 -0
- package/content/controls/throw.md +79 -0
- package/content/controls/try.md +88 -0
- package/content/deployment/docker.md +149 -0
- package/content/deployment/node-server.md +27 -0
- package/content/deployment/vercel.md +101 -0
- package/content/display-blocks/aggrid.md +1459 -0
- package/content/display-blocks/anchor.md +336 -0
- package/content/display-blocks/avatar.md +1154 -0
- package/content/display-blocks/breadcrumb.md +517 -0
- package/content/display-blocks/button.md +758 -0
- package/content/display-blocks/calendar.md +156 -0
- package/content/display-blocks/dangeroushtml.md +314 -0
- package/content/display-blocks/dangerousmarkdown.md +423 -0
- package/content/display-blocks/diffgit.md +44 -0
- package/content/display-blocks/difflist.md +225 -0
- package/content/display-blocks/diffsidebyside.md +56 -0
- package/content/display-blocks/difftimeline.md +94 -0
- package/content/display-blocks/divider.md +406 -0
- package/content/display-blocks/download.md +60 -0
- package/content/display-blocks/dropdownbutton.md +661 -0
- package/content/display-blocks/echart.md +418 -0
- package/content/display-blocks/floatbutton.md +545 -0
- package/content/display-blocks/html.md +311 -0
- package/content/display-blocks/icon.md +717 -0
- package/content/display-blocks/img.md +479 -0
- package/content/display-blocks/markdown.md +520 -0
- package/content/display-blocks/markdownwithcode.md +730 -0
- package/content/display-blocks/menu.md +1123 -0
- package/content/display-blocks/message.md +941 -0
- package/content/display-blocks/notification.md +1410 -0
- package/content/display-blocks/paragraph.md +643 -0
- package/content/display-blocks/progress.md +818 -0
- package/content/display-blocks/qrcode.md +519 -0
- package/content/display-blocks/s3download.md +240 -0
- package/content/display-blocks/search.md +360 -0
- package/content/display-blocks/skeleton.md +272 -0
- package/content/display-blocks/skeletonavatar.md +222 -0
- package/content/display-blocks/skeletonbutton.md +245 -0
- package/content/display-blocks/skeletoninput.md +223 -0
- package/content/display-blocks/skeletonparagraph.md +201 -0
- package/content/display-blocks/statistic.md +485 -0
- package/content/display-blocks/steps.md +585 -0
- package/content/display-blocks/tag.md +620 -0
- package/content/display-blocks/title.md +654 -0
- package/content/display-blocks/tour.md +2359 -0
- package/content/input-blocks/autocomplete.md +786 -0
- package/content/input-blocks/buttonselector.md +964 -0
- package/content/input-blocks/checkboxselector.md +765 -0
- package/content/input-blocks/checkboxswitch.md +497 -0
- package/content/input-blocks/colorselector.md +884 -0
- package/content/input-blocks/daterangeselector.md +777 -0
- package/content/input-blocks/dateselector.md +693 -0
- package/content/input-blocks/datetimeselector.md +791 -0
- package/content/input-blocks/inputgallery.md +528 -0
- package/content/input-blocks/monthselector.md +717 -0
- package/content/input-blocks/multipleselector.md +1337 -0
- package/content/input-blocks/numberinput.md +855 -0
- package/content/input-blocks/pagination.md +679 -0
- package/content/input-blocks/paragraphinput.md +1664 -0
- package/content/input-blocks/passwordinput.md +480 -0
- package/content/input-blocks/phonenumberinput.md +688 -0
- package/content/input-blocks/radioselector.md +820 -0
- package/content/input-blocks/ratingslider.md +684 -0
- package/content/input-blocks/s3uploadbutton.md +384 -0
- package/content/input-blocks/s3uploaddragger.md +305 -0
- package/content/input-blocks/s3uploadphoto.md +288 -0
- package/content/input-blocks/segmentedselector.md +782 -0
- package/content/input-blocks/selector.md +1162 -0
- package/content/input-blocks/switch.md +552 -0
- package/content/input-blocks/textarea.md +714 -0
- package/content/input-blocks/textinput.md +639 -0
- package/content/input-blocks/tiptapinput.md +226 -0
- package/content/input-blocks/tiptapmentioninput.md +471 -0
- package/content/input-blocks/titleinput.md +1094 -0
- package/content/input-blocks/treeinput.md +144 -0
- package/content/input-blocks/treemultipleselector.md +162 -0
- package/content/input-blocks/treeselector.md +185 -0
- package/content/input-blocks/upload.md +149 -0
- package/content/input-blocks/uploaddragger.md +85 -0
- package/content/input-blocks/uploadphoto.md +84 -0
- package/content/input-blocks/weekselector.md +630 -0
- package/content/list-blocks/controlledlist.md +498 -0
- package/content/list-blocks/list.md +529 -0
- package/content/list-blocks/listselector.md +301 -0
- package/content/list-blocks/masonrylist.md +230 -0
- package/content/migration/upgrade-guide.md +106 -0
- package/content/migration/v4-to-v5.md +589 -0
- package/content/migration/v5-to-v6.md +36 -0
- package/content/operators/_actions.md +58 -0
- package/content/operators/_and.md +76 -0
- package/content/operators/_api.md +254 -0
- package/content/operators/_app.md +114 -0
- package/content/operators/_args.md +65 -0
- package/content/operators/_array.md +331 -0
- package/content/operators/_base64.md +49 -0
- package/content/operators/_boolean.md +33 -0
- package/content/operators/_build.md +166 -0
- package/content/operators/_change_case.md +357 -0
- package/content/operators/_date.md +415 -0
- package/content/operators/_dayjs.md +128 -0
- package/content/operators/_diff.md +61 -0
- package/content/operators/_divide.md +32 -0
- package/content/operators/_eq.md +52 -0
- package/content/operators/_event.md +86 -0
- package/content/operators/_function.md +52 -0
- package/content/operators/_get.md +92 -0
- package/content/operators/_global.md +86 -0
- package/content/operators/_gt.md +50 -0
- package/content/operators/_gte.md +50 -0
- package/content/operators/_hash.md +112 -0
- package/content/operators/_if.md +30 -0
- package/content/operators/_if_none.md +47 -0
- package/content/operators/_index.md +48 -0
- package/content/operators/_input.md +86 -0
- package/content/operators/_intl.md +135 -0
- package/content/operators/_item.md +166 -0
- package/content/operators/_js.md +113 -0
- package/content/operators/_json.md +120 -0
- package/content/operators/_jsonata.md +152 -0
- package/content/operators/_locale.md +65 -0
- package/content/operators/_location.md +40 -0
- package/content/operators/_log.md +22 -0
- package/content/operators/_lt.md +50 -0
- package/content/operators/_lte.md +50 -0
- package/content/operators/_math.md +407 -0
- package/content/operators/_media.md +83 -0
- package/content/operators/_menu.md +62 -0
- package/content/operators/_module.md +340 -0
- package/content/operators/_mql.md +95 -0
- package/content/operators/_ne.md +62 -0
- package/content/operators/_not.md +33 -0
- package/content/operators/_number.md +159 -0
- package/content/operators/_nunjucks.md +117 -0
- package/content/operators/_object.md +253 -0
- package/content/operators/_operator.md +33 -0
- package/content/operators/_or.md +67 -0
- package/content/operators/_product.md +45 -0
- package/content/operators/_random.md +90 -0
- package/content/operators/_ref.md +80 -0
- package/content/operators/_regex.md +69 -0
- package/content/operators/_request.md +35 -0
- package/content/operators/_request_details.md +29 -0
- package/content/operators/_secret.md +56 -0
- package/content/operators/_state.md +134 -0
- package/content/operators/_step.md +98 -0
- package/content/operators/_string.md +327 -0
- package/content/operators/_subtract.md +24 -0
- package/content/operators/_sum.md +45 -0
- package/content/operators/_switch.md +37 -0
- package/content/operators/_t.md +96 -0
- package/content/operators/_theme.md +65 -0
- package/content/operators/_type.md +78 -0
- package/content/operators/_uri.md +49 -0
- package/content/operators/_url_query.md +92 -0
- package/content/operators/_user.md +154 -0
- package/content/operators/_uuid.md +118 -0
- package/content/operators/_var.md +88 -0
- package/content/operators/_yaml.md +96 -0
- package/content/other/introduction.md +39 -0
- package/content/other/next-auth-providers.md +3 -0
- package/content/other/updatesession.md +26 -0
- package/content/plugins/plugins-actions.md +80 -0
- package/content/plugins/plugins-connections.md +98 -0
- package/content/plugins/plugins-dev.md +138 -0
- package/content/plugins/plugins-introduction.md +29 -0
- package/content/plugins/plugins-operators.md +71 -0
- package/content/testing/e2e-auth.md +108 -0
- package/content/testing/e2e-configuration.md +107 -0
- package/content/testing/e2e-getting-started.md +96 -0
- package/content/testing/e2e-introduction.md +53 -0
- package/content/testing/e2e-mocking.md +155 -0
- package/content/testing/e2e-writing-tests.md +214 -0
- package/content/tutorial/tutorial-actions-operators.md +222 -0
- package/content/tutorial/tutorial-add-blocks.md +86 -0
- package/content/tutorial/tutorial-create-page.md +57 -0
- package/content/tutorial/tutorial-display-data-page.md +181 -0
- package/content/tutorial/tutorial-next-steps.md +53 -0
- package/content/tutorial/tutorial-requests-sql.md +22 -0
- package/content/tutorial/tutorial-start.md +71 -0
- package/content/user-authentication/auth-providers.md +15 -0
- package/content/user-authentication/login-and-logout.md +122 -0
- package/content/user-authentication/users-introduction.md +31 -0
- package/index.json +2281 -0
- package/package.json +34 -0
- package/scripts/extractAgentDocs.js +130 -0
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
# _module
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
_module.var: (key: string): any
|
|
5
|
+
_module.pageId: (pageId: string): string
|
|
6
|
+
_module.pageId: (arguments: { id: string, module: string }): string
|
|
7
|
+
_module.connectionId: (connectionId: string): string
|
|
8
|
+
_module.connectionId: (arguments: { id: string, module: string }): string
|
|
9
|
+
_module.endpointId: (endpointId: string): string
|
|
10
|
+
_module.endpointId: (arguments: { id: string, module: string }): string
|
|
11
|
+
_module.notificationId: (notificationId: string): string
|
|
12
|
+
_module.notificationId: (arguments: { id: string, module: string }): string
|
|
13
|
+
_module.id: (true): string
|
|
14
|
+
_module.id: (arguments: { module: string }): string
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
The `_module` operator family provides access to module-scoped values during the build. `_module.var` and the string forms of the ID operators only make sense inside module config files — the build throws a clear error if you use them at the app level.
|
|
18
|
+
|
|
19
|
+
The object form of `_module.pageId`, `_module.connectionId`, `_module.endpointId`, `_module.notificationId`, and `_module.id` also works at the app level, resolving by entry ID instead of a dependency name — useful for linking, calling, or labelling a specific module instance from app-level config without hardcoding the scoped ID. See each method below for an app-level example.
|
|
20
|
+
|
|
21
|
+
All `_module` operators resolve during the walker pass — the same phase as `_var` and `_ref`. Inside module files, they work at any depth.
|
|
22
|
+
|
|
23
|
+
See [Modules](/modules) for an overview of the module system.
|
|
24
|
+
|
|
25
|
+
# Operator methods:
|
|
26
|
+
|
|
27
|
+
## _module.var
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
(key: string): any
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
The `_module.var` operator reads a value from the module entry's `vars`. It returns the consumer value passed in `lowdefy.yaml` if one was provided, otherwise it resolves the manifest default on read. If neither is provided (no consumer value, no declared default), the operator returns `null`.
|
|
34
|
+
|
|
35
|
+
Unlike `_var`, which requires threading variables through each `_ref`, `_module.var` works at any depth within module files. It accesses the same vars regardless of `_ref` nesting.
|
|
36
|
+
|
|
37
|
+
Defaults are declared in `module.lowdefy.yaml` and resolve on read. Defaults are expressions — they can be literals, `_ref`s, `_module.var` references to other vars, or any `_build.*` tree. See [Writing Modules → Dynamic Defaults](/module-authoring#dynamic-defaults) for patterns.
|
|
38
|
+
|
|
39
|
+
Vars with `properties` merge at the property level — only consumer-provided keys override the declared defaults, and missing properties resolve their own defaults independently.
|
|
40
|
+
|
|
41
|
+
#### Arguments
|
|
42
|
+
|
|
43
|
+
###### string
|
|
44
|
+
The key in the module entry's `vars` object. Dot notation is supported for nested access (e.g., `theme.colors.primary`).
|
|
45
|
+
|
|
46
|
+
#### Examples
|
|
47
|
+
|
|
48
|
+
###### Simple string access:
|
|
49
|
+
```yaml
|
|
50
|
+
title:
|
|
51
|
+
_module.var: title
|
|
52
|
+
```
|
|
53
|
+
If the app provides `vars: { title: "Welcome" }`, returns `"Welcome"`.
|
|
54
|
+
|
|
55
|
+
###### Nested path access:
|
|
56
|
+
```yaml
|
|
57
|
+
primary_color:
|
|
58
|
+
_module.var: theme.colors.primary
|
|
59
|
+
```
|
|
60
|
+
Accesses nested values using dot notation. If the module manifest declares defaults via `properties`, unset values resolve to their defaults.
|
|
61
|
+
|
|
62
|
+
## _module.pageId
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
(pageId: string): string
|
|
66
|
+
(arguments: { id: string, module: string }): string
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Resolves a page ID to its fully scoped ID. The string form references the current module's own pages and only works inside module content.
|
|
70
|
+
|
|
71
|
+
The object form references a target by entry ID. Inside module content, `module` is the abstract dependency name declared in `module.lowdefy.yaml`. At the app level, `module` is the concrete module entry ID from `lowdefy.yaml` — useful when an app-level page needs to link to a specific module instance.
|
|
72
|
+
|
|
73
|
+
#### Arguments
|
|
74
|
+
|
|
75
|
+
###### string
|
|
76
|
+
The module-local page ID (as declared in the module's page definition).
|
|
77
|
+
|
|
78
|
+
###### object
|
|
79
|
+
- `id: string`: The page ID in the target module.
|
|
80
|
+
- `module: string`: The abstract dependency name (in module content) or the module entry ID (in app-level config).
|
|
81
|
+
|
|
82
|
+
#### Examples
|
|
83
|
+
|
|
84
|
+
###### Link to a sibling page:
|
|
85
|
+
```yaml
|
|
86
|
+
- id: view_details
|
|
87
|
+
type: Link
|
|
88
|
+
params:
|
|
89
|
+
pageId:
|
|
90
|
+
_module.pageId: user-edit
|
|
91
|
+
```
|
|
92
|
+
In a module entry with `id: team-users`, resolves to `team-users/user-edit`.
|
|
93
|
+
|
|
94
|
+
###### Link to a page in another module:
|
|
95
|
+
```yaml
|
|
96
|
+
- id: view_contact
|
|
97
|
+
type: Link
|
|
98
|
+
params:
|
|
99
|
+
pageId:
|
|
100
|
+
_module.pageId:
|
|
101
|
+
id: contact-detail
|
|
102
|
+
module: contacts
|
|
103
|
+
```
|
|
104
|
+
If the `contacts` dependency is wired to an entry with `id: contacts`, resolves to `contacts/contact-detail`.
|
|
105
|
+
|
|
106
|
+
###### Link from an app page to a module page:
|
|
107
|
+
```yaml
|
|
108
|
+
# lowdefy.yaml (app level)
|
|
109
|
+
pages:
|
|
110
|
+
- id: home
|
|
111
|
+
blocks:
|
|
112
|
+
- id: view_team
|
|
113
|
+
type: Link
|
|
114
|
+
params:
|
|
115
|
+
pageId:
|
|
116
|
+
_module.pageId:
|
|
117
|
+
id: users-list
|
|
118
|
+
module: team-users
|
|
119
|
+
```
|
|
120
|
+
At the app level, `module` is the module entry ID. The build resolves this to `team-users/users-list` regardless of where the entry lives in your config.
|
|
121
|
+
|
|
122
|
+
## _module.connectionId
|
|
123
|
+
|
|
124
|
+
```
|
|
125
|
+
(connectionId: string): string
|
|
126
|
+
(arguments: { id: string, module: string }): string
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
Resolves a connection ID to its scoped or remapped ID. The string form references the current module's connections and only works inside module content.
|
|
130
|
+
|
|
131
|
+
The object form references a target by entry ID. Inside module content, `module` is the abstract dependency name declared in `module.lowdefy.yaml`. At the app level, `module` is the concrete module entry ID from `lowdefy.yaml` — useful when an app-level request needs to reach a specific module instance's connection.
|
|
132
|
+
|
|
133
|
+
#### Arguments
|
|
134
|
+
|
|
135
|
+
###### string
|
|
136
|
+
The module-local connection ID (as declared in the module's connection definition).
|
|
137
|
+
|
|
138
|
+
###### object
|
|
139
|
+
- `id: string`: The connection ID in the target module.
|
|
140
|
+
- `module: string`: The abstract dependency name (in module content) or the module entry ID (in app-level config).
|
|
141
|
+
|
|
142
|
+
#### Examples
|
|
143
|
+
|
|
144
|
+
###### Reference a module connection:
|
|
145
|
+
```yaml
|
|
146
|
+
connectionId:
|
|
147
|
+
_module.connectionId: users-db
|
|
148
|
+
```
|
|
149
|
+
In a module entry with `id: team-users`, resolves to `team-users/users-db`.
|
|
150
|
+
|
|
151
|
+
If the app remaps the connection (`connections: { users-db: my-app-mongodb }`), resolves to `my-app-mongodb` instead.
|
|
152
|
+
|
|
153
|
+
###### Reference a connection in another module:
|
|
154
|
+
```yaml
|
|
155
|
+
connectionId:
|
|
156
|
+
_module.connectionId:
|
|
157
|
+
id: contacts-db
|
|
158
|
+
module: contacts
|
|
159
|
+
```
|
|
160
|
+
Resolves to the target module's scoped or remapped connection ID.
|
|
161
|
+
|
|
162
|
+
###### Reference a module connection from an app request:
|
|
163
|
+
```yaml
|
|
164
|
+
# lowdefy.yaml (app level)
|
|
165
|
+
api:
|
|
166
|
+
- id: get_team_users
|
|
167
|
+
type: Request
|
|
168
|
+
connectionId:
|
|
169
|
+
_module.connectionId:
|
|
170
|
+
id: users-db
|
|
171
|
+
module: team-users
|
|
172
|
+
```
|
|
173
|
+
At the app level, `module` is the module entry ID. The build resolves this to the target module's scoped or remapped connection ID.
|
|
174
|
+
|
|
175
|
+
## _module.endpointId
|
|
176
|
+
|
|
177
|
+
```
|
|
178
|
+
(endpointId: string): string
|
|
179
|
+
(arguments: { id: string, module: string }): string
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
Resolves an API endpoint ID to its fully scoped ID. The string form references the current module's endpoints and only works inside module content.
|
|
183
|
+
|
|
184
|
+
The object form references a target by entry ID. Inside module content, `module` is the abstract dependency name declared in `module.lowdefy.yaml`. At the app level, `module` is the concrete module entry ID from `lowdefy.yaml` — useful when an app-level page needs to call a specific module instance's API.
|
|
185
|
+
|
|
186
|
+
#### Arguments
|
|
187
|
+
|
|
188
|
+
###### string
|
|
189
|
+
The module-local endpoint ID (as declared in the module's API definition).
|
|
190
|
+
|
|
191
|
+
###### object
|
|
192
|
+
- `id: string`: The endpoint ID in the target module.
|
|
193
|
+
- `module: string`: The abstract dependency name (in module content) or the module entry ID (in app-level config).
|
|
194
|
+
|
|
195
|
+
#### Examples
|
|
196
|
+
|
|
197
|
+
###### Call a module API endpoint:
|
|
198
|
+
```yaml
|
|
199
|
+
- id: call_invite
|
|
200
|
+
type: CallAPI
|
|
201
|
+
params:
|
|
202
|
+
endpointId:
|
|
203
|
+
_module.endpointId: invite-user
|
|
204
|
+
```
|
|
205
|
+
In a module entry with `id: team-users`, resolves to `team-users/invite-user`.
|
|
206
|
+
|
|
207
|
+
###### Call an API in another module:
|
|
208
|
+
```yaml
|
|
209
|
+
- id: log_event
|
|
210
|
+
type: CallAPI
|
|
211
|
+
params:
|
|
212
|
+
endpointId:
|
|
213
|
+
_module.endpointId:
|
|
214
|
+
id: log-event
|
|
215
|
+
module: events
|
|
216
|
+
```
|
|
217
|
+
Resolves to the target module's scoped endpoint ID.
|
|
218
|
+
|
|
219
|
+
###### Call a module API endpoint from an app page:
|
|
220
|
+
```yaml
|
|
221
|
+
# lowdefy.yaml (app level)
|
|
222
|
+
pages:
|
|
223
|
+
- id: dashboard
|
|
224
|
+
events:
|
|
225
|
+
onClick:
|
|
226
|
+
- id: log_event
|
|
227
|
+
type: CallAPI
|
|
228
|
+
params:
|
|
229
|
+
endpointId:
|
|
230
|
+
_module.endpointId:
|
|
231
|
+
id: log-event
|
|
232
|
+
module: events
|
|
233
|
+
```
|
|
234
|
+
At the app level, `module` is the module entry ID. The build resolves this to `events/log-event`.
|
|
235
|
+
|
|
236
|
+
## _module.notificationId
|
|
237
|
+
|
|
238
|
+
```
|
|
239
|
+
(notificationId: string): string
|
|
240
|
+
(arguments: { id: string, module: string }): string
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
Resolves a notification ID to its fully scoped ID. The string form references the current module's notifications and only works inside module content.
|
|
244
|
+
|
|
245
|
+
The object form references a target by entry ID. Inside module content, `module` is the abstract dependency name declared in `module.lowdefy.yaml`. At the app level, `module` is the concrete module entry ID from `lowdefy.yaml` — useful when app-level config dispatches a notification whose template a module ships.
|
|
246
|
+
|
|
247
|
+
#### Arguments
|
|
248
|
+
|
|
249
|
+
###### string
|
|
250
|
+
The module-local notification ID (as declared in the module's `notifications:` section).
|
|
251
|
+
|
|
252
|
+
###### object
|
|
253
|
+
- `id: string`: The notification ID in the target module.
|
|
254
|
+
- `module: string`: The abstract dependency name (in module content) or the module entry ID (in app-level config).
|
|
255
|
+
|
|
256
|
+
#### Examples
|
|
257
|
+
|
|
258
|
+
###### Render the module's own notification:
|
|
259
|
+
```yaml
|
|
260
|
+
- id: render
|
|
261
|
+
type: RenderNotification
|
|
262
|
+
properties:
|
|
263
|
+
notificationId:
|
|
264
|
+
_module.notificationId: invite-user
|
|
265
|
+
data:
|
|
266
|
+
contact:
|
|
267
|
+
_payload: contact
|
|
268
|
+
```
|
|
269
|
+
In a module entry with `id: user-admin`, resolves to `user-admin/invite-user`.
|
|
270
|
+
|
|
271
|
+
###### Dispatch with a scoped notification id from an app page:
|
|
272
|
+
```yaml
|
|
273
|
+
# lowdefy.yaml (app level)
|
|
274
|
+
params:
|
|
275
|
+
endpointId:
|
|
276
|
+
_module.endpointId:
|
|
277
|
+
id: dispatch-notifications
|
|
278
|
+
module: notifications
|
|
279
|
+
payload:
|
|
280
|
+
notification_id:
|
|
281
|
+
_module.notificationId:
|
|
282
|
+
id: invite-user
|
|
283
|
+
module: user-admin
|
|
284
|
+
```
|
|
285
|
+
At the app level, `module` is the module entry ID. The build resolves this to `user-admin/invite-user`.
|
|
286
|
+
|
|
287
|
+
## _module.id
|
|
288
|
+
|
|
289
|
+
```
|
|
290
|
+
(true): string
|
|
291
|
+
(arguments: { module: string }): string
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
Returns the raw module entry ID. The `true` form returns the current module's entry ID and only works inside module content.
|
|
295
|
+
|
|
296
|
+
The object form returns the entry ID of a referenced module. Inside module content, `module` is the abstract dependency name declared in `module.lowdefy.yaml`. At the app level, `module` is the concrete module entry ID from `lowdefy.yaml` — useful for templates that need a module entry ID without hardcoding it.
|
|
297
|
+
|
|
298
|
+
#### Arguments
|
|
299
|
+
|
|
300
|
+
###### boolean
|
|
301
|
+
Pass `true` to return the current module entry ID.
|
|
302
|
+
|
|
303
|
+
###### object
|
|
304
|
+
- `module: string`: The abstract dependency name (in module content) or the module entry ID (in app-level config).
|
|
305
|
+
|
|
306
|
+
#### Examples
|
|
307
|
+
|
|
308
|
+
###### Use in a label:
|
|
309
|
+
```yaml
|
|
310
|
+
label:
|
|
311
|
+
_string.concat:
|
|
312
|
+
- _module.id: true
|
|
313
|
+
- " - User Admin"
|
|
314
|
+
```
|
|
315
|
+
In a module entry with `id: team-users`, returns `"team-users - User Admin"`.
|
|
316
|
+
|
|
317
|
+
###### Get a dependency's entry ID:
|
|
318
|
+
```yaml
|
|
319
|
+
contactsEntry:
|
|
320
|
+
_module.id:
|
|
321
|
+
module: contacts
|
|
322
|
+
```
|
|
323
|
+
Returns the concrete entry ID that the `contacts` dependency is wired to.
|
|
324
|
+
|
|
325
|
+
###### Reference a module entry ID at the app level:
|
|
326
|
+
```yaml
|
|
327
|
+
# lowdefy.yaml (app level)
|
|
328
|
+
pages:
|
|
329
|
+
- id: home
|
|
330
|
+
blocks:
|
|
331
|
+
- id: status_label
|
|
332
|
+
type: Title
|
|
333
|
+
properties:
|
|
334
|
+
content:
|
|
335
|
+
_string.concat:
|
|
336
|
+
- 'Active module: '
|
|
337
|
+
- _module.id:
|
|
338
|
+
module: team-users
|
|
339
|
+
```
|
|
340
|
+
At the app level, `module` is the module entry ID. Returns the entry ID verbatim — useful inside `_build.*` expressions or templates that need the entry name.
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# _mql
|
|
2
|
+
|
|
3
|
+
The `_mql` operator uses the [`mingo`](https://www.npmjs.com/package/mingo) package to evaluate MongoDB query language statements as an operator.
|
|
4
|
+
|
|
5
|
+
# Operator methods:
|
|
6
|
+
|
|
7
|
+
## _mql.aggregate
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
({on: object[], pipeline: object[]}): object[]
|
|
11
|
+
([on: object[], pipeline: object[]]): object[]
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
The `_mql.aggregate` method runs a MongoDB aggregation pipeline on an input array.
|
|
15
|
+
|
|
16
|
+
#### Arguments
|
|
17
|
+
|
|
18
|
+
###### object
|
|
19
|
+
- `on: object[]`: The data array on which to run the pipeline. It should be an array of objects.
|
|
20
|
+
- `pipeline: object[]`: A MongoDB aggregation pipeline definition.
|
|
21
|
+
|
|
22
|
+
#### Examples
|
|
23
|
+
|
|
24
|
+
###### Transform request results:
|
|
25
|
+
```yaml
|
|
26
|
+
_mql.aggregate:
|
|
27
|
+
pipeline:
|
|
28
|
+
- $match:
|
|
29
|
+
age:
|
|
30
|
+
$gte: 18
|
|
31
|
+
- $addFields:
|
|
32
|
+
averageScore:
|
|
33
|
+
$avg:
|
|
34
|
+
- $score1
|
|
35
|
+
- $score2
|
|
36
|
+
on:
|
|
37
|
+
_request: my_request
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## _mql.expr
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
({on: object, expr: any}): any
|
|
44
|
+
([on: object, expr: any]): any
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
The `_mql.expr` method evaluates a MongoDB aggregation pipeline operator expression. This is any statement that could be written in a `$project` stage.
|
|
48
|
+
|
|
49
|
+
#### Arguments
|
|
50
|
+
|
|
51
|
+
###### object
|
|
52
|
+
- `on: object`: An object to take as input for the expression.
|
|
53
|
+
- `expr: object`: A MongoDB aggregation expression.
|
|
54
|
+
|
|
55
|
+
#### Examples
|
|
56
|
+
|
|
57
|
+
###### Calculate an average of three inputs:
|
|
58
|
+
```yaml
|
|
59
|
+
_mql.expr:
|
|
60
|
+
expr:
|
|
61
|
+
$avg:
|
|
62
|
+
- $input1
|
|
63
|
+
- $input2
|
|
64
|
+
- $input3
|
|
65
|
+
on:
|
|
66
|
+
_state: true
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## _mql.test
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
({on: object, test: object}): boolean
|
|
73
|
+
([on: object, test: object]): boolean
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
The `_mql.test` method tests if a object matches a MongoDB filter/query expression.
|
|
77
|
+
|
|
78
|
+
#### Arguments
|
|
79
|
+
|
|
80
|
+
###### object
|
|
81
|
+
- `on: object`: The object to be tested.
|
|
82
|
+
- `test: object`: A MongoDB filter/query expression.
|
|
83
|
+
|
|
84
|
+
#### Examples
|
|
85
|
+
|
|
86
|
+
###### Test if a number input is greater than 100:
|
|
87
|
+
```yaml
|
|
88
|
+
_mql.test:
|
|
89
|
+
test:
|
|
90
|
+
number_input:
|
|
91
|
+
$gte: 18
|
|
92
|
+
on:
|
|
93
|
+
number_input:
|
|
94
|
+
_state: number_input
|
|
95
|
+
```
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# _ne
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
([value1: any, value2: any]): boolean
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
The `_ne` operator tests if two values are not equal. It takes an array of two values to test.
|
|
8
|
+
|
|
9
|
+
> The `_ne` won't do a deep comparison.
|
|
10
|
+
|
|
11
|
+
> This operator can be used as a [`_build`](/_build) operator method.
|
|
12
|
+
|
|
13
|
+
#### Arguments
|
|
14
|
+
|
|
15
|
+
###### array
|
|
16
|
+
An array of two values to compare.
|
|
17
|
+
|
|
18
|
+
#### Examples
|
|
19
|
+
|
|
20
|
+
###### Two non-equal strings:
|
|
21
|
+
|
|
22
|
+
```yaml
|
|
23
|
+
_ne:
|
|
24
|
+
- "Hello"
|
|
25
|
+
- "Hello you"
|
|
26
|
+
```
|
|
27
|
+
Returns: `true`
|
|
28
|
+
|
|
29
|
+
###### Two equal strings:
|
|
30
|
+
|
|
31
|
+
```yaml
|
|
32
|
+
_ne:
|
|
33
|
+
- "Hello"
|
|
34
|
+
- "Hello"
|
|
35
|
+
```
|
|
36
|
+
Returns: `false`
|
|
37
|
+
|
|
38
|
+
###### Two numbers:
|
|
39
|
+
```yaml
|
|
40
|
+
_ne:
|
|
41
|
+
- _sum:
|
|
42
|
+
- 3
|
|
43
|
+
- 4
|
|
44
|
+
- 8
|
|
45
|
+
```
|
|
46
|
+
Returns: `true`
|
|
47
|
+
|
|
48
|
+
###### Arrays are not compared deeply:
|
|
49
|
+
```yaml
|
|
50
|
+
_ne:
|
|
51
|
+
- [1,2,3]
|
|
52
|
+
- [1,2,3]
|
|
53
|
+
```
|
|
54
|
+
Returns: `true`
|
|
55
|
+
|
|
56
|
+
###### Values from "getter" operators are copies and not equal:
|
|
57
|
+
```yaml
|
|
58
|
+
_ne:
|
|
59
|
+
- _state: my_object
|
|
60
|
+
- _state: my_object
|
|
61
|
+
```
|
|
62
|
+
Returns: `true`
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# _not
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
(value: any): boolean
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
The `_not` operator returns the logical negation of the input. If the value is not a boolean, it will be converted to a boolean using javascript [truthy](https://developer.mozilla.org/en-US/docs/Glossary/Truthy) and [falsy](https://developer.mozilla.org/en-US/docs/Glossary/Falsy) rules.
|
|
8
|
+
|
|
9
|
+
> This operator can be used as a [`_build`](/_build) operator method.
|
|
10
|
+
|
|
11
|
+
#### Arguments
|
|
12
|
+
|
|
13
|
+
###### any
|
|
14
|
+
|
|
15
|
+
#### Examples
|
|
16
|
+
|
|
17
|
+
###### Not `true` is `false`:
|
|
18
|
+
```yaml
|
|
19
|
+
_not: true
|
|
20
|
+
```
|
|
21
|
+
Returns: `false`
|
|
22
|
+
|
|
23
|
+
###### Return `true` for a falsy value:
|
|
24
|
+
```yaml
|
|
25
|
+
_not: null
|
|
26
|
+
```
|
|
27
|
+
Returns: `true`
|
|
28
|
+
|
|
29
|
+
###### Return `false` for a truthy value:
|
|
30
|
+
```yaml
|
|
31
|
+
_not: 100
|
|
32
|
+
```
|
|
33
|
+
Returns: `false`
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
# _number
|
|
2
|
+
|
|
3
|
+
The `_number` operator can be used to run javascript [`Number`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) methods.
|
|
4
|
+
|
|
5
|
+
> This operator can be used as a [`_build`](/_build) operator method.
|
|
6
|
+
|
|
7
|
+
# Operator methods:
|
|
8
|
+
|
|
9
|
+
## _number.EPSILON
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
(void): number
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
The `_number.EPSILON` property represents the smallest interval between two representable numbers.. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/EPSILON) for more details and examples.
|
|
16
|
+
|
|
17
|
+
## _number.MAX_SAFE_INTEGER
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
(void): number
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
The `_number.MAX_SAFE_INTEGER` property represents the maximum safe integer in JavaScript (2^53 - 1). [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER) for more details and examples.
|
|
24
|
+
|
|
25
|
+
## _number.MAX_VALUE
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
(void): number
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
The `_number.MAX_VALUE` property represents the largest positive representable number. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_VALUE) for more details and examples.
|
|
32
|
+
|
|
33
|
+
## _number.MIN_SAFE_INTEGER
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
(void): number
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
The `_number.MIN_SAFE_INTEGER` property represents the minimum safe integer in JavaScript (-(2^53 - 1)). [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MIN_SAFE_INTEGER) for more details and examples.
|
|
40
|
+
|
|
41
|
+
## _number.MIN_VALUE
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
(void): number
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
The `_number.MIN_VALUE` property represents the smallest positive representable number — that is, the positive number closest to zero (without actually being zero). [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MIN_VALUE) for more details and examples.
|
|
48
|
+
|
|
49
|
+
## _number.NaN
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
(void): number
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
The `_number.NaN` property represents the special "Not a Number" value. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/NaN) for more details and examples.
|
|
56
|
+
|
|
57
|
+
## _number.NEGATIVE_INFINITY
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
(void): number
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
The `_number.NEGATIVE_INFINITY` property represents negative infinity. Returned on overflow. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/NEGATIVE_INFINITY) for more details and examples.
|
|
64
|
+
|
|
65
|
+
## _number.POSITIVE_INFINITY
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
(void): number
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
The `_number.POSITIVE_INFINITY` property represents positive infinity. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/POSITIVE_INFINITY) for more details and examples.
|
|
72
|
+
|
|
73
|
+
## _number.isFinite
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
(void): number
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
The `_number.isFinite` method is used to determine whether the passed value is a finite number. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isFinite) for more details and examples.
|
|
80
|
+
|
|
81
|
+
## _number.isInteger
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
(void): number
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
The `_number.isInteger` method is used to determine whether the passed value is an integer. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isInteger) for more details and examples.
|
|
88
|
+
|
|
89
|
+
## _number.isNaN
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
(void): number
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
The `_number.isNaN` method is used to determine whether the passed value is NaN. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isNaN) for more details and examples.
|
|
96
|
+
|
|
97
|
+
## _number.isSafeInteger
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
(void): number
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
The `_number.isSafeInteger` method is used to determine whether the passed value is a safe integer (number between -(2^53 - 1) and 2^53 - 1). [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isSafeInteger) for more details and examples.
|
|
104
|
+
|
|
105
|
+
## _number.parseFloat
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
(void): number
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
The `_number.parseFloat` method parses an argument and returns a floating point number. If a number cannot be parsed from the argument, it returns NaN. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/parseFloat) for more details and examples.
|
|
112
|
+
|
|
113
|
+
## _number.parseInt
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
(void): number
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
The `_number.parseInt` method parses a string argument and returns an integer of the specified radix or base. If a number cannot be parsed from the argument, it returns NaN. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/parseInt) for more details and examples.
|
|
120
|
+
|
|
121
|
+
## _number.toExponential
|
|
122
|
+
|
|
123
|
+
```
|
|
124
|
+
(void): number
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
The `_number.toExponential` method returns a string representing the Number object in exponential notation. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toExponential) for more details and examples.
|
|
128
|
+
|
|
129
|
+
## _number.toFixed
|
|
130
|
+
|
|
131
|
+
```
|
|
132
|
+
(void): number
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
The `_number.toFixed` method formats a number using fixed-point notation. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toFixed) for more details and examples.
|
|
136
|
+
|
|
137
|
+
## _number.toLocaleString
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
(void): number
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
The `_number.toLocaleString` method returns a string with a language-sensitive representation of this number. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString) for more details and examples.
|
|
144
|
+
|
|
145
|
+
## _number.toPrecision
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
(void): number
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
The `_number.toPrecision` method returns a string representing the Number object to the specified precision. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toPrecision) for more details and examples.
|
|
152
|
+
|
|
153
|
+
## _number.toString
|
|
154
|
+
|
|
155
|
+
```
|
|
156
|
+
(void): number
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
The `_number.toString` method returns a string representing the specified Number object. [See MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toString) for more details and examples.
|