Continue refactoring JavaScript into a component pattern and ESM.
Replaces some jQuery with native DOM API.
chore(ai): reference documentation and instructions for training AI
chore(ai): implement Kapa AI chat widget
- Move script tag to HTML template to make it obvious.
- Cleanup javascript to make it more component-like
- Set Kapa attributes, support setting userid
chore(js): add JS dependencies, previously referenced in script tags, to package.json for JS builds.
fix(api): indents
chore(js): package Mermaid diagram library
chore(js): refactor JS for AIChat and Theme as examples of using the component pattern for HTML/CSS/JS
chore(js): Use the new local-storage API in refactored module code and in code not yet ported. Cleanup syntax in local-storage and make functions available from window.LocalStorageAPI.
fix(js): theme.js name-change
chore(js): fix ai-chat.js file name
fix(js): refactor:
- componentNames are snakecase in HTML
- replace DOM selection method and jQuery eventhandler assignment
- remove old theme.js references
chore(ai): configure chat window overlay, size, and position:
- removes overlay and scroll lock
- positions chat to the right and bottom
- expands sample question width to 12 cols
chore(ai): edit disclaimer
fix(ai): size and position
chore(js): make ai-chat specific to configuration and and setting userid (for testing and future use).
fix(js): copy referrerHost variable to v3-wayfinding instead of relying on influxdb-url to assign it.
chore(ai): add a footer div at page bottom to contain modal triggers for custom-time and ask-ai. Still needs some CSS help. Moves tooltip text from CSS to HTML data attribute.
chore(ai): dynamically load AI script tag after DOMContentLoaded to avoid race conditions. Call initialization from the modal trigger module and pass the show trigger function to the onload handler.
fix(ai): fix modal triggers to viewport
fix(modal-triggers): stack the triggers into a single column.
restyle footer widgets
updated time selector modal to use correct storage term
minor style update
WIP(ai-chat): get product data
chore(js): Factor out pageContext module from influxdb-url.js
chore(js): Refactor helpers.js out of inflluxdb-url.js
WIP: refactor influxdburl - minimal changes for module conversions
feat(ai): Custom AI chat example questions product and version.
Ask AI example questions:
- Adds support for customizing example Ask AI questions per product or version.
- Configure questions in site `data/products.yml`; otherwise, it uses default questions from `ask-ai.js`
Context, page, and product data:
- Adds sample URLs for remaining versions in influxdb_urls
- `page-context.js` consolidates and exports constants for page context (protocol, host, path, referrer) and path-to-data mappings for product and influxdb_url site data
Module refactor:
- Refactors some JavaScript into ES6 modules, and refactors some of those further into a Component pattern--just vanilla JS and no shadow DOM stuff. The Component pattern that uses data attributes to "bind" JavaScript modules with CSS and HTML is a popular approach in modern web development. This pattern enhances modularity, reusability, and maintainability by associating behavior (JavaScript), structure (HTML), and style (CSS) through the use of data attributes.
- `assets/main.js` is the entrypoint
- Passes pageParams from the Hugo page to modules that import `@params`.
- Moves most external dependencies out of `script` tags and into package.json to be managed with `yarn`.
- Adds `eslint`.
- For modules that aren't yet components, wraps execution statements inside an `initialize()` function and calls the function from `main.js` on `DOMContentLoaded`.
- For components, if the page contains the `data-component="<component-name>"`, the matching element is passed to the component function on `DOMContentLoaded`.
- I tried to avoid changing logic where it wasn't necessary.
Update DOC_GPT_PROFILE.md
customize ai chat modal styles
fix(influxdb-url): Rename to cloud_dedicated in influxdb_urls.yml, remove newly added placeholder URL and use the extant default, refactor
- Rename to in influxdb_urls.yml
- Fix influxdb-url.js and data provision in local-storage.js to use the new name, mapping it to to retain the existing local storage key
chore(api-lib): Use local-storage import instead of window global
chore(js): cleanup
fix(js): Ensure feature-callout initializes on page load
fix(theme): Load preferred theme before making the page visible. Execute a predefined function by specifying the function name in data-theme-callback
fix(search-toggle): Restores toggling the search field when sidebar is collapsed. Moves the event handler to a new search-button component
fix(ai): Fix custom attribute assignment. Rename property to ai_example_questions
Include the word `Bearer` or `Token`, a space, and your **token** value (all case-sensitive). Fix TOC links.
Fixes#5781
fix(api-docs): Update API reference directories and generation script for influxdb3 URL paths, update links and names in reference content
fix(api-ref): Update getswagger.sh destination paths to use the new directory structure when fetching spec files. Update the redocly plugin module path.
hotfix: fix hlevel bug in children shortcode
Remove underline from custom time widget
add color to custom time widget styling
* docs: correct description of status codes
* Update api-docs/cloud-dedicated/v2/ref.yml
Co-authored-by: Fraser Savage <fraser@savage.engineer>
* Update api-docs/cloud-dedicated/v2/ref.yml
Co-authored-by: Fraser Savage <fraser@savage.engineer>
* Apply suggestions from code review
Co-authored-by: Fraser Savage <fraser@savage.engineer>
---------
Co-authored-by: Fraser Savage <fraser@savage.engineer>
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
Partial writes are the only mode of operation on serverless clusters.
This means that any requests where all points are outside the retention
policy of a bucket receive a 400 bad request.
This updates the Cloud Dedicated Management API spec to use the `int64`
format for the `ClusterDatabaseRetentionPeriod` schema, which matches
the corresponding type in IOx's namespace API.
- Adds a custom short title field in OpenAPI info.
- Uses the new field for nav menu item names.
- Adds identifiers to avoid duplicate name warnings.
- Cleans up variation in frontmatter.
* feature(v3): Write: partial writes write good lines and reject bad lines #5160
- Documents the proposed partial writes feature for Serverless and Dedicated.
- Updates Troubleshoot writes and API docs.
* chore(v3): update write status codes (#5160)
* Update content/influxdb/cloud-serverless/write-data/troubleshoot.md
* chore(v3): cleanup partial write descriptions in API ref and troubleshooting guide
* feature(v3): Serverless write API: writes good lines, rejects bad lines #5160
- Documents the proposed partial writes feature for Serverless and Dedicated.
- If some points are written, returns 201 status code.
- Updates Troubleshoot writes and API docs.
* feature(v3): Serverless write API: writes good lines, rejects bad lines #5160
- Documents the proposed partial writes feature for Serverless and Dedicated.
- If some points are written, returns 201 status code.
- Updates Troubleshoot writes and API docs.
* fix: Serverless cleanup
* fix: Serverless write API: restore 204 and explain 201 and 400 status codes.
* Apply suggestions from code review
* fix: Serverless write API: 201 superseded by 204 to maintain v2 compat.
- Documents https://github.com/influxdata/idpe/pull/18398.
* fix: Serverless write API: 201 superseded by 204 to maintain v2 compat.
- Documents https://github.com/influxdata/idpe/pull/18398.
* Update content/influxdb/cloud-serverless/write-data/troubleshoot.md
* Update content/influxdb/cloud-serverless/write-data/troubleshoot.md
* Update content/influxdb/cloud-serverless/write-data/troubleshoot.md
* chore(v3): DBRP: Update Serverless API ref (#5234)
* chore(ci): Tests: substitute placeholders in JSON body parameters
* chore(v3): DBRP: copy page from influxql to admin/dbrps.
* chore(ci): Trying to prevent "a Influx..."
* chore(ci): Allow autogen
* chore(serverless): DBRP glossary entry
* chore(v2): add default DBRP note
* chore(v3): use product-name shortcode
* chore(v3): use product-name shortcode, clarify retention period and mapping
* chore(serverless): Create Bucket:
- add missing example for Data Explorer
- move Retention Period syntax and define retentionRules syntax
- setup for tests
* chore(serverless): Create Bucket:
- add missing example for Data Explorer
- move Retention Period syntax and define retentionRules syntax
- setup for tests
* chore(serverless): Update bucket: alias to match other products
* chore(v3): Serverless for prototyping: update with DBRP behavior
* Serverless auto-generated buckets have 3-day default retention period
Fixes#5234
- v1-compat guide:
- passes tests
- explains DBRPs (default, automatic, and management)
- migrate DBRP content from query-data/influxql/dbrp
- v2-compat guide:
- fix TOC
- add list code example
- rename influxdb-v1-api to api/v1-http, migrate params from v1-compat guide, and explain DBRP in context
- add write-data/api/v1-http and migrate content from v1-compat guide
- move optimize and troubleshooting up to /query-data
- add Related items support for paths containing http
- substitute placeholders in tests
* chore(test): update configuration in README
* fix(serverless): Optimize queries parent
* fix(serverless): create-bucket cleanup
* fix: cleanup
* fix: close tag
* Apply suggestions from code review
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* fix(v3): permission to create dbrp-mapped bucket
---------
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* nest reference docs menu in v2 and cloud
* move migrate data into write data
* nest notebooks under tools
* nest templates under tools
* nest telegraf configs under tools
* cleanup weights and titles of tools sections
* reorg org and bucket management under admin
* add backup/restore to admin, clean up related links
* restructure security sections under admin
* Apply suggestions from code review
Co-authored-by: Jason Stirnaman <stirnamanj@gmail.com>
* updated serverless cli docs to address pr feedback
* Update content/influxdb/cloud/admin/organizations/delete-org.md
Co-authored-by: Jason Stirnaman <stirnamanj@gmail.com>
* port v2 install changes to new structure
* address pr feedback and ported missing content to serverless
---------
Co-authored-by: Jason Stirnaman <stirnamanj@gmail.com>
* chore(api): add API compatibility overview to API ref
- add API compatibility trait tag
- add getswagger -B option to reuse existing contract and prevent fetching
- add /write description
* Update api-docs/cloud-dedicated/ref.yml
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update api-docs/cloud-dedicated/ref.yml
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update api-docs/clustered/ref.yml
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update api-docs/clustered/ref.yml
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
---------
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* fix: fix v3 write descriptions, Add v3 Troubleshoot writing data #5135
* Update content/influxdb/cloud-dedicated/write-data/troubleshoot.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-serverless/write-data/troubleshoot.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/clustered/write-data/troubleshoot.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
---------
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* wip: fix serverless api related links.
* fix(serverless): remove, replace, alias broken links, and/or mark for pending content
- See the annotated link checker report.
(closes 404s for links in Cloud Serverless API reference #4955)
* chore(api-ref): update API ref scripts for v3:
- Replace cloud-iox with cloud-serverless and cloud-dedicated in getswagger.sh
- Add cloud-dedicated API ref (handcrafted) with query, write, and ping paths.
- Remove separate v1-compat docs for Serverless and Dedicated.
The v1 paths are included in contracts/ref.
- Add Bearer Auth scheme.
- Remove separate v1 docs buttons from api/_index.md
* Update api-docs/cloud-dedicated/ref.yml
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update api-docs/cloud-dedicated/ref.yml
---------
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* fix(cloud-iox): typo.
* fix(cloud-iox): typo
* fix(iox): revise DATE_BIN example and link to reference.
* feat(iox): execute queries and visualize data with SQL in IOx.
* feat(cloud-iox): execute queries with Data Explorer (#4806).
- Publish steps for Execute Queries with Data Explorer.
- Remove pages not ready for IOx.
- Fix links in Get Started.
- Fix tags.
* feat(iox): Add API to IOx Reference, consolidate Cloud and OSS pages (#4788).
* fix(cloud-iox): IOx Data Explorer and Flux links.
* fix(cloud-iox): 1.x API menu.
* fix(cloud-iox): remove visualization types until we've verified links, etc.
* fix(cloud-iox): delete additional 1.x reference docs for now, revise Data Explorer.
* fix(api): replace cloud with cloud-iox in URLs, remove errant externalDocs link.
* feat(cloud-iox): add admin/accounts with data-usage and limits pages.
* fix(cloud): revise and remove outdated info from account management.
* fix(iox): punctuation.
* fix(cloud-iox): update link paths.
* fix(cloud-iox): update link paths for cloud-iox.
* patch(cloud-iox): quick fix for v1compat link paths
* feature(cloud-iox): add cloud-iox API reference content.
* feature(api): revise tagging, add cloud-iox API:
- Closes#4788.
- Generates cloud-iox/api.
- Changes handling of tags and x-tagGroups.
- Configures custom All Endpoints list for cloud-iox.
- Simplifies the nav with other grouping tags.
Any custom x-tagGroups configured in
[platform]/content/tag-groups.yml take precedence over
those already defined in the spec.
If you assign a list of tags to 'All endpoints' x-tagGroup,
the decorator
will use that list and remove Operations not tagged with
those tags.
If you assign an empty array([]) to the 'All endpoints' x-tagGroup,
the decorator will list all resource-like tags.
TODO: document in CONTRIBUTING.
TODO: unset x-tagGroups from openapi.
* Apply suggestions from code review
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* fix(api): unintended deletion of API operations
---------
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>